fix ContinuityCounter bug
This commit is contained in:
		| @@ -67,11 +67,16 @@ func (self *Muxer) newStream(idx int, codec av.CodecData) (err error) { | |||||||
| 	return | 	return | ||||||
| } | } | ||||||
|  |  | ||||||
| func (self *Muxer) writePaddingTSPackets(tsw *tsio.TSWriter) (err error) { | func (self *Muxer) writePaddingTSPackets(streamW *Stream) (err error) { | ||||||
| 	for tsw.ContinuityCounter&0xf != 0x0 { | 	for streamW.tsw.ContinuityCounter&0xf != 0x0 { | ||||||
| 		if err = tsw.WritePackets(self.w, self.datav[:1], 0, false, true); err != nil { | 		header := tsio.TSHeader{ | ||||||
|  | 			PID:               uint(streamW.pid), | ||||||
|  | 			ContinuityCounter: streamW.tsw.ContinuityCounter, | ||||||
|  | 		} | ||||||
|  | 		if _, err = tsio.WriteTSHeader(self.w, header, 0); err != nil { | ||||||
| 			return | 			return | ||||||
| 		} | 		} | ||||||
|  | 		streamW.tsw.ContinuityCounter++ | ||||||
| 	} | 	} | ||||||
| 	return | 	return | ||||||
| } | } | ||||||
| @@ -79,7 +84,7 @@ func (self *Muxer) writePaddingTSPackets(tsw *tsio.TSWriter) (err error) { | |||||||
| func (self *Muxer) WriteTrailer() (err error) { | func (self *Muxer) WriteTrailer() (err error) { | ||||||
| 	if self.PaddingToMakeCounterCont { | 	if self.PaddingToMakeCounterCont { | ||||||
| 		for _, stream := range self.streams { | 		for _, stream := range self.streams { | ||||||
| 			if err = self.writePaddingTSPackets(stream.tsw); err != nil { | 			if err = self.writePaddingTSPackets(stream); err != nil { | ||||||
| 				return | 				return | ||||||
| 			} | 			} | ||||||
| 		} | 		} | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user
	 deepch
					deepch