2013-02-13 2 views
0

Я пытаюсь преобразовать аудио asf в mp3, используя ffmpeg. Но у меня есть один конкретный звук, который искажается посередине и начинается, как если бы человек говорил медленным движением (с половиной скорости).ffmpeg преобразование звука искажено - половина скорости

Команда я использую:

FFmpeg - я input.asf -ac 2 output.mp3

Я пробовал много вариантов, но примерно в середине аудио, когда он не работает. Необработанный файл звучит хорошо, так что это не запись. По крайней мере, в середине передачи частота кадров снижалась по какой-то причине.

Спасибо всем!

[EDIT]

Я добавляю ответ консоли после запуска команды, как предложение от LordNeckbeard:

[[email protected] home]# ffmpeg -i recording-8532-1.asf -ac 2 -ab 64k -ar 44100 recording-8532-ac2-ar44100.mp3 
FFmpeg version 0.6.5, Copyright (c) 2000-2010 the FFmpeg developers 
built on Jan 29 2012 23:56:18 with gcc 4.1.2 20080704 (Red Hat 4.1.2-51) 
configuration: --prefix=/usr --libdir=/usr/lib --shlibdir=/usr/lib --mandir=/usr/share/man --incdir=/usr/include --disable-avisynth --extra-cflags='-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m32 -march=i386 -mtune=generic -fasynchronous-unwind-tables' --enable-avfilter --enable-avfilter-lavf --enable-libdirac --enable-libfaac --enable-libfaad --enable-libfaadbin --enable-libgsm --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libx264 --enable-gpl --enable-nonfree --enable-postproc --enable-pthreads --enable-shared --enable-swscale --enable-vdpau --enable-version3 --enable-x11grab 
libavutil  50.15. 1/50.15. 1 
libavcodec 52.72. 2/52.72. 2 
libavformat 52.64. 2/52.64. 2 
libavdevice 52. 2. 0/52. 2. 0 
libavfilter 1.19. 0/1.19. 0 
libswscale  0.11. 0/0.11. 0 
libpostproc 51. 2. 0/51. 2. 0 
[flv @ 0x86a4850]max_analyze_duration reached 
[flv @ 0x86a4850]Estimating duration from bitrate, this may be inaccurate 
Input #0, flv, from 'recording-8532-1.asf': 
Metadata: 
source   : STW MediaProxy v3.3.7.19894 
Duration: 04:00:08.49, start: 0.000000, bitrate: N/A 
Stream #0.0: Audio: aac, 44100 Hz, 2 channels (FC), s16 
Output #0, mp3, to 'recording-8532-ac2-ar44100.mp3': 
Metadata: 
TSSE   : Lavf52.64.2 
Stream #0.0: Audio: libmp3lame, 44100 Hz, 2 channels, s16, 64 kb/s 
Stream mapping: 
Stream #0.0 -> #0.0 
Press [q] to stop encoding 
size= 150906kB time=19315.93 bitrate= 64.0kbits/s  
video:0kB audio:150906kB global headers:0kB muxing overhead 0.000021% 

Так из приведенных выше данных, вы можете увидеть входной файл около 4ч , Выход заканчивается около 5 часов 20 минут.

+0

Вы пытались указать частоту дискретизации? Как -ar 44100. – BlueVoodoo

+0

Просьба предоставить полный вывод консоли ffmpeg, который является результатом вашей команды. – LordNeckbeard

+0

@ BlueVoodoo - Да, я попытался добавить -ar 44100, а также -ab 64k, -ab 32k с такими же результатами. – user1688971

ответ

0

Использование текущей версии ffmpeg исправило эту проблему для меня.

Обратите внимание, что ваш файл asf на самом деле является файлом FLV.

Input #0, flv, from 'recording-8532-1.asf': 

Кроме того, если формат MP3 на самом деле не является обязательным требованием, вы можете просто извлечь AAC аудио из файла FLV следующим образом:

ffmpeg -i input.flv -acodec copy output.aac 

Это позволит сохранить качество звука.

Смежные вопросы