【发布时间】:2017-11-06 13:43:57
【问题描述】:
我将 mp3 文件连接成一个 m4a。
为了节省时间,我先将 mp3 转换为 m4a(多线程),然后将输出文件 (m4a) 连接到单个 m4a 文件中。
当我进行转换 (mp3 -> m4a) 和 cancat 时,concat 可以工作。但它需要永远运行。
例子:
ffmpeg -i "concat:001.mp3|002.mp3|003.mp3" -codec:a aac -c copy output.m4a
如果我将这些相同的 mp3 文件并行转换为 m4a 然后进行 concat,我可以为自己节省大量时间。
问题是如果我对转换后的 m4a 文件运行 concat 命令
示例 cmd:
ffmpeg -i "concat:001.m4a|002.m4a|003.m4a" -c copy output.m4a
我收到以下错误:
[mov,mp4,m4a,3gp,3g2,mj2 @ 000000000052f680] 发现重复的 MOOV 原子。跳过了
更新:连接 m4a 文件时的输出(两轨示例):
C:\_ffmpeg>ffmpeg -i "concat:001.m4a|002.m4a" -c copy output.m4a
ffmpeg version N-79630-g9ac154d Copyright (c) 2000-2016 the FFmpeg developers
built with gcc 5.3.0 (GCC)
configuration: --enable-gpl --enable-version3 --disable-w32threads --enable-av
isynth --enable-bzlib --enable-fontconfig --enable-frei0r --enable-gnutls --enab
le-iconv --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --
enable-libfreetype --enable-libgme --enable-libgsm --enable-libilbc --enable-lib
modplug --enable-libmfx --enable-libmp3lame --enable-libopencore-amrnb --enable-
libopencore-amrwb --enable-libopenjpeg --enable-libopus --enable-librtmp --enabl
e-libschroedinger --enable-libsnappy --enable-libsoxr --enable-libspeex --enable
-libtheora --enable-libtwolame --enable-libvidstab --enable-libvo-amrwbenc --ena
ble-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx
264 --enable-libx265 --enable-libxavs --enable-libxvid --enable-libzimg --enable
-lzma --enable-decklink --enable-zlib
libavutil 55. 22.101 / 55. 22.101
libavcodec 57. 38.100 / 57. 38.100
libavformat 57. 34.103 / 57. 34.103
libavdevice 57. 0.101 / 57. 0.101
libavfilter 6. 44.100 / 6. 44.100
libswscale 4. 1.100 / 4. 1.100
libswresample 2. 0.101 / 2. 0.101
libpostproc 54. 0.100 / 54. 0.100
[mov,mp4,m4a,3gp,3g2,mj2 @ 000000000048a9a0] Found duplicated MOOV Atom. Skipped
it
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'concat:001.m4a|002.m4a':
Metadata:
track : 1
major_brand : M4A
minor_version : 512
title : 001 Moon Over Soho
artist : Ben Aaronovitch
album_artist : Narrated by Kobna Holdbrook-Smith
composer : Narrated by Kobna Holdbrook-Smith
album : Moon Over Soho
date : 2012
encoder : Lavf57.34.103
genre : Speech
copyright : Tantor Audio
compatible_brands: isomiso2
Duration: 00:44:03.83, start: 0.000000, bitrate: 251 kb/s
Stream #0:0(und): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, flt
p, 128 kb/s (default)
Metadata:
handler_name : SoundHandler
[ipod @ 000000000048bb20] Using AVStream.codec to pass codec parameters to muxer
s is deprecated, use AVStream.codecpar instead.
Output #0, ipod, to 'output.m4a':
Metadata:
track : 1
major_brand : M4A
minor_version : 512
title : 001 Moon Over Soho
artist : Ben Aaronovitch
album_artist : Narrated by Kobna Holdbrook-Smith
composer : Narrated by Kobna Holdbrook-Smith
album : Moon Over Soho
date : 2012
compatible_brands: isomiso2
genre : Speech
copyright : Tantor Audio
encoder : Lavf57.34.103
Stream #0:0(und): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, 128
kb/s (default)
Metadata:
handler_name : SoundHandler
Stream mapping:
Stream #0:0 -> #0:0 (copy)
Press [q] to stop, [?] for help
size= 41892kB time=00:44:03.80 bitrate= 129.8kbits/s speed=2.21e+003x
video:0kB audio:41445kB subtitle:0kB other streams:0kB global headers:0kB muxing
overhead: 1.077122%
C:\_ffmpeg>pause
Press any key to continue . . .
【问题讨论】:
-
这是一个警告,而不是错误。输出文件是否形成?会玩吗?
-
输出文件被创建,但它只包含第一个轨道。它会播放
-
输出添加到问题。
-
将编码保存为 TS 并连接它们。
-
我遇到了完全相同的问题。它创建了一个输出文件,但只包含第一首曲目。
标签: ffmpeg