2016-08-17 5 views
3

Я пытаюсь жить потоковым на facebook через ffmpeg, но я получаю одну ошибку. Как ошибка, я должен использовать AAC вместо mp3. Но я не знаю, как это сделать.Как жить потоком на facebook через ffmpeg?

Ошибка: Bad audio codec 2 (MP3). Accepted audio codecs: AAC

Обычно, я могу выполнить команду ниже YouTube успешно.

ffmpeg -i "rtmp://..." -deinterlace -vcodec libx264 -pix_fmt yuv420p -preset medium -r 30 -g 60 -b:v 2500k -acodec libmp3lame -ar 44100 -threads 6 -qscale 3 -b:a 712000 -bufsize 512k -f flv "rtmp://a.rtmp.youtube.com/live2/key"

Но когда я запускаю команду ниже с facebook RTMP, ошибка становится.

ffmpeg -i "rtmp://..." -deinterlace -vcodec libx264 -pix_fmt yuv420p -preset medium -r 30 -g 60 -b:v 2500k -acodec libmp3lame -ar 44100 -threads 6 -qscale 3 -b:a 712000 -bufsize 512k -f flv "rtmp://rtmp-api.facebook.com:80/rtmp/key"

Я пользователь Ubuntu 14.04.

Заранее спасибо.

+3

Заменить 'libmp3lame' с' aac' и '- b: вы, вероятно, хотите значение '128k'. – Mulvya

+0

Какое сообщение об ошибке? – rogerdpack

+1

ffmpeg -re -i .rtmp: // ... -acodec libmp3lame -ar 44100 -b: a 128k -pix_fmt yuv420p -profile: v baseline -s 426x240 -bufsize 6000k -vb 400k -maxrate 1500k -deinterlace -vcodec libx264 -preset veryfast -g 30 -r 30 -f flv "rtmp: //rtmp-api.facebook.com: 80/rtmp/111111111111111? ds = 1 & a = XXXXXXXXXXXXXXXX" –

ответ

2

В вашей команде FFmpeg, у вас есть это:

-acodec libmp3lame 

Это кодирует аудиопоток в формате MP3. Вам нужно будет изменить это. Вы, возможно, придется использовать что-то вроде этого:

-acodec libfdk_aac 

https://trac.ffmpeg.org/wiki/Encode/AAC

Для ссылки на Facebook "Live Video стопами" от https://www.facebook.com/facebookmedia/get-started/live:

The Live API accepts H264 encoded video and AAC encoded audio only.

+0

Большинство пользователей не имеют доступа к 'libfdk_aac' (лицензия делает проблематичным распространение, поэтому ffmpeg должен быть скомпилирован), поэтому вместо этого можно использовать 'aac'. – LordNeckbeard