howto:3rdparty_ingest

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
howto:3rdparty_ingest [2020/12/25 21:48] – [**Recommended encoder settings] derpeterhowto:3rdparty_ingest [2021/12/21 16:38] (current) – [OBS] derchris
Line 56: Line 56:
  * Audio-Streams:  * Audio-Streams:
    * AAC LC, Stereo, 48KHz, 192kbit/s    * AAC LC, Stereo, 48KHz, 192kbit/s
 +
 +
 +=== URLs ===
 + * Hosts:
 +   * `ingest.c3voc.de`
 +   * `ingest2.c3voc.de`
 + * Publish/Play:
 +   * `rtmp://{host}/stream/{your_endpoint}?auth={key}`
 +   * Note: Play is currently always possible without auth
  
 === ffmpeg example === === ffmpeg example ===
Line 87: Line 96:
           * Rate-Control: VBR (if selectable)           * Rate-Control: VBR (if selectable)
           * Bitrate: 4000 Kbps           * Bitrate: 4000 Kbps
-          * Keyframe Interval: seconds+          * Keyframe Interval: seconds
     * Video     * Video
       * Base (Canvas) Resolution: 1920x1080       * Base (Canvas) Resolution: 1920x1080
       * Output (Scaled) Resolution: 1920x1080       * Output (Scaled) Resolution: 1920x1080
       * Integer FPS Value: 25       * Integer FPS Value: 25
 +
 +=== How to test ===
 +You can play back your stream at the same endpoint you pushed to, e.g.:
 +<code>
 +mpv rtmp://ingest.c3voc.de/stream/{your_endpoint}
 +</code>
 +
 +
 +===== SRT Ingest  =====
 +SRT is a relatively new streaming protocol featuring ARQ, which can theoretically support a wide range of container formats. Currently however only MPEG-TS is widely used.
 +
 +=== Stream-Format ===
 + * Transport: SRT
 + * Container: MPEG-TS
 + * Video-Streams:
 +   * H.264**\*\***, 1920x1080, 25 fps
 +   * For detailed recommendations see bottom of the page
 + * Audio-Streams:
 +   * (atleast 1, up to 3)
 +   * AAC LC, Stereo, 48KHz, 192kbit/s
 +
 +
 +=== URLs ===
 +
 + * Hosts:
 +   * `ingest.c3voc.de`
 +   * `ingest2.c3voc.de`
 + * Publish:
 +   * `srt://{host}:1337?streamid=publish/{your_endpoint}/{auth_key}`
 + * Play:
 +   * `srt://{host}:1337?streamid=play/{your_endpoint}/{auth_key}`
 +
 +=== OBS ===
 +
 +Same settings as with [[howto:3rdparty_ingest#obs-studio_example|RTMP]], but use the following in **Settings -> Stream**:
 +
 +* Service: `Custom…`
 +* Server: `srt://{host}:1337?streamid=publish/{your_endpoint}/{auth_key}`
 +
 +**Audio:** Use [[https://github.com/lukas2511/obs-studio|this OBS Fork]] ([[https://cloud.cccv.de/s/bczAqcWHXX8EkL6|compiled version]]) to be able to stream multiple audio Streams (for translations).
 +=== ffmpeg example ===
 +<code>
 +ffmpeg -y -re -nostdin -hide_banner \
 + -thread_queue_size 512 -i … \
 + -c:v libx264 -preset:v veryfast -profile:v main -pix_fmt yuv420p -flags +cgop \
 + -threads:v 0 -aspect 16:9 \
 + \
 + -r:v:0 25 -g:v:0 75 -crf:v:0 23 -maxrate:v:0 4M -bufsize:v:0 12M \
 + -map 0:v:0 \
 + \
 + -c:a aac -b:a 192k -ar:a 48000 -ac:a 2 \
 + -map 0:a:0 \
 + \
 +        -f mpegts \
 +        srt://ingest.c3voc.de:1337?streamid=publish/{your_endpoint}/{auth_key}
 +</code>
 +
 +=== How to test ===
 +You can play back your stream at the same endpoint you pushed to, e.g.:
 +<code>
 +mpv srt://ingest.c3voc.de:1337?streamid=play/{your_endpoint}
 +</code>
  
  
Line 122: Line 193:
     * GOP-Size (Keyframe Interval): 3s     * GOP-Size (Keyframe Interval): 3s
     * Encoding-Mode: VBR (Variable Bitrate)     * Encoding-Mode: VBR (Variable Bitrate)
-    * Max-Bitrate 4Mbit/s (more is possible if your uplink allows it, but please stay below 10Mbit/s. If you want to push even more please ask.)+    * Max-Bitrate 6Mbit/s (more is possible if your uplink allows it, but please stay below 20Mbit/s. If you want to push even more please ask.)
  
  
  
  • howto/3rdparty_ingest.1608929319.txt.gz
  • Last modified: 2020/12/25 21:48
  • by derpeter