我正在尝试将我的一个 CCTV RTSP 流转换为 RTMP,以便将其添加到网站上。我已经阅读了很多文章并了解 Ubuntu 18.04 的 ffmpeg 是要走的路。
在我的脚本中,我已将以下代码添加到 Python 3.7 中:
ffmpeg -i "rtsp://xx.xxx.xx.x:554/user=admin&password=123@&channel=1&stream=0.sdp" -f flv -r 25 -s 640x480 -an "rtmp://localhost:1935/uid/1/camera1"
但是我在第一个链接(rtsp 链接)末尾的引号中出现语法错误,我已经搜索了几个小时,但看不到任何人之前提到过的内容。我还查看了 ffmpeg 文档,没有发现任何问题。
请问有人能指出我正确的方向吗?
谢谢
克里斯
最佳答案
根据评论,你不能这样做,因为你不能直接从 Python 执行命令。
最简单的方法是使用 os.system
:
import os
os.system('ffmpeg -i "rtsp://xx.xxx.xx.x:554/user=admin&password=123@&channel=1&stream=0.sdp" -f flv -r 25 -s 640x480 -an "rtmp://localhost:1935/uid/1/camera1"')
请注意,您要么必须像我一样使用单引号,要么转义双引号。
更简洁的方法可以使用 subprocess , 重定向
stderr
和 stdout
例如进入 Python 变量。
关于python - ffmpeg RTSP 到 RTMP - 在 Python 3 中运行时出现语法错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61119649/