summaryrefslogtreecommitdiffstats
path: root/config/config.example.yml
diff options
context:
space:
mode:
authorÉmilien (perso) <4016501+unixfox@users.noreply.github.com>2025-03-13 16:44:00 +0100
committerGitHub <noreply@github.com>2025-03-13 16:44:00 +0100
commit70ff463cc62c5ad06aa6a22e741138cd7a0ecb1a (patch)
tree2a687b9a7f465bac8c5607c6363cbb578bdc11bc /config/config.example.yml
parente23d0d13be85c84c53dcdb7dae1566e2a6285d49 (diff)
downloadinvidious-70ff463cc62c5ad06aa6a22e741138cd7a0ecb1a.tar.gz
invidious-70ff463cc62c5ad06aa6a22e741138cd7a0ecb1a.tar.bz2
invidious-70ff463cc62c5ad06aa6a22e741138cd7a0ecb1a.zip
Add invidious companion support (#4985)
* add support for invidious companion * redirect latest_version and dash manifest to invidious companion * fix Shadowing outer local variable `response` * fixing condition for Content-Security-Policy * throw error if inv_sig_helper and invidious_companion used same time * Use sample instead of Random.rand Co-authored-by: syeopite <70992037+syeopite@users.noreply.github.com> * Remove debug puts functions Co-authored-by: syeopite <70992037+syeopite@users.noreply.github.com> * modify the description for config.example.yaml about invidious companion * move config checks for invidious companion * separate invidious_companion logic + better config.yaml config * fixing "end" misplacement * fix linting + use .empty? * crystal handle decompression already by itself * fix download function when invidious companion used * fix linting * invidious companion always used so always add CSP and redirect latest_version * apply all the suggestions + rework invidious_companion parameter * format watch.cr * fix ameba Redundant use of `Object#to_s` in interpolation * add ability for invidious companion to check request from invidious * Better document private_url and public_url * Better doc for invidious_companion_key * !empty? to present? * skip proxy for invidious companion * fixing format * missing , * add companion pooling http * fix: don't use http proxy when sending requests to companion * fix: logic where we want to have the invidious logic if companion is not used * chore: remove baseurl usage from invidious companion * chore: change from inv-sig-helper to companion for required playback * fix: use puts + add warning for inv-sig-helper deprecated --------- Co-authored-by: syeopite <70992037+syeopite@users.noreply.github.com>
Diffstat (limited to 'config/config.example.yml')
-rw-r--r--config/config.example.yml47
1 files changed, 47 insertions, 0 deletions
diff --git a/config/config.example.yml b/config/config.example.yml
index b04e0a30..8484c6be 100644
--- a/config/config.example.yml
+++ b/config/config.example.yml
@@ -54,6 +54,53 @@ db:
##
#signature_server:
+##
+## Invidious companion is an external program
+## for loading the video streams from YouTube servers.
+##
+## When this setting is commented out, Invidious companion is not used.
+## Otherwise, Invidious will proxy the requests to Invidious companion.
+##
+## Note: multiple URL can be configured. In this case, invidious will
+## randomly pick one every time video data needs to be retrieved. This
+## URL is then kept in the video metadata cache to allow video playback
+## to work. Once said cache has expired, requesting that video's data
+## again will cause a new companion URL to be picked.
+##
+## The parameter private_url needs to be configured for the internal
+## communication between the companion and Invidious.
+## And public_url is the public URL from which companion is listening
+## to the requests from the user(s).
+##
+## If you are using a reverse proxy then you will probably need to
+## configure the public_url to be the same as the domain used for Invidious.
+## Also apply when used from an external IP address (without a domain).
+## Examples: https://MYINVIDIOUSDOMAIN or http://192.168.1.100:8282
+##
+## Both parameter can have identical URL when Invidious is hosted in
+## an internal network or at home or locally (localhost).
+##
+## Accepted values: "http(s)://<IP-HOSTNAME>:<Port>"
+## Default: <none>
+##
+#invidious_companion:
+# - private_url: "http://localhost:8282"
+# public_url: "http://localhost:8282"
+
+##
+## API key for Invidious companion, used for securing the communication
+## between Invidious and Invidious companion.
+## The size of the key needs to be more or equal to 16.
+##
+## Note: This parameter is mandatory when Invidious companion is enabled
+## and should be a random string.
+## Such random string can be generated on linux with the following
+## command: `pwgen 16 1`
+##
+## Accepted values: a string
+## Default: <none>
+##
+#invidious_companion_key: "CHANGE_ME!!"
#########################################
#