Fix typos, grammar, and broken links (#176)

* Fix typos, grammar, and broken links
This commit is contained in:
Pranjal Kole 2022-01-04 22:12:52 +05:30 committed by GitHub
parent 92216749ab
commit de6bb1f324
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
14 changed files with 79 additions and 77 deletions

View file

@ -8,10 +8,10 @@ editor: markdown
dateCreated: 2021-01-28T20:38:58.736Z dateCreated: 2021-01-28T20:38:58.736Z
--- ---
Download ViolentMonkey for your Browser: Download ViolentMonkey for your Browser:
[Firefox](https://addons.mozilla.org/en-US/firefox/addon/violentmonkey/) [Firefox](https://addons.mozilla.org/en-US/firefox/addon/violentmonkey/)
[Chrome and Chromium](https://chrome.google.com/webstore/detail/violentmonkey/jinjaccalgkegednnccohejagnlnfdag) [Chrome and Chromium](https://chrome.google.com/webstore/detail/violentmonkey/jinjaccalgkegednnccohejagnlnfdag)
[Others](https://violentmonkey.github.io/get-it/) [Others](https://violentmonkey.github.io/get-it/)
Than add the following script in ViolentMonkey. It will always add `&local=true` to the end of the video URL. Than add the following script in ViolentMonkey. It will always add `&local=true` to the end of the video URL.

View file

@ -33,28 +33,28 @@ SSLCertificateChainFile /etc/letsencrypt/live/invidious.domain.tld/chain.pem
</IfModule> </IfModule>
``` ```
- Another config example without HTTPS, but with Apache Basic Auth HTTP login. - Another config example without HTTPS, but with Apache Basic Auth HTTP login.
The user will connect to Apache on port 3333 and will be asked to log in. If authentification is successful, Apache will redirect the user to Invidious' page. The user will connect to Apache on port 3333 and will be asked to log in. If authentification is successful, Apache will redirect the user to Invidious' page.
To make the VirtualHost config below actually work, you should as well: To make the VirtualHost config below actually work, you should as well:
- Create a [.htpasswd](http://httpd.apache.org/docs/current/programs/htpasswd.html) file and add required [username/login combos](http://aspirine.org/htpasswd_en.html) to it, if not already existing. - Create a [.htpasswd](http://httpd.apache.org/docs/current/programs/htpasswd.html) file and add required [username/login combos](http://aspirine.org/htpasswd_en.html) to it, if not already existing.
- Open port 3333 (or any other free port) adding `Listen 3333` to Apache `ports.conf` (Debian `/etc/apache2/ports.conf`) - Open port 3333 (or any other free port) adding `Listen 3333` to Apache `ports.conf` (Debian `/etc/apache2/ports.conf`)
- If you run Invidious with default parameters, you may need to replace default host binding (0.0.0.0) with localhost (127.0.0.1) instead. That way, Invidious won't be publicly available on port 3000 anymore, but only accessible via the reverse proxy on port 3333. So if you run Invidious via a systemd service, you would edit the service file (e.g. `/etc/systemd/system/invidious.service`) and change modify the ExecStart line to include the -b switch as follows `ExecStart=/home/invidious/invidious/invidious -b 127.0.0.1 -o invidious.log` and then reload the daemon with `systemctl daemon-reload` so that changes are taken into account. - If you run Invidious with default parameters, you may need to replace default host binding (0.0.0.0) with localhost (127.0.0.1) instead. That way, Invidious won't be publicly available on port 3000 anymore, but only accessible via the reverse proxy on port 3333. So if you run Invidious via a systemd service, you would edit the service file (e.g. `/etc/systemd/system/invidious.service`) and modify the ExecStart line to include the -b switch as follows `ExecStart=/home/invidious/invidious/invidious -b 127.0.0.1 -o invidious.log` and then reload the daemon with `systemctl daemon-reload` so that changes are taken into account.
- A convenient way to open such protected Invidious page without having to log in manually everytime is to access use a URL with the following format: http://username:password@domain:3333 - A convenient way to open such protected Invidious page without having to log in manually everytime is to access use a URL with the following format: http://username:password@domain:3333
``` ```
<VirtualHost *:3333> <VirtualHost *:3333>
ServerName invidious.domain.tld #add your own domain name (or localhost if you have no) ServerName invidious.domain.tld #add your own domain name (or localhost if you have none)
ServerAdmin admin@localhost ServerAdmin admin@localhost
<Location /> <Location />
Deny from all # Forbid access to all by default... Deny from all # Forbid access to all by default...
#Allow from 127.0.0.1 #...Except from specific IPs (which will not need to authentificate)... #Allow from 127.0.0.1 #...Except from specific IPs (which will not need to authenticate)...
AuthUserFile /etc/apache2/.htpasswd #path to .htpasswd file AuthUserFile /etc/apache2/.htpasswd #path to .htpasswd file
AuthName "Restricted Area" # name displayed in the promptbox AuthName "Restricted Area" # name displayed in the promptbox
AuthType Basic # http://httpd.apache.org/docs/current/howto/auth.html AuthType Basic # http://httpd.apache.org/docs/current/howto/auth.html
Satisfy Any Satisfy Any
Require valid-user # ...and except from authentified users included in the .htpasswd file Require valid-user # ...and except from authenticated users included in the .htpasswd file
</Location> </Location>
ProxyPass / http://127.0.0.1:3000/ nocanon ProxyPass / http://127.0.0.1:3000/ nocanon

View file

@ -37,9 +37,9 @@ Examples:
- `POST:playlists*`: authorizes `POST` methods to _any_ endpoint under `/api/v1/auth/playlists` (`/api/v1/auth/playlists`, `/api/v1/playlists/:id/videos`, etc.) - `POST:playlists*`: authorizes `POST` methods to _any_ endpoint under `/api/v1/auth/playlists` (`/api/v1/auth/playlists`, `/api/v1/playlists/:id/videos`, etc.)
- `:playlists/*`: authorizes \_any method to endpoints under `/api/v1/auth/playlists/` (`/api/v1/auth/playlists/:id`, `/api/v1/playlists/:id/videos`, etc.) - `:playlists/*`: authorizes _any_ method to endpoints under `/api/v1/auth/playlists/` (`/api/v1/auth/playlists/:id`, `/api/v1/playlists/:id/videos`, etc.)
- `GET:playlists/IVPAAAAAAA`: authorizes `GET` only to playlist `IVPAAAAAA`. - `GET:playlists/IVPAAAAAAA`: authorizes `GET` only to playlist `IVPAAAAAAA`.
- `:preferences`: authorizes _any_ method to `/api/v1/auth/preferences` - `:preferences`: authorizes _any_ method to `/api/v1/auth/preferences`

View file

@ -74,7 +74,7 @@ db:
- `host_binding` (default `0.0.0.0`) Default host for HTTP server - `host_binding` (default `0.0.0.0`) Default host for HTTP server
- `cookies` (default ``) Cookies to be used when connecting to YouTube - `cookies` (default `nil`) Cookies to be used when connecting to YouTube
- `captcha_key` (default `nil`) [Anti-Captcha](https://anti-captcha.com/) API key for solving YouTube CAPTCHAs, see [#886](https://github.com/iv-org/invidious/issues/886). - `captcha_key` (default `nil`) [Anti-Captcha](https://anti-captcha.com/) API key for solving YouTube CAPTCHAs, see [#886](https://github.com/iv-org/invidious/issues/886).

View file

@ -11,12 +11,12 @@ dateCreated: 2021-01-28T20:39:18.631Z
Invidious needs one PostgreSQL database which has the following tables. Invidious needs one PostgreSQL database which has the following tables.
- `annotations` Caches annotation data if `cache_annotations` is enabled in [`config.yml`](./Configuration) - `annotations` Caches annotation data if `cache_annotations` is enabled in [`config.yml`](./Configuration)
- `channel_videos` Stores truncated video info, used to create user feeds - `channel_videos` Stores truncated video info, used to create user feeds
- `channels` Stores UCID and author name - `channels` Stores UCID and author name
- `nonces` Keeps track of tokens issued to prevent CSRF - `nonces` Keeps track of tokens issued to prevent CSRF
- `users` Stores user info, such as preferences, username, subscriptions - `users` Stores user info, such as preferences, username, subscriptions
- `session_ids` Keeps track of user sessions - `session_ids` Keeps track of user sessions
- `videos` Stores video cache, used to create "top" page - `videos` Stores video cache, used to create "top" page
The table `videos` grows a lot and needs the most storage. You can clean it up using following commands: The table `videos` grows a lot and needs the most storage. You can clean it up using following commands:
```bash ```bash
@ -30,4 +30,4 @@ For regular maintenance you should add a cronjob for these commands
```bash ```bash
@weekly psql invidious -c "DELETE FROM nonces * WHERE expire < current_timestamp" > /dev/null @weekly psql invidious -c "DELETE FROM nonces * WHERE expire < current_timestamp" > /dev/null
@weekly psql invidious -c "TRUNCATE TABLE videos" > /dev/null @weekly psql invidious -c "TRUNCATE TABLE videos" > /dev/null
``` ```

View file

@ -8,16 +8,16 @@ editor: markdown
dateCreated: 2021-01-28T20:39:23.334Z dateCreated: 2021-01-28T20:39:23.334Z
--- ---
**The steps below as well as the resulting file name are different depending on your Google language **The steps below as well as the resulting file name are different depending on your Google language
settings.** settings.**
1. Open [Google Takeout](https://takeout.google.com/takeout/custom/youtube). 1. Open [Google Takeout](https://takeout.google.com/takeout/custom/youtube).
2. Under `Create a new export` choose `YouTube and YouTube Music`. 2. Under `Create a new export` choose `YouTube and YouTube Music`.
3. Click on `All YouTube data included` and only tick `subscriptions` in the dialog that opens. 3. Click on `All YouTube data included` and only tick `subscriptions` in the dialog that opens.
4. Click on `Next step`, make sure `Export once` is chosen and click on `Create export`. 4. Click on `Next step`, make sure `Export once` is chosen and click on `Create export`.
5. Wait until the export creation is finished, then on the same page click on `Download` under 5. Wait until the export creation is finished, then on the same page click on `Download` under
`Your latest export` that should now be visible. `Your latest export` that should now be visible.
6. Extract the downloaded archive and find the file `subscriptions.json`. 6. Extract the downloaded archive and find the file `subscriptions.json`.
7. While logged into your Invidious account go to Subscriptions -> Manage Subscriptions -> 7. While logged into your Invidious account go to Subscriptions -> Manage Subscriptions ->
Import/Export -> Import YouTube subscriptions, select the file you just downloaded and click on Import/Export -> Import YouTube subscriptions, select the file you just downloaded and click on
`Import`. `Import`.

View file

@ -9,14 +9,14 @@ dateCreated: 2021-01-28T20:39:27.709Z
--- ---
### Browser extensions for Invidious ### Browser extensions for Invidious
- [Privacy Redirect](https://github.com/SimonBrazell/privacy-redirect): Redirects YouTube to Invidious, Twitter to Nitter, and Instagram to Bibliogram. [Source](https://github.com/SimonBrazell/privacy-redirect) / [Firefox](https://addons.mozilla.org/en-US/firefox/addon/privacy-redirect/) / [Chrome](https://chrome.google.com/webstore/detail/privacy-redirect/pmcmeagblkinmogikoikkdjiligflglb) - [Privacy Redirect](https://github.com/SimonBrazell/privacy-redirect): Redirects YouTube to Invidious, Twitter to Nitter, and Instagram to Bibliogram. [Source](https://github.com/SimonBrazell/privacy-redirect) / [Firefox](https://addons.mozilla.org/addon/privacy-redirect) / [Chrome](https://chrome.google.com/webstore/detail/privacy-redirect/pmcmeagblkinmogikoikkdjiligflglb)
- [Alter](https://addons.mozilla.org/addon/alter/): Firefox extension that redirects YouTube, Twitter and Reddit to Invidious, Nitter and Teddit respectively. [Source](https://github.com/w3bdev1/alter) / [Firefox](https://addons.mozilla.org/addon/alter/) - [Alter](https://addons.mozilla.org/addon/alter): Firefox extension that redirects YouTube, Twitter and Reddit to Invidious, Nitter and Teddit respectively. [Source](https://github.com/w3bdev1/alter) / [Firefox](https://addons.mozilla.org/addon/alter)
- [SponsorBlock](https://github.com/ajayyy/SponsorBlock): A crowd-sourced extension to skip sponsorships. Support invidious instances if enabled in the options (Available for Chrome and Firefox). - [SponsorBlock](https://github.com/ajayyy/SponsorBlock): A crowd-sourced extension to skip sponsorships. Support invidious instances if enabled in the options. [Source](https://github.com/ajayyy/SponsorBlock) / [Firefox](https://addons.mozilla.org/addon/sponsorblock) / [Chrome](https://chrome.google.com/webstore/detail/mnjggcdmjocbbbhaepdhchncahnbgone)
- [Invidition](https://addons.mozilla.org/en-US/firefox/addon/invidition/): Firefox extension that redirects YouTube links and embeds to their Invidious counterpart without any call to YouTube. [(Source)](https://codeberg.org/Booteille/Invidition) (**deprecated**). - [Invidition](https://addons.mozilla.org/addon/invidition): Firefox extension that redirects YouTube links and embeds to their Invidious counterpart without any call to YouTube. [Source](https://codeberg.org/Booteille/Invidition) (**deprecated**).
- [Alternate Tube Redirector](https://addons.mozilla.org/en-US/firefox/addon/alternate-tube-redirector/): Firefox extension to automatically open YouTube Videos on alternate sites like Invidious or Hooktube. [(Source)](https://gitlab.com/2vek/alternate-tube-redirector/). - [Alternate Tube Redirector](https://gitlab.com/2vek/alternate-tube-redirector): Extension to automatically open YouTube Videos on alternate sites like Invidious or Hooktube. [Source](https://gitlab.com/2vek/alternate-tube-redirector)
- [Invidious Copy URL](https://github.com/recette-lemon/invidious-copy-url/): Adds context menu options on Invidious to copy shortened YouTube .URL at current time or not (Requires using developer mode in Chrome or a developer version of Firefox). - [Invidious Copy URL](https://github.com/recette-lemon/invidious-copy-url): Adds context menu options on Invidious to copy shortened YouTube URL at current time or not (Requires using developer mode in Chrome or a developer version of Firefox).
- [View on Invidious](https://omar.yt/722e5c15832840fe1ae8830b7c590254b9e0a45c/invidious-bookmarklet.html): View page on Invidious (bookmarklet). - [View on Invidious](https://omar.yt/722e5c15832840fe1ae8830b7c590254b9e0a45c/invidious-bookmarklet.html): View page on Invidious (bookmarklet).
- [Inviduration](https://addons.mozilla.org/en-US/firefox/addon/inviduration/): Shows total duration of playlists on Invidious. [(Source)](https://github.com/rsapkf/inviduration). - [Inviduration](https://addons.mozilla.org/addon/inviduration): Firefox extension that shows total duration of playlists on Invidious. [Source](https://github.com/rsapkf/inviduration) / [Firefox](https://addons.mozilla.org/addon/inviduration)
### Userscripts for Invidious. ### Userscripts for Invidious.
- [Invidious Redirect](https://greasyfork.org/en/scripts/370461-invidious-redirect): Redirects YouTube URLs to Invidio.us. - [Invidious Redirect](https://greasyfork.org/en/scripts/370461-invidious-redirect): Redirects YouTube URLs to Invidio.us.
@ -26,11 +26,11 @@ dateCreated: 2021-01-28T20:39:27.709Z
- [FYTE](https://greasyfork.org/en/scripts/9252-fyte-fast-youtube-embedded-player): Replace all YouTube embeds on a page with the video's thumbnail. Click on the thumbnail to play the video. Invidious is supported in the Options panel. - [FYTE](https://greasyfork.org/en/scripts/9252-fyte-fast-youtube-embedded-player): Replace all YouTube embeds on a page with the video's thumbnail. Click on the thumbnail to play the video. Invidious is supported in the Options panel.
### Extensions that integrate Invidious into other programs and apps ### Extensions that integrate Invidious into other programs and apps
- [UntrackMe](https://f-droid.org/en/packages/app.fedilab.nitterizeme/): Android app to rewrite YouTube links to Invidious. Can optionally play videos in the app as well. - [UntrackMe](https://f-droid.org/en/packages/app.fedilab.nitterizeme): Android app to rewrite YouTube links to Invidious. Can optionally play videos in the app as well.
- [iPhone Redirector Shortcut](https://www.icloud.com/shortcuts/6bbf26d989cf4d07a5fe1626efbc0950): Automatically open YouTube videos in Invidious (iPhone shortcut). - [iPhone Redirector Shortcut](https://www.icloud.com/shortcuts/6bbf26d989cf4d07a5fe1626efbc0950): Automatically open YouTube videos in Invidious (iPhone shortcut).
- [FreshRSS Extension](https://github.com/tmiland/freshrss-invidious): A FreshRSS extension to directly embed videos from Invidious channel feeds. - [FreshRSS Extension](https://github.com/tmiland/freshrss-invidious): A FreshRSS extension to directly embed videos from Invidious channel feeds.
- [Kodi add-on](https://github.com/TheAssassin/kodi-invidious-plugin): Watch YouTube videos in the Kodi media center, using the Invidious API. Privacy-friendly alternative to the YouTube API add-on. - [Kodi add-on](https://github.com/TheAssassin/kodi-invidious-plugin): Watch YouTube videos in the Kodi media center, using the Invidious API. Privacy-friendly alternative to the YouTube API add-on.
- [Another Kodi add-on](https://github.com/lekma/plugin.video.invidious)...seems to have been more recently updated than the above. - [Another Kodi add-on](https://github.com/lekma/plugin.video.invidious): Seems to have been more recently updated than the above.
### Utilities for Invidious ### Utilities for Invidious
- [Invidious-Updater (And Installer)](https://github.com/tmiland/Invidious-Updater): Automatic update script for Invidious. - [Invidious-Updater (And Installer)](https://github.com/tmiland/Invidious-Updater): Automatic install and update script for Invidious.

30
FAQ.md
View file

@ -2,7 +2,7 @@
## Table of Contents ## Table of Contents
- Using invidious - Using Invidious
* [Can I use Invidious on my device?](#q-can-i-use-invidious-on-my-device) * [Can I use Invidious on my device?](#q-can-i-use-invidious-on-my-device)
* [Do you plan to make an Android/iOS app?](#q-do-you-plan-to-make-an-androidios-app) * [Do you plan to make an Android/iOS app?](#q-do-you-plan-to-make-an-androidios-app)
* [What data is collected by Invidious?](#q-what-data-is-collected-by-invidious) * [What data is collected by Invidious?](#q-what-data-is-collected-by-invidious)
@ -23,7 +23,7 @@
#q-the-popular-feedpage-on-my-instance-is-empty) #q-the-popular-feedpage-on-my-instance-is-empty)
# Using invidious # Using Invidious
## **Q:** Can I use Invidious on my device? ## **Q:** Can I use Invidious on my device?
@ -37,7 +37,7 @@ sure, of course! A responsive interface is available for mobile/tablets.
**A:** No. Invidious is and will always be a browser application. **A:** No. Invidious is and will always be a browser application.
If you have an Android phone/tablet, you can check the If you have an Android phone/tablet, you can check the
[NewPipe](https://github.com/TeamNewPipe/NewPipe/) application. [NewPipe](https://github.com/TeamNewPipe/NewPipe) application.
<br/> <br/>
@ -51,7 +51,7 @@ By default, the server logs which URLs were accessed, the associated error
code (e.g 404 if the URL was not found) and the time it took for the server code (e.g 404 if the URL was not found) and the time it took for the server
to respond. to respond.
Here is what the server logs looks like: Here is what the server logs look like:
``` ```
2021-08-30 18:15:44 UTC [info] 200 GET /watch?v=GIAKHj9uJtM 781.21ms 2021-08-30 18:15:44 UTC [info] 200 GET /watch?v=GIAKHj9uJtM 781.21ms
@ -66,7 +66,7 @@ or delete these data at any time from your user account page.
<br/> <br/>
## **Q:** What data is shared with youTube? ## **Q:** What data is shared with YouTube?
**A:** By default, the video stream is fetched directly from Google's servers **A:** By default, the video stream is fetched directly from Google's servers
(`googlevideo.com`) in order to reduce the bandwidth required by invidious, (`googlevideo.com`) in order to reduce the bandwidth required by invidious,
@ -74,8 +74,8 @@ meaning that Google will be able to see your IP address and some other data
commonly sent by web browsers, like your user-agent string. commonly sent by web browsers, like your user-agent string.
If you don't want that to happen, you can go to the `preferences` page and If you don't want that to happen, you can go to the `preferences` page and
check the `Proxy videos` option. When this option is enabled, the invidious check the `Proxy videos` option. When this option is enabled, the Invidious
instance will be used as a relay (also know as a "proxy") between you and instance will be used as a relay (also known as a "proxy") between you and
Google's servers, which will hide your IP address and the other information Google's servers, which will hide your IP address and the other information
sent by your browser. sent by your browser.
@ -89,9 +89,9 @@ sent by your browser.
**A:** This problem can occur in different scenarios: **A:** This problem can occur in different scenarios:
* If you're trying to watch a music clip, Youtube is likely blocking the * If you're trying to watch a music clip, Youtube is likely blocking the
video stream. Try enabling `proxy videos` in the preferences (or add video stream. Try enabling `Proxy videos` in the preferences (or add
`&local=1` in the URL). Switching instance is also a good alternative, `&local=1` in the URL). Switching to another instance is also a good
as this type of content is often geo-restricted. alternative, as this type of content is often geo-restricted.
* Youtube often sends corrupted video data for the `hd720`, `medium` and * Youtube often sends corrupted video data for the `hd720`, `medium` and
`small` quality settings. Refreshing the page multiple times (5-7) can `small` quality settings. Refreshing the page multiple times (5-7) can
@ -101,9 +101,9 @@ sent by your browser.
* Rarely, it can be due to an internal failure of the instance and the * Rarely, it can be due to an internal failure of the instance and the
video stream can't be fetched. A simple page refresh can solve the issue. video stream can't be fetched. A simple page refresh can solve the issue.
If none of the solutions listed above fix that problem, try switching If none of the solutions listed above fix the problem, try switching
instances. And if that still doesn't work, you'll have to watch the video instances. And if that still doesn't work, you'll have to watch the video
on youtube itself (sorry for the inconvenience). on YouTube itself (sorry for the inconvenience).
<br/> <br/>
@ -136,11 +136,11 @@ All the supported configuration options are documented there.
## **Q:** RSS feeds/links/etc... URLs redirect to `<IP>:3000` but I have a reverse proxy! ## **Q:** RSS feeds/links/etc... URLs redirect to `<IP>:3000` but I have a reverse proxy!
**A:** Make sure that the following parameters are set accrodingly to your environment: **A:** Make sure that the following parameters are set according to your environment:
- `https_only`: if your instance is served over HTTPs - `https_only`: if your instance is served over HTTPS
- `domain`: if you have a domain name that redirects to your instance - `domain`: if you have a domain name that redirects to your instance
- `external_port`: if your instance is accessed from a different port than - `external_port`: if your instance is accessed from a different port than
the listening one (e.g your instance listens on :3000, but is available on the listening one (e.g your instance listens on :3000, but is available on
:443 through a reverse proxy, set `external_port` to `443`) :443 through a reverse proxy, set `external_port` to `443`)
<br/> <br/>

View file

@ -11,7 +11,7 @@ dateCreated: 2021-01-28T20:39:32.300Z
## Geoblocking ## Geoblocking
Sometimes you may notice that you cannot watch a video on Invidious. This is because YouTube is geoblocking, i.e. preventing access to videos based on your geographical location. Sometimes you may notice that you cannot watch a video on Invidious. This is because YouTube is geoblocking, i.e. preventing access to videos based on your geographical location.
If "Proxy videos?" setting is enabled, then Invidious will proxy videos through itself, so the stream will be routed like this: If the `Proxy videos?` setting is enabled, Invidious will proxy videos through itself, so the stream will be routed like this:
> YouTube → Invidious/server → Client/browser > YouTube → Invidious/server → Client/browser
If a video is blocked where the instance is hosted, then the route would be this: If a video is blocked where the instance is hosted, then the route would be this:
@ -20,7 +20,7 @@ If a video is blocked where the instance is hosted, then the route would be this
The current system works by cycling through proxies in different regions, and finding one where the video is not blocked. The current system works by cycling through proxies in different regions, and finding one where the video is not blocked.
The reason geoblocked videos may take a long time to load is because Invidious would have to cycle through all known proxy servers until it finds one that is able to play back the video. The reason geoblocked videos may take a long time to load is because Invidious would have to cycle through all known proxy servers until it finds one that is able to play back the video.
If "Proxy videos?" setting is disabled, then the stream would be routed like this: If the `Proxy videos?` setting is disabled, then the stream would be routed like this:
> YouTube → Client/browser > YouTube → Client/browser
## Video quality and DASH ## Video quality and DASH
@ -28,4 +28,4 @@ On Invidious you often don't have the same quality options as on YouTube. This i
DASH is a streaming technique used by YouTube to provide resolutions higher than 720p by providing multiple files for a client to use depending on network and user preferences. DASH is a streaming technique used by YouTube to provide resolutions higher than 720p by providing multiple files for a client to use depending on network and user preferences.
You can enable DASH by selecting the appropriately named video quality in the settings or by appending `&quality=dash` to the end of a video's URL. With this option enabled, the stream is proxied through Invidious for you to then watch at a higher or automatic quality. You can enable DASH by selecting the appropriately named video quality in the settings or by appending `&quality=dash` to the end of a video's URL. With this option enabled, the stream is proxied through Invidious for you to then watch at a higher or automatic quality.

View file

@ -8,8 +8,8 @@ editor: markdown
dateCreated: 2021-01-28T20:39:36.844Z dateCreated: 2021-01-28T20:39:36.844Z
--- ---
If you're using [uMatrix](https://github.com/gorhill/uMatrix), you'll not be able to automatically play a video served by Invidious on other websites without unblocking requests to Invidious instances. If you're using [uMatrix](https://github.com/gorhill/uMatrix), you won't be able to automatically play a video served by Invidious on other websites without unblocking requests to Invidious instances.
So, to make it work, you'll need to allow `css`, `image`, `media`, `script`, `xhr`, `frame` for the instance form which you're trying to play the video. So, to make it work, you'll need to allow `css`, `image`, `media`, `script`, `xhr`, `frame` for the instance from which you're trying to play the video.
Since there are more and more Invidious instances, you can use the tool called [Invimatrix](https://booteille.gitlab.io/invimatrix/) to automatically generate uMatrix rules for every known instances. Since there are many Invidious instances, you can use the tool called [Invimatrix](https://booteille.gitlab.io/invimatrix) to automatically generate uMatrix rules for every known instance.

View file

@ -8,13 +8,13 @@ editor: markdown
dateCreated: 2021-01-28T20:39:41.544Z dateCreated: 2021-01-28T20:39:41.544Z
--- ---
1. Register on anti-captcha.com: https://anti-captcha.com/clients/entrance/register and finish the registration with the link provided in your mailbox. 1. [Register on anti-captcha.com](https://anti-captcha.com/clients/entrance/register) and finish the registration with the link provided in your mailbox.
2. Head over the "Add fund" page: https://anti-captcha.com/clients/finance/refill and use whatever currency you prefer to use for adding $2 into your balance. 2. Head over to the [Add fund](https://anti-captcha.com/clients/finance/refill) page and use whatever currency you prefer to use for adding $2 into your balance.
Do note that cryptocurrencies give a bonus of 20% at the first time you add funds then 10% for each new recharge. Do note that cryptocurrencies give a bonus of 20% the first time you add funds and then 10% for each new recharge.
3. After adding funds, go the API key link: https://anti-captcha.com/clients/settings/apisetup and copy your "Account key" (**never share it, it's confidential**). 3. After adding funds, go to the [API key link](https://anti-captcha.com/clients/settings/apisetup) and copy your `Account Key` (**never share it, it's confidential**).
4. Edit your Invidious `config.yml` file (should be located in the `config` directory) and add your account key at the end of the file after the `captcha_key` parameter. 4. Edit your Invidious `config.yml` file (should be located in the `config` directory) and add your account key at the end of the file after the `captcha_key` parameter.
Here is an example: Here is an example:
```yml ```yml
captcha_key: acuGae2riad5quashoug3Leeh captcha_key: acuGae2riad5quashoug3Leeh
``` ```
5. Restart Invidious and that's it! 5. Restart Invidious and that's it!

View file

@ -9,19 +9,19 @@ dateCreated: 2021-01-28T20:39:51.349Z
--- ---
#### Warning: If you use ImageMagick on Ubuntu for other services like Mastodon this guide may break them, please use [this guide](https://linuxconfig.org/how-to-install-imagemagick-7-on-ubuntu-18-04-linux) instead. #### Warning: If you use ImageMagick on Ubuntu for other services like Mastodon this guide may break them, please use [this guide](https://linuxconfig.org/how-to-install-imagemagick-7-on-ubuntu-18-04-linux) instead.
There is some issue on Debian 9 and Ubuntu 18.04 and later. It appears that the clock (the CAPTCHA) has no hands but you can see them outside the clock. You need to compile ImageMagick yourself with librsvg to solve this issue. There is some issue on Debian 9 and Ubuntu 18.04 and later. It appears that the clock (the CAPTCHA) has no hands but you can see them outside the clock. You need to compile ImageMagick yourself with librsvg to solve this issue.
Thanks [Tmiland](https://github.com/tmiland) for showing up a solution at [#299](https://github.com/iv-org/invidious/issues/299) Thanks [Tmiland](https://github.com/tmiland) for showing us a solution at [#299](https://github.com/iv-org/invidious/issues/299)
For lazy people a little hack is to disable CAPTCHA or use text one. For lazy people, a little hack is to disable CAPTCHA or use text one.
You can check if your version of ImageMagick is affected with `convert -list format`. You can check if your version of ImageMagick is affected with `convert -list format`.
It should show the following if your installed version is okay. It should show the following if your installed version is okay.
``` ```
SVG SVG rw+ Scalable Vector Graphics (RSVG 2.40.13) SVG SVG rw+ Scalable Vector Graphics (RSVG 2.40.13)
SVGZ SVG rw+ Compressed Scalable Vector Graphics (RSVG 2.40.13) SVGZ SVG rw+ Compressed Scalable Vector Graphics (RSVG 2.40.13)
``` ```
If this is not the case your version is not compiled with librsvg, then you get the following. If this is not the case, your version is not compiled with librsvg, then you get the following.
``` ```
SVG SVG rw+ Scalable Vector Graphics (XML 2.9.4) SVG SVG rw+ Scalable Vector Graphics (XML 2.9.4)
SVGZ SVG rw+ Compressed Scalable Vector Graphics (XML 2.9.4) SVGZ SVG rw+ Compressed Scalable Vector Graphics (XML 2.9.4)
@ -29,9 +29,8 @@ If this is not the case your version is not compiled with librsvg, then you get
Follow the steps to fix this issue: Follow the steps to fix this issue:
`$ sudo apt purge imagemagick`
```bash ```bash
$ sudo apt purge imagemagick
$ cd /tmp $ cd /tmp
# check for new releases: https://github.com/ImageMagick/ImageMagick6/releases # check for new releases: https://github.com/ImageMagick/ImageMagick6/releases
$ wget https://github.com/ImageMagick/ImageMagick6/archive/6.9.11-19.tar.gz $ wget https://github.com/ImageMagick/ImageMagick6/archive/6.9.11-19.tar.gz
@ -42,7 +41,7 @@ $ make
$ sudo make install $ sudo make install
``` ```
Set the correct path: `$ sudo ln -s /usr/local/bin/convert /usr/bin/convert` Set the correct path: `$ sudo ln -s /usr/local/bin/convert /usr/bin/convert`
If you get an error here that this file already exists, please execute `$ sudo apt autoremove` If you get an error here that this file already exists, please execute `$ sudo apt autoremove`
Now `convert -list format` reports Now `convert -list format` reports
@ -50,4 +49,7 @@ Now `convert -list format` reports
SVG rw+ Scalable Vector Graphics (RSVG 2.40.16) SVG rw+ Scalable Vector Graphics (RSVG 2.40.16)
SVGZ rw+ Compressed Scalable Vector Graphics (RSVG 2.40.16) SVGZ rw+ Compressed Scalable Vector Graphics (RSVG 2.40.16)
Restart Invidious, just to be sure `$ sudo systemctl restart invidious.service` Restart Invidious, just to be sure:
```bash
$ sudo systemctl restart invidious.service
```

View file

@ -8,7 +8,7 @@ editor: markdown
dateCreated: 2021-01-28T20:40:07.950Z dateCreated: 2021-01-28T20:40:07.950Z
--- ---
This is a very basic config, secured with Let's Encrypt. Any log is disabled by default. Do not forget to replace `server_name` with your domain. This is a very basic config, secured with Let's Encrypt. Any log is disabled by default. Do not forget to replace `server_name` with your domain.
``` ```
server { server {
@ -35,4 +35,4 @@ server {
if ($https = '') { return 301 https://$host$request_uri; } # if not connected to HTTPS, perma-redirect to HTTPS if ($https = '') { return 301 https://$host$request_uri; } # if not connected to HTTPS, perma-redirect to HTTPS
} }
``` ```

View file

@ -8,7 +8,7 @@ editor: markdown
dateCreated: 2021-11-16T16:58:48.431Z dateCreated: 2021-11-16T16:58:48.431Z
--- ---
While running Invidious, it is very possible you will recive a DMCA at some point. A copyright agent will probably at some point search the ID of an infringing video on a search engine and see an Invidious instance appear. At least in the United States, Invidious instances should in theory be immune to DMCA laws because of [17 U.S. Code § 512](https://www.law.cornell.edu/uscode/text/17/512) stating that a provider is not responsible for content assusimg that "the material is transmitted through the system or network without modification of its content." While running Invidious, it is very possible you will recive a DMCA at some point. A copyright agent will probably at some point search the ID of an infringing video on a search engine and see an Invidious instance appear. At least in the United States, Invidious instances should in theory be immune to DMCA laws because of [17 U.S. Code § 512](https://www.law.cornell.edu/uscode/text/17/512) stating that a provider is not responsible for content assuming that "the material is transmitted through the system or network without modification of its content."
## Sample DMCA (United States) ## Sample DMCA (United States)
@ -36,7 +36,7 @@ I am writing on behalf of {{website}}. I am the webmaster of {{website}} and all
I see you are filing a claim for {{invidious instance url}}. {{invidious instance url}} hosts Invidious, a private YouTube front-end, meaning it is simply a proxy to access YouTube assets and user generated content without tracking from Google. Thus, all content is proxied from YouTube and is not stored on our servers and if YouTube chooses to remove an asset, it will no longer appear on our site. I see you are filing a claim for {{invidious instance url}}. {{invidious instance url}} hosts Invidious, a private YouTube front-end, meaning it is simply a proxy to access YouTube assets and user generated content without tracking from Google. Thus, all content is proxied from YouTube and is not stored on our servers and if YouTube chooses to remove an asset, it will no longer appear on our site.
Our {{server hosting}} {{invidious instance url}} is hosted in the European Union, so the European Union's laws apply. Under the directive 2001/29/EC of the European Parliament and of the Council of 22 May 2001 on the harmonization of certain aspects of copyright and related rights in the information society, "temporary acts of reproduction referred to in Article 2, which are transient or incidental [and] an integral and essential part of a technological process and whose sole purpose is to enable: a transmission in a network between third parties by an intermediary" is allowed, and legal. Our {{server hosting}} {{invidious instance url}} is hosted in the European Union, so the European Union's laws apply. Under the directive 2001/29/EC of the European Parliament and of the Council of 22 May 2001 on the harmonization of certain aspects of copyright and related rights in the information society, "temporary acts of reproduction referred to in Article 2, which are transient or incidental [and] an integral and essential part of a technological process and whose sole purpose is to enable: a transmission in a network between third parties by an intermediary" is allowed, and legal.
As such, all takedown requests must be sent to YouTube, as we don't have any control on the data that they have on their servers. As such, all takedown requests must be sent to YouTube, as we don't have any control on the data that they have on their servers.