对于在 2020 年 7 月 28 日之后创建的未经验证的 API 项目,通过
videos.insert
端点上传的所有视频都将只能在私享模式下观看。如需解除此限制,每个 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 |
string YouTube 用于唯一标识视频的 ID。 |
snippet |
object snippet 对象包含视频的基本详细信息,例如标题、说明和类别。 |
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 |
string video 资源的 snippet.title 和 snippet.description 属性中的文本语言。 |
snippet.localized |
object snippet.localized 对象包含视频的本地化标题和说明,或视频元数据的默认语言的标题。
localizations 对象添加、更新或删除本地化影视内容。 |
snippet.localized.title |
string 已本地化的视频标题。 |
snippet.localized.description |
string 本地化的视频说明。 |
snippet.defaultAudioLanguage |
string default_audio_language 属性用于指定视频的默认音轨中使用的语言。 |
contentDetails |
object contentDetails 对象包含与视频内容有关的信息,包括视频时长以及视频是否提供字幕。 |
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 |
object regionRestriction 对象包含视频可观看(或不可)观看的国家/地区的相关信息。该对象将包含 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) 对加拿大英语广播节目的视频分级。如需了解详情,请访问加拿大广播标准委员会网站。 此属性的有效值包括:
|
contentDetails.contentRating.catvfrRating |
string 视频是加拿大无线电电信委员会 (CRTC) 对加拿大法语广播节目的分级。如需了解详情,请访问加拿大广播标准委员会网站。 此属性的有效值包括:
|
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 视频的分级来自卢森堡委员会 ( Commission de surveillance de laClassification des movies) (CSCF)。 此属性的有效值包括:
|
contentDetails.contentRating.czfilmRating |
string 视频在捷克共和国的分级。 此属性的有效值如下:
|
contentDetails.contentRating.djctqRating |
string 视频的 Departamento de Justiça, Classificação, Qualificação e Títulos (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 - Ireland) 分级。如需了解详情,请访问 IFCO 网站。 此属性的有效值如下:
|
contentDetails.contentRating.ilfilmRating |
string 视频在以色列的分级。 此属性的有效值包括:
|
contentDetails.contentRating.incaaRating |
string 视频的 INCAA(阿根廷国家电影和音像艺术学院)分级。 此属性的有效值为:
|
contentDetails.contentRating.kfcbRating |
string 肯尼亚电影分级委员会对视频的分级。 此属性的有效值如下:
|
contentDetails.contentRating.kijkwijzerRating |
string voor de Classificatie van Audiovisuele Media(荷兰)。 此属性的有效值包括:
|
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 电影和电视审查与分类委员会(菲律宾)提供的视频分级。 此属性的有效值包括:
|
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 视频的广播、电视和电影总局(墨西哥)分级。 此属性的有效值包括:
|
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 |
object status 对象包含有关视频上传、处理和隐私状态的信息。 |
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 |
object statistics 对象包含与视频相关的统计信息。 |
statistics.viewCount |
unsigned long 视频的观看次数。 |
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 |
object paidProductPlacementDetails 对象包含有关视频中付费产品植入的信息。 |
paidProductPlacementDetails.hasPaidProductPlacement |
boolean 如果内容使用了付费产品植入,请将其设置为 true 。默认设置为 false 。 |
player |
object player 对象包含您用于在嵌入式播放器中播放视频的信息。 |
player.embedHtml |
string 一个 <iframe> 标记,用于嵌入用于播放视频的播放器。 |
player.embedHeight |
long player.embedHtml 属性中返回的嵌入式播放器的高度。只有在请求为 maxHeight 和/或 maxWidth 参数指定了值且视频的宽高比已知时,才会返回此属性。 |
player.embedWidth |
long player.embedHtml 属性中返回的嵌入式播放器的宽度。只有在请求为 maxHeight 和/或 maxWidth 参数指定了值且视频的宽高比已知时,才会返回此属性。 |
topicDetails |
object topicDetails 对象封装了与视频相关的主题的相关信息。重要提示:如需详细了解与主题 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 |
object recordingDetails 对象封装了与视频的录制地点、日期和地址相关的信息。 |
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 |
object fileDetails 对象可封装有关上传到 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 |
object processingDetails 对象封装了与 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 对象封装了建议,这些建议可指出有机会改进上传视频的视频质量或元数据。只有视频所有者才能检索此类数据。只有当 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 |
object liveStreamingDetails 对象包含有关直播视频的元数据。只有当视频是即将开播、正在直播或已完成的直播时,该对象才会出现在 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 |
object localizations 对象包含视频元数据的翻译。 |
localizations.(key) |
object 与键值对关联的已本地化文本的语言。值是一个包含 BCP-47 语言代码的字符串。 |
localizations.(key).title |
string 已本地化的视频标题。 |
localizations.(key).description |
string 本地化的视频说明。 |