Versions in this module Expand all Collapse all v1 v1.0.0 Sep 18, 2021 Changes in this version + const PAT_PKT_TYPE + const PES_PKT_TYPE + const PID_CAT + const PID_DIT + const PID_EIT_ST + const PID_MEASURE + const PID_NET_SYNC + const PID_NIT_ST + const PID_PAT + const PID_RESERVED1 + const PID_RESERVED2 + const PID_RESERVED3 + const PID_RESERVED4 + const PID_RST_ST + const PID_SDT_BAT_ST + const PID_SIGNALLING + const PID_SIT + const PID_TDT_TOT_ST + const PID_TSDT + const PMT_PKT_TYPE + const PSI_TYPE_CAT + const PSI_TYPE_IPMP_CIT + const PSI_TYPE_NIT + const PSI_TYPE_PAT + const PSI_TYPE_PMT + const PSI_TYPE_TST + const STREAM_ID_AUDIO + const STREAM_ID_VIDEO + const STREAM_TYPE_AAC + const STREAM_TYPE_H264 + const TABLE_CAS + const TABLE_IPMP_CIS + const TABLE_ISO_IEC_14496_ODC + const TABLE_ISO_IEC_14496_SDC + const TABLE_MS + const TABLE_PAS + const TABLE_TSDS + const TABLE_TSPMS + const TS_DVHS_PACKET_SIZE + const TS_FEC_PACKET_SIZE + const TS_MAX_PACKET_SIZE + const TS_PACKET_SIZE + var Crc32_Table = []uint32 + var DefaultPATPacket = []byte + var DefaultPMTPacket = []byte + func CheckPESPacketIsKeyFrame(packet MpegTsPESPacket) bool + func GetCRC32(data []byte) (crc uint32) + func IowWritePESPacket(w io.Writer, tsHeader MpegTsHeader, packet MpegTsPESPacket) (err error) + func PESToTs(frame *MpegtsPESFrame, packet MpegTsPESPacket) (tsPkts []byte, err error) + func WriteDefaultPATPacket(w io.Writer) (err error) + func WriteDefaultPMTPacket(w io.Writer) (err error) + func WritePAT(w io.Writer, pat MpegTsPAT) (err error) + func WritePATPacket(w io.Writer, tsHeader []byte, pat MpegTsPAT) (err error) + func WritePESHeader(w io.Writer, header MpegTsPESHeader) (written int, err error) + func WritePESPacket(w io.Writer, frame *MpegtsPESFrame, packet MpegTsPESPacket) (err error) + func WritePMT(w io.Writer, pmt MpegTsPMT) (err error) + func WritePMTBody(w io.Writer, pmt MpegTsPMT) (err error) + func WritePMTDescriptor(w io.Writer, descs []MpegTsDescriptor) (err error) + func WritePMTPacket(w io.Writer, tsHeader []byte, pmt MpegTsPMT) (err error) + func WritePSI(w io.Writer, pt uint32, psi MpegTsPSI, data []byte) (err error) + func WriteTsHeader(w io.Writer, header MpegTsHeader) (written int, err error) + type MpegTsDescriptor struct + Data []byte + Length byte + Tag byte + func ReadPMTDescriptor(lr *io.LimitedReader) (Desc []MpegTsDescriptor, err error) + type MpegTsHeader struct + AdaptionFieldControl byte + ContinuityCounter byte + PayloadUnitStartIndicator byte + Pid uint16 + SyncByte byte + TransportErrorIndicator byte + TransportPriority byte + TransportScramblingControl byte + func ReadTsHeader(r io.Reader) (header MpegTsHeader, err error) + type MpegTsHeaderAdaptationField struct + AdaptationFieldExtensionFlag byte + AdaptationFieldExtensionLength byte + AdaptationFieldLength byte + DiscontinuityIndicator byte + DtsNextAU uint64 + ElementaryStreamPriorityIndicator byte + LtwFlag byte + LtwOffset uint16 + LtwValidFlag byte + OPCRFlag byte + OriginalProgramClockReferenceBase uint64 + OriginalProgramClockReferenceExtension uint16 + PCRFlag byte + PiecewiseRate uint32 + PiecewiseRateFlag byte + PrivateDataByte byte + ProgramClockReferenceBase uint64 + ProgramClockReferenceExtension uint16 + RandomAccessIndicator byte + Reserved1 byte + Reserved2 byte + Reserved3 byte + SeamlessSpliceFlag byte + SpliceCountdown byte + SpliceType byte + SplicingPointFlag byte + TransportPrivateDataLength byte + TrasportPrivateDataFlag byte + type MpegTsOptionalPESHeader struct + AdditionalCopyInfo byte + AdditionalCopyInfoFlag byte + ConstTen byte + Copyright byte + DataAlignmentIndicator byte + DsmTrickModeFlag byte + Dts uint64 + EsRate uint32 + EsRateFlag byte + EscrBase uint64 + EscrExtension uint16 + EscrFlag byte + Mpeg1Mpeg2Identifier byte + OriginalOrCopy byte + OriginalStuffLength byte + PSTDBufferFlag byte + PSTDBufferScale byte + PSTDBufferSize uint16 + PackHeaderField byte + PackHeaderFieldFlag byte + PesCRCFlag byte + PesExtensionFieldLength byte + PesExtensionFlag byte + PesExtensionFlag2 byte + PesHeaderDataLength byte + PesPriority byte + PesPrivateData [16]byte + PesPrivateDataFlag byte + PesScramblingControl byte + PreviousPESPacketCRC uint16 + ProgramPacketSequenceCounter byte + ProgramPacketSequenceCounterFlag byte + Pts uint64 + PtsDtsFlags byte + Reserved byte + StreamIDExtensionFlag byte + TrickModeControl byte + TrickModeValue byte + type MpegTsPAT struct + Crc32 uint32 + CurrentNextIndicator byte + LastSectionNumber byte + Program []MpegTsPATProgram + Reserved1 byte + Reserved2 byte + SectionLength uint16 + SectionNumber byte + SectionSyntaxIndicator byte + TableID byte + TransportStreamID uint16 + VersionNumber byte + Zero byte + func ReadPAT(r io.Reader) (pat MpegTsPAT, err error) + type MpegTsPATProgram struct + NetworkPID uint16 + ProgramMapPID uint16 + ProgramNumber uint16 + Reserved3 byte + type MpegTsPESHeader struct + PacketStartCodePrefix uint32 + PayloadLength uint64 + PesPacketLength uint16 + StreamID byte + func ReadPESHeader(r io.Reader) (header MpegTsPESHeader, err error) + type MpegTsPESPacket struct + Header MpegTsPESHeader + Payload []byte + func TsToPES(tsPkts []MpegTsPacket) (pesPkt MpegTsPESPacket, err error) + type MpegTsPMT struct + Crc32 uint32 + CurrentNextIndicator byte + LastSectionNumber byte + PcrPID uint16 + ProgramInfoDescriptor []MpegTsDescriptor + ProgramInfoLength uint16 + ProgramNumber uint16 + Reserved1 byte + Reserved2 byte + Reserved3 byte + Reserved4 byte + SectionLength uint16 + SectionNumber byte + SectionSyntaxIndicator byte + Stream []MpegTsPmtStream + TableID byte + VersionNumber byte + Zero byte + func ReadPMT(r io.Reader) (pmt MpegTsPMT, err error) + type MpegTsPSI struct + Pat MpegTsPAT + Pmt MpegTsPMT + func ReadPSI(r io.Reader, pt uint32) (lr *io.LimitedReader, psi MpegTsPSI, err error) + type MpegTsPacket struct + Header MpegTsHeader + Payload []byte + func ReadTsPacket(r io.Reader) (packet MpegTsPacket, err error) + type MpegTsPesStream struct + PesPkt MpegTsPESPacket + TsPkt MpegTsPacket + type MpegTsPmtStream struct + Descriptor []MpegTsDescriptor + ElementaryPID uint16 + EsInfoLength uint16 + Reserved5 byte + Reserved6 byte + StreamType byte + type MpegTsStream struct + TsPesPktChan chan *MpegTsPesStream + func NewMpegTsStream(bufferLength int) (ts *MpegTsStream) + func (s *MpegTsStream) Feed(ts io.Reader) error + type MpegtsPESFrame struct + ContinuityCounter byte + IsKeyFrame bool + Pid uint16 + ProgramClockReferenceBase uint64