Alessandro Ros
ad58efe47d
move RTMP tests into internal/servers/rtmp ( #3035 )
1 year ago
Alessandro Ros
514036d41a
treat different RTSP formats as different tracks in logs and API ( #2907 )
2 years ago
Dr. Ralf S. Engelschall
4bf0d10079
metrics: add paths_bytes_sent, srt_conns, srt_conns_bytes_received, srt_conns_bytes_sent ( #2620 ) ( #2619 ) ( #2629 )
...
* add missing Prometheus exports (#2620 , #2619 ):
paths_bytes_sent, srt_conns, srt_conns_bytes_received, srt_conns_bytes_sent
* protect Stream.BytesSent()
* add tests
---------
Co-authored-by: aler9 <46489434+aler9@users.noreply.github.com>
2 years ago
Alessandro Ros
95ab9375c7
support recording to MPEG-TS ( #2505 )
2 years ago
Alessandro Ros
73ddb21e63
implement native recording ( #1399 ) ( #2255 )
...
* implement native recording (#1399 )
* support saving VP9 tracks
* support saving MPEG-1 audio tracks
* switch segment when codec parameters change
* allow to disable recording on a path basis
* allow disabling recording cleaner
* support recording MPEG-1/2/4 video tracks
* add microseconds to file names
* add tests
2 years ago
Alessandro Ros
5fb7f4e846
force all readers to use an asynchronous writer ( #2265 )
...
needed by #2255
2 years ago
Alessandro Ros
30b7245bb9
limit logging of decode errors ( #2253 )
2 years ago
Alessandro Ros
cf86dbb303
switch to gortsplib/v4 ( #2244 )
2 years ago
Alessandro Ros
e0fb11040e
move units into dedicated package ( #2245 )
...
needed by #2244
2 years ago
Alessandro Ros
db3862cf0d
move stream in a dedicated package ( #2121 )
...
needed by #2068
2 years ago
Alessandro Ros
39c072edd6
change repository owner ( #1801 )
2 years ago
Alessandro Ros
1688e5d2e5
support publishing with WebRTC ( #1659 ) ( #1786 )
2 years ago
Alessandro Ros
225220ddd5
print warning in case no key frames are being received ( #1763 )
2 years ago
Alessandro Ros
2d17dff3b5
support publishing, reading and proxying MPEG-2 audio (MP3) tracks with RTMP ( #1102 ) ( #1736 )
2 years ago
Alessandro Ros
053f2ec282
rename repository and executable ( #1641 )
2 years ago
Alessandro Ros
2dffccf9c1
update gortsplib, gohlslib ( #1637 )
2 years ago
Alessandro Ros
5b61983fa6
add option to set max size of outgoing UDP packets ( #1588 ) ( #1601 )
2 years ago
Alessandro Ros
e8bdad8a1e
rename Data into Unit ( #1556 )
2 years ago
aler9
e3fff72b7c
move format processors into dedicated folder
3 years ago
Alessandro Ros
c778c049ce
switch to gortsplib v2 ( #1301 )
...
Fixes #1103
gortsplib/v2 supports multiple formats inside a single track (media). This allows to apply the resizing algorithm to single formats inside medias.
For instance, if a media contains a a proprietary format and an H264 format, and the latter has oversized packets, they can now be resized.
3 years ago
Alessandro Ros
e605727c78
produce same absolute time in RTSP and HLS ( #1249 )
...
* add a NTP timestamp to each data unit
* use that NTP timestamp in all protocols
3 years ago
aler9
282d155a4f
update gortsplib
3 years ago
Alessandro Ros
8bee4af86a
api, metrics: add number of bytes received and sent from/to all entities ( #1235 )
...
* API: number of bytes received/sent from/to RTSP connections
* API: number of bytes received/sent from/to RTSP sessions
* API: number of bytes received/sent from/to RTMP connections
* API: number of bytes sent to HLS connections
* API: number of bytes received from paths
* metrics of all the above
3 years ago
Alessandro Ros
0943b269ab
Decode streams once and only when needed ( #1218 )
...
* split data into specialized structs
* move MPEG4-audio decoding into streamTrack
* restore video/audio synchronization in HLS muxer and RTMP server
* log decode errors
* move H264 decoding and re-encoding here from gortsplib
* add tests
* update gortsplib
3 years ago
aler9
3606472e82
generate RTP packets after H264 remuxing
...
Previously, RTP packets coming from sources other than RTSP (that
actually are RTMP and HLS) were generated before the H264 remuxing, and
that leaded to invalid streams, expecially when sourceOnDemand is true
and the stream has invalid or dynamic SPS/PPS.
3 years ago
aler9
ec4c40b222
update gortsplib
3 years ago
aler9
58b2e7d24f
move trackID into data
3 years ago
aler9
dffe63f1bc
add SPS and PTS before IDRs of all incoming H264 streams; stop filtering H264 inside single protocols
3 years ago
aler9
4d6f8b9b9b
RTSP client/source: support dynamic H264 SPS/PPS
3 years ago
aler9
d929197b21
propagate H264 packets throughout the server
3 years ago
aler9
3fc4ca6465
update gortsplib; downgrade pion/rtp to v1
3 years ago
aler9
f53b316c0d
rtsp server: generate RTCP sender reports automatically; stop routing RTCP packets
3 years ago
aler9
28063a1fbe
rename stream.onPacketRTP/RTCP into stream.writePacketRTP/RTCP
3 years ago
aler9
6dc11c2906
RTSP server/source: fix encoding of RTP packets with padding
...
This fixes a SIGSEGV with GStreamer.
3 years ago
aler9
5504ff44b6
rtsp: parse all incoming RTP/RTCP packets
4 years ago
aler9
f7419586af
update gortsplib
4 years ago
aler9
ab70f946b0
unexport members of private structs
4 years ago
aler9
6163095a11
fix crash that happens when sourceOnDemand is true and a source times out
4 years ago