Remove several slice allocations on ivfreader

This commit is contained in:
DataHoarder 2022-11-09 22:20:35 +01:00
parent e447e95974
commit ac6a6c11d7
Signed by: DataHoarder
SSH key fingerprint: SHA256:OLTRf6Fl87G52SiR7sWLGNzlJt4WOX+tfI2yxo0z7xk

View file

@ -81,10 +81,10 @@ func (i *IVFReader) ResetReader(reset func(bytesRead int64) io.Reader) {
// and an error if there is incomplete frame data.
// Returns all nil values when no more frames are available.
func (i *IVFReader) ParseNextFrame() ([]byte, *IVFFrameHeader, error) {
buffer := make([]byte, ivfFrameHeaderSize)
var buffer [ivfFrameHeaderSize]byte
var header *IVFFrameHeader
bytesRead, err := io.ReadFull(i.stream, buffer)
bytesRead, err := io.ReadFull(i.stream, buffer[:])
headerBytesRead := bytesRead
if errors.Is(err, io.ErrUnexpectedEOF) {
return nil, nil, errIncompleteFrameHeader
@ -112,9 +112,9 @@ func (i *IVFReader) ParseNextFrame() ([]byte, *IVFFrameHeader, error) {
// parseFileHeader reads 32 bytes from stream and returns
// IVF file header. This is always called before ParseNextFrame()
func (i *IVFReader) parseFileHeader() (*IVFFileHeader, error) {
buffer := make([]byte, ivfFileHeaderSize)
var buffer [ivfFileHeaderSize]byte
bytesRead, err := io.ReadFull(i.stream, buffer)
bytesRead, err := io.ReadFull(i.stream, buffer[:])
if errors.Is(err, io.ErrUnexpectedEOF) {
return nil, errIncompleteFileHeader
} else if err != nil {