ffmpeg命令

FFmpeg编译:mac下编译iOS平台的FFmpeg库(支持armv7, arm64, i386, x86_64)

断了今生、忘了曾经 提交于 2019-12-02 03:54:37
环境: FFmpeg 3.4.6 Xcode 10.3 macOS 10.14.6 一.准备工作 1. 下载FFmpeg 我这里使用的是3.4.6版本的FFmpeg,可以从FFmpeg官网下载最新( http://www.ffmpeg.org )或者历史版本( http://www.ffmpeg.org/releases/ )的FFmpeg。 2. 下载最新的gas-preprocessor.pl 由这里( https://github.com/libav/gas-preprocessor )下载最新的gas-preprocessor.pl,下载完毕后将gas-preprocessor.pl拷贝到/usr/local/bin目录下, 并且修改权限使其可执行。 // 跳转到该目录 cd /usr/local/bin // 修改访问权限 chmod 777 gas-preprocessor.pl 3. 检查mac是否已安装Command Line Tools 具体请参见: https://www.cnblogs.com/yongdaimi/p/11723573.html 4. 下载编译脚本 从 https://github.com/kewlbear/FFmpeg-iOS-build-script 这里下载iOS版本的编译脚本。 二. 准备编译 1. 将下载下来的FFmpeg3.4

ffmpeg生成视频封面图

拥有回忆 提交于 2019-12-02 02:33:55
ffmpeg 是一个视频处理软件 php-ffmpeg 是一个让 php 可以操作 ffmpeg 的 php插件,封装好了各种操作命令。直接调用对应的方法即可。 使用过程很曲折也很简单 曲折在于一直想使用php-ffmpeg插件,各种尝试,最后失败,可能是该插件暂不支持php7.1 很简单在于放弃php-ffmpeg后,使用ffmpeg的原生命令,只需一条命令即可生成缩略图。 下载安装ffmpeg,配置环境变量,即通过 ffmpeg -v 即可调用ffmpeg(如不配置,需要加上绝对路径) - 使用过程只需一条命令,几个参数即可 /** * 获取视频封面图片,与视频在相同文件夹下 * @param string $inFile 视频文件地址 * @param int $time 截图的秒数 * @param int $width 图片宽度 * @param int $height 图片高度 * @return string * User: LiZheng 271648298@qq.com * Date: 2019/10/12 */ public function getVideoCover($inFile, $time = 1, $width = 320, $height = 240) { //输出文件名 $outFileName = substr($inFile, 0,

h5播放rtsp流

余生颓废 提交于 2019-12-01 13:04:13
最近由于项目上需要一个摄像头在线预览的功能,于是便琢磨了一个小玩意出来分享分享。项目是在win上,合作的人懂js,基于这样的情况,我只选择nodejs作为开发。并未使用php相关。 一开始做这个,我并不感到陌生,因为我以前使用过开源的解码器FFmpeg,所以我知道使用它就可以实现摄像头的rtsp流转hls,只要转成hls了,我就可以使用开源的video-js-control-hls来播放m3u8文件了,而且我司用了海康的软件产品,它们就是开放接口,通过请求接口获取在线播放文件。思路是很清晰的,那我有了这样的思路,并开始在npmjs.com里面找轮子 经过一番的查找,最后我选定了几个轮子。首先是fluent-ffmpeg这个操作ffmpeg的中间件,然后就是hls-server这个http服务,它过滤所有和hls无法的资源,只保留.m3u8和.ts资源。那这样的话,轮子有了,那下面就是去熟悉一下理论知识(音视频转码、ffmpeg等) 浏览了大概的理论知识后,那再接着就是细节的优化了。细节问题我在做之前发了一个思否的提问(链接: 做一个海康摄像头转hls然后使用h5方式播放的细节问题 ),心寒的是,平名无法被人看到,知识就是力量,力量不够就有问题,所以我开始自己的琢磨(基本上那几天晚上都在想)。 琢磨了几天后,我找到了几个关键点: 什么时候开始转码

CentOs7安装FFmpeg

这一生的挚爱 提交于 2019-12-01 07:59:44
一、FFmpeg简介 FFmpeg 是一个自由软件,可以运行音频和视频多种格式的录影、转换、流功能,包含了libavcodec ─这是一个用于多个项目中音频和视频的解码器库,以及libavformat——一个音频与视频格式转换库 "FFmpeg"这个单词中的"FF"指的是"Fast Forward"。有些新手写信给"FFmpeg"的项目负责人,询问FF是不是代表“Fast Free”或者“Fast Fourier”等意思,"FFmpeg"的项目负责人回信说“Just for the record, the original meaning of "FF" in FFmpeg is "Fast Forward"...” FFmpeg在Linux平台下开发,但它同样也可以在其它操作系统环境中编译运行,包括Windows、Mac OS X等。这个项目最初是由Fabrice Bellard发起的,而现在是由Michael Niedermayer在进行维护。许多FFmpeg的开发者同时也是MPlayer项目的成员,FFmpeg在MPlayer项目中是被设计为服务器版本进行开发。 2011年3月13日,FFmpeg部分开发人士决定另组libav,网址http://libav.org,同时制定了一套关于项目继续发展和维护的规则。 组成组件 此计划由几个组件组成: ffmpeg 是一个命令行工具

视频抽帧那点事

假如想象 提交于 2019-12-01 05:36:26
视频文件是多媒体数据中比较常见的一种,也是入门门槛比较高的一个领域。视频数据相关的领域任务包括视频物体检测、视频物体追踪、视频分类、视频检索和视频摘要抽取等。 视频数据与图像数据非常类似,都是由像素点组成的数据。在视频数据在非音频部分基本上可以视为多帧(张)图像数据的拼接,即三维图像的组合。由于视频数据与图像数据的相似性,在上述列举的视频领域任务中大都可以借助图像方法来完成。 文本将讲解视频抽帧的几种方法,具体包括以下几种抽帧方式: 抽取视频关键帧(IPB帧) 抽取视频场景转换帧 按照时间进行均匀抽帧 抽取制定时间的视频帧 在进行讲解具体的抽帧方式之前,我不得不介绍下FFmpeg。FFmpeg是一套可以用来编码、解码、合成和转换音频和视频数据的开源软件,提供了非常全面的音视频处理功能。如果你的工作内容是视频相关,那么ffmpeg是必须要掌握的软件了。FFmpeg提供了常见音视频和编解码方式,能够对众多的音视频格式进行读取,基本上所有的软件都会借助FFmpeg来完成音视频的读取操作。 FFmpeg的学习资料可以参考: http:// ffmpeg.org/documentatio n.html https:// blog.csdn.net/leixiaohu a1020/article/details/15811977 # 查看视频信息 > ffmpeg -i 666051400

ffmpeg常用基本命令(转)

吃可爱长大的小学妹 提交于 2019-12-01 04:19:59
ffmpeg常用基本命令(转) 【FFmpeg】FFmpeg常用基本命令 1.分离视频音频流 ffmpeg -i input_file -vcodec copy -an output_file_video  //分离视频流 ffmpeg -i input_file -acodec copy -vn output_file_audio  //分离音频流 2.视频解复用 ffmpeg –i test.mp4 –vcodec copy –an –f m4v test.264ffmpeg –i test.avi –vcodec copy –an –f m4v test.264 3.视频转码 ffmpeg –i test.mp4 –vcodec h264 –s 352*278 –an –f m4v test.264 //转码为码流原始文件 ffmpeg –i test.mp4 –vcodec h264 –bf 0 –g 25 –s 352*278 –an –f m4v test.264 //转码为码流原始文件 ffmpeg –i test.avi -vcodec mpeg4 –vtag xvid –qsame test_xvid.avi //转码为封装文件//-bf B帧数目控制,-g 关键帧间隔控制,-s 分辨率控制 4.视频封装 ffmpeg –i video_file –i audio

ffmpeg 转码并截图的命令分析

匆匆过客 提交于 2019-11-30 20:55:57
一、转码并截图的命令分析: 1、转码并截图,将码率转换为900K ffmpeg -i E:\\1.MOV -i E:\\123.jpg -filter_complex overlay=W-w -b:v 900k E:\\UPUPW_AP5.3\vhosts\www.wnbm110.com\yizhuan\1.mp4 2、转码并截图,将视频宽高转换为320*240 ffmpeg -i E:\\1.MOV -i E:\\123.jpg -filter_complex overlay=W-w -s 320x240 E:\\UPUPW_AP5.3\vhosts\www.wnbm110.com\yizhuan\2.mp4 3、转码并截图,原样转码 ffmpeg -i E:\\1.MOV -i E:\\123.jpg -filter_complex overlay=W-w E:\\UPUPW_AP5.3\vhosts\www.wnbm110.com\yizhuan\4.mp4 来源: https://www.cnblogs.com/phpyangbo/p/11639765.html

高通平台开机LOGO修改LK(bootloader)下实现【转】

夙愿已清 提交于 2019-11-30 10:09:50
网络上已经有许多在kernel中修改开机Logo的文章,本文就LK下实现开机logo进行简述 需要用到ffmpeg工具,没有安装ffmpeg请参考这里: http://blog.csdn.net/redstarofsleep/article/details/45092145 运行"ffmpeg -i logo.png -f rawvideo -pix_fmt bgr24 logo.raw"命令,得到.raw文件 运行"xxd -i logo.raw > logo.h"命令,得到.h头文件。 复制logo.h中的数组,替换bootable\bootloader\lk\platform\msm_shared\include\Splash.h中相应的imageBuffer_rgb888[]数组; 注意:splash.h文件中,有imageBuffer[]和imageBuffer_rgb888[] 两个数组。利用一个预编译进行判断 #if (!DISPLAY_TYPE_MIPI) 根据自己的实际情况修改对应的数组 修改宏的值: #define SPLASH_IMAGE_WIDTH 124 #define SPLASH_IMAGE_HEIGHT 113 SPLASH_IMAGE_WIDTH 对应logo.png的高度 SPLASH_IMAGE_HEIGHT 对应logo.png的宽度

srs 使用 ffmpeg 转码

寵の児 提交于 2019-11-30 05:36:54
前面搭建完毕后,在进行转码(清晰度转换)的时候发现 ffmpeg 非常占cpu,服务器一直处于高负载状态。 centos7 top查看进程状态 如图所示采取软解码cpu要求太高,所以我们考虑将转码任务分担到 gpu 硬件解码(效率提高的同时解少cpu负载) 原文地址: https://www.jianshu.com/p/59da3d350488 由于我的服务器没有显卡没有进行测试 本文内容包括: 在Linux环境下安装FFmpeg 通过命令行实现视频格式识别和转码 有Nvidia显卡的情况下,在Linux下使用GPU进行视频转码加速的方法 FFmpeg编译安装 在FFmpeg官网 https://ffmpeg.org/download.html 可以下载到ubunto/debian的发行包,其他Linux发行版需自行编译。同时,如果要使用GPU进行硬件加速的话,也是必须自己编译FFmpeg的,所以本节将介绍从源码编译安装FFmpeg的方法(基于RHEL/Centos) 安装依赖工具 yum install autoconf automake bzip2 cmake freetype-devel gcc gcc-c++ git libtool make mercurial pkgconfig zlib-devel 准备工作 在$HOME下创建ffmpeg_sources目录

ffmpeg在windows下视频采集

怎甘沉沦 提交于 2019-11-29 22:46:48
ffmpeg视频采集功能非常强大,不仅可以采集视频采集卡或USB摄像头的图像,还可以进行屏幕录制,同时还支持以RTP方式将视频流传送给支持RTSP的流媒体服务器,支持直播应用。 ffmpeg在Linux下的视频采集 在Linux平台上,ffmpeg对V4L2的视频设备提高了很好的支持,如: ./ffmpeg -t 10 -f video4linux2 -s 176*144 -r 8 -i /dev/video0 -vcodec h263 -f rtp rtp://192.168.1.105:5060 > /tmp/ffmpeg.sdp 以上命令表示:采集10秒钟视频,对video4linux2视频设备进行采集,采集QCIF(176*144)的视频,每秒8帧,视频设备为 /dev/video0,视频编码为h263,输出格式为RTP,后面定义了IP地址及端口,将该码流所对应的SDP文件重定向到/tmp /ffmpeg.sdp中,将此SDP文件上传到流媒体服务器就可以实现直播了。 ./ffmpeg -t 10 -f video4linux2 -s 176*144 -r 10 -vpre libx264-hq.ffpreset -i /dev/video0 -vcodec libx264 -f rtp rtp://192.168.1.105:6060 > /tmp/x264.sdp