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
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
f801cc0af7
decode: Rename s/FieldTryFormat/TryFieldFormat for consistency
2021-11-30 15:29:41 +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
4f8d03731d
format,decode: Some crc and endian refactor
2021-11-24 12:01:01 +01:00
Mattias Wadman
fdb811ec54
gojqextra,decode: Add generic lazy JQValue
2021-11-22 01:23:59 +01:00
Mattias Wadman
f40320b04c
decode: Remove D.Scalar* and add d.(Try)FieldScala*Fn instead
...
Idea is scalar fn should not read
2021-11-21 13:08:18 +01:00
Mattias Wadman
527f917698
mp3: Error if > 5 unique header configs
...
Hopefully make it less likely to missprobe
2021-11-19 16:22:18 +01:00
Mattias Wadman
7af191d974
decode: Move io helper into *D
2021-11-18 01:17:41 +01:00
Mattias Wadman
986d5ecc50
decode: Move registry package to decode/registry and add a format group type
2021-11-17 16:59:56 +01:00
Mattias Wadman
5d98a6949a
decode: Refactor Error/Fatal into printf functions
2021-11-17 16:26:13 +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
f9f866000e
interp,decode: Add force option to ignore asserts
2021-11-16 13:03:56 +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
ed21f36b23
mp3_frame: Rename samples_per_frame to sample_count
2021-09-20 18:54:20 +02:00
Mattias Wadman
473b2243c9
decode: Simplify and move format arg into DecodeOptions
2021-09-16 15:29:11 +02:00
Mattias Wadman
776a6b3136
decode: Reuse read buffer per decode to speed things up
2021-09-14 18:54:59 +02:00
Mattias Wadman
798141a0b0
format: Cleanup comments
2021-09-14 17:01:25 +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
60df04b098
mp3_frame: Only supports layer 3, fixes some probe issues
2021-09-12 13:08:49 +02:00
Mattias Wadman
970465996c
Init
2021-09-12 13:08:42 +02:00