tencent cloud

Feedback

Cloud Infinite

Creating Audio/Video Transcoding Template

Last updated: 2024-02-27 15:52:05

Overview

This API is used to create an audio/Video transcoding template.


Request

Sample request

POST /template HTTP/1.1
Host: <BucketName-APPID>.ci.<Region>.myqcloud.com
Date: <GMT Date>
Authorization: <Auth String>
Content-Length: <length>
Content-Type: application/xml

<body>
Note:
Authorization: Auth String (See Request Signature for details.)
When this feature is used by a sub-account, relevant permissions must be granted as instructed in Authorization Granularity Details.

Request headers

This API only uses Common Request Headers.

Request body

This request requires the following request body:
<Request>
<Tag>Transcode</Tag>
<Name>TemplateName</Name>
<Container>
<Format>mp4</Format>
</Container>
<Video>
<Codec>H.264</Codec>
<Profile>high</Profile>
<Bitrate>1000</Bitrate>
<Width>1280</Width>
<Fps>30</Fps>
<Preset>medium</Preset>
</Video>
<Audio>
<Codec>aac</Codec>
<Samplerate>44100</Samplerate>
<Bitrate>128</Bitrate>
<Channels>4</Channels>
</Audio>
<TransConfig>
<AdjDarMethod>scale</AdjDarMethod>
<IsCheckReso>false</IsCheckReso>
<ResoAdjMethod>1</ResoAdjMethod>
</TransConfig>
<TimeInterval>
<Start>0</Start>
<Duration>60</Duration>
</TimeInterval>
<AudioMixArray>
<AudioSource>https://test-xxx.cos.ap-chongqing.myqcloud.com/mix1.mp3</AudioSource>
<MixMode>Once</MixMode>
<Replace>true</Replace>
<EffectConfig>
<EnableStartFadein>true</EnableStartFadein>
<StartFadeinTime>3</StartFadeinTime>
<EnableEndFadeout>false</EnableEndFadeout>
<EndFadeoutTime>0</EndFadeoutTime>
<EnableBgmFade>true</EnableBgmFade>
<BgmFadeTime>1.7</BgmFadeTime>
</EffectConfig>
</AudioMixArray>
<AudioMixArray>
<AudioSource>https://test-xxx.cos.ap-chongqing.myqcloud.com/mix2.mp3</AudioSource>
<MixMode>Once</MixMode>
<Replace>true</Replace>
<EffectConfig>
<EnableStartFadein>true</EnableStartFadein>
<StartFadeinTime>3</StartFadeinTime>
<EnableEndFadeout>false</EnableEndFadeout>
<EndFadeoutTime>0</EndFadeoutTime>
<EnableBgmFade>true</EnableBgmFade>
<BgmFadeTime>1.7</BgmFadeTime>
</EffectConfig>
</AudioMixArray>
</Request>

The nodes are described as follows:
Node Name (Keyword)
Parent Node
Description
Type
Required
Request
None
Request container
Container
Yes
Request has the following sub-nodes:
Node Name (Keyword)
Parent Node
Description
Type
Required
Constraints
Tag
Request
Task type: Transcode
String
Yes
None
Name
Request
Template name, which can contain letters, digits, underscores (_), hyphens (-), and asterisks (*).
String
Yes
None
Container
Request
Container format
Container
Yes
None
Video
Request
Video information
Container
No
If Video is not passed in, the video information will be deleted.
TimeInterval
Request
Time interval
Container
No
None
Audio
Request
Audio information
Container
No
If Audio is not passed in, the audio information will be deleted.
TransConfig
Request
Transcoding configuration
Container
No
None
AudioMix
Request
Audio mix parameter as described in Structure.
Container
No
Valid if Audio.Remove is false
AudioMixArray
Request
Up to two audio mix parameters as described in Structure.
Container array
No
Valid if Audio.Remove is false
Container has the following sub-nodes:
Node Name (Keyword)
Parent Node
Description
Type
Required
Format
Request.Container
Container format. See the following table for valid values.
String
Yes
ClipConfig
Request.Container
Segment configuration. This node will take effect only when format is hls or dash.
Container
No
ClipConfig has the following sub-nodes:
Node Name (Keyword)
Parent Node
Description
Type
Required
Duration
Request.Container.ClipConfig
Segment duration. Default value: 5s.
String
No
Audio/Video formats supported by different container formats are as follows:
Container
Audio Codecs
Video Codecs
mp4/hls/mkv
aac, mp3
H.264, H.265, AV1
hls/mkv
aac, mp3
H.264, H.265
ts/flv/avi/mov
aac, mp3
H.264
dash
aac
H.264
WebM
Vorbis, Opus
VP8, VP9, AV1
AAC
AAC
Not supported
MP3
MP3
Not supported
FLAC
FLAC
Not supported
AMR
AMR
Not supported
adts
aac
Not supported
m4a
aac
Not supported
wav
pcm_s16le
Not supported
Video has the following sub-nodes:
Node Name (Keyword)
Parent Node
Description
Type
Required
Default Value
Constraints
Codec
Request.Video
Codec format
String
No
H.264
If format is WebM, the default value is VP8.
H.264
H.265
VP8
VP9
AV1
Width
Request.Video
Width
String
No
Original video width
Value range: [128, 4096]
Unit: px
If only Width is set, Height is calculated according to the original video aspect ratio.
This parameter must be an even number.
Height
Request.Video
Height
String
No
Original video height
Value range: [128, 4096]
Unit: px
If only Height is set, Width is calculated according to the original video aspect ratio.
This parameter must be an even number.
Fps
Request.Video
Frame rate
String
No
None
Value range: (0, 60]
Unit: fps
Remove
Request.Video
Whether to delete the video stream
String
No
false
Valid values: true, false.
Profile
Request.Video
Encoding level
String
No
high
Valid values: baseline, main, high, auto.
If Pixfmt is auto, this parameter can only be auto and will be changed to auto if set to other values.
baseline: Suitable for mobile devices.
main: Suitable for standard resolution devices.
high: Suitable for high resolution devices.
Only H.264 supports this parameter.
Bitrate
Request.Video
Bitrate of the video output file
String
No
None
Value range: [10, 50000] kbps
auto indicates adaptive bitrate.
Crf
Request.Video
Bitrate, which is a quality control factor
String
No
None
Value range: (0, 51]
If Crf is set, the setting of Bitrate will become invalid.
If Bitrate is empty, 25 is used for this parameter by default.
Gop
Request.Video
Maximum number of frames between two keyframes
String
No
None
Value range: [1, 100000]
Preset
Request.Video
Video algorithm preset
String
No
If Codec is H.264, the default value is medium.
If Codec is VP8, the default value is good.
If Codec is AV1, the default value is 5.
Valid values for H.264: veryfast, fast, medium, slow, slower.
Valid values for VP8: good, realtime.
Valid values for AV1: 5 (recommend), 4.
H.265 and VP9 don't support this parameter.
Bufsize
Request.Video
Buffer size
String
No
None
Value range: [1000, 128000]
Unit: KB
If Codec is VP8 or VP9, this parameter is not supported.
Maxrate
Request.Video
Peak video bitrate
String
No
None
Value range: [10, 50000]
Unit: Kbps
If Codec is VP8 or VP9, this parameter is not supported.
Pixfmt
Request.Video
Video color format
String
No
None
Valid values for H.264: yuv420p, yuv422p, yuv444p, yuvj420p, yuvj422p, yuvj444p, auto
Valid values for H.265: yuv420p, yuv420p10le, auto
If Codec is VP8, VP9, or AV1, this parameter is not supported.
LongShortMode
Request.Video
Whether to use long short mode
String
No
false
Valid values: true, false.
If Codec is VP8, VP9, or AV1, this parameter is not supported.
Rotate
Request.Video
Rotation angle
String
No
None
Value range: [0, 360)
Unit: Degree
TimeInterval has the following sub-nodes:
Node Name (Keyword)
Parent Node
Description
Type
Required
Default Value
Constraints
Start
Request.TimeInterval
Start time
String
No
0
Value range: [0, video duration]
Unit: Second
The float format is supported, accurate to the millisecond.
Duration
Request.TimeInterval
Duration
String
No
Original video duration
Value range: [0, video duration]
Unit: Second
The float format is supported, accurate to the millisecond.
Audio has the following sub-nodes:
Node Name (Keyword)
Parent Node
Description
Type
Required
Default Value
Constraints
Codec
Request.Audio
Codec format
String
No
aac
If format is WebM, the default value is Vorbis.
If format is wav, the default value is pcm_s16le.
Valid values: aac, mp3, flac, amr, Vorbis, opus, pcm_s16le.
Samplerate
Request.Audio
Sample rate
String
No
If Codec is opus, the default value is 48000.
Unit: Hz
Valid values: 8000, 11025, 12000, 16000, 22050, 24000, 32000, 44100, 48000, 88200, 96000.
Different container formats support different MP3 sample rates, as shown in the table below.
If Codec is amr, the value can only be 8000.
If Codec is opus, the value can be 8000, 16000, 24000, or 48000.
Bitrate
Request.Audio
Original audio bitrate
String
No
None
Unit: Kbps
Value range: [8, 1000]
Channels
Request.Audio
Number of sound channels
String
No
None
If Codec is aac or flac, the value can be 1, 2, 4, 5, 6, or 8.
If Codec is mp3 or opus, the value can only be 1 or 2.
If Codec is Vorbis, the value can only be 2.
If Codec is amr, the value can only be 1.
If Codec is pcm_s16le, the value can only be 1 or 2.
If Codec is dash, the value cannot be 8.
Remove
Request.Audio
Whether to delete the source audio stream
String
No
false
Valid values: true, false.
KeepTwoTracks
Request.Audio
Keep double audio track
String
No
false
Valid values: true, false. If Video.Codec is H.265, this parameter will not take effect.
SwitchTrack
Request.Audio
Switch the track
String
No
false
Valid values: true, false. If Video.Codec is H.265, this parameter will not take effect.
SampleFormat
Request.Audio
Sampling bit width
String
No
None
If Codec is aac, the value can be fltp.
If Codec is mp3, the value can be fltp, s16p, or s32p.
If Codec is flac, the value can be s16, s32, s16p, or s32p.
If Codec is amr, the value can be s16 or s16p.
If Codec is opus, the value can be s16.
If Codec is pcm_s16le, the value can be s16.
If Codec is Vorbis, the value can be fltp.
If Video.Codec is H.265, this parameter will not take effect.
Note:
Y indicates supported, and N indicates unsupported.
Audio.Codec supports sample rates as follows:
Audio.Codec
aac
amr
flac
opus
Vorbis
pcm_s16le
mp3
8000
Y
Y
Y
Y
Y
Y
Different sample rates are supported for different container formats.
11025
Y
N
Y
N
Y
Y
12000
Y
N
Y
N
Y
Y
16000
Y
N
Y
Y
Y
Y
22050
Y
N
Y
N
Y
Y
24000
Y
N
Y
Y
Y
Y
32,000
Y
N
Y
N
Y
Y
44100
Y
N
Y
N
Y
Y
48000
Y
N
Y
Y
Y
Y
88200
Y
N
Y
N
Y
Y
96000
Y
N
Y
N
Y
Y

If Audio.Codec is mp3, Container.Format supports sample rates as follows:
Container Format/Audio Sample Rate
8000
11025
12000
16000
22050
24000
32000
44100
48000
88200
96000
flv
N
N
N
N
Y
N
N
Y
N
N
N
mp4
N
N
N
Y
Y
Y
Y
Y
Y
N
N
hls/ts/mp3/mkv/avi/mov
Y
Y
Y
Y
Y
Y
Y
Y
Y
N
N
TransConfig has the following sub-nodes:
Node Name (Keyword)
Parent Node
Description
Type
Required
Default Value
Constraints
AdjDarMethod
Request.TransConfig
Resolution adjustment method
String
No
none
Valid values: scale, crop, pad, none.
If the aspect ratio of the output video is different from that of the original video, the resolution is adjusted according to this parameter.
IsCheckReso
Request.TransConfig
Whether to check the resolution
String
No
false
Valid values: true, false.
If the value is false, transcoding is performed based on settings.
ResoAdjMethod
Request.TransConfig
Resolution adjustment method
String
No
0
Valid values: 0, 1. 0 indicates to use the original video resolution, and 1 indicates to return the transcoding failure message.
This parameter will take effect only when IsCheckReso is true.
IsCheckVideoBitrate
Request.TransConfig
Whether to check the video bitrate
String
No
false
Valid values: true, false.
If the value is false, transcoding is performed based on settings.
VideoBitrateAdjMethod
Request.TransConfig
Video bitrate adjustment method
String
No
0
Valid values: 0, 1. When the output video has a higher bitrate than the input video, 0 indicates to use the original video bitrate, and 1 indicates to return the transcoding failure message.
This parameter will take effect only when IsCheckVideoBitrate is true.
IsCheckAudioBitrate
Request.TransConfig
Whether to check the audio bitrate
String
No
false
Valid values: true, false.
If the value is false, transcoding is performed based on settings.
AudioBitrateAdjMethod
Request.TransConfig
Audio bitrate adjustment method
String
No
0
Valid values: 0, 1. When the output audio has a higher bitrate than the input audio, 0 indicates to use the original audio bitrate, and 1 indicates to return the transcoding failure message.
This parameter will take effect only when IsCheckAudioBitrate is true.
IsCheckVideoFps
Request.TransConfig
Whether to check the video frame rate
String
No
false
Valid values: true, false.
If the value is false, transcoding is performed based on settings.
VideoFpsAdjMethod
Request.TransConfig
Video frame rate adjustment method
String
No
0
Valid values: 0, 1. When the output video has a higher frame rate than the input video, 0 indicates to use the original video frame rate, and 1 indicates to return the transcoding failure message.
This parameter will take effect only when IsCheckVideoFps is true.
DeleteMetadata
Request.TransConfig
Whether to delete metadata from the file
String
No
false
Valid values: true, false.
If the value is false, the source file information is retained.
IsHdr2Sdr
Request.TransConfig
Whether to enable HDR-to-SDR conversion
String
No
false
Valid values: true, false.
TranscodeIndex
Request.TransConfig
The stream number to be processed, which corresponds to Response.MediaInfo.Stream.Video.Index and Response.MediaInfo.Stream.Audio.Index in the media information. For more information, see Getting Media File Information.
String
No
None
None
HlsEncrypt
Request.TransConfig
HLS encryption configuration
Container
No
None
None
DashEncrypt
Request.TransConfig
DASH encryption configuration
Container
No
None
None
The AdjDarMethod parameter is illustrated as follows:



HlsEncrypt has the following sub-nodes:
Node Name (Keyword)
Parent Node
Description
Type
Required
Default Value
Constraints
IsHlsEncrypt
Request.TransConfig.HlsEncrypt
Whether to enable HLS encryption
String
No
false
Valid values: true, false.
Encryption is supported only when Container.Format is hls.
UriKey
Request.TransConfig.HlsEncrypt
HLS encryption key
String
No
None
This parameter will take effect only when IsHlsEncrypt is true.
DashEncrypt has the following sub-nodes:
Node Name (Keyword)
Parent Node
Description
Type
Required
Default Value
Constraints
IsEncrypt
Request.TransConfig.DashEncrypt
Whether to enable DASH encryption
String
No
false
Valid values: true, false.
Encryption is supported only when Container.Format is dash.
UriKey
Request.TransConfig.DashEncrypt
DASH encryption key
String
No
None
This parameter will take effect only when IsEncrypt is true.

Response

Response headers

This API only returns Common Response Headers.

Response body

The response body returns application/xml data. The following contains all the nodes:
<Response>
<Template>
<Tag>Transcode</Tag>
<TemplateId>t1460606b9752148c4ab182f55163ba7cd</TemplateId>
<Name>TemplateName</Name>
<BucketId>test-1234567890</BucketId>
<Category>Custom</Category>
<Container>
<Format>mp4</Format>
</Container>
<Video>
<Codec>H.264</Codec>
<Profile>high</Profile>
<Bitrate>1000</Bitrate>
<Width>1280</Width>
<Fps>30</Fps>
<Preset>medium</Preset>
</Video>
<Audio>
<Codec>aac</Codec>
<Samplerate>44100</Samplerate>
<Bitrate>128</Bitrate>
<Channels>4</Channels>
</Audio>
<TransConfig>
<AdjDarMethod>scale</AdjDarMethod>
<IsCheckReso>false</IsCheckReso>
<ResoAdjMethod>1</ResoAdjMethod>
</TransConfig>
<TimeInterval>
<Start>0</Start>
<Duration>60</Duration>
</TimeInterval>
<AudioMixArray>
<AudioSource>https://test-xxx.cos.ap-chongqing.myqcloud.com/mix1.mp3</AudioSource>
<MixMode>Once</MixMode>
<Replace>true</Replace>
<EffectConfig>
<EnableStartFadein>true</EnableStartFadein>
<StartFadeinTime>3</StartFadeinTime>
<EnableEndFadeout>false</EnableEndFadeout>
<EndFadeoutTime>0</EndFadeoutTime>
<EnableBgmFade>true</EnableBgmFade>
<BgmFadeTime>1.7</BgmFadeTime>
</EffectConfig>
</AudioMixArray>
<AudioMixArray>
<AudioSource>https://test-xxx.cos.ap-chongqing.myqcloud.com/mix2.mp3</AudioSource>
<MixMode>Once</MixMode>
<Replace>true</Replace>
<EffectConfig>
<EnableStartFadein>true</EnableStartFadein>
<StartFadeinTime>3</StartFadeinTime>
<EnableEndFadeout>false</EnableEndFadeout>
<EndFadeoutTime>0</EndFadeoutTime>
<EnableBgmFade>true</EnableBgmFade>
<BgmFadeTime>1.7</BgmFadeTime>
</EffectConfig>
</AudioMixArray>
<CreateTime>2020-08-05T11:35:24+0800</CreateTime>
<UpdateTime>2020-08-31T16:15:20+0800</UpdateTime>
</Template>
</Response>
The nodes are described as follows:
Node Name (Keyword)
Parent Node
Description
Type
Response
None
Result storage container
Container
Response has the following sub-nodes:
Node Name (Keyword)
Parent Node
Description
Type
TemplateId
Response.Template
Template ID
String
Name
Response.Template
Template name
String
BucketId
Response.Template
Template bucket
String
Category
Response.Template
Template category: Custom or Official
String
Tag
Response.Template
Task type: Transcode
String
UpdateTime
Response.Template
Update time
String
CreateTime
Response.Template
Creation time
String
TransTpl
Response.Template
Template parameters
Container
TransTpl has the following sub-nodes:
Node Name (Keyword)
Parent Node
Description
Type
TimeInterval
Response.Template.TransTpl
Same as Request.TimeInterval in the request body.
Container
Container
Response.Template.TransTpl
Same as Request.Container in the request body.
Container
Video
Response.Template.TransTpl
Same as Request.Video in the request body.
Container
Audio
Response.Template.TransTpl
Same as Request.Audio in the request body.
Container
TransConfig
Response.Template.TransTpl
Same as Request.TransConfig in the request body.
Container
AudioMix
Response.Template.TransTpl
Same as Request.AudioMix in the request body.
Container
AudioMixArray
Response.Template.TransTpl
Same as Request.AudioMixArray in the request body.
Container array

Error codes

No special error message will be returned for this request. For the common error messages, please see Error Codes.

Examples

Request

POST /template HTTP/1.1
Authorization: q-sign-algorithm=sha1&q-ak=AKIDZfbOAo7cllgPvF9cXFrJD0a1ICvR****&q-sign-time=1497530202;1497610202&q-key-time=1497530202;1497610202&q-header-list=&q-url-param-list=&q-signature=28e9a4986df11bed0255e97ff90500557e0e****
Host: test-1234567890.ci.ap-beijing.myqcloud.com
Content-Length: 1666
Content-Type: application/xml

<Request>
<Tag>Transcode</Tag>
<Name>TemplateName</Name>
<Container>
<Format>mp4</Format>
</Container>
<Video>
<Codec>H.264</Codec>
<Profile>high</Profile>
<Bitrate>1000</Bitrate>
<Width>1280</Width>
<Fps>30</Fps>
<Preset>medium</Preset>
</Video>
<Audio>
<Codec>aac</Codec>
<Samplerate>44100</Samplerate>
<Bitrate>128</Bitrate>
<Channels>4</Channels>
</Audio>
<TransConfig>
<AdjDarMethod>scale</AdjDarMethod>
<IsCheckReso>false</IsCheckReso>
<ResoAdjMethod>1</ResoAdjMethod>
</TransConfig>
<TimeInterval>
<Start>0</Start>
<Duration>60</Duration>
</TimeInterval>
<AudioMixArray>
<AudioSource>https://test-xxx.cos.ap-chongqing.myqcloud.com/mix1.mp3</AudioSource>
<MixMode>Once</MixMode>
<Replace>true</Replace>
<EffectConfig>
<EnableStartFadein>true</EnableStartFadein>
<StartFadeinTime>3</StartFadeinTime>
<EnableEndFadeout>false</EnableEndFadeout>
<EndFadeoutTime>0</EndFadeoutTime>
<EnableBgmFade>true</EnableBgmFade>
<BgmFadeTime>1.7</BgmFadeTime>
</EffectConfig>
</AudioMixArray>
<AudioMixArray>
<AudioSource>https://test-xxx.cos.ap-chongqing.myqcloud.com/mix2.mp3</AudioSource>
<MixMode>Once</MixMode>
<Replace>true</Replace>
<EffectConfig>
<EnableStartFadein>true</EnableStartFadein>
<StartFadeinTime>3</StartFadeinTime>
<EnableEndFadeout>false</EnableEndFadeout>
<EndFadeoutTime>0</EndFadeoutTime>
<EnableBgmFade>true</EnableBgmFade>
<BgmFadeTime>1.7</BgmFadeTime>
</EffectConfig>
</AudioMixArray>
</Request>

Response

HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: 100
Connection: keep-alive
Date: Thu, 14 Jul 2022 12:37:29 GMT
Server: tencent-ci
x-ci-request-id: NTk0MjdmODlfMjQ4OGY3XzYzYzhf****

<Response>
<Template>
<Tag>Transcode</Tag>
<TemplateId>t1460606b9752148c4ab182f55163ba7cd</TemplateId>
<Name>TemplateName</Name>
<BucketId>test-1234567890</BucketId>
<Category>Custom</Category>
<Container>
<Format>mp4</Format>
</Container>
<Video>
<Codec>H.264</Codec>
<Profile>high</Profile>
<Bitrate>1000</Bitrate>
<Width>1280</Width>
<Fps>30</Fps>
<Preset>medium</Preset>
</Video>
<Audio>
<Codec>aac</Codec>
<Samplerate>44100</Samplerate>
<Bitrate>128</Bitrate>
<Channels>4</Channels>
</Audio>
<TransConfig>
<AdjDarMethod>scale</AdjDarMethod>
<IsCheckReso>false</IsCheckReso>
<ResoAdjMethod>1</ResoAdjMethod>
</TransConfig>
<TimeInterval>
<Start>0</Start>
<Duration>60</Duration>
</TimeInterval>
<AudioMixArray>
<AudioSource>https://test-xxx.cos.ap-chongqing.myqcloud.com/mix1.mp3</AudioSource>
<MixMode>Once</MixMode>
<Replace>true</Replace>
<EffectConfig>
<EnableStartFadein>true</EnableStartFadein>
<StartFadeinTime>3</StartFadeinTime>
<EnableEndFadeout>false</EnableEndFadeout>
<EndFadeoutTime>0</EndFadeoutTime>
<EnableBgmFade>true</EnableBgmFade>
<BgmFadeTime>1.7</BgmFadeTime>
</EffectConfig>
</AudioMixArray>
<AudioMixArray>
<AudioSource>https://test-xxx.cos.ap-chongqing.myqcloud.com/mix2.mp3</AudioSource>
<MixMode>Once</MixMode>
<Replace>true</Replace>
<EffectConfig>
<EnableStartFadein>true</EnableStartFadein>
<StartFadeinTime>3</StartFadeinTime>
<EnableEndFadeout>false</EnableEndFadeout>
<EndFadeoutTime>0</EndFadeoutTime>
<EnableBgmFade>true</EnableBgmFade>
<BgmFadeTime>1.7</BgmFadeTime>
</EffectConfig>
</AudioMixArray>
<CreateTime>2020-08-05T11:35:24+0800</CreateTime>
<UpdateTime>2020-08-31T16:15:20+0800</UpdateTime>
</Template>
</Response>


Catalog

In The Article

Creating Audio/Video Transcoding Template

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
Hong Kong, China
+852 800 906 020 (Toll Free)
United States
+1 844 606 0804 (Toll Free)
United Kingdom
+44 808 196 4551 (Toll Free)
Canada
+1 888 605 7930 (Toll Free)
Australia
+61 1300 986 386 (Toll Free)
EdgeOne hotline
+852 300 80699
More local hotlines coming soon