使用FFMpeg命令行錄屏推rtmp流


最近在做局域網內屏幕分享方面的東西,要把錄制一台設備的屏幕然后實時推送給內網的一個或多個用戶。

做了很多實驗,效果還沒有達到要求,這里分享一下推rtmp流的實驗。

實驗使用到的各種工具:FFmpeg.exe、crtmp(推rtmp時需要其做為服務器)、vlcplayer。

 

一、 啟動crtmp推流服務

 

二、 使用命令行工具調用FFmpeg程序,所用命令如下(參數略有不同,每次使用一條即可):

ffmpeg -f gdigrab -video_size 1920x1080 -framerate 15 -i desktop -vcodec libx264 -f flv rtmp://127.0.0.1/live/mystream
ffmpeg -f dshow -i video="screen-capture-recorder" -vcodec libx264 -preset:v ultrafast -tune:v zerolatency -f flv rtmp://127.0.0.1/live/mystream

注:第二條命令需要安裝Screen Capturer Recorder后才能使用。參見http://blog.csdn.net/leixiaohua1020/article/details/38284961

 

三、 推流穩定之后,使用vlcplayer播放錄制視頻

播放的地址為rtmp://127.0.0.1/live/mystream live=1,能正常播放

 

問題:

  1. 系統資源占用太多,CPU一直在9%左右(i7-4790),內容則吃掉了1G
  2. 延遲太大,本機播放延遲大約10秒(希望控制在2秒以內)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM