- Created complete documentation in docs/ directory - Added PROJECT_OVERVIEW.md with feature highlights and getting started guide - Added ARCHITECTURE.md with system design and technical details - Added SECURITY.md with comprehensive security implementation guide - Added DEVELOPMENT.md with development workflows and best practices - Added DEPLOYMENT.md with production deployment instructions - Added API.md with complete REST API documentation - Added CONTRIBUTING.md with contribution guidelines - Added CHANGELOG.md with version history and migration notes - Reorganized all documentation files into docs/ directory for better organization - Updated README.md with proper documentation links and quick navigation - Enhanced project structure with professional documentation standards
77 lines
1.9 KiB
Plaintext
77 lines
1.9 KiB
Plaintext
listen 1935;
|
|
max_connections 1000;
|
|
daemon off;
|
|
|
|
vhost __defaultVhost__ {
|
|
hls {
|
|
enabled on;
|
|
hls_path /srs/hls;
|
|
hls_fragment 2;
|
|
hls_window 10;
|
|
}
|
|
http_remux {
|
|
enabled on;
|
|
}
|
|
# Record RTMP to files for VOD processing (FLV segments)
|
|
dvr {
|
|
enabled on;
|
|
dvr_path /srs/rec/[app]/[stream].[timestamp].flv;
|
|
dvr_plan segment;
|
|
dvr_duration 300; # 5-minute segments
|
|
dvr_wait_keyframe on; # Fixed: start segments on keyframe (was dvr_wait_key)
|
|
}
|
|
# For local testing, allow all; lock down for production
|
|
play { }
|
|
publish { }
|
|
}
|
|
|
|
# Example: SRS-driven transcoding (optional)
|
|
#
|
|
# transcode live to live_abr {
|
|
# enabled on;
|
|
# ffmpeg /usr/local/bin/ffmpeg;
|
|
# # 360p, 480p, 720p outputs; adjust bitrates/presets as needed
|
|
# engine 360p {
|
|
# enabled on;
|
|
# vfilter {
|
|
# vf scale=w=-2:h=360
|
|
# }
|
|
# vcodec libx264;
|
|
# vbitrate 800;
|
|
# vfps 24;
|
|
# vparams "-preset veryfast -g 48 -sc_threshold 0";
|
|
# acodec aac;
|
|
# abitrate 128;
|
|
# aparams "-ac 2";
|
|
# output rtmp://127.0.0.1/live_abr/[stream]?v=360p;
|
|
# }
|
|
# engine 480p {
|
|
# enabled on;
|
|
# vfilter {
|
|
# vf scale=w=-2:h=480
|
|
# }
|
|
# vcodec libx264;
|
|
# vbitrate 1400;
|
|
# vfps 24;
|
|
# vparams "-preset veryfast -g 48 -sc_threshold 0";
|
|
# acodec aac;
|
|
# abitrate 128;
|
|
# aparams "-ac 2";
|
|
# output rtmp://127.0.0.1/live_abr/[stream]?v=480p;
|
|
# }
|
|
# engine 720p {
|
|
# enabled on;
|
|
# vfilter {
|
|
# vf scale=w=-2:h=720
|
|
# }
|
|
# vcodec libx264;
|
|
# vbitrate 2800;
|
|
# vfps 24;
|
|
# vparams "-preset veryfast -g 48 -sc_threshold 0";
|
|
# acodec aac;
|
|
# abitrate 128;
|
|
# aparams "-ac 2";
|
|
# output rtmp://127.0.0.1/live_abr/[stream]?v=720p;
|
|
# }
|
|
# }
|