Bento4 v1.6.0-639 was discovered to contain a memory leak via the AP4_SttsAtom::Create function in mp42hls.
cpe:2.3:a:axiosys:bento4:1.6.0-639:*:*:*:*:*:*:*
A003FBD1-339C-409D-A304-7FEE97E23250
OR
# Summary
Hi there, I tested the binary mp42hls, the version of Bento4 is the latest (the newest master branch) and the operation system is Ubuntu 18.04.6 LTS (docker) and this binary crash with the following.

# Details
```

root@2e47aa8b3277:/test_mp42hls# ./mp42hls --audio-track-id 2 ./mp42hls\-poc\-1
ERROR: audio track ID 2 not found

=================================================================
==4379==ERROR: LeakSanitizer: detected memory leaks

Indirect leak of 512 byte(s) in 1 object(s) allocated from:
    #0 0x9def30 in malloc /llvm-project/compiler-rt/lib/asan/asan_malloc_linux.cpp:145
    #1 0x7f476f32e297 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libstdc++.so.6+0x93297)
    #2 0x6d951f in AP4_SttsAtom::Create(unsigned int, AP4_ByteStream&) (/test_mp42hls/mp42hls+0x6d951f)
    #3 0x4bb0c3 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4bb0c3)
    #4 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #5 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #6 0x4fc2da in AP4_ContainerAtom::Create(unsigned int, unsigned long long, bool, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fc2da)
    #7 0x4c4421 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c4421)
    #8 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #9 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #10 0x4fc2da in AP4_ContainerAtom::Create(unsigned int, unsigned long long, bool, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fc2da)
    #11 0x4c4421 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c4421)
    #12 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #13 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #14 0x4fc2da in AP4_ContainerAtom::Create(unsigned int, unsigned long long, bool, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fc2da)
    #15 0x4c4421 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c4421)
    #16 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #17 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #18 0x4fedeb in AP4_ContainerAtom::AP4_ContainerAtom(unsigned int, unsigned long long, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fedeb)

Indirect leak of 324 byte(s) in 1 object(s) allocated from:
    #0 0x9def30 in malloc /llvm-project/compiler-rt/lib/asan/asan_malloc_linux.cpp:145
    #1 0x7f476f32e297 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libstdc++.so.6+0x93297)
    #2 0x6d10ef in AP4_StszAtom::Create(unsigned int, AP4_ByteStream&) (/test_mp42hls/mp42hls+0x6d10ef)
    #3 0x4bae13 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4bae13)
    #4 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #5 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #6 0x4fc2da in AP4_ContainerAtom::Create(unsigned int, unsigned long long, bool, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fc2da)
    #7 0x4c4421 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c4421)
    #8 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #9 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #10 0x4fc2da in AP4_ContainerAtom::Create(unsigned int, unsigned long long, bool, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fc2da)
    #11 0x4c4421 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c4421)
    #12 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #13 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #14 0x4fc2da in AP4_ContainerAtom::Create(unsigned int, unsigned long long, bool, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fc2da)
    #15 0x4c4421 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c4421)
    #16 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #17 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #18 0x4fedeb in AP4_ContainerAtom::AP4_ContainerAtom(unsigned int, unsigned long long, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fedeb)

Indirect leak of 312 byte(s) in 8 object(s) allocated from:
    #0 0x9def30 in malloc /llvm-project/compiler-rt/lib/asan/asan_malloc_linux.cpp:145
    #1 0x7f476f32e297 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libstdc++.so.6+0x93297)
    #2 0x53c1a4 in AP4_File::AP4_File(AP4_ByteStream&, bool) (/test_mp42hls/mp42hls+0x53c1a4)
    #3 0x4222e1 in main (/test_mp42hls/mp42hls+0x4222e1)
    #4 0x7f476e4f2c86 in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x21c86)

Indirect leak of 256 byte(s) in 1 object(s) allocated from:
    #0 0x9def30 in malloc /llvm-project/compiler-rt/lib/asan/asan_malloc_linux.cpp:145
    #1 0x7f476f32e297 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libstdc++.so.6+0x93297)
    #2 0x4bf01d in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4bf01d)
    #3 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #4 0x4c78bc in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c78bc)
    #5 0x53a38e in AP4_File::ParseStream(AP4_ByteStream&, AP4_AtomFactory&, bool) (/test_mp42hls/mp42hls+0x53a38e)
    #6 0x53c1a4 in AP4_File::AP4_File(AP4_ByteStream&, bool) (/test_mp42hls/mp42hls+0x53c1a4)
    #7 0x4222e1 in main (/test_mp42hls/mp42hls+0x4222e1)
    #8 0x7f476e4f2c86 in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x21c86)

Indirect leak of 240 byte(s) in 3 object(s) allocated from:
    #0 0x9def30 in malloc /llvm-project/compiler-rt/lib/asan/asan_malloc_linux.cpp:145
    #1 0x7f476f32e297 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libstdc++.so.6+0x93297)
    #2 0x4c4421 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c4421)
    #3 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #4 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #5 0x4fedeb in AP4_ContainerAtom::AP4_ContainerAtom(unsigned int, unsigned long long, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fedeb)

Indirect leak of 192 byte(s) in 1 object(s) allocated from:
    #0 0x9def30 in malloc /llvm-project/compiler-rt/lib/asan/asan_malloc_linux.cpp:145
    #1 0x7f476f32e297 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libstdc++.so.6+0x93297)
    #2 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #3 0x6c5538 in AP4_StsdAtom::AP4_StsdAtom(unsigned int, unsigned char, unsigned int, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x6c5538)
    #4 0x6c48d2 in AP4_StsdAtom::Create(unsigned int, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x6c48d2)
    #5 0x4ba8b3 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4ba8b3)
    #6 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #7 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #8 0x4fc2da in AP4_ContainerAtom::Create(unsigned int, unsigned long long, bool, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fc2da)
    #9 0x4c4421 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c4421)
    #10 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #11 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #12 0x4fc2da in AP4_ContainerAtom::Create(unsigned int, unsigned long long, bool, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fc2da)
    #13 0x4c4421 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c4421)
    #14 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #15 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #16 0x4fc2da in AP4_ContainerAtom::Create(unsigned int, unsigned long long, bool, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fc2da)
    #17 0x4c4421 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c4421)
    #18 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #19 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #20 0x4fedeb in AP4_ContainerAtom::AP4_ContainerAtom(unsigned int, unsigned long long, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fedeb)

Indirect leak of 192 byte(s) in 2 object(s) allocated from:
    #0 0x9def30 in malloc /llvm-project/compiler-rt/lib/asan/asan_malloc_linux.cpp:145
    #1 0x7f476f32e297 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libstdc++.so.6+0x93297)
    #2 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #3 0x4c78bc in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c78bc)
    #4 0x53a38e in AP4_File::ParseStream(AP4_ByteStream&, AP4_AtomFactory&, bool) (/test_mp42hls/mp42hls+0x53a38e)
    #5 0x53c1a4 in AP4_File::AP4_File(AP4_ByteStream&, bool) (/test_mp42hls/mp42hls+0x53c1a4)
    #6 0x4222e1 in main (/test_mp42hls/mp42hls+0x4222e1)
    #7 0x7f476e4f2c86 in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x21c86)

Indirect leak of 176 byte(s) in 2 object(s) allocated from:
    #0 0x9def30 in malloc /llvm-project/compiler-rt/lib/asan/asan_malloc_linux.cpp:145
    #1 0x7f476f32e297 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libstdc++.so.6+0x93297)
    #2 0x4c78bc in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c78bc)
    #3 0x53a38e in AP4_File::ParseStream(AP4_ByteStream&, AP4_AtomFactory&, bool) (/test_mp42hls/mp42hls+0x53a38e)
    #4 0x53c1a4 in AP4_File::AP4_File(AP4_ByteStream&, bool) (/test_mp42hls/mp42hls+0x53c1a4)
    #5 0x4222e1 in main (/test_mp42hls/mp42hls+0x4222e1)
    #6 0x7f476e4f2c86 in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x21c86)

Indirect leak of 160 byte(s) in 2 object(s) allocated from:
    #0 0x9def30 in malloc /llvm-project/compiler-rt/lib/asan/asan_malloc_linux.cpp:145
    #1 0x7f476f32e297 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libstdc++.so.6+0x93297)
    #2 0x4c4421 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c4421)
    #3 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #4 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #5 0x4fc2da in AP4_ContainerAtom::Create(unsigned int, unsigned long long, bool, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fc2da)
    #6 0x4c4421 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c4421)
    #7 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #8 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #9 0x4fc2da in AP4_ContainerAtom::Create(unsigned int, unsigned long long, bool, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fc2da)
    #10 0x4c4421 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c4421)
    #11 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #12 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #13 0x4fedeb in AP4_ContainerAtom::AP4_ContainerAtom(unsigned int, unsigned long long, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fedeb)

Indirect leak of 152 byte(s) in 1 object(s) allocated from:
    #0 0x9def30 in malloc /llvm-project/compiler-rt/lib/asan/asan_malloc_linux.cpp:145
    #1 0x7f476f32e297 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libstdc++.so.6+0x93297)
    #2 0x4b8f63 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4b8f63)
    #3 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #4 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #5 0x4fedeb in AP4_ContainerAtom::AP4_ContainerAtom(unsigned int, unsigned long long, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fedeb)

Indirect leak of 144 byte(s) in 6 object(s) allocated from:
    #0 0x9def30 in malloc /llvm-project/compiler-rt/lib/asan/asan_malloc_linux.cpp:145
    #1 0x7f476f32e297 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libstdc++.so.6+0x93297)
    #2 0x4fc2da in AP4_ContainerAtom::Create(unsigned int, unsigned long long, bool, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fc2da)
    #3 0x4c4421 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c4421)
    #4 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #5 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #6 0x4fc2da in AP4_ContainerAtom::Create(unsigned int, unsigned long long, bool, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fc2da)
    #7 0x4c4421 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c4421)
    #8 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #9 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #10 0x4fc2da in AP4_ContainerAtom::Create(unsigned int, unsigned long long, bool, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fc2da)
    #11 0x4c4421 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c4421)
    #12 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #13 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #14 0x4fedeb in AP4_ContainerAtom::AP4_ContainerAtom(unsigned int, unsigned long long, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fedeb)

Indirect leak of 144 byte(s) in 6 object(s) allocated from:
    #0 0x9def30 in malloc /llvm-project/compiler-rt/lib/asan/asan_malloc_linux.cpp:145
    #1 0x7f476f32e297 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libstdc++.so.6+0x93297)
    #2 0x4fedeb in AP4_ContainerAtom::AP4_ContainerAtom(unsigned int, unsigned long long, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fedeb)

Indirect leak of 136 byte(s) in 1 object(s) allocated from:
    #0 0x9def30 in malloc /llvm-project/compiler-rt/lib/asan/asan_malloc_linux.cpp:145
    #1 0x7f476f32e297 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libstdc++.so.6+0x93297)
    #2 0x4ba099 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4ba099)
    #3 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #4 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #5 0x4fedeb in AP4_ContainerAtom::AP4_ContainerAtom(unsigned int, unsigned long long, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fedeb)

Indirect leak of 120 byte(s) in 2 object(s) allocated from:
    #0 0x9def30 in malloc /llvm-project/compiler-rt/lib/asan/asan_malloc_linux.cpp:145
    #1 0x7f476f32e297 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libstdc++.so.6+0x93297)
    #2 0x7f476e4f2c86 in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x21c86)

Indirect leak of 120 byte(s) in 5 object(s) allocated from:
    #0 0x9def30 in malloc /llvm-project/compiler-rt/lib/asan/asan_malloc_linux.cpp:145
    #1 0x7f476f32e297 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libstdc++.so.6+0x93297)
    #2 0x4fc2da in AP4_ContainerAtom::Create(unsigned int, unsigned long long, bool, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fc2da)
    #3 0x4c4421 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c4421)
    #4 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #5 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #6 0x4fedeb in AP4_ContainerAtom::AP4_ContainerAtom(unsigned int, unsigned long long, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fedeb)

Indirect leak of 104 byte(s) in 1 object(s) allocated from:
    #0 0x9def30 in malloc /llvm-project/compiler-rt/lib/asan/asan_malloc_linux.cpp:145
    #1 0x7f476f32e297 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libstdc++.so.6+0x93297)
    #2 0x4ba8b3 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4ba8b3)
    #3 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #4 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #5 0x4fc2da in AP4_ContainerAtom::Create(unsigned int, unsigned long long, bool, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fc2da)
    #6 0x4c4421 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c4421)
    #7 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #8 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #9 0x4fc2da in AP4_ContainerAtom::Create(unsigned int, unsigned long long, bool, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fc2da)
    #10 0x4c4421 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c4421)
    #11 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #12 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #13 0x4fc2da in AP4_ContainerAtom::Create(unsigned int, unsigned long long, bool, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fc2da)
    #14 0x4c4421 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c4421)
    #15 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #16 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #17 0x4fedeb in AP4_ContainerAtom::AP4_ContainerAtom(unsigned int, unsigned long long, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fedeb)

Indirect leak of 104 byte(s) in 2 object(s) allocated from:
    #0 0x9def30 in malloc /llvm-project/compiler-rt/lib/asan/asan_malloc_linux.cpp:145
    #1 0x7f476f32e297 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libstdc++.so.6+0x93297)
    #2 0x868704 in AP4_EsDescriptor::AP4_EsDescriptor(AP4_ByteStream&, unsigned int, unsigned int) (/test_mp42hls/mp42hls+0x868704)
    #3 0x85d250 in AP4_DescriptorFactory::CreateDescriptorFromStream(AP4_ByteStream&, AP4_Descriptor*&) (/test_mp42hls/mp42hls+0x85d250)
    #4 0x537d62 in AP4_EsdsAtom::Create(unsigned int, AP4_ByteStream&) (/test_mp42hls/mp42hls+0x537d62)
    #5 0x4bb623 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4bb623)
    #6 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #7 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #8 0x672a2e in AP4_SampleEntry::Read(AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x672a2e)
    #9 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #10 0x6c5538 in AP4_StsdAtom::AP4_StsdAtom(unsigned int, unsigned char, unsigned int, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x6c5538)
    #11 0x6c48d2 in AP4_StsdAtom::Create(unsigned int, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x6c48d2)
    #12 0x4ba8b3 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4ba8b3)
    #13 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #14 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #15 0x4fc2da in AP4_ContainerAtom::Create(unsigned int, unsigned long long, bool, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fc2da)
    #16 0x4c4421 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c4421)
    #17 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #18 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #19 0x4fc2da in AP4_ContainerAtom::Create(unsigned int, unsigned long long, bool, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fc2da)
    #20 0x4c4421 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c4421)
    #21 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #22 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #23 0x4fc2da in AP4_ContainerAtom::Create(unsigned int, unsigned long long, bool, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fc2da)
    #24 0x4c4421 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c4421)
    #25 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #26 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #27 0x4fedeb in AP4_ContainerAtom::AP4_ContainerAtom(unsigned int, unsigned long long, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fedeb)

Indirect leak of 101 byte(s) in 2 object(s) allocated from:
    #0 0x9def30 in malloc /llvm-project/compiler-rt/lib/asan/asan_malloc_linux.cpp:145
    #1 0x7f476f32e297 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libstdc++.so.6+0x93297)
    #2 0x4b9f41 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4b9f41)
    #3 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #4 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #5 0x4fc2da in AP4_ContainerAtom::Create(unsigned int, unsigned long long, bool, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fc2da)
    #6 0x4c4421 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c4421)
    #7 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #8 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #9 0x4fedeb in AP4_ContainerAtom::AP4_ContainerAtom(unsigned int, unsigned long long, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fedeb)

Indirect leak of 96 byte(s) in 1 object(s) allocated from:
    #0 0x9def30 in malloc /llvm-project/compiler-rt/lib/asan/asan_malloc_linux.cpp:145
    #1 0x7f476f32e297 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libstdc++.so.6+0x93297)
    #2 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #3 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #4 0x4fedeb in AP4_ContainerAtom::AP4_ContainerAtom(unsigned int, unsigned long long, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fedeb)

Indirect leak of 89 byte(s) in 2 object(s) allocated from:
    #0 0x9def30 in malloc /llvm-project/compiler-rt/lib/asan/asan_malloc_linux.cpp:145
    #1 0x7f476f32e297 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libstdc++.so.6+0x93297)
    #2 0x4b9f41 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4b9f41)
    #3 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #4 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #5 0x4fbb89 in AP4_ContainerAtom::Create(unsigned int, unsigned long long, bool, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fbb89)
    #6 0x4c48ca in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c48ca)
    #7 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #8 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #9 0x4fc2da in AP4_ContainerAtom::Create(unsigned int, unsigned long long, bool, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fc2da)
    #10 0x4c4421 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c4421)
    #11 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #12 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #13 0x4fedeb in AP4_ContainerAtom::AP4_ContainerAtom(unsigned int, unsigned long long, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fedeb)

Indirect leak of 88 byte(s) in 1 object(s) allocated from:
    #0 0x9def30 in malloc /llvm-project/compiler-rt/lib/asan/asan_malloc_linux.cpp:145
    #1 0x7f476f32e297 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libstdc++.so.6+0x93297)
    #2 0x537d62 in AP4_EsdsAtom::Create(unsigned int, AP4_ByteStream&) (/test_mp42hls/mp42hls+0x537d62)
    #3 0x4bb623 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4bb623)
    #4 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #5 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #6 0x672a2e in AP4_SampleEntry::Read(AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x672a2e)
    #7 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #8 0x6c5538 in AP4_StsdAtom::AP4_StsdAtom(unsigned int, unsigned char, unsigned int, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x6c5538)
    #9 0x6c48d2 in AP4_StsdAtom::Create(unsigned int, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x6c48d2)
    #10 0x4ba8b3 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4ba8b3)
    #11 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #12 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #13 0x4fc2da in AP4_ContainerAtom::Create(unsigned int, unsigned long long, bool, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fc2da)
    #14 0x4c4421 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c4421)
    #15 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #16 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #17 0x4fc2da in AP4_ContainerAtom::Create(unsigned int, unsigned long long, bool, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fc2da)
    #18 0x4c4421 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c4421)
    #19 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #20 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #21 0x4fc2da in AP4_ContainerAtom::Create(unsigned int, unsigned long long, bool, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fc2da)
    #22 0x4c4421 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c4421)
    #23 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #24 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #25 0x4fedeb in AP4_ContainerAtom::AP4_ContainerAtom(unsigned int, unsigned long long, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fedeb)

Indirect leak of 88 byte(s) in 1 object(s) allocated from:
    #0 0x9def30 in malloc /llvm-project/compiler-rt/lib/asan/asan_malloc_linux.cpp:145
    #1 0x7f476f32e297 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libstdc++.so.6+0x93297)
    #2 0x4ba751 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4ba751)
    #3 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #4 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #5 0x4fc2da in AP4_ContainerAtom::Create(unsigned int, unsigned long long, bool, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fc2da)
    #6 0x4c4421 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c4421)
    #7 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #8 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #9 0x4fedeb in AP4_ContainerAtom::AP4_ContainerAtom(unsigned int, unsigned long long, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fedeb)

Indirect leak of 80 byte(s) in 1 object(s) allocated from:
    #0 0x9def30 in malloc /llvm-project/compiler-rt/lib/asan/asan_malloc_linux.cpp:145
    #1 0x7f476f32e297 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libstdc++.so.6+0x93297)
    #2 0x4c4421 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c4421)
    #3 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #4 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #5 0x4fbb89 in AP4_ContainerAtom::Create(unsigned int, unsigned long long, bool, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fbb89)
    #6 0x4c48ca in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c48ca)
    #7 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #8 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #9 0x4fc2da in AP4_ContainerAtom::Create(unsigned int, unsigned long long, bool, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fc2da)
    #10 0x4c4421 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c4421)
    #11 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #12 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #13 0x4fedeb in AP4_ContainerAtom::AP4_ContainerAtom(unsigned int, unsigned long long, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fedeb)

Indirect leak of 80 byte(s) in 1 object(s) allocated from:
    #0 0x9def30 in malloc /llvm-project/compiler-rt/lib/asan/asan_malloc_linux.cpp:145
    #1 0x7f476f32e297 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libstdc++.so.6+0x93297)
    #2 0x78dd17 in AP4_MetaDataAtomTypeHandler::CreateAtom(unsigned int, unsigned int, AP4_ByteStream&, unsigned int, AP4_Atom*&) (/test_mp42hls/mp42hls+0x78dd17)
    #3 0x4c511b in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c511b)
    #4 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #5 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #6 0x4fc2da in AP4_ContainerAtom::Create(unsigned int, unsigned long long, bool, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fc2da)
    #7 0x4c4421 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c4421)
    #8 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #9 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #10 0x4fbb89 in AP4_ContainerAtom::Create(unsigned int, unsigned long long, bool, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fbb89)
    #11 0x4c48ca in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c48ca)
    #12 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #13 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #14 0x4fc2da in AP4_ContainerAtom::Create(unsigned int, unsigned long long, bool, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fc2da)
    #15 0x4c4421 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c4421)
    #16 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #17 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #18 0x4fedeb in AP4_ContainerAtom::AP4_ContainerAtom(unsigned int, unsigned long long, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fedeb)

Indirect leak of 80 byte(s) in 1 object(s) allocated from:
    #0 0x9def30 in malloc /llvm-project/compiler-rt/lib/asan/asan_malloc_linux.cpp:145
    #1 0x7f476f32e297 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libstdc++.so.6+0x93297)
    #2 0x4c48ca in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c48ca)
    #3 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #4 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #5 0x4fc2da in AP4_ContainerAtom::Create(unsigned int, unsigned long long, bool, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fc2da)
    #6 0x4c4421 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c4421)
    #7 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #8 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #9 0x4fedeb in AP4_ContainerAtom::AP4_ContainerAtom(unsigned int, unsigned long long, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fedeb)

Indirect leak of 80 byte(s) in 1 object(s) allocated from:
    #0 0x9def30 in malloc /llvm-project/compiler-rt/lib/asan/asan_malloc_linux.cpp:145
    #1 0x7f476f32e297 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libstdc++.so.6+0x93297)
    #2 0x4bb0c3 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4bb0c3)
    #3 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #4 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #5 0x4fc2da in AP4_ContainerAtom::Create(unsigned int, unsigned long long, bool, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fc2da)
    #6 0x4c4421 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c4421)
    #7 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #8 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #9 0x4fc2da in AP4_ContainerAtom::Create(unsigned int, unsigned long long, bool, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fc2da)
    #10 0x4c4421 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c4421)
    #11 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #12 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #13 0x4fc2da in AP4_ContainerAtom::Create(unsigned int, unsigned long long, bool, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fc2da)
    #14 0x4c4421 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c4421)
    #15 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #16 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #17 0x4fedeb in AP4_ContainerAtom::AP4_ContainerAtom(unsigned int, unsigned long long, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fedeb)

Indirect leak of 80 byte(s) in 1 object(s) allocated from:
    #0 0x9def30 in malloc /llvm-project/compiler-rt/lib/asan/asan_malloc_linux.cpp:145
    #1 0x7f476f32e297 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libstdc++.so.6+0x93297)
    #2 0x4bdf2b in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4bdf2b)
    #3 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #4 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #5 0x4fc2da in AP4_ContainerAtom::Create(unsigned int, unsigned long long, bool, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fc2da)
    #6 0x4c4421 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c4421)
    #7 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #8 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #9 0x4fc2da in AP4_ContainerAtom::Create(unsigned int, unsigned long long, bool, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fc2da)
    #10 0x4c4421 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c4421)
    #11 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #12 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #13 0x4fc2da in AP4_ContainerAtom::Create(unsigned int, unsigned long long, bool, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fc2da)
    #14 0x4c4421 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c4421)
    #15 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #16 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #17 0x4fedeb in AP4_ContainerAtom::AP4_ContainerAtom(unsigned int, unsigned long long, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fedeb)

Indirect leak of 80 byte(s) in 1 object(s) allocated from:
    #0 0x9def30 in malloc /llvm-project/compiler-rt/lib/asan/asan_malloc_linux.cpp:145
    #1 0x7f476f32e297 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libstdc++.so.6+0x93297)
    #2 0x4c4421 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c4421)
    #3 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #4 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #5 0x4fc2da in AP4_ContainerAtom::Create(unsigned int, unsigned long long, bool, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fc2da)
    #6 0x4c4421 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c4421)
    #7 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #8 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #9 0x4fedeb in AP4_ContainerAtom::AP4_ContainerAtom(unsigned int, unsigned long long, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fedeb)

……

Indirect leak of 20 byte(s) in 1 object(s) allocated from:
    #0 0x9def30 in malloc /llvm-project/compiler-rt/lib/asan/asan_malloc_linux.cpp:145
    #1 0x7f476f32e297 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libstdc++.so.6+0x93297)
    #2 0x6b73af in AP4_StscAtom::Create(unsigned int, AP4_ByteStream&) (/test_mp42hls/mp42hls+0x6b73af)
    #3 0x4baa0b in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4baa0b)
    #4 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #5 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #6 0x4fc2da in AP4_ContainerAtom::Create(unsigned int, unsigned long long, bool, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fc2da)
    #7 0x4c4421 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c4421)
    #8 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #9 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #10 0x4fc2da in AP4_ContainerAtom::Create(unsigned int, unsigned long long, bool, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fc2da)
    #11 0x4c4421 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c4421)
    #12 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #13 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #14 0x4fc2da in AP4_ContainerAtom::Create(unsigned int, unsigned long long, bool, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fc2da)
    #15 0x4c4421 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c4421)
    #16 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #17 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #18 0x4fedeb in AP4_ContainerAtom::AP4_ContainerAtom(unsigned int, unsigned long long, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fedeb)

Indirect leak of 4 byte(s) in 1 object(s) allocated from:
    #0 0x9def30 in malloc /llvm-project/compiler-rt/lib/asan/asan_malloc_linux.cpp:145
    #1 0x7f476f32e297 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libstdc++.so.6+0x93297)
    #2 0x5ab4ab in AP4_MdhdAtom::Create(unsigned int, AP4_ByteStream&) (/test_mp42hls/mp42hls+0x5ab4ab)
    #3 0x4ba751 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4ba751)
    #4 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #5 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #6 0x4fc2da in AP4_ContainerAtom::Create(unsigned int, unsigned long long, bool, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fc2da)
    #7 0x4c4421 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c4421)
    #8 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #9 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #10 0x4fedeb in AP4_ContainerAtom::AP4_ContainerAtom(unsigned int, unsigned long long, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fedeb)

SUMMARY: AddressSanitizer: 5306 byte(s) leaked in 88 allocation(s).


```
# POC
[mp42hls-poc.zip](https://github.com/axiomatic-systems/Bento4/files/9618647/mp42hls-poc.zip)

# Environment

Ubuntu 18.04.6 LTS (docker)
clang 12.0.1
clang++ 12.0.1
Bento4 master branch(5b7cc25) && Bento4 release version([1.6.0-639](https://www.bok.net/Bento4/binaries/Bento4-SDK-1-6-0-639.x86_64-unknown-linux.zip))


# Credit
Xudong Cao ([NCNIPC of China](http://www.nipc.org.cn/)), (Zhongguancun Laboratory)
Mengyue Feng ([NCNIPC of China](http://www.nipc.org.cn/)), (Zhongguancun Laboratory)
Han Zheng ([NCNIPC of China](http://www.nipc.org.cn/), [Hexhive](http://hexhive.epfl.ch/))

Thank you for your time!


Detected memory leaks in mp42hls
This is a GitHub Issue
repo:Bento4
owner:axiomatic-systems
Title : Detected memory leaks in mp42hls
Issue date:

--- start body ---
# Summary
Hi there, I tested the binary mp42hls, the version of Bento4 is the latest (the newest master branch) and the operation system is Ubuntu 18.04.6 LTS (docker) and this binary crash with the following.

# Details
```

root@2e47aa8b3277:/test_mp42hls# ./mp42hls --audio-track-id 2 ./mp42hls\-poc\-1
ERROR: audio track ID 2 not found

=================================================================
==4379==ERROR: LeakSanitizer: detected memory leaks

Indirect leak of 512 byte(s) in 1 object(s) allocated from:
    #0 0x9def30 in malloc /llvm-project/compiler-rt/lib/asan/asan_malloc_linux.cpp:145
    #1 0x7f476f32e297 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libstdc++.so.6+0x93297)
    #2 0x6d951f in AP4_SttsAtom::Create(unsigned int, AP4_ByteStream&) (/test_mp42hls/mp42hls+0x6d951f)
    #3 0x4bb0c3 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4bb0c3)
    #4 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #5 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #6 0x4fc2da in AP4_ContainerAtom::Create(unsigned int, unsigned long long, bool, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fc2da)
    #7 0x4c4421 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c4421)
    #8 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #9 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #10 0x4fc2da in AP4_ContainerAtom::Create(unsigned int, unsigned long long, bool, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fc2da)
    #11 0x4c4421 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c4421)
    #12 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #13 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #14 0x4fc2da in AP4_ContainerAtom::Create(unsigned int, unsigned long long, bool, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fc2da)
    #15 0x4c4421 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c4421)
    #16 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #17 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #18 0x4fedeb in AP4_ContainerAtom::AP4_ContainerAtom(unsigned int, unsigned long long, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fedeb)

Indirect leak of 324 byte(s) in 1 object(s) allocated from:
    #0 0x9def30 in malloc /llvm-project/compiler-rt/lib/asan/asan_malloc_linux.cpp:145
    #1 0x7f476f32e297 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libstdc++.so.6+0x93297)
    #2 0x6d10ef in AP4_StszAtom::Create(unsigned int, AP4_ByteStream&) (/test_mp42hls/mp42hls+0x6d10ef)
    #3 0x4bae13 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4bae13)
    #4 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #5 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #6 0x4fc2da in AP4_ContainerAtom::Create(unsigned int, unsigned long long, bool, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fc2da)
    #7 0x4c4421 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c4421)
    #8 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #9 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #10 0x4fc2da in AP4_ContainerAtom::Create(unsigned int, unsigned long long, bool, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fc2da)
    #11 0x4c4421 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c4421)
    #12 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #13 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #14 0x4fc2da in AP4_ContainerAtom::Create(unsigned int, unsigned long long, bool, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fc2da)
    #15 0x4c4421 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c4421)
    #16 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #17 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #18 0x4fedeb in AP4_ContainerAtom::AP4_ContainerAtom(unsigned int, unsigned long long, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fedeb)

Indirect leak of 312 byte(s) in 8 object(s) allocated from:
    #0 0x9def30 in malloc /llvm-project/compiler-rt/lib/asan/asan_malloc_linux.cpp:145
    #1 0x7f476f32e297 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libstdc++.so.6+0x93297)
    #2 0x53c1a4 in AP4_File::AP4_File(AP4_ByteStream&, bool) (/test_mp42hls/mp42hls+0x53c1a4)
    #3 0x4222e1 in main (/test_mp42hls/mp42hls+0x4222e1)
    #4 0x7f476e4f2c86 in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x21c86)

Indirect leak of 256 byte(s) in 1 object(s) allocated from:
    #0 0x9def30 in malloc /llvm-project/compiler-rt/lib/asan/asan_malloc_linux.cpp:145
    #1 0x7f476f32e297 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libstdc++.so.6+0x93297)
    #2 0x4bf01d in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4bf01d)
    #3 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #4 0x4c78bc in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c78bc)
    #5 0x53a38e in AP4_File::ParseStream(AP4_ByteStream&, AP4_AtomFactory&, bool) (/test_mp42hls/mp42hls+0x53a38e)
    #6 0x53c1a4 in AP4_File::AP4_File(AP4_ByteStream&, bool) (/test_mp42hls/mp42hls+0x53c1a4)
    #7 0x4222e1 in main (/test_mp42hls/mp42hls+0x4222e1)
    #8 0x7f476e4f2c86 in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x21c86)

Indirect leak of 240 byte(s) in 3 object(s) allocated from:
    #0 0x9def30 in malloc /llvm-project/compiler-rt/lib/asan/asan_malloc_linux.cpp:145
    #1 0x7f476f32e297 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libstdc++.so.6+0x93297)
    #2 0x4c4421 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c4421)
    #3 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #4 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #5 0x4fedeb in AP4_ContainerAtom::AP4_ContainerAtom(unsigned int, unsigned long long, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fedeb)

Indirect leak of 192 byte(s) in 1 object(s) allocated from:
    #0 0x9def30 in malloc /llvm-project/compiler-rt/lib/asan/asan_malloc_linux.cpp:145
    #1 0x7f476f32e297 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libstdc++.so.6+0x93297)
    #2 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #3 0x6c5538 in AP4_StsdAtom::AP4_StsdAtom(unsigned int, unsigned char, unsigned int, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x6c5538)
    #4 0x6c48d2 in AP4_StsdAtom::Create(unsigned int, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x6c48d2)
    #5 0x4ba8b3 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4ba8b3)
    #6 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #7 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #8 0x4fc2da in AP4_ContainerAtom::Create(unsigned int, unsigned long long, bool, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fc2da)
    #9 0x4c4421 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c4421)
    #10 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #11 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #12 0x4fc2da in AP4_ContainerAtom::Create(unsigned int, unsigned long long, bool, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fc2da)
    #13 0x4c4421 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c4421)
    #14 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #15 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #16 0x4fc2da in AP4_ContainerAtom::Create(unsigned int, unsigned long long, bool, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fc2da)
    #17 0x4c4421 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c4421)
    #18 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #19 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #20 0x4fedeb in AP4_ContainerAtom::AP4_ContainerAtom(unsigned int, unsigned long long, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fedeb)

Indirect leak of 192 byte(s) in 2 object(s) allocated from:
    #0 0x9def30 in malloc /llvm-project/compiler-rt/lib/asan/asan_malloc_linux.cpp:145
    #1 0x7f476f32e297 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libstdc++.so.6+0x93297)
    #2 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #3 0x4c78bc in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c78bc)
    #4 0x53a38e in AP4_File::ParseStream(AP4_ByteStream&, AP4_AtomFactory&, bool) (/test_mp42hls/mp42hls+0x53a38e)
    #5 0x53c1a4 in AP4_File::AP4_File(AP4_ByteStream&, bool) (/test_mp42hls/mp42hls+0x53c1a4)
    #6 0x4222e1 in main (/test_mp42hls/mp42hls+0x4222e1)
    #7 0x7f476e4f2c86 in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x21c86)

Indirect leak of 176 byte(s) in 2 object(s) allocated from:
    #0 0x9def30 in malloc /llvm-project/compiler-rt/lib/asan/asan_malloc_linux.cpp:145
    #1 0x7f476f32e297 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libstdc++.so.6+0x93297)
    #2 0x4c78bc in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c78bc)
    #3 0x53a38e in AP4_File::ParseStream(AP4_ByteStream&, AP4_AtomFactory&, bool) (/test_mp42hls/mp42hls+0x53a38e)
    #4 0x53c1a4 in AP4_File::AP4_File(AP4_ByteStream&, bool) (/test_mp42hls/mp42hls+0x53c1a4)
    #5 0x4222e1 in main (/test_mp42hls/mp42hls+0x4222e1)
    #6 0x7f476e4f2c86 in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x21c86)

Indirect leak of 160 byte(s) in 2 object(s) allocated from:
    #0 0x9def30 in malloc /llvm-project/compiler-rt/lib/asan/asan_malloc_linux.cpp:145
    #1 0x7f476f32e297 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libstdc++.so.6+0x93297)
    #2 0x4c4421 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c4421)
    #3 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #4 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #5 0x4fc2da in AP4_ContainerAtom::Create(unsigned int, unsigned long long, bool, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fc2da)
    #6 0x4c4421 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c4421)
    #7 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #8 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #9 0x4fc2da in AP4_ContainerAtom::Create(unsigned int, unsigned long long, bool, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fc2da)
    #10 0x4c4421 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c4421)
    #11 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #12 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #13 0x4fedeb in AP4_ContainerAtom::AP4_ContainerAtom(unsigned int, unsigned long long, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fedeb)

Indirect leak of 152 byte(s) in 1 object(s) allocated from:
    #0 0x9def30 in malloc /llvm-project/compiler-rt/lib/asan/asan_malloc_linux.cpp:145
    #1 0x7f476f32e297 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libstdc++.so.6+0x93297)
    #2 0x4b8f63 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4b8f63)
    #3 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #4 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #5 0x4fedeb in AP4_ContainerAtom::AP4_ContainerAtom(unsigned int, unsigned long long, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fedeb)

Indirect leak of 144 byte(s) in 6 object(s) allocated from:
    #0 0x9def30 in malloc /llvm-project/compiler-rt/lib/asan/asan_malloc_linux.cpp:145
    #1 0x7f476f32e297 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libstdc++.so.6+0x93297)
    #2 0x4fc2da in AP4_ContainerAtom::Create(unsigned int, unsigned long long, bool, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fc2da)
    #3 0x4c4421 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c4421)
    #4 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #5 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #6 0x4fc2da in AP4_ContainerAtom::Create(unsigned int, unsigned long long, bool, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fc2da)
    #7 0x4c4421 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c4421)
    #8 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #9 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #10 0x4fc2da in AP4_ContainerAtom::Create(unsigned int, unsigned long long, bool, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fc2da)
    #11 0x4c4421 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c4421)
    #12 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #13 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #14 0x4fedeb in AP4_ContainerAtom::AP4_ContainerAtom(unsigned int, unsigned long long, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fedeb)

Indirect leak of 144 byte(s) in 6 object(s) allocated from:
    #0 0x9def30 in malloc /llvm-project/compiler-rt/lib/asan/asan_malloc_linux.cpp:145
    #1 0x7f476f32e297 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libstdc++.so.6+0x93297)
    #2 0x4fedeb in AP4_ContainerAtom::AP4_ContainerAtom(unsigned int, unsigned long long, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fedeb)

Indirect leak of 136 byte(s) in 1 object(s) allocated from:
    #0 0x9def30 in malloc /llvm-project/compiler-rt/lib/asan/asan_malloc_linux.cpp:145
    #1 0x7f476f32e297 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libstdc++.so.6+0x93297)
    #2 0x4ba099 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4ba099)
    #3 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #4 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #5 0x4fedeb in AP4_ContainerAtom::AP4_ContainerAtom(unsigned int, unsigned long long, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fedeb)

Indirect leak of 120 byte(s) in 2 object(s) allocated from:
    #0 0x9def30 in malloc /llvm-project/compiler-rt/lib/asan/asan_malloc_linux.cpp:145
    #1 0x7f476f32e297 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libstdc++.so.6+0x93297)
    #2 0x7f476e4f2c86 in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x21c86)

Indirect leak of 120 byte(s) in 5 object(s) allocated from:
    #0 0x9def30 in malloc /llvm-project/compiler-rt/lib/asan/asan_malloc_linux.cpp:145
    #1 0x7f476f32e297 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libstdc++.so.6+0x93297)
    #2 0x4fc2da in AP4_ContainerAtom::Create(unsigned int, unsigned long long, bool, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fc2da)
    #3 0x4c4421 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c4421)
    #4 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #5 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #6 0x4fedeb in AP4_ContainerAtom::AP4_ContainerAtom(unsigned int, unsigned long long, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fedeb)

Indirect leak of 104 byte(s) in 1 object(s) allocated from:
    #0 0x9def30 in malloc /llvm-project/compiler-rt/lib/asan/asan_malloc_linux.cpp:145
    #1 0x7f476f32e297 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libstdc++.so.6+0x93297)
    #2 0x4ba8b3 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4ba8b3)
    #3 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #4 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #5 0x4fc2da in AP4_ContainerAtom::Create(unsigned int, unsigned long long, bool, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fc2da)
    #6 0x4c4421 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c4421)
    #7 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #8 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #9 0x4fc2da in AP4_ContainerAtom::Create(unsigned int, unsigned long long, bool, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fc2da)
    #10 0x4c4421 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c4421)
    #11 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #12 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #13 0x4fc2da in AP4_ContainerAtom::Create(unsigned int, unsigned long long, bool, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fc2da)
    #14 0x4c4421 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c4421)
    #15 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #16 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #17 0x4fedeb in AP4_ContainerAtom::AP4_ContainerAtom(unsigned int, unsigned long long, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fedeb)

Indirect leak of 104 byte(s) in 2 object(s) allocated from:
    #0 0x9def30 in malloc /llvm-project/compiler-rt/lib/asan/asan_malloc_linux.cpp:145
    #1 0x7f476f32e297 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libstdc++.so.6+0x93297)
    #2 0x868704 in AP4_EsDescriptor::AP4_EsDescriptor(AP4_ByteStream&, unsigned int, unsigned int) (/test_mp42hls/mp42hls+0x868704)
    #3 0x85d250 in AP4_DescriptorFactory::CreateDescriptorFromStream(AP4_ByteStream&, AP4_Descriptor*&) (/test_mp42hls/mp42hls+0x85d250)
    #4 0x537d62 in AP4_EsdsAtom::Create(unsigned int, AP4_ByteStream&) (/test_mp42hls/mp42hls+0x537d62)
    #5 0x4bb623 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4bb623)
    #6 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #7 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #8 0x672a2e in AP4_SampleEntry::Read(AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x672a2e)
    #9 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #10 0x6c5538 in AP4_StsdAtom::AP4_StsdAtom(unsigned int, unsigned char, unsigned int, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x6c5538)
    #11 0x6c48d2 in AP4_StsdAtom::Create(unsigned int, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x6c48d2)
    #12 0x4ba8b3 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4ba8b3)
    #13 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #14 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #15 0x4fc2da in AP4_ContainerAtom::Create(unsigned int, unsigned long long, bool, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fc2da)
    #16 0x4c4421 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c4421)
    #17 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #18 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #19 0x4fc2da in AP4_ContainerAtom::Create(unsigned int, unsigned long long, bool, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fc2da)
    #20 0x4c4421 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c4421)
    #21 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #22 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #23 0x4fc2da in AP4_ContainerAtom::Create(unsigned int, unsigned long long, bool, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fc2da)
    #24 0x4c4421 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c4421)
    #25 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #26 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #27 0x4fedeb in AP4_ContainerAtom::AP4_ContainerAtom(unsigned int, unsigned long long, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fedeb)

Indirect leak of 101 byte(s) in 2 object(s) allocated from:
    #0 0x9def30 in malloc /llvm-project/compiler-rt/lib/asan/asan_malloc_linux.cpp:145
    #1 0x7f476f32e297 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libstdc++.so.6+0x93297)
    #2 0x4b9f41 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4b9f41)
    #3 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #4 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #5 0x4fc2da in AP4_ContainerAtom::Create(unsigned int, unsigned long long, bool, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fc2da)
    #6 0x4c4421 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c4421)
    #7 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #8 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #9 0x4fedeb in AP4_ContainerAtom::AP4_ContainerAtom(unsigned int, unsigned long long, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fedeb)

Indirect leak of 96 byte(s) in 1 object(s) allocated from:
    #0 0x9def30 in malloc /llvm-project/compiler-rt/lib/asan/asan_malloc_linux.cpp:145
    #1 0x7f476f32e297 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libstdc++.so.6+0x93297)
    #2 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #3 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #4 0x4fedeb in AP4_ContainerAtom::AP4_ContainerAtom(unsigned int, unsigned long long, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fedeb)

Indirect leak of 89 byte(s) in 2 object(s) allocated from:
    #0 0x9def30 in malloc /llvm-project/compiler-rt/lib/asan/asan_malloc_linux.cpp:145
    #1 0x7f476f32e297 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libstdc++.so.6+0x93297)
    #2 0x4b9f41 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4b9f41)
    #3 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #4 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #5 0x4fbb89 in AP4_ContainerAtom::Create(unsigned int, unsigned long long, bool, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fbb89)
    #6 0x4c48ca in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c48ca)
    #7 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #8 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #9 0x4fc2da in AP4_ContainerAtom::Create(unsigned int, unsigned long long, bool, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fc2da)
    #10 0x4c4421 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c4421)
    #11 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #12 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #13 0x4fedeb in AP4_ContainerAtom::AP4_ContainerAtom(unsigned int, unsigned long long, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fedeb)

Indirect leak of 88 byte(s) in 1 object(s) allocated from:
    #0 0x9def30 in malloc /llvm-project/compiler-rt/lib/asan/asan_malloc_linux.cpp:145
    #1 0x7f476f32e297 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libstdc++.so.6+0x93297)
    #2 0x537d62 in AP4_EsdsAtom::Create(unsigned int, AP4_ByteStream&) (/test_mp42hls/mp42hls+0x537d62)
    #3 0x4bb623 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4bb623)
    #4 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #5 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #6 0x672a2e in AP4_SampleEntry::Read(AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x672a2e)
    #7 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #8 0x6c5538 in AP4_StsdAtom::AP4_StsdAtom(unsigned int, unsigned char, unsigned int, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x6c5538)
    #9 0x6c48d2 in AP4_StsdAtom::Create(unsigned int, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x6c48d2)
    #10 0x4ba8b3 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4ba8b3)
    #11 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #12 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #13 0x4fc2da in AP4_ContainerAtom::Create(unsigned int, unsigned long long, bool, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fc2da)
    #14 0x4c4421 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c4421)
    #15 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #16 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #17 0x4fc2da in AP4_ContainerAtom::Create(unsigned int, unsigned long long, bool, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fc2da)
    #18 0x4c4421 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c4421)
    #19 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #20 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #21 0x4fc2da in AP4_ContainerAtom::Create(unsigned int, unsigned long long, bool, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fc2da)
    #22 0x4c4421 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c4421)
    #23 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #24 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #25 0x4fedeb in AP4_ContainerAtom::AP4_ContainerAtom(unsigned int, unsigned long long, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fedeb)

Indirect leak of 88 byte(s) in 1 object(s) allocated from:
    #0 0x9def30 in malloc /llvm-project/compiler-rt/lib/asan/asan_malloc_linux.cpp:145
    #1 0x7f476f32e297 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libstdc++.so.6+0x93297)
    #2 0x4ba751 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4ba751)
    #3 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #4 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #5 0x4fc2da in AP4_ContainerAtom::Create(unsigned int, unsigned long long, bool, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fc2da)
    #6 0x4c4421 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c4421)
    #7 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #8 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #9 0x4fedeb in AP4_ContainerAtom::AP4_ContainerAtom(unsigned int, unsigned long long, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fedeb)

Indirect leak of 80 byte(s) in 1 object(s) allocated from:
    #0 0x9def30 in malloc /llvm-project/compiler-rt/lib/asan/asan_malloc_linux.cpp:145
    #1 0x7f476f32e297 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libstdc++.so.6+0x93297)
    #2 0x4c4421 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c4421)
    #3 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #4 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #5 0x4fbb89 in AP4_ContainerAtom::Create(unsigned int, unsigned long long, bool, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fbb89)
    #6 0x4c48ca in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c48ca)
    #7 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #8 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #9 0x4fc2da in AP4_ContainerAtom::Create(unsigned int, unsigned long long, bool, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fc2da)
    #10 0x4c4421 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c4421)
    #11 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #12 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #13 0x4fedeb in AP4_ContainerAtom::AP4_ContainerAtom(unsigned int, unsigned long long, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fedeb)

Indirect leak of 80 byte(s) in 1 object(s) allocated from:
    #0 0x9def30 in malloc /llvm-project/compiler-rt/lib/asan/asan_malloc_linux.cpp:145
    #1 0x7f476f32e297 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libstdc++.so.6+0x93297)
    #2 0x78dd17 in AP4_MetaDataAtomTypeHandler::CreateAtom(unsigned int, unsigned int, AP4_ByteStream&, unsigned int, AP4_Atom*&) (/test_mp42hls/mp42hls+0x78dd17)
    #3 0x4c511b in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c511b)
    #4 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #5 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #6 0x4fc2da in AP4_ContainerAtom::Create(unsigned int, unsigned long long, bool, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fc2da)
    #7 0x4c4421 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c4421)
    #8 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #9 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #10 0x4fbb89 in AP4_ContainerAtom::Create(unsigned int, unsigned long long, bool, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fbb89)
    #11 0x4c48ca in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c48ca)
    #12 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #13 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #14 0x4fc2da in AP4_ContainerAtom::Create(unsigned int, unsigned long long, bool, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fc2da)
    #15 0x4c4421 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c4421)
    #16 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #17 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #18 0x4fedeb in AP4_ContainerAtom::AP4_ContainerAtom(unsigned int, unsigned long long, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fedeb)

Indirect leak of 80 byte(s) in 1 object(s) allocated from:
    #0 0x9def30 in malloc /llvm-project/compiler-rt/lib/asan/asan_malloc_linux.cpp:145
    #1 0x7f476f32e297 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libstdc++.so.6+0x93297)
    #2 0x4c48ca in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c48ca)
    #3 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #4 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #5 0x4fc2da in AP4_ContainerAtom::Create(unsigned int, unsigned long long, bool, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fc2da)
    #6 0x4c4421 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c4421)
    #7 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #8 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #9 0x4fedeb in AP4_ContainerAtom::AP4_ContainerAtom(unsigned int, unsigned long long, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fedeb)

Indirect leak of 80 byte(s) in 1 object(s) allocated from:
    #0 0x9def30 in malloc /llvm-project/compiler-rt/lib/asan/asan_malloc_linux.cpp:145
    #1 0x7f476f32e297 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libstdc++.so.6+0x93297)
    #2 0x4bb0c3 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4bb0c3)
    #3 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #4 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #5 0x4fc2da in AP4_ContainerAtom::Create(unsigned int, unsigned long long, bool, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fc2da)
    #6 0x4c4421 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c4421)
    #7 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #8 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #9 0x4fc2da in AP4_ContainerAtom::Create(unsigned int, unsigned long long, bool, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fc2da)
    #10 0x4c4421 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c4421)
    #11 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #12 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #13 0x4fc2da in AP4_ContainerAtom::Create(unsigned int, unsigned long long, bool, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fc2da)
    #14 0x4c4421 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c4421)
    #15 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #16 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #17 0x4fedeb in AP4_ContainerAtom::AP4_ContainerAtom(unsigned int, unsigned long long, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fedeb)

Indirect leak of 80 byte(s) in 1 object(s) allocated from:
    #0 0x9def30 in malloc /llvm-project/compiler-rt/lib/asan/asan_malloc_linux.cpp:145
    #1 0x7f476f32e297 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libstdc++.so.6+0x93297)
    #2 0x4bdf2b in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4bdf2b)
    #3 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #4 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #5 0x4fc2da in AP4_ContainerAtom::Create(unsigned int, unsigned long long, bool, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fc2da)
    #6 0x4c4421 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c4421)
    #7 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #8 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #9 0x4fc2da in AP4_ContainerAtom::Create(unsigned int, unsigned long long, bool, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fc2da)
    #10 0x4c4421 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c4421)
    #11 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #12 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #13 0x4fc2da in AP4_ContainerAtom::Create(unsigned int, unsigned long long, bool, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fc2da)
    #14 0x4c4421 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c4421)
    #15 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #16 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #17 0x4fedeb in AP4_ContainerAtom::AP4_ContainerAtom(unsigned int, unsigned long long, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fedeb)

Indirect leak of 80 byte(s) in 1 object(s) allocated from:
    #0 0x9def30 in malloc /llvm-project/compiler-rt/lib/asan/asan_malloc_linux.cpp:145
    #1 0x7f476f32e297 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libstdc++.so.6+0x93297)
    #2 0x4c4421 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c4421)
    #3 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #4 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #5 0x4fc2da in AP4_ContainerAtom::Create(unsigned int, unsigned long long, bool, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fc2da)
    #6 0x4c4421 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c4421)
    #7 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #8 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #9 0x4fedeb in AP4_ContainerAtom::AP4_ContainerAtom(unsigned int, unsigned long long, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fedeb)

……

Indirect leak of 20 byte(s) in 1 object(s) allocated from:
    #0 0x9def30 in malloc /llvm-project/compiler-rt/lib/asan/asan_malloc_linux.cpp:145
    #1 0x7f476f32e297 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libstdc++.so.6+0x93297)
    #2 0x6b73af in AP4_StscAtom::Create(unsigned int, AP4_ByteStream&) (/test_mp42hls/mp42hls+0x6b73af)
    #3 0x4baa0b in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4baa0b)
    #4 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #5 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #6 0x4fc2da in AP4_ContainerAtom::Create(unsigned int, unsigned long long, bool, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fc2da)
    #7 0x4c4421 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c4421)
    #8 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #9 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #10 0x4fc2da in AP4_ContainerAtom::Create(unsigned int, unsigned long long, bool, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fc2da)
    #11 0x4c4421 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c4421)
    #12 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #13 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #14 0x4fc2da in AP4_ContainerAtom::Create(unsigned int, unsigned long long, bool, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fc2da)
    #15 0x4c4421 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c4421)
    #16 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #17 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #18 0x4fedeb in AP4_ContainerAtom::AP4_ContainerAtom(unsigned int, unsigned long long, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fedeb)

Indirect leak of 4 byte(s) in 1 object(s) allocated from:
    #0 0x9def30 in malloc /llvm-project/compiler-rt/lib/asan/asan_malloc_linux.cpp:145
    #1 0x7f476f32e297 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libstdc++.so.6+0x93297)
    #2 0x5ab4ab in AP4_MdhdAtom::Create(unsigned int, AP4_ByteStream&) (/test_mp42hls/mp42hls+0x5ab4ab)
    #3 0x4ba751 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4ba751)
    #4 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #5 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #6 0x4fc2da in AP4_ContainerAtom::Create(unsigned int, unsigned long long, bool, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fc2da)
    #7 0x4c4421 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned int, unsigned int, unsigned long long, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c4421)
    #8 0x4c9f46 in AP4_AtomFactory::CreateAtomFromStream(AP4_ByteStream&, unsigned long long&, AP4_Atom*&) (/test_mp42hls/mp42hls+0x4c9f46)
    #9 0x4fcb35 in AP4_ContainerAtom::ReadChildren(AP4_AtomFactory&, AP4_ByteStream&, unsigned long long) (/test_mp42hls/mp42hls+0x4fcb35)
    #10 0x4fedeb in AP4_ContainerAtom::AP4_ContainerAtom(unsigned int, unsigned long long, bool, AP4_ByteStream&, AP4_AtomFactory&) (/test_mp42hls/mp42hls+0x4fedeb)

SUMMARY: AddressSanitizer: 5306 byte(s) leaked in 88 allocation(s).


```
# POC
[mp42hls-poc.zip](https://github.com/axiomatic-systems/Bento4/files/9618647/mp42hls-poc.zip)

# Environment

Ubuntu 18.04.6 LTS (docker)
clang 12.0.1
clang++ 12.0.1
Bento4 master branch(5b7cc25) && Bento4 release version([1.6.0-639](https://www.bok.net/Bento4/binaries/Bento4-SDK-1-6-0-639.x86_64-unknown-linux.zip))


# Credit
Xudong Cao ([NCNIPC of China](http://www.nipc.org.cn/)), (Zhongguancun Laboratory)
Mengyue Feng ([NCNIPC of China](http://www.nipc.org.cn/)), (Zhongguancun Laboratory)
Han Zheng ([NCNIPC of China](http://www.nipc.org.cn/), [Hexhive](http://hexhive.epfl.ch/))

Thank you for your time!


--- end body ---

comments :
--- start comments ---

--- end comments ---