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
Last revisionBoth sides next revision
howto:3rdparty_ingest [2020/12/25 21:48] – [**Recommended encoder settings] derpeterhowto:3rdparty_ingest [2021/12/19 00:55] – [OBS-studio example] 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}`
 +* Stream-Key: `{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 194:
     * 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.txt
  • Last modified: 2021/12/21 16:38
  • by derchris