關於nginx串流伺服器部署的文章已經有很多了,今天我在這裡講一下如何在向伺服器推流的同時將串流轉碼為MP4檔案保存下來,這裡主要使用的是ffmpeg。
1、首先要說明的是,不能用exec指令。他會在客戶端推流結束的同時自動終止調用的外部程序,結果就是最後ffmpeg無法進行完整的編碼。此指令只適合將接到的串流轉推到其他位址。application hls { live on; hls on; record all; record_path /home/zhanghui/test; #record_interval 10s; #record_append on; hls_path /tmp/app; hls_fragment 5s; # convert recorded file to mp4 format exec_record_done '/usr/local/bin/ffmpeg' -y -i /home/zhanghui/test/livestream.flv -vcodec libx264 -f mp4 /home/zhanghui/test/test_record.mp4 2>>/home/zhanghui/test/test_record.log; }
以上就介紹如何在nginx伺服器上實現多媒體串流的錄製和轉碼,包括了方面的內容,希望對PHP教程有興趣的朋友有所幫助。