最近找到了一些关于多视点视频编码(MVC)的国际标准,找到了一些论文资料,原来在这方面十几年前就有一些国际标准了。
近十多年来,视频编解码技术迅速发展,并且日臻成熟,其标志是多个国际视频编解码标准的制定及其产业化应用。与视频编码相关的标准化组织有两个,一是运动图像专家组 (Moving Picture Expert Group, MPEG), 另一个是视频编码专家组 (Video Coding Expert Group, VCEG) 。 MPEG 隶属于国际标准化组织( International Organization for Standardization , ISO ) 和 国 际 电 工 委 员 会 ( International Electrotechnical Commission,IEC),其制定的视频编码标准主要有 MPEG-1、MPEG-2 和 MPEG-4 。 VCEG 属 于 国 际 电 信 联 盟 ( ITU Telecommunication Standardization Sector,ITU-T),其已有的视频编码标准为 H.26X 系列。这些标准融合了各种性能优良的视频编码工具,代表了各个时期图像编解码的发展水平。由 MPEG 和 VCEG 共同组成的联合视频小组(Joint Video Team, JVT)完成了新的视频编码标准 H.264/AVC 的制定。
所以JVT其实是有相关的标准和公共代码的,直接贴链接,下载下来之后编译
jvet / JMVC · GitLab (fraunhofer.de)
发现在H264AVCCommonIf.h文件有如下报错
error: explicit qualification required to use member 'insert' from dependent
解决方法:
在
H264AVCCommonIf.h
文件中添加#include <vector>
insert 改成 this->insert
push_back改成this->push_back
push_front改成this->push_front
再编译成功
demo运行步骤
一、下载测试yuv文件
ftp://ftp.ne.jp/KDDI/multiview
ftp://ftp.merl.com/pub/avetro/mvc-testseq
二、将单个yuv转成流文件(编码)
./H264AVCEncoderLibTestStatic -vf exit/encoderMVC.cfg 0
./H264AVCEncoderLibTestStatic -vf exit/encoderMVC.cfg 2
./H264AVCEncoderLibTestStatic -vf exit/encoderMVC.cfg 1
./H264AVCEncoderLibTestStatic -vf exit/encoderMVC.cfg 4
./H264AVCEncoderLibTestStatic -vf exit/encoderMVC.cfg 3
./H264AVCEncoderLibTestStatic -vf exit/encoderMVC.cfg 6
./H264AVCEncoderLibTestStatic -vf exit/encoderMVC.cfg 5
./H264AVCEncoderLibTestStatic -vf exit/encoderMVC.cfg 7
三、将上一步所有生成的流合并成一个流(编码)
./MVCBitStreamAssemblerStatic -vf assembler.cfg
四、解码
./H264AVCDecoderLibTestStatic ballroom.264 decoder/ballroom/ballroom.264 7
网友评论