网站首页 > 技术教程 正文
提取YUV数据
ffmpeg -i input.mp4 -an -c:v rawvideo -pix_fmt yuv420p out.yuv
-i 输入文件
-an audio no
-c:v 等于-vcodec
-pix_fmt 像素格式
提取PCM数据
ffmpeg -i out.flv -vn -ar 44100 -ac 2 -f s16le out.pcm
-i 输入文件
-vn video no
-ar audio read 采样率
-ac audio count 声道数
-f 数据格式 s16le s代表有符号 16表示每一个数值用16位表示 le表示为little end 小头存储
gensees-iMac:study gensee$ ffmpeg -i out.flv -vn -ar 44100 -ac 2 -f s16le out.pcm
ffmpeg version N-94063-g86f04b918c Copyright (c) 2000-2019 the FFmpeg developers
built with Apple LLVM version 8.1.0 (clang-802.0.38)
configuration: --prefix=/usr/local/ffmpeg --enable-gpl --enable-nonfree --enable-libfdk-aac --enable-libx264 --enable-libx265 --enable-filter=delogo --enable-debug --disable-optimizations --enable-libspeex --enable-videotoolbox --enable-shared --enable-pthreads --enable-version3 --cc=clang --host-cflags= --host-ldflags=
libavutil 56. 29.100 / 56. 29.100
libavcodec 58. 53.100 / 58. 53.100
libavformat 58. 27.103 / 58. 27.103
libavdevice 58. 7.100 / 58. 7.100
libavfilter 7. 55.100 / 7. 55.100
libswscale 5. 4.101 / 5. 4.101
libswresample 3. 4.100 / 3. 4.100
libpostproc 55. 4.100 / 55. 4.100
Input #0, flv, from 'out.flv':
Metadata:
encoder : Lavf58.27.103
Duration: 00:00:08.13, start: 0.000000, bitrate: 470 kb/s
Stream #0:0: Video: h264 (High 4:2:2), yuv422p(progressive), 1920x1080, 30 fps, 30 tbr, 1k tbn, 60 tbc
Stream #0:1: Audio: aac (HE-AACv2), 44100 Hz, stereo, fltp, 32 kb/s
Stream mapping:
Stream #0:1 -> #0:0 (aac (native) -> pcm_s16le (native))
Press [q] to stop, [?] for help
Output #0, s16le, to 'out.pcm':
Metadata:
encoder : Lavf58.27.103
Stream #0:0: Audio: pcm_s16le, 44100 Hz, stereo, s16, 1411 kb/s
Metadata:
encoder : Lavc58.53.100 pcm_s16le
size= 1288kB time=00:00:08.13 bitrate=1296.4kbits/s speed= 203x
video:0kB audio:1288kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.000000%
gensees-iMac:study gensee$
播放音频
ffplay -ar 44100 -ac 2 -f s16le out.pcm
gensees-iMac:study gensee$ ffplay -ar 44100 -ac 2 -f s16le out.pcm
ffplay version N-94063-g86f04b918c Copyright (c) 2003-2019 the FFmpeg developers
built with Apple LLVM version 8.1.0 (clang-802.0.38)
configuration: --prefix=/usr/local/ffmpeg --enable-gpl --enable-nonfree --enable-libfdk-aac --enable-libx264 --enable-libx265 --enable-filter=delogo --enable-debug --disable-optimizations --enable-libspeex --enable-videotoolbox --enable-shared --enable-pthreads --enable-version3 --cc=clang --host-cflags= --host-ldflags=
libavutil 56. 29.100 / 56. 29.100
libavcodec 58. 53.100 / 58. 53.100
libavformat 58. 27.103 / 58. 27.103
libavdevice 58. 7.100 / 58. 7.100
libavfilter 7. 55.100 / 7. 55.100
libswscale 5. 4.101 / 5. 4.101
libswresample 3. 4.100 / 3. 4.100
libpostproc 55. 4.100 / 55. 4.100
[s16le @ 0x7fc51b876c00] Estimating duration from bitrate, this may be inaccurate
Input #0, s16le, from 'out.pcm':
Duration: 00:00:07.48, bitrate: 1411 kb/s
Stream #0:0: Audio: pcm_s16le, 44100 Hz, 2 channels, s16, 1411 kb/s
5.88 M-A: 0.000 fd= 0 aq= 182KB vq= 0KB sq= 0B f=0/0
gensees-iMac:study gensee$
相关学习资料推荐,点击下方链接免费报名,先码住不迷路~】
音视频免费学习地址:FFmpeg/WebRTC/RTMP/NDK/Android音视频流媒体高级开发
【免费分享】音视频学习资料包、大厂面试题、技术视频和学习路线图,资料包括(C/C++,Linux,FFmpeg webRTC rtmp hls rtsp ffplay srs 等等)有需要的可以点击788280672加群免费领取~
滤镜
裁剪 - 宽高改变
ffmpeg -i out.flv -vf crop=in_w-200:in_h-200 -c:v libx264 -c:a copy out.mp4
-i 输入文件
-vf video filter 这里选择了crop滤镜
in_w in_h代表视频宽高
添加水印
ffmpeg -i out.mp4 -vf "movie=timg.jpeg,scale=70x30[watermask];[in][watermask] overlay=30:10 [out]" water.mp4
movie 指定logo源
scale 指定logo大小
overlay 指定logo摆放位置
这里贴上海贼王的水印,在视频的左上角
gensees-iMac:study gensee$ ffmpeg -i out.mp4 -vf "movie=timg.jpeg,scale=70x30[watermask];[in][watermask] overlay=30:10 [out]" water.mp4
之后使用ffplay播放water.mp4可以看到左上角有水印
删除水印
ffmpeg -i water.mp4 -vf delogo=x=30:y=10:w=70:h=30:show=1 out.flv
对delogo滤镜的说明:
x,y:水印的左上方坐标
w,h: 水印的宽高
show:可选参数,为1时,可以看到一个绿色的,由x,y,w,h所确认的矩形框,方便调试使用。无误后,可以去掉此参数。
如需使用delogo滤镜,编译ffmpge一定要加–enable-gpl选项。不然使用时会提示
- 左上角为水印位置
音视频裁剪
ffmpeg -i out.flv -ss 00:00:00 -t 10 out.ts
-ss start second 开始时间
-t 裁剪的时间大小,这里裁剪10s
音视频合并
ffmpeg -f concat -i inputs.txt out.flv
-r 帧率 每秒1帧
-f format 意为格式
终端执行后得到图片
图片转视频
ffmpeg -i image-%3d.jpeg imageOut.mp4
将上次的10张图转为MP4
得到的视频后,使用ffplay播放
问题
Argument ‘out.mp4’ provided as input filename, but ‘water.mp4’ was already specified.出现这样的错误一般都是ffmpeg写成了ffplay,还是要细心细心…
原文链接:音视频开发-ffmpeg指令(2)_CaicaiNo.1的博客-CSDN博客
- 上一篇: 教你把多个视频合并成一个视频的方法
- 下一篇: FFMpeg系列一:Mac上FFMpeg4.0.2编译
猜你喜欢
- 2024-11-06 Qt音视频开发9-ffmpeg录像存储(nba比赛录像回放)
- 2024-11-06 音视频开源基础 - ffmpeg命令(ffmpeg音频处理)
- 2024-11-06 ffmpeg常用命令行集锦(ffmpeg 命令大全)
- 2024-11-06 音视频开发7. ffmpeg 几个重要结构体
- 2024-11-06 超详细的手把手下载安装FFmpeg整个过程,你学会了吗?
- 2024-11-06 FFmpeg硬解码(ffmpeg硬解码和直接使用cuda的区别)
- 2024-11-06 mPEG-Lys(MAL)-DBCO,甲氧基PEG赖氨酸马来酰亚胺二苯并环辛炔
- 2024-11-06 音视频流媒体高级开发(FFmpeg6.0/WebRTC/RTMP/RTSP/编码解码)
- 2024-11-06 FFmpeg在windows的安装、合并、切片、.m4s、.m3u8处理
- 2024-11-06 完美解决Linux环境编译ffmpeg库(linux编译环境配置)
你 发表评论:
欢迎- 最近发表
-
- Win11学院:如何在Windows 11上使用WSL安装Ubuntu
- linux移植(Linux移植freemodbus)
- 独家解读:Win10预览版9879为何无法识别硬盘
- 基于Linux系统的本地Yum源搭建与配置(ISO方式、RPM方式)
- Docker镜像瘦身(docker 减小镜像大小)
- 在linux上安装ollama(linux安装locale)
- 渗透测试系统Kali推出Docker镜像(kali linux渗透测试技术详解pdf)
- Linux环境中部署Harbor私有镜像仓库
- linux之间传文件命令之Rsync傻瓜式教程
- 解决ollama在linux中安装或升级时,通过国内镜像缩短安装时长
- 标签列表
-
- 下划线是什么 (87)
- 精美网站 (58)
- qq登录界面 (90)
- nginx 命令 (82)
- nginx .http (73)
- nginx lua (70)
- nginx 重定向 (68)
- Nginx超时 (65)
- nginx 监控 (57)
- odbc (59)
- rar密码破解工具 (62)
- annotation (71)
- 红黑树 (57)
- 智力题 (62)
- php空间申请 (61)
- 按键精灵 注册码 (69)
- 软件测试报告 (59)
- ntcreatefile (64)
- 闪动文字 (56)
- guid (66)
- abap (63)
- mpeg 2 (65)
- column (63)
- dreamweaver教程 (57)
- excel行列转换 (56)
本文暂时没有评论,来添加一个吧(●'◡'●)