com.qihoo.videocloud

## Interface IQHVCPlayer

- All Known Subinterfaces:
    IQHVCPlayerAdvanced
  All Known Implementing Classes:
    QHVCPlayer

      public interface IQHVCPlayer

  播放器基本功能

  Created by guohailiang on 2017/5/10.

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Interface and Description
    --- | ---
    `static interface` | `IQHVCPlayer.Error` 错误信息
    `static interface` | `IQHVCPlayer.ErrorExtra` 错误信息-补充说明
    `static interface` | `IQHVCPlayer.Info` 播放info
    `static interface` | `IQHVCPlayer.InfoExtra` 播放info
    `static interface` | `IQHVCPlayer.MediaInfoKey` 多媒体信息key
    `static interface` | `IQHVCPlayer.OnBufferingEventListener` 缓冲事件
    `static interface` | `IQHVCPlayer.OnBufferingUpdateListener` Interface definition of a callback to be invoked indicating buffering status of a media resource being streamed over the network.
    `static interface` | `IQHVCPlayer.OnCompletionListener` Interface definition for a callback to be invoked when playback of a media source has completed.
    `static interface` | `IQHVCPlayer.OnErrorListener` Interface definition of a callback to be invoked when there has been an error during an asynchronous operation.
    `static interface` | `IQHVCPlayer.OnInfoListener` Interface definition of a callback to be invoked to communicate some info and/or warning about the media or its playback.
    `static interface` | `IQHVCPlayer.OnPreparedListener`
    `static interface` | `IQHVCPlayer.onProgressChangeListener`
    `static interface` | `IQHVCPlayer.OnSeekCompleteListener` Interface definition of a callback to be invoked indicating the completion of a seek operation.
    `static interface` | `IQHVCPlayer.OnVideoSizeChangedListener` Interface definition of a callback to be invoked when the video size is first known or updated
    `static interface` | `IQHVCPlayer.PlayType` 播放类型

  - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static int` | `ERROR_EXTRA_EMPTY` 详细信息为空
    `static int` | `ERROR_EXTRA_FORMAT_NOT_SUPPORT` 不支持的视频格式
    `static int` | `ERROR_EXTRA_PLAY_CONNECT_FAILED` 连接断开或者失败
    `static int` | `ERROR_EXTRA_PLAY_JPLAYER_OPEN_FAILED` jplayer open失败，jni层直接返回
    `static int` | `ERROR_EXTRA_PLAY_OPEN_URL_FAILED` 回放状态下，文件没有打开，或者url失效
    `static int` | `ERROR_EXTRA_PLAY_SET_SESSION_FAILED` startplay时，setsession失败,目前此接口只有直播开播时使用
    `static int` | `ERROR_EXTRA_PLAY_SN_FAILED` 调度sn失败了
    `static int` | `ERROR_EXTRA_PLAY_SUBSCRIBE_FAILED` 拿不到媒体信息、或者打不开连接
    `static int` | `ERROR_EXTRA_PLAY_UNSUPPORT_HARDWARE_DECODE` 手机不支持硬解码
    `static int` | `ERROR_EXTRA_PREPARE_DISPATCH_FAILED` 调度返回的url为null
    `static int` | `ERROR_EXTRA_RECORD_ERROR` 录像出现错误
    `static int` | `ERROR_EXTRA_RECORD_FILE_ERROR` 无效的录像文件
    `static int` | `ERROR_EXTRA_UNKNOW`
    `static int` | `ERROR_FILE_NOT_OPEN` 文件不能打开
    `static int` | `ERROR_FORMATNOTSUPPORT` 不支持的视频格式
    `static int` | `ERROR_INVALID_PARAM` 无效参数
    `static int` | `ERROR_IO_EXCEPTION` IO异常
    `static int` | `ERROR_NOT_SUPPORT_OPERATION` 安全异常
    `static int` | `ERROR_OK` 成功
    `static int` | `ERROR_PLAYER_PLUGIN_LOAD_FAILED` 播放器插件加载失败
    `static int` | `ERROR_PREPARE_FAILED` prepare失败
    `static int` | `ERROR_SECURITY_EXCEPTION` 安全异常
    `static int` | `ERROR_START_PLAY_FAILED` 开始播放就失败
    `static int` | `ERROR_STATE_AUTH_FAILED` 鉴权失败
    `static int` | `ERROR_STATE_INVALID` 当前播放器状态无效
    `static int` | `ERROR_UNKNOW` 未知错误
    `static int` | `INFO_CONNECT_INBACKGOURND` 主播切入后台
    `static int` | `INFO_DEVICE_RENDER_ERR` 渲染过程中出现错误
    `static int` | `INFO_DEVICE_RENDER_FIRST_FRAME` 渲染第一帧消息 建议: 在QHVCTextureView上覆盖一张图片，收到这个消息时，隐藏图片
    `static int` | `INFO_DEVICE_RENDER_QUERY_SURFACE` 渲染过程中底层surface为空，尝试请求设置
    `static int` | `INFO_DEVICE_RENDER_SURFACE_CHANGE` 渲染过程中底层surface修改
    `static int` | `INFO_EXTRA_EMPTY` info 附加信息为空
    `static int` | `INFO_EXTRA_H265_PLAY_FAILED` h265播放失败
    `static int` | `INFO_EXTRA_H265_START_PLAY` H265开始播放
    `static int` | `INFO_EXTRA_VIDEO_CACHE_FAILED` 小视频缓存失败
    `static int` | `INFO_EXTRA_VIDEO_CACHE_SUCCESS` 小视频缓存成功
    `static int` | `INFO_FILE_OPEN` 文件打开消息.
    `static int` | `INFO_LIVE_PLAY_FPS` 直播的帧率
    `static int` | `INFO_LIVE_PLAY_SPEED` 播放速度，以k/s为单位
    `static int` | `INFO_LIVE_PLAY_START` 直播刚开始播放，调用一次
    `static int` | `INFO_PLAY_H265` H265流播放通知
    `static int` | `INFO_PLAYER_AV_MANAGER_INIT_SUCCESS` 渲染模块初始化成功
    `static int` | `INFO_PLAYER_AV_NOT_SYNC` 音视频不同步消息
    `static int` | `INFO_PLAYER_CLOSE` 播放器关闭消息
    `static int` | `INFO_PLAYER_OPEN_SUCCESS` 播放器打开成功，获取到了PlayerId
    `static int` | `INFO_PLAYER_PLUGIN_DOWNLOAD_SUCCESS` 播放器插件下载成功
    `static int` | `INFO_PLAYER_PLUGIN_START_DOWNLOAD` 开始下载播放器插件
    `static int` | `INFO_RENDER_RESET_SURFACE` reset surface
    `static int` | `INFO_SEEK_FAILED` seek操作失败
    `static int` | `INFO_SESSION_CLOSED` 会话关闭
    `static int` | `INFO_VIDEO_CACHE` 小视频缓存消息
    `static java.lang.String` | `KEY_MEDIA_INFO_AUDIO_BITRATE_INT`
    `static java.lang.String` | `KEY_MEDIA_INFO_AUDIO_CHANNEL_INT`
    `static java.lang.String` | `KEY_MEDIA_INFO_AUDIO_FORMAT_STRING`
    `static java.lang.String` | `KEY_MEDIA_INFO_AUDIO_SAMPLE_RATE_INT`
    `static java.lang.String` | `KEY_MEDIA_INFO_BITRATE_INT`
    `static java.lang.String` | `KEY_MEDIA_INFO_P2PTASK_CACHE_FINISH_BOOLEAN` 缓冲是否完成
    `static java.lang.String` | `KEY_MEDIA_INFO_P2PTASK_CACHE_SIZE_LONG` 当前已缓存文件大小，单位字节, 播放器请求位置后已缓存的连续大小
    `static java.lang.String` | `KEY_MEDIA_INFO_P2PTASK_CDN_DOWNLOAD_SIZE_LONG` p2ptask cdn 下载量，Byte
    `static java.lang.String` | `KEY_MEDIA_INFO_P2PTASK_CDN_DOWNLOAD_SPEED_LONG` p2ptask cdn 下载速度，Byte/秒
    `static java.lang.String` | `KEY_MEDIA_INFO_P2PTASK_DOWNLOAD_SPEED_LONG` p2ptask 下载速度，Byte/秒
    `static java.lang.String` | `KEY_MEDIA_INFO_P2PTASK_P2P_DOWNLOAD_SIZE_LONG` p2ptask p2p 下载量，Byte
    `static java.lang.String` | `KEY_MEDIA_INFO_P2PTASK_P2P_DOWNLOAD_SPEED_LONG` p2ptask p2p 下载速度，Byte/秒
    `static java.lang.String` | `KEY_MEDIA_INFO_P2PTASK_TOTAL_SIZE_LONG` 文件总大小，单位字节
    `static java.lang.String` | `KEY_MEDIA_INFO_REAL_URL_STRING`
    `static java.lang.String` | `KEY_MEDIA_INFO_VIDEO_DECODE_PIX_FORMAT_STRING`
    `static java.lang.String` | `KEY_MEDIA_INFO_VIDEO_DURATION_INT`
    `static java.lang.String` | `KEY_MEDIA_INFO_VIDEO_FORMAT_STRING`
    `static java.lang.String` | `KEY_MEDIA_INFO_VIDEO_FPS_INT`
    `static java.lang.String` | `KEY_MEDIA_INFO_VIDEO_HEIGHT_INT`
    `static java.lang.String` | `KEY_MEDIA_INFO_VIDEO_WIDTH_INT`
    `static int` | `PLAYTYPE_LIVE` 播放类型: 直播 `setDataSource(int, java.lang.String, java.lang.String)`
    `static int` | `PLAYTYPE_VOD` 播放类型: 点播 `setDataSource(int, java.lang.String, java.lang.String)`

  - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method and Description
    --- | ---
    `int` | `getCurrentPosition()` 获取当前已播放时间，单位：ms(毫秒) 注： 只支持点播（回看）
    `int` | `getDuration()` 获取视频文件总时长，单位：ms(毫秒) 注： 只支持点播（回看）
    `java.util.Map<java.lang.String,java.lang.Object>` | `getMediaInformation()` 获取视频信息
    `long` | `getPlayerId()`
    `int` | `getRenderMode()` 获取渲染模式
    `float` | `getVolume()` 获取播放器当前音量
    `boolean` | `isMute()` 是否是静音状态
    `boolean` | `isPaused()` 视频是否处于暂停状态
    `boolean` | `isPlaying()` 是否正在播放
    `int` | `pause()` 暂停播放
    `int` | `prepareAsync()` 准备播放，异步方法 注： 调用此方法开始走调度流程。
    `void` | `release()` 播放器资源回收
    `int` | `seekTo(int millis)` 目标时间点,单位：ms(毫秒) 目前只支持回看拖动
    `int` | `setDataSource(int playType, java.lang.String url, java.lang.String channelId)` 设置视频源
    `int` | `setDataSource(int playType, java.lang.String url, java.lang.String channelId, java.util.Map<java.lang.String,java.lang.Object> options)` 设置视频源
    `void` | `setDisplay(com.qihoo.livecloud.play.callback.ILiveCloudDisplay display)` 设置播放器显示View
    `int` | `setMute(boolean mute)` 设置是否静音播放
    `void` | `setOnBufferingEventListener(IQHVCPlayer.OnBufferingEventListener listener)`
    `void` | `setOnBufferingUpdateListener(IQHVCPlayer.OnBufferingUpdateListener listener)` Register a callback to be invoked when the status of a network stream's buffer has changed.
    `void` | `setOnCompletionListener(IQHVCPlayer.OnCompletionListener listener)` Register a callback to be invoked when the end of a media source has been reached during playback.
    `void` | `setOnErrorListener(IQHVCPlayer.OnErrorListener listener)` Register a callback to be invoked when an error has happened during an asynchronous operation.
    `void` | `setOnInfoListener(IQHVCPlayer.OnInfoListener listener)` Register a callback to be invoked when an info/warning is available.
    `void` | `setOnPreparedListener(IQHVCPlayer.OnPreparedListener listener)` Register a callback to be invoked when the media source is ready for playback.
    `void` | `setOnProgressChangeListener(IQHVCPlayer.onProgressChangeListener listener)`
    `void` | `setOnSeekCompleteListener(IQHVCPlayer.OnSeekCompleteListener listener)` Register a callback to be invoked when a seek operation has been completed.
    `void` | `setOnVideoSizeChangedListener(IQHVCPlayer.OnVideoSizeChangedListener listener)` Register a callback to be invoked when the video size is known or updated.
    `void` | `setScreenOnWhilePlaying(boolean screenOn)` 设置播放时是否屏幕常亮
    `void` | `setSurface(java.lang.String from, SurfaceTexture texture)` 为播放器设置显示SurfaceTexture
    `int` | `setSurfaceViewport(int x, int y, int width, int height)` 为播放器渲染的surface设置Viewport
    `int` | `setVolume(float volume)` 设置音量
    `int` | `start()` 播放
    `int` | `stop()` 停止播放

- - ### Field Detail

    - #### PLAYTYPE_LIVE

          static final int PLAYTYPE_LIVE

      播放类型: 直播 `setDataSource(int, java.lang.String, java.lang.String)`
      See Also:
        Constant Field Values

    - #### PLAYTYPE_VOD

          static final int PLAYTYPE_VOD

      播放类型: 点播 `setDataSource(int, java.lang.String, java.lang.String)`
      See Also:
        Constant Field Values

    - #### ERROR_OK

          static final int ERROR_OK

      成功
      See Also:
        Constant Field Values

    - #### ERROR_UNKNOW

          static final int ERROR_UNKNOW

      未知错误
      See Also:
        Constant Field Values

    - #### ERROR_PREPARE_FAILED

          static final int ERROR_PREPARE_FAILED

      prepare失败
      See Also:
        Constant Field Values

    - #### ERROR_START_PLAY_FAILED

          static final int ERROR_START_PLAY_FAILED

      开始播放就失败
      See Also:
        Constant Field Values

    - #### ERROR_FORMATNOTSUPPORT

          static final int ERROR_FORMATNOTSUPPORT

      不支持的视频格式
      See Also:
        Constant Field Values

    - #### ERROR_FILE_NOT_OPEN

          static final int ERROR_FILE_NOT_OPEN

      文件不能打开
      See Also:
        Constant Field Values

    - #### ERROR_PLAYER_PLUGIN_LOAD_FAILED

          static final int ERROR_PLAYER_PLUGIN_LOAD_FAILED

      播放器插件加载失败
      See Also:
        Constant Field Values

    - #### ERROR_INVALID_PARAM

          static final int ERROR_INVALID_PARAM

      无效参数
      See Also:
        Constant Field Values

    - #### ERROR_STATE_INVALID

          static final int ERROR_STATE_INVALID

      当前播放器状态无效
      See Also:
        Constant Field Values

    - #### ERROR_IO_EXCEPTION

          static final int ERROR_IO_EXCEPTION

      IO异常
      See Also:
        Constant Field Values

    - #### ERROR_SECURITY_EXCEPTION

          static final int ERROR_SECURITY_EXCEPTION

      安全异常
      See Also:
        Constant Field Values

    - #### ERROR_NOT_SUPPORT_OPERATION

          static final int ERROR_NOT_SUPPORT_OPERATION

      安全异常
      See Also:
        Constant Field Values

    - #### ERROR_STATE_AUTH_FAILED

          static final int ERROR_STATE_AUTH_FAILED

      鉴权失败
      See Also:
        Constant Field Values

    - #### ERROR_EXTRA_UNKNOW

          static final int ERROR_EXTRA_UNKNOW

      See Also:
        Constant Field Values

    - #### ERROR_EXTRA_EMPTY

          static final int ERROR_EXTRA_EMPTY

      详细信息为空
      See Also:
        Constant Field Values

    - #### ERROR_EXTRA_PREPARE_DISPATCH_FAILED

          static final int ERROR_EXTRA_PREPARE_DISPATCH_FAILED

      调度返回的url为null
      See Also:
        Constant Field Values

    - #### ERROR_EXTRA_PLAY_SET_SESSION_FAILED

          static final int ERROR_EXTRA_PLAY_SET_SESSION_FAILED

      startplay时，setsession失败,目前此接口只有直播开播时使用
      See Also:
        Constant Field Values

    - #### ERROR_EXTRA_PLAY_OPEN_URL_FAILED

          static final int ERROR_EXTRA_PLAY_OPEN_URL_FAILED

      回放状态下，文件没有打开，或者url失效
      See Also:
        Constant Field Values

    - #### ERROR_EXTRA_PLAY_JPLAYER_OPEN_FAILED

          static final int ERROR_EXTRA_PLAY_JPLAYER_OPEN_FAILED

      jplayer open失败，jni层直接返回
      See Also:
        Constant Field Values

    - #### ERROR_EXTRA_PLAY_SN_FAILED

          static final int ERROR_EXTRA_PLAY_SN_FAILED

      调度sn失败了
      See Also:
        Constant Field Values

    - #### ERROR_EXTRA_PLAY_SUBSCRIBE_FAILED

          static final int ERROR_EXTRA_PLAY_SUBSCRIBE_FAILED

      拿不到媒体信息、或者打不开连接
      See Also:
        Constant Field Values

    - #### ERROR_EXTRA_PLAY_UNSUPPORT_HARDWARE_DECODE

          static final int ERROR_EXTRA_PLAY_UNSUPPORT_HARDWARE_DECODE

      手机不支持硬解码
      See Also:
        Constant Field Values

    - #### ERROR_EXTRA_PLAY_CONNECT_FAILED

          static final int ERROR_EXTRA_PLAY_CONNECT_FAILED

      连接断开或者失败
      See Also:
        Constant Field Values

    - #### ERROR_EXTRA_RECORD_ERROR

          static final int ERROR_EXTRA_RECORD_ERROR

      录像出现错误
      See Also:
        Constant Field Values

    - #### ERROR_EXTRA_RECORD_FILE_ERROR

          static final int ERROR_EXTRA_RECORD_FILE_ERROR

      无效的录像文件
      See Also:
        Constant Field Values

    - #### ERROR_EXTRA_FORMAT_NOT_SUPPORT

          static final int ERROR_EXTRA_FORMAT_NOT_SUPPORT

      不支持的视频格式
      See Also:
        Constant Field Values

    - #### INFO_PLAYER_OPEN_SUCCESS

          static final int INFO_PLAYER_OPEN_SUCCESS

      播放器打开成功，获取到了PlayerId
      See Also:
        Constant Field Values

    - #### INFO_LIVE_PLAY_START

          static final int INFO_LIVE_PLAY_START

      直播刚开始播放，调用一次
      See Also:
        Constant Field Values

    - #### INFO_LIVE_PLAY_SPEED

          static final int INFO_LIVE_PLAY_SPEED

      播放速度，以k/s为单位
      See Also:
        Constant Field Values

    - #### INFO_LIVE_PLAY_FPS

          static final int INFO_LIVE_PLAY_FPS

      直播的帧率
      See Also:
        Constant Field Values

    - #### INFO_SESSION_CLOSED

          static final int INFO_SESSION_CLOSED

      会话关闭
      See Also:
        Constant Field Values

    - #### INFO_CONNECT_INBACKGOURND

          static final int INFO_CONNECT_INBACKGOURND

      主播切入后台
      See Also:
        Constant Field Values

    - #### INFO_VIDEO_CACHE

          static final int INFO_VIDEO_CACHE

      小视频缓存消息
      See Also:
        Constant Field Values

    - #### INFO_PLAY_H265

          static final int INFO_PLAY_H265

      H265流播放通知
      See Also:
        Constant Field Values

    - #### INFO_PLAYER_CLOSE

          static final int INFO_PLAYER_CLOSE

      播放器关闭消息
      See Also:
        Constant Field Values

    - #### INFO_SEEK_FAILED

          static final int INFO_SEEK_FAILED

      seek操作失败
      See Also:
        Constant Field Values

    - #### INFO_DEVICE_RENDER_QUERY_SURFACE

          static final int INFO_DEVICE_RENDER_QUERY_SURFACE

      渲染过程中底层surface为空，尝试请求设置
      See Also:
        Constant Field Values

    - #### INFO_DEVICE_RENDER_SURFACE_CHANGE

          static final int INFO_DEVICE_RENDER_SURFACE_CHANGE

      渲染过程中底层surface修改
      See Also:
        Constant Field Values

    - #### INFO_DEVICE_RENDER_FIRST_FRAME

          static final int INFO_DEVICE_RENDER_FIRST_FRAME

      渲染第一帧消息 建议: 在QHVCTextureView上覆盖一张图片，收到这个消息时，隐藏图片
      See Also:
        Constant Field Values

    - #### INFO_DEVICE_RENDER_ERR

          static final int INFO_DEVICE_RENDER_ERR

      渲染过程中出现错误
      See Also:
        Constant Field Values

    - #### INFO_RENDER_RESET_SURFACE

          static final int INFO_RENDER_RESET_SURFACE

      reset surface
      See Also:
        Constant Field Values

    - #### INFO_PLAYER_PLUGIN_START_DOWNLOAD

          static final int INFO_PLAYER_PLUGIN_START_DOWNLOAD

      开始下载播放器插件
      See Also:
        Constant Field Values

    - #### INFO_PLAYER_PLUGIN_DOWNLOAD_SUCCESS

          static final int INFO_PLAYER_PLUGIN_DOWNLOAD_SUCCESS

      播放器插件下载成功
      See Also:
        Constant Field Values

    - #### INFO_PLAYER_AV_MANAGER_INIT_SUCCESS

          static final int INFO_PLAYER_AV_MANAGER_INIT_SUCCESS

      渲染模块初始化成功
      See Also:
        Constant Field Values

    - #### INFO_PLAYER_AV_NOT_SYNC

          static final int INFO_PLAYER_AV_NOT_SYNC

      音视频不同步消息
      See Also:
        Constant Field Values

    - #### INFO_FILE_OPEN

          static final int INFO_FILE_OPEN

      文件打开消息. 收到此消息后，可以获取点播视频源时长`getDuration()`
      See Also:
        Constant Field Values

    - #### INFO_EXTRA_EMPTY

          static final int INFO_EXTRA_EMPTY

      info 附加信息为空
      See Also:
        Constant Field Values

    - #### INFO_EXTRA_VIDEO_CACHE_SUCCESS

          static final int INFO_EXTRA_VIDEO_CACHE_SUCCESS

      小视频缓存成功
      See Also:
        Constant Field Values

    - #### INFO_EXTRA_VIDEO_CACHE_FAILED

          static final int INFO_EXTRA_VIDEO_CACHE_FAILED

      小视频缓存失败
      See Also:
        Constant Field Values

    - #### INFO_EXTRA_H265_START_PLAY

          static final int INFO_EXTRA_H265_START_PLAY

      H265开始播放
      See Also:
        Constant Field Values

    - #### INFO_EXTRA_H265_PLAY_FAILED

          static final int INFO_EXTRA_H265_PLAY_FAILED

      h265播放失败
      See Also:
        Constant Field Values

    - #### KEY_MEDIA_INFO_VIDEO_DURATION_INT

          static final java.lang.String KEY_MEDIA_INFO_VIDEO_DURATION_INT

      See Also:
        Constant Field Values

    - #### KEY_MEDIA_INFO_VIDEO_WIDTH_INT

          static final java.lang.String KEY_MEDIA_INFO_VIDEO_WIDTH_INT

      See Also:
        Constant Field Values

    - #### KEY_MEDIA_INFO_VIDEO_HEIGHT_INT

          static final java.lang.String KEY_MEDIA_INFO_VIDEO_HEIGHT_INT

      See Also:
        Constant Field Values

    - #### KEY_MEDIA_INFO_VIDEO_FPS_INT

          static final java.lang.String KEY_MEDIA_INFO_VIDEO_FPS_INT

      See Also:
        Constant Field Values

    - #### KEY_MEDIA_INFO_VIDEO_FORMAT_STRING

          static final java.lang.String KEY_MEDIA_INFO_VIDEO_FORMAT_STRING

      See Also:
        Constant Field Values

    - #### KEY_MEDIA_INFO_VIDEO_DECODE_PIX_FORMAT_STRING

          static final java.lang.String KEY_MEDIA_INFO_VIDEO_DECODE_PIX_FORMAT_STRING

      See Also:
        Constant Field Values

    - #### KEY_MEDIA_INFO_AUDIO_FORMAT_STRING

          static final java.lang.String KEY_MEDIA_INFO_AUDIO_FORMAT_STRING

      See Also:
        Constant Field Values

    - #### KEY_MEDIA_INFO_AUDIO_CHANNEL_INT

          static final java.lang.String KEY_MEDIA_INFO_AUDIO_CHANNEL_INT

      See Also:
        Constant Field Values

    - #### KEY_MEDIA_INFO_AUDIO_SAMPLE_RATE_INT

          static final java.lang.String KEY_MEDIA_INFO_AUDIO_SAMPLE_RATE_INT

      See Also:
        Constant Field Values

    - #### KEY_MEDIA_INFO_BITRATE_INT

          static final java.lang.String KEY_MEDIA_INFO_BITRATE_INT

      See Also:
        Constant Field Values

    - #### KEY_MEDIA_INFO_AUDIO_BITRATE_INT

          static final java.lang.String KEY_MEDIA_INFO_AUDIO_BITRATE_INT

      See Also:
        Constant Field Values

    - #### KEY_MEDIA_INFO_P2PTASK_DOWNLOAD_SPEED_LONG

          static final java.lang.String KEY_MEDIA_INFO_P2PTASK_DOWNLOAD_SPEED_LONG

      p2ptask 下载速度，Byte/秒
      See Also:
        Constant Field Values

    - #### KEY_MEDIA_INFO_P2PTASK_CDN_DOWNLOAD_SPEED_LONG

          static final java.lang.String KEY_MEDIA_INFO_P2PTASK_CDN_DOWNLOAD_SPEED_LONG

      p2ptask cdn 下载速度，Byte/秒
      See Also:
        Constant Field Values

    - #### KEY_MEDIA_INFO_P2PTASK_P2P_DOWNLOAD_SPEED_LONG

          static final java.lang.String KEY_MEDIA_INFO_P2PTASK_P2P_DOWNLOAD_SPEED_LONG

      p2ptask p2p 下载速度，Byte/秒
      See Also:
        Constant Field Values

    - #### KEY_MEDIA_INFO_P2PTASK_P2P_DOWNLOAD_SIZE_LONG

          static final java.lang.String KEY_MEDIA_INFO_P2PTASK_P2P_DOWNLOAD_SIZE_LONG

      p2ptask p2p 下载量，Byte
      See Also:
        Constant Field Values

    - #### KEY_MEDIA_INFO_P2PTASK_CDN_DOWNLOAD_SIZE_LONG

          static final java.lang.String KEY_MEDIA_INFO_P2PTASK_CDN_DOWNLOAD_SIZE_LONG

      p2ptask cdn 下载量，Byte
      See Also:
        Constant Field Values

    - #### KEY_MEDIA_INFO_P2PTASK_CACHE_SIZE_LONG

          static final java.lang.String KEY_MEDIA_INFO_P2PTASK_CACHE_SIZE_LONG

      当前已缓存文件大小，单位字节, 播放器请求位置后已缓存的连续大小
      See Also:
        Constant Field Values

    - #### KEY_MEDIA_INFO_P2PTASK_TOTAL_SIZE_LONG

          static final java.lang.String KEY_MEDIA_INFO_P2PTASK_TOTAL_SIZE_LONG

      文件总大小，单位字节
      See Also:
        Constant Field Values

    - #### KEY_MEDIA_INFO_P2PTASK_CACHE_FINISH_BOOLEAN

          static final java.lang.String KEY_MEDIA_INFO_P2PTASK_CACHE_FINISH_BOOLEAN

      缓冲是否完成
      See Also:
        Constant Field Values

    - #### KEY_MEDIA_INFO_REAL_URL_STRING

          static final java.lang.String KEY_MEDIA_INFO_REAL_URL_STRING

      See Also:
        Constant Field Values

  - ### Method Detail

    - #### setDisplay

          void setDisplay(com.qihoo.livecloud.play.callback.ILiveCloudDisplay display)

      设置播放器显示View
      Parameters:
        `display:` - 目前支持GL2VideoView、TexturePlayView、GLTextureView、LiveCloudPlayView

    - #### setDataSource

          int setDataSource(int playType,
                            java.lang.String url,
                            java.lang.String channelId)

      设置视频源
      Parameters:
        `playType` - 播放类型 `PLAYTYPE_LIVE`, `PLAYTYPE_VOD`
        `url` - 视频源地址
        `channelId` - 业务id
      Returns:
        `ERROR_OK` 其他：`Error`

    - #### setDataSource

          int setDataSource(int playType,
                            java.lang.String url,
                            java.lang.String channelId,
                            java.util.Map<java.lang.String,java.lang.Object> options)

      设置视频源
      Parameters:
        `playType` - 播放类型 `PLAYTYPE_LIVE`, `PLAYTYPE_VOD`
        `url` - url
        `channelId` - 业务id
        `options` - 播放器可选属性 `IQHVCPlayerAdvanced.OptionKey`
      Returns:
        `ERROR_OK` 其他：`Error`

    - #### prepareAsync

          int prepareAsync()

      准备播放，异步方法
      注： 调用此方法开始走调度流程。

      成功: 回调OnPreparedListener的onPrepared()接口 - 调度成功，应用层可调用start(0)开始播放
      失败: 回调onError(ERROR_PREPARE_FAILED, ERROR_EXTRA_PREPARE_DISPATCH_FAILED)

      Returns:
        `ERROR_OK` 其他：`Error`

    - #### start

          int start()

      播放
      Returns:
        `ERROR_OK` 其他：`Error`

    - #### isPlaying

          boolean isPlaying()

      是否正在播放
      Returns:

    - #### pause

          int pause()

      暂停播放
      Returns:
        `ERROR_OK` 其他：`Error`

    - #### isPaused

          boolean isPaused()

      视频是否处于暂停状态
      Returns:

    - #### seekTo

          int seekTo(int millis)

      目标时间点,单位：ms(毫秒)
      目前只支持回看拖动
      Parameters:
        `millis` - 要拖动到的目标时间
      Returns:
        `ERROR_OK` 其他：`Error`

    - #### getCurrentPosition

          int getCurrentPosition()

      获取当前已播放时间，单位：ms(毫秒)
      注： 只支持点播（回看）
      Returns:
        当前已播放时间

    - #### getDuration

          int getDuration()

      获取视频文件总时长，单位：ms(毫秒)
      注： 只支持点播（回看）
      Returns:
        视频文件总时长

    - #### stop

          int stop()

      停止播放
      Returns:
        `ERROR_OK` 其他：`Error`

    - #### release

          void release()

      播放器资源回收

    - #### setMute

          int setMute(boolean mute)

      设置是否静音播放
      Parameters:
        `mute` -
        true: 静音播放，
        false:正常播放， 默认是false
      Returns:
        `ERROR_OK` 其他：`Error`

    - #### isMute

          boolean isMute()

      是否是静音状态
      Returns:
        ture - 当前是静音状态

    - #### setVolume

          int setVolume(float volume)

      设置音量
      Parameters:
        `volume` - 音量范围 0.0~1.0（1.0最大）
      Returns:
        `ERROR_OK` 其他：`Error`

    - #### getVolume

          float getVolume()

      获取播放器当前音量
      Returns:
        音量范围 0.0~1.0（1.0最大） <0 无效

    - #### setScreenOnWhilePlaying

          void setScreenOnWhilePlaying(boolean screenOn)

      设置播放时是否屏幕常亮
      Parameters:
        `screenOn` -
        true: 屏幕常亮，
        false：系统默认, 默认是true。

    - #### getPlayerId

          long getPlayerId()

      Returns:

    - #### getMediaInformation

          java.util.Map<java.lang.String,java.lang.Object> getMediaInformation()

      获取视频信息
      Returns:

    - #### setOnPreparedListener

          void setOnPreparedListener(IQHVCPlayer.OnPreparedListener listener)

      Register a callback to be invoked when the media source is ready for playback.
      Parameters:
        `listener` -

    - #### setOnSeekCompleteListener

          void setOnSeekCompleteListener(IQHVCPlayer.OnSeekCompleteListener listener)

      Register a callback to be invoked when a seek operation has been completed.
      Parameters:
        `listener` -

    - #### setOnErrorListener

          void setOnErrorListener(IQHVCPlayer.OnErrorListener listener)

      Register a callback to be invoked when an error has happened during an asynchronous operation.
      Parameters:
        `listener` -

    - #### setOnCompletionListener

          void setOnCompletionListener(IQHVCPlayer.OnCompletionListener listener)

      Register a callback to be invoked when the end of a media source has been reached during playback.
      Parameters:
        `listener` -

    - #### setOnInfoListener

          void setOnInfoListener(IQHVCPlayer.OnInfoListener listener)

      Register a callback to be invoked when an info/warning is available.
      Parameters:
        `listener` -

    - #### setOnVideoSizeChangedListener

          void setOnVideoSizeChangedListener(IQHVCPlayer.OnVideoSizeChangedListener listener)

      Register a callback to be invoked when the video size is known or updated.
      Parameters:
        `listener` -

    - #### setOnBufferingUpdateListener

          void setOnBufferingUpdateListener(IQHVCPlayer.OnBufferingUpdateListener listener)

      Register a callback to be invoked when the status of a network stream's buffer has changed.
      Parameters:
        `listener` -

    - #### setOnBufferingEventListener

          void setOnBufferingEventListener(IQHVCPlayer.OnBufferingEventListener listener)

    - #### setOnProgressChangeListener

          void setOnProgressChangeListener(IQHVCPlayer.onProgressChangeListener listener)

    - #### setSurface

          void setSurface(java.lang.String from,
                          SurfaceTexture texture)

      为播放器设置显示SurfaceTexture
      Parameters:
        `from` -
        `texture` - `SurfaceTexture` 播放器渲染的texture

    - #### setSurfaceViewport

          int setSurfaceViewport(int x,
                                 int y,
                                 int width,
                                 int height)

      为播放器渲染的surface设置Viewport
      Parameters:
        `x` - x位置
        `y` - y位置
        `width` - 宽度
        `height` - 高度
      Returns:
        0: 调用成功 <0: 调用失败

    - #### getRenderMode

          int getRenderMode()

      获取渲染模式
      Returns:
        `IQHVCPlayerAdvanced.RenderMode`