-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
6 changed files
with
276 additions
and
214 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,27 @@ | ||
name: Rust CI | ||
|
||
on: | ||
push: | ||
branches: | ||
- main | ||
pull_request: | ||
branches: | ||
- main | ||
|
||
jobs: | ||
build: | ||
runs-on: ubuntu-latest | ||
|
||
steps: | ||
- name: Set up rust | ||
uses: actions/checkout@v2 | ||
- name: Install cargo-audit | ||
run: cargo install cargo-audit | ||
- name: Build | ||
run: cargo build --verbose | ||
- name: Test | ||
run: cargo test --verbose | ||
- name: Clippy | ||
run: cargo clippy --verbose -- -D warnings | ||
- name: Audit | ||
run: cargo audit |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,16 +1,32 @@ | ||
# HLS Playlist | ||
|
||
A library for parsing HLS playlists (aka extended M3U playlists). | ||
A library for serializing and deserializing HLS playlists (aka extended M3U playlists). | ||
|
||
As specified by [this updated version of RFC 8216](https://datatracker.ietf.org/doc/html/draft-pantos-hls-rfc8216bis). | ||
|
||
## Usage | ||
|
||
TODO | ||
```rust | ||
use hls_playlist::tags::Tag; | ||
|
||
let mut output = vec![]; | ||
|
||
Tag::M3u.serialize(&mut output).unwrap(); | ||
Tag::XStart { offset_seconds: 10.0, is_precise: false }.serialize(&mut output).unwrap(); | ||
|
||
assert_eq!(String::from_utf8(output).unwrap(), "\ | ||
#EXTM3U | ||
#EXT-X-START:TIME-OFFSET=10 | ||
"); | ||
``` | ||
|
||
## Roadmap | ||
|
||
This library is 100% finished and feature-complete as far as I'm aware with the exception of deserializing playlists. | ||
This library is 100% finished and feature-complete as far as serializing tags goes, but I'd like to eventually implement a serializer for the higher level playlist representation, and also deserialization. | ||
|
||
- [x] Serialization | ||
- [ ] Deserialization | ||
- [x] Serialize steering manifest | ||
- [x] Serialize tags | ||
- [ ] Serialize playlist | ||
- [ ] Deserialize steering manifest | ||
- [ ] Deserialize tags | ||
- [ ] Deserialize playlist |
Oops, something went wrong.