Opencv VideoCapture总是在Heroku上返回false

Dac*_*dar 9 python opencv ffmpeg heroku video-processing

我正在使用以下代码打开视频流:

import cv2
video = cv2.VideoCapture()
video.open("some_m3u8_link")
success, image = video.read()
Run Code Online (Sandbox Code Playgroud)

但是,即使代码在本地工作,在Heroku success上总是错误的.

我正在使用带有以下buildpacks的cedar-14堆栈:

Heroku的/蟒蛇

https://github.com/jonathanong/heroku-buildpack-ffmpeg-latest.git

(我为ffmpeg尝试了几个buildpack选项)

ffmpeg --version在heroku实例上运行将返回ffmpeg version 4.0-static https://johnvansickle.com/ffmpeg/

是否有任何我错过的设置/配置,以使其在部署上工作?谢谢!

稍后编辑:我尝试了几个"some_m3u8_link"链接,包括来自抽搐和其他流媒体服务(包括流量传输)复制的一个例子:

python -c "import cv2; video=cv2.VideoCapture(); video.open('https://hddn01.skylinewebcams.com/live.m3u8?a=5tm6kfqrhqbpblan9j5d4bmua4'); success, image = video.read(); print(success)"
Run Code Online (Sandbox Code Playgroud)

在本地计算机上返回True,在Heroku上返回False.

(链接取自这里)

小智 0

你可以试试这个:

import cv2
video = cv2.VideoCapture("some_m3u8_link")
success, image = video.read()
Run Code Online (Sandbox Code Playgroud)