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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

3、FFmpeg 过滤器

發布時間:2023/12/31 编程问答 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 3、FFmpeg 过滤器 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

FFmpeg 過濾器

在編碼之前,FFmpeg 可以使用 libavfilter 庫中的過濾器處理原始音頻和視頻幀。幾個鏈式過濾器行程一個過濾圖像。

FFmpeg中的filter包含三個層次,filter -> filterchain -> filtergraph。

在多媒體處理中,filter的意思是被編碼到輸出文件之前用來修改輸入文件的內容到一個軟件工具。如:視頻翻轉、旋轉、縮放等。

1、filter

在簡單過濾器中,只包含一個輸入和一個輸出,并且輸入輸出是同一類型。在下面的處理過程中,僅僅是在解碼和編碼之前加上了一個額外的過濾步驟。簡單過濾器有 per-stream-filter 參數(視頻為-vf, 音頻為-af)配置。

(1)視頻過濾器 -vf

# 如testsrc視頻按順時針方向旋轉90度 ffplay -f lavfi -i testsrc -vf transpose=1# 如testsrc視頻水平翻轉(左右翻轉) ffplay -f lavfi -i testsrc -vf hflip

(2)音頻過濾器 -af

# 實現慢速播放,聲音速度是原始速度的50% ffplay p629100.mp3 -af atempo=0.5

2、filterchain

filterchain 不是簡單的將線性操作鏈應用于一個流(上面的簡單過濾器便是如此)。例如,當圖形有多個輸入和/或輸出,或者當輸出流類型與輸入不同時,就是這種情況。

基本用法:

Filterchain = 逗號分隔的一組filter“filter1,filter2,filter3,…filterN-2,filterN-1,filterN”

順時針旋轉90度并水平翻轉:

ffplay -f lavfi -i testsrc -vf transpose=1,hflip

復雜的過濾器圖使用-filter_complex選項進行配置。 請注意,此選項是全局性的,因為復雜的過濾器圖形本質上不能與單個流或文件明確關聯。-lavfi選項等同于-filter_complex。

3、filtergraph

基本語法:

Filtergraph = 分號分隔的一組filterchain 語法: “filterchain1;filterchain2;…filterchainN-1;filterchainN”

Filtergraph的分類:

  • 1、簡單(simple)一對一
  • 2、負責(complex)多對一,多對多

一個復雜的過濾器圖的一個簡單的例子是覆蓋過濾器,它有兩個視頻輸入和一個視頻輸出,包含一個視頻疊加在另一個上面。 它的音頻對應是amix濾波器。

4、經典的 filter

(1)音頻 filter

過濾器描述
adelay實現不同聲道的延時處理。使用參數如adelay=1500|0|500,這個例子中實現了第一個聲道的延遲 1.5
aecho實現回聲效果
amerge將多個音頻流合并成一個多聲道音頻流
ashowinfo顯示每一個 audio frame 信息
pan特定聲道處理,比如立體聲變為單聲道,或者通過特定參數修改聲道或交換聲道。主要有兩大類:
混音處理,比如下面的例子pan=1c|c0=0.9*c0+0.1*c1,實現立體聲到單聲道的變換;
聲道變換,比如5.1聲道順序調整,pan=“5.1 | c0=c1 | c1=c0 | c2=c2 | c3=c3 | c4=c4 | c5=c5”
silencedetech 和 silenceremove根據特定參數檢測靜音和移除靜音
volume 和 volumedetect這兩個filter分別實現音量調整和音量檢測

(2)視頻 filter

參數描述
blend tblend將兩幀視頻合并為一幀
crop按照特定分辨率裁剪輸入視頻
drawbox drawgrid drawtext繪制 box(對話框) grid(表格) text(文本)
fps按照指定幀率輸出視頻幀(丟幀或復制)
hflip vflip水平和垂直鏡像
overlay視頻疊加
rotate視頻任意角度旋轉
showinfo顯示視頻的參數信息,比如時間戳,采樣格式,幀類型等
subtitles使用 libass 庫繪制 subtitle(字幕)
transpose圖像轉置
scale使用 libswscale 庫完成視頻縮放
thumbnail提取縮略圖

(3)多媒體 filter

參數描述
ahistogram將音頻轉換為視頻輸出,并顯示為音量的直方圖
concat將音頻流、視頻流拼接成一個
metadata ametadata操作 metadata 信息
setpts asetpts改變輸入音頻幀或視頻幀的 pts
showfreqs showspectrum showspertrumpic showvolume showwaves將輸入音頻轉換為視頻顯示,并顯示頻譜、音量等信息
split asplit將輸入切分為多個相同的輸出
movie amovie
從 movie 容器中讀取音頻或視頻

總結

以上是生活随笔為你收集整理的3、FFmpeg 过滤器的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。