-
Notifications
You must be signed in to change notification settings - Fork 2.6k
v0.13.0 Release Plan & Test Matrix
John Bartos edited this page Sep 4, 2019
·
32 revisions
- Emit SEI packets with resolution payloadType 5 in
FRAG_PARSING_USERDATA
events #2126 - Expose Hls.js' bandwidth estimate (in bits per second) via
hls.bandwidthEstimate
getter on the Hls instance #2086 - Allow level capping (
config.capLevelToPlayerSize
) to be dynamically enabled/disabled #1986
- Fix React builds breaking with WebWorkers #2174
- Fix incorrect VTT cue offsets when
X-TIMESTAMP-MAP
is not present #2179 - Fix Hls not choosing the correct startup segment for fmp4 streams #2196
- Fix
info
anddescription
fields being merged in TXXX ID3 frames #2217 - Fix cue positioning in Firefox #2229
- Fix Hls throwing exceptions when trying to load in non-MSE environments #2305
- Fix Hls not playing after loading a stream with alt audio before attaching #2172
- Fix startup stalling caused by alt audio tracks not loading at the correct time #2067
- Fix null console reference when using the
logger
class in WebWorkers (affects Tizen 2.3) #2095 - Fix RangeError exceptions ("Source is too large") when remuxing TS #2096
- Fix ID3 timestamps causing exceptions in IE/Edge #2120
- Huge strides have been made towards converting the codebase to TypeScript: #2144 #2130 #2129 #2119 #2107 #2106 #2097 #2076 #2075 #2073
- Remove IE8 code #2128
- Fix a bunch of ESLint warnings #2116
OS | Browser | Basic Playback 1 | Live 2 | Captions 3 | ID3 4 | Alt Audio 5 | 5 |
---|---|---|---|---|---|---|---|
Desktop (MacOS/Windows) | Firefox |
|
|
|
|
|
|
Desktop (MacOS/Windows) | Chrome |
|
|
|
|
|
|
Android | Chrome |
|
|
|
|
|
|
Windows | IE11 |
|
|
|
|
|
|
Windows | Edge 18 |
|
|
|
|
|
- Tests for specific features/fixes
- Basic playback (mostly automated)
- Live (not automated)
- ID3
- TS changes (could be covered by other suites)
- Safari smoke test
- Bundle analysis
- Test with existing TS definitions
Things to look out for:
- Console warnings
- Console errors
- HLS errors
- Especially internal exceptions
1 Test 1 Steps (Basic Playback):
- Begin playback
- Assert that playback begins at the configured start time (default 0)
- Unless otherwise noted, Hls.js should not seek on startup (e.g. to skip a gap)
- Allow Hls.js to play for at least three segments
- Assert that playback continues smoothly and without issue
- Switch renditions
- Test switching using both the Current Level and Next Level API
- Assert that Hls.js switches renditions smoothly and without issue
- Seek to at most three segments from the end
- Unless otherwise noted, Hls.js should begin playback immediately (e.g. it should not try to skip a gap)
- Allow the stream to end
- Assert that Hls.js has signaled end of stream
- video.ended should be true
- BUFFER_EOS should have been fired
- There should be no more network requests from Hls.js (check the Network tab)
2 Test 2 Steps (Live):
- Begin playback
- Assert that playback begins at the default time (default 3 segment lengths)
- Allow playback to continue for at least one minute
- Assert that playback continues smoothly and without issue
- Switch renditions
- Assert that Hls.js switches renditions smoothly and without issue
- Allow playback to continue for at least one minute
- Assert that playback continues smoothly and without issue
- Stop playback
- Assert that Hls.js does not download media while paused
3 Test 3 Steps (Captions):
- Begin playback
- Enable any captions track
- Assert that captions are displayed
- Allow playback to continue
- Assert that the correct cue is displayed at the corresponding time
- VTT files can be inspected for the cue time
- Seek forwards
- Assert that the correct cue is displayed, and that the previous cue is no longer showing
4 Test 4 Steps (ID3):
- Set up Hls.js
- Attach a FRAG_PARSING_USERDATA to the Hls.js instance
- Begin playback
5 Test 5 Steps:
- Step 1
- Step 2