我正在尝试从 Parrot Bebop 2 无人机中读取视频流。 视频流作为“套接字”写入H264流文件。
$ ffmpeg -i [STREAM]
Input #0, h264, from 'stream_h264':
Duration: N/A, bitrate: N/A
Stream #0:0: Video: h264 (Constrained Baseline), 1 reference frame, yuv420p(progressive, left), 1280x720, 23.98 fps, 23.98 tbr, 1200k tbn, 47.95 tbc
使用以下参数在MPlayer中读取视频流不是问题。使用VLC或ffmpeg播放它也不应该太难。对于MPlayer,以下工作:
mplayer -fs -demuxer h264es -benchmark stream_h264
这会播放高分辨率的流。但是我的目标是使用Python(主要是OpenCV)对帧进行图像处理。因此,我想将帧读入NumPy数组。我已经考虑过使用cv2.VideoCapture
,但这对我的流似乎不起作用。其他(有点容易)使用我不知道的选项,因此我的问题是有人推荐我如何阅读Python中的视频帧?
欢迎所有推荐!