diff --git a/muxer.go b/muxer.go index f113975..877feeb 100644 --- a/muxer.go +++ b/muxer.go @@ -79,14 +79,7 @@ func (self *Muxer) WriteTrailer() (err error) { return } -func (self *Muxer) WriteHeader(streams []av.CodecData) (err error) { - self.streams = []*Stream{} - for _, stream := range streams { - if err = self.newStream(stream); err != nil { - return - } - } - +func (self *Muxer) WritePATPMT() (err error) { bufPAT := &bytes.Buffer{} bufPMT := &bytes.Buffer{} @@ -131,6 +124,21 @@ func (self *Muxer) WriteHeader(streams []av.CodecData) (err error) { return } +func (self *Muxer) WriteHeader(streams []av.CodecData) (err error) { + self.streams = []*Stream{} + for _, stream := range streams { + if err = self.newStream(stream); err != nil { + return + } + } + + if err = self.WritePATPMT(); err != nil { + return + } + + return +} + func (self *Muxer) WritePacket(streamIndex int, pkt av.Packet) (err error) { stream := self.streams[streamIndex]