Tracking de l'application VApp (IHM du jeu)
This commit is contained in:
BIN
VApp/node_modules/@videojs/http-streaming/docs/images/sources/bitrate-switching-1.graffle
generated
vendored
Normal file
BIN
VApp/node_modules/@videojs/http-streaming/docs/images/sources/bitrate-switching-1.graffle
generated
vendored
Normal file
Binary file not shown.
BIN
VApp/node_modules/@videojs/http-streaming/docs/images/sources/bitrate-switching-2.graffle
generated
vendored
Normal file
BIN
VApp/node_modules/@videojs/http-streaming/docs/images/sources/bitrate-switching-2.graffle
generated
vendored
Normal file
Binary file not shown.
BIN
VApp/node_modules/@videojs/http-streaming/docs/images/sources/bitrate-switching-3.graffle
generated
vendored
Normal file
BIN
VApp/node_modules/@videojs/http-streaming/docs/images/sources/bitrate-switching-3.graffle
generated
vendored
Normal file
Binary file not shown.
BIN
VApp/node_modules/@videojs/http-streaming/docs/images/sources/bitrate-switching-4.graffle
generated
vendored
Normal file
BIN
VApp/node_modules/@videojs/http-streaming/docs/images/sources/bitrate-switching-4.graffle
generated
vendored
Normal file
Binary file not shown.
BIN
VApp/node_modules/@videojs/http-streaming/docs/images/sources/containers.graffle
generated
vendored
Normal file
BIN
VApp/node_modules/@videojs/http-streaming/docs/images/sources/containers.graffle
generated
vendored
Normal file
Binary file not shown.
119
VApp/node_modules/@videojs/http-streaming/docs/images/sources/dash-playlist-loader-pc-mg-sequence.puml
generated
vendored
Normal file
119
VApp/node_modules/@videojs/http-streaming/docs/images/sources/dash-playlist-loader-pc-mg-sequence.puml
generated
vendored
Normal file
@ -0,0 +1,119 @@
|
||||
@startuml
|
||||
|
||||
header DashPlaylistLoader sequences
|
||||
title DashPlaylistLoader sequences: Main Manifest with Alternate Audio
|
||||
|
||||
Participant "PlaylistController" as PC #red
|
||||
Participant "MainDashPlaylistLoader" as MPL #blue
|
||||
Participant "mainSegmentLoader" as SL #blue
|
||||
Participant "AudioDashPlaylistLoader" as APL #green
|
||||
Participant "audioSegmentLoader" as ASL #green
|
||||
Participant "external server" as ext #brown
|
||||
Participant "mpdParser" as parser #orange
|
||||
Participant "mediaGroups" as MG #purple
|
||||
Participant Tech #lightblue
|
||||
|
||||
== Initialization ==
|
||||
|
||||
PC -> MPL : construct MainPlaylistLoader
|
||||
PC -> MPL: load()
|
||||
|
||||
== Requesting Main Manifest ==
|
||||
|
||||
MPL -> MPL : start()
|
||||
|
||||
MPL -> ext: xhr request for main manifest
|
||||
ext -> MPL : response with main manifest
|
||||
|
||||
MPL -> parser: parse manifest
|
||||
parser -> MPL: object representing manifest
|
||||
|
||||
note over MPL #lightblue: trigger 'loadedplaylist'
|
||||
|
||||
== Requesting Video Manifest ==
|
||||
|
||||
note over MPL #lightblue: handling loadedplaylist
|
||||
MPL -> MPL: media(x)
|
||||
|
||||
alt if no sidx
|
||||
note over MPL #lightgray: zero delay to fake network request
|
||||
else if sidx
|
||||
break
|
||||
MPL -> ext: request sidx
|
||||
end
|
||||
end
|
||||
|
||||
note over MPL #lightblue: trigger 'loadedmetadata' on main loader [T1]
|
||||
|
||||
note over MPL #lightblue: handling 'loadedmetadata'
|
||||
|
||||
opt vod and preload !== 'none'
|
||||
|
||||
MPL -> SL: playlist()
|
||||
MPL -> SL: load()
|
||||
|
||||
end
|
||||
|
||||
== Initializing Media Groups, Choosing Active Tracks ==
|
||||
|
||||
MPL -> MG: setupMediaGroups()
|
||||
MG -> MG: initialize()
|
||||
|
||||
== Initializing Alternate Audio Loader ==
|
||||
|
||||
MG -> APL: create child playlist loader for alt audio
|
||||
|
||||
MG -> MG: activeGroup and audio variant selected
|
||||
MG -> MG: enable activeTrack, onTrackChanged()
|
||||
MG -> ASL: reset audio segment loader
|
||||
|
||||
== Requesting Alternate Audio Manifest ==
|
||||
|
||||
MG -> MG: startLoaders()
|
||||
|
||||
MG -> APL: load()
|
||||
APL -> APL: start()
|
||||
APL -> APL: zero delay to fake network request
|
||||
|
||||
break finish pending tasks
|
||||
MG -> Tech: add audioTrack
|
||||
MPL -> PC: setupSourceBuffers_()
|
||||
MPL -> PC: setupFirstPlay()
|
||||
|
||||
loop mainSegmentLoader.monitorBufferTick_()
|
||||
SL -> ext: requests media segments
|
||||
ext -> SL: response with media segment bytes
|
||||
end
|
||||
end
|
||||
|
||||
APL -> APL: zero delay over
|
||||
APL -> APL: media(x)
|
||||
|
||||
alt if no sidx
|
||||
note over APL #lightgray: zero delay to fake network request
|
||||
else if sidx
|
||||
break
|
||||
MPL -> ext: request sidx
|
||||
end
|
||||
end
|
||||
|
||||
== Requesting Alternate Audio Segments ==
|
||||
|
||||
note over APL #lightblue: trigger 'loadedplaylist'
|
||||
note over APL #lightblue: handling 'loadedplaylist'
|
||||
APL -> ASL: playlist()
|
||||
|
||||
|
||||
note over ASL #lightblue: trigger 'loadedmetadata' [T2]
|
||||
note over APL #lightblue: handling 'loadedmetadata'
|
||||
APL -> ASL: playlist()
|
||||
APL -> ASL: load()
|
||||
|
||||
loop audioSegmentLoader.monitorBufferTick_()
|
||||
|
||||
ASL -> ext: requests media segments
|
||||
ext -> ASL: response with media segment bytes
|
||||
|
||||
end
|
||||
|
||||
@enduml
|
21
VApp/node_modules/@videojs/http-streaming/docs/images/sources/dash-playlist-loader-states.nomnoml.txt
generated
vendored
Normal file
21
VApp/node_modules/@videojs/http-streaming/docs/images/sources/dash-playlist-loader-states.nomnoml.txt
generated
vendored
Normal file
@ -0,0 +1,21 @@
|
||||
#title: DASH Playlist Loader States
|
||||
#arrowSize: 0.5
|
||||
#bendSize: 1
|
||||
#direction: down
|
||||
#gutter: 10
|
||||
#edgeMargin: 1
|
||||
#edges: rounded
|
||||
#fillArrows: false
|
||||
#font: Arial
|
||||
#fontSize: 10
|
||||
#leading: 1
|
||||
#lineWidth: 2
|
||||
#padding: 20
|
||||
#spacing: 50
|
||||
#stroke: #33322E
|
||||
#zoom: 1
|
||||
|
||||
#.label: align=center visual=none italic
|
||||
|
||||
[HAVE_NOTHING] load()-> [HAVE_MAIN_MANIFEST]
|
||||
[HAVE_MAIN_MANIFEST] media()-> [HAVE_METADATA]
|
BIN
VApp/node_modules/@videojs/http-streaming/docs/images/sources/hls-format.graffle
generated
vendored
Normal file
BIN
VApp/node_modules/@videojs/http-streaming/docs/images/sources/hls-format.graffle
generated
vendored
Normal file
Binary file not shown.
BIN
VApp/node_modules/@videojs/http-streaming/docs/images/sources/mp2t-packet-types.graffle
generated
vendored
Normal file
BIN
VApp/node_modules/@videojs/http-streaming/docs/images/sources/mp2t-packet-types.graffle
generated
vendored
Normal file
Binary file not shown.
BIN
VApp/node_modules/@videojs/http-streaming/docs/images/sources/mp2t-structure.graffle
generated
vendored
Normal file
BIN
VApp/node_modules/@videojs/http-streaming/docs/images/sources/mp2t-structure.graffle
generated
vendored
Normal file
Binary file not shown.
114
VApp/node_modules/@videojs/http-streaming/docs/images/sources/playlist-loader-pc-mg-sequence.puml
generated
vendored
Normal file
114
VApp/node_modules/@videojs/http-streaming/docs/images/sources/playlist-loader-pc-mg-sequence.puml
generated
vendored
Normal file
@ -0,0 +1,114 @@
|
||||
@startuml
|
||||
|
||||
header PlaylistLoader sequences
|
||||
title PlaylistLoader sequences: Main Manifest and Alternate Audio
|
||||
|
||||
Participant "PlaylistController" as PC #red
|
||||
Participant "MainPlaylistLoader" as MPL #blue
|
||||
Participant "mainSegmentLoader" as SL #blue
|
||||
Participant "AudioPlaylistLoader" as APL #green
|
||||
Participant "audioSegmentLoader" as ASL #green
|
||||
Participant "external server" as ext #brown
|
||||
Participant "m3u8Parser" as parser #orange
|
||||
Participant "mediaGroups" as MG #purple
|
||||
Participant Tech #lightblue
|
||||
|
||||
== Initialization ==
|
||||
|
||||
PC -> MPL : construct MainPlaylistLoader
|
||||
PC -> MPL: load()
|
||||
|
||||
MPL -> MPL : start()
|
||||
|
||||
== Requesting Main Manifest ==
|
||||
|
||||
MPL -> ext: xhr request for main manifest
|
||||
ext -> MPL : response with main manifest
|
||||
|
||||
MPL -> parser: parse main manifest
|
||||
parser -> MPL: object representing manifest
|
||||
|
||||
note over MPL #lightblue: trigger 'loadedplaylist'
|
||||
|
||||
== Requesting Video Manifest ==
|
||||
|
||||
note over MPL #lightblue: handling loadedplaylist
|
||||
MPL -> MPL : media()
|
||||
|
||||
MPL -> ext : request child manifest
|
||||
ext -> MPL: child manifest returned
|
||||
|
||||
MPL -> parser: parse child manifest
|
||||
parser -> MPL: object representing the child manifest
|
||||
|
||||
note over MPL #lightblue: trigger 'loadedplaylist'
|
||||
note over MPL #lightblue: handleing 'loadedplaylist'
|
||||
|
||||
MPL -> SL: playlist()
|
||||
MPL -> SL: load()
|
||||
|
||||
== Requesting Video Segments ==
|
||||
|
||||
note over MPL #lightblue: trigger 'loadedmetadata'
|
||||
note over MPL #lightblue: handling 'loadedmetadata'
|
||||
|
||||
opt vod and preload !== 'none'
|
||||
|
||||
MPL -> SL: playlist()
|
||||
MPL -> SL: load()
|
||||
|
||||
end
|
||||
|
||||
MPL -> MG: setupMediaGroups()
|
||||
|
||||
== Initializing Media Groups, Choosing Active Tracks ==
|
||||
|
||||
MG -> APL: create child playlist loader for alt audio
|
||||
|
||||
MG -> MG: activeGroup and audio variant selected
|
||||
MG -> MG: enable activeTrack, onTrackChanged()
|
||||
MG -> SL: reset mainSegmentLoader
|
||||
|
||||
== Requesting Alternate Audio Manifest ==
|
||||
|
||||
MG -> MG: startLoaders()
|
||||
|
||||
MG -> APL: load()
|
||||
APL -> APL: start()
|
||||
|
||||
APL -> ext: request alt audio media manifest
|
||||
|
||||
break finish pending tasks
|
||||
MG -> Tech: add audioTracks
|
||||
MPL -> PC: setupSourceBuffers()
|
||||
MPL -> PC: setupFirstPlay()
|
||||
|
||||
loop on monitorBufferTick
|
||||
SL -> ext: requests media segments
|
||||
ext -> SL: response with media segment bytes
|
||||
end
|
||||
end
|
||||
|
||||
ext -> APL: responds with child manifest
|
||||
|
||||
APL -> parser: parse child manifest
|
||||
parser -> APL: object representing child manifest returned
|
||||
|
||||
== Requesting Alternate Audio Segments ==
|
||||
|
||||
note over APL #lightblue: trigger 'loadedplaylist'
|
||||
note over APL #lightblue: handling 'loadedplaylist'
|
||||
APL -> ASL: playlist()
|
||||
|
||||
note over APL #lightblue: trigger 'loadedmetadata'
|
||||
note over APL #lightblue: handling 'loadedmetadata'
|
||||
APL -> ASL: playlist()
|
||||
APL -> ASL: load()
|
||||
|
||||
loop audioSegmentLoader.load()
|
||||
|
||||
ASL -> ext: requests media segments
|
||||
ext -> ASL: response with media segment bytes
|
||||
end
|
||||
|
||||
@enduml
|
25
VApp/node_modules/@videojs/http-streaming/docs/images/sources/playlist-loader-states.nomnoml.txt
generated
vendored
Normal file
25
VApp/node_modules/@videojs/http-streaming/docs/images/sources/playlist-loader-states.nomnoml.txt
generated
vendored
Normal file
@ -0,0 +1,25 @@
|
||||
#title: Playlist Loader States
|
||||
#arrowSize: 0.5
|
||||
#bendSize: 1
|
||||
#direction: down
|
||||
#gutter: 10
|
||||
#edgeMargin: 1
|
||||
#edges: rounded
|
||||
#fillArrows: false
|
||||
#font: Arial
|
||||
#fontSize: 10
|
||||
#leading: 1
|
||||
#lineWidth: 2
|
||||
#padding: 20
|
||||
#spacing: 50
|
||||
#stroke: #33322E
|
||||
#zoom: 1
|
||||
|
||||
#.label: align=center visual=none italic
|
||||
|
||||
[HAVE_NOTHING] load()-> [HAVE_MAIN_MANIFEST]
|
||||
[HAVE_MAIN_MANIFEST] media()-> [SWITCHING_MEDIA]
|
||||
[SWITCHING_MEDIA] media()/ start()-> [HAVE_METADATA]
|
||||
|
||||
[HAVE_METADATA] <--> [<label> mediaupdatetimeout]
|
||||
[<label> mediaupdatetimeout] <--> [HAVE_CURRENT_METADATA]
|
Reference in New Issue
Block a user