日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

ffmpeg 同宽度 画中画_FFmpeg中overlay滤镜用法-水印及画中画

發(fā)布時間:2023/12/9 编程问答 46 豆豆
生活随笔 收集整理的這篇文章主要介紹了 ffmpeg 同宽度 画中画_FFmpeg中overlay滤镜用法-水印及画中画 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

1. overlay 技術(shù)簡介

overlay 技術(shù)又稱視頻疊加技術(shù)。overlay 視頻技術(shù)使用非常廣泛,常見的例子有,電視屏幕右上角顯示的電視臺臺標(biāo),以及畫中畫功能。畫中畫是指在一個大的視頻播放窗口中還存在一個小播放窗口,兩個窗口不同的視頻內(nèi)容同時播放。

overlay 技術(shù)中涉及兩個窗口,通常把較大的窗口稱作背景窗口,較小的窗口稱作前景窗口,背景窗口或前景窗口里都可以播放視頻或顯示圖片。FFmpeg 中使用 overlay 濾鏡可實(shí)現(xiàn)視頻疊加技術(shù)。

overlay 濾鏡說明如下:

描述:前景窗口(第二輸入)覆蓋在背景窗口(第一輸入)的指定位置。

語法:overlay[=x:y[[:rgb={0, 1}]]

參數(shù) x 和 y 是可選的,默認(rèn)為 0。

參數(shù) rgb 參數(shù)也是可選的,其值為 0 或 1,默認(rèn)為 0。

參數(shù)說明:

x 從左上角的水平坐標(biāo),默認(rèn)值為 0

y 從左上角的垂直坐標(biāo),默認(rèn)值為 0

rgb 值為 0 表示輸入顏色空間不改變,默認(rèn)為 0;值為 1 表示將輸入的顏色空間設(shè)置為 RGB

變量說明:如下變量可用在 x 和 y 的表達(dá)式中

main_w 或 W 主輸入(背景窗口)寬度

main_h 或 H 主輸入(背景窗口)高度

overlay_w 或 w overlay 輸入(前景窗口)寬度

overlay_h 或 h overlay 輸入(前景窗口)高度

overlay 濾鏡相關(guān)參數(shù)示意圖如下:

2. 命令行用法

可先參考 "FFmpeg 使用基礎(chǔ)" 了解 FFmpeg 命令行基本用法。

overlay 命令行基本格式如下:

ffmpeg -i input1 -i input2 -filter_complex overlay=x:y output

input1 是背景窗口輸入源,input2 是前景窗口輸入源。

2.1 視頻中疊加圖標(biāo)

背景窗口視頻素材下載(右鍵另存為):ring.mp4

視頻分辨率是 768x432(此分辨率適用于平板電腦,寬高比為 16:9),上下黑邊的像素高度是 56,播放時長為 37.97 秒。關(guān)于分辨率與黑邊的相關(guān)內(nèi)容可參考如下:

為什么很多人把視頻上下加黑條當(dāng)做“電影感”?

用于編碼視頻文件的視頻預(yù)設(shè)

前景窗口圖標(biāo)素材下載(右鍵另存為):ring_100x87.png

圖標(biāo)分辨率是 100x87。圖標(biāo)格式為 PNG 格式,當(dāng)然選用其他格式的圖片作圖標(biāo)也是可以的,但 PNG 圖標(biāo)具有透明背景,更適合用作圖標(biāo)。

2.1.1 直接疊加圖標(biāo)

將圖標(biāo)疊加于視頻右上角:("-max_muxing_queue_size" 參數(shù)的使用見參考資料[3])

ffmpeg -i ring.mp4 -i ring_100x87.png -filter_complex overlay=W-w:56 -max_muxing_queue_size 1024 ring_logo_t.mp4

效果如下:

將圖標(biāo)疊加于視頻右下角:

ffmpeg -i ring.mp4 -i ring_100x87.png -filter_complex overlay=W-w:H-h-56 -max_muxing_queue_size 1024 ring_logo_b.mp4

效果如下:

2.1.2 延時疊加圖標(biāo)

如下,背景窗口播放 8.6 秒后,圖標(biāo)開始顯示。注意 “-itsoffset 8.6” 作為第二個輸入文件的輸入選項(xiàng),參數(shù)位置不能放錯。

ffmpeg -i ring.mp4 -itsoffset 8.6 -i ring_100x87.png -filter_complex overlay=W-w:56 -max_muxing_queue_size 1024 ring_logo_delay.mp4

2.2 視頻中疊加視頻——畫中畫

視頻中疊加視頻即為畫中畫功能。注意兩個視頻僅圖像部分會疊加在一起,聲音是不會疊加的,有一個視頻的聲音會消失。

2.2.1 疊加計(jì)時器

找一個計(jì)時器小視頻,將之疊加到背景視頻上。我們可以從測試源中獲取這個計(jì)時器視頻。先運(yùn)行如下命令:

ffplay -f lavfi -i testsrc

視頻無法貼在本文里,那運(yùn)行截圖命令,從視頻中截取一張圖:

ffmpeg -ss 00:00:12 -f lavfi -i testsrc -frames:v 1 -f image2 testsrc.jpg

效果如下:

我們把計(jì)時器那一小塊視頻裁剪下來,運(yùn)行如下命令:

ffmpeg -ss 00:00:10 -t 20 -f lavfi -i testsrc -vf crop=61:52:224:94 timer.h264

此命令主要用到了 crop 視頻濾鏡,說明一下:

"-vf crop=61:52:224:94" 表示裁剪一塊位于 (224,94) 坐標(biāo)處寬為 61 像素高為 52 像素的視頻塊

"-ss 00:00:10 -t 20" 表示從 10 秒處開始裁剪,裁剪時長為 20 秒

將計(jì)時器視頻 timer.h264 疊加到背景視頻 ring.mp4 里:

ffmpeg -i ring.mp4 -i timer.h264 -filter_complex overlay=W-w:0 -max_muxing_queue_size 1024 ring_timer.mp4

效果如下:

看一下視頻疊加過程中 FFmpeg 在控制臺中的打印信息,關(guān)注流的處理:

$ ffmpeg -i ring.mp4 -i timer.h264 -filter_complex overlay=W-w:0 -max_muxing_queue_size 1024 ring_timer.mp4

......

Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'ring.mp4':

Metadata:

......

Duration: 00:00:37.97, start: 0.032000, bitrate: 515 kb/s

Stream #0:0(chi): Video: h264 (avc1 / 0x31637661), none, 768x432, 488 kb/s, 23 fps, 23 tbr, 23k tbn, 46k tbc (default)

Metadata:

handler_name : 1348358526.h264#video:fps=23 - Imported with GPAC 0.5.1-DEV-rev4127

Stream #0:1(chi): Audio: aac (HE-AAC) (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 95 kb/s (default)

Metadata:

handler_name : GPAC ISO Audio Handler

Input #1, h264, from 'timer.h264':

Duration: N/A, bitrate: N/A

Stream #1:0: Video: h264 (High 4:4:4 Predictive), yuv444p(progressive), 61x52 [SAR 1:1 DAR 61:52], 25 fps, 25 tbr, 1200k tbn, 50 tbc

Stream mapping:

Stream #0:0 (h264) -> overlay:main (graph 0)

Stream #1:0 (h264) -> overlay:overlay (graph 0)

overlay (graph 0) -> Stream #0:0 (libx264)

Stream #0:1 -> #0:1 (aac (native) -> aac (native))

......

看 "Stream mapping" 部分可以看出:

輸入源 1 視頻流 "Stream #0:0" 和輸入源 2 視頻流 "Stream #1:0" 疊加到輸出視頻流 "Stream #0:0"

輸入源 1 音頻流 "Stream #0:1" 拷貝到輸出音頻流 "Stream #0:1"

視頻開始幾秒處播放有些異常,聲音播放幾秒后圖像才開始播放,原因不太清楚。

3. API用法

使用濾鏡API編程,解析不同的濾鏡選項(xiàng),以達(dá)到和命令行中輸入命令同樣的效果。

例程使用 "FFmpeg 濾鏡 API 用法與實(shí)例解析" 中第 4.2 節(jié)的示例程序,運(yùn)行如下命令下載例程源碼:

svn checkout https://github.com/leichn/exercises/trunk/source/ffmpeg/ffmpeg_vfilter

下載之后進(jìn)入源碼目錄,編譯生成 vf_file 可執(zhí)行文件:

cd ffmpeg_vfilter

make vf_file

運(yùn)行如下命令進(jìn)行測試:

./vf_file ring.flv -vf "movie=ring_100x87.png[logo];[in][logo]overlay=W-w:56"

測試效果為:

因?yàn)槔躺胁恢С侄噍斎氲姆绞?#xff0c;所以上述測試命令中借助了 movie 濾鏡來加載第二個輸入,這條命令和下面這條命令效果是一樣的

ffplay ring.mp4 -i ring_100x87.png -filter_complex overlay=W-w:56

4. 遺留問題

第 3 節(jié)例程不支持多輸入方式,借助了 movie 濾鏡變通實(shí)現(xiàn),多輸入情況下 API 如何編程?待分析如下命令中多輸入選項(xiàng)的解析處理方式:

ffplay ring.mp4 -i ring_100x87.png -filter_complex overlay=W-w:56

5. 參考資料

6. 修改記錄

2019-02-16 V1.0 首次整理

2020-01-17 V1.0 修改資源文件下載地址錯誤

2020-02-23 V1.0 github 文件下載地址規(guī)則改變,修改資源文件無法下載問題

總結(jié)

以上是生活随笔為你收集整理的ffmpeg 同宽度 画中画_FFmpeg中overlay滤镜用法-水印及画中画的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 少妇毛片一区二区三区粉嫩av | 激情五月色播五月 | 在线观看欧美成人 | 精品国产乱子伦 | 精品国自产在线观看 | 国产剧情在线视频 | 国产性―交一乱―色―情人 | 国产第二页 | www.97ai.com | 中文字幕一区二区久久人妻网站 | 日韩国产一区二区三区 | 76少妇精品导航 | 蜜臀国产AV天堂久久无码蜜臀 | 欧美人一级淫片a免费播放 西方av在线 | 男女视频免费观看 | 久久久久97国产 | 天堂一区二区三区 | 99热com| www狠狠干| 国产精品国产三级国产aⅴ无密码 | 成人黄色一级视频 | av在线播放观看 | 农村少妇无套内谢粗又长 | 久久久久久婷 | 在线久草 | 中文字幕av第一页 | 亚洲а∨天堂久久精品2021 | 亚洲一区二区三区在线 | 成年人一级黄色片 | 成人激情久久 | 波多野结衣www | 午夜伊人网 | 国产精品久久9 | 特级毛片在线播放 | 99精品欧美一区二区三区 | 尹人av| 精品一区二区三区无码视频 | 国产成人无遮挡在线视频 | 日韩麻豆视频 | 一区二区在线视频播放 | 国产黄色三级网站 | 91精品视频网站 | 色爽| 九九黄色大片 | 精品人妻一区二区三区免费 | 日韩在线观看一区 | 露出调教羞耻91九色 | 天天天天天天操 | 日本中文字幕在线免费观看 | 欧美综合影院 | 午夜看看 | 少妇无内裤下蹲露大唇视频 | 91久久爱 | 成人做爰66片免费看网站 | 婷婷久 | 日韩福利视频在线观看 | 免费高清成人 | 日韩一区二区影视 | 亚州福利 | 一区三区视频 | 禁漫天堂在线 | 男人的天堂在线播放 | 国产精品久久毛片av大全日韩 | 国产黄在线观看 | 亚洲第一天堂av | 成人一级网站 | 三上悠亚痴汉电车 | 免费欧美一级片 | 三级视频网站在线观看 | 婷婷中文字幕在线 | 亚洲AV无码成人精品国产一区 | 一级少妇毛片 | 下面一进一出好爽视频 | www.av网址 | 日本少妇吞精囗交视频 | 男女福利视频 | 欧美精品黄色 | 蜜臀av性久久久久蜜臀aⅴ | 最新中文av | 男女视频一区 | 老司机深夜福利视频 | 天堂网2014av | 日韩在线免费播放 | 一级片美女| 日韩久久一区二区三区 | 亚洲一区和二区 | 国产色综合视频 | 国产清纯在线 | 天堂色在线| 日本视频二区 | 葵司ssni-879在线播放 | 黄色亚洲视频 | 国产视频成人 | 日本精品视频一区二区三区 | 国产精品视频久久 | 俺也来俺也去俺也射 | av在线片 | 狠狠天天 | 嫩草嫩草嫩草嫩草嫩草 |