Add a new default_streamid configuration option for the SRT server to allow customization of the default streamid used when SRT clients connect without setting the SRTO_STREAMID socket option. When SRT clients (like VLC) connect without properly setting the SRTO_STREAMID socket option, SRS previously used a hardcoded default value of "#!::r=live/livestream,m=publish". This caused conflicts when: 1. A publisher connects without setting streamid (uses default publish mode) 2. A player tries to connect without setting streamid (also uses default publish mode) 3. The player gets a "Stream already exists or busy" error because both are trying to publish Start SRS with default stream id as viewer: ```bash ./objs/srs -c conf/srt.vlc.conf ``` Publish SRT stream by FFmpeg: ```bash ffmpeg -re -i ./doc/source.flv -c copy -pes_payload_size 0 -f mpegts \ 'srt://127.0.0.1:10080?streamid=#!::r=live/livestream,m=publish' ``` Play SRT stream by ffplay: ```bash ffplay 'srt://127.0.0.1:10080?streamid=#!::r=live/livestream,m=request' ``` Play SRT stream by VLC: ``` ✅ Correct - Use simple URL without streamid parameter: srt://127.0.0.1:10080 ❌ Wrong - VLC doesn't support streamid parameter: srt://127.0.0.1:10080?streamid=#!::r=live/livestream,m=request ``` --- Co-authored-by: OSSRS-AI <winlinam@gmail.com> |
||
|---|---|---|
| .. | ||
| Architecture.md | ||
| CHANGELOG.md | ||
| Dockers.md | ||
| Features.md | ||
| ffmpeg-logo.png | ||
| ffmpeg-min.png | ||
| PERFORMANCE.md | ||
| README.md | ||
| readme.txt | ||
| Resources.md | ||
| source.200kbps.768x320.flv | ||
| source.flv | ||
| srs-logo.ico | ||
| srs-logo.png | ||