ffmpeg
文章平均质量分 60
SimpleForest
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
常见视频编码格式对比
原始视频文件巨大无比(例如未经压缩的1080p视频每分钟可能超过10GB),无法存储和传输。编码器(Encoder)通过复杂的算法去除视频中的冗余信息,将其压缩成小巧的文件。播放时,解码器(Decoder)再将其解压还原进行播放。在选择编码器后(如用x264或x265编码器),你还会遇到“预设”选项(如。视频编码(Video Encoding)的核心目的是。原创 2025-08-29 18:03:08 · 1731 阅读 · 0 评论 -
ffmpeg 添加毫秒时间戳
网上有好多添加时间水印的,默认是到秒,而我需要到毫秒,查了一下,没有找到更好的方案,下面是自己实现的方案,可以显示到毫秒。如果有更好的方案,欢迎讨论。原创 2025-03-14 17:51:28 · 875 阅读 · 0 评论 -
OBS推WebRTC流,并添加毫秒级时间显示
主要改了这句,这句是设置定时器的周期,原来是1000,也就是1秒触发一次。这里可以看出,该插件是定时获取系统时间,然后添加到视频中。这里可以采取截屏的方式,多截几次,大概可以看出延迟有多少。这种方式可以粗略测试延迟,如果有更精确的方法,欢迎讨论。采用一台电脑,流媒体服务器为SRS,相关配置比较简单,可以自行搜索。主要是这句,下面的代码没有去掉,方便需要自行修改的同学,获取日期等信息。原创 2025-03-13 20:48:48 · 1235 阅读 · 0 评论 -
关于视频去水印的一点尝试
用从原图2中提取的水印位置的图片,替换原图1 中的水印位置。(2)有的使用对象识别的方式,理论上来说,这种方式是可行的。这种方式从原理上来讲是存在问题的,可以保证画面整体颜色看起来差不多,但是局部看画面是不连续的。对于水印周围是纯色的情况,这种方式是没有问题的。原理也很简单,一般视频就是连续变化的图片,只要找到两张图片水印区域不重叠,就可以进行替换。delogo 滤镜的原理是通过插值算法,用水印周围的像素填充水印的位置。提取水印位置,可以看到原图1和原图2,在水印处是没有重叠的。3. 同系列图片替换。原创 2025-02-14 13:47:38 · 1108 阅读 · 0 评论 -
FFmpeg常用命令
该命令表示通过滤镜去除水印,水印的位置为(x,y),尺寸为wxh。-c:v copy 表示复制视频,如果不加该选项,将进行重新编码,速度较慢。-c:a copy 表示复制视频,如果不加该选项,将进行重新编码,速度较慢。在视频上添加"Logo"文字水印,字体颜色为白色,字体大小为24,位于(100,100)处。-c copy 表示直接复制,如果不加该选项,将进行重新编码,速度较慢。测试过程中,默认的帧率是25,像素格式是yuv444p。上面的命令表示,将图片转为视频,帧率为30,像素格式为yuv420p。原创 2025-02-13 19:05:52 · 1197 阅读 · 0 评论 -
FFmpeg Audio options
q:a 2 设置了音频质量,其中数字 2 代表质量级别(通常范围是 0 到 5,或者根据不同的编解码器有不同的范围)。对于输入流,这个选项只对音频抓取设备和原始解复用器有意义,并且会映射到相应的解复用器选项。对于输入流,这个选项只对音频抓取设备和原始解复用器有意义,并映射到相应的解复用器选项。作为输出选项,禁用音频录制,即禁止任何音频流的自动选择或映射。设置输出音频帧的数量。这是 -filter:a 的别名,请参阅 -filter 选项。设置音频编解码器,是-codec:a 的别名。原创 2025-02-12 09:52:04 · 590 阅读 · 0 评论 -
FFmpeg Video options
aspect 可以是一个浮点数字符串,或者形如 num:den 的字符串,其中 num 和 den 分别是宽高比的分子和分母。如果与 -vcodec copy 一起使用,它将影响容器级别的宽高比存储,但不会影响已编码帧中存储的宽高比(如果存在的话)。作为输出选项,禁用视频录制,即禁止任何视频流的自动选择或映射。表示输出视频比特率为1Mbps,音频比特率为128kbps。表示剪裁起始点为(x, y) 宽为为,高为h的视频。表示设置输出视频宽高比为16:9。表示输出视频帧率为30帧/秒。设置帧率(rate)原创 2025-02-12 09:25:37 · 975 阅读 · 0 评论 -
FFmpeg Per-file main options
当作为输入选项(在 -i 之前使用)时,在输入文件中寻找到指定的位置。请注意,在大多数格式中,无法精确寻找到指定的位置,因此 ffmpeg 将寻找到位置之前的最近寻址点。当作为输出选项(在输出 URL 之前使用)时,在输出持续时间达到指定的时间后停止写入输出。当作为输出选项(在输出 URL 之前使用)时,将解码输入但直到时间戳达到指定位置之前的数据将被丢弃。也就是说,负值表示文件中的更早位置,0 表示文件的末尾。表示截取从2分钟处到结束的视频,-c copy表示不进行重新编码,直接进行复制。原创 2025-02-12 08:32:49 · 732 阅读 · 0 评论 -
FFmpeg中时长的表示方式
HH 表示小时数,MM 表示分钟数,最多为2位数字,SS 表示秒数,最多为2位数字。结尾的 m 表示 SS 的小数部分。S 表示秒数,m 是可选的小数部分。可选的文字后缀 ‘s’、‘ms’ 或 ‘us’ 分别指示将值解释为秒、毫秒或微秒。在这两种表达式中,可选的 ‘-’ 表示负的持续时间。‘200000us’ 200000微秒,即0.2秒。‘12:03:45’ 12小时,03分钟和45秒。‘200ms’ 200毫秒,即0.2秒。‘23.189’ 23.189秒。‘0.2’ 0.2秒。原创 2025-02-11 15:43:03 · 655 阅读 · 0 评论 -
ffmpeg -hwaccels
输出中的cuda表示ffmpeg支持Nvidia 硬件设备。编译ffmpeg增加相关硬件设备的配置,输出会显示相应的信息。开发过程中可以先用该命令确认是否支持相关的设备。显示ffmpeg支持的硬件设备。原创 2025-02-11 10:03:03 · 718 阅读 · 0 评论 -
ffmpeg -pix_fmts
输出选项中带I,表示输入的像素格式;带O,表示输出的像素格式;H:表示硬件加速支持的像素格式。第3列表示像素的通道数,第四列表示一个像素占用的比特数。12:表示一个像素占用12位(bit),也就是1.5 = 12/8 字节;IO:表示输入输出都支持yuv420p格式。显示ffmpeg支持的像素格式。关于yuv的理解可以参考。以yuv420p举例。原创 2025-02-11 09:56:15 · 603 阅读 · 0 评论 -
ffmpeg --protocols
显示ffmpeg支持的流媒体协议。Output: //输出协议类型。Input: //输入协议类型。原创 2025-02-11 09:40:27 · 322 阅读 · 0 评论 -
ffmpeg -codecs
encoders:表示支持的h264编码器有libx264(使用x264库)、h264_nvenc(cuda硬件编码)等。输出选项中带D,表示支持该格式的解码;带E,表示支持该格式的编码;带V,表示视频格式;带A,表示音频格式;decoders:表示支持的h264解码器有h264、h264_cuvid(cuda硬件解码)等。ffmpeg -encoders 和 ffmpeg -decoders 命令与该命令功能一样。D:表示支持h264解码;E:表示支持h264编码;以h264举例进行说明。原创 2025-02-10 17:41:34 · 694 阅读 · 0 评论 -
ffmpeg -devices
显示ffmpeg支持的设备,通常用于查看ffmpeg支持的硬件设备,比如Cuda、Atalas。输出选项中带D,表示支持该格式的解码;带E,表示支持该格式的编码。原创 2025-02-10 17:26:21 · 783 阅读 · 0 评论 -
ffmpeg -buildconf
显示ffmpeg编译配置信息,其实就是configuration显示的信息。原创 2025-02-10 16:37:56 · 1038 阅读 · 0 评论 -
ffmpeg基本用法
sample_fmts 显示可用的音频采样格式。-bsfs 显示可用的比特流过滤器。--help topic 显示帮助信息。-demuxers 显示可用的解复用器。-filters 显示可用的过滤器。-formats 显示可用的格式。-muxers 显示可用的复用器。-devices 显示可用的设备。原创 2025-02-10 16:05:49 · 488 阅读 · 0 评论
分享