TranscodingStreams.jl
TranscodingStreams.jl copied to clipboard
Simple, consistent interfaces for any codec.
As far as I can tell, TranscodingSteams (TS) is currently mostly used for de/compression codecs, which are quite CPU-intensive. In this case it would be beneficial to allow the de/compression...
This allows users to easily chain codecs using the do-syntax. Here is an example where the input is chained through four different streams. ``` julia> using CodecZlib, TranscodingStreams julia> open(...
> A good start is documenting its behaviour better - what is the buffer growth behaviour? How does one stop a transcoding? What is the "mark" in the buffer and...
A new codec is implemented by extending the `process` function, which gives you a number of input bytes to transcode, and a number of bytes to write the result to....
I am trying to read some data in a looping way, reading a mix of primitive types. Here's a simple MWE where I am just reading Int32s: ``` import TranscodingStreams...
The desire here is to close the `TranscodingStream` without closing the underlying buffer. This is documented in https://juliaio.github.io/TranscodingStreams.jl/latest/examples/#Explicitly-finish-transcoding-by-writing-TOKEN_END-1 and says that you should write a `TOKEN_END` token to the stream....
Is the debug logging in `transcode` necessary? I am having to alter logging behaviour either side of this function to stop the debug logs from this function hiding the debug...
I don't seem to be able to get a TranscodingStream wrapping an IOBuffer to flush any data out: ``` julia> using TranscodingStreams, CodecBzip2 julia> s = sprint() do outer inner...
Currently TranscodingStreams has default methods for `seekstart` `seekend` and `position`. `position` implementation is based on the bytes read from the io. However, when `seekstart` or `seekend` is called, it will...