Following Part 1 of our SimSub blog series , Part 2 will cover the actual field implementation in Canadian head-ends.

For this, we will be referencing our playbook published in the broadpeak.io Knowledge Center, detailing each step of the deployment and automation process.

When to Start Working on SimSub

Canadian TV service providers with more than 2000 subscribers per market are legally required to enable Simultaneous Substitution (or SimSub).

As a reminder, Simsub is a requirement for Canadian television distribution companies to deliver the signal of a local or regional tv network in place of the signal of a foreign or nonlocal television station, when the two stations are broadcasting identical programming simultaneously.

Implementation can take time to align with your environment and gain access to scheduling data, which is why Broadpeak recommends looking at your subscriptions forecast and to start retro-planning. Our team is here to help!

Knowing Your Environment

Based on how many markets you target with your TV service, you will deal with either conditional or unconditional substitution.

With regards to conditional substitution, you are typically handling several regional markets. So your content will be based on, and specific to, the location of the viewer in order is to deliver local advertising. However, this can prove to be complicated as broadpeak.io will need to know the exact location of an end user, typically through query parameters in the URL streaming request, as explained here.

On the other hand, unconditional substitution means that you only deliver your service to one single market. As a result, all your users during a substitution are being switched to the same local alternate content.

The Broadpeak playbook covers both cases.

Obtaining the Schedule

Substitutions are referenced by third-party companies such as Mediastats. These provide recurring data, typically every week, on different formats — such as .csv, .pdf, and .api — that you can access through a contractual agreement. If needed, broadpeak.io can help get the data directly for you.

Checking and Selecting Your Feeds

Before jumping into the configuration part of the playbook, make sure you are prepared to make automated substitutions.

This checklist will help you. All you need to know is how to carefully retrieve the URLs of your channel feeds — in HLS and in DASH (based on the protocols you used, with the different variants) — how they are affected by SimSub, and what their hypothetical replacements are.

Getting Started

You are now ready to start using broadpeak.io! Next, you just need to either signup or login ?

If you have one market, and do not have to worry about your users being in multiple locations, follow these three steps:

  1. Creating the sources
  2. Defining blackout services
  3. Configuring the CDN

The same steps, slightly different, apply if you have multiple markets:

  1. Creating the sources
  2. Defining blackout services
  3. Configuring the CDN

Using APIs

When you have everything working and under control, you need to scale and automate as soon as possible.

This is where the power of APIs comes into play. If you are new to API, we suggest this tutorial to help you familiarize and get started with it — you will see, that it is easier than it sounds, and can open you up to a whole new world of automated tasks. ?

Some examples of how to integrate your data automatically into the platform are listed here (for conditional substitution), and here (for unconditional substitution).

Please note that if you are using SCTE224, broadpeak.io has an API ready for that. You can also stick to regular REST API if you prefer.

Test, Test, Test

Remember, testing is central to any technology deployment!

The playbook gives you insight on how to test, including a quick functional test without a CDN before going to full steam deployment.

If needed, broadpeak.io enables you tag services to refer to with different environments (Lab, Staging, Production), which also helps with testing and integration.

For further information and advice, we also recommend following these testing best practices.

Deploy, Exploit, and Manage

Congratulations! You are now ready to go to production! ?

With SimSub, the work does not stop there; some substitutions must be monitored, such as in cases where extra time is needed in sports games. broadpeak.io’s API allows you to update the end time of such slots as and when you need to.

Furthermore, you may want to develop a user interface if your “monitoring” personnel are not tech-savvy enough to send API calls. This is something Broadpeak can help with. You can contact us directly or use our Suggestion Page to ask for more features.

To Conclude

The goal of our platform is to help make life easier for Canadian TV service providers. Although SimSub is a requirement with the good intent to secure rights and revenues for local Canadian broadcasters, it is not trivial to put in place — especially when you use HTTP ABR (HLS, DASH) streaming technology.

We hope that this article and the Knowledge Center playbook can help, and let you focus on what matters the most, the development of high-QoE TV services in Canada!

Photo by Guillaume Jaillet on Unsplash

Mathias Guille
https://linkedin.com/in/mathiasguille
Mathias Guille is the Vice President Cloud Platform at Broadpeak. He leads the strategic development of Broadpeak’s cloud platform, including the building of the company’s infrastructure in the cloud and in public datacenters, the design of Broadpeak’s platform on top of the infrastructure and the shaping of the company’s applications to accommodate SaaS offerings.