video-watermark について
video-watermarkはeach::senseを使う動画の透かし編集スキルで、ブランド表示の追加や既存の透かし除去を行いたい制作者向けです。スタイル、配置、動きの調整に加え、一括処理にも対応します。
主な機能
- 01ロゴや文字の透かし追加
- 02不透明度・スタイル・配置の調整
- 03アニメーションや移動する透かし
- 04動画の透かし除去
- 05複数動画の一括処理
- 06複数ターンでの透かし調整
活用シーン
- 01動画にブランドロゴや著作権表示を追加
- 02半透明の透かし入りプレビューを作成
- 03ライセンス済み素材の透かしを除去
- 04複数動画に統一した表示を適用
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ eachlabs/ skills --skill video-watermarkインストール後、Claude Code で/video-watermarkを入力して読み込まれたか確認します。
同梱ファイルreferences/SSE-EVENTS.md
詳細
動画のウォーターマーク
each::sense を使って、動画にプロ仕様のウォーターマークを追加したり、不要なウォーターマークを削除したりできます。このスキルでは、ロゴの配置、テキストオーバーレイ、アニメーションウォーターマーク、インテリジェントなウォーターマーク削除など、あらゆるニーズに対応します。
機能
- ロゴのウォーターマークを追加:不透明度と位置をカスタマイズして、動画にブランドロゴを配置します
- テキストのウォーターマークを追加:フォント、色、スタイルをカスタマイズして、テキストを重ねます
- 透明なウォーターマーク:コンテンツを妨げない半透明のウォーターマークを追加します
- 位置の調整:ウォーターマークを四隅、中央、または任意の位置に配置します
- アニメーションウォーターマーク:ブランド訴求を強化する、移動または点滅するウォーターマークを追加します
- 動的ウォーターマーク:動画の再生中に位置が変化するウォーターマークを追加します
- ウォーターマークを削除:既存のウォーターマークを動画からインテリジェントに削除します
- TikTok のウォーターマークを削除:動画から TikTok のロゴとユーザー名を削除します
- ストック映像のウォーターマークを除去:ライセンス取得済みのコンテンツから、ストック映像のウォーターマークを削除します
- 一括処理:複数の動画に効率よくウォーターマークを適用します
クイックスタート
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
-H "Content-Type: application/json" \
-H "X-API-Key: $EACHLABS_API_KEY" \
-H "Accept: text/event-stream" \
-d '{
"messages": [{"role": "user", "content": "Add a logo watermark to this video in the bottom right corner with 50% opacity"}],
"model": "eachsense/beta",
"stream": true,
"mode": "max",
"image_urls": ["https://example.com/my-video.mp4", "https://example.com/my-logo.png"]
}'
ウォーターマークの位置の参考
| 位置 | 説明 | 最適な用途 |
|---|---|---|
| 右下 | 最も一般的な配置 | 企業動画、Vlog |
| 左下 | もう一方の隅 | 右下にコンテンツがある場合 |
| 右上 | 上部の隅 | ニュース風、ライブ配信 |
| 左上 | 上部の隅 | ドキュメンタリー風 |
| 中央 | フレームの中央 | プレビュー/下書きのウォーターマーク |
| 全画面 | 動画全体に斜めに配置 | ストック映像の保護 |
使用例
1. ロゴのウォーターマークを追加
配置と不透明度をカスタマイズして、動画にブランドロゴを追加します。
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
-H "Content-Type: application/json" \
-H "X-API-Key: $EACHLABS_API_KEY" \
-H "Accept: text/event-stream" \
-d '{
"messages": [{"role": "user", "content": "Add this logo as a watermark to the video. Place it in the bottom right corner with 40% opacity. Keep the logo small, about 10% of the video width."}],
"model": "eachsense/beta",
"stream": true,
"mode": "max",
"image_urls": ["https://example.com/product-video.mp4", "https://example.com/company-logo.png"]
}'
2. テキストのウォーターマークを追加
著作権表示やチャンネル名などのテキストベースのウォーターマークを追加します。
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
-H "Content-Type: application/json" \
-H "X-API-Key: $EACHLABS_API_KEY" \
-H "Accept: text/event-stream" \
-d '{
"messages": [{"role": "user", "content": "Add a text watermark to this video saying \"Copyright 2024 MyBrand\" in white text with black outline. Position it in the bottom left corner, make it subtle but readable."}],
"model": "eachsense/beta",
"stream": true,
"mode": "max",
"image_urls": ["https://example.com/my-video.mp4"]
}'
3. 透明なウォーターマークを追加
コンテンツを邪魔せずに保護できる、控えめな半透明のウォーターマークを作成します。
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
-H "Content-Type: application/json" \
-H "X-API-Key: $EACHLABS_API_KEY" \
-H "Accept: text/event-stream" \
-d '{
"messages": [{"role": "user", "content": "Add a very subtle transparent watermark with my logo. Use only 20% opacity so it is barely visible but still present. Position in the bottom right corner."}],
"model": "eachsense/beta",
"stream": true,
"mode": "max",
"image_urls": ["https://example.com/cinematic-video.mp4", "https://example.com/watermark-logo.png"]
}'
4. ウォーターマークの位置を調整(隅と中央)
動画のスタイルに合わせて、ウォーターマークの位置を正確に調整します。
# Corner placement for vlog style
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
-H "Content-Type: application/json" \
-H "X-API-Key: $EACHLABS_API_KEY" \
-H "Accept: text/event-stream" \
-d '{
"messages": [{"role": "user", "content": "Add my channel logo in the top left corner of this video. Make it small and semi-transparent. The watermark should have a slight drop shadow for visibility on light backgrounds."}],
"model": "eachsense/beta",
"stream": true,
"mode": "max",
"image_urls": ["https://example.com/vlog-video.mp4", "https://example.com/channel-logo.png"]
}'
# Center placement for preview/draft
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
-H "Content-Type: application/json" \
-H "X-API-Key: $EACHLABS_API_KEY" \
-H "Accept: text/event-stream" \
-d '{
"messages": [{"role": "user", "content": "Add a large DRAFT watermark text diagonally across the center of this video. Use white text with black stroke, 50% opacity. This is for preview purposes."}],
"model": "eachsense/beta",
"stream": true,
"mode": "max",
"image_urls": ["https://example.com/preview-video.mp4"]
}'
5. アニメーションウォーターマーク
注目を集めたり、視覚的な魅力を加えたりする、動きのあるアニメーションウォーターマークを追加します。
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
-H "Content-Type: application/json" \
-H "X-API-Key: $EACHLABS_API_KEY" \
-H "Accept: text/event-stream" \
-d '{
"messages": [{"role": "user", "content": "Add an animated watermark to this video. The logo should have a subtle pulsing glow effect. Place it in the bottom right corner. The animation should loop smoothly every 2 seconds."}],
"model": "eachsense/beta",
"stream": true,
"mode": "max",
"image_urls": ["https://example.com/promo-video.mp4", "https://example.com/animated-logo.gif"]
}'
6. 動画からウォーターマークを削除
動画の品質を保ちながら、既存のウォーターマークをインテリジェントに削除します。
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
-H "Content-Type: application/json" \
-H "X-API-Key: $EACHLABS_API_KEY" \
-H "Accept: text/event-stream" \
-d '{
"messages": [{"role": "user", "content": "Remove the watermark from this video. There is a logo watermark in the bottom right corner that needs to be removed cleanly without affecting the rest of the video."}],
"model": "eachsense/beta",
"stream": true,
"mode": "max",
"image_urls": ["https://example.com/watermarked-video.mp4"]
}'
7. TikTok のウォーターマークを削除
ダウンロードした動画から、TikTok のロゴとユーザー名のウォーターマークを削除します。
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
-H "Content-Type: application/json" \
-H "X-API-Key: $EACHLABS_API_KEY" \
-H "Accept: text/event-stream" \
-d '{
"messages": [{"role": "user", "content": "Remove the TikTok watermark from this video. There is a TikTok logo and username in the corner that needs to be removed. Preserve the original video quality and ensure no artifacts remain."}],
"model": "eachsense/beta",
"stream": true,
"mode": "max",
"image_urls": ["https://example.com/tiktok-video.mp4"]
}'
8. ストック映像のウォーターマークを削除
ライセンスを取得したストック映像から、ウォーターマークを削除します。
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
-H "Content-Type: application/json" \
-H "X-API-Key: $EACHLABS_API_KEY" \
-H "Accept: text/event-stream" \
-d '{
"messages": [{"role": "user", "content": "Remove the stock footage watermark from this video. It has a repeating diagonal text watermark across the entire frame saying the stock site name. I have licensed this footage and need a clean version."}],
"model": "eachsense/beta",
"stream": true,
"mode": "max",
"image_urls": ["https://example.com/stock-footage-preview.mp4"]
}'
9. 動的ウォーターマークを追加(位置を変更)
動画の再生中に移動または位置が変化し、簡単に削除されるのを防ぐウォーターマークを追加します。
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
-H "Content-Type: application/json" \
-H "X-API-Key: $EACHLABS_API_KEY" \
-H "Accept: text/event-stream" \
-d '{
"messages": [{"role": "user", "content": "Add a dynamic watermark to this video that changes position every 5 seconds. The watermark should move between all four corners of the video. Use my logo with 30% opacity. This makes the watermark harder to remove."}],
"model": "eachsense/beta",
"stream": true,
"mode": "max",
"image_urls": ["https://example.com/protected-content.mp4", "https://example.com/brand-logo.png"]
}'
10. 複数の動画にウォーターマークを一括追加
1 回のセッションで、複数の動画に一貫したウォーターマークを適用します。
# First video in batch
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
-H "Content-Type: application/json" \
-H "X-API-Key: $EACHLABS_API_KEY" \
-H "Accept: text/event-stream" \
-d '{
"messages": [{"role": "user", "content": "I need to add the same watermark to multiple videos. Start with this first video. Add my logo in the bottom right corner with 35% opacity. Remember these settings for the next videos."}],
"model": "eachsense/beta",
"stream": true,
"session_id": "batch-watermark-001",
"mode": "eco",
"image_urls": ["https://example.com/video-1.mp4", "https://example.com/company-logo.png"]
}'
# Second video (same session for consistency)
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
-H "Content-Type: application/json" \
-H "X-API-Key: $EACHLABS_API_KEY" \
-H "Accept: text/event-stream" \
-d '{
"messages": [{"role": "user", "content": "Apply the same watermark settings to this second video."}],
"model": "eachsense/beta",
"stream": true,
"session_id": "batch-watermark-001",
"mode": "eco",
"image_urls": ["https://example.com/video-2.mp4"]
}'
# Third video (same session)
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
-H "Content-Type: application/json" \
-H "X-API-Key: $EACHLABS_API_KEY" \
-H "Accept: text/event-stream" \
-d '{
"messages": [{"role": "user", "content": "Apply the same watermark settings to this third video."}],
"model": "eachsense/beta",
"stream": true,
"session_id": "batch-watermark-001",
"mode": "eco",
"image_urls": ["https://example.com/video-3.mp4"]
}'
ベストプラクティス
ウォーターマークの追加
- 不透明度:控えめなブランディングには 20~40%、視認性の高い保護には 50~70%を使用します
- サイズ:プロらしい見た目にするには、ロゴのウォーターマークを動画幅の 5~15%にします
- 位置:通常は下の隅に配置します。下書きやプレビュー以外では中央を避けてください
- コントラスト:さまざまな背景で見やすくするため、ウォーターマークに影や縁取りを追加します
- 一貫性:すべてのコンテンツで同じウォーターマーク設定を使用します
ウォーターマークの削除
- 品質:元の動画の品質が高いほど、削除結果が向上します
- シンプルな背景:単純で均一な領域に重なったウォーターマークは、より簡単に削除できます
- 複数のウォーターマーク:漏れなく削除するため、すべてのウォーターマークの位置を指定します
- 合法的な使用:自分が所有する、またはライセンスを取得したコンテンツからのみウォーターマークを削除してください
モードの選択
生成を始める前に、ユーザーに確認してください:
「高速で低コストな処理と、高品質な処理のどちらを希望しますか?」
| モード | 最適な用途 | 速度 | 品質 |
|---|---|---|---|
max | 最終出力、プロ品質のコンテンツ、ウォーターマークの削除 | 遅め | 最高 |
eco | 一括処理、下書き、配置のテスト | 速め | 良好 |
複数ターンでのウォーターマーク調整
session_idを使用してウォーターマークの配置を調整します。
# Initial watermark
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
-H "Content-Type: application/json" \
-H "X-API-Key: $EACHLABS_API_KEY" \
-H "Accept: text/event-stream" \
-d '{
"messages": [{"role": "user", "content": "Add my logo watermark to this video in the bottom right corner"}],
"model": "eachsense/beta",
"stream": true,
"session_id": "watermark-project-001",
"image_urls": ["https://example.com/my-video.mp4", "https://example.com/logo.png"]
}'
# Adjust based on feedback
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
-H "Content-Type: application/json" \
-H "X-API-Key: $EACHLABS_API_KEY" \
-H "Accept: text/event-stream" \
-d '{
"messages": [{"role": "user", "content": "The watermark is too large and too opaque. Make it 50% smaller and reduce opacity to 25%"}],
"model": "eachsense/beta",
"stream": true,
"session_id": "watermark-project-001"
}'
# Final adjustment
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
-H "Content-Type: application/json" \
-H "X-API-Key: $EACHLABS_API_KEY" \
-H "Accept: text/event-stream" \
-d '{
"messages": [{"role": "user", "content": "Move it slightly more to the center to avoid the video controls overlay area"}],
"model": "eachsense/beta",
"stream": true,
"session_id": "watermark-project-001"
}'
エラー処理
| エラー | 原因 | 解決策 |
|---|---|---|
Failed to create prediction: HTTP 422 | 残高不足 | eachlabs.aiでチャージしてください |
| コンテンツポリシー違反 | 禁止されているコンテンツ | コンテンツが利用規約に準拠していることを確認してください |
| タイムアウト | 動画処理に時間がかかっている | クライアントのタイムアウトを最低10分に設定してください |
| 無効な動画形式 | サポートされていない形式 | MP4、MOV、またはWebMに変換してください |
| ウォーターマークが検出されない | AIがウォーターマークを特定できない | ウォーターマークの位置をより正確に指定してください |
関連するスキル
each-sense- コアAPIのドキュメントvideo-generation- 動画を一から作成video-edit- 一般的な動画編集機能image-edit- 画像のウォーターマーク処理と編集