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
aler9
e45820b2c0
hls server: show real client IPs when behind a proxy ( #955 )
2022-06-21 13:54:19 +02:00
aler9
9d3fd3bc37
update gortsplib
2022-06-05 01:36:29 +02:00
Alessandro Ros
e115983296
Implement Low-Latency HLS ( #938 )
...
* add hlsVariant parameter
* hls: split muxer into variants
* hls: implement fmp4 segments
* hls muxer: implement low latency mode
* hls muxer: support audio with fmp4 mode
* hls muxer: rewrite file router
* hls muxer: implement preload hint
* hls muxer: add various error codes
* hls muxer: use explicit flags
* hls muxer: fix error in aac pts
* hls muxer: fix sudden freezes with video+audio
* hls muxer: skip empty parts
* hls muxer: fix video FPS
* hls muxer: add parameter hlsPartDuration
* hls muxer: refactor fmp4 muxer
* hls muxer: fix CAN-SKIP-UNTIL
* hls muxer: refactor code
* hls muxer: show only parts of last 2 segments
* hls muxer: implementa playlist delta updates
* hls muxer: change playlist content type
* hls muxer: improve video dts precision
* hls muxer: fix video sample flags
* hls muxer: improve iphone audio support
* hls muxer: improve mp4 timestamp precision
* hls muxer: add offset between pts and dts
* hls muxer: close muxer in case of error
* hls muxer: stop logging requests with the info level
* hls muxer: rename entry into sample
* hls muxer: compensate video dts error over time
* hls muxer: change default segment count
* hls muxer: add starting gap
* hls muxer: set default part duration to 200ms
* hls muxer: fix audio-only streams on ios
* hls muxer: add playsinline attribute to video tag of default web page
* hls muxer: keep mpegts as the default hls variant
* hls muxer: implement encryption
* hls muxer: rewrite dts estimation
* hls muxer: improve DTS precision
* hls muxer: use right SPS/PPS for each sample
* hls muxer: adjust part duration dynamically
* add comments
* update readme
* hls muxer: fix memory leak
* hls muxer: decrease ram consumption
2022-05-31 19:17:26 +02:00
aler9
1e07636f86
change default RTSPS port ( #867 )
2022-04-16 16:24:40 +02:00
aler9
98c6cd4650
RTSP: automatically remux oversized RTP/H264 packets; drop parameter ReadBufferSize
2022-04-09 20:20:14 +02:00
aler9
f45abfb203
conf: fix panic when integer keys are used ( #865 )
2022-03-08 18:50:41 +01:00
aler9
b4649ef60b
remove runOnPublish (breaking change)
2022-03-04 18:09:49 +01:00
aler9
343a5f17fb
hls: add new parameter hlsSegmentMaxSize
2022-01-30 17:54:05 +01:00
aler9
b48e2f1f1b
add TODO comments
2022-01-20 10:46:05 +01:00
aler9
49449eb5ad
Add new parameter 'runOnReady' ( #752 )
...
This is called when a stream is ready, whether it is published or proxied.
It replaces 'runOnPublsh'.
2022-01-19 22:50:32 +01:00
aler9
11760fd79f
support external authentication ( #504 ) ( #517 )
2021-12-22 19:13:56 +01:00
aler9
779d5b61cd
update docs
2021-12-22 00:27:58 +01:00
aler9
08fa61e56d
do not add an 'all' path automatically if not present in the configuration file
2021-11-06 12:51:38 +01:00
aler9
fb311e31ec
add missing check on strict encryption + UDP multicast
2021-11-05 17:11:40 +01:00
aler9
2d12c37074
use require.EqualError() in tests
2021-11-03 17:52:47 +01:00
aler9
c9c9c88ac8
update golangci-lint
2021-10-30 13:06:29 +02:00
aler9
9af006b488
allow to set logLevel: error in config
2021-10-28 17:29:27 +02:00
aler9
d30822cb1b
make sourceFingerprint optional and allow standard certificate validation
2021-10-25 21:01:29 +02:00
aler9
509bed355a
update gortsplib
2021-10-22 18:41:10 +02:00
aler9
37f63434ac
sort arrays in configuration and API ( #644 )
2021-10-17 15:40:17 +02:00
aler9
94e519f08f
conf: use dedicated interface to unmarshal from environment
2021-10-11 12:13:57 +02:00
aler9
b21efeb28f
restore logLevel: debug
2021-10-05 20:36:15 +02:00
aler9
0d4d81c333
remove useless code
2021-10-05 09:41:37 +02:00
aler9
b70a4bfe5b
fix regression that prevented setting config slices with env variables ( #612 )
2021-10-04 08:58:23 +02:00
aler9
ab71f22560
move decoding of more configuration into JSON decoding
2021-09-27 16:40:49 +02:00
aler9
1f540a2aaf
return error in case of non-existent parameters in the configuration file
2021-09-27 16:40:49 +02:00
aler9
b748e6d0ff
update error messages
2021-09-27 16:40:49 +02:00
aler9
6921a402d1
decode the configuration when decoding JSON
2021-09-27 16:40:49 +02:00
aler9
54292d712e
convert the configuration into JSON before loading it
2021-09-27 16:40:49 +02:00
aler9
ca9645c2f9
api: decode durations from strings instead of numbers
...
This allows to use human-readable durations with the API,
for instance: "5s" instead of 5000000000
2021-09-26 23:21:37 +02:00
aler9
64808863ed
move confenv into conf
2021-09-26 22:25:39 +02:00
aler9
9398cea0c2
update golangci-lint
2021-09-09 23:05:54 +02:00
aler9
df4c268813
support proxying HLS
2021-09-05 18:00:29 +02:00
aler9
eb5bab7e58
hls: set default segment count to 3
2021-08-14 12:27:00 +02:00
aler9
478102adc5
change default listen IP of metrics and pprof to 127.0.0.1
2021-08-07 19:20:39 +02:00
aler9
dd33ef740e
api: change default listen address to 127.0.0.1:9997
2021-08-07 19:20:39 +02:00
aler9
fdd487f3c5
rename "record" source value into "publisher"
2021-08-07 19:20:39 +02:00
aler9
ed375583d0
Implement an HTTP API to query and control the server
2021-08-07 19:20:39 +02:00
aler9
e516d265d6
refactor ondemand system
2021-08-03 22:40:47 +02:00