To create a virtual linear channel with AWS MediaTailor, point a source location at an origin, add VOD sources and package configurations, create a channel output, schedule programs, then start and test playback. MediaTailor assembles and schedules access to media at your origin; it does not create or host the source media.
The sequence matters because each object refers to the one before it: the source location identifies where manifests live, package configurations describe how to retrieve them, outputs expose a playback format, and programs determine what appears when. This guide follows that chain and notes where live sources differ from VOD.
Understand the virtual channel objects
A source location is a named reference to an origin, such as an S3 bucket, web server, CDN or packaging service. It provides the base location from which MediaTailor can retrieve manifests. Your actual video and its manifests remain at that origin.
A VOD source represents an item of on-demand media available through a source location. It needs at least one package configuration: that configuration names a format such as HLS or DASH, identifies the manifest path and assigns a source group. The source group is later used when you define a channel output.
A channel is the scheduled linear service. Its programs place VOD or, when the tier and workflow allow, live sources in playback order. A channel output provides the format-specific playback endpoint for a client. These are separate jobs, so creating a channel alone does not make a schedule or give you a completed test.
The MediaTailor channel assembly getting-started guide walks through an end-to-end flow. Keep the object chain in mind as you work through the console or API: origin, source location, source and package configuration, channel and output, schedule, then playback URL.
Prepare an origin and source media
Before opening the console, collect the origin base URL and the relative path to each media manifest. Confirm that the origin is reachable using the access method you intend to configure. For an S3 origin, AWS documents an optional SigV4 authentication configuration; other origins may have their own access controls. Do not assume a URL that works from your workstation is accessible to the service or playback client.
Prepare the media as compatible packages, rather than treating a folder of arbitrary files as a channel library. AWS documents requirements for equal manifest-determined durations and equal child-stream counts among sources in a package configuration. Child streams are the available renditions or variants represented in the manifest. If titles differ in duration or have a different number of variants, grouping them together can violate those requirements.
This is a practical reason to use a consistent encoding template for the items intended to share a configuration. AWS notes that per-title or automated ABR approaches are unsupported when they break the required consistency. If your library is already encoded, inspect the manifests before building a large schedule; correcting package mismatches early is easier than troubleshooting them after outputs and programs have been configured.
Choose HLS, DASH or both based on the players that must consume the channel. If clients need both formats, plan corresponding package configurations and outputs. A YouTube-oriented workflow may also involve preparing a separate contribution stream or playlist; for source preparation ideas, see this guide to converting MPEG-2 files to H.264 for a YouTube playlist stream. That conversion advice does not replace the MediaTailor package and manifest requirements.
Create a source location
In the MediaTailor console, go to Channel assembly > Source locations and choose Create source location. Give the location a name that makes its purpose clear, then enter the origin base URL. AWS specifies that the URL uses standard HTTP form with an http:// or https:// prefix.
Use the base URL for the shared origin path, not a full title manifest if you intend to add multiple sources beneath it. For example, if the origin base is https://media.example.com/library, a relative manifest path might refer to a title-specific subdirectory under that base. The precise path syntax depends on how your origin is arranged, so verify that the combined location and manifest path resolves correctly.
If the origin is an Amazon S3 bucket, decide whether the documented SigV4 option is needed for access. Review the AWS instructions for creating source locations alongside your bucket access policy. The source location tells MediaTailor where to fetch a manifest; it does not upload your files or change their permissions for you.
Use names that will still be understandable when the library grows. A location named for the content collection or environment is usually easier to trace than a generic label. If you maintain separate test and production origins, make that difference visible in the naming and confirm each source uses the intended location.
Add VOD sources and package configurations
For each title, create a VOD source under the source location. Add at least one package configuration and supply its source group, package format and relative manifest path. The package configuration is the bridge between an origin manifest and the channel output: the output will refer to the source group, not to an unstructured list of files.
HLS and DASH are distinct package formats. If you need both for the same content, configure both and ensure your channel has an output for each relevant source group. Do not add a second output merely because the option exists; add it when a required playback client needs that format. Keeping the intended format and audience documented avoids confusion when testing URLs later.
Before adding many titles, verify that sources assigned to the same configuration meet the manifest constraints described above. Check the duration reported by the manifests and count the child streams. If one title has a different rendition structure, consider a separate compatible group or re-encode it to the shared template. AWS's documentation for working with VOD sources describes the package configuration model and its requirements.
A small pilot is useful: add a few representative titles, including the longest or most unusual item, then confirm the configuration before repeating the pattern. The goal is not simply to see titles in the console. It is to establish that the manifests, package format and source group can support the outputs you plan to publish.
Create a channel and output
Select a tier and playback mode to match the schedule. AWS distinguishes Basic and Standard channel tiers: Basic supports Loop and Linear modes but not live sources; Standard supports live sources and requires Linear mode. Check the current AWS documentation for the tier behavior before making a design decision, particularly if live content may be added later.
| Design choice | When it fits | Consequence |
|---|---|---|
| Basic, Loop or Linear | A VOD-only channel, with playback mode chosen for the intended schedule | Live sources are not supported on Basic |
| Standard, Linear | A channel that needs live sources as well as scheduled content | Linear mode is required |
| HLS output | Clients that support HLS playback | Configure an HLS package/source group and corresponding output |
| DASH output | Clients that require DASH playback | Configure a DASH package/source group and corresponding output |
Create the channel with a clear name, choose the permitted playback mode, and configure its output using the source group and a manifest name. The output determines the format and playback endpoint that clients will request. If your channel has both HLS and DASH packages, create the outputs needed for both rather than assuming one output will serve every client.
An output URL is a playback address, not proof that the entire path works. Its successful use depends on the source manifest being available, the schedule being valid, the channel being started and the client supporting that format. AWS's channel creation instructions describe the console choices; consult them if the available modes differ from what you expect.
Add programs to the schedule
Add each VOD source as a program and position it relative to the other programs. The program list defines playback order, so think of the schedule as an editorial rundown: an opening title, the next item, and what follows. Confirm that each program references the intended source, especially when similarly named titles or multiple package groups are present.
VOD programs may include ad breaks represented by a slate source. Personalized server-side ad insertion is a separate, optional layer in the getting-started flow; a scheduled VOD channel does not require you to add it just to test playback. Decide whether ad insertion is part of the actual service design before configuring it, and follow the relevant AWS documentation for that path.
Live programs are not just another VOD item with a different label. They depend on a live source and are available only under the supported tier and mode conditions. AWS's live sources guide covers their model. Do not infer from the existence of a live program object that every live input, origin or transition will behave like a VOD asset; verify the source's compatibility and scheduling behavior for your workflow.
Plan changes with the schedule's timing in mind. AWS notes that on a looping channel, edits to a program scheduled within the next ten minutes may not become visible until the next loop. If an edit appears to have been accepted but playback has not changed, check the schedule timing and loop behavior before repeatedly changing the program.
Start the channel and test its playback URL
Once the source, output and schedule are in place, start the channel. Copy the output playback URL and open it in a suitable HLS or DASH player. The format must match the output you configured; a player that cannot consume that format can fail even when the channel itself is running.
Test with a short, deliberate checklist. Confirm that the URL resolves, playback begins, the expected first program appears, and the stream advances to the next scheduled item. If you have more than one output, test each one separately. A successful start in the console is not the same as confirming what a viewer can receive.
When playback fails, work backwards through the object chain. Check that the channel is started, the program is on the schedule, the output uses the intended source group, and the package configuration points to the right manifest. Then check origin reachability and any required authentication. This order helps separate a scheduling mistake from a path or access problem.
The AWS getting-started workflow includes start, playback test and cleanup steps. If you created a test channel, decide whether it should remain active after validation and review current AWS billing information before leaving resources running. The guide's estimated active-channel charge is not a durable quote; AWS prices can vary by region and change over time, so consult the current regional pricing page rather than relying on an older estimate.
A MediaTailor virtual channel is a good fit when you need AWS channel assembly around media and origins you manage. It is a different operating model from sending a single encoded loop continuously to YouTube from a workstation. If your main requirement is an always-on YouTube stream from a prepared video, compare the OBS continuous-stream setup for an Indian car dealer and the home broadband trade-offs for a 24/7 YouTube stream before choosing the workflow. StreamNeo can remove the need to keep a computer running for that specific uploaded-video-to-YouTube use case; it does not replace MediaTailor channel assembly.
Before committing, compare the operating options on the pricing page. When the file and channel are ready, start free — 24-hour trial, no card.
FAQ
Does MediaTailor store or create my source videos?
No. You provide the media and maintain it at an origin such as S3, a web server, CDN or packaging origin. MediaTailor's source location points to where it can retrieve manifests; it is not a video hosting or creation service.
Can I schedule live sources in the same way as VOD?
Not exactly. Live sources are supported on Standard channels, which require Linear mode, while Basic does not support live sources. Live-source eligibility and behavior should be checked against AWS's current documentation for the specific source and schedule you intend to use.
Do I need both HLS and DASH outputs?
Only if your playback clients require both formats. Each format needs an appropriate package configuration and corresponding output, so choose based on client support rather than creating duplicate outputs without a use case.
What should I check first if the playback URL does not work?
Confirm that the channel is started and that its schedule contains the program you expect. Then trace the output's source group back to its package configuration, manifest path, origin reachability and any authentication settings.