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 相关文章推荐
利用php来自动调用不同服务器上的flash
Oct 09 PHP
Codeigniter的dom类用法实例
Jun 26 PHP
编写PHP脚本使WordPress的主题支持Widget侧边栏
Dec 14 PHP
详解WordPress开发中的get_post与get_posts函数使用
Jan 04 PHP
Zend Framework动作助手FlashMessenger用法详解
Mar 05 PHP
php实现的一段简单概率相关代码
May 30 PHP
php实用代码片段整理
Nov 12 PHP
php实现基于PDO的预处理示例
Mar 28 PHP
PHP使用pdo连接access数据库并循环显示数据操作示例
Jun 05 PHP
php中curl和soap方式请求服务超时问题的解决
Jun 11 PHP
php压缩文件夹最新版
Jul 18 PHP
tp5框架使用cookie加密算法实现登录功能示例
Feb 10 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中的内存管理,PHP动态分配和释放内存
2013/06/28 PHP
mac系统下为 php 添加 pcntl 扩展
2016/08/28 PHP
HTML node相关的一些资料整理
2010/01/01 Javascript
Nodejs Post请求报socket hang up错误的解决办法
2014/09/25 NodeJs
jquery中表单 多选框的一种巧妙写法
2015/09/06 Javascript
JavaScript原型及原型链终极详解
2016/01/04 Javascript
js老生常谈之this,constructor ,prototype全面解析
2016/04/05 Javascript
vue项目中做编辑功能传递数据时遇到问题的解决方法
2016/12/19 Javascript
详解JS: reduce方法实现 webpack多文件入口
2017/02/14 Javascript
JS实现一个简单的日历
2017/02/22 Javascript
jQuery插件FusionWidgets实现的Cylinder图效果示例【附demo源码】
2017/03/23 jQuery
JavaScript数据类型和变量_动力节点Java学院整理
2017/06/26 Javascript
express+vue+mongodb+session 实现注册登录功能
2018/12/06 Javascript
详解如何模拟实现node中的Events模块(通俗易懂版)
2019/04/15 Javascript
原生JS实现烟花效果
2020/03/10 Javascript
vue中配置scss全局变量的步骤
2020/12/28 Vue.js
在JavaScript中查找字符串中最长单词的三种方法(推荐)
2021/01/18 Javascript
Python使用Supervisor来管理进程的方法
2015/05/28 Python
python3编码问题汇总
2016/09/06 Python
Python基于scapy实现修改IP发送请求的方法示例
2017/07/08 Python
python爬取m3u8连接的视频
2018/02/28 Python
对Python 3.2 迭代器的next函数实例讲解
2018/10/18 Python
python实现扫描局域网指定网段ip的方法
2019/04/16 Python
Django实现CAS+OAuth2的方法示例
2019/10/30 Python
Django调用百度AI接口实现人脸注册登录代码实例
2020/04/23 Python
Anaconda使用IDLE的实现示例
2020/09/23 Python
美国当红的名品折扣网:Gilt Groupe
2016/08/15 全球购物
世界上最值得信赖的多日游在线市场:TourRadar
2018/07/20 全球购物
英国著名药妆店:Superdrug
2021/02/13 全球购物
数据库专业英语
2012/11/30 面试题
会议活动邀请函
2014/01/27 职场文书
一年级班主任感言
2014/03/08 职场文书
洗发水广告词
2014/03/13 职场文书
青年教师师德演讲稿
2014/08/26 职场文书
精神文明建设汇报材料
2014/12/24 职场文书
Windows11性能真的上涨35%? 桌面酷睿i9实测结果公开
2021/11/21 数码科技