Popularity
7.3
Growing
Activity
9.0
Growing
746
21
209
Programming language: Go
License: MIT License
Tags:
Video
gortsplib alternatives and similar packages
Based on the "Video" category.
Alternatively, view gortsplib alternatives based on common mentions on social networks and blogs.
-
M3U8
DISCONTINUED. Parser and generator of M3U8-playlists for Apple HLS. Library for Go language. :cinema: -
go-m3u8
Parse and generate m3u8 playlists for Apple HTTP Live Streaming (HLS) in Golang (ported from gem https://github.com/sethdeckard/m3u8)
CodeRabbit: AI Code Reviews for Developers
Revolutionize your code reviews with AI. CodeRabbit offers PR summaries, code walkthroughs, 1-click suggestions, and AST-based analysis. Boost productivity and code quality across all major languages with each PR.
Promo
coderabbit.ai

Do you think we are missing an alternative of gortsplib or a related project?
Popular Comparisons
README
gortsplib
RTSP 1.0 client and server library for the Go programming language, written for rtsp-simple-server.
Go ≥ 1.17 is required.
Features:
- Client
- Query servers about available streams and tracks
- Read
- Read streams from servers with the UDP, UDP-multicast or TCP transport protocol
- Read TLS-encrypted streams (TCP only)
- Switch transport protocol automatically
- Read only selected tracks of a stream
- Pause or seek without disconnecting from the server
- Generate RTCP receiver reports (UDP only)
- Reorder incoming RTP packets (UDP only)
- Publish
- Publish streams to servers with the UDP or TCP transport protocol
- Publish TLS-encrypted streams (TCP only)
- Switch transport protocol automatically
- Pause without disconnecting from the server
- Generate RTCP sender reports
- Server
- Handle requests from clients
- Sessions and connections are independent
- Publish
- Read streams from clients with the UDP or TCP transport protocol
- Read TLS-encrypted streams (TCP only)
- Generate RTCP receiver reports (UDP only)
- Reorder incoming RTP packets (UDP only)
- Read
- Write streams to clients with the UDP, UDP-multicast or TCP transport protocol
- Write TLS-encrypted streams
- Compute and provide SSRC, RTP-Info to clients
- Generate RTCP sender reports
- Utilities
- Parse RTSP elements: requests, responses, SDP
- Parse H264 elements and formats: RTP/H264, Annex-B, AVCC, anti-competition, DTS
- Parse AAC elements and formats: RTP/AAC, ADTS, MPEG-4 audio configurations
Table of contents
Examples
- [client-query](examples/client-query/main.go)
- [client-read](examples/client-read/main.go)
- [client-read-partial](examples/client-read-partial/main.go)
- [client-read-options](examples/client-read-options/main.go)
- [client-read-pause](examples/client-read-pause/main.go)
- [client-read-h264](examples/client-read-h264/main.go)
- [client-read-h264-convert-to-jpeg](examples/client-read-h264-convert-to-jpeg/main.go)
- [client-read-h264-save-to-disk](examples/client-read-h264-save-to-disk/main.go)
- [client-read-aac](examples/client-read-aac/main.go)
- [client-read-republish](examples/client-read-republish/main.go)
- [client-publish-h264](examples/client-publish-h264/main.go)
- [client-publish-pcmu](examples/client-publish-pcmu/main.go)
- [client-publish-aac](examples/client-publish-aac/main.go)
- [client-publish-opus](examples/client-publish-opus/main.go)
- [client-publish-options](examples/client-publish-options/main.go)
- [client-publish-pause](examples/client-publish-pause/main.go)
- [server](examples/server/main.go)
- [server-tls](examples/server-tls/main.go)
- [server-h264-save-to-disk](examples/server-h264-save-to-disk/main.go)
API Documentation
https://pkg.go.dev/github.com/aler9/gortsplib#pkg-index
Links
Related projects
- rtsp-simple-server https://github.com/aler9/rtsp-simple-server
- pion/sdp (SDP library used internally) https://github.com/pion/sdp
- pion/rtp (RTP library used internally) https://github.com/pion/rtp
- pion/rtcp (RTCP library used internally) https://github.com/pion/rtcp
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
- Golang project layout https://github.com/golang-standards/project-layout