tencent cloud


API Documentation

Last updated: 2022-08-17 16:40:51


    VOD player

    For more information, see TXVodPlayer.
    The player pulls audio/video data from the specified VOD stream URL and plays the data after decoding and local rendering.
    The player has the following capabilities:

    • FLV, MP4, and HLS files can be played back in two playback methods: basic playback (by URL) and VOD playback (by Fileid ).
    • Screenshots of the video stream can be taken.
    • The brightness, volume level, and playback progress can be adjusted through gestures.
    • Video resolution can be switched manually or can switch automatically to adapt to current network bandwidth.
    • Different playback speeds can be specified, videos can be flipped horizontally, and hardware acceleration can be enabled.
    • For more information about all capabilities of the player, see Overview.

    Player configuration APIs

    API Description
    setConfig Sets the player configuration information. For more information on the configuration, see TXVodPlayConfig.
    setPlayerView Sets the player's rendering view TXCloudVideoView.
    setPlayerView Sets the player's rendering view TextureView.
    setSurface Sets the player's rendering view SurfaceView.
    setStringOption Sets the player business parameters in the format of <string,object>.

    Basic playback APIs

    API Description
    startPlay Starts playing back the video at the specified HTTP URL.
    startPlay Starts playing back the video of the specified fileId by passing in the TXPlayInfoParams parameter.
    stopPlay Stops playback.
    isPlaying Gets whether playback is ongoing.
    pause Pauses playback by stopping the getting of stream data and retaining the last-frame image.
    resume Resumes playback by getting the stream data again.
    seek Seeks to a specified time point of the video stream (in seconds).
    seek Seeks to a specified time point of the video stream (in ms).
    getCurrentPlaybackTime Gets the current playback time point in seconds.
    getBufferDuration Gets the total buffer duration in seconds.
    getDuration Gets the total video duration in seconds.
    getPlayableDuration Gets the playable video duration in seconds.
    getWidth Gets the video width.
    getHeight Gets the video height.
    setAutoPlay Sets whether to start VOD automatically after call of startPlay. VOD starts automatically by default.
    setStartTime Sets the playback start time.
    setToken Sets the token for HLS encryption.
    setLoop Sets whether to loop the video.
    isLoop Returns the loop playback status.

    Video APIs

    API Description
    enableHardwareDecode Enables/Disables video hardware decoding.
    snapshot Gets the current video frame image.
    Note: Because this operation is time-consuming, the screenshot will be called back asynchronously.
    setMirror Sets whether to flip the video image horizontally.
    setRate Sets the VOD playback speed. Default value: 1.0.
    getBitrateIndex Returns the current playback bitrate index.
    setBitrateIndex Sets the current playback bitrate index for seamless definition switch. You may need to wait momentarily to switch the definition.
    setRenderMode Sets the image fill mode.
    setRenderRotation Sets the image rendering angle.

    Audio APIs

    API Description
    setMute Sets whether to mute the player.
    setAudioPlayoutVolume Sets the volume level. Value range: 0–100.
    setRequestAudioFocus Sets whether to get the audio focus automatically. The audio focus is gotten automatically by default.

    Event notification APIs

    API Description
    setPlayListener Sets the player callback (it has been disused, and we recommend you use setVodListener instead).
    setVodListener Sets the player callback.
    onNotifyEvent VOD playback event notification.
    onNetSuccess VOD network status notification.
    onNetFailed Network exception notification for playback by fileId.


    You can use the following APIs to push the audio/video streams of the VOD player through TRTC. For more information on TRTC services, see the TRTC Overview page.

    API Description
    attachTRTC Binds VOD to TRTC.
    detachTRTC Unbinds VOD from TRTC.
    publishVideo Starts pushing the video stream.
    unpublishVideo Cancels pushing the video stream.
    publishAudio Starts pushing the audio stream.
    unpublishAudio Cancels pushing the audio stream.


    VOD callback notifications.

    Basic SDK callback APIs

    API Description
    onPlayEvent VOD playback event notification. For more information, see the playback event list and event parameters.
    onNetStatus Network status notification of the VOD player.


    VOD player configuration class.

    Basic configuration APIs

    API Description
    setConnectRetryCount Sets the maximum number of player reconnection attempts.
    setConnectRetryInterval Sets the player reconnection interval in seconds.
    setTimeout Sets the player connection timeout period in seconds.
    setCacheFolderPath Sets the VOD cache directory, which takes effect for MP4 and HLS files.
    setMaxCacheItems Sets the maximum number of cached files. This API has been deprecated. Use TXPlayerGlobalSetting#setMaxCacheSize for global configuration.
    setPlayerType Sets the player type.
    setHeaders Sets custom HTTP headers.
    setEnableAccurateSeek Sets whether to enable accurate seek. Default value: true.
    setAutoRotate If it is set to YES, the MP4 file will be automatically rotated according to the rotation angle set in the file, which can be obtained from the PLAY_EVT_CHANGE_ROTATION event. Default value: YES
    setSmoothSwitchBitrate Sets whether to enable smooth switching for multi-bitrate HLS streams. Default value: false.
    setCacheMp4ExtName Sets the cached MP4 file extension.
    setProgressInterval Sets the progress callback interval in ms.
    setMaxBufferSize Sets the maximum preloading buffer size in MB.
    setMaxPreloadSize Sets the maximum preloading buffer size in MB.
    setExtInfo Sets the extended information.
    setPreferredResolution Starts playing back the most preferred bitstream according to the configured preferredResolution if there are multiple HLS bitstreams. Here, preferredResolution is the product of the video width and height and can only take effect if it is set before playback starts.


    Global configuration of the VOD player.

    API Description
    setCacheFolderPath Sets the cache directory of the playback engine. After setting, this directory will be first read and written during downloading, predownloading, and player use.
    setMaxCacheSize Sets the maximum cache size in MB of the playback engine. After setting, the backend will clear files in the cache directory automatically according to the set value.


    Predownloading API class of the VOD player.

    API Description
    getInstance Gets the TXVodPreloadManager instance object in singleton mode.
    startPreload Sets the playback engine cache directory (TXPlayerGlobalSetting#setCacheFolderPath) and cache size (TXPlayerGlobalSetting#setMaxCacheSize) before starting predownloading.
    stopPreload Stops predownloading.


    Video download API class of the VOD player. Currently, only non-nested M3U8 videos can be downloaded. SimpleAES-encrypted videos will be encrypted again with Tencent Cloud's private encryption algorithm to improve the security.

    API Description
    getInstance Gets the TXVodDownloadManager instance object in singleton mode.
    setHeaders Sets download HTTP headers.
    setListener Sets the download callback method, which must be set before download.
    startDownloadUrl Starts downloading the video at the specified URL.
    startDownload Starts downloading the video of the specified fileid.
    stopDownload Stops the download. If ITXVodDownloadListener.onDownloadStop is called back, the download stops successfully.
    deleteDownloadMediaInfo Deletes the download information.
    getDownloadMediaInfoList Gets the download lists of all users.
    getDownloadMediaInfo Gets the download information.


    VOD download notifications.

    API Description
    onDownloadStart Download started.
    onDownloadProgress The download progress was updated.
    onDownloadStop Download stopped.
    onDownloadFinish Download ended.
    onDownloadError An error occurred during download.


    Tencent Cloud video fileid download source, which can be passed in as a parameter during download.

    API Description
    TXVodDownloadDataSource Builds a function to pass in parameters such as appid, fileid, quality, psign, and username.
    getAppId Gets the appid that is passed in.
    getFileId Gets the fileid that is passed in.
    getPSign Gets the psign that is passed in.
    getQuality Gets the quality that is passed in.
    getUserName Gets the userName that is passed in, which is default by default.


    Class to get VOD download information such as download progress and playback link.

    API Description
    getDataSource Gets the download source specified by the fileid passed in for video download by fileid.
    getDuration Gets the total duration of the downloaded video.
    getPlayableDuration Gets the playable duration of the downloaded video.
    getSize Gets the total size of the file being downloaded. This API takes effect only for download by fileid.
    getDownloadSize Gets the size of the downloaded file. This API takes effect only for download by fileid.
    getProgress Gets the current download progress.
    getPlayPath Gets the current playback path, which can be passed in to TXVodPlayer for playback.
    getDownloadState Gets the download status.
    isDownloadFinished Determines whether the download is completed.

    Error Codes

    Normal events

    Code Event Definition Description
    2004 PLAY_EVT_PLAY_BEGIN Video playback started, and the loading icon animation (if any) ended.
    2005 PLAY_EVT_PLAY_PROGRESS Video playback progress (including the current playback progress, loading progress, and total video duration).
    2007 PLAY_EVT_PLAY_LOADING The video is being loaded. The LOADING_END event will be reported if video playback resumes.
    2014 PLAY_EVT_VOD_LOADING_END Video loading ended, and video playback resumed.
    2006 PLAY_EVT_PLAY_END Video playback ended.
    2013 PLAY_EVT_VOD_PLAY_PREPARED The player has been prepared and can start playback.
    2003 PLAY_EVT_RCV_FIRST_I_FRAME The network received the first renderable video data packet (IDR).
    2009 PLAY_EVT_CHANGE_RESOLUTION The video resolution changed.
    2011 PLAY_EVT_CHANGE_ROTATION The MP4 video was rotated.

    Warning events

    Code Event Definition Description
    -2301 PLAY_ERR_NET_DISCONNECT The network was disconnected and could not be reconnected after multiple retries. You can restart the player to perform more connection retries.
    -2305 PLAY_ERR_HLS_KEY Failed to get the HLS decryption key.
    2101 PLAY_WARNING_VIDEO_DECODE_FAIL Failed to decode the current video frame.
    2102 PLAY_WARNING_AUDIO_DECODE_FAIL Failed to decode the current audio frame.
    2103 PLAY_WARNING_RECONNECT The network was disconnected, and automatic reconnection was performed (the PLAY_ERR_NET_DISCONNECT event will be thrown after three failed attempts).
    2106 PLAY_WARNING_HW_ACCELERATION_FAIL Failed to start the hardware decoder, and the software decoder was used instead.
    -2304 PLAY_ERR_HEVC_DECODE_FAIL Failed to decode with H.265.
    -2303 PLAY_ERR_FILE_NOT_FOUND The file to be played back does not exist.
    Contact Us

    Contact our sales team or business advisors to help your business.

    Technical Support

    Open a ticket if you're looking for further assistance. Our Ticket is 7x24 avaliable.

    7x24 Phone Support