全部产品

视频下载

通过 ID 或 URL 从服务端下载相应的视频。

这里的 ID 是指 Django 服务端存储的文件 ID。对于视频,这里的 ID 可以是组合 ID,也可以是单个 ID。组合 ID 的方式是视频 ID|图片 ID。

接口说明

  1. /**
  2. * 判断视频已下载
  3. * @param id 视频 ID 或 URL
  4. */
  5. public abstract boolean isVideoAvailable(String id);
  6. /**
  7. * 根据id获取视频路径
  8. * @param id 视频 ID 或 URL
  9. */
  10. public abstract String getVideoPathById(String id);
  11. /**
  12. * 根据 ID 获取视频缩略图路径
  13. * @param id 视频 ID 或 URL
  14. */
  15. public abstract String getThumbPathById(String id);
  16. /**
  17. * 根据localid删除视频
  18. * @param localid
  19. */
  20. public abstract void deleteShortVideo(String localid);
  21. /**
  22. * 根据路径解析视频信息
  23. * @param path 视频路径
  24. */
  25. public abstract APVideoInfo parseVideoInfo(String path);
  26. /**
  27. * 下载视频文件,小视频和相册视频通用
  28. * @param id 视频路径
  29. * @param callback 下载回调
  30. * @param business 业务标识
  31. */
  32. public abstract void downloadVideo(String id,
  33. APVideoDownloadCallback callback,
  34. String business);
  35. /**
  36. * 加载小视频,首先下载缩略图,设置到 playView 上,之后再判断 forceVideo,若为true 就下载视频
  37. * @param id 视频路径
  38. * @param playView 播放view
  39. * @param callback 下载回调
  40. * @param forceVideo 是否下载视频
  41. * @param business 业务标识
  42. */
  43. public abstract void loadShortVideo(String id,
  44. SightVideoPlayView playView,
  45. Drawable defDrawable,
  46. APVideoDownloadCallback callback,
  47. boolean forceVideo,
  48. String business);
  49. /**
  50. * 加载小视频,首先下载缩略图,设置到 playView上,之后再判断 forceVideo,若为true 就下载视频
  51. * @param id 视频路径
  52. * @param playView 播放 view
  53. * @param width 显示图片宽
  54. * @param height 显示图片高
  55. * @param defDrawable 默认图
  56. * @param callback 下载回调
  57. * @param forceVideo 是否下载视频
  58. * @param business 业务标识
  59. */
  60. public abstract void loadShortVideo(String id,
  61. SightVideoPlayView playView,
  62. Integer width,
  63. Integer height,
  64. Drawable defDrawable,
  65. APVideoDownloadCallback callback,
  66. boolean forceVideo,
  67. String business);
  68. /**
  69. * 同步下载短视频
  70. * @param id 视频 ID
  71. * @param callback 下载回调
  72. * @param business 业务标识
  73. */
  74. public abstract APVideoDownloadRsp loadShortVideoSync(String id,
  75. APVideoDownloadCallback callback,
  76. String business);
  77. /**
  78. * 下载相册视频
  79. * @param id 视频路径
  80. * @param view 显示图片 view
  81. * @param defDrawable 默认图
  82. * @param callback 下载回调
  83. * @param business 业务标识
  84. */
  85. public abstract void loadAlbumVideo(String id,
  86. ImageView view,
  87. Drawable defDrawable,
  88. APImageDownLoadCallback callback,
  89. String business);
  90. /**
  91. * 加载相册视频
  92. *
  93. * @param id 视频 ID 或路径
  94. * @param view 显示 view
  95. * @param width 示图片的宽
  96. * @param height 显示图片的高
  97. * @param defDrawable 默认图
  98. * @param callback 回调
  99. * @param business 业务标识
  100. */
  101. public abstract void loadAlbumVideo(String id,
  102. ImageView view,
  103. Integer width,
  104. Integer height,
  105. Drawable defDrawable,
  106. APImageDownLoadCallback callback,
  107. String business);
  108. /**
  109. * 下载视频缩略图
  110. *
  111. * @param id 视频 ID 或路径
  112. * @param view 显示 view
  113. * @param defDrawable 默认图
  114. * @param callback 回调
  115. * @param business 业务标识
  116. */
  117. public abstract void loadVideoThumb(String id,
  118. View view,
  119. Drawable defDrawable,
  120. APImageDownLoadCallback callback,
  121. String business);
  122. /**
  123. * 下载视频缩略图
  124. *
  125. * @param id 视频 ID 或路径
  126. * @param view 显示 view
  127. * @param width 示图片的宽
  128. * @param height 显示图片的高
  129. * @param defDrawable 默认图
  130. * @param callback 回调
  131. * @param business 业务标识
  132. */
  133. public abstract void loadVideoThumb(String id,
  134. View view,
  135. Integer width,
  136. Integer height,
  137. Drawable defDrawable,
  138. APImageDownLoadCallback callback,
  139. String business);
  140. /**
  141. * 小视频加载,参数最全的接口
  142. * @param req 请求参数
  143. * @param business 业务标识
  144. * @param playView 播放显示 view,同步下载的时候不需要传入
  145. * @return
  146. */
  147. public abstract APVideoDownloadRsp loadShortVideo(APVideoReq req, SightVideoPlayView playView,String business);
  148. /**
  149. * 加载相册视频,参数最全的接口
  150. * @param req 请求参数,注意:里面的 MD5 也需要组合的 MD5
  151. * @param view 图片显示 view
  152. * @param business 业务标识
  153. */
  154. public abstract void loadAlbumVideo(APVideoReq req,ImageView view,String business);
  155. /**
  156. * 生成视频 URL
  157. * @param id django id
  158. * @param extraConfig
  159. * @return video url
  160. */
  161. public abstract String buildUrl(String id, Bundle extraConfig) throws Exception;