Vadim Getmanshchuk
02d4d3108f
I audited the spec and implemented enums for all non-binary attributes that are currently implemented:
...
* HDCP-LEVEL
* CLOSED-CAPTIONS
* METHOD
I don't believe we need to add these for binary attributes, that are either YES or NO and the absence means NO.
If you don't believe it's sufficient, feel free to add more enums.
2022-04-17 00:29:02 -07:00
Sebastian Dröge
51fcb70113
Re-export all types from the crate root and remove the playlist sub-module
...
There's not much else in this crate and having it behind another module
decreases visibility.
2021-11-18 15:00:01 +02:00
Sebastian Dröge
3edf5d1c0f
Fix various minor clippy warnings
2021-11-18 14:54:46 +02:00
Sebastian Dröge
a5d8358379
Make most internal parser functions private
...
And move parser internals tests into a test submodule of the parser.
Also add actual assertions to various tests so they test something.
2021-11-18 14:50:14 +02:00
Sebastian Dröge
4e6ac58d0c
Add tests for parsing non-playlist text and binary data
...
These should fail to parse (and not panic), but previously the
non-playlist text succeeded.
2021-11-17 19:22:28 +02:00
Sebastian Dröge
0ed0ce51f8
Migrate to Rust 2018
...
Cleans up some noise.
2021-11-17 16:00:23 +02:00
Sebastian Dröge
81398f86cd
Port to nom 7
...
Fixes https://github.com/rutgersc/m3u8-rs/issues/35
2021-11-17 16:00:08 +02:00
39aab3a2ac
Apply cargo fmt
2021-10-18 11:41:28 +02:00
dc352301a3
Allow unknown tags at the master playlist level
2021-10-14 21:21:03 +02:00
c1ff2b3730
Support parsing of unknown tags on segments
2021-10-12 23:06:47 +02:00
Rutger Schoorstra
c3ef5bc16e
Split code into parser/types
2021-04-24 18:39:25 +02:00
Jan Schmidt
05669cab68
Support multiple session data and key tags.
...
Collect Vecs of session_data and session_key tags to
allow for multiples of each. Doesn't do any validation
as to disallowed duplicated values.
Fixes #20
2021-04-25 00:44:08 +10:00
Jan Schmidt
870ca830d3
SessionData: Must have either VALUE or URI, but not both.
...
If SessionData has a value, don't write the URI and vice-versa.
As per https://tools.ietf.org/html/rfc8216#section-4.3.4.4
EXT-X-SESSION-DATA must have one or the other, not both.
2021-04-25 00:44:08 +10:00
Jan Schmidt
5fe3fc309c
Add HDCP-LEVEL and CHANNELS fields.
...
Add support for parsing / generating HDCP-LEVEL in a VariantStream
and CHANNELS in AlternativeMedia. The fields were added after
draft-pantos-http-live-streaming-19.txt and brings things up to date
with RFC 8216.
2021-04-21 13:44:17 +10:00
3e74f7787f
Expose unknown tags
2021-04-20 19:29:04 +02:00
rutgersc
302ff22f31
Merge pull request #21 from rutgersc/fix/alternatives
...
Move alternatives to MasterPlaylist
2021-04-20 18:47:33 +02:00
Rutger Schoorstra
087c47bddd
Fix consume_line
not returning line when line doesn't end with a newline
2021-04-18 11:59:31 +02:00
Rutger Schoorstra
57d60ba438
Move alternatives to MasterPlaylist
2021-04-16 21:20:30 +02:00
rutgersc
e2822e4521
Merge pull request #11 from vagetman/vagetman-nom-5.1.0
...
Upgraded macros to Nom 5
2020-07-01 16:43:30 +02:00
Rutger Schoorstra
100a57078a
Fix failed test on CLRF
2020-03-07 10:23:06 +01:00
Rutger Schoorstra
ab9c554eb4
Upgraded tests to Nom 5
2020-03-07 10:23:06 +01:00
Rutger Schoorstra
31e78801f9
CODECS should be optional
...
https://developer.apple.com/documentation/http_live_streaming/example_playlists_for_http_live_streaming/creating_a_master_playlist
> While the CODECS parameter is optional, every EXT-X-STREAM-INF tag should include the attribute.
2020-02-15 16:02:45 +01:00
Rutger Schoorstra
03ec1a4544
Added quick parse roundtrip test
2020-02-15 16:01:30 +01:00
Rutger Schoorstra
b2150f26e5
Remove unneeded macro_use
2020-02-15 16:00:10 +01:00
Philippe Normand
b5b950150f
Make tests run on non-windows machines
...
Hardcoding the windows path separator isn't a good idea for portability :)
2017-11-11 13:02:04 +01:00
Rutger
c336b89981
Added feature: writing playlists back to file
2017-02-17 14:50:50 +01:00
Rutger
d7c452fe78
Fixed a bug where the parser fails when the playlist does not end with a newline.
2016-09-10 13:22:13 +02:00
Rutger
41ce460d90
Version 1.0.0
2016-06-03 20:56:45 +02:00