実装: 字幕

次の例は、YouTube Data API(v3)を使用して字幕に関連する機能を実行する方法を示しています。

動画の字幕トラックのリストを取得する

特定の動画で使用可能な字幕トラックのリストを取得するには、captions.list メソッドを呼び出します。videoId パラメータ値には、字幕を取得する動画を一意に識別する YouTube 動画 ID を設定します。リクエストは OAuth 2.0 を使用して承認する必要があります。

次のリクエストは、Google ストーリーの YouTube チャンネルの動画の字幕のリストを取得します。

https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.captions.list?
part=snippet
&videoId=PRU2ShMzQRg

コードサンプルについては、captions.list メソッドのドキュメントをご覧ください。

字幕トラックを作成する

このクエリは、API Explorer ではテストできません。API Explorer ではファイルのアップロード機能がサポートされていないためです。この機能は、このメソッドの要件です。

API の captions.insert メソッドを使用して、動画の新しい字幕トラックをアップロードできます。トラックをアップロードするときに、次の caption リソース プロパティの値を指定する必要があります。

字幕トラックをアップロードする際に、次の追加オプションを使用できます。

  • sync パラメータを true に設定すると、アップロードされた字幕ファイル内のタイムコードは無視され、字幕の新しいタイムコードが生成されます。

    タイムコードのない文字起こしをアップロードする場合や、ファイル内のタイムコードが正しくないと思われる場合は、YouTube に修正を依頼するために sync パラメータを true に設定する必要があります。

  • caption リソースの snippet.isDraft プロパティを true に設定すると、トラックは一般公開されなくなります。

コードサンプルについては、captions.insert メソッドのドキュメントをご覧ください。

字幕トラックをダウンロードする

API Explorer ではファイルのダウンロードがサポートされていないため、このクエリを API Explorer でテストすることはできません。

特定のキャプション トラックをダウンロードするには、captions.download メソッドを呼び出します。id パラメータの値を、ダウンロードする字幕トラックを一意に識別する YouTube 字幕トラック ID に設定します。リクエストは OAuth 2.0 を使用して承認する必要があります。

v3 API は次のオプションをサポートしています。

  • 字幕トラックを特定の形式で返すように指定するには、tfmt パラメータ値を設定して目的の形式を識別します。パラメータ定義には、サポートされている値がリストされます。

  • 字幕トラックの翻訳を取得するには、tlang パラメータの値を、目的の字幕言語を識別する ISO 639-1 2 文字言語コードに設定します。翻訳は、Google 翻訳などの機械翻訳を使用して生成されます。

コードサンプルについては、captions.download メソッドのドキュメントをご覧ください。

字幕トラックを更新する

この API は、字幕トラックの下書きステータスの変更、ファイルの新しい字幕トラックのアップロード、またはその両方をサポートしています。

API Explorer を使用して、トラックのドラフト ステータスを変更する機能をテストできます。ただし、API Explorer ではファイルをアップロードできないため、実際のキャプション トラックを更新することはできません。

次のリクエストは、Google ストーリーの YouTube チャンネルの動画の字幕のリストを取得します。

このリクエストにより、字幕トラックの下書きステータスが true に更新されます。つまり、トラックは一般公開されなくなります。APIs Explorer でリクエストを完了するには、字幕トラックを識別するように id プロパティの値を設定する必要があります。

https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.captions.update?
part=snippet

コードサンプルについては、captions.update メソッドのドキュメントをご覧ください。

字幕トラックを削除する

この例では、字幕トラックを削除する方法を示します。この例では、次の手順を説明します。

  • ステップ 1: 字幕トラック ID を取得する

    上記の手順に沿って、動画の字幕トラックのリストを取得します。このリストを使用して、各トラックの ID をキーとして字幕トラックのリストを表示できます。

  • ステップ 2: トラックを削除する

    captions.delete メソッドを呼び出して、特定の動画を削除します。リクエストの id パラメータには、削除するトラックの字幕トラック ID を指定します。リクエストは OAuth 2.0 を使用して承認する必要があります。API Explorer でこのクエリをテストする場合は、id パラメータ値に有効な字幕トラック ID を指定する必要があります。

    https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.captions.delete?
    id=CAPTION_TRACK_ID