小编daV*_*nci的帖子

使用 openCV 从 numpy 数组生成视频

我正在尝试使用 openCV VideoWriter 类从 numpy 数组生成视频。我正在使用以下代码:

import numpy as np
import cv2
size = 720*16//9, 720
duration = 2
fps = 25
out = cv2.VideoWriter('output.avi', cv2.VideoWriter_fourcc(*'X264'), fps, size)
for _ in range(fps * duration):
    data = np.random.randint(0, 256, size, dtype='uint8')
    out.write(data)
out.release()
Run Code Online (Sandbox Code Playgroud)

编解码器似乎已安装,因为 ffmpeg 可以转换为 x264 编解码器,并且安装了 libx264。代码运行时没有警告,但是生成的视频似乎不包含数据,因为在尝试使用 mpv 读取它们时我总是收到以下消息:

[ffmpeg/demuxer] avi:找不到流 0 的编解码器参数(视频:h264 (X264 / 0x34363258),无,1280x720):未指定的像素格式

导致此问题的原因可能是什么?

python video opencv ffmpeg codec

13
推荐指数
1
解决办法
2万
查看次数

标签 统计

codec ×1

ffmpeg ×1

opencv ×1

python ×1

video ×1