Service Usage

Difference Between Custom Files and Live Channel Bucket

Custom Files Bucket

Manage fingerprints of digital content which are in file format. The developer can upload the audio / video file of the content to ACRCloud bucket as the identification sample. For example advertisement audios.

Files can be uploaded to the bucket so it can be used as fingerprint samples for content monitoring and second screen triggering.

Live Channel Bucket

Manage real time fingerprints of the digitized streaming content like the broadcast of TV or radio channels. Live stream is from an encoder and in a format of url under common protocols (udp, http, rtsp,mms) such as ( udp:// or

Difference Between Live Channel Detection and Broadcast Monitoring projects

Live Channel Detection

This kind of project is for making second screen apps, which recognize the live channel signal itself to know which channel the audiences are watching.

You need to manage Live Channel Buckets and deploy the Live Channel Fingerprinting Tool on your local server to ingest real time fingerprints of live channels into your Live Channel bucket then the mobile SDK can detect the live channel ID.

Broadcast Monitoring

Broadcast Monitoring project is used to recognize music or custom content such as commercials played on broadcast ( radio or tv ).

You need to manage Custom Files Buckets to upload your own files you want to monitor.

How to Check Usage Statistics?

The statistics can be found by the project under detail section of the project you built.

How to Choose Client-End Audio Source?


Recorded Audio

This source of audio always introduces noise with the content you want to recognize.

Typically the audio captured via microphone and the recording files with noise should be using this type of source.

Line-in Audio

This source of audio should be the original files or the audio without noise.

Recorded Audio is more sensitive than Line-in Audio in recognition, but that doesn’t mean you can always use Recorded Audio in all of scenarios, it would be more false positions if you use Recording Audio in the scenarios should be using Line-in Audio.


Recorded Audio

  • You want to make a Shazam alike app to recognize music or TV from the audio captured via microphone.

  • You want to recognize background music over the TV drama, movies or TV shows.

    • Although in this scenario you want to recognize something in the recording files, but background music in this kind of content always with people talks and other kind of noise alone with the music.

Line-in Audio

  • You want to recognize original files of music to get metadata.

  • You want to recognize music or commercials from recording files of radio live streams.

What is a valid Stream URL?

  1. Make sure the stream URL can be played by player like VLC.

  2. Make sure the stream can be played on the server which you install the fingerprint extract tools.

  3. (Optional) If you do live channel detection on TV broadcast, make sure the stream play status is not slower than what is showing on the audience’s TV.

Why there is “record error” from the SDK?

{“status”:{“code”:2000,”msg”:”record error”,”version”:”1.0″}}

It happens to appear with Android phones when the app has no authorization for recording. Please authorize the recording for the app from settings. In some circumstance, the tool category app will kill the recording authorization from other apps.

P.s. Android emulator does not support recording function, so it can’t work. Please use an android phone instead.

Define metadata templates for custom buckets

You can add multiple custom metadata fields to the buckets by adding a metadata template to the bucket, it will let you add custom metadata fields efficiently.

You can add multiple metadata fields and separate them with commas:

You will find the metadata fields you added in the User-defined Fields as below:

Live Channel Bucket Types

There are 2 types of Live Channel buckets:

  • Ingest from local server: You will need to setup the local server for ingesting the live channels;

  • Import from existing channels: If you already have the existing live channels in your buckets or you want to use the public live channels shared by others, you can select this type of bucket and import the existing channels. You don’t need to have the local server to ingest the live channels;

Last updated