Live streaming broadcasts video content in real-time as it is generated. This guide covers the complete workflow from configuring input signals to delivering live streams to your audience.
Prerequisites
Section titled “Prerequisites”Before you begin, make sure you have:
- Access to your MK.IO account
- Cloud storage connected for recording
- Software or hardware to generate a live video signal (for example, OBS Studio or a hardware encoder)
- RTMP or SRT streaming capability
Understanding live streaming
Section titled “Understanding live streaming”Live streaming broadcasts video in real-time as content is generated. Common use cases include:
- Live events — Conferences, concerts, sports broadcasts
- Live interviews — Real-time conversations
- Fake live — Pre-recorded content streamed as if live
- 24/7 channels — Continuous broadcasting
In all cases, content continuously arrives at MK.IO, which packages it for distribution to your audience.
Preparing your signal source
Section titled “Preparing your signal source”To stream to MK.IO, you need software or hardware that captures your content and sends it via RTMP or SRT protocols.
Protocol overview:
- RTMP — Established, widely supported (YouTube, Twitch, Vimeo). Delivers pre-encoded H.264 video and AAC audio.
- SRT — Modern protocol offering superior reliability and security. Increasingly used in professional workflows.
This guide uses OBS Studio with RTMP for simplicity.
Setting up OBS Studio
Section titled “Setting up OBS Studio”Install OBS Studio
Section titled “Install OBS Studio”Download OBS Studio from obsproject.com (Windows, Linux, or Mac) and launch the application. You see a black preview with controls and source lists.
Add a test source
Section titled “Add a test source”- Click + under Sources.
- Choose Browser.
- Name it
Clockand paste this URL:https://vclock.com.
This creates a live clock for testing. Minimise OBS and return to MK.IO to configure the receiving end.
If the clock site shows a cookie consent banner, right-click the browser source and select Interact to accept cookies.
Creating a live event
Section titled “Creating a live event”- Go to your MK.IO project dashboard at
https://app.mk.io/project/<your-project-name>. - Navigate to Create > Live Events.
- Click + Create Live Event.
Basic settings
Section titled “Basic settings”- Name: A descriptive identifier such as
live-tutorial - Description: Optional additional information
Event type
Section titled “Event type”Live passthrough mode:
Live passthrough requires advanced streaming knowledge and is not recommended for beginners.
- MK.IO receives RTMP input and packages it for streaming without modification.
- The stream must be pre-encoded at the source (for example, by OBS).
- For adaptive bitrate streaming (ABR), encoding must be done at the source.
Live encoding mode (recommended):
- MK.IO processes the incoming stream and creates multiple resolutions.
- MK.IO automatically generates adaptive bitrate streaming (ABR).
- Supports both RTMP and SRT input protocols.
- Suitable for most use cases.
Adaptive Bitrate Streaming (ABR) creates multiple versions of your live stream at different bitrates and resolutions. The player switches between versions in real-time based on network conditions, device performance, and screen size, ensuring smooth playback.
Recommended configuration
Section titled “Recommended configuration”- Event type: Live Encoding (720p) — a good default quality
- Input protocol: RTMP
- Archive window length: How long recordings are retained
- Storage account: Your connected storage for recordings
- Output key frame interval:
2(recommended) - Image fitting: Auto size
- AI pipeline:
- None — no additional processing
- Predefined_ACSLiveTranscription — for automatic live subtitles (specify ISO language code)
Click Review then Create to finalise your live event.
Setting up streaming infrastructure
Section titled “Setting up streaming infrastructure”Live content requires two infrastructure components before it can reach viewers:
The two components
The delivery infrastructure
The access permissions and URLs
Creating a streaming endpoint
Section titled “Creating a streaming endpoint”If you have not already created an endpoint:
- Go to Streaming Endpoints at
https://app.mk.io/project/<your-project-name>/streamingEndpoints. - Click + Create Streaming Endpoint.
- Configure:
- Name:
TutorialEndpoint - Base URL:
tutorial - Type: Shared (cost-effective for this guide)
- Name:
- Click Create then Start.
Endpoint types for live streaming:
- Shared — Up to 200 concurrent viewers, cost-effective
- Dedicated — Up to 10,000 concurrent viewers, better performance
- CDN — Unlimited viewers, maximum performance, lowest latency
Creating a streaming locator
Section titled “Creating a streaming locator”Before starting your live stream, configure the streaming locator:
- In your live event, scroll to the Locators section.
- Click + Create Locator.
- Configure:
- Name:
live-tutorial-locator(unique identifier) - Streaming policy:
Predefined_ClearStreamingOnly(streaming without protection) - Content key policy: Leave empty unless you require DRM protection
- Expiration time: Leave empty for a stream that does not expire
- Asset filters: Leave empty unless you need content modification
- Account filters: Leave empty unless you need account-level filtering
- Name:
- Click Add.
Unlike VOD, you cannot apply the streaming locator until the live stream starts. You apply it in the next step.
Going live
Section titled “Going live”In your live event interface you see:
- The input URL for sending your stream — copy this now
- The streaming endpoint (must be running)
- The streaming locator (configured but not yet applied)
Configure OBS for streaming
Section titled “Configure OBS for streaming”- In OBS, go to Settings > Stream.
- Configure the connection:
-
Service: Custom
-
Server: The input URL you copied, without the
/streamsuffixrtmp://in-707ee7ae-a496-42b9-a450-0a6895af6a68.uksouth.streaming.mediakind.com:1935/527ecc1d-2e14-49ef-86f0-778cba76b3c0 -
Stream Key:
stream
-
- Click Apply and OK.
Start the stream
Section titled “Start the stream”- Start the live event in MK.IO.
- In OBS, click Start Streaming — this sends your feed to MK.IO.
- Once MK.IO receives the stream, apply the streaming locator.
- MK.IO generates your playback URLs in HLS and DASH formats.
Your stream is now live and ready for viewers through MK Player or any compatible player.
Monitoring your stream
Section titled “Monitoring your stream”OBS status indicators
Section titled “OBS status indicators”The status bar at the bottom of the OBS window shows:
- Bitrate — Data sent per second. Should be stable and green.
- Dropped frames — Should remain at 0%. A rising count indicates network or CPU issues.
- FPS — Frame rate being sent (typically 30 or 60).
- CPU usage — Keep below 60%. Avoid 90%+ as it causes quality degradation.
MK.IO stream status
Section titled “MK.IO stream status”- Return to your live event page in MK.IO.
- Verify the stream appears in the built-in player.
- Confirm that playback URLs are visible for HLS and DASH formats.
- Test the URLs in MK Player or another compatible player to confirm viewers can access the stream.
You notice a delay between OBS input and MK.IO player output. This is expected. Typical delays are 15–30 seconds, which MK.IO optimises compared to standard solutions (50–60 seconds). With low-latency players, delays can be as low as approximately 20 seconds.
Sharing your live stream
Section titled “Sharing your live stream”Once your streaming locator is applied, you have access to:
Playback URLs:
- HLS:
https://tutorial.uksouth.streaming.mediakind.com/.../manifest(format=m3u8-cmaf) - DASH:
https://tutorial.uksouth.streaming.mediakind.com/.../manifest(format=mpd-time-cmaf)
URL structure:
https://tutorial.uksouth.streaming.mediakind.com/<locator-id>/<live-event-name>.ism/manifest(format=mpd-time-cmaf)These URLs work with:
- MKPlayer — MediaKind’s advanced web player, included with MK.IO
- Dash.js — Official DASH reference player
- Akamai Player — Supports HLS and DASH with low latency
- HLS.js — HLS web player with detailed settings
When viewers access live streaming URLs, egress transfer costs apply. See MK.IO pricing for details.
Recording and playback
Section titled “Recording and playback”Your live stream is automatically recorded to your connected storage. Once you stop the event:
- Go to Outputs in your live event.
- You see an asset containing the complete recording.
- Click the asset link to access the VOD version.
This recording becomes a standard VOD asset that you can process with transforms, create additional streaming locators for, or use for distribution.
Stopping your stream
Section titled “Stopping your stream”When your event concludes:
- Click Stop on the live event page in MK.IO.
- In OBS, click Stop Streaming.
- If the streaming endpoint is no longer needed, stop it to avoid unnecessary costs.