update audio and video transcoding profiles for compatibility

This commit is contained in:
Abel Luck 2026-04-01 16:58:06 +02:00
parent c40715c3eb
commit 0504013c5a

View file

@ -102,79 +102,95 @@ MEDIA_ALLOW_REDIRECTS = True
REPUBLISHER_AUDIO = [ REPUBLISHER_AUDIO = [
{ {
"name": "vbr7", "name": "mp3_vbr7_voice",
"format": "mp3", "format": "mp3",
"max_bitrate": 96000, "max_bitrate": 64000,
"mimetype": "audio/mp3", "mimetype": "audio/mpeg",
"extension": "mp3", "extension": "mp3",
"ffmpeg_audio_params": { "ffmpeg_audio_params": {
"acodec": "libmp3lame", "acodec": "libmp3lame",
# https://trac.ffmpeg.org/wiki/Encode/MP3#VBREncoding
"qscale:a": "7", "qscale:a": "7",
"ac": "1",
"ar": "48000",
}, },
}, },
{ {
"name": "vbr3", "name": "m4a_aac_vbr2_voice",
"format": "aac", "format": "m4a",
"max_bitrate": 96000, "max_bitrate": 64000,
"mimetype": "audio/aac", "mimetype": "audio/mp4",
"extension": "aac", "extension": "m4a",
"ffmpeg_audio_params": { "ffmpeg_audio_params": {
"acodec": "libfdk_aac", "acodec": "libfdk_aac",
# https://trac.ffmpeg.org/wiki/Encode/MP3#VBREncoding "vbr": "2",
"vbr": "3", "ac": "1",
"ar": "48000",
},
},
{
"name": "webm_opus_voice_48k",
"format": "webm",
"max_bitrate": 48000,
"mimetype": "audio/webm",
"extension": "webm",
"ffmpeg_audio_params": {
"acodec": "libopus",
"b:a": "48k",
"ac": "1",
"ar": "48000",
"application": "voip",
}, },
}, },
] ]
REPUBLISHER_VIDEO = [ REPUBLISHER_VIDEO = [
# broadly compatible
{ {
"name": "720", "name": "main",
"container": "mp4", "container": "mp4",
"vcodec": "h264", "vcodec": "h264",
"acodec": "mp3", "acodec": "aac",
"audio_max_bitrate": 96000, "audio_max_bitrate": 96000,
"ffmpeg_audio_params": { "ffmpeg_audio_params": {
"acodec": "libmp3lame", "acodec": "aac",
# https://trac.ffmpeg.org/wiki/Encode/MP3#VBREncoding "b:a": "96k",
"qscale:a": "7", "ac": "2",
"ar": "48000",
},
"ffmpeg_video_params": {
"vcodec": "libx264",
"pix_fmt": "yuv420p",
"profile:v": "main",
"level": "4.0",
"preset": "medium",
"crf": "22",
"movflags": "+faststart",
}, },
"ffmpeg_video_params": {"vcodec": "h264", "strict": "-2"},
"max_height": 720, "max_height": 720,
"mimetype": "video/mp4", "mimetype": "video/mp4",
"extension": "mp4", "extension": "mp4",
}, },
# { # linux fallback without patent encumberance
# "passes": [ {
# { "name": "fallback",
# "c:v": "libvpx-vp9", "container": "webm",
# "b:v": "0", "vcodec": "vp9",
# "crf": "30", "acodec": "opus",
# "pass": "1", "audio_max_bitrate": 96000,
# "deadline": "good", "ffmpeg_audio_params": {
# "row-mt": "1", "acodec": "libopus",
# "f": "null", "b:a": "96k",
# }, "ac": "2",
# { "ar": "48000",
# "c:v": "libvpx-vp9", },
# "b:v": "0", "ffmpeg_video_params": {
# "crf": "30", "vcodec": "libvpx-vp9",
# "pass": "2", "crf": "33",
# "deadline": "good", "b:v": "0",
# "row-mt": "1", },
# "c:a": "libopus", "max_height": 720,
# "b:a": "96k", "mimetype": "video/webm",
# "ac": "2", "extension": "webm",
# }, },
# ],
# "name": "720",
# "container": "webm",
# "vcodec": "libvpx-vp9",
# "acodec": "opus",
# "audio_max_bitrate": 96000,
# "max_height": 720,
# "mimetype": "video/webm",
# "extension": "webm",
# },
] ]
REPUBLISHER_FFMPEG_ENCODERS = ["libmp3lame", "libfdk_aac", "libvpx-vp9", "libopus"] REPUBLISHER_FFMPEG_ENCODERS = ["libmp3lame", "libfdk_aac", "libvpx-vp9", "libopus"]