opencv-python支持h264编码 anaconda也可支持
老版参考跳转
由于浏览器播放的视频常用h264编码格式,所以cv这边保存时希望能够以h264支持,但是奈何因为其开源许可,默认的包安装不支持h264。
开开心心指定h264报错:
Could not find encoder for codec id 27: Encoder not found
解决
windows
windows很方便,直接下openh264放项目下,或者动态库搜寻路径下即可支持。
Linux,Ubuntu等
就没windows那么简单了,要自己从源码编译支持
见
见
也就是说,对于c++的,自己源码编译后在加载相关库使用吧,对于python的,按照提示做:
Source distributions安装
不过我没用manual-builds,可以通过编译选项支持更多,懒得折腾,而是采取了pip的从源码编译安装,反正默认只要用h264相关环境就能支持上了,因为没那么多小九九,就想支持h264而已……
#安装相关编译时可能用到的环境,若有自己编译过的环境,可删除
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 libgtk2.0-dev libcanberra-gtk-module\
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==4.6.0.66 #4.6才修复了skbuild的bug issue#637
等待编译完成……
愉快的h264编码了……
后记
若是想离线安装,就把上面那个链接的源文件下载下来,比如wget xxx . 然后:
python -m pip install opencv-python-4.6.0.66.tar.gz
另外一种manual-builds的安装步骤
# 同上apt install 安装相关依赖
# download
$ git clone --recursive https://github.com/skvark/opencv-python.git
# set freetype
$ export CMAKE_ARGS="-DWITH_FREETYPE=ON"
# enable contrib
$ export ENABLE_CONTRIB=1
$ export MAKEFLAGS="-j$[$(nproc)-1]"
# compile
$ python -m pip wheel . --verbose.
遇到过的报错
1.报错找不到ninja
安装ninjia即可
2.报错:
File "<string>", line 451, in _classify_installed_files_overrideTypeError: _classify_installed_files() got an unexpected keyword argument 'cmake_install_dir'
#Opencv-python低版本原因,升级版本4.6及以上
Exception: Not found: 'python/cv2/gapi/.*\.py'
#当时是base下装的 未解决 莫名其妙后边就好了……不知道是不是更重装相关apt那个环境有关……
参考
https://zj-image-processing.readthedocs.io/zh_CN/latest/opencv/install-configure/[opencv-python]%E7%BC%96%E8%AF%91%E4%B8%8E%E5%AE%89%E8%A3%85/
opencv-python支持h264编码 anaconda也可支持相关推荐
- Hisi3516交叉编译ffmpeg支持h264编码
前言 Hi3516是海思半导体针对高清IPCamera产品应用开发的一款专业高端SOC芯片,具有1080P@30fps H264多码流编码性能.而ffmpeg是众多播放器的底层解.编码库,x264是一 ...
- FFmpeg_编译支持h264编码的ffmpeg,并验证
系统环境:ubuntu16.04 FFmpeg:4.1 x264:http://download.videolan.org/x264/snapshots/ nasm:2.13.03 yasm:1.3. ...
- chromium编译与支持H264编码支持
背景android中自带的webview不支持H264解码.但是android chrome支持. 我也试了国内的一些第三方webkit,比如TBS,但是TBS还是有坑,视屏播放的时候就是黑屏.: ( ...
- Android支持视频编码,影音全能 完美支持十余种视频编码_华为 Ascend P6_手机Android频道-中关村在线...
拍照之后又到了用户们最关注的多媒体播放测试环节了.这年头四核设备播放720p视频早已不在话下,所以今天我们仍旧选择15段1080p视频进行测试.由于视频编码及封装格式不同,在我们以往评测的手机中,总有 ...
- Windows 7(Win7)下MinGW+msys编译ffmpeg,并加入H264编码支持
可以去ffmpeg官网下载已经编译好的版本:https://ffmpeg.zeranoe.com/builds/ 该编译好的版本支持H264编码和解码 如果需要自己编译,步骤如下: 1.下载安装MSY ...
- 让WebRTC支持H264编解码
最近实验了下如何让WebRTC支持H264编码,记录下,供有需要的人参考. 说明一下,我是在 Ubuntu Server 14.04 下编译的 WebRTC ,使用 native(C++) api 开 ...
- webrtc M66 华为手机h264硬编解码不支持问题
webrtc M66 华为手机h264硬编解码不支持问题 最近使用webrtc的h264编码时,测试发现华为都不支持,而其他手机可以,通过阅读webrtc的代码发现如下问题 webrtc 会先检测手机 ...
- opencv录制视频 python_Python-OpenCV录制H264编码的MP4视频
前言 因最近项目需求涉及计算机视觉相关内容,需要实现在Python录制视频,并且录制完成后可在浏览器前端中进行视频回放的功能:特写下此篇文章以记录整体实现过程. 2019-08-02 更新 之前一直在 ...
- [opencv][原创]关于opencv-python的cv2保存视频不支持H264格式问题探讨
项目有个不合理要求,能够在chrome浏览器打开播放,但是cv2根本不支持H264,由于版权原因,官方不支持h264格式所以当你使用诸如XVID,MJPG等虽然不影响使用和正常播放,但是就是无法在浏览 ...
最新文章
- SharePoint Server 2007 页面模型
- 机器学习入门学习笔记:(1)BP神经网络原理推导及程序实现
- python2.7中文有限制么_python2.7
- 针对媒体不实报道误导大众--抹黑C#工资垫底
- 国内手机产业混乱:产业一窝蜂 企业捞快钱
- 最新光子计算处理器面世:单个光子芯片集成超万个光子器件,频率达1GHz
- [转载] Python中pass的作用
- xampp mysql是空的_xampp中修改mysql默认空密码(root密码)的方法分享
- php递归实现层级树状展开,PHP递归实现层级树状展开,php递归层级树状_PHP教程...
- Linux Enterprise Cluster选译
- 未在本地计算机上注册“microsoft.ACE.oledb.12.0”提供程序报错的解决办法
- 学生选课系统代码-2view视图层代码【MVC--v】代码
- python pandas series想赋予新的值_Python-pandas根据其他列的值创建新列/逐行应用多列的功能...
- MySQL数据库的导入和导出
- visio2019安装教程
- 车辆动力学知识总结(五)运动学模型的线性化和离散化
- linux系统网络代理设置
- xp系统如何通过cmd运行命令符查看电脑配置的两种方法
- 工厂模式实现多种数据库连接
- 特斯拉充电电流设置多大_特斯拉满电状态517公里,实际使用500公里。三种充电方式比较...