视频转码成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"问题的更多相关文章

  1. UEFI+GPT模式下的Windows系统中分区结构和默认分区大小及硬盘整数分区研究

    内容摘要:本文主要讨论和分析在UEFI+GPT模式下的Windows系统(主要是最新的Win10X64)中默认的分区结构和默认的分区大小,硬盘整数分区.4K对齐.起始扇区.恢复分区.ESP分区.MSR ...

  2. 在Windows系统中安装集成的PHP开发环境

    原文:在Windows系统中安装集成的PHP开发环境 刚想学php的,又不会配置复杂php的环境,可以使用集成的,目前网上提供常用的PHP集成环境主要有AppServ.phpStudy.WAMP和XA ...

  3. 关于Linux系统和Windows系统中文件夹的命名规范

    Windows系统中. 1.在创建文件夹的时候不能以"."开头(但是文件以多个点开头并且还有其他合法字符的话就是合法的) 但是在windows系统中确实见过以一个点".& ...

  4. mysql绿色版在windows系统中的启动

    mysql绿色版在windows系统中的启动 1.下载mysql免安装版 例如:mysql-5.7.11-winx64 2.修改配置文件,my-default.ini名称改为:my.ini,文件里面的 ...

  5. 获取Windows系统中的所有可用和在用串口

    目的:获取Windows系统中的所有可用和在用串口 方法:注册表查询法 优点:简单.实用.快速.无遗漏,无多余结果. 说明:另外还有8种方法可以枚举串口,但都不如此法. 代码和详细注释如下: //-- ...

  6. Windows系统中设置Python程序定时运行方法

    Windows系统中设置Python程序定时运行方法 一.环境 win7 + Python3.6 二.步骤 1,在Windows开始菜单中搜索“计划任务”,并且点击打开“计划任务”: 2.点击“创建基 ...

  7. 【其他】【服务器】【4】删除Windows系统中不想要的服务

    步骤: 1,开始菜单栏查找“服务”,打开后找到想要删除的服务 2,右键单击想要删除的服务,选择“属性”-“常规”-“服务名称”,记下服务名称(AA) 3,开始菜单栏输入“cmd”打开命令行窗口,输入s ...

  8. Cmder命令行工具在Windows系统中的配置

    一.Cmder简介 Cmder:一款用于Windows系统中,可增强传统cmd命令行工具的控制台模拟器(类似于Linux系统中的终端控制窗口) 特点: 无需安装,解压即用 可使用较多Linux命令,如 ...

  9. python - 在Windows系统中安装Pygame及导入Eclipse

    环境:python3.6(只有一个版本)+ windows10(64 bit)  + Eclipse+pydev python3.6安装完成后,会自带 easy_install 和 pip3,在Win ...

随机推荐

  1. 并发之AQS

    一.概述 谈到并发,不得不谈ReentrantLock:而谈到ReentrantLock,不得不谈AbstractQueuedSynchronizer(AQS)! 类如其名,抽象的队列式的同步器,AQ ...

  2. jQuery效果之简单的手风琴效果

    实现效果如图所示: html结构: <div class="item_box box10"> <div class="item_box_wp" ...

  3. Linux swappiness参数设置与内存交换

    swappiness参数设置与内存交换 by:授客 QQ:1033553122 简介 swappiness,Linux内核参数,控制换出运行时内存的相对权重.swappiness参数值可设置范围在0到 ...

  4. 【LeetCode】正则表达式匹配(动态规划)

    题目描述 给定一个字符串 (s) 和一个字符模式 (p).实现支持 '.' 和 '*' 的正则表达式匹配. '.' 匹配任意单个字符. '*' 匹配零个或多个前面的元素. 匹配应该覆盖整个字符串 (s ...

  5. (网页)JavaScript周末总结(一)

    本周学习的内容总结: 1. 2章在html中使用javascript. 2. 3章Javascript的基本概念. 3. 4章变量,作用域,内存问题. 1-1:2章以下内容: 1.包含javascri ...

  6. Fiddler做代理服务器时添加X-Forwarder-For转发真实客户端ip

    修改CustomRules.js 菜单: Rules->Customize Rules (ctrl+R) 在 static function OnBeforeRequest(oSession: ...

  7. javascript的隐式类型转换

    首先简单了解js的typeof,会返回六种类型 即 number string boolen function object undefined 也就是六种基本数据类型 显示类型转换大概有以下几种: ...

  8. Mac上一条命令搭建web服务器

    实际测试工作中偶尔会需要搭建Web服务器环境,由于Mac OS X自带了Apache和PHP环境,只需要简单的启动就可以. 开启Apache 开启Web服务器的方法有两种(默认启动端口号是80): 打 ...

  9. ERP按序打印问题

    按序打印只适合一个机器,不适合主副机模式,主副机模式请勾选同时打印 如果开启主副机模式勾选了按序打印,会造成副机下厨后厨不出单

  10. MySQL多表更新的一个坑

    简述 MySQL支持update t1,t2 set t1.a=2;这种语法,别的关系数据库例如oracle和sql server都不支持.这种语法有时候写起来挺方便,但他有一个坑. 测试脚本 dro ...