我想从存储在s3存储桶上的网址视频中获取图像。 我尝试用cv2.VideoCapture来做,但它只适用于静态文件。 如果有人可以帮助我
答案 0 :(得分:1)
我认为为时已晚,但是我正在为其他面临相同问题的问题写这本书,因为我正在尝试但找不到任何解决方案。
因此,您必须设置指向您的S3存储桶的Amazon Cloudfront下载发行版(如果不知道如何设置,请参阅here),然后仅使用http(不是https,不知道为什么)进行访问它不适用于https或直接通过s3 url)。
只需将cloudfront网址设置为:
cv2.VideoCapture('http://xyz.cloudfront.net/myvideo.mp4')
现在它将正常工作。
答案 1 :(得分:0)
可以使用S3对象的presigned url。
url = s3_client.generate_presigned_url( ClientMethod='get_object', Params={ 'Bucket': bucket, 'Key': key } )
vidcap = cv2.VideoCapture(url)