Возникли проблемы с созданием приложения с помощью py2app ffmpeg и ffprobe.Python

Программы на Python
Anonymous
Возникли проблемы с созданием приложения с помощью py2app ffmpeg и ffprobe.

Сообщение Anonymous »

Я создал приложение на OSX Python, которое использует FFMEG и ffprobe.
Оно отлично работает в моем VS Code.
Я хочу создать автономное приложение, которое смогут использовать другие, без необходимости устанавливать что-либо самостоятельно. Итак, я вручную включил статические библиотеки в папку bin моего основного приложения и могу запускать приложение, используя библиотеки внутри папки bin.
Я потерял много часов, пытаясь это сделать. разберитесь с этим, и я всегда получаю одну и ту же ошибку.
Мне лучше всего удалось открыть приложение внутри app/contents/resources и запустить его через Python, но все равно возникла проблема с сообщением этот ffprobe недоступен.
Я схожу с ума...
Должен ли я попробовать совершенно другой подход?< /p>
На данный момент я просто хочу, чтобы мои друзья на OSX могли использовать приложение, затем я хочу, чтобы оно работало и на Windows, но маленькими шагами.
Я не совсем уверен, что включить в setup.py, поэтому мне хотелось бы включить все, что есть в папке моего приложения, чтобы избежать всевозможных ошибок, связанных с отсутствием файлов .png и прочего. >
Я также убедился, что библиотеки исполняемые (они весят около 80 МБ каждая (ffmpeg и ffprobe))
Кто-нибудь может помочь =D ???
Я описал выше, протестировал разные способы, проверил такие вещи, как перенаправление библиотек в папки приложения:
Для последней попытки мой файл setup.py был:

Код: Выделить всё

from setuptools import setup

APP = ['mpc.py']
DATA_FILES = [
('bin', ['./bin/ffmpeg', './bin/ffprobe']),
('theme/dark', ['./theme/dark/*.png']),
('theme/light', ['./theme/light/*.png']),
('theme', ['./theme/dark.tcl', './theme/light.tcl']),
'.',  # Add current directory to ensure everything is included
]

OPTIONS = {
'argv_emulation': False,
'packages': ['pydub', 'pygame', 'requests', 'freesound'],
'includes': ['pydub', 'pygame', 'requests', 'freesound'],
'resources': ['./bin/ffmpeg', './bin/ffprobe', './theme/dark/*.png', './theme/light/*.png',     './theme/dark.tcl', './theme/light.tcl'],
}

setup(
app=APP,
data_files=DATA_FILES,
options={'py2app': OPTIONS},
setup_requires=['py2app'],
)
И у меня также было это в начале моего скрипта Python:

Код: Выделить всё

# Set ffmpeg and ffprobe paths relative to the app's Resources/bin directory
app_dir = os.path.dirname(os.path.abspath(__file__))

# Set ffmpeg and ffprobe paths relative to the app's Resources/bin directory
ffmpeg_path = os.path.join(app_dir, 'bin', 'ffmpeg')
ffprobe_path = os.path.join(app_dir, 'bin', 'ffprobe')
AudioSegment.converter = ffmpeg_path
AudioSegment.ffprobe = ffprobe_path
Не знаю, что еще попробовать.

Подробнее здесь: https://stackoverflow.com/questions/790 ... nd-ffprobe

Вернуться в «Python»