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 相关文章推荐
我的论坛源代码(二)
Oct 09 PHP
在PHP中使用模板的方法
May 24 PHP
PHP操作MongoDB时的整数问题及对策说明
May 02 PHP
PHP输出缓存ob系列函数详解
Mar 11 PHP
PHP实现的简单三角形、矩形周长面积计算器分享
Nov 18 PHP
thinkphp3.2中Lite文件替换框架入口文件或应用入口文件的方法
May 21 PHP
PHP根据图片色界在不同位置加水印的方法
Jul 01 PHP
PHP多文件上传实例
Jul 09 PHP
浅谈PHP检查数组中是否存在某个值 in_array 函数
Jun 13 PHP
php类自动装载、链式操作、魔术方法实现代码
Jul 23 PHP
PHP实现QQ登录的开原理和实现过程
Feb 04 PHP
Thinkphp 在api开发中异常返回依然是html的解决方式
Oct 16 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
理解PHP5中static和const关键字的区别
2007/03/19 PHP
php获取后台Job管理的实现代码
2011/06/10 PHP
实现PHP多线程异步请求的3种方法
2014/01/17 PHP
ThinkPHP实现多数据库连接的解决方法
2014/07/01 PHP
如何用PHP来实现一个动态Web服务器
2015/07/29 PHP
用js实现的抽象CSS圆角效果!!
2007/05/03 Javascript
javascript几个易错点记录
2014/11/26 Javascript
jQuery中siblings()方法用法实例
2015/01/08 Javascript
jQuery实现的感应鼠标悬停图片色彩渐显效果
2015/03/03 Javascript
Javascript实现颜色rgb与16进制转换的方法
2015/04/18 Javascript
jQuery检测某个元素是否存在代码分享
2015/07/09 Javascript
javascript 网页进度条简单实例
2017/02/22 Javascript
JS完成画圆圈的小球
2017/03/07 Javascript
ReactNative页面跳转Navigator实现的示例代码
2017/08/02 Javascript
javascript帧动画(实例讲解)
2017/09/02 Javascript
详解vue项目首页加载速度优化
2017/10/18 Javascript
详解Vue项目中实现锚点定位
2019/04/24 Javascript
手机浏览器唤起微信分享(JS)
2020/10/11 Javascript
django 使用 PIL 压缩图片的例子
2019/08/16 Python
Python工程师必考的6个经典面试题
2020/06/28 Python
关于Python3爬虫利器Appium的安装步骤
2020/07/29 Python
Python pip使用超时问题解决方案
2020/08/03 Python
Python压缩模块zipfile实现原理及用法解析
2020/08/14 Python
网页中的电话号码如何实现一键直呼效果_附示例
2016/03/15 HTML / CSS
Russell Stover巧克力官方网站:美国领先的精美巧克力制造商
2016/11/27 全球购物
总经理助理岗位职责
2013/11/08 职场文书
个人自我鉴定写法
2013/11/30 职场文书
《难忘的泼水节》教学反思
2014/02/27 职场文书
优秀管理者事迹材料
2014/05/22 职场文书
国庆65周年演讲稿:回首往昔,展望未来
2014/09/21 职场文书
优秀共青团员事迹材料
2014/12/25 职场文书
呐喊读书笔记
2015/06/30 职场文书
如何在Python项目中引入日志
2021/05/31 Python
手写实现JS中的new
2021/11/07 Javascript
python超详细实现完整学生成绩管理系统
2022/03/17 Python
Win11电脑显示本地时间与服务器时间不一致怎么解决?
2022/04/05 数码科技