expose InterleavedFrame read/write functions

This commit is contained in:
aler9
2020-07-19 18:09:46 +02:00
parent 28192f091b
commit a110f2b6a2
4 changed files with 12 additions and 10 deletions

View File

@@ -24,9 +24,10 @@ type InterleavedFrame struct {
Content []byte
}
func (f *InterleavedFrame) read(r io.Reader) error {
// Read reads an interleaved frame from a buffered reader.
func (f *InterleavedFrame) Read(br *bufio.Reader) error {
var header [4]byte
_, err := io.ReadFull(r, header[:])
_, err := io.ReadFull(br, header[:])
if err != nil {
return err
}
@@ -52,14 +53,15 @@ func (f *InterleavedFrame) read(r io.Reader) error {
f.Content = f.Content[:framelen]
_, err = io.ReadFull(r, f.Content)
_, err = io.ReadFull(br, f.Content)
if err != nil {
return err
}
return nil
}
func (f *InterleavedFrame) write(bw *bufio.Writer) error {
// Write writes an InterleavedFrame into a buffered writer.
func (f *InterleavedFrame) Write(bw *bufio.Writer) error {
// convert TrackId and StreamType into channel
channel := func() uint8 {
if f.StreamType == StreamTypeRtp {