Youtube-dl 中视频格式转换的后处理关键

R. *_*ard 2 python youtube-dl

Youtube-dl wiki 页面中有一个用于音频提取的后处理示例,但我无法对视频格式转换执行相同的操作。我知道在下载之前可以选择视频格式,但有时我想要的格式不可用,因此我需要转换下载的视频文件。key要传递的参数和其他参数是什么?

    ydl_opts = {
    'format': 'bestvideo[height<=480]+bestaudio/best[height<=480]',
    'videoformat' : "mp4",
    'outtmpl': '%(title)s.%(ext)s',
    'writethumbnail': True,
    'writesubtitles': True,
    'writeautomaticsub': True,
    'subtitleslangs': 'en',
    'postprocessors': [{
        'key': 'FFmpegExtractAudio',    #what to use for video format converting?
        'preferredcodec': 'mp3',        #what to use for video format converting?
        'preferredquality': '192',      #what to use for video format converting?
    }],
    'logger': MyLogger(),
    'progress_hooks': [my_hook],
}
with youtube_dl.YoutubeDL(ydl_opts) as ydl:
    ydl.download([video_url])
Run Code Online (Sandbox Code Playgroud)

小智 6

可用的后处理器列于postprocessor/__init__.py

ydl_opts = {
    # ...
    'postprocessors': [{
        'key': 'FFmpegVideoConvertor',
        'preferedformat': 'mp4',  # one of avi, flv, mkv, mp4, ogg, webm
    }],
}
Run Code Online (Sandbox Code Playgroud)

(该键的更好名称是convert_to,但现在更改它会不必要地破坏兼容性。)