a0f315be51
feature/hls: Add HLS playback support, and refactors documentation for better usability and maintainability. ( #1 )
...
git-sync-with-mirror / git-sync (push) Successful in 32s
CI / test (push) Successful in 46s
## Overview
This PR introduces HLS playback support, improves the player experience, and refactors documentation for better usability and maintainability.
## Key Features
### HLS Playback Support
- Add HLS integration via new JavaScript assets:
- `hls.min.js`
- `plyr.hls.start.js`
- `watch.hls.js`
- Separate DASH and HLS logic:
- `plyr-start.js` → `plyr.dash.start.js`
- `watch.js` → `watch.dash.js`
- Update templates (`embed.html`, `watch.html`) for conditional player loading
### Native Storyboard Preview
- Add `native_player_storyboard` setting in `settings.py`
- Implement hover thumbnail preview for native player modes
- Add `storyboard-preview.js`
### UI and Player Adjustments
- Update templates and styles (`custom_plyr.css`)
- Modify backend modules to support new player modes:
- `watch.py`, `channel.py`, `util.py`, and related components
### Internationalization
- Update translation files:
- `messages.po`
- `messages.pot`
### Testing and CI
- Add and update tests:
- `test_shorts.py`
- `test_util.py`
- Minor CI and release script improvements
## Documentation
### OpenRC Service Guide Rewrite
- Restructure `docs/basic-script-openrc/README.md` into:
- Prerequisites
- Installation
- Service Management
- Verification
- Troubleshooting
- Add admonition blocks:
- `[!NOTE]`, `[!TIP]`, `[!IMPORTANT]`, `[!WARNING]`, `[!CAUTION]`
- Fix log inspection command:
```bash
doas tail -f /var/log/ytlocal.log
````
* Add path placeholders and clarify permission requirements
* Remove legacy and duplicate content
Reviewed-on: #1
Co-authored-by: Astounds <kirito@disroot.org >
Co-committed-by: Astounds <kirito@disroot.org >
2026-04-20 01:22:55 -04:00
Jesus E
e54596f3e9
Partially fix age restricted videos
...
Does not work for videos that require decryption because
decryption is not working (giving 403) for some reason.
Related invidious issue for decryption not working:
https://github.com/iv-org/invidious/issues/3245
Partial fix for #146
2023-05-28 21:30:51 -04:00
James Taylor
dcd4b0f0ae
Fix exception when _captions_base_url is not present
...
Signed-off-by: Jesús <heckyel@hyperbola.info >
2022-03-30 00:37:43 +08:00
James Taylor
9d0be82e74
Always extract from html watch page to get base.js url
...
Youtube removed the url from the pbj responses. They are now
only in the html page. Replaces previous fix for the missing
base.js issue.
2020-12-12 23:11:54 -08:00
James Taylor
6443cedf62
Retrieve base.js url from html watch page when it's missing
...
Fixes failure mode 3 in #22
2020-12-09 17:08:12 -08:00
James Taylor
aa3e5aa441
Add dialog for copying urls to external player for livestreams
...
Also for livestreams which are over whose other sources
aren't present or aren't ready yet.
2020-06-28 17:52:24 -07:00
James Taylor
7c2736aa26
Check for 403 errors and fallback on Invidious
...
403 errors on the video urls happen typically when a video has copyrighted content or was livestreamed originally. They appear to not happen (or at least happen less frequently) if the Tor exit node used ipv6, however.
2020-02-01 15:09:37 -08:00
James Taylor
6b7a1212e3
Extraction: Move non-stateful signature decryption functionality into yt_data_extract
2019-12-19 21:28:21 -08:00
James Taylor
d1d908d5b1
Extraction: Move html post processing stuff from yt_data_extract to util
2019-12-19 19:48:53 -08:00
James Taylor
76376b29a0
Extraction: Split yt_data_extract.py into multiple files
2019-12-19 19:29:47 -08:00