Commit Graph

231 Commits

Author SHA1 Message Date
Tangent Wantwight 1ce026eb2e Include a simple built-in HTML player 2023-04-28 18:06:28 -04:00
Tangent Wantwight fba1829970 Remove unused header 2023-04-28 16:15:28 -04:00
Tangent Wantwight 4db64df278 Use another if let in stream parser 2023-02-03 23:10:50 -05:00
Tangent Wantwight 884aa37888 convert Chunk to external iteration 2022-06-10 17:15:03 -04:00
Tangent Wantwight 2b88d09d0f Teach filter subcommand to recognize --skip and --take options 2022-05-22 20:50:47 -04:00
Tangent Wantwight bfe7d4b1d7 Update argument parsing to clap v3 2022-05-22 20:37:03 -04:00
Tangent Wantwight 15520f26bd Update Tokio/Hyper/Warp-related dependencies 2022-05-22 00:56:53 -04:00
Tangent Wantwight 8cecb2166f remove dependency on odds now that Vec::retain_mut is stable 2022-05-21 22:40:07 -04:00
Tangent Wantwight 3bc46210e4 Teach send subcommand to recognize --skip and --take options 2020-09-11 22:57:23 -04:00
Tangent Wantwight 18fb8390a0 ensure Throttle never waits before the first chunk of data, even if it's timestamped after zero 2020-09-11 22:56:24 -04:00
Tangent Wantwight 43acf93fa9 Fuse ClusterHead & ClusterBody chunks into one chunk type
(there is still a technical body chunk variant for iteration purposes, but it won't be produced by the parser)
2020-09-11 20:34:40 -04:00
Tangent Wantwight 9cc7d8064d Represent Chunks as iterables of Bytes 2020-09-11 19:34:27 -04:00
Tangent Wantwight 2fb8408ebc Start throttle timing on first data instead of throttle creation (improves cases where the source is slow to start) 2020-09-10 18:11:48 -04:00
Tangent Wantwight c8124ed388 Add INFO logging for channel creation/garbage-collection 2020-09-10 01:22:36 -04:00
Tangent Wantwight 4dc8ec1bbd when disconnecting, clean up the header chunk so subsequent clients don't get a potentially incorrect initialization segment 2020-08-10 21:40:53 -04:00
Tangent Wantwight d585ad7b31 use ergonomic try_next() combinator instead of transpose() 2020-05-09 00:17:22 -04:00
Tangent Wantwight 5a6d1e764d simplify channel streams 2020-05-09 00:06:29 -04:00
Tangent Wantwight c422a1c3f3 Simplify/sanify some types 2020-05-08 22:02:49 -04:00
Tangent Wantwight 00ec517e78 Big-bang update tokio, warp, futures, & hyper to new versions. 2020-05-07 23:14:43 -04:00
Tangent Wantwight 1273b4adff WIP: update lib to bytes 0.5 2020-05-07 00:34:23 -04:00
Tangent Wantwight 9274fabeea impl Iterator for Chunk 2020-05-06 21:50:03 -04:00
Tangent Wantwight dbcbf2831e Remove unused (and soon-to-be meaningless) AsRef impl for ClusterHead 2019-11-28 11:09:02 -05:00
Tangent Wantwight 2400720d03 Use a Bytes[Mut] for all Chunk data 2019-11-28 00:17:52 -05:00
Tangent Wantwight 5e2e1bcf83 replace a number of intermediate states with a "pending" Option 2019-11-26 21:26:08 -05:00
Tangent Wantwight 3f7adb3bd6 Bind to multiple addresses if given a DNS name 2019-11-20 00:15:00 -05:00
Tangent Wantwight 8fa16152f8 Add & init env_logger 2019-11-19 20:06:28 -05:00
Tangent Wantwight ba1d921a7e Use `log` crate & macros instead of prints. 2019-11-19 20:06:28 -05:00
Tangent Wantwight d563baaca8 normalize stream_parser poll to use modern future types 2019-11-17 01:19:30 -05:00
Tangent Wantwight e6d8b58492 prettify the chunker match blocks a bit 2019-11-16 15:46:25 -05:00
Tangent Wantwight d3b147f8ea Take advantage of NLL to be able to state-transition & return directly in chunker 2019-11-16 15:19:14 -05:00
Tangent Wantwight 7485119028 remove an unneeded test 2019-11-16 14:22:53 -05:00
Tangent Wantwight 7e85a8750b Removed old Tokio version from Cargo.toml 2019-11-16 13:27:58 -05:00
Tangent Wantwight 4abd26ddbf cleanup 2019-11-16 13:17:44 -05:00
Tangent 128 a5baa39014 Fix server kicking clients off when a source left 2019-10-21 17:11:09 -04:00
Tangent 128 32c72e1ee8 Port send subcommand to core futures & alpha hyper (fixes --throttle) 2019-10-21 17:10:52 -04:00
Tangent 128 8de9ffdb21 fixup async parser deletion 2019-10-21 15:08:45 -04:00
Tangent 128 ee818dbfd8 Run dump command on a runtime so it works properly. 2019-10-21 04:04:11 -04:00
Tangent 128 d9e9b9e49c Give stream_parser an async next() method, making async_parser no longer interesting. 2019-10-21 04:03:52 -04:00
Tangent 128 bc8e45936b Convert parser & chunker APIs to work with Futures 0.3-style streams 2019-10-21 03:18:51 -04:00
Tangent 128 eda2e4f7be Remove EbmlEventSource trait in favor of concrete EbmlStreamingParser 2019-10-21 01:20:14 -04:00
Tangent 128 fa85939c0b Cleanup stream_parser using some async_parser approaches 2019-10-21 00:19:20 -04:00
Tangent 128 4a0bf8ee8c Write a test for stream_parser 2019-10-21 00:03:30 -04:00
Tangent 128 710af7e1d7 feeder-based parser proof-of-concept adjusted to work with the lifetime FromEbml trait 2019-10-20 02:22:36 -04:00
Tangent 128 a9b66b6297 Remove repeated code in `decode_element` 2019-10-20 00:25:35 -04:00
Tangent 128 d894a139f2 make return value for check_space more structured/informative 2019-10-20 00:21:09 -04:00
Tangent 128 ccbb566d85 Remove unused module 2019-10-16 23:53:09 -04:00
Tangent 128 8a3f478c38 Give Throttle a ::new() function for now 2019-10-16 00:16:47 -04:00
Tangent 128 49fa0ff7e0 make error descriptions more useful 2019-10-15 23:36:23 -04:00
Tangent 128 3a6ca629ca Use core futures for the fixers; try different approach to timecode fixer 2019-10-11 00:28:08 -04:00
Tangent 128 cfb56f1281 Convert channel.rs to futures-preview 2019-10-08 23:35:13 -04:00