add handler
This commit is contained in:
parent
50b272ba76
commit
e85b96ed10
@ -11,15 +11,6 @@ import (
|
|||||||
"io"
|
"io"
|
||||||
)
|
)
|
||||||
|
|
||||||
func Open(R io.Reader) (demuxer *Demuxer, err error) {
|
|
||||||
_demuxer := &Demuxer{R: R}
|
|
||||||
if err = _demuxer.ReadHeader(); err != nil {
|
|
||||||
return
|
|
||||||
}
|
|
||||||
demuxer = _demuxer
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
type Demuxer struct {
|
type Demuxer struct {
|
||||||
R io.Reader
|
R io.Reader
|
||||||
|
|
||||||
|
18
handler.go
Normal file
18
handler.go
Normal file
@ -0,0 +1,18 @@
|
|||||||
|
package ts
|
||||||
|
|
||||||
|
import (
|
||||||
|
"io"
|
||||||
|
"github.com/nareix/av"
|
||||||
|
"github.com/nareix/av/avutil"
|
||||||
|
)
|
||||||
|
|
||||||
|
func Handler(h *avutil.RegisterHandler) {
|
||||||
|
h.Ext = ".ts"
|
||||||
|
h.ReaderDemuxer = func(r io.Reader) av.Demuxer {
|
||||||
|
return &Demuxer{R: r}
|
||||||
|
}
|
||||||
|
h.WriterMuxer = func(w io.Writer) av.Muxer {
|
||||||
|
return &Muxer{W: w}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
11
muxer.go
11
muxer.go
@ -9,15 +9,6 @@ import (
|
|||||||
"io"
|
"io"
|
||||||
)
|
)
|
||||||
|
|
||||||
func Create(W io.Writer, streams []av.CodecData) (muxer *Muxer, err error) {
|
|
||||||
_muxer := &Muxer{W: W}
|
|
||||||
if err = _muxer.WriteHeader(streams); err != nil {
|
|
||||||
return
|
|
||||||
}
|
|
||||||
muxer = _muxer
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
type Muxer struct {
|
type Muxer struct {
|
||||||
W io.Writer
|
W io.Writer
|
||||||
streams []*Stream
|
streams []*Stream
|
||||||
@ -139,7 +130,7 @@ func (self *Muxer) WriteHeader(streams []av.CodecData) (err error) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func (self *Muxer) WritePacket(pkt av.Packet) (err error) {
|
func (self *Muxer) WritePacket(pkt av.Packet) (err error) {
|
||||||
if true {
|
if false {
|
||||||
fmt.Println("ts:", "in", pkt.Idx, pkt.Time, "len", len(pkt.Data))
|
fmt.Println("ts:", "in", pkt.Idx, pkt.Time, "len", len(pkt.Data))
|
||||||
}
|
}
|
||||||
if err = self.writePacket(pkt); err != nil {
|
if err = self.writePacket(pkt); err != nil {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user