有一件有趣的事情发生了!当我尝试播放如下视频时:
<div class='vcontainer' id='vc'>
<video id="match" width="700" controls>
<source src='tsk1.mp4' type="video/mp4">
Your browser does not support HTML5 video.
</video>
</div>
我只能听到它并且没有视频。它的框架高度为576
,框架宽度为720
。但我能够播放另一个视频(通常),帧高为320
,帧宽为568
。这可能是什么原因?
注意:作为参考,我还uploaded the video file导致了问题
答案 0 :(得分:1)
您的视频可能位于评论中所说的不受支持的编解码器中。 通过说编解码器,它不是容器格式(mp4)。
容器格式是将多个轨道(音频或视频)与一些额外信息(如元数据)组合到一个文件或流中的格式。
目前大多数浏览器都支持mp4格式的视频,使用基线H.264作为图像编解码器,使用arc / mp3作为音频编解码器。
检查您的视频编解码器是否为H.264。您的浏览器可以播放声音,证明您获得了正确的音频编解码器,但也许您正在使用一些不受支持的视频编解码器。
即使您的视频是H.264,您仍可能遇到问题。 AFAIK,Chrome仅支持yuv420p像素格式,而safari也支持yuvj420p。 H.264的版本也可能引起问题,使用基线将是一个不错的选择。
使视频正常工作的唯一方法是将其转码为浏览器兼容格式(大多数视频托管网站都会为您执行此操作)。您可以使用以下命令使用FFmpeg执行此操作。
ffmpeg -i <Your video path here> -c:v libx264 -c:a aac -strict -2 -pix_format yuv420p -profile:v baseline -preset:v fast <Output video path here>