mirror of
https://github.com/Monibuca/plugin-rtsp.git
synced 2025-12-24 12:47:53 +08:00
v4
简体中文 | English
RTSP Plugin
The RTSP plugin provides the ability to push and pull the RTSP protocol and also to push and pull the RTSP protocol to remote servers.
Plugin address
https://github.com/Monibuca/plugin-rtsp
Plugin introduction
import (
_ "m7s.live/plugin/rtsp/v4"
)
Push and Pull address form
rtsp://localhost/live/test
localhostis the m7s server domain name or IP address, and the default port554can be omitted, otherwise it is required to be written.liverepresentsappNametestrepresentsstreamNamelive/testin m7s will serve as the stream identity.
For example, push stream to m7s through ffmpeg
ffmpeg -i [video source] -c:v h264 -c:a aac -f rtsp rtsp://localhost/live/test
This will create a stream named live/test inside m7s.
If the live/test stream already exists in m7s, then you can use the RTSP protocol to play it.
ffplay rtsp://localhost/live/test
Configuration
rtsp:
publish: # Refer to the global configuration format
subscribe: # Refer to the global configuration format
pull: # Format reference document https://m7s.live/guide/config.html#%E6%8F%92%E4%BB%B6%E9%85%8D%E7%BD%AE
push: # Format reference document https://m7s.live/guide/config.html#%E6%8F%92%E4%BB%B6%E9%85%8D%E7%BD%AE
listenaddr: :554
udpaddr: :8000
rtcpaddr: :8001
readbuffercount: 2048
writebuffercount: 2048
:::tip Configuration override publish and subscribe, any section not configured will use global configuration. :::
API
rtsp/api/list
Get all RTSP streams
rtsp/api/pull?target=[RTSP address]&streamPath=[Stream identity]&save=[0|1|2]
Pull the RTSP to m7s from a remote server
- save meaning: 0, do not save; 1, save to pullonstart; 2, save to pullonsub
- The RTSP address needs to be urlencoded to prevent special characters from affecting parsing
rtsp/api/push?target=[RTSP address]&streamPath=[Stream identity]
Push local streams to remote servers
Languages
Go
100%