MMA_DataFormat

(V51) [..G.Q], CONST_STRPTR, 0x8EDA000B

DESCRIPTION

   Returns short, read-only textual description of the format. An object
   connected to a data stream returns string "BZip2

NOTES

   Usually, when bzip2.demuxer is a part of processing pipeline built with
   MediaNewObject(), this attribute is "shadowed" by demuxer(s) following
   in the pipeline.

MMA_MimeType

(V51) [..G.Q], CONST_STRPTR, 0x8EDA000A

DESCRIPTION

   Returns MIME type string of the format. An object connected to a data
   stream returns string "application/x-bzip2

NOTES

   Usually, when bzip2.demuxer is a part of processing pipeline built with
   MediaNewObject(), this attribute is "shadowed" by demuxer(s) following
   in the pipeline.

MMA_StreamLength

(V51) [..G.Q], QUAD*, 0x8EDA0018

DESCRIPTION

   MMA_StreamLength is the output (uncompressed) stream length in bytes. For
   bzip2.demuxer the reported length is always 0

NOTE

   This tag always return 0 (unknown) length.

MMA_StreamPosBytes

(V51) [..G.Q], QUAD*, 0x8EDA0012

DESCRIPTION

   MMA_StreamPosBytes value is the current position in the output
   (uncompressed) stream. This position is in bytes, and is returned as a
   pointer to 64-bit signed number

MMM_Pull

Decompresses a block of data into a buffer.

SYNOPSIS

   bytes = DoMethod(obj, MMM_Pull, ULONG port, APTR buffer, ULONG length);

DESCRIPTION

   Delivers a specified amount of decompressed data to the output buffer

INPUTS

   - obj, object to perform the method on.
   - port, number of port, must be 1 (output).
   - buffer, a memory buffer for decompressed data, must be aligned to
     16-byte boundary (preferrably allocated with MediaAllocVec()).
   - length, amount of pulled data in bytes

RESULT

   Number of bytes pulled actually. In case of error, additional information
   is available via MMA_ErrorCode attribute

SEE ALSO

background

HISTORY

   51.1   (17.07.2019)
   - The first release.

DESCRIPTION

   This class allows Reggae to handle data compressed with BZip2 compressor.
   In other words it is a wrapper on z.library. Using this class Reggae
   can decompress data from any BZip2 source stream.

   Reggae is able to cascade demuxers in case of compound data formats. When
   MediaNewObject() recognizes a stream, it detects BZip2 packed files with
   this class recognition routine. bzip2.demuxer object sets MMF_STREAM data
   type on its output, which makes Reggae to perform demultiplexer matching
   recursively, but this time on decompressed data.

NEW ATTRIBUTES

   Attributes applicability:
     I - may be set at creation time.
     S - may be set on an existing object.
     G - may be get from an object.
     P - may be set for an object's port.
     Q - may be queried from an object's port.

   MMA_StreamLength                (V51)  ..G.Q  (QUAD*)
   MMA_StreamPosBytes              (V51)  ..G.Q  (QUAD*)

NEW METHODS

   MMM_Pull(port, buffer, length)  (V51)