Commits
- Commit:
035ab79449be5db836ae24e00d8bfe3317f14ea5
- From:
- Oliver Lowe <o@olowe.co>
- Date:
scte35: early return
Clearer than keeping most of the code indented
- Commit:
fdd78130c167098cab14bc621e8d8960de6c6b7c
- From:
- Oliver Lowe <o@olowe.co>
- Date:
m3u8: de-indent variant parsing common path
Return early with guard statements
- Commit:
440f52398d25a5cddd80cefad5ba8631b5e7eaf7
- From:
- Oliver Lowe <o@olowe.co>
- Date:
scte35: correctly pack AudioChannel
Couple of problems. First we were unnecessarily masking bits. Secondly
we were toggling the wrong bits in the final byte of an encoded audio
channel in an AudioDescriptor.
Resolves: https://github.com/untangledco/streaming/issues/39
- Commit:
62d865db8655e6d23b4fccc3280d73c3cdda8ce9
- From:
- Oliver Lowe <o@olowe.co>
- Date:
m3u8: de-indent happy key, playlist parse path
Everything else are essentially guard statements
- Commit:
3df4029f13d7c363d034d1c5aed186ba947ab8a6
- From:
- Oliver Lowe <o@olowe.co>
- Date:
m3u8: unexport, use consistent timestamp layout
The layout is meant to be used internally; the external interface is
regular time.Time values.
- Commit:
a5e36fbfb60aadd58d7a06c29272251c0a8f8c0e
- From:
- Oliver Lowe <o@olowe.co>
- Date:
m3u8: define segment parsing once
It's a bit of a hack that we read one item too many from the lexer.
This change modifies segment parsing by sending the already consumed
lexer items and subsequent lexer items back through another channel.
Maintaining the original order through a channel means we can parse a
segment in a single loop. Much shorter than dealing with the first
item and all other items separately.
This puts off looking into any redesigns of the lexer. For now...?
- Commit:
093b7480bc7275b0047361f2f87d3992bc71e5ee
- From:
- Oliver Lowe <o@olowe.co>
- Date:
m3u8: document at a high level what DateRange structure is
- Commit:
4c423c95b51ec023fcbd1e8c0dfe8bbcf672c525
- From:
- Oliver Lowe <o@olowe.co>
- Date:
m3u8: include source of playlist
So we all know where it comes from if we want to get more.
- Commit:
3e2200b9e76d35b13e385535acdd87583441afbe
- From:
- Oliver Lowe <o@olowe.co>
- Date:
m3u8: parse EXT-X-PROGRAM-DATE-TIME tag
- Commit:
9d0a9c380ce962f56c141d6db6fdacd7a41bf831
- From:
- Oliver Lowe <o@olowe.co>
- Date:
m3u8: support parsing EXT-X-MAP tag
- Commit:
a30e111bb1d9e62aac3810e51749241f488e046a
- From:
- Oliver Lowe <o@olowe.co>
- Date:
m3u8: support parsing segment keys
- Commit:
1146e3cfa554e40c95835cd5fd7c65eb7afb40aa
- From:
- Oliver Lowe <o@olowe.co>
- Date:
m3u8: add validation to segment parsing tests
Tests fail, but at least we have exposed the bugs
- Commit:
e5a2561859aaf24e6368af6a4e82fc8112bc3d08
- From:
- Oliver Lowe <o@olowe.co>
- Date:
m3u8: ignore trailing commas, support quoted string attributes
Playlist from
https://test-streams.mux.dev/dai-discontinuity-deltatre/manifest.m3u8
containing discontinuities exposed the bugs.
- Commit:
3083e3dd1cb493efa7557138726614b1d3758e81
- From:
- Oliver Lowe <o@olowe.co>
- Date:
m3u8: enable toggling lexer debug output
- Commit:
5b0199e0674b051428672a1460ed5109b3cedadf
- From:
- Oliver Lowe <o@olowe.co>
- Date:
m3u8: add higher-level variant test
We weren't really testing whether variants we parse from a playlist
were what we expect.
References: https://github.com/untangledco/streaming/issues/34
- Commit:
a2109c70b8c1180b4a6b9400e503e37ff4abdda8
- From:
- Oliver Lowe <o@olowe.co>
- Date:
m3u8: test more bad resolutions
We don't necessarily need to make it easier to specify Variant test cases,
we can pick the already easy-to-test bits of Variant to make better.
References: https://github.com/untangledco/streaming/issues/34
- Commit:
18185121cc63011d9f097754c13cdc4cc11fd72b
- From:
- Oliver Lowe <o@olowe.co>
- Date:
avhelp: delete
The idea was to have a little playground using the packages we
developed. But it didn't really turn out to be useful.
- Commit:
c782d7505d2481993f034dc8c80060f1ae176698
- From:
- Oliver Lowe <o@olowe.co>
- Date:
m3u8: parse media sequence in one hit
Since we're just parsing an integer we can just try to parse the next
token from the lexer, like how we parse the playlist version.
- Commit:
2be3531b0dcadd5c29adc1fff94844876de00afe
- From:
- Luiz Henrique Rapatao <rapatao@rapatao.com>
- Via:
- Oliver Lowe <o@olowe.co>
- Date:
m3u8: add support for parsing media sequence from playlist
- Commit:
b3f3a7ccc95f08e87b4df8d758c035e4ef5e0fc5
- From:
- Oliver Lowe <o@olowe.co>
- Date:
readme: green is good
- Commit:
64b08e1e5fe43e66f9ec1e54408492907975b724
- From:
- Oliver Lowe <o@olowe.co>
- Date:
internal/sip: extract containsSpace function
We'll need it later and we're a few nested for loops and if stmts
down so a little cleaner once we do this a few more times.
- Commit:
5740e5eef190ea7e2a372f6c5da31c40910fe507
- From:
- Oliver Lowe <o@olowe.co>
- Date:
sip: handle To, From fields in the header with their own type
Now we handle the tag header parameter, and all the different forms
the values of To and From can have.
- Commit:
ef08e53ee37488a036de6aacf1895d843ab065a0
- From:
- Oliver Lowe <o@olowe.co>
- Date:
sip: validate Via header field on writing requests
- Commit:
707b0c4f5fd7c7acd55fa9e93b8f7344e3e83276
- From:
- Oliver Lowe <o@olowe.co>
- Date:
sip: write body of request only when it's non-nil
duh
- Commit:
f62ba4580683b9231f5608a097aa281961f16c1b
- From:
- Oliver Lowe <o@olowe.co>
- Date:
internal/sip: correctly format and write requests