Python使用FFmpeg對RTSP進行音頻拉流並錄音


最近有項目需要在樹莓派上進行錄音,由於樹莓派3B自身對麥克風錄音支持不足,剛好前陣子破解了小蟻攝像頭1080p國際版,其中有一個功能是RTSP服務器,正好利用RTSP的音頻流進行拉流並保存錄音。

Python使用FFmpeg對RTSP進行音頻拉流,應該是最好的選擇。因為FFmpeg開源,且對音頻的解碼支持十分廣泛。FFmpeg的協議文檔在這里:https://ffmpeg.org/ffmpeg-protocols.html#Examples

具體實現方法如下:

使用環境

python版本:python3
PC系統:windows10

1、小蟻破解后的WEB界面有RTSP地址,如下圖:

 

2、Python安裝FFmpeg-python模塊

pip install ffmpeg-python

 

3、下載win10可用的FFmpeg:http://ffmpeg.org/  ,並放在腳本相同的目錄下,我之前有下載了一個可用,鏈接:https://pan.baidu.com/s/18qIlvpyP1mpVvzc9kFzz4g ,提取碼:egud 

 

4、python代碼:

# -*- coding:UTF-8 -*-
import ffmpeg

host = '192.168.50.166/ch0_2.h264'

# 子進程
(
    ffmpeg
        .input('rtsp://' + host, allowed_media_types='audio', rtsp_transport='tcp')['a']  # allowed_media_types='audio' 只讀取音頻流
        .filter('volume', 5)  # 音量大小控制
        .output('saved_audio.aac', ac=1, ar='16k')  #ac是聲道,ar是采樣率 .overwrite_output()
        .run(capture_stdout=True)
)

 


免責聲明!

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



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