當前位置:首頁 » 雲伺服器 » 流媒體伺服器搭建獲取推流碼

流媒體伺服器搭建獲取推流碼

發布時間: 2024-09-26 15:18:36

A. FFmpeg 代碼實現流媒體推流(RTSP)

最近需要做實時錄屏並把視頻推流到RTSP伺服器,具體流程是抓取屏幕內容(bitmap),並把bitmap轉化為YUV,接著把YUV編碼成H264,再把H264碼流推到RTSP伺服器;把採集到的PCM編碼為AAC,再把AAC推流至RTSP伺服器。

看了雷神的一篇文章: 最簡單的基於FFmpeg的推流器(以推送RTMP為例) ,他是把本地的視頻文件推流至RTMP伺服器,並不符合我的要求。
接著我找到另一篇文章: ffmpeg實現H264壓縮並且推流至RTSP ,這篇文章只有圖像編碼,並沒有音頻編碼,並且推流之後並沒有播放成功。
我綜合上面兩位大佬的思路,和查找一些資料實現了這個功能。

RTSP伺服器使用的是 HappyTime 的免費試用版本。

我抓到的bitmap是BGRA格式的,所以使用的圖像格式是 AV_PIX_FMT_BGRA cropImage 是含有rgba圖像的數組

調用:

由於我是實時抓取的屏幕, frame_yuv->pts 設為當前的時間戳,以保證能正常播放。

調用:

調用:
其中pcm_buff是包含pcm數據的數組

使用udp傳輸時傳到1400多幀就斷開鏈接了,原因不明,所以改用使用tcp協議傳輸

延遲有1.5秒左右

參考:
https://blog.csdn.net/leixiaohua1020/article/details/39803457
https://blog.csdn.net/yunge812/article/details/79345584
https://trac.ffmpeg.org/wiki

熱點內容
java返回this 發布:2025-10-20 08:28:16 瀏覽:541
製作腳本網站 發布:2025-10-20 08:17:34 瀏覽:828
python中的init方法 發布:2025-10-20 08:17:33 瀏覽:531
圖案密碼什麼意思 發布:2025-10-20 08:16:56 瀏覽:713
怎麼清理微信視頻緩存 發布:2025-10-20 08:12:37 瀏覽:633
c語言編譯器怎麼看執行過程 發布:2025-10-20 08:00:32 瀏覽:946
郵箱如何填寫發信伺服器 發布:2025-10-20 07:45:27 瀏覽:204
shell腳本入門案例 發布:2025-10-20 07:44:45 瀏覽:62
怎麼上傳照片瀏覽上傳 發布:2025-10-20 07:44:03 瀏覽:755
python股票數據獲取 發布:2025-10-20 07:39:44 瀏覽:659