logo
当前页

获取歌曲与歌词资源接口说明


接口方法名详情描述支持的 vendorID 取值
获取包含人声的歌曲资源requestResource获取 songID 对应包含人声的歌曲的资源,包括歌曲时长、歌手名、resource_id,我们也称为点歌。0、1、2、4
获取歌曲伴奏资源requestResource获取 songID 对应歌曲的伴奏资源,包括歌曲资源个数、resource_id、krc_token 等。0、1、2、4
获取长分片高潮片段资源requestResource获取 songID 对应歌曲伴奏的高潮片段资源的长分片,包括高潮片段的开始与结束时间、resource_id、krc_token 等。0、1
获取短分片高潮片段资源requestResource获取 songID 对应歌曲伴奏的高潮片段资源的短分片,包括高潮片段短分片的开始与结束时间、抢唱片段的开始与结束时间、resource_id、krc_token 等。0、1、2
获取其他用户分享的歌曲资源getSharedResource免费获取一次其他用户分享的歌曲资源。0、1、2、4
获取逐行歌词getLrcLyric获取 songID 对应歌曲的逐行歌词。
逐行歌词指的是根据歌曲/伴奏/高潮片段播放进度,将匹配的歌词一行行的展示。
0、1、2、4
获取逐字歌词getKrcLyricByToken我们可以通过 requestResource、getSharedResource 接口获取到 krc_token,再调用 getKrcLyricByToken 接口获取到逐字歌词。
逐字歌词指的是在歌曲/伴奏/高潮片段播放时,先出现逐行歌词,然后对应播放节奏,将歌词的每个字进行高亮显示。
0、1、2、4

其中,获取歌曲伴奏资源获取长分片高潮片段资源获取短分片高潮片段资源 可获取的资源片段,区别如下:

注意

获取歌曲/伴奏/高潮片段资源中的 resource_id,只在 SDK 的生命周期内有效。其他用户如需获取对应的音乐资源,必须通过调用 getSharedResource 接口获取对应的 resource_id。

获取歌曲资源

获取包含人声的歌曲资源

用户调用 requestResource 接口点歌,“资源类型”选择 ZEGO_COPYRIGHTED_MUSIC_RESOURCE_SONG,通过IZegoCopyrightedMusicRequestResourceCallback回调结果,可以获取 songID 对应歌曲的资源,包括歌曲时长、歌手名、resource_id 等。,

接口调用示例

Untitled
/** 点歌配置 */
ZegoCopyrightedMusicRequestConfig config = new ZegoCopyrightedMusicRequestConfig();
/** 音乐 songID */
config.songID = "";
Merge change

Merge change
/** 计费模式 */
config.mode = ZegoCopyrightedMusicBillingMode.COUNT;
/** 版权方,其对应的枚举值信息,请联系 ZEGO 商务咨询*/
config.vendorID = ZegoCopyrightedMusicVendorID.ZEGO_COPYRIGHTED_MUSIC_DEFAULT;
/** 场景 sceneID:1 语聊房、2 直播间在线 K 歌、3 直播间播放背景音乐、4 抢唱*/
/** 请联系 ZEGO 商务开通使用场景,使用过程请传入正确的场景 ID。*/
config.sceneID = 0;


/** 资源类型 */
ZegoCopyrightedMusicResourceType resourceType = ZegoCopyrightedMusicResourceType.ZEGO_COPYRIGHTED_MUSIC_RESOURCE_SONG;
copyrightedMusic.requestResource(config, resourceType, new IZegoCopyrightedMusicRequestResourceCallback() {
    @Override
    public void onRequestRsourceCallback(int i, String s) {
        // s: result
    }
});
1
Copied!

回调结果

参数类型描述
codeNumber返回码,具体请参见 错误码,如查询不到可联系 ZEGO 技术支持。
messageString操作结果描述。
request_idString请求 ID。
dataObject响应数据。
└ is_accompanyInt是否为伴奏。
• 0:歌曲
• 1:伴奏
└ song_nameString歌曲名。
└ singer_nameString歌手名。
└ song_idString歌曲 ID。
└ durationInt歌曲时长,单位:毫秒。
└ token_ttlIntshare_token 有效时长,默认值为 3600000 毫秒(1 小时)。
└ resources_sizeInt歌曲资源数,resources 中资源个数。
└ resourcesObject歌曲资源信息,详情可见resources
resources
参数类型描述
resource_idString歌曲资源 ID。
sizeInt歌曲资源大小,单位:字节。
qualityString歌曲音质。
• normal:标准,支持该音质资源的版权方 vendorID 取值为 0(默认)、1、2、4。
• hq:高清,支持该音质资源的版权方 vendorID 取值为 0(默认)、1、2。
• sq:无损,支持该音质资源的版权方 vendorID 取值为 0(默认)、1。
share_tokenString旧版参数。
resource_ttlInt该资源的剩余有效时长,单位:毫秒。

回调示例

Untitled
{
  "code": 0,
  "message": "string",
  "request_id": "string",
  "data": {
    "is_accompany": 0,
    "song_name": "string",
    "singer_name": "string",
    "song_id": "string",
    "duration": 0,
    "token_ttl": 0,
    "resources_size": 1,
    "resources": [
      {
        "resource_id": "string",
        "size": 0,
        "quality": "string",
        "share_token": "string",
        "resource_ttl": 300000
      }
    ]
  }
}
1
Copied!

获取歌曲伴奏资源

用户调用requestResource接口点伴奏,“资源类型”选择 ZEGO_COPYRIGHTED_MUSIC_RESOURCE_ACCOMPANIMENT,通过IZegoCopyrightedMusicRequestResourceCallback回调结果,可以获取 songID 对应歌曲的伴奏资源,包括歌曲资源个数、resource_id、krc_token 等。

接口调用示例

Untitled
/** 点歌配置 */
ZegoCopyrightedMusicRequestConfig config = new ZegoCopyrightedMusicRequestConfig();
/** 音乐 songID */
config.songID = "";
/** 计费模式 */
config.mode = ZegoCopyrightedMusicBillingMode.COUNT;
/** 版权方,其对应的枚举值信息,请联系 ZEGO 商务咨询*/
config.vendorID = ZegoCopyrightedMusicVendorID.ZEGO_COPYRIGHTED_MUSIC_DEFAULT;
/** 场景 sceneID:1 语聊房、2 直播间在线 K 歌、3 直播间播放背景音乐、4 抢唱*/
/** 请联系 ZEGO 商务开通使用场景,使用过程请传入正确的场景 ID。*/
config.sceneID = 0;

/** 资源类型 */
ZegoCopyrightedMusicResourceType resourceType = ZegoCopyrightedMusicResourceType.ZEGO_COPYRIGHTED_MUSIC_RESOURCE_ACCOMPANIMENT;
copyrightedMusic.requestResource(config, resourceType, new IZegoCopyrightedMusicRequestResourceCallback() {
    @Override
    public void onRequestRsourceCallback(int i, String s) {
        // s: result
    }
});
1
Copied!

回调结果

参数类型描述
codeNumber返回码,具体请参见 错误码,如查询不到可联系 ZEGO 技术支持。
messageString操作结果描述。
request_idString请求 ID。
dataObject响应数据。
└ has_originalInt伴奏是否有原唱。
• 0:没有
• 1:有
└ is_accompanyInt是否为伴奏。
• 0:歌曲
• 1:伴奏
└ song_idString歌曲 ID。
└ durationInt歌曲时长,单位:毫秒。
└ token_ttlIntshare_token 有效时长,默认值为 3600000 毫秒(1 小时)。
└ krc_tokenString获取逐字歌词所需的 krc_token。
└ krc_token_ttlInt逐字歌词 krc_token 的有效期,默认值为 43200000 毫秒(12 小时)。
└ resources_sizeInt歌曲资源数,resources 中资源个数。
└ resourcesObject歌曲资源信息,详情可见resources
resources
参数类型描述
resource_idString歌曲资源 ID。
sizeInt歌曲资源大小,单位:字节。
qualityString歌曲音质。
• normal:标准,支持该音质资源的版权方 vendorID 取值为 0(默认)、1、2、4。
• hq:高清,支持该音质资源的版权方 vendorID 取值为 2。
share_tokenString旧版参数。
resource_ttlInt该资源的剩余有效时长,单位:毫秒。

回调示例

Untitled
{
  "code": 0,
  "message": "string",
  "request_id": "string",
  "data": {
    "has_original": 1,
    "is_accompany": 1,
    "song_id": "string",
    "share_token": "eyJhbGciOiJIUzI1NiIsInR5c",
    "duration": 0,
    "token_ttl": 0,
    "krc_token":"string",
    "krc_token_ttl":0,
    "resources_size": 1,
    "resources": [
      {
        "resource_id": "string",
        "size": 0,
        "quality": "string",
        "share_token": "string",
        "resource_ttl": 300000
      }
    ]
  }
}
1
Copied!

获取长分片高潮片段资源

用户调用 requestResource 接口点高潮片段,“资源类型”选择 ZEGO_COPYRIGHTED_MUSIC_RESOURCE_ACCOMPANIMENT_CLIP,通过IZegoCopyrightedMusicRequestResourceCallback回调结果,可以获取 songID 对应歌曲的伴奏资源,包括高潮片段的开始与结束时间、resource_id、krc_token 等。

接口调用示例

Untitled
/** 点歌配置 */
ZegoCopyrightedMusicRequestConfig config = new ZegoCopyrightedMusicRequestConfig();
/** 音乐 songID */
config.songID = "";
/** 计费模式 */
config.mode = ZegoCopyrightedMusicBillingMode.COUNT;
/** 版权方,其对应的枚举值信息,请联系 ZEGO 商务咨询*/
config.vendorID = ZegoCopyrightedMusicVendorID.ZEGO_COPYRIGHTED_MUSIC_DEFAULT;
/** 场景 sceneID:1 语聊房、2 直播间在线 K 歌、3 直播间播放背景音乐、4 抢唱*/
/** 请联系 ZEGO 商务开通使用场景,使用过程请传入正确的场景 ID。*/
config.sceneID = 0;

/** 资源类型 */
ZegoCopyrightedMusicResourceType resourceType = ZegoCopyrightedMusicResourceType.ZEGO_COPYRIGHTED_MUSIC_RESOURCE_ACCOMPANIMENT_CLIP;
copyrightedMusic.requestResource(config, resourceType, new IZegoCopyrightedMusicRequestResourceCallback() {
    @Override
    public void onRequestRsourceCallback(int i, String s) {
        // s: result
    }
});
1
Copied!

回调结果

参数类型描述
codeNumber返回码,具体请参见 错误码,如查询不到可联系 ZEGO 技术支持。
messageString操作结果描述。
request_idString请求 ID。
dataObject响应数据。
└ is_clipInt是否为高潮片段。
• 0:否
• 1:是
└ is_accompanyInt是否为伴奏。
• 0:歌曲
• 1:伴奏
└ krc_tokenString获取逐字歌词所需的 krc_token。
└ krc_token_ttlInt逐字歌词 krc_token 的有效期,默认值为 43200000 毫秒(12 小时)。
└ song_idString歌曲 ID。
└ share_token_ttlIntshare_token 有效时长,默认值为 3600000 毫秒(1 小时)。该参数为新版参数,与 token_ttl 旧版参数含义相同,新接入用户主要使用该参数。
└ token_ttlIntshare_token 有效时长,默认值为 3600000 毫秒(1 小时)。该参数为旧版参数,与 share_token_ttl 新版参数含义相同,为了兼容早期接入用户使用。
└ segment_beginInt高潮片段相对于原曲时长的开始时间戳,单位:毫秒。
└ segment_endInt高潮片段相对于原曲时长的结束时间戳,单位:毫秒。
└ prelude_durationInt高潮片段的前奏时间,单位:毫秒。
└ resources_sizeInt歌曲资源数,resources 中资源个数。
└ resourcesObject歌曲资源信息,详情可见resources
resources
参数类型描述
resource_idString歌曲资源 ID。
sizeInt歌曲资源大小,单位:字节。
qualityString歌曲音质,当前仅包含 normal(标准)音质的长分片高潮片段资源。
share_tokenString旧版参数。
resource_ttlInt该资源的剩余有效时长,单位:毫秒。
回调示例
Untitled
{
  "code": 0,
  "message": "string",
  "request_id": "string",
  "data": {
    "is_clip":1,
    "is_accompany":0,
    "krc_token":"UQIFmNmY3NbjZggIwNzFl",
    "krc_token_ttl":43200000,
    "song_id":"300785364",
    "share_token_ttl":3600000,
    "token_ttl":3600000,
    "segment_begin":133157,
    "segment_end":235337,
    "prelude_duration":5000,
    "resources_size":1,
    "resources":[
        {
            "resource_id":"z_301215364_3",
            "size":0,
            "quality":"normal",
            "share_token":"7878787SDASDASDASDASD.SADSDASDASDASDSADSASDASDASDASD.V-sT427morLeej5sYUXgQzEgNjQ-YAoShYHGy5dGFKI",
            "resource_ttl": 300000
        }
    ]
  }
}
1
Copied!

获取短分片高潮片段资源

注意
  • 获取长分片高潮片段资源 相比,本功能提供更短的歌曲资源分片(例如,高潮片段资源的长分片时长约为 40s,短分片时长约为 20s),支持获取抢唱片段的开始与结束时间等信息,适用于 KTV 抢唱场景中。
  • 短分片高潮片段资源支持的曲库,可以通过服务端的 获取标签列表 接口获取,仅当 vendorID 为 0(默认)、1、2 时支持获取。

用户调用 requestResource 接口点伴奏片段,“资源类型”选择 ZEGO_COPYRIGHTED_MUSIC_RESOURCE_ACCOMPANIMENT_SEGMENT,通过IZegoCopyrightedMusicRequestResourceCallback回调结果,可以获取 songID 对应歌曲的伴奏片段资源,包括高潮片段短分片的开始与结束时间、抢唱片段的开始与结束时间、resource_id、krc_token 等。

接口调用示例

Untitled
/** 点歌配置 */
ZegoCopyrightedMusicRequestConfig config = new ZegoCopyrightedMusicRequestConfig();
/** 音乐 songID */
config.songID = "";
/** 计费模式 */
config.mode = ZegoCopyrightedMusicBillingMode.COUNT;
/** 版权方,其对应的枚举值信息,请联系 ZEGO 商务咨询*/
config.vendorID = ZegoCopyrightedMusicVendorID.ZEGO_COPYRIGHTED_MUSIC_DEFAULT;
/** 场景 sceneID:1 语聊房、2 直播间在线 K 歌、3 直播间播放背景音乐、4 抢唱*/
/** 请联系 ZEGO 商务开通使用场景,使用过程请传入正确的场景 ID。*/
config.sceneID = 0;

/** 资源类型 */
ZegoCopyrightedMusicResourceType resourceType = ZegoCopyrightedMusicResourceType.ZEGO_COPYRIGHTED_MUSIC_RESOURCE_ACCOMPANIMENT_SEGMENT;
copyrightedMusic.requestResource(config, resourceType, new IZegoCopyrightedMusicRequestResourceCallback() {
    @Override
    public void onRequestRsourceCallback(int i, String s) {
        // s: result
    }
});
1
Copied!

回调结果

参数类型描述
codeNumber返回码,具体请参见 错误码,如查询不到可联系 ZEGO 技术支持。
messageString操作结果描述。
request_idString请求 ID。
dataObject响应数据。
└ is_clipInt是否为高潮片段。
• 0:否
• 1:是
└ is_accompanyInt是否为伴奏。
• 0:歌曲
• 1:伴奏
└ krc_tokenString获取逐字歌词所需的 krc_token。
└ krc_token_ttlInt逐字歌词 krc_token 的有效期,默认值为 43200000 毫秒(12 小时)。
└ song_idString歌曲 ID。
└ share_token_ttlIntshare_token 有效时长,默认值为 3600000 毫秒(1 小时)。该参数为新版参数,与 token_ttl 旧版参数含义相同,新接入用户主要使用该参数。
└ token_ttlIntshare_token 有效时长,默认值为 3600000 毫秒(1 小时)。该参数为旧版参数,与 share_token_ttl 新版参数含义相同,为了兼容早期接入用户使用。
└ segment_beginInt"长分片高潮片段"相对于"原曲时长"的开始时间戳,单位:毫秒。
└ segment_endInt"长分片高潮片段"相对于"原曲时长"的结束时间戳,单位:毫秒。
└ other_segmentsArray短分片高潮片段的时间分片信息。仅当版权方 vendorID 取值为 0 或 1 时会返回此字段,其对应的枚举值信息,请联系 ZEGO 商务咨询。"短分片高潮片段"的开始、结束时间,必须在"长分片高潮片段"的时长范围内。详情可见other_segments
└ prelude_durationInt长分片高潮片段的前奏时间,单位:毫秒。
└ resources_sizeInt歌曲资源数,resources 中资源个数。
└ resourcesObject歌曲资源信息,详情可见resources
other_segments
参数类型描述
beginInt"短分片高潮片段"相对于"长分片高潮片段"时长的开始时间戳,可以直接通过 seekTo 接口跳转到该时间点开始播放,单位:毫秒。
endInt"短分片高潮片段"相对于"长分片高潮片段"时长的结束时间戳,单位:毫秒。
resources
参数类型描述
resource_idString歌曲资源 ID。
sizeInt歌曲资源大小,单位:字节。
qualityString歌曲音质,当前仅包含 normal(标准)音质的短分片高潮片段资源。
share_tokenString旧版参数。
resource_ttlInt该资源的剩余有效时长,单位:毫秒。

回调示例

Untitled
{
  "code": 0,
  "message": "string",
  "request_id": "string",
  "data": {
    "is_clip":1,
    "is_accompany":0,
    "krc_token":"UQIFmNmY3NbjZggIwNzFl",
    "krc_token_ttl":43200000,
    "song_id":"300785364",
    "share_token_ttl":3600000,
    "token_ttl":3600000,
    "segment_begin":133157,
    "segment_end":235337,
    "other_segments":[
        {
            "begin":59776,
            "end":73000
        }
    ],
    "prelude_duration":5000,
    "resources_size":1,
    "resources":[
        {
            "resource_id":"z_301215364_3",
            "size":0,
            "quality":"normal",
            "share_token":"7878787SDASDASDASDASD.SADSDASDASDASDSADSASDASDASDASD.V-sT427morLeej5sYUXgQzEgNjQ-YAoShYHGy5dGFKI",
            "resource_ttl": 300000
        }
    ]
  }
}
1
Copied!

获取其他用户分享的歌曲资源

注意

不同版权方对应的歌曲资源有效时长不同(详情请咨询 ZEGO 商务人员),调用 getSharedResource 接口获取其他用户分享的资源时,如果返回了 1017050 错误码,表示资源已失效。

此时,需要有用户重新调用 requestResource 接口获取资源并进行分享,其他用户重新调用 getSharedResource 接口获取对应的歌曲资源。

用户在获取歌曲/伴奏/高潮片段资源成功后,其他用户调用 getSharedResource 接口获取被分享的音乐资源,通过IZegoCopyrightedMusicGetSharedResourceCallback回调结果,可以获取对应歌曲的 resource_id。

接口调用示例
Untitled
/** 点歌用户分享的歌曲资源对应的 songID */
ZegoCopyrightedMusicGetSharedConfig config = new ZegoCopyrightedMusicGetSharedConfig();
config.songID = "";
/** 版权方,其对应的枚举值信息,请联系 ZEGO 商务咨询*/
config.vendorID = ZegoCopyrightedMusicVendorID.ZEGO_COPYRIGHTED_MUSIC_DEFAULT;

/** 点歌用户分享的歌曲资源对应的资源类型 */
ZegoCopyrightedMusicResourceType resourceType = ZegoCopyrightedMusicResourceType.ZEGO_COPYRIGHTED_MUSIC_RESOURCE_ACCOMPANIMENT_SONG;

copyrightedMusic.getSharedResource(config, resourceType, new IZegoCopyrightedMusicGetSharedResourceCallback() {
    @Override
    public void onGetSharedResourceCallback(int i, String s) {
        // s: result
    }
});
1
Copied!

获取包含人声的歌曲资源

回调结果
参数类型描述
codeNumber返回码,具体请参见 错误码,如查询不到可联系 ZEGO 技术支持。
messageString操作结果描述。
request_idString请求 ID。
dataObject响应数据。
└ is_accompanyInt是否为伴奏。
• 0:歌曲
• 1:伴奏
└ song_nameString歌曲名。
└ singer_nameString歌手名。
└ song_idString歌曲 ID。
└ durationInt歌曲时长,单位:毫秒。
└ resources_sizeInt歌曲资源数,resources 中资源个数。
└ resourcesObject歌曲资源信息,详情可见resources
resources
参数类型描述
resource_idString歌曲资源 ID。
sizeInt歌曲资源大小,单位:字节。
qualityString歌曲音质。
• normal:标准,支持该音质资源的版权方 vendorID 取值为 0(默认)、1、2、4。
• hq:高清,支持该音质资源的版权方 vendorID 取值为 0(默认)、1、2。
• sq:无损,支持该音质资源的版权方 vendorID 取值为 0(默认)、1。
resource_ttlInt该资源的剩余有效时长,单位:毫秒。

回调示例

Untitled
{
  "code": 0,
  "message": "string",
  "request_id": "string",
  "data": {
    "is_accompany": 0,
    "song_name": "string",
    "singer_name": "string",
    "song_id": "string",
    "duration": 0,
    "resources_size": 1,
    "resources": [
      {
        "resource_id": "string",
        "size": 0,
        "quality": "string",
        "resource_ttl": 300000
      }
    ]
  }
}
1
Copied!

获取伴奏资源

回调结果
参数类型描述
codeNumber返回码,具体请参见 错误码,如查询不到可联系 ZEGO 技术支持。
messageString操作结果描述。
request_idString请求 ID。
dataObject响应数据。
└ has_originalInt伴奏是否有原唱。
• 0:没有
• 1:有
└ is_accompanyInt是否为伴奏。
• 0:歌曲
• 1:伴奏
└ song_idString歌曲 ID。
└ durationInt歌曲时长,单位:毫秒。
└ krc_tokenString获取逐字歌词所需的 krc_token。
└ krc_token_ttlInt逐字歌词 krc_token 的有效期,默认值为 43200000 毫秒(12 小时)。
└ resources_sizeInt歌曲资源数,resources 中资源个数。
└ resourcesObject歌曲资源信息,详情可见resources
resources
参数类型描述
resource_idString歌曲资源 ID。
sizeInt歌曲资源大小,单位:字节。
qualityString歌曲音质。
• normal:标准,支持该音质资源的版权方 vendorID 取值为 0(默认)、1、2、4。
• hq:高清,支持该音质资源的版权方 vendorID 取值为 2。
resource_ttlInt该资源的剩余有效时长,单位:毫秒。

回调示例

Untitled
{
  "code": 0,
  "message": "string",
  "request_id": "string",
  "data": {
    "has_original": 1,
    "is_accompany": 1,
    "song_id": "string",
    "duration": 0,
    "krc_token":"string",
    "krc_token_ttl":0,
    "resources_size": 1,
    "resources": [
      {
        "resource_id": "string",
        "size": 0,
        "quality": "string",
        "resource_ttl": 300000
      }
    ]
  }
}
1
Copied!

获取长分片高潮片段资源

回调结果
参数类型描述
codeNumber返回码,具体请参见 错误码,如查询不到可联系 ZEGO 技术支持。
messageString操作结果描述。
request_idString请求 ID。
dataObject响应数据。
└ is_clipInt是否为高潮片段。
• 0:否
• 1:是
└ is_accompanyInt是否为伴奏。
• 0:歌曲
• 1:伴奏
└ song_idString歌曲 ID。
└ krc_tokenString获取逐字歌词所需的 krc_token。
└ krc_token_ttlInt逐字歌词 krc_token 的有效期,默认值为 43200000 毫秒(12 小时)。
└ token_ttlIntshare_token 有效时长,默认值为 3600000 毫秒(1 小时)。该参数为旧版参数,与 share_token_ttl 新版参数含义相同,为了兼容早期接入客户使用。
└ share_token_ttlIntshare_token 有效时长,默认值为 3600000 毫秒(1 小时)。该参数为新版参数,与 token_ttl 旧版参数含义相同,新接入客户主要使用该参数。
└ segment_beginInt高潮片段相对于原曲时长的开始时间戳,单位:毫秒。
└ segment_endInt高潮片段相对于原曲时长的结束时间戳,单位:毫秒。
└ prelude_durationInt高潮片段的前奏时间,单位:毫秒。
└ resources_sizeInt歌曲资源数,resources 中资源个数。
└ resourcesObject歌曲资源信息,详情可见resources
resources
参数类型描述
resource_idString歌曲资源 ID。
sizeInt歌曲资源大小,单位:字节。
qualityString歌曲音质,当前仅包含 normal(标准)音质的长分片高潮片段资源。
share_tokenString旧版参数。
resource_ttlInt该资源的剩余有效时长,单位:毫秒。

回调示例

Untitled
{
  "code": 0,
  "message": "string",
  "request_id": "string",
  "data": {
    "is_clip":1,
    "is_accompany":0,
    "song_id":"300785364",
    "krc_token":"UQIFmNmY3NbjZggIwNzFl",
    "krc_token_ttl":43200000,
    "token_ttl":3600000,
    "share_token_ttl":3600000,
    "segment_begin":133157,
    "segment_end":235337,
    "prelude_duration":5000,
    "resources_size":1,
    "resources":[
        {
            "resource_id":"z_301215364_3",
            "size":0,
            "quality":"normal",
            "share_token":"7878787SDASDASDASDASD.SADSDASDASDASDSADSASDASDASDASD.V-sT427morLeej5sYUXgQzEgNjQ-YAoShYHGy5dGFKI",
            "resource_ttl": 300000
        }
    ]
  }
}
1
Copied!

获取短分片高潮片段资源

注意
本功能提供更短的歌曲资源分片,支持获取抢唱片段的开始与结束时间等信息,适用于 KTV 抢唱场景中。
回调结果
参数类型描述
codeNumber返回码,具体请参见 错误码,如查询不到可联系 ZEGO 技术支持。
messageString操作结果描述。
request_idString请求 ID。
dataObject响应数据。
└ is_clipInt是否为高潮片段。
• 0:否
• 1:是
└ is_accompanyInt是否为伴奏。
• 0:歌曲
• 1:伴奏
└ song_idString歌曲 ID。
└ krc_tokenString获取逐字歌词所需的 krc_token。
└ krc_token_ttlInt逐字歌词 krc_token 的有效期,默认值为 43200000 毫秒(12 小时)。
└ token_ttlIntshare_token 有效时长,默认值为 3600000 毫秒(1 小时)。该参数为旧版参数,与 share_token_ttl 新版参数含义相同,为了兼容早期接入客户使用。
└ share_token_ttlIntshare_token 有效时长,默认值为 3600000 毫秒(1 小时)。该参数为新版参数,与 token_ttl 旧版参数含义相同,新接入客户主要使用该参数。
└ segment_beginInt"长分片高潮片段"相对于"原曲时长"的开始时间戳,单位:毫秒。
└ segment_endInt"长分片高潮片段"相对于"原曲时长"的结束时间戳,单位:毫秒。
└ other_segmentsArray短分片高潮片段的时间分片信息。仅当版权方 vendorID 取值为 0 或 1 时会返回此字段,其对应的枚举值信息,请联系 ZEGO 商务咨询。"短分片高潮片段"的开始、结束时间,必须在"长分片高潮片段"的时长范围内。详情可见other_segments
└ prelude_durationInt长分片高潮片段的前奏时间,单位:毫秒。
└ resources_sizeInt歌曲资源数,resources 中资源个数。
└ resourcesObject歌曲资源信息,详情可见resources
other_segments
参数类型描述
beginInt"短分片高潮片段"相对于"长分片高潮片段"时长的开始时间戳,可以直接通过 seekTo 接口跳转到该时间点开始播放,单位:毫秒。
endInt"短分片高潮片段"相对于"长分片高潮片段"时长的结束时间戳,单位:毫秒。
resources
参数类型描述
resource_idString歌曲资源 ID。
sizeInt歌曲资源大小,单位:字节。
qualityString歌曲音质,当前仅包含 normal(标准)音质的短分片高潮片段资源。
share_tokenString旧版参数。
resource_ttlInt该资源的剩余有效时长,单位:毫秒。

回调示例

Untitled
{
  "code": 0,
  "message": "string",
  "request_id": "string",
  "data": {
    "is_clip":1,
    "is_accompany":0,
    "song_id":"300785364",
    "krc_token":"UQIFmNmY3NbjZggIwNzFl",
    "krc_token_ttl":43200000,
    "token_ttl":3600000,
    "share_token_ttl":3600000,
    "segment_begin":133157,
    "segment_end":235337,
    "other_segments":[
        {
            "begin":59776,
            "end":73000
        }
    ],
    "prelude_duration":5000,
    "resources_size":1,
    "resources":[
        {
            "resource_id":"z_301215364_3",
            "size":0,
            "quality":"normal",
            "share_token":"7878787SDASDASDASDASD.SADSDASDASDASDSADSASDASDASDASD.V-sT427morLeej5sYUXgQzEgNjQ-YAoShYHGy5dGFKI",
            "resource_ttl": 300000
        }
    ]
  }
}
1
Copied!

获取歌词

获取逐行歌词

用户调用 getLrcLyric 接口,通过 IZegoCopyrightedMusicGetLrcLyricCallback 回调结果,可以获取逐行歌词信息。

接口调用示例

Untitled
String songID = ;
/** 版权方,其对应的枚举值信息,请联系 ZEGO 商务咨询*/
ZegoCopyrightedMusicVendorID vendorID = ZegoCopyrightedMusicVendorID.getZegoCopyrightedMusicVendorID(0);

copyrightedMusic.getLrcLyric(songID, vendorID, new IZegoCopyrightedMusicGetLrcLyricCallback() {
    @Override
    public void onGetLrcLyricCallback(int errorCode, String lyrics) {
        // s: result
    }
});
1
Copied!

回调结果

参数类型描述
linesObject逐行歌词。
└ begin_timeInt当前行歌词开始时间,单位:毫秒。
└ end_timeInt当前行歌词结束时间,单位:毫秒。
└ contentString歌词内容。
lrc_formatStringlrc 格式歌词。

其他字段为歌词源文件中的 title 字段,不同的歌词文件中不一定存在,一般可以选择忽略。具体如下:

参数类型描述
alString唱片集。
arString歌手。
auString歌词作者。
byString歌词文件创建者。
offsetInt以毫秒为单位、加快(+)或延后(-)歌词播放。
lenghtInt歌曲时长,单位:毫秒。
reString创建歌词文件的播放器或编辑器。
tiString歌词标题。
veString程序版本。

回调示例

Untitled
{
  "lines": [
    {
      "begin_time": 0,
      "end_time": 0,
      "content": ""
    }
  ],
  "lrc_format": "string",
  "al": "",
  "ar": "",
  "au": "",
  "by": "",
  "offset": 0,
  "lenght": 0,
  "re": "",
  "ti": "",
  "ve": ""
}
1
Copied!

获取逐字歌词

用户先通过 requestResourcegetSharedResource 接口获取到 krc_token,再调用 getKrcLyricByToken 接口,通过 IZegoCopyrightedMusicGetKrcLyricByTokenCallback 回调结果,可以获取逐字歌词信息。

接口调用示例

Untitled
String krcToken = ;

copyrightedMusic.getKrcLyricByToken(krcToken, new IZegoCopyrightedMusicGetKrcLyricByTokenCallback() {
    @Override
    public void onGetKrcLyricByTokenCallback(int errorCode, String lyrics) {

    }
});
1
Copied!

回调结果

参数类型描述
linesObjectSDK 解析后的歌词。
└ begin_timeInt行开始时间,单位:毫秒。
└ durationInt行持续时间,单位:毫秒。
注意
此处与获取逐行歌词的参数格式不同。
└ contentString歌词内容。
└ wordsObject歌词逐字内容,详情可见words
words
参数类型描述
offsetInt字偏移时间,单位:毫秒。
说明
字偏移指的是在歌词中该字的开始时间与该行开始时间对比的偏移。
durationInt字持续时间,单位:毫秒。
wordString歌词内容。

其他字段为歌词源文件中的 title 字段,不同的歌词文件中不一定存在,一般可以选择忽略。具体如下:

参数类型描述
alString唱片集。
arString歌手。
auString歌词作者。
byString歌词文件创建者。
lenghtInt歌曲时长,单位:毫秒。
reString创建歌词文件的播放器或编辑器。
tiString歌词标题。
veString程序版本。

回调示例

Untitled
{

  "lines": [
    {
      "begin_time": 12076,
      "duration": 6158,
      "content": "string",
      "words": [
        {
          "offset": 0,
          "duration": 496,
          "word": "string"
        }
      ]
    }
  ],
  "al": "",
  "ar": "",
  "au": "",
  "by": "",
  "lenght": 0,
  "re": "",
  "ti": "",
  "ve": "",
}
1
Copied!

Previous

发送扩展请求接口说明

Next

常见问题