Commit graph

96 commits

Author SHA1 Message Date
Alessandro Ros
c3d9be322d
allow using 'fallback' with static sources (#2606) (#2706) 2023-11-16 23:37:43 +01:00
Alessandro Ros
3277765851
apidocs: add missing recording settings to PathConf (#2705) 2023-11-16 22:47:01 +01:00
Alessandro Ros
687d8685ef
webrtc: improve connectivity mechanism (#2686) 2023-11-12 23:55:28 +01:00
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>
2023-11-08 11:20:16 +01:00
Alessandro Ros
813611057d
add runOnUnDemand hook (#2645) 2023-11-04 13:07:51 +01:00
Alessandro Ros
1d1d64cb89
rename sourceProtocol into rtspTransport, sourceAnyPortEnable into rtspAnyPort (#2644) 2023-11-04 11:12:22 +01:00
Alessandro Ros
4b4d57f18e
api: add path name to config/paths/list and config/paths/get (#2535) (#2596) 2023-10-28 15:06:06 +02:00
Alessandro Ros
bbb989ee87
api: return full configuration in config/paths/list and config/paths/get (#2535) (#2595) 2023-10-28 14:53:23 +02:00
Alessandro Ros
cde19097bd
api: send error messages in response body (#2518) (#2583) 2023-10-27 20:43:34 +02:00
Alessandro Ros
07ff79f553
api: return 500 instead of 404 in case of non-existing items (#2582)
This is needed to differentiate between calls to non-existent andpoints
and calls to valid endpoints, but with an ID pointing to a non-existing
item, and to return JSON in the latter case.
2023-10-27 20:23:46 +02:00
Alessandro Ros
4ec12a6c8b
add runOnRecordSegmentCreate hook (#2451) (#2503) 2023-10-14 16:48:02 +02:00
Alessandro Ros
9a01ab7fd5
allow changing default path settings; bump API in order to allow so (#2455) 2023-10-07 23:32:15 +02:00
PieterFabry
3c4039b81f
Supports webrtc interface filtering on server (#2460)
* Supports webrtc interface filtering on server

* test(#2707): Fixed testing for build

* lint(#2707): Fixed lint issues for build

* normalize setting name

* move instructions in the configuration file

---------

Co-authored-by: Pieter Fabry <pieterfabry@observe.tech>
Co-authored-by: aler9 <46489434+aler9@users.noreply.github.com>
2023-10-07 17:51:01 +02:00
Alessandro Ros
4ba2dc1b34
apidocs: remove invalid value from PathSourceOrReader (#2450) 2023-10-03 13:00:46 +02:00
Alessandro Ros
eb975027b2
add runOnRecordSegmentComplete and rclone integration (#2404) (#2428) 2023-09-29 18:24:10 +02:00
Alessandro Ros
2d929e1132
move 'srtReadPassphrase' into the right section (#2435) 2023-09-28 19:40:24 +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
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
f786f64690
apidocs: mark discrete parameters as integers (#2331) (#2354) 2023-09-15 22:49:58 +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
bf8e69ea89
rename readBufferCount into writeQueueSize (#2248) 2023-08-26 13:25:21 +02:00
Alessandro Ros
61d300396d
remove 'disable' from names of configuration parameters (#2101) 2023-08-06 21:40:08 +02:00
Alessandro Ros
d6058ae469
rename disablePublisherOverride into overridePublisher (#2164) 2023-08-06 21:29:16 +02:00
Alessandro Ros
7d7cedc509
apidocs: remove sourceReady from docs (#2163) 2023-08-06 21:23:19 +02:00
Alessandro Ros
d00b22b5e5
support setting a maximum number of readers per path (#1286) (#2154) 2023-08-05 17:41:54 +02:00
Alessandro Ros
dd91abae9b
api: add transport to RTSP sessions (#2151) 2023-08-05 17:10:48 +02:00
Alessandro Ros
bc3084ae7b
support proxying WebRTC streams (#2142) 2023-08-03 23:12:05 +02:00
Alessandro Ros
b4e3033ea3
support publishing, reading, proxying with SRT (#2068) 2023-07-31 21:20:09 +02:00
Alessandro Ros
6d342082c2
rpi camera: add rpiCameraHDR parameter (#1876) (#2083) 2023-07-19 14:55:21 +02:00
Alessandro Ros
0d18076201
api: add 'readyTime' to paths (#2049) (#2082) 2023-07-19 14:06:13 +02:00
Alessandro Ros
f7a30e7b38
api: return 404 when a path configuration is not found (#2067) (#2074)
this involves /v2/config/paths/edit and /v2/config/paths/remove
2023-07-19 00:22:52 +02:00
Alessandro Ros
69fd7a6077
apidocs: fix source/reader types (#2027) 2023-07-05 21:21:14 +02:00
Volodymyr Borodin
47317ea8e5
api: add path to RTMP connections, RTSP sessions, WebRTC sessions (#1962) (#2022)
* api: add path to rtmp response

* add 'path' to RTSP and WebRTC sessions too

* add tests

---------

Co-authored-by: aler9 <46489434+aler9@users.noreply.github.com>
2023-07-05 21:20:26 +02:00
Alessandro Ros
1a748bb971
webrtc: allow using special characters in ICE server credentials (#1953) (#2000) 2023-06-30 16:47:10 +02:00
Alessandro Ros
f1b975707a
api: return 404 in /get and /kick endpoints (#1994) (#1995)
when an entity is not found
2023-06-27 23:55:31 +02:00
Alessandro Ros
f162ce1f07
update documentation (#1900) 2023-06-02 11:54:10 +02:00
Alessandro Ros
af324c9e91
rpi camera: allow using decimal FPS (#1743) (#1873) 2023-05-28 17:29:37 +02:00
Alessandro Ros
cefa16849e
apidocs: fix method of /get endpoints (#1835) 2023-05-19 00:20:22 +02:00
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.
2023-05-18 15:07:47 +02:00
Alessandro Ros
586df289e2
bump API prefix from /v1 to /v2 (#1815) 2023-05-17 15:44:30 +02:00
Alessandro Ros
0fdc322bd9
fix API docs (#1810) 2023-05-16 20:54:06 +02:00
Alessandro Ros
9c79197f36
api: add pagination to all /list endpoints (#1808) 2023-05-16 19:48:13 +02:00
Alessandro Ros
a14246d776
webrtc: support publishing with WHIP and reading with WHEP (#1800) 2023-05-16 15:59:37 +02:00
Jordy84
596765c14c
Allow sending Range header to RTSP sources (#1780)
* Enable Range headers using path config

* Use enum instead of strings

* Comments added to new code

* Wrong comment format

* Made CreateRangeHeader func private

* reorder configuration

* handle errors inside createRangeHeader()

* add tests

* update API docs

---------

Co-authored-by: Jordy Boezaard <jordy@boezaard.com>
Co-authored-by: aler9 <46489434+aler9@users.noreply.github.com>
2023-05-14 17:02:03 +02:00
Alessandro Ros
1688e5d2e5
support publishing with WebRTC (#1659) (#1786) 2023-05-14 14:18:03 +02:00
Alessandro Ros
053f2ec282
rename repository and executable (#1641) 2023-04-01 19:52:06 +02:00
Alessandro Ros
3c9eed5fae
rpicamera: add text overlay with current time (#1288) (#1604) 2023-03-31 17:33:30 +02:00