wai-pack's catalogs (W4-3) are to render through these renderers, so they now express everything its Mode N output holds: - render_hls_with writes EXT-X-PLAYLIST-TYPE, EXT-X-INDEPENDENT-SEGMENTS and a header EXT-X-MAP, and EXT-X-GAP before a segment's EXTINF; the reader reads them back, so a classical floor playlist is in the rendered form too; the WAI media playlist takes the classical one's type and independence, never its map, and marks a WaiSegment gap; the playlist receipt's render and extras carry the new members; - render_multivariant writes a classical or a WAI multivariant playlist: a version, independent segments, session-data lines (VALUE or URI), and variants with or without X-WAI-FLOOR; wai_multivariant is its WAI case; - dash::render_mpd writes any static one-period MPD (content type, size, segment alignment, startWithSAP, descriptors, an initialization, a dependency per layer, a timeline per representation); wai_mpd is built on it, with minBufferTime and Period@start in whole seconds as the packager writes them. Where the texts differed, http-delivery decides: a variant's bandwidth counts the layer objects listed with a segment and leaves out gaps (as the packager does; this tree had left layers out), and a WAI1 is listed with n alone, h only for a WAI2 (§5.4). The corpus, the receipts and the Python verifier follow, with a gap playlist and packager-line cases. Co-Authored-By: Claude Opus 5.5 <[email protected]>
12 lines
438 B
Text
12 lines
438 B
Text
#EXTM3U
|
|
#EXT-X-VERSION:7
|
|
#EXT-X-TARGETDURATION:1
|
|
#EXT-X-MEDIA-SEQUENCE:0
|
|
#EXT-X-PLAYLIST-TYPE:VOD
|
|
#EXTINF:0.640,
|
|
../../objects/31abc1da2cdf927191f3f447f68508ead30d078690cb7bea2435ae3d1df5f4f3.wai#n=21034&h=1009
|
|
#EXTINF:0.640,
|
|
../../objects/b7a711ab4b0a0939a561a16b3167039e7fe65c640d73a040ebc5d5cf86e4ecbb.wai#n=18004
|
|
#EXTINF:0.640,
|
|
../../objects/a8ab2cd0cc277ef7109aacdee6bb55ff713aa0d4dc4c2e3dfe40aab759a90133.wai#n=18381
|
|
#EXT-X-ENDLIST
|