我用的是opencv-python==4.5.1.48
和python3.9
码头。我想保存一个h264格式的视频。以下是我保存视频的功能:
import cv2
def save_video(frames):
fps = 30
video_path = '/home/save_test.mp4'
fourcc = cv2.VideoWriter_fourcc(*'h264')
video_writer = cv2.VideoWriter(video_path, fourcc, fps, (112, 112))
for frame in frames:
video_writer.write(frame)
video_writer.release()
当我使用.mp4格式保存视频时,会出现以下错误:
OpenCV: FFMPEG: tag 0x34363268/‘H 264’不支持编解码器id 27和格式'mp4 / MP4 (MPEG-4 Part 14)‘OpenCV: FFMPEG: FFMPEG:FFMPEG使用标记0x31637661/’avc1 1‘无法找到编解码id 27的编码器:编码器找不到
我搜索并阅读了一些解决方案,但都没有解决我的问题。
更新
我还安装了libx264-dev
,这是在这个帖子中推荐的,但是没有工作。
发布于 2021-12-12 06:47:58
最后,我找到了解决办法。我可以在ubuntu:20.04
码头解决我的问题。您应该注意的重要一点是,您应该通过apt-get install python3-opencv
安装apt-get install python3-opencv
,而不是使用pip
。
发布于 2022-10-11 05:45:58
下面是我在ubuntu20.04上的解决方案:
sudo apt install build-essential cmake git python3-dev python3-numpy \
libavcodec-dev libavformat-dev libswscale-dev \
libgstreamer-plugins-base1.0-dev \
libgstreamer1.0-dev libgtk-3-dev \
libpng-dev libjpeg-dev libopenexr-dev libtiff-dev libwebp-dev \
libopencv-dev x264 libx264-dev libssl-dev ffmpeg
python -m pip install --no-binary opencv-python opencv-python
https://stackoverflow.com/questions/70247344
复制相似问题