forked from Dash-Industry-Forum/dash.js
-
Notifications
You must be signed in to change notification settings - Fork 0
PoC: SGAI alternative cmcd #157
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Draft
cotid-qualabs
wants to merge
357
commits into
development
Choose a base branch
from
sgai/alternative-cmcd
base: development
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Draft
Changes from all commits
Commits
Show all changes
357 commits
Select commit
Hold shift + click to select a range
98c91c9
Remove blank spaces
sebastianpiq 0f5e770
Merge pull request #57 from qualabs/mpd-lists/fix-only-duration-perio…
sebastianpiq 955d8ff
basic test case for debugging
cotid-qualabs 238352d
Add constant for the deafaul earliest resolution time offset
sebastianpiq 779ef4b
Merge pull request #52 from qualabs/alternative/earliestResolutionTim…
sebastianpiq 24ec616
basic test case for debugging
cotid-qualabs d86e3dc
remove unused variables
cotid-qualabs bf5016b
regular periods trigger manifest update event test case WIP
cotid-qualabs 2b8e133
quote fix
cotid-qualabs c6d2480
WIP
cotid-qualabs aa6e60f
WIP
cotid-qualabs aa075b2
WIP
cotid-qualabs fbe8b49
WIP
cotid-qualabs d4792ba
WIP
cotid-qualabs bdee174
remove baseurl parameter from listmpd dummy helper
cotid-qualabs 70f3981
Implement loadLinkedPeriod unit tests
sebastianpiq cfdca5b
list mpd unit test cases
cotid-qualabs 1b35170
Fix bug period duration precedence
sebastianpiq 9afd91d
Now ProgramInformation is no longer override by the imported MPD
tatiana-perera b6abe51
Merge pull request #60 from qualabs/mpd-lists/bug-programinformation-…
cotid-qualabs 118d6df
bug: fix typo on CoreEvents name
cotid-qualabs 3a31f8b
Merge pull request #59 from qualabs/mpd-lists/unit-test
cotid-qualabs 1a304fb
Merge pull request #63 from qualabs/mpd-lists/importedMpdLoaded-typo
cotid-qualabs 4b7fa75
Merge mpd level essentaial and suplemental properties to linked perio…
sebastianpiq 167ce54
Resolve minor code review comments
sebastianpiq 35612d2
Undo manifestLoader as a singleton
sebastianpiq cb29ea9
Merge development into mpd-lists branch
sebastianpiq 91f9c66
Fix sample json
sebastianpiq 26af4a5
[MpdLists] Fix merge imported profiles issue (#66)
sebastianpiq 1c29fec
Merge pull request #67 from qualabs/mpd-lists/review-changes
cotid-qualabs 2321e23
Merge branch 'development' into feature/mpd-lists
sebastianpiq 4880a6b
Fix code formatting
sebastianpiq 437210b
Update dashjs path in to the list mpd demo
sebastianpiq c609b9f
Handle empty manifest profiles to prevent errors during parsing
sebastianpiq 5fa9745
Merge branch 'development' into feature/alternative-media-presentations
emilsas 53661d7
Rename 'startAtPlayhead' to 'startWithOffset' in AlternativeMpd and r…
sebastianpiq d30c20d
Fix typos and rename some methods (#103)
sebastianpiq ea03de7
Merge branch 'development' into feature/mpd-lists
sebastianpiq aadfd4f
Merge branch 'development' into feature/mpd-lists
sebastianpiq bfc2218
Fix: update minEarliestResolutionTimeOffset to 0
sebastianpiq 5eaeece
Merge pull request #102 from qualabs/alternative-mpd/update-startWith…
cotid-qualabs 3894b78
refactor: rename IMPORTED_MPDS_LOADED event to LINKED_PERIOD_FOUND an…
sebastianpiq 4c67920
WIP executeOnce
cotid-qualabs 7366dc8
Fix: reset ListMpdController event listeners during reset
sebastianpiq 08540d7
refactor: encapsulate reset logic in resetInitialSettings and call du…
sebastianpiq a481798
refactor: simplify linked period handling in ManifestUpdater and List…
sebastianpiq e3c4a4e
Fix: validate period ID before seeking to period in StreamController
sebastianpiq 72f789d
refactor: improve linked period identification in StreamController
sebastianpiq 69c856e
refactor: rename linked period event to list MPD found for clarity
sebastianpiq 3b7cd8f
WIP
cotid-qualabs 5d29012
task/cml-segement-template-util (#4711)
littlespex a6668f7
TypeScript fixes for MediaSettings (#4761)
stschr 3015cd7
Fix errors in JSDoc
dsilhavy 360b691
Stschr/20250424 role main (#4760)
stschr b886c86
Fix build error in network sample (#4767)
dsilhavy 5d9298b
Increase version number to 5.1.0
dsilhavy ca5b06e
fix: fix: allow large ints to be passed in as time values for process…
littlespex 1adf9ee
Change next version number to 5.0.3
dsilhavy 1bfcc77
[VTTParser] Support for lineAlign and positionAlign (#4773)
eduter 47efab3
[TextTracks] Improve performance of addCaptions and fix duplicate che…
eduter 2dfa4f3
add check for schemeIdUri in getIsMain() (#4779)
stschr 103b9c6
Upgrade CML version in network interceptor sample
dsilhavy 4906ee5
Fix regression when setting size of VTT cue (#4780)
dsilhavy fb1661a
fix: Handle falsy values in DescriptorType value property (#4784)
stephanterning 6ffda88
Merge branch 'development' into feature/alternative-media-presentations
sebastianpiq 13d17a9
task/cml-segement-template-util (#4711)
littlespex 2b0c0ae
Fix build error in network sample (#4767)
dsilhavy 3254903
Increase version number to 5.1.0
dsilhavy 02370b0
Change next version number to 5.0.3
dsilhavy 00148c9
Upgrade CML version in network interceptor sample
dsilhavy b9aaeda
Increase version number to 5.1.0
dsilhavy 7f1f596
feature: implement no jump alternative event attribute
sebastianpiq c82f1cf
Merge pull request #106 from qualabs/alternative-media-presentation/n…
cotid-qualabs 75271ae
Remove unnecessary code and comments
sebastianpiq bf62c90
Remove unnecesary white space
sebastianpiq ef3f338
refactor: remove unused resetAlt functions from Stream and StreamCont…
sebastianpiq b35d5eb
Merge branch 'feature/alternative-media-presentations' into alternati…
sebastianpiq 7d9cc16
feat: add executeOnce property to AlternativeMpd and update related l…
sebastianpiq 82a582a
refactor: remove executeOnce property from alternativeMpd in DashMani…
sebastianpiq 50a898d
refactor: improve readability by adding comments to skip logic in eve…
sebastianpiq 759a251
Merge pull request #105 from qualabs/alternative-media-presentation/e…
cotid-qualabs a76affe
feature: add no jump attributes and refactor event handling logic
sebastianpiq e801b16
refactor: update no jump attributes and clean up event handling logic
sebastianpiq 94d2412
refactor: update noJump condition to use constant for better readability
sebastianpiq 8346e30
Merge pull request #109 from qualabs/alternative-media-presentations/…
cotid-qualabs 5b2adbd
feature: add STATUS repeat and update
sebastianpiq de365a2
Merge branch 'feature/alternative-media-presentations' into alternati…
sebastianpiq 96b93f7
refactor: simplify condition checks for scheduled events in Alternati…
sebastianpiq 2cde079
Merge pull request #111 from qualabs/alternative-media-presentations/…
cotid-qualabs 72e93be
Move parse event logic from the event recived to the player time updated
sebastianpiq d24d68a
Refactor eventController to handle earliestResolutionTimeOffset and r…
sebastianpiq 0ec11d4
Remove unnecessary console log from _onAlternativeEventTriggered func…
sebastianpiq 7a3a542
refactor: remove prebufferedEvents and streamline prebuffering logic
sebastianpiq 41e4274
fix: ensure video elements are inserted into the DOM only if parentNo…
sebastianpiq 161ea40
fix: include event object in EVENT_READY_TO_RESOLVE trigger and adjus…
sebastianpiq 323b32d
fix: include event object in EVENT_READY_TO_RESOLVE trigger and adjus…
sebastianpiq a5dac1c
feat: implement noJump event handling and refactor event triggering l…
sebastianpiq 08050a4
feat: enhance noJump event handling and refactor related logic
sebastianpiq 051acf9
fix: reorder conditions in _canEventRetrigger to improve clarity and …
sebastianpiq 74be18f
feat: add playback seeking event handling to prevent false event trig…
sebastianpiq 27168b2
feat: implement logic to determine the first event in a sequence for …
sebapique 46aee3a
feat: add executeOnce handling
sebapique f3561f9
refactor: remove unused constants and clean up event handling logic
sebapique d821539
tests
sebapique fc12b2a
refactor: remove unnecessary tests
sebastianpiq e5333fd
refactor: remove unnecessary tests
sebastianpiq 70ca4cd
Implement alternativeMpdController unit tests
sebastianpiq 46eb407
feat: add mock utilities for AlternativeMpdController testing
sebastianpiq e51d9e2
Fix event resolution time offset
sebastianpiq 268add0
refactor: remove debug log for resolution time calculation
sebastianpiq 701fe33
refactor: Implement media manager
sebastianpiq 2902846
Add sample page
sebastianpiq 3743525
Implement alternative preload
sebastianpiq 74f8aac
refactor: Clean up MediaManager prebuffered content handling
sebastianpiq dc3bb19
fix: adapt switch back logic for live to live
sebastianpiq 15f49a0
refactor: Event controller supports alternative events (#126)
sebastianpiq 3adb4e8
add alternative content start and end events
cotid-qualabs c0679f5
add vod to vod insert and replace functional tests
cotid-qualabs 8a32cc4
insert manifest fix
cotid-qualabs ca3338f
Merge branch 'feature/alternative-media-presentations' of github.com:…
cotid-qualabs a33627a
refactor: Rename realMaxDuration to calculatedMaxDuration and encapsu…
sebastianpiq d8f509c
Merge branch 'feature/alternative-media-presentations' into alternati…
sebastianpiq 5a2673f
add live to vod replace functional test
cotid-qualabs 654bc94
add vod to live
cotid-qualabs 45d6047
add vod to live
cotid-qualabs ff5a6b6
add complete alterantive duration verification
cotid-qualabs b8c7c41
add insert vod to live
cotid-qualabs 8cfcf2f
alternative replace vod manifest cleanup
cotid-qualabs feb415d
add complete alterantive duration to live to vod
cotid-qualabs d913269
variable rename
cotid-qualabs 92578b4
file renames
cotid-qualabs 4ffe120
vector name update
cotid-qualabs 6b2d78c
add live to live
cotid-qualabs 060e165
executeOnce functional test case
cotid-qualabs 9a6c2d4
refactor: Move event handling logic in the MediaManager into the Alte…
sebapique c5ebb05
test case rename
cotid-qualabs e2f791d
simplify replace live test case
cotid-qualabs 3852a27
Implemented live content with alternative live content playback (#129)
sebastianpiq 16c0ef7
Merge branch 'feature/alternative-media-presentations' of github.com:…
cotid-qualabs 22d9045
extend tolerance for live content
cotid-qualabs b276809
test: Add unit tests for AlternativeMediaController with MediaManager…
sebapique e7bf699
refactor: Replace console logging with logger in AlternativeMediaCont…
sebapique f5d1de1
test: crete unit test for switchBackToMainContent logic
sebapique 5d4ca6f
refactor: Enhance MediaManagerMock with improved event handling and r…
sebapique 4c7ead2
Merge branch 'feature/alternative-media-presentations' into alternati…
sebapique 8069607
remove unnecssary changes
sebapique 13a2cc9
Merge pull request #130 from qualabs/alternative-media-presentations/…
cotid-qualabs 6b4c916
Merge pull request #128 from qualabs/alternative-media-presentations/…
cotid-qualabs 7d2029b
Fix mediaManager don't set the configs property
sebastianpiq 6211d8d
fix: modify _onAlternativePlaybackTimeUpdated to use a cloned event o…
sebapique 339ce3a
feat: add setAlternativeVideoElement method to manage alternative vid…
sebastianpiq 302d324
feat: add logging for prebuffering start in MediaManager
sebastianpiq 20e3d8a
executeOnce bugfix (#132)
cotid-qualabs 8eb7f7d
refactor: remove redundant config setting for alternative video element
sebastianpiq 17a6e4a
refactor: remove redundant config setting for alternative video element
sebastianpiq 8e27e27
feat: implement alternative video element support and update related …
sebastianpiq 29bddb2
fix: rename test case
cotid-qualabs b1e1deb
replace functional test use getCurrentTime
cotid-qualabs a5ef275
Merge pull request #133 from qualabs/alternative-media-presentations/…
cotid-qualabs be466f2
add init for alternative media method into the functional tests dash …
sebastianpiq 852a74b
Merge pull request #134 from qualabs/alternative-media-presentations/…
cotid-qualabs 991f292
feat: add setAlternativeVideoElement unit test
sebastianpiq 1e0048e
fix debug import in the MediaManager
sebastianpiq 40dd8f9
refactor: streamline MediaManager instance creation in tests
sebastianpiq c270d1c
feat: add context variable to MediaManager constructor
sebastianpiq dd2cf07
fix: ensure MediaManager is initialized in beforeEach
sebastianpiq 1884d4c
test: add getAlternativePlayer test for the MediaManager and fix swit…
sebastianpiq 1fe5d55
fix: update expectation in getAlternativePlayer test to check for und…
sebastianpiq 079e650
test: remove 'only' from getAlternativePlayer tests to ensure all tes…
sebastianpiq ed82fa9
refactor: clean up comments in getAlternativePlayer test for clarity
sebastianpiq da35d11
test: add unit test for switchToAlternativeContent and prebufferAlter…
sebastianpiq 686e271
test: implement switch back to main content unit test
sebastianpiq 8fdbd8d
test: Improve MediaManager unit test and add switchBackToMain contet …
sebastianpiq 3224608
add presentation time validation to replace vod
cotid-qualabs 7bf503c
add presentation time validation to insert vod
cotid-qualabs e8256ce
Merge pull request #136 from qualabs/media-manager-unit-test/set-alte…
cotid-qualabs 90541aa
Merge branch 'alternative-media-presentations/media-manager-unit-test…
sebastianpiq 04f67e0
Revert "Merge branch 'alternative-media-presentations/media-manager-u…
sebastianpiq 9de7d08
Merge pull request #137 from qualabs/media-manager-unit-test/prebuffe…
cotid-qualabs 34ec73d
Merge branch 'alternative-media-presentations/media-manager-unit-test…
sebastianpiq caac29e
Merge pull request #138 from qualabs/media-manager-unit-test/switch-b…
cotid-qualabs d093ed8
Merge branch 'feature/alternative-media-presentations' into alternati…
sebastianpiq 80ff9ee
Fix formatting of alternative video element in index.html
sebastianpiq d6b27f6
Merge pull request #135 from qualabs/alternative-media-presentations/…
cotid-qualabs 456e20c
feat: Implement live to live switch back
sebastianpiq a909d2f
fix: Correct variable name typo in EventController and remove console…
sebastianpiq c871f7f
Merge pull request #139 from qualabs/alternative-media-presentations/…
cotid-qualabs 6594b70
Alternative media presentations/clip functional test (#140)
cotid-qualabs 16416f2
feat: Add EVENT_UPDATED constant and implement event update handling …
sebastianpiq 70e0ebe
Fix max duration calculation on update event
sebastianpiq 57adcc2
Merge pull request #143 from qualabs/alternative-media-presentations/…
cotid-qualabs b68b73f
Alternative MPD live to live sample page (#144)
cotid-qualabs 465f9a2
[Alternative media presentations] Playback ended event (#141)
cotid-qualabs 7095cc9
add returnOffset functional test (#142)
cotid-qualabs 1d8f5fd
Add alternative live to live status update functional test (#145)
cotid-qualabs d758cf3
Add Listen Mode sample and update samples.json with new entry
sebastianpiq f3931c8
Add setAlternativeVideoElement as optional and fix issue restarting t…
sebastianpiq 735ab95
remove unnecessary parameter in addManifestResponseInterceptor
sebastianpiq 36d6359
Merge pull request #147 from qualabs/alternative-media-presentations/…
cotid-qualabs 942efd1
Update alternative media presentations sample and remove obsolete man…
sebastianpiq 8355665
Modify alternative media presentations sample HTML file
sebastianpiq 80f2acb
Update href for Alternative Media Presentations sample to point to th…
sebastianpiq 1ef1b90
Merge branch 'development' into feature/alternative-media-presentations
sebastianpiq ecea7ad
Merge branch 'development' into feature/mpd-lists
sebastianpiq 04d9524
fix: validate availabilityEndTime in manifest merging process
sebastianpiq 7683769
refactor: remove handling of 'No Content' response in manifest loading
sebastianpiq dfc2a40
Merge branch 'feature/mpd-lists' into svgai/alternative-mpd
sebastianpiq 7a9cff6
feat: implement CMCD v2 functionality
cotid-qualabs c705138
feat: implement CMCD v2 functionality
cotid-qualabs 0f176e5
remove unused function
cotid-qualabs 7686d5a
Update src/dash/vo/EventTarget.js
cotid-qualabs 7c18173
cmcdvs parameters unit test
cotid-qualabs 1a99341
Merge branch 'cmcdv2/cmcd-parameters' of github.com:qualabs/dash.js i…
cotid-qualabs 4a03341
event mode with body transmission mode only
cotid-qualabs d31f31f
Merge branch 'feature/cmcdv2' of github.com:qualabs/dash.js into cmcd…
cotid-qualabs 9e85839
remove url encode from body transmission mode
cotid-qualabs b0d7b5b
add editable configs to cmcd sample page
cotid-qualabs 1c21946
add src input to cmcd v2 sample page
cotid-qualabs f0535b6
Merge branch 'feature/cmcdv2' of github.com:qualabs/dash.js into sgai…
cotid-qualabs 59fa0ba
create provider for CMCDParameters lazy loading
cotid-qualabs 81c49c9
Merge branch 'feature/cmcdv2' of github.com:qualabs/dash.js into sgai…
cotid-qualabs c99dd37
Merge branch 'feature/cmcdv2' of github.com:qualabs/dash.js into cmcd…
cotid-qualabs 08a24db
fix unit tests
cotid-qualabs 60e88a0
add batch config from mpd
cotid-qualabs 41bd934
Cmcdv2/cmcd parameters (#156)
cotid-qualabs 397b857
add eventtarget enabled default value and batch properties parsing
cotid-qualabs 00ee005
Merge branch 'cmcdv2/cmcd-parameters' of github.com:qualabs/dash.js i…
cotid-qualabs e49fb7e
chore: CMCDv2 migration to CMCD Reporter (#159)
cotid-qualabs b98750f
Cmcdv2: keys compliance check (#160)
cotid-qualabs c0ee7ec
feat: update CML dependencies
littlespex 1105f92
Merge branch 'feature/cmcdv2' of github.com:qualabs/dash.js into cmcd…
cotid-qualabs c854850
Merge branch 'feature/cmcdv2' of github.com:qualabs/dash.js into sgai…
cotid-qualabs 75d9b3e
Merge branch 'cmcdv2/cmcd-parameters' of github.com:qualabs/dash.js i…
cotid-qualabs 62f99af
fix race condition on cmcd contrller for cmcd parameters
cotid-qualabs 371ee99
Merge branch 'feature/cmcdv2' of github.com:qualabs/dash.js into sgai…
cotid-qualabs 72787f9
Feature/cmcdv2 update (#162)
littlespex 4a49e72
Merge branch 'feature/cmcdv2' of github.com:qualabs/dash.js into sgai…
lucabenvenuto d9ccbe1
fix listen mode for vod content
cotid-qualabs 6821c3e
feat(cmcd): prioritize settings over manifest for sid/cid resolution
lucabenvenuto 1433150
feat(cmcd): expose getCmcdSessionId, getCmcdContentId, rebuildReporte…
lucabenvenuto 900e8a9
feat(media-player): add getCmcdSessionId, getCmcdContentId, refreshCm…
lucabenvenuto 6d74e01
feat(media-manager): propagate main player CMCD sid/cid to alternativ…
lucabenvenuto f875fbc
feat(alternative-media): add AD_START/AD_END events, per-ad lifecycle…
lucabenvenuto 831c023
feat(cmcd): wire AD_START/AD_END/AD_BREAK_START/AD_BREAK_END to CMCD …
lucabenvenuto 044b657
fix(cmcd-model): call cmcdConfig.reset() on teardown
lucabenvenuto 79b944a
fix: check if cid and sid providers are functions before calling
lucabenvenuto 91e1c1b
test: add unit tests for CMCD propagation and AD_START/AD_END lifecycle
lucabenvenuto c656fc1
Merge branch 'sgai/alternative-cmcd' of github.com:qualabs/dash.js in…
lucabenvenuto e13b9c1
fix: move manifest as first priority for sessionID
lucabenvenuto 4ff2766
fix: parse events' string ids, use eventControllerRefreshDelay when f…
lucabenvenuto File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Oops, something went wrong.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Many of the new methods in the
CmcdModelinterface useanyas a parameter type. While this works, it reduces the benefits of TypeScript's static type checking. Consider using more specific types where possible. For example:onStateChange(state: string): void;(or an enum for states)onPlayerError(errorData: DashJSError): void;onPlaybackRateChanged(data: { playbackRate: number }): void;onManifestLoaded(data: { manifest: object }): void;This will improve type safety and make the API easier to use correctly.