php利用ffmpeg提取视频中音频与视频画面的方法详解


Posted in PHP onJune 07, 2017

前言

FFmpeg的名称来自MPEG视频编码标准,前面的“FF”代表“Fast Forward”,FFmpeg是一套可以用来记录、转换数字音频、视频,并能将其转化为流的开源计算机程序。可以轻易地实现多种视频格式之间的相互转换。

FFmpeg的用户有Google,Facebook,Youtube,优酷,爱奇艺,土豆等。

组成

       1、libavformat:用于各种音视频封装格式的生成和解析,包括获取解码所需信息以生成解码上下文结构和读取音视频帧等功能,包含demuxers和muxer库;

       2、libavcodec:用于各种类型声音/图像编解码;

       3、libavutil:包含一些公共的工具函数;

       4、libswscale:用于视频场景比例缩放、色彩映射转换;

       5、libpostproc:用于后期效果处理;

       6、ffmpeg:是一个命令行工具,用来对视频文件转换格式,也支持对电视卡实时编码;

       7、ffsever:是一个HTTP多媒体实时广播流服务器,支持时光平移;

       8、ffplay:是一个简单的播放器,使用ffmpeg 库解析和解码,通过SDL显示;

提取视频中音频与视频画面

想要提取视频中的音频信息,首选的技术是ffmpeg,网上的绝大多数ffmpeg使用教程都是:

比如你的文件是 test.mp4

分离视频出来:ffmpeg -i test.mp4 -vcodec copy -an 视频流.avi

分离音频出来:ffmpeg -i test.mp4 -acodec copy -vn 音频流.mp3

用这样的方法,提取视频是没有问题的。但在提取音频时,我遇到了以下错误:

Invalid audio stream. Exactly one MP3 audio stream is required. could not write header for output file #0 (incorrect codec parameters ) invalid argument

其实,简单地提取音视频并不需要这么复杂,只要执行以下两行就行了:

分离视频出来:ffmpeg -i test.mp4 视频流.avi

分离音频出来:ffmpeg -i test.mp4 音频流.mp3

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对三水点靠木的支持。

PHP 相关文章推荐
实时抓取YAHOO股票报价的代码
Oct 09 PHP
php中++i 与 i++ 的区别
Aug 08 PHP
自定义php类(查找/修改)xml文档
Mar 26 PHP
纯PHP生成的一个树叶图片画图例子
Apr 16 PHP
PH P5.2至5.5、5.6的新增功能详解
Jul 14 PHP
PHP魔术引号所带来的安全问题分析
Jul 15 PHP
PHP中empty和isset对于参数结构的判断及empty()和isset()的区别
Nov 15 PHP
ThinkPHP自定义Redis处理SESSION的实现方法
May 16 PHP
Smarty保留变量用法分析
May 23 PHP
PHP实现浏览器格式化显示XML的方法示例
Jan 22 PHP
php实现将数组或对象写入到文件的方法小结【三种方法】
Apr 22 PHP
浅谈PHP中的那些魔术常量
Dec 02 PHP
PHP实现删除多重数组对象属性并重新赋值的方法
Jun 07 #PHP
PHP laravel中的多对多关系实例详解
Jun 07 #PHP
PHP基于正则批量替换Img中src内容实现获取缩略图的功能示例
Jun 07 #PHP
PHP框架laravel的.env文件配置教程
Jun 07 #PHP
理清PHP在Linxu下执行时的文件权限方法
Jun 07 #PHP
Laravel如何友好的修改.env配置文件详解
Jun 07 #PHP
PHP面向对象之事务脚本模式(详解)
Jun 07 #PHP
You might like
php实现ping
2006/10/09 PHP
php IP及IP段进行访问限制的代码
2008/12/17 PHP
php引用计数器进行垃圾收集机制介绍
2012/09/19 PHP
linux下实现定时执行php脚本
2015/02/13 PHP
CodeIgniter配置之autoload.php自动加载用法分析
2016/01/20 PHP
Yii2中Restful API原理实例分析
2016/07/25 PHP
基于PHP的微信公众号的开发流程详解
2020/08/07 PHP
javascript string字符串优化问题
2011/07/31 Javascript
使用jQuery解决IE与FireFox下createElement方法的差异
2013/11/14 Javascript
jQuery进行组件开发完整实例
2015/12/15 Javascript
javascript的正则匹配方法学习
2016/02/24 Javascript
Node.js服务器环境下使用Mock.js拦截AJAX请求的教程
2016/05/23 Javascript
html、css和jquery相结合实现简单的进度条效果实例代码
2016/10/24 Javascript
浅析JS中常用类型转换及运算符表达式
2017/07/23 Javascript
详解为Bootstrap Modal添加拖拽的方法
2018/01/05 Javascript
vue项目搭建以及全家桶的使用详细教程(小结)
2018/12/19 Javascript
gulp构建小程序的方法步骤
2019/05/31 Javascript
js实现整体缩放页面适配移动端
2020/03/31 Javascript
Python彩色化Linux的命令行终端界面的代码实例分享
2016/07/02 Python
Python实现计算两个时间之间相差天数的方法
2017/05/10 Python
Python实现对一个函数应用多个装饰器的方法示例
2018/02/09 Python
对python中的控制条件、循环和跳出详解
2019/06/24 Python
python实现密码强度校验
2020/03/18 Python
python3实现飞机大战
2020/11/29 Python
浅谈html5标签css3的常用样式
2016/10/20 HTML / CSS
机电专业个人自荐信格式模板
2013/09/23 职场文书
职称自我鉴定
2013/10/15 职场文书
事业单位请假制度
2014/01/13 职场文书
建筑工地质量标语
2014/06/12 职场文书
企业员工集体活动方案
2014/08/17 职场文书
教师四风自我剖析材料
2014/09/30 职场文书
幼儿园门卫安全责任书
2015/05/08 职场文书
初中开学典礼新闻稿
2015/07/17 职场文书
2019送给家人们的中秋节祝福语
2019/08/15 职场文书
《悲惨世界》:比天空更广阔的是人的心灵
2020/01/16 职场文书
nginx安装以及配置的详细过程记录
2021/09/15 Servers