通过
videos.insert 端点上传的所有视频(来自 2020 年 7 月 28 日之后创建且未经验证的 API 项目)都将被限制为私享观看模式。如需解除此限制,每个 API 项目都必须接受审核,以验证其是否符合服务条款。如需了解详情,请参阅 API 修订记录。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,
"liveBroadcastContent": string,
"defaultLanguage": string,
"localized": {
"title": string,
"description": string
},
"defaultAudioLanguage": string
},
"contentDetails": {
"duration": string,
"dimension": string,
"definition": string,
"caption": string,
"licensedContent": boolean,
"regionRestriction": {
"allowed": [
string
],
"blocked": [
string
]
},
"contentRating": {
"acbRating": string,
"agcomRating": string,
"anatelRating": string,
"bbfcRating": string,
"bfvcRating": string,
"bmukkRating": string,
"catvRating": string,
"catvfrRating": string,
"cbfcRating": string,
"cccRating": string,
"cceRating": string,
"chfilmRating": string,
"chvrsRating": string,
"cicfRating": string,
"cnaRating": string,
"cncRating": string,
"csaRating": string,
"cscfRating": string,
"czfilmRating": string,
"djctqRating": string,
"djctqRatingReasons": [,
string
],
"ecbmctRating": string,
"eefilmRating": string,
"egfilmRating": string,
"eirinRating": string,
"fcbmRating": string,
"fcoRating": string,
"fmocRating": string,
"fpbRating": string,
"fpbRatingReasons": [,
string
],
"fskRating": string,
"grfilmRating": string,
"icaaRating": string,
"ifcoRating": string,
"ilfilmRating": string,
"incaaRating": string,
"kfcbRating": string,
"kijkwijzerRating": string,
"kmrbRating": string,
"lsfRating": string,
"mccaaRating": string,
"mccypRating": string,
"mcstRating": string,
"mdaRating": string,
"medietilsynetRating": string,
"mekuRating": string,
"mibacRating": string,
"mocRating": string,
"moctwRating": string,
"mpaaRating": string,
"mpaatRating": string,
"mtrcbRating": string,
"nbcRating": string,
"nbcplRating": string,
"nfrcRating": string,
"nfvcbRating": string,
"nkclvRating": string,
"oflcRating": string,
"pefilmRating": string,
"rcnofRating": string,
"resorteviolenciaRating": string,
"rtcRating": string,
"rteRating": string,
"russiaRating": string,
"skfilmRating": string,
"smaisRating": string,
"smsaRating": string,
"tvpgRating": string,
"ytRating": string
},
"projection": string,
"hasCustomThumbnail": boolean
},
"status": {
"uploadStatus": string,
"failureReason": string,
"rejectionReason": string,
"privacyStatus": string,
"publishAt": datetime,
"license": string,
"embeddable": boolean,
"publicStatsViewable": boolean,
"madeForKids": boolean,
"selfDeclaredMadeForKids": boolean,
"containsSyntheticMedia": boolean
},
"statistics": {
"viewCount": string,
"likeCount": string,
"dislikeCount": string,
"favoriteCount": string,
"commentCount": string
},
"paidProductPlacementDetails": {
"hasPaidProductPlacement": boolean
},
"player": {
"embedHtml": string,
"embedHeight": long,
"embedWidth": long
},
"topicDetails": {
"topicIds": [
string
],
"relevantTopicIds": [
string
],
"topicCategories": [
string
]
},
"recordingDetails": {
"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,
"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
]
},
"liveStreamingDetails": {
"actualStartTime": datetime,
"actualEndTime": datetime,
"scheduledStartTime": datetime,
"scheduledEndTime": datetime,
"concurrentViewers": unsigned long,
"activeLiveChatId": string
},
"localizations": {
(key): {
"title": string,
"description": string
}
}
}属性
下表定义了此资源中显示的属性:
| 属性 | |
|---|---|
kind |
string用于标识 API 资源的类型。该值将为 youtube#video。 |
etag |
etag此资源的 ETag。 |
id |
stringYouTube 用于唯一标识视频的 ID。 |
snippet |
objectsnippet 对象包含视频的基本详细信息,例如标题、说明和类别。 |
snippet.publishedAt |
datetime视频的发布日期和时间。请注意,此时间可能与视频上传的时间不同。例如,如果视频在上传时设为私享,之后再设为公开,此属性将指定视频的公开时间。 以下是几种特殊情况:
|
snippet.channelId |
string此 ID 是 YouTube 用来唯一标识视频上传到的频道的 ID。 |
snippet.title |
string视频的标题。属性值的长度不得超过 100 个字符,并且可以包含所有有效的 UTF-8 字符(< 和 > 除外)。如果您调用 videos.update 方法并更新 video 资源的 snippet 部分,则必须为此属性设置值。 |
snippet.description |
string视频的说明。属性值的长度上限为 5000 字节,可以包含所有有效的 UTF-8 字符(< 和 > 除外)。 |
snippet.thumbnails |
object与视频关联的缩略图的映射。对于映射中的每个对象,键是缩略图的名称,值是包含缩略图的其他信息的对象。 |
snippet.thumbnails.(key) |
object有效的键值包括:
|
snippet.thumbnails.(key).url |
string图片的网址。 |
snippet.thumbnails.(key).width |
unsigned integer图片的宽度。 |
snippet.thumbnails.(key).height |
unsigned integer图片的高度。 |
snippet.channelTitle |
string视频所属频道的频道标题。 |
snippet.tags[] |
list与视频相关联的关键字标签列表。代码可能包含空格。属性值的长度上限为 500 个字符。请注意与字符数上限计算方式相关的以下规则:
|
snippet.categoryId |
string与视频关联的 YouTube 视频类别。如果您调用 videos.update 方法并更新 video 资源的 snippet 部分,则必须为此属性设置值。 |
snippet.liveBroadcastContent |
string指示视频是否为即将/正在进行的直播。如果视频不是即将开始/正在进行的直播,则为“none”。 此属性的有效值如下:
|
snippet.defaultLanguage |
stringvideo 资源的 snippet.title 和 snippet.description 属性中的文本所使用的语言。 |
snippet.localized |
objectsnippet.localized 对象包含视频的本地化标题和说明,或视频元数据的默认语言标题。
localizations 对象添加、更新或删除本地化影视内容。 |
snippet.localized.title |
string已本地化的视频标题。 |
snippet.localized.description |
string本地化的视频说明。 |
snippet.defaultAudioLanguage |
stringdefault_audio_language 属性用于指定视频的默认音轨中使用的语言。 |
contentDetails |
objectcontentDetails 对象包含与视频内容有关的信息,包括视频时长以及视频是否提供字幕。 |
contentDetails.duration |
string视频的时长。属性值采用 ISO 8601 时长格式。例如,对于时长至少 1 分钟且不超过 1 小时的视频,时长采用 PT#M#S 格式,其中字母 PT 表示该值指定了一段时长,字母 M 和 S 分别表示时长(以分钟和秒为单位)。M 和 S 字母前面的 # 字符都是整数,用于指定视频的时长(以分钟或秒为单位)。例如,值为 PT15M33S 表示视频时长为 15 分钟 33 秒。如果视频时长至少为 1 小时,时长采用 PT#H#M#S 格式,其中字母 H 前面的 # 用于指定视频时长(以小时为单位),所有其他详细信息与上文所述相同。如果视频时长至少为 1 天,则字母 P 和 T 会分开,并且值的格式为 P#DT#H#M#S。如需了解完整详情,请参阅 ISO 8601 规范。 |
contentDetails.dimension |
string指示视频是 3D 还是 2D 格式。 |
contentDetails.definition |
string指示视频是否提供高清画质 ( HD) 或仅提供标清画质。此属性的有效值为:
|
contentDetails.caption |
string指示视频是否有字幕。 此属性的有效值如下:
|
contentDetails.licensedContent |
boolean指示视频是否为许可内容,即内容上传到与 YouTube 内容合作伙伴相关联的频道,然后该合作伙伴提出了版权主张。 |
contentDetails.regionRestriction |
objectregionRestriction 对象包含有关视频可(或不可)在哪些国家/地区观看的信息。该对象将包含 contentDetails.regionRestriction.allowed 属性或 contentDetails.regionRestriction.blocked 属性。 |
contentDetails.regionRestriction.allowed[] |
list区域代码列表,用于标识视频可在哪些国家/地区观看。如果此属性存在,并且其值中未列出某个国家/地区,则系统会禁止该视频在该国家/地区显示。如果此属性存在且包含空列表,则表示该视频在所有国家/地区都被屏蔽。 |
contentDetails.regionRestriction.blocked[] |
list区域代码列表,用于标识视频遭禁播的国家/地区。如果此属性存在且其值中未列出某个国家/地区,则该视频可在该国家/地区观看。如果此属性存在且包含空列表,则表示该视频可在所有国家/地区观看。 |
contentDetails.contentRating |
object指定视频在各种分级方案下获得的分级。 |
contentDetails.contentRating.acbRating |
string视频的澳大利亚分类委员会 (ACB) 或澳大利亚通信和媒体管理局 (ACMA) 分级。ACMA 分级用于对儿童电视节目进行分类。 此属性的有效值包括:
|
contentDetails.contentRating.agcomRating |
string意大利 Autorità per le Garanzie nelle Comunicazioni (AGCOM) 对视频的评级。 此属性的有效值为:
|
contentDetails.contentRating.anatelRating |
string视频在智利电视上的 Anatel (Asociación Nacional de Televisión) 分级。 此属性的有效值为:
|
contentDetails.contentRating.bbfcRating |
string视频的英国电影分级委员会 (BBFC) 分级。 此属性的有效值如下:
|
contentDetails.contentRating.bfvcRating |
string泰国电影和录像审查委员会对视频的分级。 此属性的有效值为:
|
contentDetails.contentRating.bmukkRating |
string奥地利媒体分类委员会 (Bundesministerium für Unterricht, Kunst und Kultur) 对视频的分级。 此属性的有效值为:
|
contentDetails.contentRating.catvRating |
string加拿大电视分级制度 - 加拿大电视分类制度。加拿大英语广播的视频的分级由加拿大广播电视和电信委员会 (CRTC) 负责。如需了解详情,请访问 Canadian Broadcast Standards Council 网站。 此属性的有效值如下:
|
contentDetails.contentRating.catvfrRating |
string加拿大法语广播内容的加拿大广播电视和电信委员会 (CRTC) 评级。如需了解详情,请访问 Canadian Broadcast Standards Council 网站。 此属性的有效值如下:
|
contentDetails.contentRating.cbfcRating |
string视频的印度中央电影分级委员会 (CBFC) 分级。 此属性的有效值如下:
|
contentDetails.contentRating.cccRating |
string视频的 Consejo de Calificación Cinematográfica (Chile) 分级。 此属性的有效值包括:
|
contentDetails.contentRating.cceRating |
string葡萄牙委员会 de Classificação de Espect´culos 对视频的评级。 此属性的有效值包括:
|
contentDetails.contentRating.chfilmRating |
string视频在瑞士的分级。 此属性的有效值如下:
|
contentDetails.contentRating.chvrsRating |
string视频的加拿大家庭视频分级系统 (CHVRS) 分级。 此属性的有效值如下:
|
contentDetails.contentRating.cicfRating |
string比利时电影委员会 (Commission de Contrôle des Films) 对视频的评级。 此属性的有效值为:
|
contentDetails.contentRating.cnaRating |
string罗马尼亚 CONSILIUL NATIONAL AL AUDIOVIZUALULUI (CNA) 对视频的分级。 此属性的有效值为:
|
contentDetails.contentRating.cncRating |
string法国分级制度 - Commission de classification cinematographique 此属性的有效值如下:
|
contentDetails.contentRating.csaRating |
string法国 Conseil supérieur de l?audiovisuel(负责对广播内容进行分级)对视频的分级。 此属性的有效值为:
|
contentDetails.contentRating.cscfRating |
string卢森堡电影分级委员会 (CSCF) 对视频的分级。 此属性的有效值为:
|
contentDetails.contentRating.czfilmRating |
string视频在捷克共和国的分级。 此属性的有效值如下:
|
contentDetails.contentRating.djctqRating |
string视频的巴西司法、分类、资质和影视内容分级委员会 (DJCQT) 分级。 此属性的有效值包括:
|
contentDetails.contentRating.djctqRatingReasons[] |
list说明视频获得 DJCQT(巴西)分级的原因。 |
contentDetails.contentRating.ecbmctRating |
string土耳其分级制度 - 土耳其文化和旅游部评估和分类委员会 此属性的有效值为:
|
contentDetails.contentRating.eefilmRating |
string视频在爱沙尼亚的分级。 此属性的有效值如下:
|
contentDetails.contentRating.egfilmRating |
string视频在埃及的分级。 此属性的有效值如下:
|
contentDetails.contentRating.eirinRating |
string视频的 Eirin (映倫) 分级。Eirin 是日本的分级制度。 此属性的有效值如下:
|
contentDetails.contentRating.fcbmRating |
string马来西亚电影审查委员会对视频的分级。 此属性的有效值如下:
|
contentDetails.contentRating.fcoRating |
string香港电影、报纸及杂志管理局对视频的分级。 此属性的有效值如下:
|
contentDetails.contentRating.fmocRating |
string自 2015 年 11 月 2 日起,此属性已废弃。请改用 contentDetails.contentRating.cncRating 属性。视频的 Centre national du cinéma et de l'image animé(法国文化部)分级。 此属性的有效值为:
|
contentDetails.contentRating.fpbRating |
string南非电影和出版委员会对视频的分级。 此属性的有效值如下:
|
contentDetails.contentRating.fpbRatingReasons[] |
list说明视频获得 FPB(南非)分级的原因。 |
contentDetails.contentRating.fskRating |
string视频的 Freiwillige Selbstkontrolle der Filmwirtschaft (FSK - 德国) 分级。 此属性的有效值为:
|
contentDetails.contentRating.grfilmRating |
string视频在希腊的评分。 此属性的有效值如下:
|
contentDetails.contentRating.icaaRating |
string视频的 Instituto de la Cinematografía y de las Artes Audiovisuales (ICAA - 西班牙) 分级。 此属性的有效值为:
|
contentDetails.contentRating.ifcoRating |
string视频的爱尔兰电影分级办公室 (IFCO) 分级。如需了解详情,请访问 IFCO 网站。 此属性的有效值如下:
|
contentDetails.contentRating.ilfilmRating |
string视频在以色列的评级。 此属性的有效值如下:
|
contentDetails.contentRating.incaaRating |
string视频的 INCAA(阿根廷国家电影和音像艺术学院)分级。 此属性的有效值为:
|
contentDetails.contentRating.kfcbRating |
string肯尼亚电影分级委员会对视频的分级。 此属性的有效值如下:
|
contentDetails.contentRating.kijkwijzerRating |
stringvoor de Classificatie van Audiovisuele Media (Netherlands)。 此属性的有效值为:
|
contentDetails.contentRating.kmrbRating |
string视频的韩国媒体分级委员会 (영상물등급위원회) 分级。KMRB 负责为韩国的视频分级。 此属性的有效值如下:
|
contentDetails.contentRating.lsfRating |
string印度尼西亚电影审查机构 (Lembaga Sensor Film) 对视频的评级。 此属性的有效值为:
|
contentDetails.contentRating.mccaaRating |
string马耳他电影分级委员会对视频的分级。 此属性的有效值如下:
|
contentDetails.contentRating.mccypRating |
string丹麦电影学院 (Det Danske Filminstitut) 儿童和青少年媒体委员会对视频的分级。 此属性的有效值为:
|
contentDetails.contentRating.mcstRating |
string视频在越南的分级制度 - MCST 此属性的有效值如下:
|
contentDetails.contentRating.mdaRating |
string新加坡媒体发展局 (MDA) 对视频的分级,具体而言是新加坡电影审查委员会 (BFC) 对视频的分级。 此属性的有效值为:
|
contentDetails.contentRating.medietilsynetRating |
string由挪威媒体管理局 Medietilsynet 为视频指定的分级。 此属性的有效值包括:
|
contentDetails.contentRating.mekuRating |
string芬兰国家音像学院 (Kansallinen Audiovisuaalinen Instituutti) 对视频的分级。 此属性的有效值为:
|
contentDetails.contentRating.mibacRating |
string意大利文化和旅游部 (MiBACT) 对视频的评级。 此属性的有效值为:
|
contentDetails.contentRating.mocRating |
string视频的 Ministerio de Cultura (Colombia) 分级。 此属性的有效值如下:
|
contentDetails.contentRating.moctwRating |
string台湾文化部对视频的评级。 此属性的有效值包括:
|
contentDetails.contentRating.mpaaRating |
string视频的美国电影协会 (MPAA) 分级。 此属性的有效值包括:
|
contentDetails.contentRating.mpaatRating |
string美国电影协会对电影预告片和预览的评分。 此属性的有效值如下:
|
contentDetails.contentRating.mtrcbRating |
string菲律宾电影和电视评价和分级委员会 (Movie and Television Review and Classification Board) 对视频的分级。 此属性的有效值为:
|
contentDetails.contentRating.nbcRating |
string马尔代夫国家分级局对视频的分级。 此属性的有效值为:
|
contentDetails.contentRating.nfrcRating |
string保加利亚国家电影中心对视频的分级。 此属性的有效值如下:
|
contentDetails.contentRating.nfvcbRating |
string尼日利亚国家电影和视频审查委员会对视频的分级。 此属性的有效值为:
|
contentDetails.contentRating.nkclvRating |
string视频的 Nacionãlais Kino centrs(拉脱维亚国家电影中心)分级。 此属性的有效值为:
|
contentDetails.contentRating.oflcRating |
string视频的电影和文学分级办公室 (OFLC - 新西兰) 分级。 此属性的有效值为:
|
contentDetails.contentRating.pefilmRating |
string视频在秘鲁的分级。 此属性的有效值如下:
|
contentDetails.contentRating.resorteviolenciaRating |
string视频在委内瑞拉的分级。 此属性的有效值如下:
|
contentDetails.contentRating.rtcRating |
string视频的墨西哥广播电视电影总局 (General Directorate of Radio, Television and Cinematography) 分级。 此属性的有效值如下:
|
contentDetails.contentRating.rteRating |
string爱尔兰 Raidió Teilifís Éireann 对视频的评分。 此属性的有效值如下:
|
contentDetails.contentRating.russiaRating |
string视频的俄罗斯联邦国家电影注册处 (MKRF - 俄罗斯) 分级。 此属性的有效值包括:
|
contentDetails.contentRating.skfilmRating |
string视频在斯洛伐克的评级。 此属性的有效值如下:
|
contentDetails.contentRating.smaisRating |
string视频在冰岛的分级。 此属性的有效值如下:
|
contentDetails.contentRating.smsaRating |
string瑞典国家媒体委员会 (Statens medieråd) 对视频的评级。 此属性的有效值为:
|
contentDetails.contentRating.tvpgRating |
string视频的 TV Parental Guidelines (TVPG) 分级。 此属性的有效值如下:
|
contentDetails.contentRating.ytRating |
string这是 YouTube 用来标识设有年龄限制的内容的分级。 此属性的有效值包括:
|
contentDetails.projection |
string指定视频的投影格式。 此属性的有效值如下:
|
contentDetails.hasCustomThumbnail |
boolean指示视频上传者是否为视频提供了自定义缩略图图片。只有视频上传者才能看到此属性。 |
status |
objectstatus 对象包含有关视频上传、处理和隐私状态的信息。 |
status.uploadStatus |
string上传的视频的状态。 此属性的有效值如下:
|
status.failureReason |
string此值说明了视频上传失败的原因。只有当 uploadStatus 属性指示上传失败时,此属性才会存在。此属性的有效值如下:
|
status.rejectionReason |
string此值说明了 YouTube 拒绝上传的视频的原因。只有当 uploadStatus 属性指示上传内容被拒绝时,此属性才会出现。此属性的有效值为:
|
status.privacyStatus |
string视频的隐私权状态。 此属性的有效值如下:
|
status.publishAt |
datetime视频的预定发布日期和时间。只有在视频的隐私状态设为“私享”时,才能设置此属性。该值采用 ISO 8601 格式指定。请注意以下关于此属性行为的两个其他注意事项:
|
status.license |
string视频的许可。 此属性的有效值如下:
|
status.embeddable |
boolean此值表示视频是否可以嵌入到其他网站中。 |
status.publicStatsViewable |
boolean此值用于指明视频观看页面上的详细视频统计信息是否可供公开查看。默认情况下,这些统计信息是可见的,即使此属性的值设为 false,视频的观看次数和评分等统计信息仍会公开显示。 |
status.madeForKids |
boolean此值表示视频是否被指定为面向儿童,并包含视频当前的“面向儿童的内容”状态。例如,状态可能会根据 selfDeclaredMadeForKids 属性的值确定。如需详细了解如何为频道、视频或直播设置观众群,请访问 YouTube 帮助中心。 |
status.selfDeclaredMadeForKids |
boolean在 videos.insert 或 videos.update 请求中,频道所有者可以使用此属性将视频指定为面向儿童。在 videos.list 请求中,只有在频道所有者授权了 API 请求时,才会返回属性值。 |
status.containsSyntheticMedia |
boolean在 videos.insert 或 videos.update 请求中,频道所有者可以使用此属性披露视频包含逼真的加工内容或合成内容 (A/S)。详细了解 与 A/S 内容相关的 YouTube 政策。A/S 内容的示例包括:
|
statistics |
objectstatistics 对象包含有关视频的统计信息。 |
statistics.viewCount |
unsigned long视频的观看次数。 自 2025 年 3 月 31 日起,对于 Shorts 短视频,viewCount 将返回短视频开始播放或重放的次数,而无最低观看时长要求。 |
statistics.likeCount |
unsigned long表示喜欢相应视频的用户数。 |
statistics.dislikeCount |
unsigned long注意:
statistics.dislikeCount 属性已于 2021 年 12 月 13 日设为不公开。这意味着,只有在 API 请求通过视频所有者的身份验证后,该属性才会包含在 API 响应中。如需了解详情,请参阅修订记录。表示不喜欢视频的用户数。 |
statistics.favoriteCount |
unsigned long注意:此属性已废弃。弃用生效日期为 2015 年 8 月 28 日。该属性的值现在始终设为 0。 |
statistics.commentCount |
unsigned long视频收到的评论数。 |
paidProductPlacementDetails |
objectpaidProductPlacementDetails 对象包含有关视频中付费产品植入的信息。 |
paidProductPlacementDetails.hasPaidProductPlacement |
boolean如果内容使用了付费产品植入,请将其设置为 true。默认设置为 false。 |
player |
objectplayer 对象包含您用于在嵌入式播放器中播放视频的信息。 |
player.embedHtml |
string一个 <iframe> 标记,用于嵌入用于播放视频的播放器。 |
player.embedHeight |
longplayer.embedHtml 属性中返回的嵌入式播放器的高度。只有在请求为 maxHeight 和/或 maxWidth 参数指定了值且视频的宽高比已知时,才会返回此属性。 |
player.embedWidth |
longplayer.embedHtml 属性中返回的嵌入式播放器的宽度。只有在请求为 maxHeight 和/或 maxWidth 参数指定了值且视频的宽高比已知时,才会返回此属性。 |
topicDetails |
objecttopicDetails 对象封装了与视频相关的主题的相关信息。重要提示:如需详细了解与主题 ID 相关的即将发生的更改,请参阅 topicDetails.relevantTopicIds[] 和 topicDetails.topicIds[] 属性的定义以及修订历史记录。 |
topicDetails.topicIds[] |
list重要提示:自 2016 年 11 月 10 日起,此属性已废弃。该 API 不再返回此属性的值,并且 topicDetails.relevantTopicIds[] 属性值现在会返回与视频相关的所有主题。 |
topicDetails.relevantTopicIds[] |
list与视频相关的主题 ID 列表。 自 2016 年 11 月 10 日起,此属性已废弃。我们将继续支持该 API 直到 2017 年 11 月 10 日。 重要提示:由于 Freebase 和 Freebase API 已废弃,因此自 2017 年 2 月 27 日起,主题 ID 的运作方式发生了变化。当时,YouTube 开始返回一小组精选主题 ID。 |
topicDetails.topicCategories[] |
list维基百科网址列表,用于概要描述视频内容。 |
recordingDetails |
objectrecordingDetails 对象封装了有关视频录制地点、日期和地址的信息。 |
recordingDetails.locationDescription |
string此属性自 2017 年 6 月 1 日起已废弃。如需了解详情,请参阅弃用公告。 录制视频的地点的文字说明。 |
recordingDetails.location |
object与视频关联的地理定位信息。请注意,子媒体资源值用于标识视频所有者想要与视频关联的位置。此值可修改,会出现在公开视频的搜索结果中,并且可能会向用户显示(如果视频设为公开)。 |
recordingDetails.location.latitude |
double此属性自 2017 年 6 月 1 日起已废弃。如需了解详情,请参阅弃用公告。 纬度(以度为单位)。 |
recordingDetails.location.longitude |
double此属性自 2017 年 6 月 1 日起已废弃。如需了解详情,请参阅弃用公告。 经度(以度为单位)。 |
recordingDetails.location.altitude |
double此属性自 2018 年 7 月 9 日起已被弃用。如需了解详情,请参阅弃用公告。 相对于参照椭球的海拔(以米为单位)。 |
recordingDetails.recordingDate |
datetime视频的录制日期和时间。该值采用 ISO 8601 ( YYYY-MM-DDThh:mm:ss.sssZ) 格式指定。 |
fileDetails |
objectfileDetails 对象封装了上传到 YouTube 的视频文件的相关信息,包括文件的分辨率、时长、音频和视频编解码器、串流比特率等。只有视频所有者才能检索此类数据。只有当 processingDetails.fileAvailability 属性的值为 available 时,才会返回 fileDetails 对象。 |
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视频流的帧速率(以每秒帧数为单位)。 |
fileDetails.videoStreams[].aspectRatio |
double视频内容的显示宽高比,用于指定视频应以何种宽高比显示。 |
fileDetails.videoStreams[].codec |
string串流使用的视频编解码器。 |
fileDetails.videoStreams[].bitrateBps |
unsigned long视频流的码率(以比特/秒为单位)。 |
fileDetails.videoStreams[].rotation |
string为正确显示视频,YouTube 需要将原始来源内容旋转的角度。 此属性的有效值为:
|
fileDetails.videoStreams[].vendor |
string一个用于唯一标识视频供应商的值。通常,此值为四位字母的供应商代码。 |
fileDetails.audioStreams[] |
list上传的视频文件中包含的音频串流的列表。列表中的每个项都包含有关音频串流的详细元数据。 |
fileDetails.audioStreams[].channelCount |
unsigned integer串流包含的音频声道数。 |
fileDetails.audioStreams[].codec |
string串流使用的音频编解码器。 |
fileDetails.audioStreams[].bitrateBps |
unsigned long音频流的比特率(以每秒传输的位数表示)。 |
fileDetails.audioStreams[].vendor |
string一个用于唯一标识视频供应商的值。通常,此值为四位字母的供应商代码。 |
fileDetails.durationMs |
unsigned long上传的视频的时长(以毫秒为单位)。 |
fileDetails.bitrateBps |
unsigned long上传的视频文件的总比特率(视频和音频),以每秒传输的位数表示。 |
fileDetails.creationTime |
string上传的视频文件的创建日期和时间。该值采用 ISO 8601 格式指定。目前,支持以下 ISO 8601 格式:
|
processingDetails |
objectprocessingDetails 对象封装了与 YouTube 处理上传的视频文件的进度相关的信息。对象中的属性可识别当前的处理状态,以及 YouTube 完成处理视频所需的预计剩余时间。此部分还会指明视频是否有不同类型的数据或内容(例如文件详情或缩略图)。processingProgress 对象旨在进行轮询,以便上传的视频可以跟踪 YouTube 处理上传的视频文件的进度。只有视频所有者才能检索此类数据。 |
processingDetails.processingStatus |
string视频的处理状态。此值表示 YouTube 是否能够处理视频,或者视频是否仍在处理中。 此属性的有效值如下:
|
processingDetails.processingProgress |
objectprocessingProgress 对象包含有关 YouTube 处理视频进度的信息。只有当视频的处理状态为 processing 时,这些值才真正相关。 |
processingDetails.processingProgress.partsTotal |
unsigned long系统对视频需要处理的部分总数的估算值。在 YouTube 处理视频时,此数字可能会更新为更精确的估算值。 |
processingDetails.processingProgress.partsProcessed |
unsigned longYouTube 已处理的视频片段数量。您可以通过计算以下值来估算 YouTube 已处理的视频内容所占的百分比: 100 * parts_processed / parts_total请注意,由于估算的部分数量可能会增加,而已处理的部分数量却没有相应增加,因此在 YouTube 处理视频时,计算的进度可能会周期性下降。 |
processingDetails.processingProgress.timeLeftMs |
unsigned longYouTube 处理视频所需的估算时间(以毫秒为单位)。 |
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 |
objectsuggestions 对象封装了建议,这些建议可指出有机会改进上传视频的视频质量或元数据。只有视频所有者才能检索此类数据。只有当 processingDetails.tagSuggestionsAvailability 属性或 processingDetails.editorSuggestionsAvailability 属性的值为 available 时,才会返回 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可能有助于提升上传视频的视频画质或播放体验的视频编辑操作列表。 此属性的有效值为:
|
liveStreamingDetails |
objectliveStreamingDetails 对象包含有关直播视频的元数据。只有当视频是即将开播、正在直播或已完成的直播时,该对象才会出现在 video 资源中。 |
liveStreamingDetails.actualStartTime |
datetime广播实际开始的时间。该值采用 ISO 8601 格式指定。在直播开始之前,此值将不可用。 |
liveStreamingDetails.actualEndTime |
datetime广播实际结束的时间。该值采用 ISO 8601 格式指定。在直播结束之前,此值将不可用。 |
liveStreamingDetails.scheduledStartTime |
datetime直播的预定开始时间。该值采用 ISO 8601 格式指定。 |
liveStreamingDetails.scheduledEndTime |
datetime直播的预定结束时间。该值采用 ISO 8601 格式指定。如果值为空或不存在该属性,则广播将安排无限期继续。 |
liveStreamingDetails.concurrentViewers |
unsigned long目前正在观看直播的观看者数量。如果直播有当前观看者,并且直播所有者未隐藏视频的观看次数,则系统会显示此属性及其值。请注意,直播结束后,YouTube 会停止跟踪直播的并发观看者人数。因此,此属性不会指明观看已结束的直播的归档视频的观看者数量。 YouTube Data API 返回的并发观看者数可能与通过 YouTube 数据分析获得的经过处理且已滤除垃圾流量的并发观看者数不同。如需详细了解直播指标,请访问 YouTube 帮助中心。
|
liveStreamingDetails.activeLiveChatId |
string与此视频关联的当前活跃实时聊天的 ID。只有当视频是当前正在进行的直播且支持实时聊天时,此字段才会填充。直播转为已完成状态后,此字段将被移除,实时聊天功能也将关闭。对于永久性直播,实时聊天 ID 将不再与此视频相关联,而是与永久性页面上显示的新视频相关联。 |
localizations |
objectlocalizations 对象包含视频元数据的翻译。 |
localizations.(key) |
object与键值关联的本地化文本的语言。值是一个包含 BCP-47 语言代码的字符串。 |
localizations.(key).title |
string已本地化的视频标题。 |
localizations.(key).description |
string本地化的视频说明。 |