在 Python 中捕获带有音频的 RTSP CCTV 流

DBL*_*DBL 5 python audio stream capture rtsp

我花了好几天的时间寻找合适的解决方案,但似乎互联网上没有我的解决方案。

长话短说:我有一台传输 RTSP 流的闭路电视摄像机。我想以 .mp4 格式(其他视频格式也可以)捕获,包括音频(每个摄像头都有一个麦克风)。

来自互联网的所有解决方案都没有音频并逐帧保存,我认为这不是一个很酷的解决方案。

我尝试过不同的解决方案:OpenCV、VLC 甚至 FFmpeg,但最时尚的解决方案是使用 VLC python 包,如下所示:

RTSP_LINK = r'rtsp://ip_camera:554/user=my_user&password=my_password&channel=1&stream=0.sdp?real_stream--rtp-caching=100'

import vlc
import time
player=vlc.MediaPlayer(RTSP_LINK)
player.play()

count = 0

while count <= 100:
    count = count + 1
    time.sleep(0.2)
    player.video_set_scale(1.5)
    player.video_take_snapshot(0, './images/snapshot{0}.tmp.png'.format(count), 1920, 1080)
Run Code Online (Sandbox Code Playgroud)

我可以看到带有音频的流,但只能逐帧保存。

问题是:我可以以某种方式使用 VLC(或其他 Python 包)保存视频(包括音频)吗?

谢谢!