Skip to content

Instantly share code, notes, and snippets.

@maikeruit
Forked from cfobel/janus.plugin.streaming.cfg
Created February 14, 2018 03:44
Show Gist options
  • Select an option

  • Save maikeruit/b1821282054a352dfc5e3f5b5503e5e2 to your computer and use it in GitHub Desktop.

Select an option

Save maikeruit/b1821282054a352dfc5e3f5b5503e5e2 to your computer and use it in GitHub Desktop.

Revisions

  1. @cfobel cfobel revised this gist Jun 21, 2016. 1 changed file with 0 additions and 1 deletion.
    1 change: 0 additions & 1 deletion a
    Original file line number Diff line number Diff line change
    @@ -1 +0,0 @@
    a
  2. @cfobel cfobel created this gist Jun 21, 2016.
    1 change: 1 addition & 0 deletions a
    Original file line number Diff line number Diff line change
    @@ -0,0 +1 @@
    a
    51 changes: 51 additions & 0 deletions janus.plugin.streaming.cfg
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,51 @@
    ; /opt/janus/etc/janus/janus.plugin.streaming.cfg
    ; [stream-name]
    ; type = rtp|live|ondemand|rtsp
    ; rtp = stream originated by an external tool (e.g., gstreamer or
    ; ffmpeg) and sent to the plugin via RTP
    ; live = local file streamed live to multiple listeners
    ; (multiple listeners = same streaming context)
    ; ondemand = local file streamed on-demand to a single listener
    ; (multiple listeners = different streaming contexts)
    ; rtsp = stream originated by an external RTSP feed (only
    ; available if libcurl support was compiled)
    ; id = <unique numeric ID> (if missing, a random one will be generated)
    ; description = This is my awesome stream
    ; is_private = yes|no (private streams don't appear when you do a 'list'
    ; request)
    ; secret = <optional password needed for manipulating (e.g., destroying
    ; or enabling/disabling) the stream>
    ; pin = <optional password needed for watching the stream>
    ; filename = path to the local file to stream (only for live/ondemand)
    ; audio = yes|no (do/don't stream audio)
    ; video = yes|no (do/don't stream video)
    ; The following options are only valid for the 'rtp' type:
    ; audioport = local port for receiving audio frames
    ; audiomcast = multicast group port for receiving audio frames, if any
    ; audiocodec = <audio RTP payload type> (e.g., 111)
    ; audiortpmap = RTP map of the audio codec (e.g., opus/48000/2)
    ; videoport = local port for receiving video frames
    ; videomcast = multicast group port for receiving video frames, if any
    ; videocodec = <video RTP payload type> (e.g., 100)
    ; videortpmap = RTP map of the video codec (e.g., VP8/90000)
    ; videobufferkf = yes|no (whether the plugin should store the latest
    ; keyframe and send it immediately for new viewers, EXPERIMENTAL)
    ; url = RTSP stream URL (only for restreaming RTSP)
    ;
    ; To test the [gstreamer-sample] example, check the test_gstreamer.sh
    ; script in the plugins/streams folder. To test the live and on-demand
    ; audio file streams, instead, the install.sh installation script
    ; automatically downloads a couple of files (radio.alaw, music.mulaw)
    ; to the plugins/streams folder.

    [gstreamer-sample]
    type = rtp
    id = 1
    description = H.264 live stream coming from gstreamer
    audio = no
    video = yes
    videoport = 5004
    videopt = 126
    videortpmap = H264/90000
    videofmtp = profile-level-id=42e01f\;packetization-mode=1
    ;secret = adminpwd
    5 changes: 5 additions & 0 deletions pipeline.sh
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,5 @@
    #!/bin/sh
    gst-launch-1.0 -v -e v4l2src device=/dev/video1 ! queue ! \
    video/x-h264,width=640,height=480,framerate=30/1,profile=baseline ! \
    h264parse ! \
    rtph264pay config-interval=2 pt=126 ! udpsink host=127.0.0.1 port=5004