Обновил все кодеки и объединенное видео стало открываться во всех плеерах. До этого только VLC справлялся, MPC рисовал крякозябры. Не думал, что ffmpeg настолько кардинально переписали.
Спасибо за отличную статью. Позвольте несколько комментариев: 1. Часто в имени ролика содержатся символы, которые непригодны для наименования файлов.Это рушит работу ffmpeg. Приходится писать костыль для исправления имен на этапе скачивания:
def sanitize_filename(filename): # Убираем недопустимые символы для Windows filename = re.sub(r'[^\w\s.-]', '', filename) # Удаляем запрещенные символы filename = re.sub(r'\s+', '_', filename) # Заменяем пробелы на подчеркивания return filename
2. Скорее всего потребуется добавить путь ffmpeg в переменную PATH. P.S. С частью роликов ffmpeg при объединении не справляется, хотя по отдельности webm и m4a прекрасно читаются. Обновлял ffmpeg, но не помогает. Сталкивались с таким?
Обновил все кодеки и объединенное видео стало открываться во всех плеерах. До этого только VLC справлялся, MPC рисовал крякозябры. Не думал, что ffmpeg настолько кардинально переписали.
Спасибо за отличную статью. Позвольте несколько комментариев:
1. Часто в имени ролика содержатся символы, которые непригодны для наименования файлов.Это рушит работу ffmpeg. Приходится писать костыль для исправления имен на этапе скачивания:
def sanitize_filename(filename): # Убираем недопустимые символы для Windows
filename = re.sub(r'[^\w\s.-]', '', filename) # Удаляем запрещенные символы
filename = re.sub(r'\s+', '_', filename) # Заменяем пробелы на подчеркивания
return filename
video_filename = sanitize_filename(video_stream.default_filename)
audio_filename = sanitize_filename(audio_stream.default_filename)
output_filename = sanitize_filename(f"{yt.title}.mp4")
video_stream.download(filename=video_filename)
audio_stream.download(filename=audio_filename)
combine(audio_filename, video_filename, output_filename)
2. Скорее всего потребуется добавить путь
ffmpeg
в переменную PATH.P.S. С частью роликов ffmpeg при объединении не справляется, хотя по отдельности webm и m4a прекрасно читаются. Обновлял ffmpeg, но не помогает. Сталкивались с таким?