blakeblackshear.frigate/web/src/components
Nicolas Mowen d8123d2497
Add go2rtc and add restream role / live source (#4082)
* Pull go2rtc dependency

* Add go2rtc to local services and add to s6

* Add relay controller for go2rtc

* Add restream role

* Add restream role

* Add restream to nginx

* Add camera live source config

* Disable RTMP by default and use restream

* Use go2rtc for camera config

* Fix go2rtc move

* Start restream on frigate start

* Send restream to camera level

* Fix restream

* Make sure jsmpeg works as expected

* Make view rspect live size config

* Tweak player options to fit live view

* Adjust VideoPlayer to accept live option which disables irrelevant controls

* Add multiple options from restream live view

* Add base for webrtc option

* Setup specific restream modules

* Make mp4 the default streaming for now

* Expose 8554 for rtsp relay from go2rtc

* Formatting

* Update docs to suggest new restream method.

* Update docs to reflect restream role

* Update docs to reflect restream role

* Add webrtc player

* Improvements to webRTC

* Support webrtc

* Cleanup

* Adjust rtmp test and add restream test

* Fix tests

* Add restream tests

* Add live view docs and show different options

* Small docs tweak

* Support all stream types

* Update to beta 9 of go2rtc

* Formatting

* Make jsmpeg the default

* Support wss if made from https

* Support wss if made from https

* Use onEffect

* Set url outside onEffect

* Fix passed deps

* Update docs about required host mode

* Try memo instead

* Close websocket on changing camera

* Formatting

* Close pc connection

* Set video source to null on cleanup

* Use full path since go2rtc can't see PATH var

* Adjust audio codec to enable browser audio by default

* Cleanup stream creation

* Add restream tests

* Format tests

* Mock requests

* Adjust paths

* Move stream configs to restream

* Remove live source

* Remove live config

* Use live persistence for which view to use on each camera

* Fix live sizes

* Only use jsmpeg sizes for jsmpeg live

* Set max live size

* Remove access of live config

* Add selector for live view source in web view

* Remove RTMP from default list of roles

* Update docs

* Fix tests

* Fix docs for live view modes

* make default undefined to avoid race condition

* Wait until camera source is loaded to avoid race condition

* Fix tests

* Add config to go2rtc

* Work with config

* Set full path for config

* Set to use stun

* Check for mounted file

* Look for frigate-go2rtc

* Update docs to reflect webRTC configuration.

* Add link to go2rtc config

* Update docs to be more clear

* Update docs to be more clear

* Update format

Co-authored-by: Felipe Santos <felipecassiors@gmail.com>

* Update live docs

* Improve bash startup script

* Add option to force audio compatibility

* Formatting

* Fix mapping

* Fix broken link

* Update go2rtc version

* Get go2rtc webui working

* Add support for mse

* Remove mp4 option

* Undo changes to video player

* Update docs for new live view options

* Make separate path for mse

* Remove unused

* Remove mp4 path

* Try to get go2rtc proxy working

* Try to get go2rtc proxy working

* Remove unused callback

* Allow websocket on restrea dashboard

* Make mse default stream option

* Fix mse sizing

* don't assume roles is defined

* Remove nginx mapping to go2rtc ui

Co-authored-by: Felipe Santos <felipecassiors@gmail.com>
Co-authored-by: Blake Blackshear <blakeb@blakeshome.com>
2022-11-02 06:36:09 -05:00
..
__tests__ switch to vite 2022-03-11 07:49:06 -06:00
HistoryViewer Use master playlist for videojs 2022-08-24 07:21:39 -05:00
Timeline fix: marker time image 2022-07-19 07:04:33 -05:00
ActivityIndicator.jsx feat(web): activity indicator while loading 2021-01-31 06:18:35 -06:00
AppBar.jsx Events performance (#1645) 2021-09-03 07:11:23 -05:00
AutoUpdatingCameraImage.jsx feat: Timeline UI (#2830) 2022-02-27 08:04:12 -06:00
BubbleButton.tsx switch to vite 2022-03-11 07:49:06 -06:00
Button.jsx swr events refactor 2022-03-11 07:49:06 -06:00
ButtonsTabbed.jsx swr events refactor 2022-03-11 07:49:06 -06:00
Calendar.jsx fix date picker 2022-03-11 07:49:06 -06:00
CameraImage.jsx switch to vite 2022-03-11 07:49:06 -06:00
Card.jsx feat(web): detect, clips, snapshots toggles 2021-02-20 08:20:17 -06:00
DatePicker.jsx swr events refactor 2022-03-11 07:49:06 -06:00
DebugCamera.jsx feat: Timeline UI (#2830) 2022-02-27 08:04:12 -06:00
Dialog.jsx feat: Timeline UI (#2830) 2022-02-27 08:04:12 -06:00
Heading.jsx fix(web): dark mode text color fixes 2021-01-26 21:40:33 -06:00
JSMpegPlayer.jsx Add go2rtc and add restream role / live source (#4082) 2022-11-02 06:36:09 -05:00
Link.jsx refactor(web): NavigationBar (sidebar) styles 2021-02-20 08:20:17 -06:00
LinkedLogo.jsx test(web): add eslint and PR lint validation 2021-02-20 08:20:17 -06:00
LiveChip.jsx feat: Timeline UI (#2830) 2022-02-27 08:04:12 -06:00
Logo.jsx refactor(web): styles and styleguide 2021-02-20 08:20:17 -06:00
Menu.jsx swr events refactor 2022-03-11 07:49:06 -06:00
MsePlayer.jsx Add go2rtc and add restream role / live source (#4082) 2022-11-02 06:36:09 -05:00
NavigationDrawer.jsx swr events refactor 2022-03-11 07:49:06 -06:00
Prompt.jsx feat: Timeline UI (#2830) 2022-02-27 08:04:12 -06:00
RecordingPlaylist.jsx Recording: Fix z-index issue with recording playlist (#3762) 2022-09-20 06:05:43 -05:00
RelativeModal.jsx swr events refactor 2022-03-11 07:49:06 -06:00
Select.jsx swr events refactor 2022-03-11 07:49:06 -06:00
Switch.jsx swr events refactor 2022-03-11 07:49:06 -06:00
Table.jsx Events performance (#1645) 2021-09-03 07:11:23 -05:00
Tabs.jsx Show snapshots on events page (#3763) 2022-09-15 06:35:51 -05:00
TextField.jsx test(web): TextField 2021-02-20 08:20:17 -06:00
Tooltip.jsx fix(web): ensure tooltips and menus don't cause scrollbar reflow 2021-02-25 06:34:36 -06:00
VideoPlayer.jsx Add go2rtc and add restream role / live source (#4082) 2022-11-02 06:36:09 -05:00
WebRtcPlayer.jsx Add go2rtc and add restream role / live source (#4082) 2022-11-02 06:36:09 -05:00