YouTube API 3 を使用して、自分のアカウントで YouTube 動画の作成時間を取得しようとしています。API ドキュメント ( https://developers.google.com/youtube/v3/docs/videos ) から、videos->list を呼び出します。 「fileDetails」の部分を使用すると、要素「creationTime」が返されます。
アップロードされた動画ファイルが作成された日時。値は ISO 8601 形式で指定されます。
ffprobe から「creation_time」タグがあることがわかっているファイルを YouTube にアップロードしました。
"format": {
"filename": "test.mp4",
"nb_streams": 2,
"format_name": "mov,mp4,m4a,3gp,3g2,mj2",
"format_long_name": "QuickTime / MOV",
"start_time": "0.000000",
"duration": "1.920000",
"size": "1126058",
"bit_rate": "4691908",
"tags": {
"major_brand": "isom",
"minor_version": "0",
"compatible_brands": "isom3gp4",
"creation_time": "2013-06-12 11:08:34"
}
}
これはおそらく、YouTube が「creationTime」値を計算する場所です...
ただし、このファイルの YouTube API fileDetails には次のように表示されます。
fileDetails: {
fileSize: "1126058",
fileType: "video",
container: "mov",
videoStreams: [
{
widthPixels: 1280,
heightPixels: 720,
frameRateFps: 29.9167,
aspectRatio: 1.7777777777778,
codec: "h264",
bitrateBps: "5946814",
rotation: "clockwise"
}
],
audioStreams: [
{
channelCount: 2,
codec: "aac",
bitrateBps: "129487"
}
],
durationMs: "1438",
bitrateBps: "6076301",
}
この動画の fileDetails 部分に creationTime 要素を含めるべきではありませんか? すべてのビデオがこの要素を取得するわけではありませんか?
参考までに: YouTube API 3 の php 実装を使用しており、自分のページに自分のアカウントへのアクセスを許可しています。