Popularity
6.9
Growing
Activity
9.1
Growing
488
18
145
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
Parser and generator of M3U8-playlists for Apple HLS. Library for Go language. :cinema: -
go-astisub
Manipulate subtitles in GO (.srt, .ssa/.ass, .stl, .ttml, .vtt (webvtt), teletext, etc.) -
libvlc-go
Go bindings for libVLC and high-level media player interface -
gst
Go bindings for GStreamer (retired: currently I don't use/develop this package) -
go-m3u8
Parse and generate m3u8 playlists for Apple HTTP Live Streaming (HLS) in Golang (ported from gem https://github.com/sethdeckard/m3u8) -
go-mpd
Go library for parsing and generating MPEG-DASH Media Presentation Description (MPD) files -
golibnotify
Go bindings for libnotify -- Create and update OS notifications in linux
Clean code begins in your IDE with SonarLint
Up your coding game and discover issues early. SonarLint is a free plugin that helps you find & fix bugs and security issues from the moment you start writing code. Install from your favorite IDE marketplace today.
Promo
www.sonarlint.org
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