簡體   English   中英

將ffmpeg與Flash Media Server和HDS一起使用

[英]Using ffmpeg with Flash Media Server and HDS

我想使用ffmpeg編碼並將實時流發布到Flash Media Server。 為了支持iOS設備,我還需要實現HTTP Live Streaming。 視頻需要采用H.264格式,音頻應為AAC。 我沒有太多使用ffmpeg的經驗,而且我很難讓它工作。 這是我嘗試過的命令(以及一些變化):

ffmpeg.exe -threads 15 -f dshow -i video="USB2.0 UVC WebCam":audio="Microphone (Realtek High Defini" \
      -map_channel 0.1.1 -r 24 -acodec libvo_aacenc -ar 22050 -ab 128k -vcodec libx264 \
      -s vga -vb 100k -f flv "rtmp://<public-dns>/livepkgr/livestream1?adbe-live-event=liveevent" \
      -r 24 -acodec libvo_aacenc -ar 22050 -ab 128k -vcodec libx264 -s qvga -vb 200k \
      -f flv "rtmp://<public-dns>/livepkgr/livestream2?adbe-live-event=liveevent" \
      -r 24 -acodec libvo_aacenc -ar 22050 -ab 128k -vcodec libx264 -s vga -vb 350k 
      -f flv "rtmp://<public-dns>/livepkgr/livestream3?adbe-live-event=liveevent"

當我運行它時,它似乎連接到FMS,但后來我收到很多關於丟幀的錯誤消息 - 我不確定任何幀是否成功編碼。 我的CPU使用率也非常高。 當我為其中一個流輸入* .m3u8文件的URL時,我從FMS收到404錯誤(雖然可以訪問主livestream.m3u8文件)。 我也嘗試輸出到文件而不是FMS,但沒有成功。 我得到的只是一些非常亂碼的聲音,沒有視頻。

對於我應該用什么選項/命令來實現這個工作的任何建議? 是否有人使用ffmpeg與FMS一起使用MP4視頻進行HTTP動態流/ HLS? 我一直在努力讓HDS / HLS工作一段時間,任何幫助都會非常感激! 它不應該有所作為,但我在Amazon EC2上使用FMS和他們的AMI圖像。

謝謝!

-threads 15

我對這個價值深感懷疑。 我自己對threads切換的研究和實驗表明,任何高於4的值都是錯誤的。 嘗試使用較低的值和/或可被2整除的值將其刪除。

-f flv

我也對這個價值深感懷疑。 FLV和h.264不能很好地融合在一起。 請改用MP4。

你提到CPU是“高” ,但你沒有提到一個百分比。 另請注意,您正在編碼三種不同的比特率 - 實際上是三個同時編碼作業。 而且你沒有提到你正在運行的CPU。 奔騰4或酷睿2? 我不會感到驚訝。 一個現代的Core i7,還可以。

你為什么用FFmpeg? 使用Adobe的Flash Media Live Encoder可能更容易。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM