Á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
d8a14b0a45
fix(DASH): Fix playback after DASH period eviction ( #7603 )
...
Fixes https://github.com/shaka-project/shaka-player/issues/7516 in a
simpler way
Reverts
https://github.com/shaka-project/shaka-player/commit/5eff0384d04e22a971336c90aae0a83db2a451d5
Reverts
https://github.com/shaka-project/shaka-player/commit/037193c2d601e02c8611a4527dcb04d32adbbd27
2024-11-15 13:23:40 +01:00
ncocaign
5eff0384d0
fix(DASH): Fix playback after DASH period eviction ( #7519 )
...
With this change, closeSegmentIndex() of all streams of a removed period
are defered in StreamingEngine.onUpdate_()
Fixes #7516
2024-11-13 19:14:15 +01:00
Álvaro Velad Galván
5024184363
feat: Enable audio groups by default ( #7549 )
...
This fixes the audio selection in Shaka Player History live stream
Related to https://github.com/shaka-project/shaka-player/pull/5620
2024-11-06 13:20:30 +01:00
Gregory McGarry
c9f7723d23
feat: Support Fairplay DRM in DASH manifest. ( #7454 )
...
Support Fairplay DRM for DASH, specifying the license server in the
manifest using dashif:Laurl.
2024-10-24 09:36:35 +02:00
Gregory McGarry
669b7b3829
fix: calculations of channel count for DASH AudioChannelConfiguration elements. ( #7421 )
...
Fix tag:dolby.com,2014:dash:audio_channel_configuration:2011 scheme to
correctly handle bits that represent channel pairs according to document
at
[dolby.com](https://ott.dolby.com/OnDelKits/DDP/Dolby_Digital_Plus_Online_Delivery_Kit_v1.5/Documentation/Content_Creation/SDM/help_files/topics/ddp_mpeg_dash_c_mpd_auchlconfig.html )
Add tag:dolby.com,2015:dash:audio_channel_configuration:2015 scheme
according to ETSI TS 103 190-2 v1.2.1, Annex G.3
Test stream is available here:
[manifest.mpd](https://content.media24.link/ac4_512/manifest.mpd )
2024-10-21 09:23:57 +02:00
Joey Parrish
d81c9cb369
test: Deduplicate platform support check ( #7450 )
...
This deduplicates a platform support check that was run in
player_integration.js, and declares the pre-existing central support map
in an extern so we can clean up its use.
This stops a DRM integration test from timing out on FirefoxWindows. It
still gets skipped, though, due to a failing Widevine check, so there
will be follow-on work for that.
Issue #7449
2024-10-21 09:21:56 +02:00
Álvaro Velad Galván
e7229fbc18
fix(DASH): Allow mixing SegmentTemplate-SegmentTimeline with SegmentTemplate-numbering ( #7286 )
...
Fixes https://github.com/shaka-project/shaka-player/issues/7192
2024-09-12 09:45:29 +02:00
Wojciech Tyczyński
c541b1c9b4
fix(DASH): Use presentationTimeOffset in EventStream ( #7282 )
...
Fixes #7277
2024-09-11 11:03:33 +02:00
Álvaro Velad Galván
d5ed8edaf5
feat(DASH): Disable xlink processing by default ( #7264 )
...
Since xlink processing is slow and very few streams use it, it is best
to disable this functionality by default to improve performance
especially on STB or SmartTV devices.
2024-09-05 12:05:43 +02:00
Álvaro Velad Galván
7b07614532
feat: Add manifest.disableIFrames config ( #7255 )
2024-09-04 16:14:13 +02:00
Álvaro Velad Galván
cb5aae47c0
feat(DASH): Support trick-mode per resolution ( #7224 )
2024-08-28 14:59:40 +02:00
Wojciech Tyczyński
b2502fd0a0
fix(DASH): Fix MPD Patch when SegmentTemplate is shared between Representations ( #7218 )
...
Fixes #7214
2024-08-28 13:29:10 +02:00
Iragne
0f2cea42ee
fix(DASH): Patch manifest Adaptationset indexing, @n=<Numbering> and @t=<time> ( #7131 )
...
Fixes https://github.com/shaka-project/shaka-player/issues/7128
2024-08-20 15:02:52 +02:00
theodab
5723a2bbe4
feat(preload): Add isPreload to net filter context ( #7170 )
...
Fixes #7160
---------
Co-authored-by: Álvaro Velad Galván <ladvan91@hotmail.com >
2024-08-19 23:50:20 -07:00
theodab
b4e04b6616
feat: Store bandwidth info inside references. ( #6825 )
...
Issue #6725
---------
Co-authored-by: Álvaro Velad Galván <ladvan91@hotmail.com >
2024-07-23 14:32:09 +02:00
Álvaro Velad Galván
a5adb39713
feat(DASH): Support Annex I: Flexible Insertion of URL Parameters ( #7086 )
...
Resolves https://github.com/shaka-project/shaka-player/issues/6472
2024-07-23 08:49:22 +02:00
Álvaro Velad Galván
3390a967d9
test: Reduce test execution times ( #7083 )
...
Integration testing times are reduced to the minimum necessary to test
the functionality instead of a generic one.
2024-07-22 14:09:50 +02:00
Álvaro Velad Galván
3cb40bf516
feat(DASH): Add support for urn:mpeg:dash:ssr:2023 with SegmentTemplate $Number$ ( #6745 )
2024-07-09 09:27:51 +02:00
Álvaro Velad Galván
5849e2579d
feat(DASH): Support DVB fonts with relative urls ( #6974 )
2024-07-03 20:22:48 +02:00
Álvaro Velad Galván
789101cbba
feat(DASH): Add DVB Font downloads ( #6971 )
2024-07-02 20:52:29 +02:00
Álvaro Velad Galván
3e45e66af2
fix(DASH): Allow play when SegmentTimeline has a duration 0 "S" element ( #6896 )
...
Fixes https://github.com/shaka-project/shaka-player/issues/6889
2024-06-25 09:21:00 +02:00
Wojciech Tyczyński
8a678f374d
feat(Stats): Add manifestGapCount to stats ( #6804 )
...
Resolves #6789
2024-06-13 09:41:57 +02:00
Álvaro Velad Galván
c866d7b467
feat(HLS): Allow disable streams when the media playlist fails ( #6807 )
2024-06-13 09:32:09 +02:00
Wojciech Tyczyński
65b0b8dd21
feat(Stats): Add manifestPeriodCount to stats ( #6798 )
...
Resolves #6788
2024-06-12 08:37:01 +02:00
Wojciech Tyczyński
2f3a1ebf94
feat(DASH): add MPD_PATCH advanced request type ( #6787 )
...
Add `shaka.net.NetworkingEngine.AdvancedRequestType.MPD_PATCH` to
distinguish regular MPD requests from MPD Patch requests.
2024-06-11 10:56:14 +02:00
Álvaro Velad Galván
600c87158a
test: Add DASH ClearKey integration test ( #6736 )
...
Related to https://github.com/shaka-project/shaka-player/issues/6710
2024-06-03 11:05:37 +02:00
Álvaro Velad Galván
2ec64442e2
feat(HLS): Add support for EXT-X-DATERANGE ( #6718 )
...
Closes https://github.com/shaka-project/shaka-player/issues/3523
2024-06-03 10:10:39 +02:00
Álvaro Velad Galván
9060ab0a34
feat(DASH): Parse and use target latency ( #6683 )
...
Related to https://github.com/shaka-project/shaka-player/pull/6193
Thanks to @gkatsev
2024-05-29 09:45:09 +02:00
Dave Nicholas
d38aabf04d
feat(DASH): Add MPD Patch support ( #5247 )
...
Closes https://github.com/shaka-project/shaka-player/issues/2228
---------
Co-authored-by: Wojciech Tyczyński <wojciech.tyczynski@sky.uk >
2024-05-29 08:11:28 +02:00
Álvaro Velad Galván
329d42ad56
feat: Parse colorGamut and use it in MCap ( #6663 )
2024-05-24 08:59:06 +02:00
Álvaro Velad Galván
82c5149375
feat(DASH): Add MPD Chaining support ( #6641 )
...
Close https://github.com/shaka-project/shaka-player/issues/3926
2024-05-21 09:57:16 +02:00
Álvaro Velad Galván
c6c39dfafc
feat: Add encryptionScheme to shaka.extern.DrmInfo ( #6480 )
...
Related to https://github.com/shaka-project/shaka-player/issues/1419
2024-04-26 06:49:15 +02:00
Álvaro Velad Galván
9ad9c94291
chore: Add backwards compatibility for "Remove DOM Parser" ( #6453 )
...
Backwards compatibility for https://github.com/shaka-project/shaka-player/pull/6063
2024-04-18 09:03:26 -07:00
theodab
1da5da9790
fix(DASH): Fix support for multi-mimeType variants ( #6348 )
...
A previous PR, #5950 , added support for variants that contain multiple
different codecs.
It was supposed to also add support for variants with multiple
mimeTypes, but that part didn't work correctly. This reworks a lot of
#5950 and #6047 , to change how they handle such complicated variants.
This has the side-effect of allowing the stream utils to differentiate
between content that has multiple codecs because of type changes, and
content that has multiple codecs because of being muxed video+audio.
Fixes #6010
---------
Co-authored-by: Álvaro Velad Galván <ladvan91@hotmail.com >
2024-04-10 02:48:57 -07:00
Álvaro Velad Galván
07a32419d3
feat(DASH): Add signalling the last segment number in Period ( #6416 )
...
Closes https://github.com/shaka-project/shaka-player/issues/2430
Test stream:
http://dash.akamaized.net/dash264/TestCasesIOP41/LastSegmentNumber/1/manifest_last_segment_num.mpd
2024-04-09 09:35:53 +02:00
Wojciech Tyczyński
4a0d1ca06f
fix(DASH): Fix precision issue on some platforms ( #6258 )
...
When recalculations of period end are made, it is possible that we will not be able to find last segment from period on low precision platforms. To mitigate it, try to use cached value of `periodEnd_` whenever possible.
Issue observed on Xbox One & Xbox Series.
2024-02-20 10:23:06 -08:00
Álvaro Velad Galván
47602c6f5e
feat!: Remove com.adobe.primetime keysystem ( #6189 )
...
`com.adobe.primetime` is not implemented in any browser and no one has
reported any problems in the 8 years of Shaka Player.
2024-01-30 20:02:44 +01:00
Iragne
a3320707b9
fix(DASH): Update dash manifest when minimumUpdatePeriod = 0 ( #6187 )
...
Fixes https://github.com/shaka-project/shaka-player/issues/6185
2024-01-30 15:57:02 +01:00
Dave Nicholas
7116a34ec2
feat!: Remove DOM Parser ( #6063 )
...
## Background:
The native DOM Parser can perform poorly on some older devices, this
approach is faster on newer devices but is considerably better on older
devices.
This PR replaces the usage of the DOM Parser for DASH, MSS, VTT and
TTML.
The draw back of this approach that it does not include any validation
at the cost of better performance.
2024-01-22 08:39:06 +01:00
Álvaro Velad Galván
8f453c245f
feat(DASH): Add support for location in Content Steering ( #5914 )
...
According to
https://github.com/Dash-Industry-Forum/Dash-Industry-Forum.github.io/files/11722876/DASH-IF-CTS-001-1.0.0.pdf ,
Location elements can have serviceLocation, so we need support it.
2023-11-22 23:02:01 +01:00
Dave Nicholas
d8aa24f41d
fix(DASH): Segments being fetched out of the range of the timeline ( #5889 )
...
Fixes: https://github.com/shaka-project/shaka-player/issues/3952
2023-11-16 09:48:12 +01:00
Álvaro Velad Galván
1c6f1fa7b3
feat(DASH): Add support for Content Steering in AdaptationSet BaseURL ( #5884 )
...
Related to https://github.com/shaka-project/shaka-player/issues/5704
2023-11-15 08:59:47 +01:00
Álvaro Velad Galván
42f491f782
feat(DASH): Add support for Content Steering ( #5710 )
...
Related to https://github.com/shaka-project/shaka-player/issues/5704
2023-11-09 08:34:09 +01:00
Álvaro Velad Galván
508e5cfbba
feat(DASH): Add initial support for "urn:mpeg:dash:ssr:2023" ( #5762 )
2023-11-03 14:57:15 +01:00
Álvaro Velad Galván
5f94a6253b
feat(DASH): Add support for minimum values in service descriptions ( #5844 )
...
Closes https://github.com/shaka-project/shaka-player/issues/5780
2023-11-02 17:53:39 +01:00
theodab
4425dca283
chore: Remove state engine ( #5752 )
...
The state engine mechanism, designed for the player class, was
over-engineered. The structure of the class makes debugging player
errors unnecessarily annoying, by obfuscating the code-path the error
followed, and in general
has created a significant amount of technical debt.
This changes the player to use an async-await setup for the top-level
operations, laying things out much more cleanly
and linearly.
---------
Co-authored-by: Álvaro Velad Galván <ladvan91@hotmail.com >
2023-10-30 23:59:08 -07:00
Álvaro Velad Galván
f8438df7b0
fix(DASH): Handle minimumUpdatePeriod=0 with urn:mpeg:dash:event:2012 (EMSG) ( #5823 )
2023-10-28 08:52:20 +02:00
Casey Occhialini
c02cceeeca
fix: seeking in segment timeline returns incorrect index ( #5716 )
...
Resolves #5664
2023-10-03 16:37:59 -07:00
Álvaro Velad Galván
adb1aca180
test: Stop correctly DASH parser ( #5715 )
2023-10-03 17:48:11 +02:00