gpt4 book ai didi

ffmpeg 不断将第二个 ac3 音频流转换为 mp2

转载 作者:行者123 更新时间:2023-12-04 23:04:41 29 4
gpt4 key购买 nike

我是这个论坛的新手,希望有人能提供帮助。
我正在尝试将第二个音轨 (chinese.ac3) 添加到已经具有 ac3 音轨的 XVID 视频 (vts_01.avi) 中。

这些音轨被编码为 ac3、48000 Hz、立体声、128 kb/s,我想保持这种方式——只需多路复用流而不进行转码。

这是我正在使用的命令:

ffmpeg -i vts_01.avi -vcodec copy -i Chinese.ac3 -acodec copy -map 0:0 -map 0:1 -map 1:0 muxed2.avi -newaudio

ffmpeg 完成它的工作,除了它将第二个音轨转换为 mp2、64 kb/s 的事实。

这是输出的相关摘录,其中关键部分是“流#0.2:音频:mp2、48000 Hz、立体声、s16、64 kb/s”,我想要“流#0.2:音频:ac3、48000 Hz” , 立体声, 128 kb/s':
Input #0, avi, from 'vts_01.avi':
Metadata:
encoder : Lavf53.5.0
Duration: 02:03:26.40, start: 0.000000, bitrate: 1954 kb/s
Stream #0.0: Video: mpeg4, yuv420p, 720x352 [PAR 1:1 DAR 45:22], 23.98 tbr,
23.98 tbn, 23.98 tbc
Stream #0.1: Audio: ac3, 48000 Hz, stereo, s16, 128 kb/s
[ac3 @ 018A7440] max_analyze_duration 5000000 reached at 5024000
[ac3 @ 018A7440] Estimating duration from bitrate, this may be inaccurate
Input #1, ac3, from 'Chinese.ac3':
Duration: 02:03:26.36, start: 0.000000, bitrate: 128 kb/s
Stream #1.0: Audio: ac3, 48000 Hz, stereo, s16, 128 kb/s
File 'muxed2.avi' already exists. Overwrite ? [y/N] y
Output #0, avi, to 'muxed2.avi':
Metadata:
ISFT : Lavf53.5.0
Stream #0.0: Video: mpeg4, yuv420p, 720x352 [PAR 1:1 DAR 45:22], q=2-31, 23.
98 tbn, 23.98 tbc
Stream #0.1: Audio: ac3, 48000 Hz, stereo, 128 kb/s
Stream #0.2: Audio: mp2, 48000 Hz, stereo, s16, 64 kb/s
Stream mapping:
Stream #0.0 -> #0.0
Stream #0.1 -> #0.1
Stream #1.0 -> #0.2

我尝试了许多不同的组合,包括明确地将流强制为 ac3:
ffmpeg -i vts_01.avi -vcodec copy -i chinese.ac3 -acodec ac3 -ac 2 -ar 48000 -ab 128k -map 0:0 -map 0:1 -map 1:0 muxed2.avi -newaudio

结果相同。

我还尝试使用流说明符为流分配编解码器(基于 http://ffmpeg.org/ffmpeg.html#toc-Stream-specifiers-1,但我的 ffmpeg 无法识别这些选项。

我已经没有东西可以尝试了。

最佳答案

(OP将答案编辑为问题。见Question with no answers, but issue solved in the comments (or extended in chat))

OP写道:

I think I just found the solution

from http://ffmpeg-users.933282.n4.nabble.com/Encoding-with-multiple-Audio-tracks-td1289403.html There, James Darley says:


So your command line should look like:  
ffmpeg -i INPUT [output options] OUTPUT [audio options] -newaudio [subtitle options] -newsubtitle

I then re-arranged my options accordingly, i.e. audio options for the new track after the output:


ffmpeg -i vts_01.avi -vcodec copy -acodec copy -i Chinese.ac3 muxed3.avi -acodec copy -newaudio 

And I now gets my two ac3 audio tracks at the right bitrate.

关于ffmpeg 不断将第二个 ac3 音频流转换为 mp2,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8670068/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com