mirror of
https://github.com/aler9/gortsplib
synced 2025-10-04 14:52:46 +08:00
c1cd32257f377fdeb7b49c88c58b9a1fc4ca7d2e
fix inversion of track data that happened randomly in case of multiple tracks (https://github.com/aler9/rtsp-simple-server/issues/353)
client: fix crash that happened in case of invalid TCP frames (https://github.com/aler9/rtsp-simple-server/issues/348)
client: fix crash that happened in case of invalid TCP frames (https://github.com/aler9/rtsp-simple-server/issues/348)
gortsplib
RTSP 1.0 client and server library for the Go programming language, written for rtsp-simple-server.
Go ≥ 1.14 is required.
Features:
- Client
- Query servers about available streams
- Encrypt connection with TLS (RTSPS)
- Reading
- Read streams from servers with UDP or TCP
- Switch protocol automatically (switch to TCP in case of code 451 or UDP timeout)
- Read only selected tracks of a stream
- Pause reading without disconnecting from the server
- Generate RTCP receiver reports automatically
- Publishing
- Publish streams to servers with UDP or TCP
- Switch protocol automatically (switch to TCP in case of code 451)
- Pause publishing without disconnecting from the server
- Generate RTCP sender reports automatically
- Server
- Handle requests from clients
- Read streams from clients with UDP or TCP
- Write streams to clients with UDP or TCP
- Encrypt streams with TLS (RTSPS)
- Generate RTCP sender and receiver reports automatically
- Utilities
- Encode and decode RTSP primitives, RTP/H264, RTP/AAC, SDP
Table of contents
Examples
- client-query
- client-read
- client-read-partial
- client-read-options
- client-read-pause
- client-read-h264
- client-publish
- client-publish-options
- client-publish-pause
- server
- server-udp
- server-tls
API Documentation
https://pkg.go.dev/github.com/aler9/gortsplib#pkg-index
Links
Related projects
- https://github.com/aler9/rtsp-simple-server
- https://github.com/pion/sdp (SDP library used internally)
- https://github.com/pion/rtcp (RTCP library used internally)
- https://github.com/pion/rtp (RTP library used internally)
IETF Standards
- RTSP 1.0 https://tools.ietf.org/html/rfc2326
- RTSP 2.0 https://tools.ietf.org/html/rfc7826
- HTTP 1.1 https://tools.ietf.org/html/rfc2616
Conventions
Languages
Go
99.8%
Makefile
0.2%