FFmpeg学习笔记

FFmpeg学习笔记汇总 第1章 FFmpeg简介1.1 FFmpeg定义FFmpeg既是一款音视频编解码工具,同时也是一组音视频编解码开发套件,作为编解码开发套件,它为开发者提供了丰富的音视频处理的调用接口。FFmpeg提供了多种媒体格式的封装和解封装,包括多种音视频编码、多种协议的流媒体、多种色彩格式转换、多种采样率转换、多种码率转换等;FFmpeg框架提供了多种丰富的插件模块,包含封装与解封装的插件、编码与解码的插件等。 阅读详情

《音视频应用开发系列文章目录》

FFmpeg介绍

一个强大的音视频编解码内核工具(OR百度百科)

FFmpeg获取

ffmpeg官网:http://ffmpeg.org/

ffmpeg编译好的包:https://ffmpeg.zeranoe.com/builds/

ffmpeg有三个版本:static,shared,dev。static版本包含了三个静态编译ffmpeg的工具"ffmpeg,ffplay,ffprobe",ffmpeg集成转码等功能,ffplay集成播放显示等功能,ffprobe集成格式查看等功能;shared版本包含了三个静动态编译ffmpeg的工具"ffmpeg,ffplay,ffprobe"和一些动态库(windows->*.dll,linux->*.so);dev版本为开发者版本,里面包含了开发者基于ffmpeg代码级别开发的include头文件lib库文件,但是不含动态库文件,所以ffmpeg的代码级别的开发者需要下dev+shared版本两个才能进行代码级别的开发。

FFmpeg命令行使用

下载static版或者shared版本可以直接使用命令行对ffmpeg等工具进行操作。

.avi转码.mp4

ffmpeg -i dnf.avi dnf.mp4

指定码率

ffmpeg -i dnf.avi -b:v 500k dnf.mp4

从第20秒开始转码

ffmpeg -ss 20 -i dnf.avi -b:v 500k dnf.mp4

从第20秒开始转码,并截取视频长度为30秒

ffmpeg -ss 20 -t 30 -i dnf.avi -b:v 500k dnf.mp4

设置帧率为10帧

ffmpeg -ss 20 -t 30 -i dnf.avi -b:v 500k -r 10 dnf.mp4

设置分辨率为320*240

ffmpeg -ss 20 -t 30 -i dnf.avi -b:v 500k -r 10 -s 320*240 dnf.mp4

设置音频采样率为44100HZ

ffmpeg -ss 20 -t 30 -i dnf.avi -b:v 500k -r 10 -s 320*240 -ar 44100 dnf.mp4

播放视频

ffpaly dnf.avi  注(ffpaly 快捷键):q/ESC退出,f全屏,p/space暂停,鼠标移动点击跳转到指定位置。

FFmpeg在VS下的环境配置

下载dev和shared版本

在包含目录添加dev版本下的include路径,在库目录添加dev版本下的lib路径,链接lib路径下的*.lib文件。dll文件放在工程目录下即可开始愉快的基于ffmpeg代码开发(注:这里为做笔记,并没有详细介绍)。

附加笔记

1.可直接送入音视频硬件的数据为:RGB(RGB24 RGB32),YUV(YUV420 YUV422),PCM。

2.YUV和PCM在打开时需要指定正确分辨率和采样率等信息才能打开,否则会错乱,因为它们的存取格式没有头信息,只有数据信息。而RGB有头信息所以可以直接打开,比如BMP文件。

3.YUV可以通过RGB互转,由于人眼对Y(亮度)信息敏感,对UV(色彩)信息部敏感,所以YUV信息可以保留多的Y信息,适当的压缩UV信息。存储格式为YYYYYYYYYYYYYYYY```UUUUU```VVV```

4.PCM为音频的采样信息,存储格式为LRLRLR···LR,存储左右声道的采样值,44100HZ的意思是每秒左右声道各采样44100个信息。每个点的信息可以使整形,浮点等,所以不同的存储方式可以有不同的大小。

5.视频的封装格式有flv avi rmvb mp4,里面包含了各种流信息,比如视频,音频,字幕等,就是对各种信息的打包封装。

6.音视频的编码格式有HEVC(h265) h264 mpeg mp3 aac等,因为裸数据(rgb yuv pcm)太大,硬盘无法如此存储,网络无法这样传输,所以需要编解码。

n.待续,继续学习中···

更多学习链接

雷神的FFmpeg:https://blog.youkuaiyun.com/leixiaohua1020/article/details/15811977

FFmpeg的基础使用:https://www.jianshu.com/p/ddafe46827b7

 

逆向工程实战:解密AppleAccount的X-MMe-Nas-Qualify签名生成机制 本文通过逆向工程实战,详细解析了AppleAccount服务中X-MMe-Nas-Qualify签名的生成机制。作者利用Frida进行动态追踪定位签名源头,结合IDA Pro进行静态分析,并借助LLDB动态调试还原核心算法。文章最终分享了如何独立于苹果官方库,通过Python代码复现签名算法,为自动化测试和深度交互苹果服务的开发者提供了关键技术路径。 阅读详情

相关推荐

Allegro老鸟的20年效率秘籍:用YepEda Skill脚本实现PCB设计全流程自动化

本文分享了Allegro资深工程师20年效率秘籍,通过YepEda Skill脚本实现PCB设计全流程自动化。从封装建库到规则配置,再到DFM审核,YepEda Skill大幅提升设计效率,每天节省至少4小时重复劳动。文章详细解析了自动化工具链的核心功能,并提供了实战技巧和量化对比数据。

weixin_42546392的博客 239

FFmpeg安装与配置(windows与mac)

FFmpeg命令行安装 使用如下命令进行FFmpeg: sudo apt-get install ffmpeg FFmpeg源码安装 FFmpeg源码获取 使用如下命令获取ffmpeg的源码: git clone https://git.ffmpeg.org/ffmpeg.git ffmpeg ffmpeg编译 使用如下命令指定安装目录: ./configure --prefix=/usr/local/ffmpeg --enable-debug=3 --enable-shared --disa

一叶知秋 16万+

openEuler Embedded新增软件包及在线安装软件方法

openEuler Embedded是基于Yocto构建的嵌入式操作系统,默认不包含dnf/apt软件包管理器,主要使用rpm格式。新增软件需通过manifest文件检查是否集成,未集成则需适配新配方。对于在线安装需求,可采用轻量级容器方案:通过isulad运行openEuler服务器版容器镜像,在容器内使用dnf命令安装软件(如Nginx),实现服务器生态兼容。部署前提包括设备支持、存储空间(≥10GB)和网络连接,需先安装并启动isulad服务。这种方法结合了嵌入式系统的轻量化特性和服务器系统的软件管理

专注嵌入式开发与 Linux 系统应用实战,分享芯片驱动、设备调试、系统工具开发干货。 1226

FFmpeg入门教程(非常详细)从零基础入门到精通,看完这一篇就够了。

FFmpeg全称为Fast Forward Moving Picture Experts Group,于2000年诞生,是一款免费,开源的音视频编解码工具及开发套件。它的功能强大,用途广泛,大量用于视频网站和商业软件(比如 Youtube 和 iTunes)。FFmpeg 本身是一个庞大的项目,包含许多组件和库文件,最常用的是它的命令行工具example:对输入视频缩放至320:240:ffmpeg -i input.mpg -vf scale=320:240 output.mp4。

Javachichi的博客 9万+

MaaS 商业模式全面分析报告:从技术赋能到商业变现的全链条探索

MaaS(模型即服务)商业模式正成为AI产业主流,2024年上半年中国市场规模达2.5亿元,预计2027年占比将提升至47%。该模式通过云服务提供预训练AI模型,大幅降低企业应用AI的技术门槛和成本。核心盈利方式包括按使用量计费、订阅制、定制化服务等,其中混合模式因灵活性成为趋势。MaaS产业链包含模型提供商、云平台、应用开发商和最终用户,重塑了AI产业格局。随着《数据法案》等监管加强,数据增值服务面临更严格合规要求。未来五年,中国MaaS市场增速预计超50%,用户规模将从2025年2.1亿增至2030年5

芯片行业20年 · 参与定义实现千万级量产出货 · AI芯片PM 2893

FANUC机器人电弧跟踪功能深度解析:从电流采样原理到ROBOGUIDE仿真避坑指南

本文深度解析FANUC机器人电弧跟踪技术,从电流采样原理到ROBOGUIDE仿真避坑指南,详细介绍了电流波形分析、实时补偿机制及现场调试技巧。针对工业焊接中的常见问题,提供从底层原理到高阶应用的解决方案,帮助工程师优化自动化焊接质量。

weixin_31785177的博客 553

FFMPEG详解(完整版)

原文出自:http://3xin2yi.info/wwwroot/tech/doku.php/tech:multimedia:ffmpeg 转自:FFMPEG详解 [C.L's Tech Notes] 原文的出处已经访问不到,这里做一个完整版的备份,供参考。 认识FFMPEG FFMPEG堪称自由软件中最完备的一套多媒体支持库,它几乎实现了所有当下常见的数据封装格式、多媒体传输协议以及音视频编解码器,堪称多媒体业界的瑞士军刀。因此,对于从事多媒体技术开发的工程师来说,深入研究FFMPEG成为一门必.

千里之行 10万+

python爬虫自动下载网页链接

需求分析 今天遇到一个简单的需求,需要下载澳大利亚电力市场NEM日前市场的发电商报价数据(http://nemweb.com.au/Reports/Current/Next_Day_Offer_Energy/),页面观感是这样的: Ctrl + F 一下,看到一共有395个zip链接。于是就想着用python爬虫自动下载。这个网页很简单,没有验证码,甚至不需要登录,因此自动下载的pytho...

da_kao_la的博客 1万+

ffmpeg的安装和使用教程

FFmpeg 是一个开源的多媒体框架,它包括了一套可以用来记录、转换数字音频、视频,并能将其转换成流的命令行工具。FFmpeg 支持多种音视频格式的解码和编码,以及音视频的转换、处理和播放。它由 Fabrice Bellard 开发,自 2000 年以来一直是多媒体处理领域的重要工具。

Python老吕的博客 4万+

小案例:利用图床自动化批量上传图片并获取图片链接

用python爬虫写了一个小脚本,用来自动上传图片到图床,然后返回链接,我们只需直接复制链接就可以。(需要安装Requests库) 因为不同图床需要提交的POST表单不一致,所以在这里我用ImgURL图床做示范,如果大家有需求,可自行修改代码。使用脚本的时候,我们只需把需要上传的图片和这个脚本放在同一个文件夹中,然后运行脚本,稍作等待,看到提示时就可以在脚本运行文件夹中发现一个名为“图片链接地址.txt”的文件,里面就是图片链接啦! 四、图片链接地址.txt(单张图片):...

采菊东篱下,Python满乾坤! 4413

告别U盘!在Ubuntu 22.04上从零搭建PXE网络装机服务器(支持UEFI/Legacy双启动)

本文详细介绍了在Ubuntu 22.04上搭建PXE网络装机服务器的完整流程,支持UEFI/Legacy双启动模式。通过配置DHCP、TFTP和HTTP服务,实现无需U盘的高效批量系统部署,解决传统安装方式的介质依赖、版本控制和时间成本问题,显著提升机房维护和设备部署效率。

weixin_42569329的博客 249

ffmpeg工具日常学习笔记

6、根据MPEG规范的说法,MPEG-4中的AAC(Advanced audio coding)将是MP3格式的下一代。ffmpeg -i 102.mp4 -ss 00:01:05 -t 00:00:45.0 -q:a 0 -map a 102(45秒).mp3。5、MP3的诞生时间要早于M4A,但是M4A的流行度正在超过MP3。ffmpeg -i aaa.m4a -f mp3 a.mp3 #将m4a格式转换成mp3。4、M4A音频文件的大小要远远大于MP3,对于磁盘空间的占用,M4A要远大于MP3。

m0_61797149的博客 1377

Kafka 性能优化与常见问题排查

Kafka 的高性能依赖于合理的集群设计、参数优化与高效的监控体系。生产环境中,应重点关注I/O 瓶颈、分区规划、Producer/Consumer 参数调优,并通过监控与排查手段快速定位问题,从而保障 Kafka 在实时场景下的稳定运行。

X2829352498的博客 235

FFmpeg 学习笔记(二)

1.待续

friend_gank的专栏 406

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

OpenSL ES+FFmpeg+MediaCodec学习笔记总结

OpenSL ES+FFmpeg+MediaCodec学习笔记总结

luoyong_blog的博客 312

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

FFMPEG学习笔记【一】

@TOCFFMPEG学习笔记【一】 音视频提取 -vn: video no -an:不要音频 -acodec copy : 音频拷贝 -f 包装格式 -y 复制 -i 输入 提取音频流 ffmpeg.exe -i ande.mp4 -vn -acodec copy -f mp4 -y ande-vn.mp4 提取视频流 ffmpeg.exe -i ande.mp4 -an -vcodec copy -f mp4 -y ande-an.mp4 ffprobe.exe -i ande-vn.mp4 截取10-2

wallace1747的博客 293

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

[特殊字符] FFmpeg 学习笔记

FFmpeg是一个开源跨平台的视频和音频处理工具,支持录制、转换、流处理等功能。

wangjinjin180的博客 762

OpenGL ES+FFmpeg+MediaCodec学习笔记总结

OpenGL ES+FFmpeg+MediaCodec学习笔记总结

luoyong_blog的博客 485

FFmpeg学习笔记系列

FFmpeg学习笔记系列是在Mac上用xcode调试的,所用ffmpeg版本是:4.0.2 建议在命令行安装FFmpeg和ffplay,命令为: brew install ffmpeg --with-ffplay 如有需要编译好的库文件,以下是下载地址: https://download.youkuaiyun.com/download/whoyouare888/11200878 资源文件下载地址: ...

周洪伟的博客 465

ffmpeg学习笔记

作者总结的挺好,感谢:http://llyblog.com/2018/05/07/FFMPEG%E5%AD%A6%E4%B9%A0%E7%AC%94%E8%AE%B0/

gqixf的博客 252

FFmpeg的HEVC解码器源代码学习笔记-3

使用FFmpeg对HEVC码流进行解码时,所采用的各种结构体的介绍: 为了弄清楚这个结构体每个变量的作用,以及在解码过程中的实际值,我将HEVC解码过程中的codec变量打印出来

xxwtiancai的博客 887

ffmpeg学习笔记-初识ffmpeg

ffmpeg用来对音视频进行处理,那么在使用ffmpeg前就需要ffmpeg有一个大概的了解,这里使用雷神的ppt素材进行整理,以便于复习 音视频基础知识 视频播放器的原理 播放视频的流程大致如下: 常用播放器 跨平台 VLC,Mplayer,ffplay等 Windows平台 完美解码,终极解码,暴风影音 信息查看工具...

weixin_30596023的博客 443
上一篇: KCG-VISION:条码读取
下一篇: H264学习笔记
KayChanGeek
KayChanGeek 领域专家: 嵌入式与硬件开发技术领域 领域专家: 嵌入式与硬件开发技术领域
博客等级 码龄11年 926粉丝 143原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值