PyInstaller с Python -VL C: нет атрибута «media_player_new» Ошибка - PullRequest
1 голос
/ 16 февраля 2020

Я использую Python -VL C для создания видеоплеера и PyInstaller для генерации исполняемого файла на моем компьютере Windows 10. Первоначально, это дало мне ошибку:

Import Error Failed to load dynlib/dll 'libvlc.dll'. Most probably this dynlib/dll was not found when the application was frozen.

Чтобы решить эту проблему, я добавил недостающие dll в двоичные файлы файла .spe c следующим образом:

a = Analysis(['video_player.py'],
             pathex=['C:\\Users\\harsh\\Desktop\\demo\\Video'],
             binaries=[("C:\\Program Files\\VideoLAN\\VLC\\libvlc.dll","."),("C:\\Program Files\\VideoLAN\\VLC\\libvlccore.dll",".")],
             datas=[],
             hiddenimports=[],
             hookspath=[],
             runtime_hooks=[],
             excludes=[],
             win_no_prefer_redirects=False,
             win_private_assemblies=False,
             cipher=block_cipher,
             noarchive=False)

После этого я больше не получаю вышеуказанную ошибку. Однако теперь я получаю следующую ошибку:

Exception in thread Thread-3:
Traceback (most recent call last):
  File "threading.py", line 914, in _bootstrap_inner
  File "threading.py", line 862, in run
  File "video_player.py", line 100, in vlc_player
AttributeError: 'NoneType' object has no attribute 'media_player_new'

Код, который приводит к этой ошибке:

i=vlc.Instance('--fullscreen')
p=i.media_player_new()

Я убедился, что установил Python -VL C. Я что-то здесь упускаю? Любые предложения о том, как решить эту проблему?

...