aler9
afcb874657
add missing tests
3 years ago
aler9
44f29c9ba3
api: mark RTMPS connections as rtmpsConns instead of rtmpConns ( #1099 )
3 years ago
aler9
960cfb9f99
api: always encode timestamps wth RFC3339 ( #1093 )
...
this fixes "lastRequest" in /v1/hlsmuxers/list that was encoded in a
wrong format
3 years ago
aler9
bbfea63539
rtmp: read or write tracks only after interacting with the path
3 years ago
aler9
86c5fa9ba4
cleanup interaction with external auth
3 years ago
aler9
83faae8a8e
rename interaction functions between paths and readers / publishers
...
readers and publishers can now interact with paths by using:
readerAdd()
readerStart()
readerStop()
publisherAdd()
publisherStart()
publisherStop()
3 years ago
aler9
85ce12199a
rtmp source: allow outgoing acknowledges
3 years ago
aler9
7216fc683c
rpicamera: fix crash
3 years ago
aler9
e255d004e3
rtmp server: change value of MessageStreamID of outgoing messages
3 years ago
Alessandro Ros
820ba067f2
support RTMPS ( #1089 )
3 years ago
aler9
d195c0421e
fix typo
3 years ago
aler9
51e0bbd975
rtmp server: stop inserting a AV_SEQHDR message before every IDR
...
AV_SEQHDR contains SPS and PPS.
It is useless to resend it after initialization since SPS/PPS are
automatically added before every IDR.
3 years ago
aler9
176f2f0729
rtmp: invert flag of InitializeServer() and InitializeClient()
3 years ago
aler9
f5a031d72c
fix deadlock when sourceOnDemand is true and source exits
3 years ago
Alessandro Ros
8c2b12a314
Add native support for the raspberry pi camera ( #1057 )
3 years ago
aler9
101ea25448
api: add published track list to /v1/paths/list
3 years ago
aler9
cb8aec8844
print track codecs into logs
3 years ago
aler9
69e617bc73
hls: fix multiple timestamp issues introduced by previous commits
3 years ago
aler9
f952ff25f6
remove useless append()
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
5ba46e6c8f
update gortsplib
3 years ago
aler9
a8822b9f15
hls muxer / source: route AAC units singularly
...
This aligns the HLS implementation with the rest of the server. In case
of HLS/MPEGTS, the server now generates an ADTS packet for each AU,
without grouping multiple AUs into a single ADTS packet.
3 years ago
aler9
3f0771bb31
fix variable name
3 years ago
aler9
af7a815f83
update gortsplib
3 years ago
aler9
092a2be3a8
api: add "created" field to RTSP sessions, RTMP connections, HLS muxers
3 years ago
aler9
055e08ac6c
remove "on" prefix from most communication functions between components
3 years ago
aler9
ea528f47e1
speed up tests
3 years ago
aler9
7067c02030
api: return static sources in paths/list even if sourceOnDemand is true
3 years ago
aler9
6afbdf1015
add intermediate layer between path and static sources
3 years ago
aler9
34eb1d1e7a
normalize sources
3 years ago
aler9
8a4743fe9a
hls muxer: when hlsAlwaysRemux is on, automatically recreate muxers in
...
case of errors
3 years ago
Alessandro Ros
9e6abc6e9f
rtmp: rewrite implementation of rtmp connection ( #1047 )
...
* rtmp: improve MsgCommandAMF0
* rtmp: fix MsgSetPeerBandwidth
* rtmp: add message tests
* rtmp: replace implementation with new one
* rtmp: rename handshake functions
* rtmp: avoid calling useless function
* rtmp: use time.Duration for PTSDelta
* rtmp: fix decoding chunks with relevant size
* rtmp: rewrite implementation of rtmp connection
* rtmp: fix tests
* rtmp: improve error message
* rtmp: replace h264 config implementation
* link against github.com/notedit/rtmp
* normalize MessageStreamID
* rtmp: make acknowledge optional
* rtmp: fix decoding of chunk2 + chunk3
* avoid using encoding/binary
3 years ago
aler9
67e8a01d56
rtmp: split net.Conn from rtmp.Conn
3 years ago
aler9
bf1f45df32
rtmp: add conn handshake tests
3 years ago
aler9
f28540b9f4
update gortsplib
3 years ago
aler9
08ddc9f83d
update gortsplib
3 years ago
aler9
fb5aa7bbf2
fix bug that caused on-demand commands to be closed after 10secs ( #1000 )
3 years ago
aler9
19e38930bd
hls muxer: compensate latency by using maxLiveSyncPlaybackRate ( #972 )
3 years ago
aler9
41b08c9f50
update gortsplib
3 years ago
aler9
ec4c40b222
update gortsplib
3 years ago
aler9
e45820b2c0
hls server: show real client IPs when behind a proxy ( #955 )
3 years ago
aler9
3e5f62156d
fix DTS error in case of H264 NALUs without POC
3 years ago
aler9
05bac43177
rtmp: fix compatibility with some dji drones ( #928 )
3 years ago
aler9
cb610a707c
hls muxer: fix code 500 when a stream is not found
3 years ago
aler9
9d3fd3bc37
update gortsplib
3 years ago
aler9
9bd8b2cfb6
rtmp server, hls muxer: fix DTS in case of B-frames and remove PTS-DTS offset
3 years ago
aler9
4073013f68
hls muxer: stop normalizing PTS
3 years ago
aler9
acd788d632
update gortsplib
3 years ago
aler9
2ed1aa3d11
hls muxer, rtmp server: extract DTS from samples
3 years ago
Alessandro Ros
e115983296
Implement Low-Latency HLS ( #938 )
...
* add hlsVariant parameter
* hls: split muxer into variants
* hls: implement fmp4 segments
* hls muxer: implement low latency mode
* hls muxer: support audio with fmp4 mode
* hls muxer: rewrite file router
* hls muxer: implement preload hint
* hls muxer: add various error codes
* hls muxer: use explicit flags
* hls muxer: fix error in aac pts
* hls muxer: fix sudden freezes with video+audio
* hls muxer: skip empty parts
* hls muxer: fix video FPS
* hls muxer: add parameter hlsPartDuration
* hls muxer: refactor fmp4 muxer
* hls muxer: fix CAN-SKIP-UNTIL
* hls muxer: refactor code
* hls muxer: show only parts of last 2 segments
* hls muxer: implementa playlist delta updates
* hls muxer: change playlist content type
* hls muxer: improve video dts precision
* hls muxer: fix video sample flags
* hls muxer: improve iphone audio support
* hls muxer: improve mp4 timestamp precision
* hls muxer: add offset between pts and dts
* hls muxer: close muxer in case of error
* hls muxer: stop logging requests with the info level
* hls muxer: rename entry into sample
* hls muxer: compensate video dts error over time
* hls muxer: change default segment count
* hls muxer: add starting gap
* hls muxer: set default part duration to 200ms
* hls muxer: fix audio-only streams on ios
* hls muxer: add playsinline attribute to video tag of default web page
* hls muxer: keep mpegts as the default hls variant
* hls muxer: implement encryption
* hls muxer: rewrite dts estimation
* hls muxer: improve DTS precision
* hls muxer: use right SPS/PPS for each sample
* hls muxer: adjust part duration dynamically
* add comments
* update readme
* hls muxer: fix memory leak
* hls muxer: decrease ram consumption
3 years ago