一波三折之无源码解决网站上传不了视频的问题(二)
warning:
这篇文章距离上次修改已过515天,其中的内容可能已经有所变动。
一波三折之无源码解决网站上传不了视频的问题(二)
上回( https://www.qipanet.com/itClass/253.html)提到有点手尾没解决,这次把它说完。
一、现象
文件上传解决完交付后又收到反馈,上传的视频播放不了,之前有部分视频也没法播放。具体表现为上传的视频在浏览器里播放时黑屏,只有播放进度条,没有画面和声音。
二、排查
上传成功,那应该跟后端没什么关系了,因为播放主要由客户端负责。而且部分视频能播放,那说明项目网站功能应该问题不大。为了印证猜想,换了个手机浏览器打开(此前PC端用的是chrome),发现播放正常。说明应该是浏览器兼容性问题。但chrome浏览器不应该连个mp4格式的视频都播放不了吧,难道是视频编码的问题?
带着这个猜想,百度了一下,发现chrome还真的只支持h264格式的编码,但我怎么确认上传的视频是否为h264编码呢?
三、准备工具
查看视频编码格式的方法有很多工具,这里用到了ffmpeg,下载地址:https://ffmpeg.org/download.html#build-windows 按图中显示点进去。根据需要选择适合自己系统的发行版,我这里用提ffmpeg-master-latest-win64-gpl.zip。
解压后可以看到bin文件夹里有三个exe文件,我们主要用到其中两个。
四、解决
- 首先要查看原来的视频编码。
ffmpeg.exe -i d:\xxx.mp4
这里有个小坑,看百度别人查到的格式会比较明显的输出h264或h265的,我这里什么都没显示,鬼知道是啥格式。
- 转换格式
由于看不到原视频编码格式,只好决定先将现有视频转为h246的。ffmpeg.exe -i 源路径.mp4 -vcodec h264 目标路径.mp4
转换后的格式
查看转换后的格式,终于能显示h246了,将转换后的视频上传,正常播放,收工!
评论已关闭