Commit Graph

84 Commits

Author SHA1 Message Date
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)
Some checks reported warnings
test / test64 (push) Has been cancelled
test / test32 (push) Has been cancelled
test / test_highlevel (push) Has been cancelled
lint / code (push) Has been cancelled
lint / mod-tidy (push) Has been cancelled
lint / apidocs (push) Has been cancelled
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)
Some checks reported warnings
lint / code (push) Has been cancelled
lint / mod-tidy (push) Has been cancelled
lint / apidocs (push) Has been cancelled
test / test64 (push) Has been cancelled
test / test32 (push) Has been cancelled
test / test_highlevel (push) Has been cancelled
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)
Some checks reported warnings
lint / code (push) Has been cancelled
lint / mod-tidy (push) Has been cancelled
lint / apidocs (push) Has been cancelled
test / test64 (push) Has been cancelled
test / test32 (push) Has been cancelled
test / test_highlevel (push) Has been cancelled
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)
Some checks reported warnings
lint / code (push) Has been cancelled
lint / mod-tidy (push) Has been cancelled
lint / apidocs (push) Has been cancelled
test / test64 (push) Has been cancelled
test / test32 (push) Has been cancelled
test / test_highlevel (push) Has been cancelled
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)
Some checks reported warnings
lint / code (push) Has been cancelled
lint / mod-tidy (push) Has been cancelled
lint / apidocs (push) Has been cancelled
test / test64 (push) Has been cancelled
test / test32 (push) Has been cancelled
test / test_highlevel (push) Has been cancelled
2023-08-03 23:12:05 +02:00
Alessandro Ros
b4e3033ea3 support publishing, reading, proxying with SRT (#2068)
Some checks reported warnings
lint / code (push) Has been cancelled
lint / mod-tidy (push) Has been cancelled
lint / apidocs (push) Has been cancelled
test / test64 (push) Has been cancelled
test / test32 (push) Has been cancelled
test / test_highlevel (push) Has been cancelled
2023-07-31 21:20:09 +02:00
Alessandro Ros
6d342082c2 rpi camera: add rpiCameraHDR parameter (#1876) (#2083)
Some checks reported warnings
lint / code (push) Has been cancelled
lint / mod-tidy (push) Has been cancelled
lint / apidocs (push) Has been cancelled
test / test64 (push) Has been cancelled
test / test32 (push) Has been cancelled
test / test_highlevel (push) Has been cancelled
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)
Some checks reported warnings
lint / code (push) Has been cancelled
lint / mod-tidy (push) Has been cancelled
lint / apidocs (push) Has been cancelled
test / test64 (push) Has been cancelled
test / test32 (push) Has been cancelled
test / test_highlevel (push) Has been cancelled
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)
Some checks failed
apidocs
code
mod-tidy
test32
test64
test_highlevel
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)
Some checks failed
apidocs
code
mod-tidy
test32
test64
test_highlevel
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)
Some checks failed
test32
test64
test_highlevel
apidocs
code
mod-tidy
* 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)
Some checks failed
apidocs
code
mod-tidy
test32
test64
test_highlevel
2023-03-31 17:33:30 +02:00
Alessandro Ros
5b61983fa6 add option to set max size of outgoing UDP packets (#1588) (#1601)
Some checks failed
apidocs
code
mod-tidy
test32
test64
test_highlevel
2023-03-31 11:53:49 +02:00
Alessandro Ros
c1bcd0c7eb hls muxer: add option to dump segments on disk (#1322) (#1567) 2023-03-20 00:22:21 +01:00
Alessandro Ros
e2370800ba apidocs: make linter return an exit code in case of errors (#1564) 2023-03-12 12:18:18 +01:00
James Shopland
bb6fb4ac76 apidocs: Update OpenAPI schema to use int data type for input parameter (#1488)
add additional hint of format type
2023-02-21 23:35:57 +01:00
aler9
ea158caed8 apidocs: add new RPI camera parameters 2023-02-10 12:23:45 +01:00
aler9
b18d30914d fix API docs 2023-01-07 13:50:29 +01:00
aler9
e7e8d5ce20 api: add more attributes to WebRTC connections
new attributes: peerConnectionEstablished, localCandidate, remoteCandidate
2023-01-07 13:48:03 +01:00
aler9
b26f848613 webrtc: add webrtcICEUDPMuxAddress 2022-12-30 17:23:41 +01:00
andrew-ld
b27c363ecf (webrtc) added support for ice mux tcp and nat1to1ips (#1323)
* add webrtcp static tcp mux port

* add ice nat1 host configuration and cleanup

* typo

* rename config keys

* apply codecov suggestions

* apply review suggestions

* typo

* dont use deepequal for WebRTCICETCPMuxAddress

* unexport NewPeerConnection()

* remove Dockerfile

* use an empty list instead of nil value in webrtcICEHostNAT1To1IPs

* drop webrtcICETCPMuxEnable and enable TCP mux when webrtcICETCPMuxAddress is filled

* run go mod tidy

Co-authored-by: aler9 <46489434+aler9@users.noreply.github.com>
2022-12-30 15:39:20 +01:00
aler9
f394c9f8a8 api: add ID to WebRTC readers (#1318) 2022-12-21 12:50:02 +01:00
aler9
1860abea9f update apidocs 2022-12-21 12:47:29 +01:00
aler9
ecc1d35ac2 update apidocs 2022-12-21 12:45:29 +01:00