#python-3.x #ffmpeg #converters #file-conversion
#python-3.x #ffmpeg #конвертеры #преобразование файлов
Вопрос:
У меня много файлов .mkv, которые я пытаюсь конвертировать в .mp4, поэтому я решил попробовать запрограммировать решение на python. Через несколько часов, пытаясь выяснить, как скопировать и вложенные папки, я отказался от этого и решил придерживаться преобразования отдельных вложенных папок, а затем скопировать их в другой каталог.
Я создал простой скрипт, который должен конвертировать файлы .mkv, находящиеся в той же папке, что и скрипт. Тем не менее, я продолжаю получать эту ошибку:
Ошибка FileNotFoundError: [Ошибка 2] Системе не удается найти указанный файл
Вот мой код:
import os
import ffmpeg
start_dir = os.getcwd()
def convert_to_mp4(mkv_file):
no_extension = str(os.path.splitext(mkv_file))
with_mp4 = no_extension ".mp4"
ffmpeg.input(mkv_file).output(with_mp4).run()
print("Finished converting {}".format(no_extension))
for path, folder, files in os.walk(start_dir):
for file in files:
if file.endswith('.mkv'):
print("Found file: %s" % file)
convert_to_mp4(file)
else:
pass
Ответ №1:
Ну, ответ всегда проще, чем вы ожидаете.
Дело дошло до этого:
def convert_to_mp4(mkv_file):
name, ext = os.path.splitext(mkv_file)
out_name = name ".mp4"
ffmpeg.input(mkv_file).output(out_name).run()
print("Finished converting {}".format(mkv_file))
for path, folder, files in os.walk(start_dir):
for file in files:
if file.endswith('.mkv'):
print("Found file: %s" % file)
convert_to_mp4(os.path.join(start_dir, file))
else:
pass
Убедитесь, что ffmpeg.exe находится в том же каталоге, что и скрипт.
Комментарии:
1. и убедитесь, что вы устанавливаете с помощью этого «pip install ffmpeg-python» вместо «pip install ffmpeg»