Commit Graph

344 Commits

Author SHA1 Message Date
Joey Parrish 7efd589378 docs: Fix typo (#8598) 2025-05-12 09:35:53 -07:00
xiao 724b0b2a71 feat: new TextDisplayer implementation to allow selecting subtitles via native API and controls (#8520)
Close https://github.com/shaka-project/shaka-player/issues/8519
Fixes https://github.com/shaka-project/shaka-player/issues/8475

Introduce `NativeTextDisplayer` as a replacement of
`SimpleTextDisplayer`. But keep them both work.
Is MSE mode, `NativeTextDisplayer` creates `<track>` elements for text
streams. And listens to change events on both ends to keep them in sync.
In SRC mode, `NativeTextDisplayer` would do nothing, the player uses
original TextTracks instead.

Advantages of `NativeTextDisplayer`:
- Allow text track selection using the browser built-in UI
- Allow text track manipulation using native APIs
- Avoid transferring and processing cues in SRC mode

---------

Co-authored-by: Álvaro Velad Galván <ladvan91@hotmail.com>
2025-05-07 12:58:29 +02:00
Álvaro Velad Galván ba56bae473 feat: Add getChaptersAsync method (#8541)
This allows the segmentIndex to be created if it is not already created
and also allows operation with CastProxy.
2025-05-06 07:55:53 +02:00
v-nova-romas 0692ec1d5c test: Add LCEVC SEI tests (#8209)
This PR adds LCEVC SEI tests to Shaka Player. It plays an LCEVC SEI
content for 6 seconds and checks LCEVCdec public APIs to verify that
LCEVC is enabled and LCEVC data was found in SEI.
2025-04-09 11:50:20 +02:00
loicraux 8cd2c019b8 feat(Offline): Allow no timeout when opening IndexedDB database (#8372)
This is the followup to the previous PR #8366 , to allow to disable the
timeout, as per @avelad
[suggestion](https://github.com/shaka-project/shaka-player/pull/8366#issuecomment-2766660785)
to add this in another PR...

---------

Co-authored-by: Loïc Raux <loicraux@gmail.com>
Co-authored-by: Álvaro Velad Galván <ladvan91@hotmail.com>
Co-authored-by: Wojciech Tyczyński <tykus160@gmail.com>
2025-04-01 16:01:24 +02:00
Álvaro Velad Galván 5752a21b0f feat(Offline): Make timeout for opening IndexedDB configurable (#8366)
Close https://github.com/shaka-project/shaka-player/issues/8355
2025-04-01 11:47:33 +02:00
Álvaro Velad Galván 09bf1cf3d7 chore(docs): Update screen resolution detection for Tizen (#8360)
Related to https://github.com/shaka-project/shaka-player/issues/8356
2025-03-31 11:52:53 +02:00
Álvaro Velad Galván 36db472d93 feat(net): Add networking config (#8306) 2025-03-21 10:20:38 +01:00
Álvaro Velad Galván c8747ab0b8 feat: Move caption scaling from css to new textDisplayer.fontScaleFactor config (#8242)
Fixes
https://github.com/shaka-project/shaka-player/pull/8215#issuecomment-2711266477
2025-03-12 13:16:48 +01:00
Gary Katsevman 3c789eca42 docs: update drm robustness docs (#8247)
This change was prompted by #8239 as it was missed during the original
PR https://github.com/shaka-project/shaka-player/pull/7753
2025-03-12 08:35:51 +01:00
David HM Morgan 18695c6c23 feat: Text font scaling customisation ability (#8215)
With reference to #8025, this is a partial proposal to see if this style
of extensible customisation could be favourable to the shaka-player
community:

Proposal for some accessibility options whereby an App builder can
customise subtitle/caption size, with the potential of an App offering
accessibility options for text size.

This style could be used for other text styling attributes in a similar
way, but this is just the first step.

---------

Co-authored-by: Álvaro Velad Galván <ladvan91@hotmail.com>
2025-03-06 13:44:49 +01:00
Álvaro Velad Galván c2ce68fba8 feat: Move shaka.util.FairPlayUtils to shaka.drm.FairPlay (#8217) 2025-03-06 12:43:49 +01:00
Joshua Hull 31b32d3d24 feat(FairPlay): Add support for Mux (#8201)
This adds support for FairPlay DRM license requests for Mux.io

Close https://github.com/shaka-project/shaka-player/issues/8202
2025-03-04 11:26:36 +01:00
Álvaro Velad Galván 324b1212de fix(FairPlay): Install by default shaka.polyfill.PatchedMediaKeysApple on older Safari versions (#8106) 2025-02-19 10:20:56 +01:00
Álvaro Velad Galván eb70461752 docs: Update DRM tutorial with latest features (#8107)
Co-authored-by: Joey Parrish <joeyparrish@users.noreply.github.com>
2025-02-19 06:35:33 +01:00
Álvaro Velad Galván 201f632ed8 docs: Update retry documentation (#8076)
Related to
https://github.com/shaka-project/shaka-player/commit/a30f1da2a2edaa7093676c7d525d6a09f9e75372
2025-02-13 16:31:23 +01:00
Álvaro Velad Galván e344f5d139 feat(Ads): Add double box format ad experience for Custom Overlay Interstitials (#8074) 2025-02-13 13:30:14 +01:00
Álvaro Velad Galván 6bd0afe06d feat(Ads): Add support for L-Shape ad experience (#8051) 2025-02-11 09:04:55 +01:00
Álvaro Velad Galván 046e4aabc0 chore: Update LCEVC decoder to latest version 1.2.0 (#8047) 2025-02-10 13:31:17 +01:00
Wojciech Tyczyński 30f0789c68 docs: Fix design links (#8044)
Regression introduced in #7891
2025-02-10 09:40:30 +01:00
Álvaro Velad Galván f778713e13 feat: Create a new simple API for Audio (#8005)
Close https://github.com/shaka-project/shaka-player/issues/3544

---------

Co-authored-by: Wojciech Tyczyński <tykus160@gmail.com>
2025-02-05 12:16:25 +01:00
Wojciech Tyczyński 0df53d2f9a docs: Improve TextDisplayer documentation (#7919)
Related to #7917
2025-01-22 16:18:30 +01:00
Álvaro Velad Galván e40341c37c fix(Ads): Apply X-PLAYOUT-LIMIT to entire interstitial (#7804)
Fixes https://github.com/shaka-project/shaka-player/issues/7782
2024-12-24 13:38:05 +01:00
Gary Katsevman 88472b3076 feat: add support for multiple robustness levels in drm (#7753)
This changes the `drm.advanced.videoRobustness` and `audioRobustness`
config options from a string to an array of strings. Internally, in the
drm engine, this gets expanded into an array of `DrmInfos` which have
those values as strings.

Best way to review this change is with whitespace turned off in the diff
options.

---------

Co-authored-by: Wojciech Tyczyński <tykus160@gmail.com>
2024-12-23 10:20:24 +01:00
Álvaro Velad Galván 15244793d2 docs: Add FAQ about EXT-X-SESSION-KEY (#7792)
Related to https://github.com/shaka-project/shaka-player/pull/7775
2024-12-23 10:00:11 +01:00
Wojciech Tyczyński 51765e9693 build: Change spellchecking tool and fix spelling mistakes (#7765)
Fixes #7693
2024-12-20 12:27:05 +01:00
Álvaro Velad Galván 6616ff202a feat: Simplify the use of low latency (#7748)
The autoLowLatencyMode config is removed because it's no longer
necessary. Now lowLatencyMode only enable low latency if the stream is
low latency.

A new method is added (configurationForLowLatency) to allow configure
the Low Latency config more easily
2024-12-20 10:27:39 +01:00
Álvaro Velad Galván 775bc4e44c fix(Xbox): Simplify the use of WebView2 (#7743) 2024-12-11 11:16:27 +01:00
Álvaro Velad Galván 5fe303d1b8 docs: Fix missing parameter in "Monetization with Ads" tutorial (#7694) 2024-11-29 11:20:27 +01:00
Álvaro Velad Galván d09cd7ecb2 fix(Ads): Fix unnecessary request when using VAST (#7660)
If the URL does not have an extension, using mimeType allows us to avoid
having to make a HEAD type request
2024-11-25 17:27:58 +01:00
Álvaro Velad Galván 70257ffefe feat(Ads): Add support for overlay interstitials (or non-linear ads) (#7657) 2024-11-25 12:30:33 +01:00
Álvaro Velad Galván a4c4f842e5 docs(Ads): Add new use case to Ads documentation (#7642) 2024-11-22 09:28:35 +01:00
Álvaro Velad Galván 84b64af623 feat: Stop setting playbackRate to 0 to control buffering state when streaming.rebufferingGoal = 0 (#7617)
Close https://github.com/shaka-project/shaka-player/issues/7602
2024-11-20 09:36:22 +01:00
Álvaro Velad Galván 2260aa9cf6 feat: Update usage of minBufferTime according to the DASH spec (#7616)
Related to
https://github.com/shaka-project/shaka-player/issues/7602#issuecomment-2479518970

From 23009-1:

The value of the minimum buffer time does not provide any instructions
to the client on how long
to buffer the media. The value however describes how much buffer a
client should have under
ideal network conditions. As such, MBT is not describing the burstiness
or jitter in the network,
it is describing the burstiness or jitter in the content encoding.
Together with the BW value, it is
a property of the content. Using the "leaky bucket" model, it is the
size of the bucket that makes
    BW true, given the way the content is encoded
2024-11-19 10:47:18 +01:00
Álvaro Velad Galván 3a83e7693f feat: Add new error code for missing EME support (#7596)
Close https://github.com/shaka-project/shaka-player/issues/4495
2024-11-14 18:41:08 +01:00
Álvaro Velad Galván 63ddbc9056 chore(docs): Update FAQ to mention a HLS out of sync on some cases (#7552)
Close https://github.com/shaka-project/shaka-player/issues/7551
2024-11-06 08:51:38 -08:00
Álvaro Velad Galván b9f39926f0 docs: Update documentation about MPD alternate (#7502) 2024-10-25 11:11:59 +02:00
Joey Parrish 2d334407f0 docs: Add a section to the UI tutorial (#7472)
This fixes minor formatting and adds a section with links to a real
example of Shaka UI usage with some unique features.
2024-10-23 08:11:20 +02:00
Álvaro Velad Galván e883fedd69 feat(UI): Added Mute button to context menu and overflow menu (#7439)
Close https://github.com/shaka-project/shaka-player/issues/7407
2024-10-18 18:36:51 +02:00
Álvaro Velad Galván fc4893d538 feat: Remove streaming.parsePrftBox config (#7358)
The site code is changed to use a parser that is always used and thus we
avoid having a configuration that is not necessary.
2024-09-24 20:30:32 +02:00
theodab 099b324f1e docs: Add more detail to preload tutorial. (#7291)
Closes #7290
2024-09-12 10:22:44 +02:00
Mathieu Massicotte, CEP d93a019454 fix(Xbox): Support screen resolution detection on Xbox when using WebView2 (#7144)
Resolves #7141
2024-08-08 11:50:19 -07:00
Álvaro Velad Galván 34a659f94b docs: Update documentation (#7064) 2024-07-19 08:22:34 +02:00
Álvaro Velad Galván 87bf738ece feat(UI): Add chapter button (#7018)
Closes https://github.com/shaka-project/shaka-player/issues/3597
2024-07-11 09:28:31 +02:00
Álvaro Velad Galván 7fcc72c70c docs: Add documentation about screen resolution detection (#6997)
Related to
https://github.com/shaka-project/shaka-player/pull/6988#issuecomment-2211344636
2024-07-08 13:41:21 +02:00
Álvaro Velad Galván aaeafa451c feat(HLS): Deprecate useSafariBehaviorForLive config (#6978) 2024-07-08 09:56:48 +02:00
Álvaro Velad Galván 19cfbf966f feat(UI): Add save video frame button (#6926)
Thank you @tykus160 for your Polish translation!
2024-06-27 14:10:18 +02:00
Álvaro Velad Galván 752df7666f docs: Fix setVideoContainer documentation (#6893)
Related to
https://github.com/shaka-project/shaka-player/issues/6672#issuecomment-2130151079
2024-06-24 12:11:55 +02:00
Álvaro Velad Galván e39defb6f7 feat(Ads): Remove circular dependency (#6868)
To eliminate `* @suppress {missingRequire}` it was necessary to create a
new class with the constants and deprecate the old ones. That's why this
change is feat.
2024-06-20 07:51:58 +02:00
Gary Katsevman 644677ca86 feat(hls): expose manifest skd uri on drmInfo (#6857) 2024-06-19 07:40:26 +02:00