add example
This commit is contained in:
parent
cb12a946ff
commit
371d0f13e3
@ -10,9 +10,7 @@ import (
|
|||||||
|
|
||||||
func DemuxExample() {
|
func DemuxExample() {
|
||||||
file, _ := os.Open("test.mp4")
|
file, _ := os.Open("test.mp4")
|
||||||
demuxer := &mp4.Demuxer{
|
demuxer := &mp4.Demuxer{R: file}
|
||||||
R: file,
|
|
||||||
}
|
|
||||||
demuxer.ReadHeader()
|
demuxer.ReadHeader()
|
||||||
|
|
||||||
fmt.Println("Total tracks: ", len(demuxer.Tracks))
|
fmt.Println("Total tracks: ", len(demuxer.Tracks))
|
||||||
@ -57,7 +55,35 @@ func DemuxExample() {
|
|||||||
fmt.Print(hex.Dump(sample))
|
fmt.Print(hex.Dump(sample))
|
||||||
}
|
}
|
||||||
|
|
||||||
func main() {
|
func MuxExample() {
|
||||||
DemuxExample()
|
infile, _ := os.Open("test.mp4")
|
||||||
|
outfile, _ := os.Create("test.out.mp4")
|
||||||
|
|
||||||
|
demuxer := &mp4.Demuxer{R: infile}
|
||||||
|
demuxer.ReadHeader()
|
||||||
|
|
||||||
|
muxer := &mp4.Muxer{W: outfile}
|
||||||
|
muxer.AddH264Track()
|
||||||
|
muxer.TrackH264.SetH264PPS(demuxer.TrackH264.GetH264PPS())
|
||||||
|
muxer.TrackH264.SetH264SPS(demuxer.TrackH264.GetH264SPS())
|
||||||
|
muxer.TrackH264.SetTimeScale(demuxer.TrackH264.TimeScale())
|
||||||
|
|
||||||
|
muxer.WriteHeader()
|
||||||
|
for {
|
||||||
|
pts, dts, isKeyFrame, data, err := demuxer.TrackH264.ReadSample()
|
||||||
|
if err != nil {
|
||||||
|
break
|
||||||
|
}
|
||||||
|
fmt.Println("sample #", dts, pts)
|
||||||
|
muxer.TrackH264.WriteSample(pts, dts, isKeyFrame, data)
|
||||||
|
}
|
||||||
|
|
||||||
|
muxer.WriteTrailer()
|
||||||
|
outfile.Close()
|
||||||
|
}
|
||||||
|
|
||||||
|
func main() {
|
||||||
|
//DemuxExample()
|
||||||
|
MuxExample()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user