转换特定的音频流并复制其余的

Converting a spesific audio sream and copy the rest

是否可以使用 FFmpeg 将视频文件中的 一个 音轨转换为不同的格式,同时 copying/remuxing 文件中的其他音轨?

更具体地说,是否可以在不明确指定要保留的所有音轨的情况下执行此操作?

我试过使用-map函数,

ffmpeg -i INPUT -c:v copy -c:a libfdk_aac -map 1:a:2 OUTPUT.mkv

但这只编码了第一个音轨并排除了其余音轨。我知道我可能可以明确地告诉 FFmpeg 混合所有其余的音轨,但这真的很乏味。这意味着我将不得不计算每个音轨并编写相当长的命令。

有没有办法告诉 FFmpeg“转换音轨 X 并复制其余部分”?

这是文件的媒体信息。请注意,有超过 10 个音轨,但为了简单起见,我在此示例中将它们排除在外。

Video
ID                                       : 4113 (0x1011)
Menu ID                                  : 1 (0x1)
Format                                   : HEVC
Format/Info                              : High Efficiency Video Coding
Format profile                           : Main 10@L5.1@High
HDR format                               : SMPTE ST 2086, HDR10 compatible
Codec ID                                 : 36
Duration                                 : 2 h 30 min
Width                                    : 3 840 pixels
Height                                   : 2 160 pixels
Display aspect ratio                     : 16:9
Frame rate                               : 23.976 (24000/1001) FPS
Color space                              : YUV
Chroma subsampling                       : 4:2:0 (Type 2)
Bit depth                                : 10 bits
Color range                              : Limited
Color primaries                          : BT.2020
Transfer characteristics                 : PQ
Matrix coefficients                      : BT.2020 non-constant
Mastering display color primaries        : Display P3
Mastering display luminance              : min: 0.0050 cd/m2, max: 4000 cd/m2
Maximum Content Light Level              : 349 cd/m2
Maximum Frame-Average Light Level        : 86 cd/m2

Audio #1
ID                                       : 4352 (0x1100)
Menu ID                                  : 1 (0x1)
Format                                   : DTS XLL
Format/Info                              : Digital Theater Systems
Commercial name                          : DTS-HD Master Audio
Muxing mode                              : Stream extension
Codec ID                                 : 134
Duration                                 : 2 h 30 min
Bit rate mode                            : Variable
Channel(s)                               : 6 channels
Channel layout                           : C L R Ls Rs LFE
Sampling rate                            : 48.0 kHz
Frame rate                               : 93.750 FPS (512 SPF)
Bit depth                                : 24 bits
Compression mode                         : Lossless

Audio #2
ID                                       : 4353 (0x1101)
Menu ID                                  : 1 (0x1)
Format                                   : AC-3
Format/Info                              : Audio Coding 3
Commercial name                          : Dolby Digital
Codec ID                                 : 129
Duration                                 : 2 h 30 min
Bit rate mode                            : Constant
Bit rate                                 : 640 kb/s
Channel(s)                               : 6 channels
Channel layout                           : L R C LFE Ls Rs
Sampling rate                            : 48.0 kHz
Frame rate                               : 31.250 FPS (1536 SPF)
Bit depth                                : 16 bits
Compression mode                         : Lossy
Delay relative to video                  : -9 ms
Stream size                              : 687 MiB (1%)
Service kind                             : Complete Main

Audio #3
ID                                       : 4354 (0x1102)
Menu ID                                  : 1 (0x1)
Format                                   : AC-3
Format/Info                              : Audio Coding 3
Commercial name                          : Dolby Digital
Codec ID                                 : 129
Duration                                 : 2 h 30 min
Bit rate mode                            : Constant
Bit rate                                 : 448 kb/s
Channel(s)                               : 6 channels
Channel layout                           : L R C LFE Ls Rs
Sampling rate                            : 48.0 kHz
Frame rate                               : 31.250 FPS (1536 SPF)
Bit depth                                : 16 bits
Compression mode                         : Lossy
Delay relative to video                  : -9 ms
Stream size                              : 481 MiB (1%)
Service kind                             : Complete Main

尝试:

ffmpeg -i INPUT -map 0 -c copy -c:a:2 libfdk_aac OUTPUT.mkv
  • -map 0 映射输入 #0
  • 的所有流 (video/audio/subtitle/etc.)
  • -c copy 设置默认操作为复制
  • -c:a:2 自定义要重新编码的第 3 个输出音频流。