用Python读取h264流

2024-04-29 19:31:52 发布

您现在位置:Python中文网/ 问答频道 /正文

我正试着读一段来自鹦鹉贝博普2号无人驾驶飞机的视频。 视频流作为“socket”写入文件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视频帧?

所有的推荐都非常欢迎!


Tags: 文件frominputstream视频socketffmpegmplayer