Versions in this module Expand all Collapse all v0 v0.1.0 May 4, 2020 Changes in this version + const MinMeterResolution + var DefaultLimiterConfig = &LimiterConfig + var DefaultMeterConfig = &MeterConfig + type LimiterConfig struct + MaxWait time.Duration + Resolution time.Duration + type LimiterReader struct + func NewLimiterReader(rd io.Reader, rate infounit.BitRate) (*LimiterReader, error) + func NewLimiterReaderWithConfig(rd io.Reader, rate infounit.BitRate, conf *LimiterConfig) (*LimiterReader, error) + func (r *LimiterReader) Close() error + func (r *LimiterReader) CloseSingle() error + func (r *LimiterReader) LimitingBitRate() infounit.BitRate + func (r *LimiterReader) Read(p []byte) (int, error) + func (r *LimiterReader) SetBitRate(rate infounit.BitRate) error + type LimiterWriter struct + func NewLimiterWriter(wr io.Writer, rate infounit.BitRate) (*LimiterWriter, error) + func NewLimiterWriterWithConfig(wr io.Writer, rate infounit.BitRate, conf *LimiterConfig) (*LimiterWriter, error) + func (w *LimiterWriter) Close() error + func (w *LimiterWriter) CloseSingle() error + func (w *LimiterWriter) LimitingBitRate() infounit.BitRate + func (w *LimiterWriter) SetBitRate(rate infounit.BitRate) error + func (w *LimiterWriter) Write(p []byte) (int, error) + type MeterConfig struct + Resolution time.Duration + Sample time.Duration + type MeterReader struct + func NewMeterReader(rd io.Reader) *MeterReader + func NewMeterReaderWithConfig(rd io.Reader, conf *MeterConfig) (*MeterReader, error) + func (r *MeterReader) BitRate() infounit.BitRate + func (r *MeterReader) Close() error + func (r *MeterReader) CloseAt(tc time.Time) error + func (r *MeterReader) CloseSingle() error + func (r *MeterReader) CloseSingleAt(tc time.Time) error + func (r *MeterReader) Read(p []byte) (int, error) + func (r *MeterReader) Start() + func (r *MeterReader) StartAt(tc time.Time) + func (r *MeterReader) Total() (infounit.ByteCount, time.Duration, infounit.BitRate) + type MeterWriter struct + func NewMeterWriter(wr io.Writer) *MeterWriter + func NewMeterWriterWithConfig(wr io.Writer, conf *MeterConfig) (*MeterWriter, error) + func (w *MeterWriter) BitRate() infounit.BitRate + func (w *MeterWriter) Close() error + func (w *MeterWriter) CloseAt(tc time.Time) error + func (w *MeterWriter) CloseSingle() error + func (w *MeterWriter) CloseSingleAt(tc time.Time) error + func (w *MeterWriter) Start() + func (w *MeterWriter) StartAt(tc time.Time) + func (w *MeterWriter) Total() (infounit.ByteCount, time.Duration, infounit.BitRate) + func (w *MeterWriter) Write(p []byte) (int, error) + type Reader struct + func NewReader(rd io.Reader, rate infounit.BitRate) (*Reader, error) + func NewReaderWithConfig(rd io.Reader, rate infounit.BitRate, lconf *LimiterConfig, mconf *MeterConfig) (*Reader, error) + func (w *Reader) BitRate() infounit.BitRate + func (w *Reader) Close() error + func (w *Reader) CloseAt(tc time.Time) error + func (w *Reader) CloseSingle() error + func (w *Reader) CloseSingleAt(tc time.Time) error + func (w *Reader) LimitingBitRate() infounit.BitRate + func (w *Reader) Read(p []byte) (int, error) + func (w *Reader) SetBitRate(rate infounit.BitRate) error + func (w *Reader) Start() + func (w *Reader) StartAt(tc time.Time) + func (w *Reader) Total() (infounit.ByteCount, time.Duration, infounit.BitRate) + type Writer struct + func NewWriter(wr io.Writer, rate infounit.BitRate) (*Writer, error) + func NewWriterWithConfig(wr io.Writer, rate infounit.BitRate, lconf *LimiterConfig, mconf *MeterConfig) (*Writer, error) + func (w *Writer) BitRate() infounit.BitRate + func (w *Writer) Close() error + func (w *Writer) CloseAt(tc time.Time) error + func (w *Writer) CloseSingle() error + func (w *Writer) CloseSingleAt(tc time.Time) error + func (w *Writer) LimitingBitRate() infounit.BitRate + func (w *Writer) SetBitRate(rate infounit.BitRate) error + func (w *Writer) Start() + func (w *Writer) StartAt(tc time.Time) + func (w *Writer) Total() (infounit.ByteCount, time.Duration, infounit.BitRate) + func (w *Writer) Write(p []byte) (int, error)