streaming

Media streaming and broadcast systems in Go
Log | Files | Refs | README | LICENSE

commit f0e60574d2b92126423a85c15191f584bfb1b2e4
parent b93d0c2e5b69b49940dc51d9ad13ae286366a0d8
Author: Oliver Lowe <o@olowe.co>
Date:   Mon, 10 Jun 2024 13:11:38 +1000

mpegts: add first high-level decode/encode test

This really just checks that we don't fail in a big way. More thorough
testing like checking encoded packets are bit-for-bit identical from
the source is coming next!

Diffstat:
Ampegts/codec_test.go | 27+++++++++++++++++++++++++++
Ampegts/testdata/193039199_mp4_h264_aac_hq_7.ts | 0
2 files changed, 27 insertions(+), 0 deletions(-)

diff --git a/mpegts/codec_test.go b/mpegts/codec_test.go @@ -0,0 +1,27 @@ +package mpegts + +import ( + "errors" + "io" + "os" + "testing" +) + +func TestDecode(t *testing.T) { + f, err := os.Open("testdata/193039199_mp4_h264_aac_hq_7.ts") + if err != nil { + t.Fatal(err) + } + defer f.Close() + for { + p, err := Decode(f) + if errors.Is(err, io.EOF) { + break + } else if err != nil { + t.Fatalf("decode packet: %v", err) + } + if err := Encode(io.Discard, p); err != nil { + t.Fatalf("encode packet: %v", err) + } + } +} diff --git a/mpegts/testdata/193039199_mp4_h264_aac_hq_7.ts b/mpegts/testdata/193039199_mp4_h264_aac_hq_7.ts Binary files differ.