|
d0fd4d4bc9
|
Simplify EbmlIterator & EbmlSlice's next() methods, fix EbmlIterator generic
(they don't have dynamic buffers to worry about)
|
2018-04-04 01:18:56 -04:00 |
|
|
3a92da1883
|
Split apart iterator and slice modules
|
2018-04-04 00:43:32 -04:00 |
|
|
9686eb2713
|
Rename EbmlError
|
2018-04-04 00:16:35 -04:00 |
|
|
ee068bc887
|
Shrink EbmlSlice trait implementations
|
2018-04-04 00:12:55 -04:00 |
|
|
2db227c5f9
|
Cleanup, use EbmlSlice as name
|
2018-04-03 23:38:31 -04:00 |
|
|
0909a20a8c
|
generalize WebmEventSource -> EbmlEventSource
|
2018-04-03 23:23:19 -04:00 |
|
|
413f7759c6
|
Make the buffer generic
|
2018-04-03 22:06:09 -04:00 |
|
|
c92273625e
|
Cleanup poll_event's try_decode hack.
|
2018-04-03 21:19:46 -04:00 |
|
|
bebe593c30
|
Lifetime simplification reflecting probably-better understanding of them
|
2018-04-03 19:07:16 -04:00 |
|
|
724eabf326
|
Use WebmBuffer in loop_server
|
2018-04-02 20:12:26 -04:00 |
|
|
12cd1bdd4b
|
Debugging formatting
|
2018-04-02 20:11:54 -04:00 |
|
|
c5a42afd32
|
Fix bug with WebmBuffer double-counting reads
|
2018-04-02 20:11:14 -04:00 |
|
|
c6ab5e8e89
|
Fix name collision
|
2018-04-02 20:10:50 -04:00 |
|
|
719b11dd01
|
Zap some generic code that wasn't going anywhere
|
2018-04-02 19:37:36 -04:00 |
|
|
90c1892668
|
Commonize some code for EbmlCursor
|
2018-04-02 19:12:28 -04:00 |
|
|
0e2e5ad48a
|
Tidy cursor iteration module a little
|
2018-04-02 18:46:50 -04:00 |
|
|
56a7284e32
|
Focus on Webm case specifically to get working code
can retry generic EBML later
|
2018-04-02 18:37:47 -04:00 |
|
|
11bb7f4412
|
Fix EBML Source lifetimes, breaking the chunker
|
2018-04-02 13:55:13 -04:00 |
|
|
495ca0f555
|
Stream buffer/parser experiment, lifetime issues are snarling though
|
2018-03-31 21:36:47 -04:00 |
|
|
f385371bb9
|
Make loop server iteration count more flexible than a chain
|
2018-03-30 02:54:02 -04:00 |
|
|
00fc1fcb2a
|
Correct the chunk-based timecode fixer
|
2018-03-30 02:44:42 -04:00 |
|
|
d9e197ec7d
|
Skip Info/Void in header for now
|
2018-03-30 02:26:52 -04:00 |
|
|
86d047e217
|
Debug derives
|
2018-03-30 02:26:35 -04:00 |
|
|
a8fa279201
|
bump dependency versions
|
2018-03-30 01:43:44 -04:00 |
|
|
417cbf49c7
|
Create EbmlEventSource trait since Iterators/Streams can't return borrows
|
2018-03-30 01:33:13 -04:00 |
|
|
f8db95e61e
|
Make ClusterHead a first-class struct, simplifying a lot of enum wrangling
|
2018-03-28 00:31:58 -04:00 |
|
|
cdcff869aa
|
Replace Schema types with a FromEbml trait on the Element type
simplify lifetimes
|
2018-03-25 21:33:38 -04:00 |
|
|
972a88c35b
|
Handle errors in chunking code in some fashion
|
2017-10-06 00:17:18 -04:00 |
|
|
0902a810e5
|
Use webm chunker operator in loop_server
|
2017-10-04 02:11:19 -04:00 |
|
|
e0346ae30a
|
leave mark-keyframes reminder in webm chunker
|
2017-10-04 02:10:58 -04:00 |
|
|
b0b4f204f2
|
strip out extra header chunks in timecode_fixer()
|
2017-10-04 02:03:19 -04:00 |
|
|
639dc50c35
|
Implement chunking Clusters, including flushing the last one
|
2017-10-04 01:49:41 -04:00 |
|
|
9c9db1c505
|
Better-adapt extend_timespan to its real use, observe_simpleblock_timecode
|
2017-10-04 01:48:33 -04:00 |
|
|
0aa2f1cbdd
|
Implement header chunking for chunk_webm() operator
|
2017-10-04 01:05:23 -04:00 |
|
|
52c1843311
|
Add stub Webm chunking stream operator
|
2017-10-01 00:21:33 -04:00 |
|
|
27aff20c46
|
Implement rewriting timestamps for chunks
|
2017-09-30 17:36:09 -04:00 |
|
|
bad7b42e5b
|
Create stub stream operator to bolt on fixing chunk timecodes
|
2017-09-30 02:33:36 -04:00 |
|
|
3e1bec93ee
|
Fix tests for chunk.rs
|
2017-09-30 02:23:27 -04:00 |
|
|
15386e9638
|
Repeat test video body a few times
|
2017-09-29 02:11:42 -04:00 |
|
|
c4fc13fe0b
|
Fix final cluster not displaying right
|
2017-09-29 01:54:08 -04:00 |
|
|
9481d53adc
|
Parse, chunk, & reconstruct served WebM file.
|
2017-09-29 01:31:06 -04:00 |
|
|
a7804891ae
|
add chunk mutators/utilities
|
2017-09-29 00:12:49 -04:00 |
|
|
031d32352a
|
Fix dumping the whole cluster head buffer instead of the used portion
|
2017-09-29 00:07:56 -04:00 |
|
|
7f214920ae
|
switch Chunks to use Arcs
|
2017-09-28 22:11:27 -04:00 |
|
|
d20081d9a1
|
Serve single, unparsed video file.
|
2017-09-26 02:21:32 -04:00 |
|
|
c3f0de71fa
|
Move Chunk timecode updating into the struct impl proper.
|
2017-09-25 01:41:56 -04:00 |
|
|
d0f1cde464
|
Stub using Chunk stream in loop_server.
|
2017-09-25 00:23:20 -04:00 |
|
|
27642f7b14
|
Make Chunk flexible in the type of backing buffer used
|
2017-09-25 00:22:41 -04:00 |
|
|
0a18cb408f
|
Create Chunk type for use in packaging WebM streams for clients.
|
2017-09-22 23:58:03 -04:00 |
|
|
db1731f776
|
Experiment with using a Stream for a Response Body
|
2017-09-21 00:59:11 -04:00 |
|
|
ef45728779
|
Have stub server recognize a URL path
|
2017-09-10 19:44:54 -04:00 |
|
|
6f80da4735
|
Create stub Hyper server
|
2017-09-10 19:34:08 -04:00 |
|
|
e633517d3a
|
Rewrite timestamps on clusters to allow splicing
|
2017-09-07 01:42:14 -04:00 |
|
|
13e75a6415
|
Add a stage to resynth test's output pipeline to permit patching timestamps
|
2017-09-06 02:02:50 -04:00 |
|
|
9b3a6db074
|
fixup bin for reference refactor.
|
2017-09-06 01:53:49 -04:00 |
|
|
84c7ec734b
|
Don't require encode_ functions to consume their argument element.
|
2017-09-05 00:24:38 -04:00 |
|
|
271782bb91
|
Create test tool to deconstruct and reassemble a WebM file
|
2017-09-05 00:17:11 -04:00 |
|
|
93883e2683
|
refactor SimpleBlock struct to be independent of Element enum
|
2017-09-04 01:41:48 -04:00 |
|
|
fd8b820eef
|
Stub-encode Tracks
|
2017-08-14 00:58:06 -04:00 |
|
|
dd376e146e
|
Implement encoding SimpleBlocks
|
2017-08-12 16:48:24 -04:00 |
|
|
01e81c6a9f
|
Fix tests
|
2017-08-10 00:14:42 -04:00 |
|
|
509dcd3827
|
Generalize string writing to binary writing
|
2017-08-09 01:49:44 -04:00 |
|
|
b76f244022
|
Encode Timecodes into WebM stub
|
2017-08-07 01:12:18 -04:00 |
|
|
120fe26b6b
|
Cleanup results more
|
2017-08-07 01:11:43 -04:00 |
|
|
c969627510
|
Extend stub WebM structure
|
2017-08-07 01:03:20 -04:00 |
|
|
2ecedf795d
|
Cleanup dead line
|
2017-08-07 00:56:18 -04:00 |
|
|
ff4c2d796e
|
Remove IoResult<usize> return, value not needed and confuses ? operator
|
2017-08-07 00:55:57 -04:00 |
|
|
45fe373ee6
|
Implement writing a barebones EBML header from scratch
|
2017-08-06 01:21:53 -04:00 |
|
|
95fcc6c86b
|
Add fixed-size varint encoder function to simplify writing complex EBML element sizes
|
2017-08-06 01:20:51 -04:00 |
|
|
b5bbf952b0
|
Stub some EBML encoding funcs
|
2017-08-02 01:30:14 -04:00 |
|
|
cf4821599e
|
Make encode_varint use a generic Writer
|
2017-07-30 01:43:09 -04:00 |
|
|
da81b741a3
|
Change encode_varint to write into a Bufmut
|
2017-07-10 21:26:00 -04:00 |
|
|
a1e8aef5d3
|
Swap to "bytes" crate
|
2017-07-10 19:36:20 -04:00 |
|
|
8d73a2e577
|
Fix range of varint encoder; add more boundary tests.
|
2017-07-08 01:08:21 -04:00 |
|
|
b1b157c6be
|
Make varint sizing logic use smallest working size;
fix bad constant/test.
|
2017-07-07 02:27:30 -04:00 |
|
|
6c99eca673
|
Initial ebml varint encoder
|
2017-07-07 01:25:32 -04:00 |
|
|
7109e30dcb
|
Use ByteOrder function in decode_uint
|
2017-07-03 01:44:11 -04:00 |
|
|
6383f12ad0
|
Make tests pass again
|
2017-07-01 16:55:24 -04:00 |
|
|
a00d43e124
|
Implement decode_simple_block
|
2017-07-01 01:30:43 -04:00 |
|
|
51156d9fde
|
implement decode_uint
|
2017-06-29 02:38:08 -04:00 |
|
|
8c88ff25d0
|
Define Timecode & SimpleBlock tags (tests broken)
|
2017-06-29 02:08:19 -04:00 |
|
|
ba9d00d0b4
|
Move tests under appropriate modules
|
2017-06-28 01:54:30 -04:00 |
|
|
8411363035
|
Break code into modules
|
2017-06-27 02:31:17 -04:00 |
|
|
124536d703
|
Create dump tool for debugging/research
|
2017-06-27 02:31:17 -04:00 |
|
|
13660fe802
|
Streamline adapting schema to source.
|
2017-05-01 02:44:49 -04:00 |
|
|
466f0c46f0
|
Parse whole test file, using constants for ids.
|
2017-05-01 02:44:46 -04:00 |
|
|
c567099b73
|
Add SeekHead & Cluster to Webm schema
|
2017-04-16 16:35:48 -04:00 |
|
|
efe708ca6b
|
Make Ebml struct generic over source type
|
2017-04-16 16:24:15 -04:00 |
|
|
bc1569a461
|
use IntoIterator to get Ebml iterator
|
2017-01-28 02:34:01 -05:00 |
|
|
a23a29bf9b
|
Experiment with WebM Schema
|
2017-01-27 02:09:09 -05:00 |
|
|
3253f32d03
|
Split generic EBML test from WebM test
|
2017-01-27 01:24:17 -05:00 |
|
|
fd0fb41acf
|
move decode_element & iterator creation onto Schema trait
|
2017-01-26 01:43:35 -05:00 |
|
|
128192c622
|
genericize EBML iterator
|
2017-01-24 19:11:59 -05:00 |
|
|
4a42b7ae82
|
implement WebM iterator
|
2017-01-24 03:20:49 -05:00 |
|
|
6ab32205bb
|
Change Schema to be implemented by a dedicated type instead of its element type.
|
2017-01-17 03:11:17 -05:00 |
|
|
8b0021e3eb
|
Stub WebM schema, just make all elements unknown.
|
2017-01-17 00:11:49 -05:00 |
|
|
50eb02b9ac
|
Implement decode_element, which uses a Schema trait to turn EBML elements into user types.
|
2017-01-16 23:42:27 -05:00 |
|
|
6c82234c9e
|
Add a test webm file
|
2017-01-16 09:11:50 -05:00 |
|
|
31b5eb8931
|
Fix comments
|
2017-01-16 01:39:25 -05:00 |
|
|
0fc2f5e76c
|
Add some general error codes for future
|
2017-01-15 20:30:52 -05:00 |
|