Wave.video

1.ボタンを作成し、ページに追加する。

ボタンを設定し、ページ上の必要な場所にボタンのコードを配置します。
YOUR_API_KEYを実際のAPIキーに置き換えてください。

ボタンの設定

APIキー
16:9 水平
大型
デフォルト
  1. <スクリプト
  2. (function (d,w,e,c,a) {)
  3.     var cf = w[c] = w[c] || {}; cf.apiKey = a;
  4.     var sc=d.createElement(e),s=d.getElementsByTagName(e)[0];
  5.     sc.async=!0;
  6.     sc.src=cf.embed || 'https://wave.video/editor/embed.js';
  7.     s.parentNode.insertBefore(sc,s);
  8. })(document, window, 'script', 'waveconfig', '');
  9. </script>
  10. <span class="wave-video-button large default"
  11. data-video-format="youtube_horizontal">ビデオを作る</span>。
あなたのボタンプレビュー動画を作る

2.仕組み

ボタンをクリックすると、ページ上のiframe内でWave.videoエディタが起動します。ユーザーはWave.videoにログインするか、アカウントを持っていない場合はサインアップする必要があります。ユーザーがビデオを作成した後、あなたのウェブサイトにビデオを公開します。

エディタからビデオを取得するにはいくつかの方法があります。最も簡単なのは、動画が配置されるビデオタグIDを指定することです。もう1つの方法は、動画の URL とサムネイルを受け取るコールバック関数を提供することです。

3.ボタンをカスタマイズする

あなた自身のスタイルを使用してボタンをカスタマイズすることができますし、私たちの提供するスタイルを使用することもできます。ページ上に複数のボタンを持つことができますが、それらはすべてクラスwave-video-button を持つ必要があります。

各ボタンはデータ属性でさらにカスタマイズできる:

データビデオアイディー

以前に作成されたビデオを編集する方法を提供するビデオのID。

IDはユーザーごとにユニークです。つまり、2人の異なるユーザーが同じIDでエディターを開くと、2つの異なるビデオが作成または編集されます。

データ・ビデオ・フォーマット

ビデオフォーマット。
サポートされている全フォーマットのリストは、https://api.wave.video/project/formats

例:youtube_horizontal

データ検索テキスト

検索クエリは、ストック・ライブラリまたはテンプレートのいずれかです。

もしエディタがテンプレートページから始まるなら、このクエリはテンプレート検索パラメータです。テンプレートページに行き、検索を設定し、urlからすべてのパラメータをコピーしてください。

例えば、URLが

https://wave.video/video-templates?category=%2FUse-Cases%2FVirtual-Backgrounds&name=beach

であるならば、data-search-textは次のように設定されるべきである。

category=%2F使用例%2F仮想背景&name=ビーチ

もしエディターがストック・ライブラリーから始めるなら、このテキストは銘柄を検索するのに使われる。

データ・パブリッシュ・ラベル

デフォルトの "Publish "よりも優先されます。

データ・パブリッシュ・ビデオID

ビデオを受信したビデオタグのID。

ページにvideoタグがある場合、このタグのIDを指定すると、エディタは最終的な動画のURLをこのvideoタグのsrc属性に設定します。

データ・ナビゲーション・ターゲット

select-formats- フォーマットの選択画面でエディターを開きます。
uploads- アップロード画面でエディタを開きます。
edit- 編集画面でエディタを開きます。
templates- テンプレートページからエディタを起動します(デフォルト)。data-search-textを使用して、テンプレートページで検索パラメータを指定できます。

データ・パブリッシュ・コールバック

コールバックグローバル関数。

この関数は、ユーザが動画を保存するときに呼び出される。この関数は、以下のパラメータを指定して呼び出される:

  1. callback_function(ボタン, 結果, エラー)

どこでだ:

button- ボタン要素
result- 動画のURLとサムネイルを含むjson。
error- エラーメッセージ(もしあれば)。

以下は結果のJSONの例である:

  1. {
  2. 「name": "プロジェクト名"、
  3. 「videoUrl": "mp4へのURL"、
  4. "duration":継続時間(秒)、
  5. "width": 映像の幅、
  6. 「height": ビデオの高さ、
  7. "size":ビデオのサイズ(バイト)、
  8. 「fps」:フレーム/秒、
  9. 「format」:「video-format-selected-by-user」、
  10. "サムネイル":[
  11.     { "time":0, "url": "url to thumbnail at time 0" }、
  12.     { "time": 2.2, "url": "url to thumbnail at time 2.2" }、
  13. ]
  14. }

エディタから返されるビデオは3日で期限切れとなることに注意してください。それ以上使用する場合は、このURLからダウンロードしてください。

次の例では、コールバック関数onWavePublish を持つボタンを用意しています。 この関数が呼び出されると、動画ファイルの URL とサムネイルの URL がコンソールに出力されます。

  1. <span id="my-button"
  2.     class="wave-video-button"
  3.     data-video-id="mypost1"
  4.     data-publish-callback="onWavePublish">ビデオを作る</span>。
  5. <スクリプト
  6. 関数onWavePublish(button, result, error) { [ボタン, 結果, エラー
  7. もし (エラー) {。
  8.     alert("エラー: "+error);
  9. } else {
  10.     if (result.videoUrl) {.
  11.         console.log("got video: ", result);
  12.         src = result.videoUrl;
  13.         let name = result.name;
  14.         let duration = result.duration;
  15.         let size = result.size;
  16.         width = result.width;
  17.         高さ = result.height;
  18.         let fps = result.fps;
  19.         let format = result.format;
  20.         k = 0とする;
  21.         for (;k<result.thumbnails.length; k++) {.
  22.             let url = result.thumbnails[k].url;
  23.             let time = result.thumbnails[k].time;
  24.             console.log("thumbnail at "+time+" is "+url");
  25.         }
  26.     } else {
  27.               // 波がパブリッシュされずに閉じられた。
  28.           }
  29.       }
  30.   }
  31.   (function (d,w,e,c,a) {)
  32.       let cf = w[c] = w[c] || {}; cf.apiKey = a;
  33.       var sc=d.createElement(e),s=d.getElementsByTagName(e)[0];sc.async=!0;
  34.       sc.src=cf.embed || 'https://wave.video/editor/embed.js';s.parentNode.insertBefore(sc, s);
  35.   })(document, window, 'script', 'waveconfig', 'YOUR API KEY');
  36. </script>