diff --git a/audio/format/aac/mp4.go b/audio/format/aac/mp4.go index d0ce7d9..603cfdc 100644 --- a/audio/format/aac/mp4.go +++ b/audio/format/aac/mp4.go @@ -87,13 +87,14 @@ func (d *mp4Decoder) Read() (samples [][]byte) { return } else { + workSpace := make([]byte, 1024) if d.mp4.Mdat.Data == nil { return nil } for _, trak := range d.mp4.Moov.Traks { if trak.Tkhd.TrackID == d.trackId { buf := new(bytes.Buffer) - if err := d.mp4.CopySampleData(buf, d.reader, trak, d.currentSample, d.currentSample); err != nil || buf.Len() == 0 { + if err := d.mp4.CopySampleData(buf, d.reader, trak, d.currentSample, d.currentSample, workSpace); err != nil || buf.Len() == 0 { return nil } d.currentSample++ diff --git a/audio/format/alac/mp4.go b/audio/format/alac/mp4.go index 4d0f736..7b118f4 100644 --- a/audio/format/alac/mp4.go +++ b/audio/format/alac/mp4.go @@ -90,10 +90,11 @@ func (d *mp4Decoder) Read() (samples [][]byte) { return } else { + workSpace := make([]byte, 1024) for _, trak := range d.mp4.Moov.Traks { if trak.Tkhd.TrackID == d.trackId { buf := new(bytes.Buffer) - if err := d.mp4.CopySampleData(buf, d.reader, trak, d.currentSample, d.currentSample); err != nil { + if err := d.mp4.CopySampleData(buf, d.reader, trak, d.currentSample, d.currentSample, workSpace); err != nil { return nil } d.currentSample++