FFmpeg开发笔记(七十五)使用qrencode和quirc对视频画面读写二维码

上一篇文章《Windows给FFmpeg集成二维码图像的编解码器》介绍了给FFmpeg集成二维码的编解码器qrencode和quirc,接下来讲解如何利用编码器qrencode向视频画面添加二维码,以及如何利用解码器quirc从视频画面读取二维码。

确保Windows系统已经按照《FFmpeg开发实战:从零基础到短视频上线》第一章"1.3 Windows系统安装FFmpeg"的说明安装配置了MSYS,再打开MSYS的MINGW64控制台,输入以下带qrencode滤镜的ffmpeg命令在seas.mp4的左上角添加二维码,二维码的文本内容由序号、时间戳和当前时间组成。

复制代码
ffmpeg -i seas.mp4 -vf qrencode=x=40:y=40:qrcode_width=main_w/6:text="%{n} %{pts} %{gmtime}" ff_qrencode.mp4

接着运行下面的ffplay命令播放添加了二维码的新视频:

复制代码
ffplay -i ff_qrencode.mp4

新视频的播放界面如下图所示,可见该视频的左上方果然添加了二维码图像。

运行以下帮助命令,可查看qrencode滤镜的详细用法。

复制代码
ffmpeg -h filter=qrencode

根据帮助命令的返回结果,可知qrencode滤镜主要有下列几个常用参数:

x:二维码图像左上角的横坐标。

y:二维码图像左上角的纵坐标。

qrcode_width:二维码图像的宽度,可简写为q。

padded_qrcode_width:二维码图像的留白宽度,可简写为Q。

level:二维码图像的容错等级,可简写为l。为0表示低容错,为1表示中等容错,为2表示默认容错,为3表示高度容错。

foreground_color:二维码图像的前景颜色,可简写为fc。

background_color:二维码图像的背景颜色,可简写为bc。

text:二维码的文本内容。

虽然视频画面加上了二维码,可是怎么知道这些二维码是否准确呢?这时就要通过解码器quirc从视频画面读取二维码了。

继续执行以下带quirc滤镜的ffmpeg命令,表示要查看目标视频里的二维码信息:

复制代码
ffmpeg -i ff_qrencode.mp4 -vf quirc -f null -

以上命令的执行结果如下:

复制代码
......
Found QR code at position 40,40 - 40,119 with payload: 193 7.720000 2025-06-03 03:33:46
Found QR code at position 40,40 - 40,119 with payload: 194 7.760000 2025-06-03 03:33:46
Found QR code at position 40,40 - 40,119 with payload: 195 7.800000 2025-06-03 03:33:46
Found QR code at position 40,40 - 40,119 with payload: 196 7.840000 2025-06-03 03:33:46

从quirc滤镜的命令结果可见,解析出来的二维码内容形如"193 7.720000 2025-06-03 03:33:46"这样,说明正确读到了之前添加的二维码时间戳内容。

更多详细的FFmpeg开发知识参见《FFmpeg开发实战:从零基础到短视频上线》一书。

相关推荐
音视频牛哥2 小时前
从“小而美”到“大而强”:音视频直播SDK的技术进化逻辑
机器学习·计算机视觉·音视频·大牛直播sdk·人工智能+·rtsp播放器rtmp播放器·rtmp同屏推流
碎像2 小时前
ffmpeg下载和实战获取音视频时长
ffmpeg
空影星2 小时前
GridPlayer,一个好用的多视频同步播放器
python·flask·电脑·音视频
哲学七3 小时前
Springboot3.5.x版本引入javaCv相关库版本问题以及精简引入包
java·ffmpeg
给大佬递杯卡布奇诺4 小时前
FFmpeg 基本API avcodec_open2函数内部调用流程分析
c++·ffmpeg·音视频
码农阿树12 小时前
视频解析转换耗时—OpenCV优化摸索路
人工智能·opencv·音视频
sishen419915 小时前
2.4 TF卡
音视频
给大佬递杯卡布奇诺15 小时前
FFmpeg 基本API avformat_alloc_context 函数内部调用流程分析
c++·ffmpeg·音视频
jjjxxxhhh12319 小时前
【招聘】-音视频行业企业的招聘分析
音视频
爬虫程序猿1 天前
把 1688 商品详情搬进 MySQL:PHP 爬虫全链路实战(2025 版)
爬虫·python·音视频