Programs are the core building blocks of video streaming in RePro Stream. Each Program represents a live stream container where video flows in and out, providing the connection points you need to send video into RePro and distribute it to your viewers.
What is a Program?
In RePro Stream, a Program is essentially the live stream itself. When you create a Program inside your project, you are setting up a container where video can flow in and out. Think of Programs as the vehicle for your stream; authorised users can connect to it, but the Program itself remains a constant, manageable resource within your project.
Each Program provides ready-made connection details such as:
Input URLs for sending video into RePro from encoders (RePro Connect, hardware encoders, NDI sources)
Output URLs for pulling video out to viewers or other tools
Stream protocols like SRT, RTMP, or RTSP (RePro primarily uses SRT for security and reliability)
How Programs Work
Programs handle your incoming streams from start to finish of the streaming process. Your stream sources may change throughout production — switching between cameras, edit systems, or other video sources — but your Programs in RePro remain constant in your project, providing consistent input and output endpoints.
Key Benefits
Simple Stream Management You don't have to manually set up complicated server infrastructure. Each Program comes with ready-made input and output URLs—your encoder sends video in, and your viewers or tools can pull it out.
Professional Protocols Programs support SRT (Secure Reliable Transport), which means your streams are more secure and resilient to network issues compared to older options like RTMP. SRT includes up to 256-bit encryption and adaptive latency buffering.
Organised Multi-Stream Workflows Since every Program is part of a project, you can organise multiple streams in one place and quickly switch between them without losing track. This setup is especially useful in live production environments where speed and reliability matter.
Flexible Integration Programs streamline the technical side of streaming so you can focus on content, while giving you flexibility to integrate with the software and hardware you already use.
Creating a Program
To create a new Program:
Navigate to your Project manager area.
Select Programs from the left menu.
Click Create Program at the top right.
In the Add Program section:
Choose a colour for easy identification (default is grey)
Enter a Program name (maximum 50 characters)
Enter a Program short name (3 characters) for quick reference
SRT Configuration
Encryption (Input and output)
Enable or disable SRT encryption (up to 256-bit)
Default setting uses maximum security
You can reduce encryption length if needed
Latency Buffer
Adjust buffer latency to help with lower data rate areas
Recommended starting point: 500ms
Higher latency improves stability but increases delay to end users
Custom Ports (Advanced)
Optionally customise SRT ports if you have specific requirements
RePro creates completely randomised and different SRT credentials per Program by default
Additional Options
Hover over any setting icon for more information about features like:
Hotlink Protection for stream URL security
DVR (Timeshift Recording if enabled for the org / project)
Click Add to create the Program.
Finding Program Connection Details
To connect your encoder or view your Program outputs:
Click Programs in the left menu.
Click on the Program name to open the right side-panel.
Under Program Inputs, you'll see:
Full Input URL with all parameters
Split SRT Input Details (click to expand):
Domain/IP address
Input port
Encryption passphrase
Use the eye icon to view or copy icon to copy these values.
Note: Input ports typically start with 1 (e.g., srt://lon1.repro.stream:10095), while output ports start with 2 (e.g., srt://lon1.repro.stream:20095). Make sure you use the correct port for broadcasting versus viewing.
Understanding SRT URLs
SRT (Secure Reliable Transport) is RePro's primary streaming protocol. Here's how to read an SRT URL:
SRT URL Format:
srt://[hostname]:[port]?passphrase=[passphrase]
Example:
srt://lon2.repro.stream:10031?passphrase=xxx123yyy456zzz789
Breaking this down:
srt:// - the protocol
lon2.repro.stream or 81.144.250.132 - the host domain or IP address
10031 - the input port
xxx123yyy456zzz789 - the encryption passphrase
Best Practice: Use the domain-based host details rather than IP addresses. If the streaming server's IP ever changes, your hardware or software will continue to work without reconfiguration.
Program Workflow
Programs must be assigned to Channels before users can access them. See the Project Dashboard for a visual representation of how Programs connect through the hierarchy.
For detailed visualisation, see Understanding Programs, Channels, Groups, and Users.
Assigning Programs to Channels
After creating a Program:
Navigate to Channels in the left menu.
Click on a Channel (or create a new one).
Click Edit Channel Programs in the right side-panel.
Toggle on your Program to add it to the Channel.
Click Save.
Your Program is now part of the Channel and can be viewed by any Group with access to that Channel.
Program Settings and Options
Editing Programs Click the Edit button on a Program's row to modify:
Program name and short name
SRT settings (encryption, latency, ports)
Additional features (audio only, hotlink protection, DVR)
Deleting Programs Click the trash icon to remove a Program. You'll be asked to confirm. Deleting a Program removes it from all Channels.
Program Status Programs display as online (green) or offline (grey/red) in the Dashboard based on whether an active stream is connected.
Advanced Features
Hotlink Protection
Enable token-based URL security to prevent unauthorised sharing or access to stream URLs. See Hotlink Protection for details.
DVR (Timeshift Recording)
Record live streams for instant playback and review. See Timeshift Recording & Playback for details.
Timecode Support
Programs can carry timecode metadata from your encoder. See Timecode for details.
Protocols
SRT (primary, recommended)
RTMP/RTMPS (legacy support)
RTSP (legacy support)
For detailed codec information, see Supported Codecs and Protocols.
Supported Codecs and Protocols
RePro Programs support industry-standard codecs:
Video:
H.264 (recommended for broadest compatibility)
HEVC/H.265 (higher efficiency, not all browsers support playback)
Audio:
AAC (recommended)
Embedded audio from SDI/HDMI sources
Real-World Examples
Example 1: Multi-Camera Documentary Shoot
Scenario: Three-camera documentary with field producer monitoring remotely.
Programs Created:
"Interview Camera" - Main subject coverage
"B-Roll Camera" - Environmental shots
"Wide Safety" - Master shot backup
Configuration:
All cameras use HEVC @ 720p for bandwidth efficiency
SRT latency: 500ms (field location has variable cellular)
Hotlink Protection enabled (sensitive interview content)
Result: Producer can switch between all three feeds remotely, reviewing takes and directing the field team via phone while monitoring all pictures. See audio chat function for more details.
Example 2: Live News Remote Broadcast
Scenario: Breaking news coverage from a remote location, needs both high-quality and proxy feeds.
Programs Created:
"Field Camera HQ" - Full quality for broadcast
"Field Camera Proxy" - Low bitrate for mobile monitoring
Configuration:
HQ: HEVC @ 1080p, 8Mbps, 1500 - 2000ms latency
Proxy: HEVC @ 720p, 800kbps, 500ms latency (tolerates poor networks)
Both Programs feed from same encoder using multi-bitrate output
DVR enabled on HQ feed (2 hour buffer for review)
Result: Control room receives broadcast-quality feed while producers on mobile can monitor proxy feed without buffering.
Example 3: Post-Production Color Grade Review
Scenario: Colorist streaming grade sessions to remote director and DP.
Programs Created:
"Color Bay Output" - HDR grade session
"Color Reference Feed" - SDR monitoring
Configuration:
HDR Program: HEVC @ 1080p, 10-bit, BT.2020 color space
SDR Program: HEVC @ 1080p, 8-bit, Rec.709
Timecode metadata enabled on both
Result: Director reviews HDR grade on calibrated display, DP monitors SDR version, both can reference timecode for notes. Commentary track allows real-time discussion without interrupting grade.
Program-Specific Best Practices
Match Encoder Settings to Use Case
Live events: Lower latency (250-1000ms), accept some risk
Review/approval: Higher latency (1000-1500ms), prioritise stability
Archive/record: Maximum quality, latency less critical
Plan for Bandwidth Constraints
Field/remote: Create proxy Programs alongside HQ Programs
Multiple simultaneous viewers: Consider enabling transcoding/ABR
Low bandwidth areas: HEVC at lower bitrates beats H.264 at same bitrate
Use Meaningful Program Names
Include location: "Stage Left Camera" not "Camera 1"
Include purpose: "Client Review Mix" not "Output A"
Include format if multiple: "HQ Feed" vs "Proxy Feed"
Leverage Short Names Strategically
Use for quick visual identification: "A-C" for A Camera
Keep consistent within production: All cameras "A-C", "B-C", "C-C"
Test SRT Settings Before Critical Shoots
Start with 250ms latency and verify stability
Increase gradually if packet loss occurs
Document working settings for your typical locations
Use Colour Coding
Match Program colours to physical camera markers
Use red for critical/primary feeds
Use blue for backup/safety feeds
Consistent colour scheme helps in multi-cam productions
Consider Programs as Long-Term Resources Once configured and tested, Programs become reliable endpoints. Unlike temporary stream keys, Program configurations persist and can be reused across production days.
Future Development
Programs as Objects (Roadmap) Currently, a Program is tied to a specific Project. In future releases, Programs will become portable resources that can be dynamically assigned and reassigned between Projects within an Organisation. This is particularly beneficial for post-production workflows where a limited number of encoders serve multiple client projects, making it easier to reallocate Program/Encoder resources as needed.
Need Help?
For access or configuration issues, see Troubleshooting Access Issues.
For technical support or questions about Programs, contact us at [email protected] or use our support chat widget in the bottom right corner.









