Commit graph

939 commits

Author SHA1 Message Date
Alessandro Ros
d7d96230ff
rtmp: fix compatibility issue with some DJI drones (#2375) (#2409) 2023-09-27 14:38:07 +02:00
Alessandro Ros
f1e28d053f
webrtc: fix ETag header name according to specification (#2396) (#2401) 2023-09-23 14:21:53 +02:00
rmcnew
75f518a827
Support SRT encryption passphrases on configured paths (#2385)
* Support SRT encryption passphrases on configured paths

* Fix namespace; make passphrase use more clear

* Updates from Alessandro's feedback and lint output

* Fix lint findings

* Update lint.yml

* Update lint.yml

* Fix lint findings

* Add SRT passphrase tests for conf/path

* Reformat test to pass lint

* More changes to pass lint

* More changes to pass lint

* Use safeConf to prevent race conditions

* update API docs

* split configuration checks from connection checks

* add tests

* rename publishSRTPassphrase into srtPublishPassphrase, readSRTPassphrase into srtReadPassphrase

* remove redundant alias

---------

Co-authored-by: aler9 <46489434+aler9@users.noreply.github.com>
2023-09-23 12:55:45 +02:00
Alessandro Ros
cadc6b3ea7
rename 'external commands' into 'hooks' (#2400) 2023-09-23 12:49:08 +02:00
Alessandro Ros
3a7d86ec03
normalize configuration (#2399) 2023-09-23 12:48:34 +02:00
Alessandro Ros
1f11d95059
support recording M-JPEG tracks (#2391) 2023-09-22 12:35:35 +02:00
Alessandro Ros
d07ba5983e
update gortsplib (#2390) 2023-09-21 17:21:18 +02:00
Alessandro Ros
e4df14a447
fix timestamp of outgoing RTSP/RTP packets in case of aggregated access units (#2389) 2023-09-21 16:13:40 +02:00
Alessandro Ros
89cf3bb2fa
fix crash when processing H265 (#2378) (#2381) 2023-09-20 12:32:01 +02:00
Alessandro Ros
fadfda936d
support AC-3 tracks in SRT and UDP; support recording AC-3 tracks (#2376) 2023-09-19 22:33:00 +02:00
Alessandro Ros
8fd7019f2a
rpi camera: add additional checks on configuration (#2368) 2023-09-19 11:49:44 +02:00
Alessandro Ros
b86dc979ca
fix default value of some settings (#2367)
rtmpServerKey, rtmpServerCert, recordPath, rpiCameraExposure,
rpiCameraAWB, rpiCameraDenoise, rpiCameraMetering, rpiCameraAfMode,
rpiCameraAfRange, rpiCameraAfSpeed were not set correctly when missing
in the configuration file.
2023-09-19 11:49:11 +02:00
Alessandro Ros
7ca2571dc3
fix race condition wen record agent is closing (#2369) 2023-09-19 11:43:26 +02:00
Alessandro Ros
ac10102329
automatically set 'record: yes' when not specified (#2366) 2023-09-18 22:34:38 +02:00
Alessandro Ros
bedfa9651a
fix windows build (#2360) 2023-09-16 23:21:10 +02:00
Alessandro Ros
f2f417e451
search for configuration file in various paths, print paths if configuration is not found (#1993) (#2276) (#2357) 2023-09-16 22:14:13 +02:00
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
2023-09-16 21:41:49 +02:00
Alessandro Ros
ed77560811
add runOnDisconnect, runOnNotReady, runOnUnread (#1464) (#2355) 2023-09-16 19:21:48 +02:00
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
2023-09-16 17:27:07 +02:00
Alessandro Ros
b7e7758293
srt, udp: support publishing and reading MPEG-1/2/4 video with SRT and UDP/MPEG-TS (#2277) 2023-09-16 17:23:40 +02:00
Alessandro Ros
c4cb4200ff
split RTP packet handling from data handling (#2337) 2023-09-16 17:16:33 +02:00
Alessandro Ros
a005de1aa0
udp: fix reading two streams with same port and different multicast IP (#2133) (#2332)
Fixes #2133
2023-09-12 00:27:08 +02:00
Alessandro Ros
f07886db5f
print the reason why a source is started or stopped (#2322) 2023-09-09 23:37:56 +02:00
Alessandro Ros
4b5a977c86
rtsp: normalize debug logging of requests / responses (#2321) 2023-09-09 23:08:47 +02:00
Alessandro Ros
5b92bd5699
fix compatibility with RTMP Dahua cameras (#2289) (#769) (#2298) 2023-09-05 19:09:50 +02:00
github-actions[bot]
82714fddcd
bump hls-js to v1.4.12 (#2283) 2023-09-02 09:56:03 +02:00
Alessandro Ros
ffa34428fc
fix bug that prevented multiple readers from accessing the same stream (#2281) (#2282) 2023-09-01 23:15:27 +02:00
Alessandro Ros
966bec88c6
bump gortsplib, gohlslib, mediacommon (#2279) 2023-09-01 20:10:26 +02:00
Alessandro Ros
5a40a06e9e
fix changing log level with hot reloading or API (#2278) 2023-09-01 19:54:34 +02:00
Alessandro Ros
95baade478
srt: fix memory leak during reader disconnection (#2273) 2023-08-31 23:01:47 +02:00
Alessandro Ros
fc353ce66b
rtmp: fix RTMPE handshake error when a public key starts with zero (#2269) 2023-08-30 19:47:48 +02:00
Alessandro Ros
90bd6cb12b
update dependencies (#2266) 2023-08-30 11:48:03 +02:00
Alessandro Ros
5fb7f4e846
force all readers to use an asynchronous writer (#2265)
needed by #2255
2023-08-30 11:24:14 +02:00
Alessandro Ros
30a69a7722
fix maxReaders limit in case of multiple tracks (#2246) (#2264) 2023-08-30 10:58:24 +02:00
Alessandro Ros
bd1cb35022
fix conversion of AV1/VP9 tracks from HLS/RTMP to RTSP (#2263) 2023-08-29 19:52:39 +02:00
Alessandro Ros
8e955d2119
hls: return 404 when requesting hls.min.js.map (#2262) 2023-08-29 11:03:10 +02:00
Alessandro Ros
30b7245bb9
limit logging of decode errors (#2253) 2023-08-26 23:34:39 +02:00
Alessandro Ros
34dc84de90
rtmp: add limit on message body size (#2252) 2023-08-26 22:44:33 +02:00
Alessandro Ros
b72f3577c8
print warning when the write queue is full (#2251) 2023-08-26 19:45:10 +02:00
Alessandro Ros
cf86dbb303
switch to gortsplib/v4 (#2244) 2023-08-26 18:54:28 +02:00
Alessandro Ros
bf8e69ea89
rename readBufferCount into writeQueueSize (#2248) 2023-08-26 13:25:21 +02:00
Alessandro Ros
e0fb11040e
move units into dedicated package (#2245)
needed by #2244
2023-08-25 18:11:02 +02:00
Alessandro Ros
23ddaac481
support publishing VP9 tracks with RTMP (#2247) 2023-08-25 17:02:51 +02:00
Alessandro Ros
482266ae95
hls source: fix formatting debug log messages (#2243) 2023-08-24 22:42:57 +02:00
github-actions[bot]
de90baa697
bump hls-js to v1.4.10 (#2239)
Co-authored-by: mediamtx-bot <bot@mediamtx>
2023-08-23 18:44:47 +02:00
Alessandro Ros
1e15d4995c
embed hls.js into the server (#2202) (#2236) 2023-08-23 18:37:07 +02:00
Alessandro Ros
1133c734ab
support publishing AV1/H265 with OBS 30 (#2217) (#2234) 2023-08-22 22:56:23 +02:00
Xavier Hallade
accfc49f9c
allow RTMP streaming with codecid=av01 or hvc1 (#2232)
* allow RTMP streaming with codecid=av01 or hvc1

Prior to this change, when trying to stream AV1 over enhanced RTMP using
XSplit Broadcaster, the server was refusing the content with
"unsupported video codec: av01" message.

* add tests

---------

Co-authored-by: aler9 <46489434+aler9@users.noreply.github.com>
2023-08-22 22:35:09 +02:00
Alessandro Ros
a29a4c7de7
hls: fix wrong protocol sent to external authentication server (#2213) 2023-08-16 19:17:06 +02:00
Alessandro Ros
659f19f8bb
enable errcheck (#2201) 2023-08-13 16:38:23 +02:00