最近由于项目要部署到客户那里,就在机器上服务器重新部署项目,遇到一个问题,就是网页端播放本地的mp4视频。
出现了如下的画面,就是有时间进度条,但是没有任何画面(原来也是MP4视频,却在别的服务器没有问题?wtf !)
一开始以为录制的视频有问题,后来拖回自己的电脑,用potplayer却可以播放,后来才反应过来是视频编码问题。仔细比对两者的编码格式,用mediaInfo软件
打开两个MP4
可以清楚的看到 虽然都是mp4格式 ,但是一个只有视频流,且是avc编码
H.264,又称为MPEG-4第10部分,高级视频编码(英语:MPEG-4 Part 10, Advanced Video Coding,缩写为MPEG-4 AVC)是一种面向块,基于运动补偿的视频编码标准 。到2014年,它已经成为高精度视频录制、压缩和发布的最常用格式之一。第一版标准的最终草案于2003年5月完成。
另一个又有视频流 又有音频流,HEVC编码介绍如下
高效率视频编码(High Efficiency Video Coding,简称HEVC),又称为H.265和MPEG-H第2部分,是一种视频压缩标准,获视为是ITU-T H.264/MPEG-4 AVC标准的继任者。2004年开始由ISO/IEC Moving Picture Experts Group(MPEG)和ITU-T Video Coding Experts Group(VCEG)作为ISO/IEC 23008-2 MPEG-H Part 2或称作ITU-T H.265开始制定[1][2][3][4][5]。第一版的HEVC/H.265视频压缩标准在2013年4月13日获接受为国际电信联盟(ITU-T)的正式标准[1][2][6]。HEVC获认为不仅提升影像质量,同时也能达到H.264/MPEG-4 AVC两倍之压缩率(等同于同样画面质量下比特率减少到了50%),可支持4K清晰度甚至到超高清电视(UHDTV),最高清晰度可达到8192×4320(8K清晰度)。
问题找到了就是两者编码不一致,估计浏览器默认支持 更早的H264的,看了眼海康摄像头录像配置,果然,改完 就ok