tencent cloud

Video on Demand

Release Notes and Announcements
Release Notes
Announcements
Product Introduction
Overview
Product Features
Features
Strengths
Scenarios
Solutions
Professional Edition
Introduction to Video On Demand Professional Edition
Quick Start
Console Guide
Development Guide
Purchase Guide
Billing Overview
Billing Modes
Purchase Guide
Viewing Bills
Renewal
Overdue Policy
Refund Policy
Getting Started
Console Guide
Console Overview
Service Overview
Application Management
Media Management
Package Management
License Management
Real-Time Log Analysis
Practical Tutorial
Media Upload
Smart Cold Storage of VOD Media Asset Files
Video Processing
Distribution and Playback
How to Receive Event Notification
How to Migrate Files from Origin Server to VOD
Live Recording
How to Pull from Custom Origin Servers
How to Use EdgeOne to Distribute Content in VOD
Development Guide
Media Upload
Media Processing
Video AI
Event Notification
Video Playback
Media Encryption and Copyright Protection
Broadcast Channel
CAM
Media File Download
Subapplication System
Error Codes
Player SDK
Overview
Basic Concepts
Features
Free Demo
Free Trial License
Purchase Guide
SDK Download
Licenses
Player Guide
Integration (UI Included)
Integration (No UI)
Advanced Features
API Documentation
Player Adapter
Player SDK Policy
Server APIs
History
Introduction
API Category
Other APIs
Media Processing APIs
Parameter Template APIs
Task Management APIs
Media Upload APIs
Media Management APIs
Event Notification Relevant API
Media Categorization APIs
Domain Name Management APIs
Distribution APIs
AI-based Sample Management APIs
Region Management APIs
Data Statistics APIs
Carousel-Related APIs
Just In Time Transcode APIs
No longer recommended APIs
Making API Requests
AI-based image processing APIs
Task Flow APIs
Data Types
Error Codes
Video on Demand API 2024-07-18
FAQs
Mobile Playback
Fees
Video Upload
Video Publishing
Video Playback
Web Playback
Full Screen Playback
Statistics
Access Management
Cold Storage
Agreements
Service Level Agreement
VOD Policy
Privacy Policy
Data Processing And Security Agreement
Contact Us
Glossary

TXVodDownloadManager

PDF
Focus Mode
Font Size
Last updated: 2025-05-30 15:02:39

TXVodDownloadManager API Introduction

On-demand video player download API class
Video download supports downloading MP4 and HLS videos, corresponds to nested HLS videos, requires specifying preferred resolution (preferredResolution).

Class Constant

Parameter Name
Type
Value
Description
TXVodDownloadManager#DOWNLOAD_SUCCESS
int
0
Download success.
TXVodDownloadManager#DOWNLOAD_AUTH_FAILED
int
-5001
File ID download authentication failure.
TXVodDownloadManager#DOWNLOAD_NO_FILE
int
-5003
File does not exist for download.
TXVodDownloadManager#DOWNLOAD_FORMAT_ERROR
int
-5004
Unsupported download format.
TXVodDownloadManager#DOWNLOAD_DISCONNECT
int
-5005
Network error.
TXVodDownloadManager#DOWNLOAD_HLS_KEY_ERROR
int
-5006
Failed to retrieve HLS decryption Key.
TXVodDownloadManager#DOWNLOAD_PATH_ERROR
int
-5007
Download directory access failure.
TXVodDownloadManager#DOWNLOAD_403FORBIDDEN
int
-5008
Signature expired or invalid request.

API Overview

API
Description
Retrieve the TXVodDownloadManager instance object in singleton mode.
Set the HTTP request header for downloading.
Set the download callback method, which must be configured before downloading.
Start the download using the URL method.
Start the download using the fileId method.
Start the download using the Drm method.
Stop downloading, stopped successfully when ITXVodDownloadListener.onDownloadStop callback is triggered.
Delete download information.
Retrieve download list information for all users, time-consuming API, do not call on the main thread.
Retrieve download information, time-consuming API, do not call on the main thread.
Retrieve download information, time-consuming API, do not call on the main thread.

API Detail

getInstance

Retrieve the TXVodDownloadManager instance object in singleton mode.
public static TXVodDownloadManager getInstance()

setHeaders

Set the HTTP request header for downloading.
public void setHeaders(Map<String, String> headers)

setListener

Set the download callback method, which must be configured before downloading.
public void setListener(ITXVodDownloadListener listener)
Parameter Description
Parameter Name
Type
Description
listener
Download listening status callback.

startDownloadUrl

Start the download using the URL method.
Set the cache directory of the playback engine before starting the download. TXPlayerGlobalSetting#setCacheFolderPath.
public TXVodDownloadMediaInfo startDownloadUrl(String url, long preferredResolution, String userName)
Parameter Description
Parameter Name
Type
Description
url
String
Download address, mandatory parameter; otherwise, the download will fail.
preferredResolution
long
Download preference resolution, multiple resolution URLs are mandatory parameters, with values being the width * height of the preferred resolution (e.g., for 720p, input 921600 = 1280*720), and -1 for single resolution.
userName
String
Account name, optional parameter; defaults to "default" if not provided.
Return Value
Video download information TXVodDownloadMediaInfo.

startDownloadUrl

Start the download using the URL method.
Abandoned, recommended for use: startDownloadUrl(String, long, String)
public TXVodDownloadMediaInfo startDownloadUrl(String url, String userName)

startDownloadUrl

Start the download using the URL method.
Abandoned, recommended for use: startDownloadUrl(String, long, String)
public TXVodDownloadMediaInfo startDownloadUrl(String url)

startDownload

Start the download using the Tencent Cloud Video fileId method.
public TXVodDownloadMediaInfo startDownload(final TXVodDownloadDataSource dataSource)
Parameter Description
Parameter Name
Type
Description
dataSource
Download a resource object.
Return Value
Video download information TXVodDownloadMediaInfo.

startDownloadDrm

Start the download using the Drm method.
public TXVodDownloadMediaInfo startDownloadDrm(final TXPlayerDrmBuilder drmBuilder, long preferredResolution, String userName)
Parameter Description
Parameter Name
Type
Description
drmBuilder
Construct a Drm resource.
preferredResolution
long
Download preference resolution. Multiple resolution URLs are required parameters, with values being the width * height of the preferred resolution (e.g., for 720p, input 921600 = 1280*720). For single resolution, input -1.
userName
String
Account name, optional parameter; defaults to "default" if not provided.
Return Value
Video download information TXVodDownloadMediaInfo.

stopDownload

Stop downloading, stopped successfully when ITXVodDownloadListener.onDownloadStop callback is triggered.
public void stopDownload(TXVodDownloadMediaInfo downloadMediaInfo)
Parameter Description
Parameter Name
Type
Description
downloadMediaInfo
Video download information.

deleteDownloadFile

Delete downloaded files.
Abandoned, recommended for use: deleteDownloadMediaInfo.
public boolean deleteDownloadFile(String playPath)
Parameter Description
Parameter Name
Type
Description
playPath
String
File path.

deleteDownloadMediaInfo

Delete download information.
public boolean deleteDownloadMediaInfo(TXVodDownloadMediaInfo downloadMediaInfo)
Parameter Description
Parameter Name
Type
Description
downloadMediaInfo
Video download information.

getDownloadMediaInfoList

Retrieve download list information for all users.
public List<TXVodDownloadMediaInfo> getDownloadMediaInfoList()
Return Value
Video download information list: List<TXVodDownloadMediaInfo>.

getDownloadMediaInfo

Retrieve download information.
Call this API and ensure that the download task parameters are created via TXVodDownloadDataSource(int, String, int, String, String) beforehand.
Refer to TXVodDownloadMediaInfo#getDataSource and TXVodDownloadDataSource#getUserName.
public TXVodDownloadMediaInfo getDownloadMediaInfo(int appId, String fileId, int qualityId, String userName)
Parameter Description
Parameter Name
Type
Description
appId
int
Tencent Cloud Video on Demand (VOD) application appId.
fileId
String
Tencent Cloud Video on Demand (VOD) video fileId.
qualityId
int
Video QUALITY Id, refer to the constant TXVodDownloadDataSource#QUALITY_240P.
userName
String
Account name, must match the account name passed in during download. If not passed in during download, pass in an empty string "" here.
Return Value
Video download information TXVodDownloadMediaInfo.

getDownloadMediaInfo

Retrieve download information. Call this API and ensure that the download is started by calling startDownloadUrl(String, long, String) beforehand.
public TXVodDownloadMediaInfo getDownloadMediaInfo(String url, long preferredResolution, String userName)
Parameter Description
Parameter Name
Type
Description
url
String
Download address, mandatory parameter; otherwise, the download will fail.
preferredResolution
long
Download preference resolution. Multiple resolution URLs are required parameters, with values being the width * height of the preferred resolution (e.g., for 720p, input 921600 = 1280*720). For single resolution, input -1.
userName
String
Account name, optional parameter; defaults to "default" if not provided.
Return Value
Video download information TXVodDownloadMediaInfo.

getDownloadMediaInfo

Retrieve URL download information. Abandoned, recommended for use: getDownloadMediaInfo(String, long, String).
public TXVodDownloadMediaInfo getDownloadMediaInfo(String url)

getDownloadMediaInfo

Retrieve URL download information. Abandoned, recommended for use: getDownloadMediaInfo(String, long, String).
public TXVodDownloadMediaInfo getDownloadMediaInfo(int appId, String fileId, int qualityId)

Help and Support

Was this page helpful?

Help us improve! Rate your documentation experience in 5 mins.

Feedback