Windows系统中ckplayer视频边下边放,视频转码mp4及"last atom in file was not a moov atom"问题

Posted xuan52rock

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Windows系统中ckplayer视频边下边放,视频转码mp4及"last atom in file was not a moov atom"问题相关的知识,希望对你有一定的参考价值。

视频转码成mp4格式并添加关键帧:

1.先下载与自己操作系统相对应的的FFmpeg软件。官网传送门:http://ffmpeg.zeranoe.com/builds/

下载static版的就可以,zip包解压即可使用。

2.cd到 ffmpeg下的bin目录

3.

(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 -i "d:1.flv" -y  -metadata title="这是视频标题"  -metadata comment="这是视频信息!"   -c:v libx264  -preset superfast -x264opts keyint=25  -r 15 -b:v 500k -c:a aac -strict experimental -ar 44100 -ac 2  -b:a 64k -vf  "movie=a.png[watermark];scale=1364x768[scale];[scale][watermark] overlay=30:30[out]" -f  mp4 "d:2.mp4"

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

 

参数说明:

movie=是水印(如果不需要水印可以自己找一张透明的1像素的png图并命名为a.png,放在FFmpeg的bin目录下)
-b:v 后的500k是码率(这个需要按照待转码的原视频码率设置)
scale=后是分辩率(这个需要按照待转码的原视频码率设置)
keyint=25 是关键帧 表示每25帧会有一个关键帧(大都视频都是这个参数,默认不需要改)

说明:在cmd中bin目录下运行上述目录会报错,说找不到a.png这个目录或文件,打开一看确实在解压的FFmpeg的bin目录下没有a.png这个文件。这个文件需要自己制作,你可以制作自己的log图或者公司的log命名为a.png放在bin目录下。如果,不想要a.png这个水印图,我尝试过改上述命令比如去掉movie、a.png等等都失败了。有兴趣的朋友自己去研究FFmpeg的源码,自己尝试。后来只能在a.png上下手了,把它制作成透明的、分辨率为1x1的图片就不影响视频的观赏了。你可以自己用PS制作。

送给伸手党:

技术分享图片

仔细用鼠标选中找找,上一行就是小到看不见的1分辨率的a.png图片,透明的。

 

如果视频还是不能边下边放,可能是你的视频只是元数据信息不在第一帧,下面介绍另一种mp4把元数据信息转到视频第一帧

添加元数据,把元数据放在第一帧:

1.首先需要下载一个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就是成功的了。可以边下载边播放
关于详细的参数设置,请自行网上搜索了解或者看使用说明

2.如果报错“last atom in file was not a moov atom”

则先运行命令

ffmpeg -i souce_file.mp4 -acodec copy -vcodec copy target_file_1.mp4

再运行qt-faststart.exe d:/1.mp4 d:/2.mp4

参考:http://www.ckplayer.com/tool/help/71.htm

http://cache.baiducontent.com/c?m=9d78d513d99d12ee1efa940f5e508a390e54f13860c0d0642b8fcd1f84642a041427f4bb567e4d42c4c50d3416af3803b7ad7265377273f1c6979c0d9de59d7269ce6523716f9b5c57965cb8cb312ec260875a9ef34ea1a7a373cab3d1d4d95251cf52016d8087d11c5f4a&p=ce77831f86cc42ae5ab8cf2d021483&newp=aa769a47c7d559e842bd9b7d0c148a231610db2151d7d4146b82c825d7331b001c3bbfb423241307d0c07e6c06ad4e57ecf43d71350621a3dda5c91d9fb4c5747999312c3706&user=baidu&fm=sc&query=last+atom+in+file+was+not+a+moov+atom&qid=af787cb000008ba4&p1=8

 (此url地址比较长,一行显示不下,为了避免复制不全,请复制到本行开头)

from:https://blog.csdn.net/superit401/article/details/70870961?locationNum=13&fps=1













以上是关于Windows系统中ckplayer视频边下边放,视频转码mp4及"last atom in file was not a moov atom"问题的主要内容,如果未能解决你的问题,请参考以下文章

仿微博视频边下边播之封装播放器

iOS视频边下边播--缓存播放数据流

牛腩视频播放管理系统

小米手机看在线视频显示ckplayer怎么办,谢谢

ckplayer.js视频播放插件

java servlet 返回静态资源,静态资源可以边下边播,而通过servlet返回的视频一定要下载完成后才能播放。