视频转码成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. CSS用法总结(持续更新)

    一.html,body{height:100%} 解决了容器高度不足(容器高度由子元素高度决定,而%按照父元素的百分比),无法用%布局页面的问题 把html和body的高度设置为浏览器高度,此时会出现 ...

  2. 【20190226】JavaScript-知识点记录:dom0级事件,dom2级事件

    DOM0级事件处理程序: 通过将元素的事件处理程序属性(如onclick)的值设置为一个函数来指定事件处理程序的方法称为DOM0级方法,它被认为是元素的方法,这时候的事件处理程序是在元素的作用域中运行 ...

  3. leetcode-66.加一

    leetcode-66.加一 题意 给定一个由整数组成的非空数组所表示的非负整数,在该数的基础上加一. 最高位数字存放在数组的首位, 数组中每个元素只存储一个数字. 你可以假设除了整数 0 之外,这个 ...

  4. git 入门教程之知识速查

    知识速查 创建版本库 初始化项目 git init 从零开始创建项目 示例 git init 克隆项目 git clone 将已有项目拷贝到本地 示例 git clone git@github.com ...

  5. 被遗弃的depends2.2,替换解决方案——VS命令行

    vs的早期版本提供了depends工具,最新版本是2.2,已经不再更新了,网站是dependencywalker.com. 现在,我们可以使用vs开发人员命令行,dumpbin工具,导出二进制文件的信 ...

  6. php json_encode中提示的中文总是返回"\u767b\u5f55\u6210\u529f\uff01"的解决办法

    最近在练习使用 php 写一些简单的接口,但是在返回的消息中,如果有中文,在测试后总是返回: {"resultCode":200,"message":" ...

  7. MySQL 安装及卸载详细教程

    本文采用最新版MySQL8版本作为安装教程演示,本人亲试过程,准确无误.可供读者参考. 下载 官网下载 --> 社区免费服务版下载. 下载Windows安装程序MySQL Installer M ...

  8. ssh-keygen的学习总结

    ssh-keygen介绍   维基百科上关于ssh-keygen的介绍如下:     ssh-keygen is a standard component of the Secure Shell (S ...

  9. 洗礼灵魂,修炼python(72)--爬虫篇—爬虫框架:Scrapy

    题外话: 前面学了那么多,相信你已经对python很了解了,对爬虫也很有见解了,然后本来的计划是这样的:(请忽略编号和日期,这个是不定数,我在更博会随时改的) 上面截图的是我的草稿 然后当我开始写博文 ...

  10. EOS之记事本智能合约

    EOS记事本智能合约 本次分享的内容是一个记事本合约,调用合约中的写入动作可以将文本和作者保存到数据库中,通过记事本合约来学习EOS智能合约数据存储当中的主键自增. 合约动作 写入动作 记事本合约必须 ...