Commit graph

143 commits

Author SHA1 Message Date
Alessandro Ros
b4e3033ea3
support publishing, reading, proxying with SRT (#2068) 2023-07-31 21:20:09 +02:00
Alessandro Ros
119d6abf19
move HTTP utilities in a dedicated package (#2123)
needed by #2068
2023-07-30 23:03:00 +02:00
Alessandro Ros
b42154fa6a
return an error in case the random number generator fails (#2120) 2023-07-30 22:30:41 +02:00
Alessandro Ros
6d342082c2
rpi camera: add rpiCameraHDR parameter (#1876) (#2083) 2023-07-19 14:55:21 +02:00
Alessandro Ros
37586b2300
api: allow to edit properties of path config "all" (#2067) (#2075) 2023-07-19 13:33:05 +02:00
Alessandro Ros
1398f42e08
allow removing default WebRTC ICE server with environment variables (#2064) 2023-07-17 00:12:05 +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
f79c4783c7
rename environment variable RTSP_PATH into MTX_PATH (#1967) 2023-06-21 16:08:37 +02:00
Alessandro Ros
083151360e
return an error in case configuration file can't be opened (#1920) 2023-06-06 21:17:40 +02:00
Alessandro Ros
af324c9e91
rpi camera: allow using decimal FPS (#1743) (#1873) 2023-05-28 17:29:37 +02:00
Alessandro Ros
39c072edd6
change repository owner (#1801) 2023-05-16 16:14:20 +02:00
Alessandro Ros
71310c5eb0
webrtc: validate ICE servers in configuration (#1798) 2023-05-15 10:51:00 +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
d8678cef90
unify authentication mechanisms (#1775) 2023-05-08 17:04:14 +02:00
Alessandro Ros
7aa163366f
return error in case of string-to-int overflows (#1776) 2023-05-08 13:12:47 +02:00
Alessandro Ros
e998688757
allow setting rpiCameraSaturation to 0 (#1651) (#1772) 2023-05-06 23:00:42 +02:00
Alessandro Ros
225220ddd5
print warning in case no key frames are being received (#1763) 2023-05-04 20:16:41 +02:00
Alessandro Ros
d7eadeb523
fix corrupted packets when udpMaxPayloadSize is not set (#1702) (#1711)
this happened when udpMaxPayloadSize was not explicitly set in
configuration file.
2023-04-15 13:45:20 +02:00
Alessandro Ros
e426810455
allow additional characters in usernames and passwords (#1580) (#1666) 2023-04-09 14:06:25 +02:00
Alessandro Ros
053f2ec282
rename repository and executable (#1641) 2023-04-01 19:52:06 +02:00
Alessandro Ros
f5fd89d3b4
change name of configuration file (#1640) 2023-04-01 19:32:10 +02:00
Alessandro Ros
aae8eb943e
general: change prefix of environment variables (#1639) 2023-04-01 19:31:23 +02:00
Alessandro Ros
2dffccf9c1
update gortsplib, gohlslib (#1637) 2023-04-01 18:39:12 +02:00
Alessandro Ros
3c9eed5fae
rpicamera: add text overlay with current time (#1288) (#1604) 2023-03-31 17:33:30 +02:00
Alessandro Ros
868704e9d4
hls muxer: make Low Latency-HLS the default variant (#1610) 2023-03-31 16:46:05 +02:00
Alessandro Ros
bca3013bd0
general: add Clone() method to Conf and PathConf (#1633)
this allows to detect errors during cloning
2023-03-31 16:22:08 +02:00
Alessandro Ros
5b61983fa6
add option to set max size of outgoing UDP packets (#1588) (#1601) 2023-03-31 11:53:49 +02:00
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
2023-03-21 11:12:43 +01:00
Alessandro Ros
32d6cb4435
rpicamera: support two CSI cameras at once (#1573) (#1574) 2023-03-20 00:22:44 +01: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
ed45a09800
update gohlslib (#1566) 2023-03-12 16:59:04 +01:00
Alessandro Ros
8ad376de53
move HLS implementation into gohlslib (#1557) 2023-03-10 13:26:56 +01:00
irsl
4e579702ed
hls: make hlsEncryption optional even with Low-latency variant (#1530) 2023-03-09 18:08:01 +01:00
Alessandro Ros
b461f15a4c
rpicamera: support changing parameters without interrupting the stream (#1463) 2023-02-13 12:12:04 +01:00
Azsde
4841189456
Add support for libcamera Autofocus parameters (#1417)
* [DEV #1416] Add support for libcamera Autofocus parameters

* [DEVMINOR] Fix Go formatting

* [DEV] Support AF window parameter for rpiCamera

* [DEV] Update default .yml file to add rpiCameraAfWindow parameter
2023-02-10 12:20:50 +01:00
aler9
090342a413 conf: allow to set empty slices with empty env variables 2022-12-30 18:40:27 +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
ec86401037 webrtc: make HTTPS optional (#1312) 2022-12-19 23:26:07 +01:00
Alessandro Ros
5efe97abf1
Support reading with WebRTC (#1242) 2022-12-16 00:50:47 +01:00
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.
2022-12-13 20:54:17 +01:00
aler9
062fb600e8 return an error when rpiCamera in used in two paths (#1257) 2022-12-12 11:49:11 +01:00
aler9
532592c099 rpicamera: change default resolution to 1920x1080 2022-10-25 11:29:04 +02:00
aler9
7013b75daf rpicamera: add rpiCameraMode parameter (#1111) 2022-10-25 11:23:44 +02:00
Alessandro Ros
8825fddd89
Add additional Raspberry Pi Camera parameters (#1198)
* rpicamera: add rpiCameraHFlip and rpiCameraVFlip parameters

* rpicamera: add rpiCameraBrightness, rpiCameraContrast,
rpiCameraSaturation, rpiCameraSharpness, rpiCameraExposure,
rpiCameraAWB, rpiCameraDenoise, rpiCameraShutter, rpiCameraMetering,
rpiCameraGain, rpiCameraEV, rpiCameraROI, rpiCameraTuningFile

* support float values in config file
2022-10-24 15:08:30 +02:00
aler9
ec4ec142b4 forbid using 'rpiCamera' as source on regexp paths 2022-10-23 16:44:34 +02:00
aler9
f1fb00b80f update golangci-lint 2022-09-17 21:19:45 +02:00
Alessandro Ros
820ba067f2 support RTMPS (#1089) 2022-08-16 18:44:31 +02:00
Alessandro Ros
8c2b12a314 Add native support for the raspberry pi camera (#1057) 2022-08-16 18:44:31 +02:00
aler9
f28540b9f4 update gortsplib 2022-07-05 23:46:32 +02:00