* Make EsdsBox in Mp4aBox optional, instead of error when parsing. Also update mp4info example with some missing info that was removed.
* Update Mp4aBox test to check for optional EsdsBox.
* Add ReadBox trait
* Add boxtype macro
* Remove offset in BoxHeader
* Fix parsing error when box has largesize
* Remove duplicated codes reading version and flags
* Update examples
* Fix test failure
* Rename I/O position moving functions
* skip_read() to skip_bytes()
* skip_read_to() to skip_bytes_to()
* skip_write() to write_zeros()
* Rename I/O position moving functions
* skip_read() to skip_bytes()
* skip_read_to() to skip_bytes_to()
* Ensure skip_bytes() does not go back.
Co-authored-by: Byungwan Jun <unipro.kr@gmail.com>
* Add ReadBox trait
* Add boxtype macro
* Remove offset in BoxHeader
* Fix parsing error when box has largesize
* Remove duplicated codes reading version and flags
* Add test code for all leaves in box tree
* Remove entry_count that is duplacated with entries.len()
* Change volume type to Ratio<u16>
Co-authored-by: Byungwan Jun <unipro.kr@gmail.com>
* Add ReadBox trait
* Add boxtype macro
* Remove offset in BoxHeader
* Fix parsing error when box has largesize
* Remove duplicated codes reading version and flags
* Simplify all box size types as largesize
* Add WriteBox trait and improve compatibility with large box
* Split large atoms file into smaller ones
* Refator Error
Co-authored-by: Byungwan Jun <unipro.kr@gmail.com>
* Make the example tolerant of videos missing parts
Some videos are missing certain parts that the example was assuming would be
present. This change makes all such access conditional on the parts being
present. Also added the display of the box version and the creation time in
a human-readable format. This serves to demonstrate the logic for converting
the MP4 epoch (1904-01-01) to Unix epoch (1970-01-01).
* Show creation time as Unix time only
* Skip over unknown boxes
If the box size is non-zero, skip over it and continue reading. Otherwise if
the box size is zero, exit the loop.
* Add comment clarifying the box skipping