package com.yutou.bili.api; import com.yutou.bili.bean.live.*; import com.yutou.okhttp.BaseBean; import com.yutou.okhttp.FileBody; import com.yutou.okhttp.HttpBody; import retrofit2.Call; import retrofit2.http.GET; import retrofit2.http.Query; import retrofit2.http.Streaming; import retrofit2.http.Url; /** * 直播间相关API * 文档地址 */ public interface LiveApi { /** * 获取直播间信息 * @param roomId 直播间号 必要 可以为短号 */ @GET("/room/v1/Room/get_info") Call> getRoomInfo(@Query("room_id")String roomId); @GET("/room/v1/Room/getRoomInfoOld") Call> getRoomStatus(@Query("mid")String mid); /** * 获取主播信息 */ @GET("/live_user/v1/Master/info") Call> getMasterInfo(@Query("uid")String uid); /** * 获取直播间信息 * @param id 直播间id * @param protocol 直播协议 {@link com.yutou.bili.enums.LiveProtocol} * @param format 格式 {@link com.yutou.bili.enums.LiveVideoFormat} * @param codec 编码 {@link com.yutou.bili.enums.LiveVideoCodec} * @param qn 清晰度 {@link com.yutou.bili.enums.LiveVideoDefinition} * @return */ @GET("/xlive/web-room/v2/index/getRoomPlayInfo") Call> getLiveRoomPlayInfo( @Query("room_id")String id, @Query("protocol")String protocol, @Query("format")String format, @Query("codec")String codec, @Query("qn")int qn ); @Streaming @GET() Call> downloadLive(@Url String url); @GET("/xlive/web-room/v1/index/getDanmuInfo") Call> getLiveRoomDanmuInfo(@Query("id")String id); }