scodec.protocols.mpeg.transport

Demultiplexer

object Demultiplexer

Supports depacketization of an MPEG transport stream, represented as a stream of Packets.

Source
Demultiplexer.scala
Linear Supertypes
Content Hierarchy Learn more about scaladoc diagrams
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. Demultiplexer
  2. AnyRef
  3. Any
  1. Hide All
  2. Show all
Learn more about member selection
Visibility
  1. Public
  2. All

Type Members

  1. case class DecodeBody[A](neededBits: Option[Long], decoder: Decoder[A]) extends Product with Serializable

    Indication that a header was decoded successfully and there was enough information on how to decode the body of the message.

  2. case class PesPacketResult(body: PesPacket) extends Result with Product with Serializable

  3. case class ResetDecodeState(context: List[String]) extends Err with Product with Serializable

    Error that indicates any data accumulated by the demultiplexer should be dropped and no further decoding should occur until the next payload start.

  4. sealed trait Result extends AnyRef

  5. case class SectionResult(section: Section) extends Result with Product with Serializable

Value Members

  1. final def !=(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  2. final def !=(arg0: Any): Boolean

    Definition Classes
    Any
  3. final def ##(): Int

    Definition Classes
    AnyRef → Any
  4. final def ==(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  5. final def ==(arg0: Any): Boolean

    Definition Classes
    Any
  6. final def asInstanceOf[T0]: T0

    Definition Classes
    Any
  7. def clone(): AnyRef

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  8. def demultiplex(sectionCodec: SectionCodec): Process1[Packet, PidStamped[\/[DemultiplexerError, Result]]]

    Stream transducer that converts packets in to sections and PES packets.

    Stream transducer that converts packets in to sections and PES packets.

    The packets may span PID values. De-packetization is performed on each PID and as whole messages are received, reassembled messages are emitted.

    PES packets emitted by this method never include parsed headers -- that is, every emitted PES packet is of type PesPacket.WithoutHeader. To get PES packets with parsed headers, use demultiplexWithPesHeaders.

    Errors encountered while depacketizing are emitted.

    Upon noticing a PID discontinuity, an error is emitted and PID decoding state is discarded, resulting in any in-progress section decoding to be lost for that PID.

  9. def demultiplexGeneral[Out](decodeHeader: (BitVector, Boolean) ⇒ Attempt[DecodeResult[DecodeBody[Out]]]): Process1[Packet, PidStamped[\/[DemultiplexerError, Out]]]

    Most general way to perform demultiplexing, allowing parsing of arbitrary headers and decoding of a specified output type.

    Most general way to perform demultiplexing, allowing parsing of arbitrary headers and decoding of a specified output type.

    When processing the payload in a packet, the start of the payload is passed along to decodeHeader, which determines how to process the body of the message.

    In addition to the payload data, a flag is passed to decodeHeader -- true is passed when the payload data started at byte 0 of the packet and false is passed when the payload data started later in the packet.

    See the documentation on DecodeBody for more information.

  10. def demultiplexSectionsAndPesPackets(decodeSectionBody: (SectionHeader) ⇒ Decoder[Section], decodePesBody: (PesPacketHeaderPrefix) ⇒ Decoder[PesPacket]): Process1[Packet, PidStamped[\/[DemultiplexerError, Result]]]

    Variant of demultiplex that allows section and PES decoding to be explicitly specified.

  11. def demultiplexWithPesHeaders(sectionCodec: SectionCodec): Process1[Packet, PidStamped[\/[DemultiplexerError, Result]]]

    Variant of demultiplex that parses PES packet headers.

  12. final def eq(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  13. def equals(arg0: Any): Boolean

    Definition Classes
    AnyRef → Any
  14. def finalize(): Unit

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  15. final def getClass(): Class[_]

    Definition Classes
    AnyRef → Any
  16. def hashCode(): Int

    Definition Classes
    AnyRef → Any
  17. final def isInstanceOf[T0]: Boolean

    Definition Classes
    Any
  18. final def ne(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  19. final def notify(): Unit

    Definition Classes
    AnyRef
  20. final def notifyAll(): Unit

    Definition Classes
    AnyRef
  21. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  22. def toString(): String

    Definition Classes
    AnyRef → Any
  23. final def wait(): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  24. final def wait(arg0: Long, arg1: Int): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  25. final def wait(arg0: Long): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from AnyRef

Inherited from Any

Ungrouped