Alessandro Ros
442a48363c
allow to start/stop recording without disconnecting clients ( #2395 ) ( #2434 )
2 years ago
Alessandro Ros
64d9060560
add additional environment variables to custom commands ( #1414 ) ( #2356 )
...
new variables: MTX_CONN_TYPE, MTX_CONN_ID, MTX_SOURCE_TYPE, MTX_SOURCE_ID, MTX_READER_TYPE, MTX_READ_ID
2 years ago
Alessandro Ros
ed77560811
add runOnDisconnect, runOnNotReady, runOnUnread ( #1464 ) ( #2355 )
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
f07886db5f
print the reason why a source is started or stopped ( #2322 )
2 years ago
Alessandro Ros
5fb7f4e846
force all readers to use an asynchronous writer ( #2265 )
...
needed by #2255
2 years ago
Alessandro Ros
30a69a7722
fix maxReaders limit in case of multiple tracks ( #2246 ) ( #2264 )
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
bf8e69ea89
rename readBufferCount into writeQueueSize ( #2248 )
2 years ago
Alessandro Ros
d6058ae469
rename disablePublisherOverride into overridePublisher ( #2164 )
2 years ago
Alessandro Ros
d00b22b5e5
support setting a maximum number of readers per path ( #1286 ) ( #2154 )
2 years ago
Alessandro Ros
dd91abae9b
api: add transport to RTSP sessions ( #2151 )
2 years ago
Alessandro Ros
bc3084ae7b
support proxying WebRTC streams ( #2142 )
2 years ago
Alessandro Ros
72b1d233df
normalize channels and methods ( #2127 )
...
needed by #2068
2 years ago
Alessandro Ros
e3d4856b4f
update gortsplib ( #2126 )
2 years ago
Alessandro Ros
db3862cf0d
move stream in a dedicated package ( #2121 )
...
needed by #2068
2 years ago
Alessandro Ros
0137734294
webrtc, hls: show IP in logs in case of failed authentication ( #2099 )
2 years ago
Alessandro Ros
36298f8bc8
webrtc: send session ID to external auth server ( #1981 ) ( #2098 )
2 years ago
Alessandro Ros
0d18076201
api: add 'readyTime' to paths ( #2049 ) ( #2082 )
2 years ago
Alessandro Ros
37586b2300
api: allow to edit properties of path config "all" ( #2067 ) ( #2075 )
2 years ago
Alessandro Ros
f79c4783c7
rename environment variable RTSP_PATH into MTX_PATH ( #1967 )
2 years ago
Alessandro Ros
d3354a0c99
fix 'runOnDemandRestart: yes' ( #1947 )
2 years ago
Alessandro Ros
128f2d3e20
print error that caused an external command to exit ( #1869 )
2 years ago
Alessandro Ros
b93eed64bc
api: add /get endpoints ( #1577 ) ( #1823 )
...
this allows to get entities by ID or name after /list endpoints were
changed in v0.23.0.
2 years ago
Alessandro Ros
9c79197f36
api: add pagination to all /list endpoints ( #1808 )
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
d8678cef90
unify authentication mechanisms ( #1775 )
2 years ago
Alessandro Ros
225220ddd5
print warning in case no key frames are being received ( #1763 )
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
fb1c16d606
support reading UDP/MPEG-TS streams ( #1490 )
...
* support reading UDP/MPEG-TS streams
* support reading H265 and Opus tracks inside UDP/MPEG-TS streams
* improve timestamp precision of Opus packets
2 years ago
aler9
f1455a6e1f
fix bug that prevented publishing twice to the same path ( #1470 ) ( #1469 )
3 years ago
Alessandro Ros
b461f15a4c
rpicamera: support changing parameters without interrupting the stream ( #1463 )
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
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
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
Alessandro Ros
820ba067f2
support RTMPS ( #1089 )
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
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
3f0771bb31
fix variable name
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
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