Wojciech Tyczyński
b752f779cf
chore: Reduce same conditions in StreamingEngine ( #8709 )
2025-06-06 16:20:03 +02:00
Wojciech Tyczyński
e8a8ad9fab
perf(net): Do not parse headers twice in XHR plugin ( #8710 )
...
Continuation of #8618
2025-06-06 16:19:54 +02:00
Álvaro Velad Galván
c15e524705
fix: Don't sort TS samples ( #8708 )
...
Fixes https://github.com/shaka-project/shaka-player/issues/8707
2025-06-06 12:14:33 +02:00
Álvaro Velad Galván
53db6554f3
perf: Simplify getAudioTracks internally when using src= ( #8703 )
2025-06-06 09:34:14 +02:00
Álvaro Velad Galván
1c4a20681c
fix: Fix bad assert on DeviceFactory ( #8705 )
2025-06-05 21:34:46 +02:00
Álvaro Velad Galván
79f9960374
docs: Fix texttrackvisibility and trackschanged documentation ( #8704 )
2025-06-05 21:34:29 +02:00
Álvaro Velad Galván
cc98d405af
fix: Fix ts parser when using B-frames ( #8696 )
...
Fixes https://github.com/shaka-project/shaka-player/issues/8691
2025-06-05 13:48:29 +02:00
Álvaro Velad Galván
aab4c27a51
perf: Simplify selectAudioTrack internally ( #8687 )
...
The number of internal operations has been reduced and the function is
now much faster.
2025-06-05 10:21:59 +02:00
Álvaro Velad Galván
863aa073a4
fix(Ads): Fix interstitials when not using multiple media elements ( #8681 )
2025-06-04 15:49:36 +02:00
Álvaro Velad Galván
ff1ef7c262
feat: Add HDR detection in Tizen and WebOS ( #8680 )
...
Close #8441
---------
Co-authored-by: Wojciech Tyczyński <tykus160@gmail.com >
2025-06-04 12:34:59 +02:00
Álvaro Velad Galván
642cecfc0e
fix: Fix PlayReady support on Chromium Windows ( #8683 )
...
Related to https://github.com/shaka-project/shaka-player/pull/8682
2025-06-04 12:34:07 +02:00
Shaka Bot
13abbab7dc
chore(main): release 4.15.0 ( #8260 )
2025-06-03 16:00:19 +02:00
Wojciech Tyczyński
6b976dbcb9
fix(DASH): Fix infinite buffering on end of content ( #8677 )
...
Fixes #8672
2025-06-03 11:36:31 +02:00
David Pfister
b8ff4e9412
fix: Remove active audio channel count from default pref based criteria ( #8674 )
...
Closes https://github.com/shaka-project/shaka-player/issues/8633
Active audio channel count will no longer dictate which variant is
selected in the default preference based criteria implementation
2025-06-02 17:29:08 +02:00
Wojciech Tyczyński
970d7756ea
feat: Add Device API ( #8210 )
...
The goal is to simplify and abstract feature logic detection. Currently
lots of places depend on various calls to `shaka.util.Platform` and
mainteinance of this is hard & not easy to read.
By introducing device API ideally rest of the player logic would look
into device features instead of directly checking platform. Additionally
we can more easily cache needed values, so we won't have to parse user
agent several times anymore.
---------
Co-authored-by: Álvaro Velad Galván <ladvan91@hotmail.com >
2025-06-02 13:46:40 +02:00
Álvaro Velad Galván
3daeac65cd
feat: Add queue manager ( #8649 )
...
Close #8508
---------
Co-authored-by: Wojciech Tyczyński <tykus160@gmail.com >
2025-05-29 12:41:30 +02:00
Álvaro Velad Galván
0feee21e05
chore(CMCD): Preparation for CMCDv2 response mode ( #8659 )
2025-05-29 11:39:58 +02:00
Wojciech Tyczyński
03fd8f9368
chore(DRM): Remove getMediaKeySessions() ( #8661 )
2025-05-28 18:09:38 +02:00
Álvaro Velad Galván
73843fb7fc
chore(CMCD): Preparation for CMCDv2 response mode ( #8657 )
2025-05-28 16:08:18 +02:00
Wojciech Tyczyński
784246b76f
perf: Optimize DRM compatibility check across streams ( #8652 )
...
Do not create new DRM Info objects just for compatibility checks.
2025-05-28 12:57:34 +02:00
Álvaro Velad Galván
602515c6f7
fix: Fix metadata timestamp when using raw segments ( #8654 )
...
Related to https://github.com/shaka-project/shaka-player/issues/8653
2025-05-28 10:53:10 +02:00
Álvaro Velad Galván
c19cbafc10
fix(net): Fix "Payload length does not match range requested bytes" when using open end ( #8651 )
2025-05-27 18:16:56 +02:00
Álvaro Velad Galván
6efaf5310b
feat(Preload): Allow use custom config when creating a PreloadManager ( #8647 )
2025-05-27 09:29:35 +02:00
Wojciech Tyczyński
769ced524d
fix: Use proper method for checking is object an array ( #8644 )
2025-05-26 17:03:44 +02:00
Wojciech Tyczyński
34827b4cb2
perf: Init source buffers synchronously ( #8646 )
2025-05-26 16:26:11 +02:00
Wojciech Tyczyński
c81e9a8c12
perf: Remove redundant collection in Streaming Engine ( #8645 )
2025-05-26 16:23:18 +02:00
Álvaro Velad Galván
81b2ff5390
fix: Fix dispatch complete event when the percentage is greater than 100 ( #8643 )
2025-05-26 12:58:37 +02:00
Álvaro Velad Galván
ccd31aa9d9
fix(HLS): Fix disableAudio and disableVideo when loading a media playlist ( #8642 )
2025-05-22 16:57:50 +02:00
Álvaro Velad Galván
f86245c9cc
feat: Add isVideoOnly method ( #8641 )
...
This new method is used in the UI to remove audio-related components
when they are not needed.
2025-05-22 16:42:21 +02:00
Wojciech Tyczyński
c6b53b38dc
fix(HLS): Do not skip DateRanges based on ID ( #8638 )
...
According to HLS spec, there might be few date ranges with the same ID,
which complement each other (i.e. SCTE35-IN / SCTE35-OUT).
If date ranges are true duplicates (i.e. due to live update) it will be
filter out anyway by `RegionTimeline` logic.
2025-05-22 13:07:44 +02:00
Álvaro Velad Galván
712738df81
chore: Useless warning on UITextDisplayer ( #8637 )
...
Eg: fullscreen is not supported on Tizen, but we want use
UITextDisplayer
2025-05-22 12:42:43 +02:00
Álvaro Velad Galván
b9876625d3
fix: Disable translate of cues when using UITextDisplayer ( #8636 )
2025-05-22 12:04:41 +02:00
Wojciech Tyczyński
9f82d4f6bf
chore: Simplify metadata event handling ( #8632 )
2025-05-21 16:46:43 +02:00
Álvaro Velad Galván
952590e780
fix: Fix getAudioTracks when using remote playback ( #8630 )
2025-05-21 13:24:15 +02:00
Álvaro Velad Galván
dabb562ad7
fix: Allow use isLive, seekRange and isAudioOnly when using remote playback ( #8629 )
2025-05-21 12:40:42 +02:00
Álvaro Velad Galván
79e62bca03
fix: Don't return video tracks when using remote playback ( #8627 )
2025-05-21 11:57:55 +02:00
Álvaro Velad Galván
ce9db86da4
fix: Avoid reset MSE engine when using remote playback ( #8626 )
2025-05-21 11:57:23 +02:00
Álvaro Velad Galván
e1673cd63a
fix: Try to reset MSE on STREAMING_NOT_ALLOWED error ( #8625 )
2025-05-21 11:36:38 +02:00
Wojciech Tyczyński
b2595ced9e
fix(WebOS): Do not throw error during parsing ID3 ( #8623 )
...
`TypedArray.prototype.indexOf` is available since Chrome 45, which means
it's not implemented on WebOS 3 (using Chromium 38). As we extensively
use this method in `Id3Utils` it leads to fatal errors on this platform
whenever we encounter ID3 tags.
For completeness and to prevent errors in the future, I also added
implementations of connected methods: `lastIndexOf` & `includes`.
2025-05-21 10:55:51 +02:00
David Pfister
ce830d71fa
feat: Add additional codec & channel count configs to Adaptation Set Criteria ( #8597 )
...
Close https://github.com/shaka-project/shaka-player/issues/8587
2025-05-21 10:13:47 +02:00
Álvaro Velad Galván
edf5bdcb79
chore(net): Add log about "Payload length does not match range requested bytes" ( #8620 )
2025-05-20 13:56:49 +02:00
Álvaro Velad Galván
cd9c8504a9
perf(net): Avoid parsing headers twice ( #8618 )
2025-05-20 13:56:39 +02:00
Wojciech Tyczyński
ffd048c98d
fix: Do not fire metadataadded event for duplicated cues ( #8617 )
2025-05-20 11:22:15 +02:00
Álvaro Velad Galván
a53f82b07a
fix(HLS): Fix MP4 data segment being parsed as MPEG2-TS ( #8612 )
...
Fixes https://github.com/shaka-project/shaka-player/issues/8610
2025-05-19 13:34:41 +02:00
Vincent Derks
394ed7bed7
fix: Fix garbage-collection issue in safari on mediaCapabilities polyfill ( #8613 )
...
Fixes https://github.com/shaka-project/shaka-player/issues/8607
Fixes https://github.com/shaka-project/shaka-player/issues/8590
2025-05-19 13:30:06 +02:00
Álvaro Velad Galván
5413b5fc4b
fix: Detect screen change to update ABR according HDR vs SDR ( #8606 )
2025-05-15 08:01:05 +02:00
Álvaro Velad Galván
e4fcc943c0
feat: Add canupdatestarttime to allow update the startTime safely ( #8604 )
...
Close https://github.com/shaka-project/shaka-player/issues/8506
Example of use:
```
this.player_.addEventListener('canupdatestarttime', () => {
this.player_.updateStartTime(this.player_.seekRange().start + 300);
});
```
2025-05-14 07:28:05 +02:00
Wojciech Tyczyński
2a063ffad3
chore: Move isBufferedToEnd to Playhead ( #8603 )
2025-05-13 14:48:22 +02:00
Álvaro Velad Galván
3c32f7a049
fix(DASH): Inconsistent DRM across periods when using clearkeys ( #8602 )
...
Fixes #8559
2025-05-13 13:50:08 +02:00
Álvaro Velad Galván
892be53759
fix: Only check key status changes when drm engine is available ( #8589 )
2025-05-13 09:09:40 +02:00