调用GetPlayInfo通过音视频ID直接获取媒体文件(支持视频和音频)的播放地址。

使用说明

通过音视频ID来获取音视频的播放地址。通过集成阿里云播放器SDK(适用于URL播放方式)或第三方播放器后,可使用获取到的播放地址用于音视频的播放。关于播放地址的播放说明及使用限制等更多信息,请参见获取播放地址播放

QPS限制

本接口的单用户QPS限制为360次/秒。超过限制,API调用会被限流,这可能会影响您的业务,请合理调用。更多信息,请参见QPS限制

调试

您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。

请求参数

名称 类型 是否必选 示例值 描述
Action String GetPlayInfo

系统规定参数。取值:GetPlayInfo

VideoId String 93ab850b4f654b6e91d24d81d44****

音/视频ID。可通过以下方式获取:

  • 通过控制台上传的音/视频,可登录点播控制台,选择媒资库 > 音/视频查看音/视频ID。
  • 通过CreateUploadVideo接口上传音/视频时,音/视频ID为返回参数VideoId的值。
  • 音/视频上传后,可通过SearchMedia接口查询音/视频ID,为请求后返回参数VideoId的值。
Formats String mp4,m3u8

媒体流格式。多个格式之间使用半角逗号(,)分隔。支持格式:

  • mp4
  • m3u8
  • mp3
  • mpd
说明 默认获取所有格式的流。MPD格式仅当转码模板中配置了mpd封装格式时才会输出。更多详情,请参见转码模板配置-Container
AuthTimeout Long 1800

播放地址过期时间。单位:秒。

  • 当OutputType取值为cdn时:
    • 只有开启了URL鉴权播放地址才会定期失效,否则会永久有效。
    • 最小值:1
    • 最大值:无限制。
    • 默认值:未设置时,取值为URL鉴权中设置的默认有效时长。
  • 当OutputType取值为oss时:
    • 只有存储权限为私有,播放地址才会定期失效,否则会永久有效。
    • 最小值:1
    • 最大值:为降低源站安全风险,最大值为2592000(即30天)。
    • 默认值:未设置时,取值为3600
OutputType String cdn

输出地址类型。取值:

  • oss:回源地址。
  • cdn(默认):加速地址。
StreamType String video

媒体流类型。多个用半角逗号(,)分隔。支持类型:

  • video:视频。
  • audio:音频。

默认获取所有类型的流。

ReAuthInfo String {"uid":"12345","rand":"abckljd"}

CDN二次鉴权参数。为JSON字符串。当开启了CDN二次鉴权功能时,可通过该参数设置鉴权URL的uid和rand,请参见URL鉴权

Definition String LD

视频流清晰度。多个用半角逗号(,)分隔。取值:

  • FD:流畅。
  • LD:标清。
  • SD:高清。
  • HD:超清
  • OD:原画。
  • 2K:2K。
  • 4K:4K。
  • SQ:普通音质。
  • HQ:高音质。
  • AUTO:自适应码率。
说明 默认获取所有清晰度的流。AUTO格式仅当转码模板中配置了转码打包时才会有该清晰度输出,请参见转码模板配置-PackageSetting
ResultType String Single

返回数据类型。取值:

  • Single(默认):每种清晰度和格式只返回一路最新转码完成的流。
  • Multiple:每种清晰度和格式返回所有转码完成的流。
PlayConfig String {"PlayDomain":"vod.test_domain","XForwardedFor":"yqCD7Fp1uqChoVj/sl/p5Q==","PreviewTime":"20","MtsHlsUriToken":"yqCD7Fp1uqChoVjslp5Q"}

播放自定义设置。为JSON字符串,支持指定域名播放设置。参数构造详情,请参见PlayConfig

说明
  • PlayConfig不设置或者其中PlayDomain不设置时,接口默认使用点播配置的默认域名;如果没有设置默认域名,则会根据域名的修改时间倒叙查询,使用最新修改过的域名作为播放域名。为防止返回的不是想要的域名,建议设置默认播放域名(可登录点播控制台,选择配置管理 > 媒资管理配置 > 存储管理 > 管理 > 回源到此存储地址的域名设置默认播放域名)。
  • 当PlayConfig中的EncryptType参数设置为AliyunVoDEncryption时,为了保障您的视频安全,默认不返回私有加密流播放地址,若需要返回私有加密流播放地址,需要同时设置ResultType参数为Multiple
AdditionType String danmu

获取弹幕蒙版数据URL地址,取值:danmu

说明 只有当outputType取值为cdn时才会生效。

返回数据

名称 类型 示例值 描述
RequestId String F552E596-967D-5500-842F-17E6364****

请求ID。

VideoBase Object

音/视频基本信息。

CreationTime String 2017-06-26T06:38:48Z

音/视频创建时间。格式为:yyyy-MM-ddTHH:mm:ssZ(UTC时间)。

Status String Normal

音/视频状态。具体取值范围及描述,请参见视频状态Status的取值列表

VideoId String 93ab850b4f654b6e91d24d81d44****

音/视频ID。

CoverURL String http://example.aliyundoc.com/sample.jpg?auth_key=2333232-atb****

音/视频封面地址。

Duration String 3.1667

音/视频时长。单位:秒。

Title String 阿里云VOD

音/视频标题。

MediaType String video

媒体文件类型,取值:

  • video:视频。
  • audio:纯音频。
DanMuURL String http://example.aliyundoc.com/****?auth_key=abdf2123-6783232****

弹幕蒙版数据的地址。

PlayInfoList Array of PlayInfo

音/视频播放信息(流信息)。

PlayInfo
CreationTime String 2022-04-18T07:37:15Z

创建时间。格式为:yyyy-MM-ddTHH:mm:ssZ(UTC时间)。

Status String Normal

媒体流状态,取值:

  • Normal:正常。
  • Invisible:不可见。
Specification String H264.LD

音视频转码输出规格。取值范围,请参见输出规格

NarrowBandType String 0

窄带高清类型。取值:

  • 0:普通。
  • 1.0:窄带高清1.0。
  • 2.0:窄带高清2.0。

仅当配置了窄带高清1.0内置转码模板的清晰度时才会生效。更多详情,请参见转码模板配置-Definition

Height Long 640

媒体流高度。单位:px。

Bitrate String 450.878

媒体流码率。单位:Kbps。

ModificationTime String 2022-04-20T06:32:19Z

更新时间。格式为:yyyy-MM-ddTHH:mm:ssZ(UTC时间)。

WatermarkId String dgfn26457856****

当前媒体流关联的水印ID。

Encrypt Long 1

媒体流是否加密流,取值:

  • 0:否。
  • 1:是。
Definition String LD

视频流清晰度定义。取值:

  • FD:流畅。
  • LD:标清。
  • SD:高清。
  • HD:超清
  • OD:原画。
  • 2K:2K。
  • 4K:4K。
  • SQ:普通音质。
  • HQ:高音质。
  • AUTO:自适应码率。
EncryptType String AliyunVoDEncryption

媒体流加密类型。取值:

  • AliyunVoDEncryption:阿里云视频加密。
  • HLSEncryption:HLS标准加密。
说明 如果加密类型为AliyunVoDEncryption,则只能使用阿里云播放器SDK才能正常播放。
StreamType String video

媒体流类型。

若媒体流为视频则取值:video,若是纯音频则取值:audio

JobId String 80e9c6580e754a798c3c19c59b16****

媒体流转码的作业ID。作为媒体流的唯一标识。

Size Long 418112

媒体流大小。单位:Byte。

Width Long 360

媒体流宽度。单位:px。

Fps String 25

媒体流帧率。单位:帧/每秒。

Duration String 9.0464

媒体流长度。单位:秒。

PlayURL String https://example.aliyundoc.com/d52ee123f331466aabf6ab32a93d****/a777f9e24e6e47a2a942467d5c38ea37-8ee8e04293c6657fdda282bc422704****.m3u8

视频流的播放地址。

Format String m3u8

媒体流格式。

  • 若媒体文件为视频则取值: mp4m3u8
  • 若是纯音频则取值:mp3
HDRType String HLG

媒体流HDR类型。取值:

  • HDR
  • HDR10
  • HLG
  • DolbyVision
  • HDRVivid
  • SDR+
BitDepth Integer 8

颜色位深。取值为整数。

示例

请求示例

http(s)://vod.cn-shanghai.aliyuncs.com/?Action=GetPlayInfo
&VideoId=93ab850b4f654b6e91d24d81d44****
&<公共请求参数>

正常返回示例

XML格式

HTTP/1.1 200 OK
Content-Type:application/xml

<GetPlayInfoResponse>
    <VideoBase>
        <Status>Normal</Status>
        <VideoId>93ab850b4f654b6e91d24d81d44****</VideoId>
        <TranscodeMode>NoTranscode</TranscodeMode>
        <CreationTime>2022-04-18T07:37:15Z</CreationTime>
        <Title>阿里云VOD</Title>
        <MediaType>video</MediaType>
        <CoverURL>http://example.aliyundoc.com/sample.jpg?auth_key=2333232-atb****</CoverURL>
        <Duration>3.1667</Duration>
        <OutputType>cdn</OutputType>
    </VideoBase>
    <RequestId>F552E596-967D-5500-842F-17E6364****</RequestId>
    <PlayInfoList>
        <PlayInfo>
            <Status>Normal</Status>
            <StreamType>video</StreamType>
            <HDRType>HLG</HDRType>
            <Size>418112</Size>
            <Definition>LD</Definition>
            <Fps>25</Fps>
            <Specification>H264.LD</Specification>
            <ModificationTime>2022-04-20T06:32:19Z</ModificationTime>
            <Duration>9.0464</Duration>
            <Bitrate>450.878</Bitrate>
            <BitDepth>8</BitDepth>
            <Encrypt>0</Encrypt>
            <PreprocessStatus>UnPreprocess</PreprocessStatus>
            <Format>m3u8</Format>
            <NarrowBandType>0</NarrowBandType>
            <PlayURL>https://example.aliyundoc.com/d52ee123f331466aabf6ab32a93d****/a777f9e24e6e47a2a942467d5c38ea37-8ee8e04293c6657fdda282bc422704****.m3u8</PlayURL>
            <CreationTime>2022-04-20T06:32:14Z</CreationTime>
            <Height>640</Height>
            <Width>360</Width>
            <JobId>80e9c6580e754a798c3c19c59b16****</JobId>
        </PlayInfo>
    </PlayInfoList>
</GetPlayInfoResponse>

JSON格式

HTTP/1.1 200 OK
Content-Type:application/json

{
  "VideoBase" : {
    "Status" : "Normal",
    "VideoId" : "93ab850b4f654b6e91d24d81d44****",
    "TranscodeMode" : "NoTranscode",
    "CreationTime" : "2022-04-18T07:37:15Z",
    "Title" : "阿里云VOD",
    "MediaType" : "video",
    "CoverURL" : "http://example.aliyundoc.com/sample.jpg?auth_key=2333232-atb****",
    "Duration" : "3.1667",
    "OutputType" : "cdn"
  },
  "RequestId" : "F552E596-967D-5500-842F-17E6364****",
  "PlayInfoList" : {
    "PlayInfo" : [ {
      "Status" : "Normal",
      "StreamType" : "video",
      "HDRType" : "HLG",
      "Size" : 418112,
      "Definition" : "LD",
      "Fps" : "25",
      "Specification" : "H264.LD",
      "ModificationTime" : "2022-04-20T06:32:19Z",
      "Duration" : "9.0464",
      "Bitrate" : "450.878",
      "BitDepth" : 8,
      "Encrypt" : 0,
      "PreprocessStatus" : "UnPreprocess",
      "Format" : "m3u8",
      "NarrowBandType" : "0",
      "PlayURL" : "https://example.aliyundoc.com/d52ee123f331466aabf6ab32a93d****/a777f9e24e6e47a2a942467d5c38ea37-8ee8e04293c6657fdda282bc422704****.m3u8",
      "CreationTime" : "2022-04-20T06:32:14Z",
      "Height" : 640,
      "Width" : 360,
      "JobId" : "80e9c6580e754a798c3c19c59b16****"
    } ]
  }
}

错误码

访问错误中心查看更多错误码。

接口错误码

下表列举了本接口特有的错误码。

错误代码

错误信息

HTTP 状态码

说明

Forbidden.IllegalStatus

Status of the video is illegal. Current Status is %s.

403

视频状态无效,当前状态为%s。只有Normal状态的视频才能播放。

InvalidVideo.NotFound

The video does not exist.

404

视频不存在。

InvalidVideo.NoneStream

The video has no stream to play for the request parameter ‘Formats : mp4, Definition : LD, StreamType : video’.

404

根据您的筛选条件找不到可以播放的转码输出流,请检查您的转码配置与筛选条件是否匹配。

Forbidden.AliyunVoDEncryption

Currently only the AliyunVoDEncryption stream exists, you must use the Aliyun player to play or set the value of ResultType to Multiple.

403

当前仅存在阿里云视频加密的转码输出流,必须使用阿里云播放器进行播放或者设置请求参数ResultType值为Multiple

SDK示例

建议使用服务端SDK来调用API,此API各语言调用的示例代码,请参见: