欢迎各位兄弟 发布技术文章

这里的技术是共享的

You are here

视频要等加载完才能播放,而不是边加载边播放 标准 mp4 转换 有大用 有大大用

shiping1 的头像

这是因为视频的元数据信息不在第一帧所致。

元数据是指保存视频属性的一组参数,比如视频的宽度,高度,时间长,总字节,关键帧等信息。

因为网页上的视频播放器播放视频是以流的形式加载(即没办法直接加载视频结尾的数据,只能从前向后加载),所以播放器必需要读取到元数据信息才可以进行播放。具体的解析办法可参考:视频处理

来自 http://www.ckplayer.com/tool/help/64.htm

 

视频转码,转换成mp4格式并把元数据信息放在第一帧

作者测试是在windows下使用,所以下载的页面地址是: http://ffmpeg.zeranoe.com/builds/
点击页面上的Download FFmpeg git-738ebb4 64-bit Static(我是64位的),如果你是32位点击 Download FFmpeg git-738ebb4 32-bit Static
下载下来解压缩后我把文件夹改成了ffmpeg放在D盘下面
运行三个文件:
D:ffmpeg/bin/ffmpeg.exe
D:ffmpeg/bin/ffplay.exe
D:ffmpeg/bin/ffprobe.exe
这就成功安装了


下面举二个简单的例子
首先,搞一个视频文件放在D盘根目录下,主要为了省事,比如我放的是:D:/1.flv
在开始->运行里输入cmd,弹出命令窗口
按下面的命令进行操作
输入d:按回车
输入 cd ffmpeg/bin回车
这样就进入了ffmpeg的目录了,
1:测试视频截图的功能
复制如下命令,在命令行里点击鼠标右键选择粘贴
ffmpeg -i d:/1.flv -y -f  image2 -t 0.001 -s 720x576 d:/1.jpg
看看D盘下是不是生成了一个1.jpg的图片,是的话就成功了,不是你就认真检查下吧,看看路径是不是正确
2:测试d:/1.flv转成d:/1.mp4
同样,复制下面的命令,在命令窗口里点击鼠标右键选择粘贴
ffmpeg.exe -threads 4 -i d:/1.flv -ab 32 -ar 22050 -vcodec libx264 -qscale 6 -r 25 -s 480x360 -flags +loop -crf 24 -bt 256k -vol 200  -keyint_min 6 -vf yadif d:/1.mp4

等命令执行完成后看看D盘下是不是有个mp4了,有了就说明成功了。


下一步:把元数据信息转到视频第一帧,需要下载一个qt-faststart
下载地址:http://www.ckplayer.com/down/qt-faststart.rar
下载下来解压得到qt-faststart.exe放到d:ffmpeg/bin/下面
运行命令:qt-faststart.exe d:/1.mp4 d:/2.mp4
最后出来的这个2.mp4就是成功的了。可以边下载边播放
关于详细的参数设置,请自行网上搜索了解或者看使用说明

来自  http://www.ckplayer.com/tool/help/71.htm


 

普通分类: