Mattias Wadman
f34ebd839b
mp4: Add more HEIF boxes
2022-03-23 17:04:17 +01:00
Mattias Wadman
b157751a0a
mp4: Reformat and use dv in test
2022-03-01 11:59:28 +01:00
Mattias Wadman
f8690e6c59
mp4: Add colr box support
2022-03-01 11:43:50 +01:00
Mattias Wadman
45b00aabd4
mp4: Add stz2 support
2022-02-07 12:35:39 +01:00
Mattias Wadman
0829c167cc
asn1_ber: Add decoder
...
Basic support, can also do CER and DER but without any extra validation.
No schema support.
Redo format doc.md usage a bit, now format/<dir>/<format>.md instead.
Related to #20
2022-02-06 22:13:03 +01:00
Mattias Wadman
7c5215347d
bitio,decode: Refactor bitio usage and make buffer slicing more correct
...
Remove bitio.Buffer layer. bitio.Buffer was a kitchen sink layer with helpers
now it's just a buffer and most functions have been moved to decode instead.
bitio package now only have primitive types and functions simialar to standard
library io and bytes packages.
Make nearly eveything internally use bitio.Bit* interfaces so that slicing work
correctly this will also make it possible to start experimenting with more
complicated silcing helpers, ex things like:
breplace(.header.bitrate; 123) to get a new buffer with bitrate changed.
2022-02-04 21:41:53 +01:00
Mattias Wadman
d555c3248c
mp4,fuzz: Fatal error on infinite sgpd box entries
...
Also rename array to entries
2022-01-23 14:24:57 +01:00
Mattias Wadman
61bf2ce644
mp4: Refactor sample decode into something more sane
...
Also fatal error instead of silent ignore if index goes outside stsc or stco tables.
2022-01-17 13:38:11 +01:00
Mattias Wadman
4a1e8590fa
mp4: Improved stsz handling
...
Track size/count instead of just sizes which should decrease memory usage
making count sanity check unnecessary.
Fixes issue with huge mp4 files (80gb+) with lots of samples.
2022-01-15 17:51:10 +01:00
Mattias Wadman
eb9698fce7
mp4,ctts: Seem more usable to treat sample count/offset as signed
...
Seems to different between specs
Modify avc.fqtest to generate a ctts box
2021-12-20 11:19:38 +01:00
Mattias Wadman
c149732182
mp4,trun,fuzz: Limit number of constant sample entries
2021-12-12 09:55:07 +01:00
Mattias Wadman
62785291fe
mp4: fuzz: Make sure stsz has sane number of entries on constant sample size
...
Should be redone to not use an array
2021-12-09 13:00:10 +01:00
Mattias Wadman
406263b485
mp4: Add comment about hdlr.component_name prefix byte
2021-12-08 10:45:10 +01:00
Mattias Wadman
2fc0a71a47
decode: Refactor scalar usage
...
Move scalar into own package.
Split scalar code into decode related scalar code (that reads etc) and
scalar code that just transform the scalar value.
Use a scalar.Mapper interface instead of just a function.
Make mappers, assert and validat impement the interface.
2021-12-02 17:39:26 +01:00
Mattias Wadman
f55b1af6ac
inet: Add tcp and ipv4 reassembly
...
Also add tcp_stream and udp_payload to decode content
2021-11-29 18:42:18 +01:00
Mattias Wadman
3bf1a57cfa
avc: Cleanup and add color names etc
2021-11-28 17:29:56 +01:00
Mattias Wadman
e47888e24c
mp4: Fix 64bit size regression
2021-11-23 11:24:09 +01:00
Mattias Wadman
2e71fa1380
mp4: Add smhd box
2021-11-22 13:26:32 +01:00
Mattias Wadman
d1b514edeb
format: Some claeanup
2021-11-19 16:44:06 +01:00
Mattias Wadman
278e909a2f
mp4: Add tapt, prof, enof and clap boxes
2021-11-19 15:29:49 +01:00
Mattias Wadman
ede2e77975
decode: Nicer scalar template and add doc
2021-11-17 16:13:10 +01:00
Mattias Wadman
b66ed32614
decode,interp: Make fuzzing work again and cleanup fatal/error code
2021-11-16 17:11:26 +01:00
Mattias Wadman
1b32b42f93
decode: Major decode API refactor
...
Generate more code
More generic and comfortable API
Improve and Update format decoder to new API
Add some more format tests
2021-11-15 21:12:07 +01:00
Mattias Wadman
3ff0c9b5e0
lint: Enable errcheck adnd revive
2021-09-27 11:01:14 +02:00
Mattias Wadman
3db11d3fa8
decode: Add UTF8Fn functions and trim some null terminated strings
2021-09-17 22:13:35 +02:00
Mattias Wadman
589207da20
mp4: Use descriptor field for all descriptor boxes
2021-09-17 15:51:37 +02:00
Mattias Wadman
797bd4d652
flac: Refactor flac_metadatablock into flac_metadatablocks
...
metadatablocks are not really used alone
2021-09-17 15:46:13 +02:00
Mattias Wadman
473b2243c9
decode: Simplify and move format arg into DecodeOptions
2021-09-16 15:29:11 +02:00
Mattias Wadman
798141a0b0
format: Cleanup comments
2021-09-14 17:01:25 +02:00
Mattias Wadman
9ac17bd0e3
mp4: Add comment about future truncate to size option
2021-09-14 14:35:13 +02:00
Mattias Wadman
161dcaffd4
mp4: Better fragmented mp4 support
2021-09-12 13:08:54 +02:00
Mattias Wadman
08018825cb
mp4: Fix field name typo for sample_composition_time_offsets_present
2021-09-12 13:08:54 +02:00
Mattias Wadman
c7d45ff1e0
mp4: add pssh_playready format
2021-09-12 13:08:54 +02:00
Mattias Wadman
f322e78e8e
mp4: More _time decoding
2021-09-12 13:08:51 +02:00
Mattias Wadman
f1507f7f65
mod: Use proper path and dont use replace
2021-09-12 13:08:50 +02:00
Mattias Wadman
c155c89ba3
decode: Rename format *Decode to *Format
2021-09-12 13:08:50 +02:00
Mattias Wadman
6b8d26c0de
mp4: Properly decode tfra
2021-09-12 13:08:49 +02:00
Mattias Wadman
f2c1327005
mp4: Use ISOBMFF naming and some more tests
2021-09-12 13:08:49 +02:00
Mattias Wadman
970465996c
Init
2021-09-12 13:08:42 +02:00