ffmpeg 9.95 overlay
How to add transparent watermark in center of a video with ffmpeg?
先參考這篇筆記
【Linux】在 CentOS 以 ffmpeginstaller 安裝 ffmpeg 相關套件
確定需要的套件都安裝了。
[user]$ ffmpeg -i 原影片檔名 -i 浮水印檔名 -filter_complex "overlay=5:5" 輸出檔名
例如:
[user]$ ffmpeg -i test.mp4 -i watermark.png -filter_complex "overlay=5:5" target.mp4
其中 overlay=5:5,數字是 X座標:Y座標(0,0 是左上角)
浮水印檔不必與原影片檔在同一目錄,不過放同目錄可以少打一些字 ;-)。
原影片檔 與 輸出檔 的 檔名不可相同,否則會回應錯誤。
ffmpeg 會依副檔名自動轉換影片格式,所以不要任意改副檔名。
注意:
若您加浮水印的影片是 mp4,且要放在 DarwinStreaming Server 做線上影音播放,那就還要為影片加 hint
[user]$ MP4Box 影片檔名.mp4 -hint (注意大小寫)
============================================================
以下是舊筆記
============================================================
加上文字浮水印 ----
* 先以
[user]$ locate drawtext.so
或
[user]$ find / -name drawtext.so
找到 drawtext.so 的位置, 例如 --
/usr/lib/vhook
* 再找到要使用的字型, 例如 --
/usr/share/fonts/chinese/TrueType/uming.ttf
[user]$ ffmpeg -i 原始影片 -vhook '/usr/lib/vhook/drawtext.so -f /usr/share/fonts/chinese/TrueType/uming.ttf -t TEST -x 5 -y 5 -c #FFFF00 -C #00FFFF' -f mpeg 輸出影片
參數說明:
-t 為要打上的浮水印文字內容, 此例為 TEST
-x 浮水印的 x 座標位置
-y 浮水印的 y 座標位置
-c(小寫) 字的顏色
-C(大寫) 字的背景顏色
-f 要輸出的影片格式, 為選擇性參數, 若不加此參數, 可輸出的影片格式與原始影片相同, 不過我以一段 wmv 影片測試, 發現雖加上了浮水印, 但輸出的影片以 MediaPlayer 播放時, 變成無法任選要從哪個點看.
ffmpeg -formats 會列出支援的格式, 在這邊看不到輸出的格式有支援 wmv, 所以就將影片轉為 mpeg, 就可任選播放點了.
加上圖片浮水印 ----
[user]$ ffmpeg -i 原始影片 -vhook '/usr/lib/vhook/watermark.so -f 圖片' -f mpeg 輸出影片
ffmpeg 會將要做為浮水印的圖片放大到與影片尺寸一樣, 並呈半透明狀; 例如: 影片尺寸為 640*480, 而浮水印為 150*90, 則轉出的影片浮水印仍會放大為 640*480.
這是張 ffmpeg 做為浮水印範例的圖片 ----
http://engene.se/ffmpeg_watermark.gif
所以若要在右上角加上浮水印, 則應製作一張大小為 640*480 的圖, 在圖右上角放您要顯示的 logo.
相關筆記 ----
【Linux】在 CentOS 以 ffmpeginstaller 安裝 ffmpeg 相關套件
-t 為要打上的浮水印文字內容, 此例為 TEST
-x 浮水印的 x 座標位置
-y 浮水印的 y 座標位置
-c(小寫) 字的顏色
-C(大寫) 字的背景顏色
-f 要輸出的影片格式, 為選擇性參數, 若不加此參數, 可輸出的影片格式與原始影片相同, 不過我以一段 wmv 影片測試, 發現雖加上了浮水印, 但輸出的影片以 MediaPlayer 播放時, 變成無法任選要從哪個點看.
ffmpeg -formats 會列出支援的格式, 在這邊看不到輸出的格式有支援 wmv, 所以就將影片轉為 mpeg, 就可任選播放點了.
加上圖片浮水印 ----
[user]$ ffmpeg -i 原始影片 -vhook '/usr/lib/vhook/watermark.so -f 圖片' -f mpeg 輸出影片
ffmpeg 會將要做為浮水印的圖片放大到與影片尺寸一樣, 並呈半透明狀; 例如: 影片尺寸為 640*480, 而浮水印為 150*90, 則轉出的影片浮水印仍會放大為 640*480.
這是張 ffmpeg 做為浮水印範例的圖片 ----
http://engene.se/ffmpeg_watermark.gif
所以若要在右上角加上浮水印, 則應製作一張大小為 640*480 的圖, 在圖右上角放您要顯示的 logo.
相關筆記 ----
【Linux】在 CentOS 以 ffmpeginstaller 安裝 ffmpeg 相關套件
沒有留言:
張貼留言