5

vhook サブシステムが FFMPEG の最新バージョンから削除されたので、動画に透かしを追加するにはどうすればよいですか?

PNG を背景の透明度でオーバーレイできるようにする必要があります。

4

4 に答える 4

4

Xuggler を使用すると、Java でこれを行うことができます。IMediaTool を使用してビデオをエンコードすると、一連の画像が得られます。これらの画像を使用して、これらの各画像にウォーター マークを配置し、出力ビデオを生成します。以下はコードブロックです

BufferedImage imageB = event.getImage();

/*....................... water mark .........................*/
Graphics2D g2d = (Graphics2D) imageB.getGraphics();
g2d.drawImage(imageB, 0, 0, null);

//Create an alpha composite of 50%
AlphaComposite alpha = AlphaComposite.getInstance(AlphaComposite.SRC_OVER, 1.0f);
g2d.setComposite(alpha); 

g2d.setColor(Color.YELLOW);


g2d.setRenderingHint(RenderingHints.KEY_TEXT_ANTIALIASING,
RenderingHints.VALUE_TEXT_ANTIALIAS_ON);

g2d.setFont(new Font("Arial", Font.BOLD, 30));

String watermark = "Sample water mark";

FontMetrics fontMetrics = g2d.getFontMetrics();
Rectangle2D rect = fontMetrics.getStringBounds(watermark, g2d);
yScrolling = imageB.getHeight() - (int) rect.getHeight() / 2;

g2d.drawString(watermark, (imageB.getWidth() - (int) rect.getWidth()) / 2,
                         (imageB.getHeight() - (int) rect.getHeight()) / 2);
g2d.drawString(watermark, xScrolling,yScrolling);

//Free graphic resources
g2d.dispose(); 

 /*....................... water mark .........................*/
于 2009-11-23T08:41:52.847 に答える
2

公式の git リポジトリから ffmpeg をコンパイルする場合、新しいバージョンでは構文が少し変更されているため、おそらく構文に注意する必要があります。

ffmpeg -i input.mp4 -acodec copy -vf "movie=0:png:watermark.png [wm];[in][wm] overlay=5:5:1 [out]" -f mp4 -b 2500k -vcodec libx264 -vpre fast -ac 1 -y output.mp4

新しい

ffmpeg -i input.mp4 -acodec copy -vf "movie=watermark.png [wm];[in][wm] overlay=5:5 [out]" -f mp4 -b 2500k -vcodec libx264 -vpre fast -ac 1 -y output.mp4
于 2012-04-03T20:48:43.127 に答える
1

私が到達できた最高のものはhttp://www.corbellconsulting.com/2010/07/using-ffmpeg-to-add-and-watermark-overlay-on-a-video-2/でした

しかし、ffmpeg0.6.2で動作させることができません。

幸運を。

于 2010-08-28T11:28:35.803 に答える
0

Javaに精通している場合は、Xugglerを使用してこれを行うことができます。特に、XugglerのMediaTool APIのチュートリアルでは、ビデオをデコードおよびエンコードする方法と、作成した画像を使用してビデオを最初から作成する方法を個別に示しています。これらの概念を組み合わせて、ビデオをデコードし、ビデオにPNGをオーバーレイして、再エンコードできるプログラムを作成することは難しくありません。

于 2009-11-06T18:00:26.140 に答える