Commit graph

806 commits

Author SHA1 Message Date
Alessandro Ros
efda44cfae
rtmp: fix timestamp conversion from RTSP/HLS to RTMP (#1899)
this was causing moments of silence and timing errors when reading with
RTMP a stream originally published with RTSP or HLS.
2023-06-02 00:34:09 +02:00
Victor
052da51af3
Add WebRTC stream id to whep response headers (#1879)
* Add WebRTC stream id to whep response headers

* change header name from UUID to ID

* add tests

---------

Co-authored-by: Victor Vitkovskiy <victor.vitkovskiy@mirasys.com>
Co-authored-by: aler9 <46489434+aler9@users.noreply.github.com>
2023-05-31 18:24:06 +02:00
Alessandro Ros
210603d7c4
update documentation (#1885) 2023-05-31 18:16:39 +02:00
Alessandro Ros
ce1d2abc15
fix using multicast when a single interface doesn't support it (#1874) 2023-05-28 18:12:32 +02:00
Alessandro Ros
af324c9e91
rpi camera: allow using decimal FPS (#1743) (#1873) 2023-05-28 17:29:37 +02:00
Alessandro Ros
89ebc83993
update golangci-lint (#1870) 2023-05-28 17:18:16 +02:00
Alessandro Ros
22f05e97e8
replace math/rand with crypto/rand (#1872) 2023-05-28 17:10:40 +02:00
Alessandro Ros
7d04742426
restore sending session ID to external authentication (#1871)
this fixes a regression introduced in v0.23.0
2023-05-28 13:45:19 +02:00
Alessandro Ros
128f2d3e20
print error that caused an external command to exit (#1869) 2023-05-27 19:28:07 +02:00
Alessandro Ros
a0b973963d
allow using special characters in external commands (#1652) (#1868)
on Windows, when using cmd.exe or a bat file as external command.
2023-05-27 18:20:06 +02:00
Alessandro Ros
99aa0d0ac9
webrtc: fix WHIP/WHEP implementation (#1857) (#1861)
offers and answers are now encoded in SDP in place of JSON; Location
header is set by the server.

This fixes compatibility with GStreamer and whipsink
2023-05-24 17:06:06 +02:00
Alessandro Ros
65f617aa7c
api: allow using paths/list when a path is being deleted (#1849) 2023-05-20 11:11:26 +02:00
Alessandro Ros
1889641c8c
webrtc: add POST and PATCH methods to Access-Control-Allow-Methods (#1848) 2023-05-20 11:10:14 +02:00
Alessandro Ros
766260f8dd
fix usage of Access-Control-Expose-Headers (#1847) 2023-05-20 10:59:44 +02:00
mrlt8
79cbf622a2
Expose E-Tag, Accept-Patch and Link headers for cross-origin WHIP/WHEP requests (#1841) 2023-05-20 10:51:19 +02:00
Alessandro Ros
6e5f87f65e
hls: fix 404 error when hlsAlwaysRemux and sourceOnDemand are both true (#1818) (#1834) 2023-05-18 23:14:18 +02:00
Alessandro Ros
6cb3ff0d55
api: sort results of /list endpoints (#1828) 2023-05-18 20:17:04 +02:00
Alessandro Ros
e10055ad69
api: add item count to /list endpoints (#1813) (#1829) 2023-05-18 20:05:59 +02:00
Alessandro Ros
13fb559f5f
fix race condition in TestMetrics (#1830) 2023-05-18 20:05:35 +02:00
Alessandro Ros
330a9e027c
fix race condition in tests (#1826) 2023-05-18 19:16:07 +02:00
Alessandro Ros
67672ea9c6
api: fix wrong pageCount in /list endpoints (#1813) (#1824) 2023-05-18 18:59:51 +02:00
Alessandro Ros
581a840771
fix missing H264/H265 keyframe warning message (#1825) 2023-05-18 18:00:53 +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
bbd8f006fe
rtmp: fix crash when publishing video-only tracks (#1819) (#1822)
this fixes a regression introduced in v0.23.0.
2023-05-18 15:05:26 +02:00
Alessandro Ros
6b8c65f5d7
webrtc: fix exception in browser when webrtcICEServers is empty (#1817) (#1821)
this fixes a regression introduced in v0.23.0.
2023-05-18 14:58:19 +02:00
Alessandro Ros
586df289e2
bump API prefix from /v1 to /v2 (#1815) 2023-05-17 15:44:30 +02:00
Alessandro Ros
adf94092a8
add base class to all HTTP servers (#1809) 2023-05-16 20:12:45 +02:00
Alessandro Ros
9c79197f36
api: add pagination to all /list endpoints (#1808) 2023-05-16 19:48:13 +02:00
Alessandro Ros
bf4d6c905f
hls muxer: show index page even if stream is not present (#1806) 2023-05-16 19:23:02 +02:00
Alessandro Ros
35b67a9ec1
bump hls.js (#1807) 2023-05-16 19:22:54 +02:00
Alessandro Ros
503a131097
webrtc: return 404 when a stream is not present (#1805) 2023-05-16 18:01:05 +02:00
Alessandro Ros
2686c7b04b
webrtc: discard empty RTP packets coming from Chrome (#1804) 2023-05-16 17:29:20 +02:00
Alessandro Ros
39c072edd6
change repository owner (#1801) 2023-05-16 16:14:20 +02:00
Alessandro Ros
a14246d776
webrtc: support publishing with WHIP and reading with WHEP (#1800) 2023-05-16 15:59:37 +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
1688e5d2e5
support publishing with WebRTC (#1659) (#1786) 2023-05-14 14:18:03 +02:00
Alessandro Ros
6ea299fc56
api: fix type of RTMPS readers (#1784)
it was wrongly set to RTMP.
2023-05-10 11:39:40 +02:00
Alessandro Ros
f079fd365e
fix race condition in tests (#1781) 2023-05-09 16:29:19 +02:00
Alessandro Ros
d8678cef90
unify authentication mechanisms (#1775) 2023-05-08 17:04:14 +02:00
andrew-ld
a918fae248
allow external authentication to return an error by using the HTTP body (#1546)
Co-authored-by: aler9 <46489434+aler9@users.noreply.github.com>
2023-05-08 15:50:33 +02:00
Alessandro Ros
7aa163366f
return error in case of string-to-int overflows (#1776) 2023-05-08 13:12:47 +02:00
Thomas Anderson
9ac2a05d58
fix: metrics listener address sanitization (#1774)
In commit 3475762 from PR #1678 the restrictNetwork function was called
twice for the metrics listening address only, which leads to 0.0.0.0
listeners not working properly for the metrics server.
2023-05-08 10:27:43 +02:00
Alessandro Ros
e998688757
allow setting rpiCameraSaturation to 0 (#1651) (#1772) 2023-05-06 23:00:42 +02:00
Alessandro Ros
7ec753f8a3
support reading AV1 tracks with WebRTC (#1768) 2023-05-04 20:46:48 +02:00
Alessandro Ros
e8124e2f56
support publishing H265 and AV1 tracks with Enhanced RTMP (#1393) (#1446) (#1621) (#1756) 2023-05-04 20:37:25 +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
22fe65509b
cleanup (#1754) 2023-05-02 13:05:19 +02:00
Alessandro Ros
db6d6a5b30
update dependencies (#1740) 2023-04-26 14:59:47 +02:00
Alessandro Ros
2d17dff3b5
support publishing, reading and proxying MPEG-2 audio (MP3) tracks with RTMP (#1102) (#1736) 2023-04-25 18:13:51 +02:00