Commit Graph

65 Commits

Author SHA1 Message Date
Fijxu
f248024b65 Merge squash 'unixfox:invidious-companion':
commit a5acddefa92c454fced4a9176df10dc85efdb516
Author: Emilien <4016501+unixfox@users.noreply.github.com>
Date:   Mon Dec 30 22:25:13 2024 +0100

    missing ,

commit 84b87bedadbd4d35190b1f4d6b3e4fc1abf2440a
Author: Emilien <4016501+unixfox@users.noreply.github.com>
Date:   Mon Dec 30 22:19:45 2024 +0100

    fixing format

commit bfaf72b3038c3c8cad6d5e68f9f2ad3a49c2a9fc
Author: Emilien <4016501+unixfox@users.noreply.github.com>
Date:   Mon Dec 30 21:52:34 2024 +0100

    skip proxy for invidious companion

commit f550359ae941d84cdaee0a966ed332354ef18f42
Author: Emilien <4016501+unixfox@users.noreply.github.com>
Date:   Mon Dec 30 21:52:07 2024 +0100

    !empty? to present?

commit e9c354d5a34df636306b1819dd17fff9e01b1a1e
Author: Émilien (perso) <4016501+unixfox@users.noreply.github.com>
Date:   Tue Dec 24 17:43:54 2024 +0000

    Better doc for invidious_companion_key

commit 0dba7675a2c1d51988b3f2911a9fb3a1f91bae52
Author: Émilien (perso) <4016501+unixfox@users.noreply.github.com>
Date:   Tue Dec 24 16:18:58 2024 +0000

    Better document private_url and public_url

commit 1de20546182421e1280ec2b68c6d347abead7c54
Author: Emilien <4016501+unixfox@users.noreply.github.com>
Date:   Fri Dec 13 20:08:57 2024 +0100

    add ability for invidious companion to check request from invidious

commit ab72bbad7afb7d143883a7d0610145f68c06bac8
Author: Emilien <4016501+unixfox@users.noreply.github.com>
Date:   Sun Dec 8 22:24:57 2024 +0100

    fix ameba Redundant use of `Object#to_s` in interpolation

commit a571eeaa381523f5efb29dea0f5fe097f4f1252c
Author: Emilien <4016501+unixfox@users.noreply.github.com>
Date:   Sun Dec 8 22:22:08 2024 +0100

    format watch.cr

commit f710dd37bf4327748b43067d75025cc915b5639c
Author: Emilien <4016501+unixfox@users.noreply.github.com>
Date:   Sun Dec 8 22:21:10 2024 +0100

    apply all the suggestions + rework invidious_companion parameter

commit 7a070fa710b7807cdda061d413ca9369a0962353
Author: Emilien <4016501+unixfox@users.noreply.github.com>
Date:   Mon Nov 18 12:30:37 2024 +0100

    invidious companion always used so always add CSP and redirect latest_version

commit 1f51edd0b915ca64df7f195aa271f74c7ef093cb
Author: Emilien <4016501+unixfox@users.noreply.github.com>
Date:   Mon Nov 18 12:22:23 2024 +0100

    fix linting

commit 734e72503f88f9741279ab385e86f5d2b340c71b
Author: Emilien <4016501+unixfox@users.noreply.github.com>
Date:   Sun Nov 17 19:18:29 2024 +0100

    fix download function when invidious companion used

commit bb2e3b2a3e5f53610b9dd602f8507303ec641450
Author: Emilien <4016501+unixfox@users.noreply.github.com>
Date:   Sun Nov 17 12:26:35 2024 +0100

    crystal handle decompression already by itself

commit b51770dbdbdcca04d04849d37e5f11ce20948c73
Author: Emilien <4016501+unixfox@users.noreply.github.com>
Date:   Sat Nov 16 23:00:48 2024 +0100

    fix linting + use .empty?

commit 9f846127aea9b4f392acb062d662fff2cc58d1d0
Author: Emilien <4016501+unixfox@users.noreply.github.com>
Date:   Sat Nov 16 22:38:00 2024 +0100

    fixing "end" misplacement

commit 1aa154b9787eddcdee960d06aed4c1c91f17c1c3
Author: Emilien <4016501+unixfox@users.noreply.github.com>
Date:   Sat Nov 16 22:33:28 2024 +0100

    separate invidious_companion logic + better config.yaml config

commit ff3305d52175c517b035d79b3c0c6a84809cbd0f
Author: Emilien <4016501+unixfox@users.noreply.github.com>
Date:   Fri Nov 8 21:05:17 2024 +0100

    move config checks for invidious companion

commit 409df4cff3cc69c5565a12feb307441eed36f937
Author: Émilien (perso) <4016501+unixfox@users.noreply.github.com>
Date:   Tue Nov 5 15:50:59 2024 +0100

    modify the description for config.example.yaml about invidious companion

commit 27b24f51abcccd1c68f4dc1c29c0c62ca26e604c
Author: Émilien (perso) <4016501+unixfox@users.noreply.github.com>
Date:   Tue Nov 5 15:31:45 2024 +0100

    Remove debug puts functions

    Co-authored-by: syeopite <70992037+syeopite@users.noreply.github.com>

commit 1c9f5b0a2b38ad94fb8972764ffae98df1e41dc9
Author: Émilien (perso) <4016501+unixfox@users.noreply.github.com>
Date:   Tue Nov 5 15:31:21 2024 +0100

    Use sample instead of Random.rand

    Co-authored-by: syeopite <70992037+syeopite@users.noreply.github.com>

commit 2cc204a0457665f8e334970d7e54b1843a667ab6
Author: Emilien <4016501+unixfox@users.noreply.github.com>
Date:   Fri Nov 1 21:30:58 2024 +0100

    throw error if inv_sig_helper and invidious_companion used same time

commit c612423a4d64f0adbef135074fc55dcc1c362f84
Author: Emilien Devos <4016501+unixfox@users.noreply.github.com>
Date:   Mon Oct 21 01:20:16 2024 +0200

    fixing condition for Content-Security-Policy

commit 195446337159d2cb92b48510af7311fe0cc0f5bb
Author: Emilien Devos <4016501+unixfox@users.noreply.github.com>
Date:   Sun Oct 20 23:53:08 2024 +0200

    fix Shadowing outer local variable `response`

commit 73c84baf9fa6eaf9c5d4981bc199f81306ebe5a2
Author: Emilien Devos <4016501+unixfox@users.noreply.github.com>
Date:   Sun Oct 20 23:51:00 2024 +0200

    redirect latest_version and dash manifest to invidious companion

commit 3dff7a76cf9f64ec70aac0a057a3b0bfa1edfc82
Author: Emilien Devos <4016501+unixfox@users.noreply.github.com>
Date:   Sun Oct 20 02:10:55 2024 +0200

    add support for invidious companion
2024-12-30 18:31:52 -03:00
Fijxu
58c4d8c951 tokens: use http instead of redis to get the tokens
It should be compatible with github.com/iv-org/youtube-trusted-session-generator
2024-12-14 17:15:17 -03:00
Fijxu
3615bbd893 Remove user supplied po_token and visitor_data 2024-11-16 12:07:05 -03:00
Fijxu
9b9efc6841 Merge remote-tracking branch 'upstream/master'
Some checks failed
Invidious CI / build - crystal: ${{ matrix.crystal }}, stable: ${{ matrix.stable }} (1.11.2, true) (push) Has been cancelled
Build and release container directly from master / release (push) Has been cancelled
Invidious CI / build - crystal: ${{ matrix.crystal }}, stable: ${{ matrix.stable }} (1.10.1, true) (push) Has been cancelled
Invidious CI / build - crystal: ${{ matrix.crystal }}, stable: ${{ matrix.stable }} (1.12.1, true) (push) Has been cancelled
Invidious CI / build - crystal: ${{ matrix.crystal }}, stable: ${{ matrix.stable }} (1.13.2, true) (push) Has been cancelled
Invidious CI / build - crystal: ${{ matrix.crystal }}, stable: ${{ matrix.stable }} (1.14.0, true) (push) Has been cancelled
Invidious CI / build - crystal: ${{ matrix.crystal }}, stable: ${{ matrix.stable }} (nightly, false) (push) Has been cancelled
Invidious CI / build-docker (push) Has been cancelled
Invidious CI / build-docker-arm64 (push) Has been cancelled
Invidious CI / lint (push) Has been cancelled
2024-11-13 21:14:26 -03:00
Samantaz Fox
d7c35e6e3d Videos: Stop using TVHTML5_SIMPLY_EMBEDDED_PLAYER (#5063)
The age restriction bypass does not work anymore with this client.
See: https://github.com/iv-org/invidious/issues/2189#issuecomment-2437740627

Related to 2189
2024-11-10 17:45:58 +01:00
Samantaz Fox
ec82c2f539 Videos: use WEB client instead of WEB CREATOR (#4984)
Use the WEB client when a potoken is configured, otherwise try with Android
test suite if there is no potoken configured.

This PR reverts some of the changes made in 4928

Related to 4734
2024-11-10 17:41:54 +01:00
Samantaz Fox
4b363e32fa Parsers: Fix parsing live_now and premiere_timestamp (#4934)
This pull request fixes the parsing for the 'live_now' and 'premiere_timestamp'
variables so that they work without the 'microformat' data being present.

Related to 4929
2024-11-10 17:36:49 +01:00
Émilien (perso)
0f8f32bca8 remove explicit usage of WEB 2024-11-09 22:21:09 +01:00
Emilien
82b1506ccc remove usage of WebEmbeddedPlayer 2024-11-09 22:21:09 +01:00
Emilien
b9ad9bd723 use WEB when po_token + android test suite when no po_token 2024-11-09 22:21:09 +01:00
Émilien (perso)
09ccea1d31 remove usage of TVHTML5_SIMPLY_EMBEDDED_PLAYER 2024-11-08 22:01:23 +01:00
Fijxu
eb2670fe49 Tokens: Refresh po_token and visitor_data every 5 seconds
Closes #11
2024-10-13 15:57:51 -03:00
Fijxu
b5ab49e8e8 Feat: Experimental support for potoken inside redis
Using https://git.nadeko.net/Fijxu/youtube-po-token-generator
2024-10-12 02:04:14 -03:00
Fijxu
8dc0a67be3 Feat: User supplied po_token and visitor_data 2024-10-11 16:50:21 -03:00
Fijxu
cf6c3a7b5b Revert "use WEB_CREATOR when po_token with WEB_EMBED as a fallback (#4928)"
This reverts commit d9df90b5e3.
2024-10-08 19:53:35 -03:00
Samantaz Fox
3cfcc16403 Videos: Convert URL before putting result into cache (#4850)
Closes issue 4837
2024-10-08 17:52:34 +02:00
absidue
b2a83991d1 Fix parsing live_now and premiere_timestamp 2024-09-20 18:46:00 +02:00
Émilien (perso)
a021b93063 Update latest version WEB_CREATOR + fix comment web embed (#4930)
* Update to latest version WEB_CREATOR

* fix comment about using web embed as a fallback
2024-09-20 00:05:41 +00:00
Émilien (perso)
d9df90b5e3 use WEB_CREATOR when po_token with WEB_EMBED as a fallback (#4928)
* use WEB_CREATOR when po_token with WEB_EMBEDDED_PLAYER as a fallback

* remove unrelated comment

Co-authored-by: syeopite <70992037+syeopite@users.noreply.github.com>

---------

Co-authored-by: syeopite <70992037+syeopite@users.noreply.github.com>
2024-09-20 00:19:13 +02:00
Emilien Devos
cec3cfba77 Revert "use web screen embed for fixing potoken functionality (#4923)"
This reverts commit de918b9234.
The code doesn't work as expected. Reverting
2024-09-17 00:22:06 +02:00
Émilien (perso)
de918b9234 use web screen embed for fixing potoken functionality (#4923)
* use web screen embed for fixing potoken functionality

* use web screen embed only for getting streamingData + disable tv screen on po_token
2024-09-16 23:42:43 +02:00
Samantaz Fox
b2133c6b2c Videos: Convert URL before putting result into cache 2024-08-24 18:01:56 +02:00
Emilien Devos
53223f99b0 Add ability to set po_token and visitordata ID 2024-07-24 19:28:47 +02:00
meatball
248df785d7 Update spec and rollback to last commits changes 2024-06-18 20:55:14 +02:00
meatball
04ca64691b Make solution complaint with spec 2024-05-30 22:37:55 +02:00
meatball
5957523624 Improve code quallity 2024-05-30 22:13:30 +02:00
meatball
629599f940 Fix change in parser file 2024-05-30 21:57:15 +02:00
meatball
31ad708206 fix: Handle nil value for genreUcid in Video struct 2024-05-30 21:56:33 +02:00
Samantaz Fox
0ab6d9e748 Videos: Use android test suite client (#4650)
"Temporary" fix, until a better and more permanent solution is found.

Closes issue 4584
2024-04-26 23:54:24 +02:00
Samantaz Fox
c94c6f4b83 Remove legacy proxy code (#4570)
Also fixes the build on nightly as the offending code was removed.

Related to
https://github.com/iv-org/invidious/pull/4270#issuecomment-1858876952
2024-04-26 23:44:47 +02:00
Samantaz Fox
f1fd197cbc API: convey info "is post live" from Youtube response (#4569)
Returns the 'isPostLiveDvr' field in the videos API when the video
is a post-live DVR (= ended livestream that hasn't been reprocessed
into VOD yet).

Example taken 10 minutes after that livestream ended:
/api/v1/videos/euqnWk-uP6M

{
  ...
  "isPostLiveDvr": true,
  ...
}

Partially fixes 4421
2024-04-26 23:44:30 +02:00
Samantaz Fox
48ad864572 Videos: Add support for new likes format (#4462)
YouTube added a new format for like data in December 2023.
This PR adds support for parsing saod new format.

Related: LuanRT/YouTube.js issue 557

Closes 4419
2024-04-26 23:30:30 +02:00
Samantaz Fox
33f316c864 Videos: Remove AndroidScreenEmbed client 2024-04-26 23:15:34 +02:00
Samantaz Fox
be291e8f0f Videos: Copy captions over between responses 2024-04-26 22:33:08 +02:00
Samantaz Fox
7f3ddad12e Videos: Use android test suite client 2024-04-26 22:03:59 +02:00
syeopite
990931ff67 Remove legacy proxy code 2024-04-07 11:08:12 -07:00
ChunkyProgrammer
bfd9c9876e Parse if video is post live dvr and include it in API 2024-04-07 10:26:33 -04:00
Brahim Hadriche
1a2d408d38 Update shorts params 2024-03-31 11:37:13 -04:00
ChunkyProgrammer
5ceeefa236 add support for new likes format 2024-03-01 23:45:29 -05:00
syeopite
438467f69a Add playback success rate to /api/v1/stats (#4085)
* Add stats-based /videoplayback blockage status

* Count when YouTube returns wrong video as failure

* Cast playback stats hash type prior to return

* Bump stats refresh timer to 10 minutes
2023-11-04 13:52:30 +00:00
Émilien (perso)
0e4d3d89fc update params for fetching stream data (#4156)
* update params for fetching stream data

* Remove link about special parameter
2023-10-20 08:48:56 +02:00
syeopite
6b17bb5250 Regression from #4037 | Fix storyboards
PR #4037 introduced a workaround around YouTube's new integrity checks
on streaming URLs. However, the usage of this workaround prevents
storyboard data from being returned by InnerTube.

This commit fixes that by only using the workaround when calling try_fetch_streaming_data
2023-08-08 15:28:01 -07:00
syeopite
2f6b2688bb Use workaround for fetching streaming URLs
YouTube appears to be A/B testing some new integrity checks. Adding the
parameter "CgIQBg" to InnerTube player requests appears to workaround
the problem

See https://github.com/TeamNewPipe/NewPipeExtractor/pull/1084
2023-08-06 12:22:22 -07:00
Emilien Devos
8e4833d21a temp explanation about video not available issue 2023-06-11 16:54:30 +02:00
chunky programmer
1b10446e5e move url parsing to utils method 2023-04-30 18:58:39 -04:00
Samantaz Fox
adc605024f Videos: Add support for attributed descriptions (#3701) 2023-04-10 17:54:22 +02:00
ChunkyProgrammer
f840addd93 Fix error when song title is missing from the track 2023-03-27 22:10:28 -04:00
techmetx11
49ddf8b6bd Added attributed description support 2023-03-23 05:10:21 +00:00
Samantaz Fox
8a44bd11d2 Videos: Fix 0 views and empty license field (#3557) 2023-03-20 19:15:12 +01:00
Samantaz Fox
4ae158ef6d Videos: Add back support for views on livestreams 2023-03-19 22:44:59 +01:00