WINK Forge

Enterprise Video Transcoding Platform
Technical Manual & User Guide
Version 8.x - 2025 Edition
WINK Streaming, Inc.
Document Updated: August 2025

Table of Contents

Chapter 1: Introduction to WINK Forge

1.1 Overview

WINK Forge is an enterprise-grade video transcoding and streaming platform that transforms video content for optimal delivery across diverse networks and devices. As the cornerstone of the WINK Streaming ecosystem, WINK Forge provides robust video processing capabilities that enable organizations to deploy comprehensive video streaming solutions.

Key Capabilities

Note: WINK Forge is always paired with WINK Media Router for complete functionality. Together, they form the core platform for all WINK solutions.

1.2 System Architecture

WINK Forge operates on a modular architecture designed for scalability and reliability:

Component Function Description
Input Manager Video Ingestion Handles multiple simultaneous video sources with automatic format detection
Transcoding Engine Video Processing Real-time encoding with H.264, H.265/HEVC, VP9, and AV1 support
Output Manager Stream Distribution Manages multiple output formats and destinations simultaneously
API Gateway Control Interface RESTful API for programmatic control and monitoring
Web Admin Management UI Browser-based configuration and monitoring interface

1.3 Deployment Options

Hardware Appliance

Pre-configured hardware solutions optimized for video processing:

Virtual Appliance (V-Forge)

Deploy on your existing virtualization infrastructure:

Cloud Deployment (Cloud Forge)

Fully managed cloud instances:

Chapter 2: Getting Started

2.1 Web Interface Access

The WINK Forge web administration interface provides complete control over all system functions. Access methods vary by firmware version:

Firmware 8.x (Current)

Legacy Firmware

Version HTTP Port HTTPS Port
Firmware 5.x 88 444
Firmware 4.x 80 443
Security Warning: Always use HTTPS for administration access. HTTP access should be disabled in production environments.

2.2 Default Credentials

Initial system access requires the default credentials:

Username: admin
Password: admin_pass
Shared Key: admin_key
    
Important: You must change these credentials upon first login. The system will enforce a strong password policy requiring:

2.3 Security Configuration

SSL Certificate Management

Configure SSL certificates for secure access:

  1. Navigate to Settings → System Options → SSL Certificate
  2. Choose one of the following options:
  3. Apply changes and restart web services

Shared Key Authentication

The shared key system provides an additional layer of security, particularly useful for:

To configure shared key authentication:

# API call example
curl -X POST https://forge.example.com/api/ \
  --data-urlencode "<wink_api user='admin' pass='password' key='shared_key'>
    <req id='1' command='version'></req>
  </wink_api>"
    

Chapter 3: Input Configuration

3.1 Supported Input Types

WINK Forge supports a comprehensive range of input protocols and formats. While it can handle any codec, H.264 inputs are strongly preferred for field deployments:

RTSP (Real Time Streaming Protocol)

Most common for IP cameras and encoders. WINK Forge automatically detects RTSP streams and negotiates the best transport method:

rtsp://username:password@192.168.1.100:554/stream1
rtsp://camera.example.com/live/channel1
rtsps://secure-camera.example.com:8554/stream  # RTSP over TLS
    
Automatic Detection: WINK Forge intelligently detects the input format (H.264, H.265/HEVC) and transport protocol. Manual configuration is optional for advanced users.

RTMP (Real Time Messaging Protocol)

Popular for live streaming applications:

rtmp://server.example.com/live/streamkey
rtmp://localhost/live/camera1
rtmps://secure.example.com:443/live/stream  # RTMP over TLS
    

HTTP/HTTPS Streams

Including MJPEG, HLS, and MPEG-DASH sources:

http://camera.example.com/mjpeg.cgi
https://server.example.com/hls/stream.m3u8
https://cdn.example.com/dash/manifest.mpd
https://camera.local/snapshot.jpg?fps=1  # Image sequence
    

UDP/RTP/SRT Streams

For multicast, low-latency, and secure reliable transport:

udp://239.1.1.1:1234
rtp://224.0.0.1:5004
srt://192.168.1.100:9000?mode=caller&passphrase=mykey
srt://srt-server.example.com:9000?streamid=mystream
    
SRT Benefits: Secure Reliable Transport provides encrypted, low-latency streaming with packet loss recovery - ideal for internet streaming and remote production.

VMS Integrations

Automatic Codec Detection

WINK Forge automatically detects and handles incoming codecs:

Codec Support Notes
H.264 (AVC) Full All profiles including High 4:4:4
H.265 (HEVC) Full Main, Main10, Main 4:4:4
VP8/VP9 Full WebRTC and WebM sources
MJPEG Full Legacy camera support
MPEG-4 Full Legacy compatibility

3.2 Input Settings

Basic Configuration

Parameter Description Example
Title Friendly name (45 chars max) Main Entrance Camera
Description Detailed description (255 chars) HD camera covering main building entrance
Input Type Protocol selection (Auto-detect available) Auto / RTSP / RTMP / SRT / HTTP
Input Path Source URL/URI rtsp://192.168.1.100:554/stream1

Video Parameters

Parameter Range Default Notes
FPS 0-60 0 (auto) 0 = variable frame rate
Width 1-8192 Auto-detect Pixels
Height 1-8192 Auto-detect Pixels
Rotation 0, 90, 180, 270 0 Degrees clockwise
Pro Tip: Use VLC Media Player to inspect source streams and determine correct resolution and codec parameters before configuration.

Input Format Auto-Detection

WINK Forge intelligently detects input parameters when "Auto" is selected:

  1. Protocol Detection: Analyzes URL scheme and probes endpoints
  2. Codec Identification: Reads stream headers to identify H.264, H.265, or other codecs
  3. Resolution Discovery: Extracts frame dimensions from video stream
  4. Frame Rate Analysis: Calculates actual FPS from timestamps
  5. Audio Detection: Identifies audio tracks and codecs
Manual Override: While auto-detection works for 95% of sources, you can manually specify parameters for edge cases or to enforce specific settings.

Cropping Options

Remove unwanted portions of the video frame:

Caution: Excessive cropping may result in aspect ratio distortion. Always maintain proportional dimensions in your output settings.

3.3 Advanced Input Options

Authentication Methods

Configure authentication for protected sources:

# Basic Authentication
rtsp://username:password@host/path

# Digest Authentication (automatic)
Input will negotiate digest auth when required

# Custom Headers (HTTP/HTTPS only)
Add in Advanced Options:
http_headers="Authorization: Bearer TOKEN"
    

Network Optimization

Parameter Purpose Recommended Value
buffer_size Input buffer in KB 1024-4096
rtsp_transport RTSP transport mode tcp (more reliable)
srt_latency SRT latency (ms) 120-1000
timeout Connection timeout (µs) 10000000 (10 sec)
reconnect Auto-reconnect on failure enabled

Metadata Mapping

Associate metadata with streams for downstream applications:

Chapter 4: Output Configuration

4.1 Output Formats

WINK Forge supports multiple simultaneous outputs per input, enabling diverse distribution strategies:

Streaming Protocols

Protocol Use Case Latency Compatibility
HLS Web/Mobile streaming 6-30 seconds Universal
LL-HLS Low latency web 2-5 seconds Modern browsers
MPEG-DASH Adaptive streaming 3-10 seconds Wide support
RTMP Live streaming 1-3 seconds Flash/CDN
RTSP VMS/Surveillance <1 second Professional
SRT Remote production <1 second Internet streaming
WebRTC Real-time communication <500ms Modern browsers

Output Path Configuration

Configure output destinations based on protocol:

# HLS Output
/hls/stream_name

# RTMP Push
rtmp://cdn.example.com/live/streamkey

# RTSP Server
rtsp://0.0.0.0:8554/stream1

# SRT Push
srt://backup.site.com:9000?streamid=camera1&passphrase=secret

# WebRTC
/webrtc/stream_name
    

4.2 Encoding Settings

Video Encoding Parameters

Parameter Description Recommended Range
Resolution Output dimensions 360p to 4K
Bitrate Target bitrate (Kbps) 500-15000
FPS Output frame rate 15-60
Keyframe Interval GOP size (frames) 30-150
H.264 Profile Encoding profile Baseline/Main/High
H.265 Profile HEVC profile Main/Main10
Codec Video codec H.264 (default) / H.265 / VP9 / AV1

H.264 - The Field-Proven Standard

IMPORTANT: H.264 is the default and recommended codec for almost all field deployments, especially traffic cameras and any camera connected via wireless, cellular, or high-latency networks. While newer codecs exist, H.264 remains the gold standard for reliability.

Field Deployment Best Practice: Always use H.264 for: Other codecs offer minimal gains but introduce significant complexity and compatibility issues.

H.265/HEVC - Use Cases and Warnings

While WINK Forge fully supports H.265 (HEVC), it should only be used in specific controlled environments:

Feature H.264 H.265
Compression Efficiency Baseline 25-50% better
Max Resolution 4K (common) 8K native
Processing Power Lower 2-4x higher
Browser Support Universal Safari, Edge

H.265 Encoding Parameters

# Efficient H.265 encoding
Codec: libx265
Preset: medium (balance quality/speed)
Profile: main or main10 (for HDR)
Level: auto (based on resolution/framerate)

# Example for CONTROLLED ENVIRONMENT ONLY
Resolution: 3840x2160
Bitrate: 15000 Kbps (vs 25000 for H.264)
Keyframe: 60 frames

WARNING: Never use H.265 for cameras on wireless/cellular networks!
    
Critical Note: The minor bandwidth savings of H.265 (25-30%) are rarely worth the significant drawbacks in field deployments. A slightly higher bitrate H.264 stream that works reliably is always preferable to a lower bitrate H.265 stream that fails under real-world conditions.

Bitrate Guidelines

Resolution Low Quality Standard High Quality
360p (640x360) 400 Kbps 800 Kbps 1200 Kbps
480p (854x480) 500 Kbps 1200 Kbps 2000 Kbps
720p (1280x720) 1500 Kbps 2500 Kbps 4000 Kbps
1080p (1920x1080) 3000 Kbps 5000 Kbps 8000 Kbps
4K (3840x2160) 13000 Kbps 20000 Kbps 35000 Kbps

Audio Configuration

Codec Bitrate Range Use Case
AAC-LC 64-320 Kbps General purpose
HE-AAC 32-128 Kbps Low bandwidth
Opus 16-256 Kbps WebRTC/Modern
MP3 96-320 Kbps Legacy compatibility
PCM/WAV Uncompressed Professional audio

4.3 Adaptive Streaming

Creating Adaptive Bitrate Ladders

Configure multiple outputs with different qualities for adaptive streaming:

Name Resolution Bitrate Profile
stream_low 640x360 800 Kbps Baseline
stream_med 1280x720 2500 Kbps Main
stream_high 1920x1080 5000 Kbps High
Best Practice: Maintain consistent keyframe intervals across all adaptive bitrate variants to ensure smooth quality switching.

Chapter 5: Media Protocols

5.1 RTMP Configuration

RTMP Server Mode

Accept incoming RTMP streams:

# Input configuration
Type: RTMP
Path: rtmp://0.0.0.0:1935/live/stream1

# Publishers connect to:
rtmp://forge.example.com:1935/live/stream1
    

RTMP Push Mode

Send streams to CDN or streaming services:

# Output configuration
Format: RTMP
Path: rtmp://a.rtmp.youtube.com/live2/xxxx-xxxx-xxxx-xxxx
    

RTMP Authentication

Secure RTMP endpoints with token authentication:

# Enable in Settings → RTMP Rebroadcast
Authentication: Token
Token Lifetime: 3600 seconds

# Client URL with token
rtmp://forge.example.com/live/stream1?token=abc123
    

5.2 SRT Configuration

SRT (Secure Reliable Transport)

SRT provides encrypted, reliable streaming over unpredictable networks:

SRT Modes

Mode Use Case Configuration
Caller Initiate connection srt://host:port?mode=caller
Listener Accept connections srt://0.0.0.0:9000?mode=listener
Rendezvous Firewall traversal srt://host:port?mode=rendezvous

SRT Parameters

# Input with encryption
Type: SRT
Path: srt://source.com:9000?passphrase=SecureKey123&latency=200

# Output with stream ID
Format: SRT
Path: srt://backup.site:9000?streamid=camera1&passphrase=key

# Key SRT options:
latency=120        # Latency in milliseconds (default: 120)
maxbw=0           # Max bandwidth (0 = unlimited)
pbkeylen=16       # Encryption key length (16, 24, or 32)
lossmaxttl=0      # Packet loss tolerance
    
SRT Best Practices:

5.3 RTSP Configuration

RTSP Server Setup

# Output configuration
Format: RTSP
Path: rtsp://0.0.0.0:8554/stream1

# Access URL
rtsp://forge.example.com:8554/stream1
    

RTSP Transport Modes

Mode Protocol Use Case
RTP/UDP UDP Low latency, LAN
RTP/TCP TCP Firewall friendly
RTP/RTSP Interleaved Single connection

RTSP Authentication

# Basic authentication
rtsp://username:password@forge.example.com:8554/stream1

# Digest authentication (automatic negotiation)
Configured in user management
    

5.4 HLS/LL-HLS

Standard HLS Configuration

# Output settings
Format: HLS
Path: /hls/stream1
Segment Duration: 6 seconds
Playlist Length: 5 segments

# Access URL
https://forge.example.com/hls/stream1/playlist.m3u8
    

Low-Latency HLS (LL-HLS)

# Enable LL-HLS
Format: LL-HLS
Part Duration: 0.33 seconds
Segment Duration: 2 seconds

# Client requirements
- HTTP/2 support
- Byte-range requests
- Modern player (HLS.js 1.0+)
    

HLS Encryption

Protect content with AES-128 encryption:

  1. Generate encryption keys
  2. Configure key server URL
  3. Enable encryption in output settings

5.5 MPEG-DASH

DASH Configuration

# Output settings
Format: DASH
Path: /dash/stream1
Segment Duration: 4 seconds
Min Buffer Time: 1.5 seconds

# Manifest URL
https://forge.example.com/dash/stream1/manifest.mpd
    

DASH Features

Chapter 6: VMS Integration

6.1 Genetec Integration

Genetec Security Center

WINK Forge provides native integration with Genetec Security Center through the SDK:

Virtual Encoder Configuration

  1. In Security Center Config Tool, add new encoder
  2. Select "WINK Streaming" from manufacturer list
  3. Enter WINK Forge IP address and credentials
  4. Discover available streams automatically

Stream URL Format

# Genetec-compatible RTSP URL
rtsp://forge.example.com:554/genetec/[GUID]_[quality]

# Example
rtsp://forge.example.com:554/genetec/WF05-1234-5678-90AB-CDEF_high
    

Virtual Decoder Setup

Use WINK Forge as a Genetec Virtual Decoder:

# Input configuration
Type: Genetec
Path: [Genetec server details configured in plugin]

# Capabilities
- Multi-stream decoding
- PTZ passthrough
- Event forwarding
    
Integration Tip: Enable the Genetec plugin in WINK Forge before attempting Security Center discovery. Navigate to Plugins → Genetec → Enable.

6.2 Milestone Integration

Milestone XProtect

Configure WINK Forge as a universal driver device:

Setting Value
Driver Universal Driver
Protocol HTTP or RTSP
Port 80 (HTTP) or 554 (RTSP)
Path /mjpeg/[stream] or /rtsp/[stream]

Stream Configuration

# MJPEG for maximum compatibility
Output Format: MJPEG
Path: /mjpeg/camera1
FPS: 10-15 (reduce bandwidth)

# RTSP for better quality
Output Format: RTSP
Path: rtsp://0.0.0.0:554/camera1
    

6.3 VMS to VMS Bridging

WINK Forge excels at bridging between incompatible VMS platforms:

Common Bridging Scenarios

Source VMS Target VMS Method
Genetec Milestone Genetec SDK → RTSP output
Milestone Genetec Universal driver → Genetec encoder
Legacy DVR Modern VMS RTSP input → Multiple outputs
Cloud VMS On-premise RTMP pull → Local RTSP

Camera Protocol Emulation

Make any source appear as a standard IP camera:

Bandwidth Consideration: When bridging VMS systems, configure appropriate transcoding to avoid bandwidth multiplication. Use the same codec and bitrate when possible.

Chapter 7: API Reference

7.1 API Overview

The WINK Forge API provides complete programmatic control over all system functions. All API calls require SSL and authentication.

API Endpoint

https://forge.example.com/api/

Authentication

<wink_api user='username' pass='password' key='shared_key'>
    <req id='1' command='command_name'>payload</req>
</wink_api>
    

Response Format

<wink_api>
    <resp id="1" command="command_name" status="ok">response_data</resp>
</wink_api>
    

7.2 Stream Control Commands

Start/Stop/Restart Streams

Command Description Payload
start Start transcoding GUID or 'all'
stop Stop transcoding GUID or 'all'
restart Restart transcoding GUID or 'all'

Example: Restart Stream

<wink_api user='apiuser' pass='apipass'>
    <req id='1' command='restart'>WF05-2657-1C04-7F1B-5EC0</req>
</wink_api>
    

Stream Status

Get GUID Status

<wink_api user='apiuser' pass='apipass'>
    <req id='1' command='guidstatus'>WF05-1EDA-1C04-6E33-ABF9</req>
</wink_api>

Response values:
0 = Not publishing
1 = Publishing
2 = Blocked
3 = Unavailable
    

Block/Unblock Streams

Command Function Usage
blockguid Block video output Shows placeholder image
unblockguid Restore video output Resumes normal stream
blockip Block by IP:Port Block without GUID

Input Management

Create/Update Input

<wink_api user='apiuser' pass='apipass'>
    <req id='1' command='input_source'>
        <input title='Camera 1' 
               desc='Main entrance' 
               type='RTSP' 
               path='rtsp://192.168.1.100:554/stream1'
               enabled='1' />
    </req>
</wink_api>
    

Input Parameters

Parameter Required Description
title Yes (new) Stream title
desc Yes (new) Description
path Yes (new) Source URI
type Yes (new) Protocol type
guid Yes (update) Existing GUID
fps No Frame rate
width No Video width
height No Video height

7.3 User Management API

Create User

<wink_api user='admin' pass='adminpass'>
    <req id='1' command='createuser'>
        <name>John Smith</name>
        <username>jsmith</username>
        <password>SecurePass123!</password>
        <access>2</access>
    </req>
</wink_api>

Access Levels:
1 = Admin
2 = Operator  
3 = Viewer
4 = API Only
    

Change Password

<wink_api user='admin' pass='adminpass'>
    <req id='1' command='changepassword'>
        <username>jsmith</username>
        <password md5='false'>NewPass456!</password>
    </req>
</wink_api>
    

Chapter 8: Advanced Features

8.1 One-Time Password (OTP) Authentication

OTP provides temporary access tokens for secure stream viewing, ideal for:

OTP Workflow

  1. Application requests OTP token from WINK Media Router
  2. Token generated with specified duration
  3. Client uses token to access stream
  4. Token expires after duration or single use

API Commands

Create OTP Token

curl -d "apiuser=apiuser&apipass=apipass&action=create&duration=60&hash_type=alphanumeric&hash_length=32" \
     -X POST https://router.example.com/otp/api/

Response: 24814928371014572819abc123def456
    

OTP Parameters

Parameter Default Description
duration 60 Token lifetime (minutes)
hash_type alphanumeric alpha, numeric, alphanumeric
hash_length 32 Token length (max 128)
expiry_url None Redirect on expiry

Using OTP Tokens

# Append token to stream URL
https://forge.example.com/hls/stream1/playlist.m3u8?token=24814928371014572819abc123def456
    

8.2 Watermarking

Image Watermarks

Add logos or branding to video streams:

  1. Upload watermark image (PNG with transparency recommended)
  2. Configure in output settings:

Text Overlays

Add dynamic text to streams:

Variable Output Example
%TIME% Current time 14:35:22
%DATE% Current date 2025-08-02
%TITLE% Stream title Main Entrance
%FPS% Current FPS 29.97 fps

Timestamp Formats

# Predefined formats
YYYY-MM-DD HH:MM:SS
MM/DD/YYYY HH:MM:SS
DD/MM/YYYY HH:MM:SS

# Custom format (strftime)
%Y-%m-%d %I:%M:%S %p
    

8.3 PTZ Control

PTZ Passthrough

WINK Forge can relay PTZ commands between VMS systems and cameras:

Protocol Support Features
ONVIF Full Pan, Tilt, Zoom, Presets
VAPIX Full Axis camera control
Pelco-D Basic RS-485 control
VISCA Basic Sony cameras

PTZ Configuration

  1. Enable PTZ in input settings
  2. Configure control protocol
  3. Map PTZ URLs for passthrough
  4. Test with VMS PTZ controls
PTZ Latency: Expect 100-500ms latency for PTZ commands depending on network conditions and protocol.

8.4 Advanced Auto-Detection

WINK Forge's intelligent auto-detection system eliminates manual configuration for most streams:

Auto-Detection Process

  1. Protocol Analysis
  2. Stream Analysis
  3. Codec Detection
  4. Parameter Optimization

Supported Auto-Detection Scenarios

Source Type Auto-Detected Parameters Success Rate
IP Cameras Protocol, resolution, codec, FPS 98%
Streaming Servers All parameters + audio config 95%
VMS Systems Authentication method, streams 90%
CDN Sources Adaptive bitrate ladder 85%

Manual Override Options

When auto-detection needs assistance:

# Force specific codec detection
advanced_options="analyzeduration=5000000"

# Override detected parameters
force_codec="h265"
force_fps="30"
force_resolution="1920x1080"

# Custom probe size for difficult streams
probesize="10M"
    
Auto-Detection Tips:

Chapter 9: Monitoring & Analytics

9.1 Real-time Dashboard

WINK Forge provides comprehensive monitoring through its web interface dashboard:

Dashboard Overview

Stream Status Indicators

Status Color Meaning
Publishing Green Stream active and healthy
Starting Yellow Initialization in progress
Reconnecting Orange Temporary connection loss
Failed Red Stream error, check logs
Blocked Gray Administratively disabled

9.2 Stream Statistics

Per-Stream Metrics

Click on any stream to view detailed statistics:

Metric Description Healthy Range
Input Bitrate Incoming data rate Within 10% of source
Output Bitrate Encoded output rate 90-110% of target
Frame Rate Actual FPS ±1 FPS of target
Dropped Frames Frames not processed <0.1%
Latency End-to-end delay Protocol dependent
Packet Loss Network packets lost <0.05%

Export Statistics

Export historical data for analysis:

9.3 Alert Configuration

Alert Types

Configure automatic notifications for critical events:

Alert Type Trigger Default Action
Stream Failed Input connection lost Email + Log
High CPU CPU > 85% for 5 min Email + SNMP
Storage Full Disk > 90% Email + API call
License Limit 90% streams used Email admin
Network Issue Packet loss > 1% Log + SNMP

Alert Delivery Methods

  1. Email: SMTP configuration in Settings
  2. Webhook: HTTP POST to your endpoint
  3. SNMP Trap: To network monitoring system
  4. Syslog: To centralized logging
  5. SMS: Via configured gateway (optional)
Alert Best Practices:

Chapter 10: Troubleshooting

Common Issues and Solutions

Stream Not Starting

Quick Checks:
  1. Verify source is accessible (ping/telnet test)
  2. Check credentials are correct
  3. Confirm firewall allows connection
  4. Test source with VLC player
  5. Review error logs for specific messages
Symptom Possible Cause Solution
Status: "Failed" Invalid source URL Verify URL with VLC player
Status: "Timeout" Network connectivity Check firewall, ping source
Status: "Auth Failed" Wrong credentials Verify username/password
No status change Licensing issue Check license limits

Poor Video Quality

High CPU Usage

  1. Check transcoding load:
    top -n 1 | grep ffmpeg
  2. Reduce quality settings:
  3. Optimize encoder settings:
    Preset: ultrafast (lowest CPU)
    Profile: baseline (simpler encoding)
    Codec: Consider H.265 for better compression

Network Diagnostics

Built-in Tools

Access via Tools menu in web interface:

Tool Purpose Usage
Ping Test Connectivity check Test camera reachability
MTR Route analysis Diagnose network path
TCPDump Packet capture Debug protocol issues
RTSP Probe Stream testing Verify RTSP sources

Log Analysis

Check system logs for errors:

# Web interface
Tools → Logs → System Logs

# Command line
tail -f /var/log/winkforge/stream.log
grep ERROR /var/log/winkforge/system.log
    

H.265 Specific Issues

Issue Cause Solution
H.265 not playing Browser incompatibility Add H.264 output for web viewers
High CPU with H.265 Complex encoding Use faster preset or reduce resolution
H.265 → H.264 quality loss Bitrate too low Increase H.264 bitrate by 40%
HDR lost in output Profile mismatch Use Main10 profile for HDR

SRT Connection Issues

Error Meaning Fix
Connection timeout Firewall blocking Open UDP port (default 9000)
Authentication failed Wrong passphrase Verify passphrase matches
High latency warning Network congestion Increase latency parameter
Stream ID rejected Invalid stream ID Check streamid format

Common Log Messages

Message Meaning Action
Connection refused Source unreachable Check IP and port
Invalid data found Codec mismatch Verify source format
Buffer underflow Network congestion Increase buffer size
License exceeded Stream limit reached Upgrade license

Appendices

Appendix A: SSL Certificate Management

Exporting Certificates (Windows)

  1. Open MMC (Win+R, type mmc)
  2. Add Certificates snap-in
  3. Navigate to Personal → Certificates
  4. Right-click certificate → All Tasks → Export
  5. Export with private key (PFX format)
  6. Set strong password
  7. Save PFX file

Uploading to WINK Forge

  1. Navigate to Settings → System Options → SSL Certificate
  2. Choose "Upload Certificate"
  3. Select PFX file
  4. Enter PFX password
  5. Apply and restart services

Let's Encrypt Integration

# Requirements
- Public domain name
- Port 80 accessible from internet
- DNS pointing to WINK Forge

# Automatic renewal
Certificates renew automatically every 60 days
        

Appendix B: Network Configuration

Firewall Ports

Port Protocol Direction Purpose
443 TCP Inbound HTTPS (Web/API)
444 TCP Inbound Admin HTTPS
554 TCP In/Out RTSP
1935 TCP In/Out RTMP
8080-8090 TCP Inbound HTTP Streams
5000-5999 UDP In/Out RTP/RTCP

Network Bonding

Configure multiple network interfaces for redundancy:

Mode Description Use Case
Active-Backup Failover only High availability
Balance-RR Round-robin Load distribution
802.3ad LACP Switch support required
Balance-ALB Adaptive load No switch config needed

Appendix C: Performance Tuning

System Requirements

Workload CPU RAM Storage
10 HD streams 8 cores 16 GB 500 GB SSD
50 HD streams 16 cores 32 GB 1 TB SSD
100+ HD streams 32 cores 64 GB 2 TB NVMe
4K streaming Additional cores +16 GB +50% storage

Performance Optimization

WINK Forge uses intelligent resource management:

System Optimization

# Increase file descriptors
ulimit -n 65536

# Optimize network buffers
sysctl -w net.core.rmem_max=134217728
sysctl -w net.core.wmem_max=134217728

# CPU governor for performance
cpupower frequency-set -g performance
        

Appendix D: Codec Comparison Guide

Video Codec Selection

Use Case Recommended Codec Reason
Traffic Cameras H.264 Proven reliability over cellular/wireless
Field Deployments H.264 Handles packet loss gracefully
Web Streaming H.264 Universal browser support
Low Latency H.264 (Baseline) Minimal processing delay
Wireless/Cellular H.264 Error resilience + compatibility
Archive Only H.265 (maybe) Only for controlled storage

Why H.264 Dominates Field Deployments

Real-world experience shows H.264's superiority for field cameras:

Real-World Example: A traffic camera using H.265 over LTE may save 30% bandwidth but will experience complete frame loss during network congestion. The same camera with H.264 will show minor artifacts but remain viewable. The bandwidth "savings" are meaningless if the stream fails.

Codec Feature Matrix

Feature H.264 H.265 VP9 AV1
Max Resolution 4K 8K 8K 8K
10-bit Support Limited Yes Yes Yes
HDR Support No Yes Yes Yes
Encoding Speed Fast 2-4x Slower 5x Slower 10x Slower
Error Recovery Excellent Poor Poor Poor
Wireless Performance Excellent Problematic Problematic Unsuitable
Patent Status Licensed Licensed Open Open

Appendix E: Common Transcoding Workflows

Workflow 1: Traffic Camera to Multi-Bitrate HLS

Standard configuration for field cameras (ALWAYS use H.264):

Input:
  Type: RTSP
  Path: rtsp://camera.local:554/stream1
  Auto-detect: Enabled

Outputs:
  1. HLS Low (360p)
     Resolution: 640x360
     Bitrate: 800 Kbps
     Path: /hls/camera1_low
  
  2. HLS Medium (720p)
     Resolution: 1280x720
     Bitrate: 2500 Kbps
     Path: /hls/camera1_med
  
  3. HLS High (1080p)
     Resolution: 1920x1080
     Bitrate: 5000 Kbps
     Path: /hls/camera1_high

Master Playlist: /hls/camera1/master.m3u8

CODEC NOTE: All outputs use H.264 - DO NOT use H.265 for field cameras!
        

Workflow 2: H.265 to H.264 Conversion

Fix problematic H.265 field cameras by converting to reliable H.264:

Input:
  Type: RTSP
  Path: rtsp://4k-camera.local/h265stream
  Codec: H.265 (auto-detected)

Output:
  Format: RTMP
  Path: rtmp://cdn.example.com/live/camera
  Codec: H.264
  Profile: High
  Bitrate: 8000 Kbps (40% higher than source)
  Preset: fast (balance quality/CPU)
  
NOTE: This is fixing a deployment mistake. New cameras should use H.264 from the start.
        

Workflow 3: SRT Remote Production

Reliable streaming over internet:

Input:
  Type: SRT (Listener)
  Path: srt://0.0.0.0:9000?mode=listener
  Passphrase: ProductionKey2025
  Latency: 500ms

Outputs:
  1. Program Feed
     Format: RTSP
     Path: rtsp://0.0.0.0:554/program
     
  2. Backup Stream
     Format: SRT (Caller)
     Path: srt://backup.site:9000?streamid=main
     
  3. Web Preview
     Format: HLS
     Path: /hls/preview
     Bitrate: 1000 Kbps
        

Workflow 4: VMS Bridge with Transcoding

Connect incompatible VMS systems:

Input:
  Type: Genetec
  Source: Via SDK integration
  Original: H.265 + G.711 audio

Outputs:
  1. Milestone Compatible
     Format: RTSP
     Codec: H.264 Baseline
     Audio: AAC
     Resolution: Maintain original
     
  2. Archive Copy
     Format: File (MP4)
     Codec: H.265 (preserve)
     Segment: 1 hour files
        

Workflow 5: Bandwidth Optimization

Reduce bandwidth for remote sites:

Input:
  Type: RTSP
  Original: 4K @ 15 Mbps

Outputs:
  1. Remote Site A (Limited bandwidth)
     Resolution: 1280x720
     Bitrate: 1500 Kbps
     FPS: 15
     Codec: H.265 (better compression)
     
  2. Remote Site B (Very limited)
     Resolution: 640x360
     Bitrate: 500 Kbps
     FPS: 10
     Codec: H.264  # Still H.264 for reliability!
     
  3. Local Recording
     Resolution: Original (4K)
     Codec: H.264  # H.265 only if on fiber/local network
     Quality: High
     
IMPORTANT: Even for "bandwidth optimization", H.264 is preferred.
The minor savings from H.265 don't justify the reliability risks.
        

Best Practices Summary

Field Deployment Golden Rule: If you're unsure which codec to use, choose H.264. The minimal bandwidth savings from newer codecs are meaningless when the stream fails. H.264's error resilience and universal compatibility make it the only sensible choice for real-world deployments.

© 2025 WINK Streaming, Inc. All rights reserved.

Document Version: 2025.08

For support: support@wink.co | +1-312-281-5433