web-dev-qa-db-ja.com

ffmpegを介してFacebookでライブストリーミングする方法は?

Facebookでffmpegを介してライブストリーミングを試みていますが、1つのエラーが発生します。エラーとして、mp3の代わりにAACを使用する必要があります。しかし、私はそれを行う方法がわかりません。

エラー: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"

私はUbuntu14.04のユーザーです。

前もって感謝します。

6
K. Talha

Ffmpegコマンドには、次のものがあります。

-acodec libmp3lame

これは、オーディオストリームをMP3にエンコードしています。それを変更する必要があります。次のようなものを使用する必要があるかもしれません:

-acodec libfdk_aac

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

Facebookの「ライブビデオ仕様」を参照するには https://www.facebook.com/facebookmedia/get-started/live

Live APIは、H264でエンコードされたビデオとAACでエンコードされたオーディオのみを受け入れます。

2
Zs File

エンコーダー「aac」は実験的ですが、実験的コーデックは有効ではなく、acc add'-strict-2 'を追加します

したがって、libmp3lameaac -strict -2に置き換えます

0
mint