video
リソースは YouTube 動画を表します。
メソッド
この API では、videos
リソースについて以下のメソッドがサポートされています。
リソース表現
下記の JSON の構造体は、videos
リソースの形式を示したものです。
{ "kind": "youtube#video", "etag": etag, "id": string, "snippet": { "publishedAt": datetime, "channelId": string, "title": string, "description": string, "thumbnails": { (key): { "url": string, "width": unsigned integer, "height": unsigned integer } }, "channelTitle": string, "tags": [ string ], "categoryId": string }, "contentDetails": { "duration": string, "dimension": string, "definition": string, "caption": string, "licensedContent": boolean, "regionRestriction": { "allowed": [ string ], "blocked": [ string ] }, "contentRating": { "mpaaRating": string, "tvpgRating": string, "bbfcRating": string, "chvrsRating": string, "eirinRating": string, "cbfcRating": string, "fmocRating": string, "icaaRating": string, "acbRating": string, "oflcRating": string, "fskRating": string, "kmrbRating": string, "djctqRating": string, "russiaRating": string, "rtcRating": string, "ytRating": string } }, "status": { "uploadStatus": string, "failureReason": string, "rejectionReason": string, "privacyStatus": string, "license": string, "embeddable": boolean, "publicStatsViewable": boolean }, "statistics": { "viewCount": unsigned long, "likeCount": unsigned long, "dislikeCount": unsigned long, "favoriteCount": unsigned long, "commentCount": unsigned long }, "player": { "embedHtml": string }, "topicDetails": { "topicIds": [ string ], "relevantTopicIds": [ string ] }, "recordingDetails": { "locationDescription": string, "location": { "latitude": double, "longitude": double, "altitude": double }, "recordingDate": datetime }, "fileDetails": { "fileName": string, "fileSize": unsigned long, "fileType": string, "container": string, "videoStreams": [ { "widthPixels": unsigned integer, "heightPixels": unsigned integer, "frameRateFps": double, "aspectRatio": double, "codec": string, "bitrateBps": unsigned long, "rotation": string, "vendor": string } ], "audioStreams": [ { "channelCount": unsigned integer, "codec": string, "bitrateBps": unsigned long, "vendor": string } ], "durationMs": unsigned long, "bitrateBps": unsigned long, "recordingLocation": { "latitude": double, "longitude": double, "altitude": double }, "creationTime": string }, "processingDetails": { "processingStatus": string, "processingProgress": { "partsTotal": unsigned long, "partsProcessed": unsigned long, "timeLeftMs": unsigned long }, "processingFailureReason": string, "fileDetailsAvailability": string, "processingIssuesAvailability": string, "tagSuggestionsAvailability": string, "editorSuggestionsAvailability": string, "thumbnailsAvailability": string }, "suggestions": { "processingErrors": [ string ], "processingWarnings": [ string ], "processingHints": [ string ], "tagSuggestions": [ { "tag": string, "categoryRestricts": [ string ] } ], "editorSuggestions": [ string ] } }
プロパティ
次の表は、このリソースで使用されているプロパティの定義を示したものです。
プロパティ | |
---|---|
kind |
string API リソースのタイプ。値は youtube#video です。 |
etag |
etag このリソースの Etag。 |
id |
string 動画を一意に識別するために YouTube によって使用される ID。 |
snippet |
object snippet オブジェクトには、動画の基本的な情報(タイトル、説明、カテゴリなど)が格納されます。 |
snippet.publishedAt |
datetime 動画のアップロード日時。値は ISO 8601( YYYY-MM-DDThh:mm:ss.sZ )形式で指定します。 |
snippet.channelId |
string 動画のアップロード先チャンネルを一意に識別するために YouTube によって使用される ID。 |
snippet.title |
string 動画のタイトル。 |
snippet.description |
string 動画の説明。 |
snippet.thumbnails |
object 動画に関連付けられているサムネイル画像のマップ。マップ内の各オブジェクトでは、キーはサムネイル画像の名前で、値はサムネイルに関するその他の情報を含むオブジェクトになります。 |
snippet.thumbnails.(key) |
object 有効なキー値は次のとおりです。
|
snippet.thumbnails.(key).url |
string 画像の URL。 |
snippet.thumbnails.(key).width |
unsigned integer 画像の幅。 |
snippet.thumbnails.(key).height |
unsigned integer 画像の高さ。 |
snippet.channelTitle |
string 動画が属するチャンネルのチャンネル タイトル。 |
snippet.tags[] |
list 動画に関連付けられているキーワード タグのリスト。タグにはスペースを含めることができます。このフィールドを認識できるのは、動画をアップロードしたユーザーのみです。 |
snippet.categoryId |
string 動画に関連付けられている YouTube の動画カテゴリ。 |
contentDetails |
object contentDetails オブジェクトには、動画の長さとアスペクト比を含む、動画コンテンツに関する情報が格納されます。 |
contentDetails.duration |
string 動画の長さ。このタグの値は、ISO 8601 に従って、持続期間を PT#M#S の形式で表したものです。文字 PT は期間を表す値、文字 M は分数、S は秒数を示します。文字 M と S の前に付く # はどちらも整数値で、動画の長さを分または秒単位で指定します。たとえば、PT15M51S という値は、動画の長さが 15 分 51 秒であることを示します。 |
contentDetails.dimension |
string 動画が 2D 形式か、3D 形式かを示します。 |
contentDetails.definition |
string 動画に高解像度( HD )版があるか、標準画質版のみかを示します。このプロパティで有効な値は以下のとおりです。
|
contentDetails.caption |
string 動画にキャプションが付いているかどうかを示します。 このプロパティで有効な値は以下のとおりです。
|
contentDetails.licensedContent |
boolean 動画が使用許可のあるコンテンツかどうか、つまり YouTube コンテンツ パートナーにより申し立てが行われているかどうかを示します。 |
contentDetails.regionRestriction |
object regionRestriction オブジェクトには、動画を視聴可能(または不可能)な国に関する情報が格納されます。このオブジェクトには、contentDetails.regionRestriction.allowed プロパティまたは contentDetails.regionRestriction.blocked プロパティが含まれます。 |
contentDetails.regionRestriction.allowed[] |
list 動画を視聴できる国を表す地域コードのリスト。このプロパティが指定されている場合、値にリストされていない国では、その動画の表示がブロックされます。このプロパティが指定されていて、リストが空の場合、動画はすべての国でブロックされます。 |
contentDetails.regionRestriction.blocked[] |
list 動画がブロックされる国を表す地域コードのリスト。このプロパティが指定されている場合、値にリストされていない国では、その動画を視聴できます。このプロパティが指定されていて、リストが空の場合、動画はすべての国で視聴可能です。 |
contentDetails.contentRating |
object さまざまな規格に従って分類された動画のレーティングを指定します。 |
contentDetails.contentRating.mpaaRating |
string アメリカ映画協会(MPAA)による動画のレーティング。 このプロパティで有効な値は以下のとおりです。
|
contentDetails.contentRating.tvpgRating |
string アメリカの TV Parental Guidelines(TVPG)による動画のレーティング。 このプロパティで有効な値は以下のとおりです。
|
contentDetails.contentRating.bbfcRating |
string イギリスの全英映像等級審査機構(BBFC)による動画のレーティング。 このプロパティで有効な値は以下のとおりです。
|
contentDetails.contentRating.chvrsRating |
string カナダの Canadian Home Video Rating System(CHVRS)による動画のレーティング。 このプロパティで有効な値は以下のとおりです。
|
contentDetails.contentRating.eirinRating |
string 映倫による動画のレーティング。映倫は日本のレーティング システムです。 このプロパティで有効な値は以下のとおりです。
|
contentDetails.contentRating.cbfcRating |
string インドの Central Board of Film Certification(CBFC)による動画のレーティング。 このプロパティで有効な値は以下のとおりです。
|
contentDetails.contentRating.fmocRating |
string フランス国立映画・動画センター(CNC)による動画のレーティング。 このプロパティで有効な値は以下のとおりです。
|
contentDetails.contentRating.icaaRating |
string スペインの Instituto de la Cinematografía y de las Artes Audiovisuales(ICAA)による動画のレーティング。 このプロパティで有効な値は以下のとおりです。
|
contentDetails.contentRating.acbRating |
string オーストラリアの Australian Classification Board(ACB)による動画のレーティング。 このプロパティで有効な値は以下のとおりです。
|
contentDetails.contentRating.oflcRating |
string ニュージーランドのフィルム・文献分類管理局(OFLC)による動画のレーティング。 このプロパティで有効な値は以下のとおりです。
|
contentDetails.contentRating.fskRating |
string ドイツの Freiwillige Selbstkontrolle der Filmwirtschaft(FSK)による動画のレーティング。 このプロパティで有効な値は以下のとおりです。
|
contentDetails.contentRating.kmrbRating |
string 韓国の映像物等級委員会(KMRB)による動画のレーティング。KMRB は韓国で動画の評価を行う団体です。 このプロパティで有効な値は以下のとおりです。
|
contentDetails.contentRating.djctqRating |
string ブラジルの Departamento de Justiça, Classificação, Qualificação e Títulos(DJCQT)による動画のレーティング。 このプロパティで有効な値は以下のとおりです。
|
contentDetails.contentRating.russiaRating |
string ロシアの National Film Registry of the Russian Federation(MKRF)による動画のレーティング。 このプロパティで有効な値は以下のとおりです。
|
contentDetails.contentRating.rtcRating |
string メキシコの General Directorate of Radio, Television and Cinematography(RTC)による動画のレーティング。 このプロパティで有効な値は以下のとおりです。
|
contentDetails.contentRating.ytRating |
string YouTube が年齢制限のあるコンテンツを示すために使用するレーティング。 このプロパティで有効な値は以下のとおりです。
|
status |
object status オブジェクトには、動画のアップロード、処理、プライバシーのステータスに関する情報が格納されます。 |
status.uploadStatus |
string アップロードされた動画のステータス。 このプロパティで有効な値は以下のとおりです。
|
status.failureReason |
string この値は、動画のアップロードに失敗した理由の説明です。このプロパティが使用されるのは、 uploadStatus プロパティがアップロードの失敗を示している場合だけです。このプロパティで有効な値は以下のとおりです。
|
status.rejectionReason |
string この値は、YouTube がアップロードされた動画を却下した理由の説明です。このプロパティが使用されるのは、 uploadStatus プロパティがアップロードの却下を示している場合だけです。このプロパティで有効な値は以下のとおりです。
|
status.privacyStatus |
string 動画のプライバシー ステータス。 このプロパティで有効な値は以下のとおりです。
|
status.license |
string 動画のライセンス。 このプロパティで有効な値は以下のとおりです。
|
status.embeddable |
boolean この値は、動画を別の Web サイトに埋め込むことができるかどうかを示します。 |
status.publicStatsViewable |
boolean この値は、その動画の動画再生ページで拡張統計情報が一般公開されているかどうかを示します。デフォルトでは、統計情報が表示されます。このプロパティの値が false に設定されている場合でも、動画の再生回数や評価などの統計情報は一般公開されます。 |
statistics |
object statistics オブジェクトには、動画に関する統計情報が格納されます。 |
statistics.viewCount |
unsigned long これまでに動画が再生された回数。 |
statistics.likeCount |
unsigned long [高く評価] ボタンを押して動画を高く評価したユーザーの数。 |
statistics.dislikeCount |
unsigned long [低く評価] ボタンを押して動画を低く評価したユーザーの数。 |
statistics.favoriteCount |
unsigned long その時点で動画をお気に入りに登録しているユーザーの数。 |
statistics.commentCount |
unsigned long 動画に対するコメントの数。 |
player |
object player オブジェクトには、埋め込みプレーヤーでの動画の再生に使用される情報が格納されます。 |
player.embedHtml |
string 動画を再生するプレーヤーを埋め込むための <iframe> タグ。 |
topicDetails |
object topicDetails オブジェクトは、動画に関連付けられている Freebase トピックに関する情報をカプセル化します。 |
topicDetails.topicIds[] |
list 動画に関連付けられている中心的な Freebase トピック ID のリスト。これらのトピックは動画で中心的に取り上げられているもので、この動画の主な題材であると言えます。各トピックに関する情報を取得するには、Freebase Topic API を使用します。 |
topicDetails.relevantTopicIds[] |
list topic_id と似ていますが、これらのトピックは単に動画と関連しているにすぎません。動画で言及されている、または表示されている可能性のあるトピックです。各トピックに関する情報を取得するには、Freebase Topic API を使用します。 |
recordingDetails |
object recordingDetails オブジェクトは、動画が録画された場所、日付、住所に関する情報をカプセル化します。 |
recordingDetails.locationDescription |
string 動画が録画された場所を文字で説明したもの。 |
recordingDetails.location |
object 動画に関連付けられている位置情報。 |
recordingDetails.location.latitude |
double 緯度。 |
recordingDetails.location.longitude |
double 経度。 |
recordingDetails.location.altitude |
double 準拠楕円体からの高度(メートル単位)。 |
recordingDetails.recordingDate |
datetime 動画が録画された日付と時刻。値は ISO 8601( YYYY-MM-DDThh:mm:ss.sZ )形式で指定します。 |
fileDetails |
object fileDetails オブジェクトは、ファイルの解像度、長さ、オーディオと動画のコーデック、ストリーミングのビットレートなど、YouTube にアップロードした動画ファイルに関する情報をカプセル化します。このデータを取得できるのは動画の所有者のみです。 |
fileDetails.fileName |
string アップロードされたファイルの名前。このフィールドは、アップロードされたのが動画ファイルか別のタイプのファイルかに関係なく存在します。 |
fileDetails.fileSize |
unsigned long アップロードされたファイルのサイズ(バイト単位)。このフィールドは、アップロードされたのが動画ファイルか別のタイプのファイルかに関係なく存在します。 |
fileDetails.fileType |
string アップロードされたファイルのタイプ。YouTube のビデオ処理エンジンにより検出されたタイプです。現時点では、YouTube が処理するのは動画ファイルのみですが、このフィールドは、アップロードされたのが動画ファイルか別のタイプのファイルかに関係なく存在します。 このプロパティで有効な値は以下のとおりです。
|
fileDetails.container |
string アップロードされた動画ファイルのコンテナ形式。 |
fileDetails.videoStreams[] |
list アップロードされた動画ファイルに含まれている動画ストリームのリスト。リスト内の各アイテムには、動画ストリームに関する詳細なメタデータが含まれています。 |
fileDetails.videoStreams[].widthPixels |
unsigned integer エンコードされた動画コンテンツの幅(ピクセル単位)。動画のアスペクト比は、 width_pixels / height_pixels で計算できます。 |
fileDetails.videoStreams[].heightPixels |
unsigned integer エンコードされた動画コンテンツの高さ(ピクセル単位)。 |
fileDetails.videoStreams[].frameRateFps |
double 動画ストリームのフレーム レート(1 秒あたりのフレーム数)。 |
fileDetails.videoStreams[].aspectRatio |
double 動画コンテンツの表示アスペクト比。動画は必ずこのアスペクト比で表示されます。 |
fileDetails.videoStreams[].codec |
string ストリームによって使用される動画コーデック。 |
fileDetails.videoStreams[].bitrateBps |
unsigned long 動画ストリームのビットレート(1 秒あたりのビット数)。 |
fileDetails.videoStreams[].rotation |
string 動画を適切に表示するためにオリジナルのソース コンテンツを回転させる角度。 このプロパティで有効な値は以下のとおりです。
|
fileDetails.videoStreams[].vendor |
string 動画ベンダーを一意に識別する値。通常、この値は 4 文字のベンダー コードです。 |
fileDetails.audioStreams[] |
list アップロードされた動画ファイルに含まれるオーディオ ストリームのリスト。リストの各アイテムには、オーディオ ストリームに関する詳細なメタデータが含まれます。 |
fileDetails.audioStreams[].channelCount |
unsigned integer ストリームに含まれるオーディオ チャンネルの数。 |
fileDetails.audioStreams[].codec |
string ストリームに使用されるオーディオ コーデック。 |
fileDetails.audioStreams[].bitrateBps |
unsigned long オーディオ ストリームのビットレート(1 秒あたりのビット数)。 |
fileDetails.audioStreams[].vendor |
string 動画ベンダーを一意に識別する値。通常、この値は 4 文字のベンダー コードです。 |
fileDetails.durationMs |
unsigned long アップロードされた動画の長さ(ミリ秒単位)。 |
fileDetails.bitrateBps |
unsigned long アップロードされた動画ファイルの動画とオーディオを合わせたビットレート(1 秒あたりのビット数)。 |
fileDetails.recordingLocation |
object アップロードされた動画が録画された場所を特定する地理的座標。座標は、WGS 84 を使用して定義されています。 |
fileDetails.recordingLocation.latitude |
double 緯度。 |
fileDetails.recordingLocation.longitude |
double 経度。 |
fileDetails.recordingLocation.altitude |
double 準拠楕円体からの高度(メートル単位)。 |
fileDetails.creationTime |
string アップロードされた動画ファイルの作成日時。この値は ISO 8601 形式で指定します。現在、以下の ISO 8601 形式がサポートされています。
|
processingDetails |
object processingProgress オブジェクトは、YouTube にアップロードされた動画ファイルの処理の進捗状況に関する情報をカプセル化します。このオブジェクトのプロパティは、現在の処理ステータスと、YouTube が動画の処理を完了するまでの予想残り時間を表します。また、この部分は、ファイルの詳細やサムネイル画像など、さまざまなタイプのデータやコンテンツを動画で利用できるかどうかも示しています。processingProgress オブジェクトは、このオブジェクトをポーリングすることにより、アップロードされた動画が、その動画ファイルの処理に関する YouTube による進捗状況を追跡できるように設計されています。このデータを取得できるのは動画の所有者のみです。 |
processingDetails.processingStatus |
string 動画の処理ステータス。この値は、YouTube が動画の処理を完了したか、または動画の処理中であるかどうかを示します。 このプロパティで有効な値は以下のとおりです。
|
processingDetails.processingProgress |
object processingProgress オブジェクトには、YouTube による動画処理の進捗状況に関する情報が格納されます。この値は、動画の処理ステータスが processing である場合のみ有効です。 |
processingDetails.processingProgress.partsTotal |
unsigned long 動画の処理に必要なパーツの予測総数。この予測値は YouTube による動画の処理が進むに従って更新され、より正確な値になる場合があります。 |
processingDetails.processingProgress.partsProcessed |
unsigned long YouTube による処理が完了した動画のパーツ数。YouTube による処理が完了した動画の割合を見積もるには、次の式を使って計算します。 100 * parts_processed / parts_total ただし、予測パーツ数が増加しても、処理が完了したパーツ数はそれに対応して増加するとは限らないため、YouTube による動画処理が進行していても、計算された進捗状況が定期的に後退する可能性があります。 |
processingDetails.processingProgress.timeLeftMs |
unsigned long YouTube が動画の処理を完了するまでに必要とする時間の予測値(ミリ秒単位)。 |
processingDetails.processingFailureReason |
string YouTube が動画の処理に失敗した理由。このプロパティは、 processingStatus プロパティの値が failed である場合のみ値を持ちます。このプロパティで有効な値は以下のとおりです。
|
processingDetails.fileDetailsAvailability |
string この値は、アップロードされた動画でファイルの詳細を使用できるかどうかを示します。動画ファイルの詳細を取得するには、 videos.list() リクエストで fileDetails パートをリクエストします。 |
processingDetails.processingIssuesAvailability |
string この値は、動画処理エンジンが、YouTube の動画処理能力を向上させる可能性のある提案、動画処理の問題を説明する警告、または動画処理で問題を引き起こすエラーを生成したかどうかを示します。これらの提案を取得するには、 videos.list() リクエストで suggestions パーツをリクエストします。 |
processingDetails.tagSuggestionsAvailability |
string この値は、動画でキーワード(タグ)提案を使用できるかどうかを示します。タグを動画のメタデータに追加すると、他のユーザーがその動画を検索しやすくなります。これらの提案を取得するには、 videos.list() リクエストで suggestions パーツをリクエストします。 |
processingDetails.editorSuggestionsAvailability |
string この値は、この動画に対して、動画品質や再生体験を向上させる動画編集の提案があるかどうかを示します。これらの提案を取得するには、 videos.list() リクエストで suggestions パーツをリクエストします。 |
processingDetails.thumbnailsAvailability |
string この値は、動画に対してサムネイル画像が生成されているかどうかを示します。 |
suggestions |
object suggestions オブジェクトは、アップロード済み動画の動画品質を向上させる方法やメタデータを示す提案をカプセル化します。このデータを取得できるのは動画の所有者のみです。 |
suggestions.processingErrors[] |
list YouTube によるアップロード済み動画の正常な処理を妨げるエラーのリスト。これらのエラーは、その時点での動画の処理ステータスに関係なく、最終的にはほぼ確実にステータスが failed になることを示しています。このプロパティで有効な値は以下のとおりです。
|
suggestions.processingWarnings[] |
list YouTube によるアップロード済み動画の変換が困難である理由、または変換結果で問題が発生する可能性のある理由のリスト。このような警告は、YouTube が実際にアップロード済み動画ファイルを処理する前に生成されます。また、特定された問題は必ずしも動画処理の失敗を示すわけではありませんが、同期、動画アーチファクト、オーディオ トラック不足などの原因となる可能性もあります。 このプロパティで有効な値は以下のとおりです。
|
suggestions.processingHints[] |
list YouTube による動画処理能力を向上させる可能性のある提案のリスト。 このプロパティで有効な値は以下のとおりです。
|
suggestions.tagSuggestions[] |
list YouTube を検索またはブラウジングしているユーザーがこの動画を見つける確率を高めるために、動画のメタデータに追加できるキーワード タグのリスト。 |
suggestions.tagSuggestions[].tag |
string 動画に対して提案されたキーワード タグ。 |
suggestions.tagSuggestions[].categoryRestricts[] |
list タグに該当する一連の動画カテゴリ。この情報を使用すると、動画をアップロードしたユーザーが動画に関連付けた動画カテゴリに基づいて、適切なタグの提案を表示することができます。キーワードに対する制限が設定されていない場合、デフォルトではタグの提案にはすべてのカテゴリが該当します。 |
suggestions.editorSuggestions[] |
list アップロード済み動画の動画品質または再生体験を向上させる可能性のあるビデオ編集操作のリスト。 このプロパティで有効な値は以下のとおりです。
|