1、mpeg4和mp4格式不一样,区别是:1、MP4是一种视频文件格式,而mpeg4是一个编码标准,即为一个编解码器。可以理解为,mp4是支持mpeg4的标准的音频视频文件,而支持mpeg4标准的文件格式有很多种,mp4和avi都是其中的一种。

2、MP4 是一种视频格式,它可以存储不同的媒体,通常使用 MPEG4 编解码器进行压缩,但并非总是如此。而 MPEG4 本身可以应用于不同的文件格式,包括 MP4、MOV、AVI、MKV、OGG 和 MXF。

3、编解码器是对信号进行编码和解码的程序。媒体编解码器不仅将音频和视频流转换为数字信号,还对其进行压缩,使其更适合在线传输。

媒体容器是一种允许在一个多媒体文件中嵌入多个数据流的技术。大多数情况下,它们是音频、视频、字幕,有时是额外的元数据。我们也可以说,它是一个文件扩展名。

什么是 MPEG4

MPEG4 是一种编解码器。这是运动图像专家组开发的视频和音频编码标准的一种压缩方法。与使用 MPEG 压缩的其他格式不同,MPEG-4 格式可以存储静止图像、字幕、视频、音频和其他基本数据。它们并非都与大多数设备和数字平台兼容。

什么是 MP4

MP4 是一种媒体容器格式,由国际标准化组织于 2001 年开发。它不仅可以存储视频和音频,还可以存储图像和文本。几乎所有设备、网站和社交媒体平台都支持该格式。它以低存储容量提供高质量。

5、只要明白mpeg4是一系列编码的名字,而mp4只是文件后缀名,这样就不会搞错了。

6、视频编码方式

1,H.26X系列 (由ITU[国际电传视讯联盟]主导)包括H.261、H.262、H.263、H.264、H.265。

1) H.261:主要在老的视频会议和视频电话产品中使用。

2) H.263:主要用在视频会议、视频电话和网络视频上。

3) H.264:H.264/MPEG-4第十部分,或称AVC(Advanced Video Coding,高级视频编码),是一种视频压缩标准,一种被广泛使用的高精度视频的录制、压缩和发布格式。

4) H.265:高效率视频编码(High Efficiency Video Coding,简称HEVC)是一种视频压缩标准,H.264/MPEG-4 AVC的继任者。HEVC被认为不仅提升图像质量,同时也能达到     H.264/MPEG-4 AVC两倍之压缩率(等同于同样画面质量下比特率减少了50%),可支持4K分辨率甚至到超高画质电视,最高分辨率可达到8192×4320(8K分辨率),这是目前发展的趋势。直至2013年,Potplayer添加了对于H.265视频的解码,尚未有大众化编码软件出现。

2,MPEG系列(由ISO[国际标准组织机构]下属的MPEG[运动图象专家组]开发 )视频编码方面主要有:

1) MPEG-1第二部分(MPEG-1第二部分主要使用在VCD上,有些在线视频也使用这种格式。该编解码器的质量大致上和原有的VHS录像带相当。)

2) MPEG-2第二部分(MPEG-2第二部分等同于H.262,使用在DVD、SVCD和大多数数字视频广播系统和有线分布系统(cable distribution systems)中。)

3) MPEG-4第二部分(MPEG-4第二部分标准可以使用在网络传输、广播和媒体存储上。比起MPEG-2和第一版的H.263,它的压缩性能有所提高。)

4) MPEG-4第十部分(MPEG-4第十部分技术上和ITU-T H.264是相同的标准,有时候也被叫做“AVC”)最后这两个编码组织合作,诞生了H.264/AVC标准。ITU-T给这个标准命名为   H.264,而ISO/IEC称它为MPEG-4 高级视频编码(Advanced Video Coding,AVC)。

3,其他系列:AMV · AVS · Bink · CineForm · Cinepak · Dirac · DV · Indeo · Video · Pixlet · RealVideo · RTVideo · SheerVideo · Smacker · Sorenson Video · Theora · VC-1 · VP3 · VP6 · VP7 · VP8 · VP9 · WMV。

VP8是google定义并开源的视频编解码标准和编解码库实现。

Google 收购了On2 Technologies,之后Google开放了其拥有的VP8视频编码技术源代码并免费提供给所有开发者使用,发布
WebM 开放网络媒体项目

VP8号称比H264编码性能更好,实际上没那么夸张,差不多相当于ffmpeg内置默认的openh264编解码库。VP8的压缩实现与H264有点区别就是VP8没有B帧,而H264有B帧。

VP8的优点是开源,没有H264/H265的专利版权风险,可以随便用,除了IE9以下版本的浏览器外,现代浏览器都支持VP8视频编码,当然也支持webm视频格式。

VP9也是google开源的用与比拼H265(HEVC)的编解码器,可以看出google真的很努力的在开源,这种开源的视频编码应该多一些,百花齐放才能促进音视频技术升级。
兼容性方面,除了IE9以下版本的浏览器外,现代浏览器都支持VP9视频编码,当然也支持webm视频格式。

ffmpeg转码常用容器、编码格式与解编码器的搭配总结,-c与-f参数的运用

特别提一点,mkv是个万能的容器格式,下面说的所有编码格式,mkv几乎都能“装”,就不再列出了。

视频编码格式:

h264(又称mpeg-4 avc、mpeg-4 part 10):mp4、flv、avi、mov、wmv、m4v、f4v、3gp、ts

mpeg4(不只一种,这里指mpeg-4 part 2、divx、xvid):mp4、avi、mov、wmv、m4v、3gp、ts

h265(又称hevc、mpeg-h part 2):mp4、avi、mov、ts

vp8:avi、wmv、ts、webm

vp9:mp4、avi、wmv、ts、webm

音频编码格式:(【】左边是视频容器格式,【】右边是音频容器格式,*和^后面再说明)

aac:mp4、flv、avi、mov、wmv、3gp、m4v、f4v、ts【】aac、m4a、wma、ac3

mp3:mp4、avi、mov、wmv、f4v、ts【】mp3、wma、ac3

ac-3:mp4、avi*、mov、wmv、m4v、ts【】ac3、m4a、wma

flac:mp4*、avi*、wmv、ts【】flac、m4a、wma、ac3^

vorbis:mp4、avi*、mov、wmv、ts、webm【】ogg、wma、ac3^

opus:mp4*、ts、webm【】ogg、ac3^

libx264编码器,编码比较慢,清晰度高,处理后的文件比较小-preset 编码速度 默认值: medium 当编码器指定为libx264时可以指定该参数, 编码速度越慢,清晰度越高,处理后的文件大小相同 可选值: ultrafast、superfast、veryfast、 from ffmpy3 import FFmpeg ff = FFmpeg (inputs={r'C:\Users\ht-desktop-001\Desktop\1. mp4 ': None}, outputs={r'C:\Users\ht-desktop-001\Desktop\1.avi': Non AVIOContext,URLProtocol,URLContext主要存储视音频使用的协议的类型以及状态。在这个结构体中,除了一些回调函数接口之外,有一个变量const char *name,该变量存储了协议的名称。下列代码显示了获取元数据并存入meta字符串变量的过程,注意每一条key和value之间有一个"\t:",value之后有一个"\r\n"注意,这个结构体并不在 FFMPEG 提供的头文件中,而是在 FFMPEG 的源代码中。URLContext:每种协议,有一个协议操作对象和一个关联的协议对象。 Mpeg 4解码流程 Mpeg 4文件(包括avi视频文件以及mp3音频文件)解码过程由如下3个函数实现.• MPEG 4_initial()    :    解码初始化。包括打开文件,设置有关硬件参数(如codec,Dma等),解码参数初始化(如帧数统计,波特率设置,解码 目前又开始测 MPEG 1和 MPEG 2的解码,在准备编码好的测试序列过程中,需要通过编码器来进行原始视频序列的编码操作,以生成我们需要的测试数据。由于IPP example提供的Encoder不支持 MPEG 1,经过查询,决定 MPEG 1的编码使用 FFMPEG 。FFMEPG是个啥子东西呢,这里简单说一下: FFmpeg 是用于录制、转换和流化音频和... MPEG 4是网络视频图像压缩标准,它包含的标准从ISO-IEC-14496-1 到 ISO-IEC-14496-10 2. MPEG 4中规定了两种视频压缩方法,一种在ISO-IEC-14496-2里面描述,一种在ISO-IEC-14496-10里面描述。其中ISO-IEC-14496-10的算法就是我们熟知的H.264 3. 在这两种压缩算法中,H.264的性能更好一些 视频编码新标准H.264 windows系统 64位 下载链接:https://github.com/BtbN/ FFmpeg -Bu # ffmpeg -codecs built with gcc 4.9.2 (Debian 4.9.2-10+deb8u2) configuration: --enable-libx265 --enable-libx264 --enable-gpl libavutil 57 http://www.roarsoft.net/a/Media/Codec/201009/10193.html #include  #include  #include  #include  #include  #include  #include   main(int argc,char **argv) {      const char *input_file_name="/root/movi Ffmpeg 是一款功能强大的视频处理工具,那么 转码 肯定不是问题的,因为项目的需求,对 转码 进行了研究。刚开始首先去看了 ffmpeg 源代码中的一个例子transcode.c,但是发现该例子更应该称之为remux的一个例子,并没有具体的涉及到 转码 。所以转而去 ffmpeg 工具中寻求帮助了。 ffmpeg 转码 流程: 1、运用海康的视频,其视频 格式 MPEG -PS 格式 ,导致谷歌浏览器无法直接播放,不支持该 格式 ; 2、视频 格式 应该是 MPEG -PS 格式 ,但是后缀却是 mp4 ,其实是一个非法的 MP4 ; 处理方法: 1、运用 ffmpeg 进行转换(该转换不 转码 ,直接复制流),转换的命令: ffmpeg -i demo. mp4 -c copy -an demp_enc. mp4 2、速度很快,使用-an参数屏蔽掉音频流,将封装 格式 转为 mp4 。 前置工作: 1、安装 ffmpeg 2、将 ffmpeg 配置到环境变量, 1、视频编码 ffmpeg -s 352*288 -pix_fmt yuv420p -i bus_cif.yuv -vcodec mpeg 4 bus_cif.avi//avi ffmpeg -s 352*288 -pix_fmt yuv420p -i bus_cif.yuv -vcodec mpeg 2video bus_cif.VOB//dvd ffmpeg -s 352*288 -pix_