09ad8e7160
import changes
2024-07-24 16:52:58 -07:00
Alessandro Ros
9554fc4ba0
prevent mixing together legacy and current auth mechanism ( #3258 ) ( #3460 )
2024-06-12 17:38:55 +02:00
Alessandro Ros
c0ad6e4dc5
raise an error in case recordPath is incompatible with the playback server ( #3356 )
2024-05-14 17:40:45 +02:00
Alessandro Ros
575d3585fe
fix unexpected behavior of authInternalUsers or authHTTPExclude ( #3316 )
...
when some subfields of authInternalUsers or authHTTPExclude were not
set explicitly in the configuration file, default values were used in
their place. This is caused by a strange behavior of Go
(https://github.com/golang/go/issues/21092 )
2024-05-04 10:12:43 +02:00
Alessandro Ros
9a67eb8bb6
record: increase default part duration to 1s ( #3264 )
2024-04-18 00:11:28 +02:00
Alessandro Ros
0b5519d30c
deprecate path.playback parameter ( #3217 )
...
this has become useless after the introduction of the new
authentication system, that already allows to select which paths are
available for playback
2024-04-09 10:04:12 +02:00
Alessandro Ros
dd3b268346
do not switch to legacy authentication system when readUser, readPass, publishUser, publishPass are present but are empty ( #3113 )
2024-03-06 18:04:08 +01:00
Alessandro Ros
9c6ba7e2c7
New authentication system ( #1341 ) ( #1992 ) ( #2205 ) ( #3081 )
...
This is a new authentication system that covers all the features exposed by the server, including playback, API, metrics and PPROF, improves internal authentication by adding permissions, improves HTTP-based authentication by adding the ability to exclude certain actions from being authenticated, adds an additional method (JWT-based authentication).
2024-03-04 14:20:34 +01:00
Alessandro Ros
b6db3121b5
rtsp: add random value to timestamp of tracks from other protocols ( #3071 )
2024-02-26 00:41:05 +01:00
Alessandro Ros
c7bdcea741
move RTSP tests into internal/servers/rtsp ( #3049 )
2024-02-20 19:35:35 +01:00
Alessandro Ros
0f733bab26
add rpiCameraAWBGains ( #2858 ) ( #2954 )
2024-01-28 21:48:21 +01:00
Alessandro Ros
57c2d5aecb
add playback server ( #2452 ) ( #2906 )
...
* add playback server
* add playback switch
* update readme
2024-01-23 20:52:05 +01:00
Sijmen
397c58a882
Add Argon2 credential hash support ( #2888 )
...
* Add argon2 credential hash support
* update README, tests and documentation
---------
Co-authored-by: aler9 <46489434+aler9@users.noreply.github.com>
2024-01-13 12:49:08 +01:00
Alessandro Ros
7437ee7a09
update golangci-lint ( #2868 )
2024-01-03 21:13:20 +01:00
Alessandro Ros
d261bfe773
support static sources in paths with regular expressions ( #824 ) ( #2799 )
...
This allows to proxy requests to other servers by using regular
expressions.
2023-12-10 21:23:41 +01:00
Alessandro Ros
c3d9be322d
allow using 'fallback' with static sources ( #2606 ) ( #2706 )
2023-11-16 23:37:43 +01:00
Alessandro Ros
7a1e155531
update dependencies ( #2687 )
2023-11-13 00:09:42 +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
c42fa76afd
rpi: switch default autofocus mode to 'continuous' ( #2591 )
2023-10-28 12:32:39 +02:00
Alessandro Ros
6d27d690dc
update docs ( #2590 )
2023-10-28 11:52:31 +02:00
Alessandro Ros
95ab9375c7
support recording to MPEG-TS ( #2505 )
2023-10-14 22:52:10 +02:00
Alessandro Ros
4ec12a6c8b
add runOnRecordSegmentCreate hook ( #2451 ) ( #2503 )
2023-10-14 16:48:02 +02:00
Alessandro Ros
6c727b4472
rename 'all' path configuration into 'all_others' ( #2443 )
2023-10-09 18:13:44 +02:00
Alessandro Ros
8a633d2b79
allow setting different recording parameters for each path ( #2410 ) ( #2457 )
2023-10-07 23:48:37 +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
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
Alessandro Ros
442a48363c
allow to start/stop recording without disconnecting clients ( #2395 ) ( #2434 )
2023-09-28 19:39:56 +02:00
Alessandro Ros
61b77a3ff9
api: return 400 in case of non-existent config fields ( #2425 )
2023-09-27 14:56:31 +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
3a7d86ec03
normalize configuration ( #2399 )
2023-09-23 12:48:34 +02:00
Alessandro Ros
8fd7019f2a
rpi camera: add additional checks on configuration ( #2368 )
2023-09-19 11:49:44 +02:00
Alessandro Ros
b86dc979ca
fix default value of some settings ( #2367 )
...
rtmpServerKey, rtmpServerCert, recordPath, rpiCameraExposure,
rpiCameraAWB, rpiCameraDenoise, rpiCameraMetering, rpiCameraAfMode,
rpiCameraAfRange, rpiCameraAfSpeed were not set correctly when missing
in the configuration file.
2023-09-19 11:49:11 +02:00
Alessandro Ros
ac10102329
automatically set 'record: yes' when not specified ( #2366 )
2023-09-18 22:34:38 +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
5fb7f4e846
force all readers to use an asynchronous writer ( #2265 )
...
needed by #2255
2023-08-30 11:24:14 +02:00
Alessandro Ros
cf86dbb303
switch to gortsplib/v4 ( #2244 )
2023-08-26 18:54:28 +02:00
Alessandro Ros
d6058ae469
rename disablePublisherOverride into overridePublisher ( #2164 )
2023-08-06 21:29:16 +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
ce0924ac72
udp: support using domain names instead of IPs ( #2150 )
2023-08-05 16:40:51 +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
37586b2300
api: allow to edit properties of path config "all" ( #2067 ) ( #2075 )
2023-07-19 13:33:05 +02:00
Alessandro Ros
af324c9e91
rpi camera: allow using decimal FPS ( #1743 ) ( #1873 )
2023-05-28 17:29:37 +02:00