Baton Validation

We provide running your own Baton Test Plan on your output media with our QC service.

👍

Test Plans and Report Templates

For now, we support only manual validation and integration of the Test Plans and Report Templates.

Please reach out to us to add your Test Plan or Report Template to our system and then we will send you the needed parameters: <test_plan /> and <template />.

🚧

Media Format

Baton Validation available only for mp4 output format. For qc_check format, you can use any single-bitrate source file. We don't support multi-bitrate format manifests as qc_check source files.

<?xml version="1.0"?>
<query>
    <userid><<id>></userid> <!-- required-->
    <userkey><<key>></userkey> <!-- required-->
    <action>AddMedia</action>
    <source>[SourceFile|SourcePlaylist]</source><!-- required -->
    <format>
        <output>[qc_check|mp4]</output><!-- required -->
        <qc> 
            <qc_baton_validation>
                <test_plan>[TestPlanHash]</test_plan> <!-- required -->
                <template>[TemplateHash]</template>
                <logo_image>[URL]</logo_image>
            </qc_baton_validation>
        </qc>
        <!-- format params -->
    </format>
</query>
{
    "query": {
        "userid": "<<id>>", // required
        "userkey": "<<key>>", // required
        "action": "AddMedia", // required
        "source": "[SourceFile|SourcePlaylist]", // required
        "format": {
            "output": "[qc_check|mp4]", // required
            "qc": {
                "qc_baton_validation": {
                    "test_plan": "[TestPlanHash]", // required
                    "template": "[TemplateHash]",
                    "logo_image": "[URL]"
                }
            }
            // format params
        }
    }
}

Parameter

Decription

Allowed Values

Default Value

test_plan

Baton Test Plan hash ID.

String

none

template

PDF Report Template hash ID or one of predefined Presets.

String

Available Presets:
• Audio and Container Errors Report
• Audio Errors Report
• Auto QC Report
• Baton Compact Report
• Baton Default Report
• Container Errors Report
• Detailed Report
• Editor Report
• Eyeball QC Report
• Field Technician Report
• Flat View Report
• Format Specific Report
• PSE Video Flash Report
• Scene Change Detection Report
• Summarized View Report
• Video and Container Errors Report
• Video Errors Report

none

logo_image

Custom Logo Image for PDF report

Valid URL

none

Baton Report

Link to Baton Report can be found in GetStatus response

<?xml version="1.0"?>
<report>
    <mediaID>[MediaID]</mediaID>
    <status>[QCStatus]</status>
    <externalReports>
        <externalReport>
            <testName>qc_baton_validation</testName>
            <fileName>[FileName]</fileName>
            <ReportLinkXML>[BatonReportURL]</ReportLinkXML>
            <ReportLinkPDF>[BatonPDFReportURL]</ReportLinkPDF>
            <Summary>[BatonSummary]</Summary>
            <Result>[Success|Failure]</Result>
        </externalReport>
    </externalReports>
    <!-- report fields -->
</report>
{
    "report": {
        "mediaID": "[MediaID]",
        "status": "[QCStatus]",
        "externalReports": {
            "externalReport": [
                {
                    "testName": "qc_baton_validation",
                    "fileName": "[FileName]",
                    "ReportLinkXML": "[BatonReportURL]",
                    "ReportLinkPDF": "[BatonPDFReportURL]",
                    "Summary": "[BatonSummary]",
                    "Result": "[Success|Failure]"
                }
            ]
        }
        // report fields
    }
}

🚧

For ReportLinkPDF, Summary, and Result

<ReportLinkPDF >, <Summary >, and <Result > fields may not be presented in <externalReport > block.

Prohibited Words Check

We provide the ability to check for a specified list of prohibited words in closed captions via Baton QC.

You can create several prohibited words lists and we will check all of them in Baton Validation test.
To manage lists we provide these API requests:

Create New List

Request:
<?xml version="1.0" encoding="UTF-8"?>
<query>
    <userid><<id>></userid> <!-- required -->
    <userkey><<key>></userkey> <!-- required-->
    <action>SetBatonProfaneWords</action> <!-- required-->
    <name>[ListName]</name> <!-- required-->
    <words>
        <word>[Word_1]</word>
        <word>[Word_2]</word>
        <!-- ... -->
        <word>[Word_N]</word>
    </words>
</query>
{
    "query": {
        "userid": "<<id>>", // required
        "userkey": "<<key>>", // required
        "action": "SetBatonProfaneWords", // required
        "name": "[ListName]", // required
        "words": {
            "word": [
                "[Word_1]",
                "[Word_1]",
                // ...
                "[Word_N]"
            ]
        }
    }
}

Parameter

Description

Allowed Values

name

List Name

String

word

Prohibited Word

String

Response:
<?xml version="1.0" encoding="UTF-8"?>
<response>
    <action>setbatonprofanewords</action>
    <status>Success</status>
</response>
{
    "response": {
        "action": "setbatonprofanewords",
        "status": "Success"
    }
}

Show Added Lists

Request:
<?xml version="1.0" encoding="UTF-8"?>
<query>
    <userid><<id>></userid> <!-- required -->
    <userkey><<key>></userkey> <!-- required-->
    <action>ListBatonProfaneWordLists</action> <!-- required-->
</query>
{
    "query": {
        "userid": "<<id>>", // required
        "userkey": "<<key>>", // required
        "action": "ListBatonProfaneWords" // required
    }
}
Response:
<?xml version="1.0" encoding="UTF-8"?>
<response>
    <action>listbatonprofanewordlists</action>
    <status>Success</status>
    <result>
        <user_id><<id>></user_id>
        <wordlists>
            <wordlist>[ListName_1]</wordlist>
            <wordlist>[ListName_1]</wordlist>
            <!-- ... -->
            <wordlist>[ListName_N]</wordlist>
        </wordlists>
    </result>
</response>
{
    "response": {
        "action": "listbatonprofanewords",
        "status": "Success",
        "result": {
            "user_id": "<<id>>",
            "wordlists": {
                "wordlist": [
                    "ListName_1",
                    "ListName_2",
                    // ...
                    "ListName_N"
                ]
            }
        }
    }
}

Delete Words List

Request:
<?xml version="1.0" encoding="UTF-8"?>
<query>
    <userid><<id>></userid> <!-- required -->
    <userkey><<key>></userkey> <!-- required-->
    <action>DropBatonProfaneWords</action> <!-- required-->
    <name>[ListName]</name> <!-- required-->
</query>
{
    "query": {
        "userid": "<<id>>", // required
        "userkey": "<<key>>", // required
        "action": "DropBatonProfaneWords", // required
        "name": "[ListName]" // required
    }
}

Parameter

Description

Allowed Values

name

List Name

String

Response:
<?xml version="1.0" encoding="UTF-8"?>
<response>
    <action>dropbatonprofanewords</action>
    <status>Success</status>
</response>
{
    "response": {
        "action": "dropbatonprofanewords",
        "status": "Success"
    }
}

Show Words In List

Request:
<?xml version="1.0" encoding="UTF-8"?>
<query>
    <userid><<id>></userid> <!-- required -->
    <userkey><<key>></userkey> <!-- required-->
    <action>GetBatonProfaneWords</action> <!-- required-->
    <name>[ListName]</name> <!-- required-->
</query>
{
    "query": {
        "userid": "<<id>>", // required
        "userkey": "<<key>>", // required
        "action": "GetBatonProfaneWords", // required
        "name": "[ListName]" // required
    }
}

Parameter

Description

Allowed Values

name

List Name

String

Response:
<?xml version="1.0" encoding="UTF-8"?>
<response>
    <action>getbatonprofanewords</action>
    <status>Success</status>
    <result>
        <user_id><<id>></user_id>
        <words>
            <word>[Word_1]</word>
            <word>[Word_1]</word>
            <!-- ... -->
            <word>[Word_N]</word>
        </words>
    </result>
</response>
{
    "response": {
        "action": "getbatonprofanewords",
        "status": "Success",
        "result": {
            "user_id": "<<id>>",
            "words": {
                "word": [
                    "Word_1",
                    "Word_2",
                    // ...
                    "Word_N"
                ]
            }
        }
    }
}