Public Repository

Last pushed: a month ago
Short Description
Multipurpose RTSP media server
Full Description

RTSP ALL THE THINGS!

A multipurpose RTSP media server that can simulate RTSP cameras, broadcast RTSP streams and even create test videos or serve video files.



How to use this image?

Simple usage

$ docker run --rm -p 8554:8554 ullaakut/rtspatt

Advanced usage

$ docker run --rm \
       [-e RTSP_ADDRESS=your_address] \
       [-e RTSP_PORT=your_port] -p your_port:your_port \
       [-e RTSP_ROUTE=your_route] \
       [-e RTSP_USERNAME=your_username] \
       [-e RTSP_PASSWORD=your_password] \
       [-e RTSP_RESOLUTION='your_width'x'your_height'] \
       [-e RTSP_FRAMERATE=your_framerate] \
       [-e INPUT=your_input] \
       [-e ENABLE_TIME_OVERLAY=true|false] \
       [-e GST_DEBUG=your_debug_level] \
       ullaakut/rtspatt

Environment variables

When you start the rtspatt image, you can adjust its configuration by passing one or more environment variables on the docker run command line.

RTSP_ADDRESS

The address you want your server to listen on.

Default: 0.0.0.0

Examples :

172.16.100.0
192.168.100.10

RTSP_PORT

The port that you want your server to listen on.
Don't forget to also expose the port in your container with the -p option like in the example above

Default: 8554

Examples :

18554
4242

RTSP_ROUTE

The route at which you want your stream to be served.

Default: /live.sdp

Examples :

/stream
/media/camera/1/highdef
/test

RTSP_USERNAME

If you want to enable security on your stream, using this option will allow you to specify the username required to access your stream.

Default:

Examples :

admin
root
bernardo1961

RTSP_PASSWORD

If you want to enable security on your stream, using this option will allow you to specify the password required to access your stream.

Default:

Examples :

toughpassword
V9Vp9oAM85E3nd6CpEa7

RTSP_RESOLUTION

The resolution at which you want to stream.

Default: 352x288

Examples :

8192x4608 for 8K/16:9
3840x2160 for 4K/16:9
1920x1080 for 1080p/16:9
1440x1080 for 1080p/4:3
1280x720 for 720p/16:9
1280x960 for 960p/4:3
900x720 for 720p/4:3
640x480 for 480p/4:3
640x360 for 360p/16:9

RTSP_FRAMERATE

The desired output frame rate for your stream in frames per second.

Default: 25

Examples :

1
30
60
144

INPUT

The video file, video stream or pattern you want to broadcast using RTSP All The Things.

Default: pattern:smtpe

  • If the argument starts with rtsp:// it will try to open it as an RTSP stream
  • If it starts with pattern: if will create a test video with the given pattern (see this link for more information on this argument)
  • Otherwise, it will use the argument as a file input.

Examples :

rtsp://root:root@192.168.0.1:554/live.sdp
rtsp://5.10.145.3:8554/media.sdp
pattern:snow
pattern:circular
/tmp/media.avi
/home/username/documents/videos/birthdayparty.mp4
/home/username/video.ogg

ENABLE_TIME_OVERLAY

If set to true, displays the current time as well as the total stream duration, as an overlay on the video stream.

Default: false

Examples :

true
false

GST_DEBUG

The desired debug level for GStreamer.

See this link for more information on this variable

Default:

Examples:

0 for no debug
1 for ERROR logs
2 for WARNING logs
3 for FIXME logs
4 for INFO logs
5 for DEBUG logs
6 for LOG logs
7 for TRACE logs
8 for MEMDUMP logs
2,audio*:4 to log only audio with INFO level and WARNING level for the rest

Patterns

Here is the list of patterns you can use

  • pattern:smpte - The standard SMTPE test pattern, it's the default value if you don't specify any input
  • pattern:smpte-75 - 75% color bars
  • pattern:smpte-100 - 100% color bars (no noise)
  • pattern:snow - Random noise
  • pattern:black - Black image
  • pattern:white - White image
  • pattern:red - Red image
  • pattern:green - Green image
  • pattern:blue - Blue image
  • pattern:checkers-1 - 1 pixel checkers pattern (low stream scale recommended)
  • pattern:checkers-2 - 2 pixel checkers pattern (low stream scale recommended)
  • pattern:checkers-4 - 4 pixel checkers pattern (low stream scale recommended)
  • pattern:checkers-8 - 8 pixel checkers pattern (low stream scale recommended)
  • pattern:circular - circular pattern
  • pattern:blink - Alternate between black and while image
  • pattern:zone-plate - Zone plate
  • pattern:gamut - Gamut checking pattern
  • pattern:chroma-zone-plate - Chroma zone plate
  • pattern:ball - A moving ball
  • pattern:bar - Bar with foreground color
  • pattern:pinwheel - Pinwheel
  • pattern:spokes - Spokes
  • pattern:gradient - Gradient image
  • pattern:colors - All colors

License

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.

See the License for the specific language governing permissions and limitations under the License.

Docker Pull Command
Owner
ullaakut