Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Extract esds box from wave box #96

Merged
merged 9 commits into from
Aug 3, 2023
Merged

Extract esds box from wave box #96

merged 9 commits into from
Aug 3, 2023

Conversation

emkman99
Copy link
Contributor

@emkman99 emkman99 commented Mar 3, 2023

This is primarily to extract the esds box from the wave box (quicktime). It skips all unsupported parts of the wave box, and just finds the esds box.

I also tested this parser with all of my MP4 files and found & fixed several other issues. I can split those into a separate pull request if necessary.

@alfg alfg merged commit 19e4eaa into alfg:master Aug 3, 2023
@alfg
Copy link
Owner

alfg commented Aug 3, 2023

Thank you.

pando-fredrik pushed a commit to pando-fredrik/mp4-rust that referenced this pull request May 13, 2024
* Extract esds from wave box

* Allow empty, multi-byte, and arbitrary NUL terminated strings

* Skip unsupported avc1 sub-boxes

* Fixed non-integer framerates

* Fixed bitrate calculation

* Fixed format issue

* Public read sample offset

* Fix lint warning.

---------

Co-authored-by: Alfred Gutierrez <alfg@users.noreply.github.com>
pando-fredrik pushed a commit to pando-fredrik/mp4-rust that referenced this pull request May 13, 2024
* Extract esds from wave box

* Allow empty, multi-byte, and arbitrary NUL terminated strings

* Skip unsupported avc1 sub-boxes

* Fixed non-integer framerates

* Fixed bitrate calculation

* Fixed format issue

* Public read sample offset

* Fix lint warning.

---------

Co-authored-by: Alfred Gutierrez <alfg@users.noreply.github.com>
pando-fredrik added a commit to pando-fredrik/mp4-rust that referenced this pull request May 13, 2024
* Add support for multiple trex boxes.

While it's common to construct a fMP4 file for a single track, it's
totally valid to have multiple tracks. This means you also need multiple
to support multiple trex boxes.

Untested.

* cargo fmt

* Add a missing write_box call for mvex.

* Ran clippy

* Fix more errors when serializing a mvex box.

udta is also broken but that can be fixed in another PR.

* Derive Default trait for DataType (alfg#100)

* fix clippy (rustc 1.71.0) (alfg#115)

* Allow Hdlr to be not the first in the Meta box (alfg#95)

While the spec says that the hdlr box should be the first one, not all
implementations follow that. Actually look over all boxes in Meta to
find Hdlr.

Also add a test for such weirdly-formatted box

Change the way unknown MetaBox is stored: store a list of boxes instead
of raw bytes

Co-authored-by: Alfred Gutierrez <alfg@users.noreply.github.com>

* Try to skip extended header in MetaBox. (alfg#111)

Fixes alfg#102

Co-authored-by: Alfred Gutierrez <alfg@users.noreply.github.com>

* Release 0.14.0 (alfg#117)

* Update Cargo.toml

* Update README.md

* Fix getting samples from movie fragments (alfg#106)

* Fix getting samples from movie fragments

* Add a function to the reader to read in fragments from a different reader

---------

Co-authored-by: Alfred Gutierrez <alfg@users.noreply.github.com>

* Export all boxes to allow more flexible use for writing (alfg#108)

Co-authored-by: Alfred Gutierrez <alfg@users.noreply.github.com>

* Fix some minor issues writing traf box (alfg#109)

Co-authored-by: Alfred Gutierrez <alfg@users.noreply.github.com>

* Fix writing SLConfigDescriptor (alfg#107)

Co-authored-by: Alfred Gutierrez <alfg@users.noreply.github.com>

* Extract esds box from wave box (alfg#96)

* Extract esds from wave box

* Allow empty, multi-byte, and arbitrary NUL terminated strings

* Skip unsupported avc1 sub-boxes

* Fixed non-integer framerates

* Fixed bitrate calculation

* Fixed format issue

* Public read sample offset

* Fix lint warning.

---------

Co-authored-by: Alfred Gutierrez <alfg@users.noreply.github.com>

* hev1 box parser (alfg#101)

Co-authored-by: Alfred Gutierrez <alfg@users.noreply.github.com>

---------

Co-authored-by: Luke Curley <kixelated@gmail.com>
Co-authored-by: Linus Unnebäck <linus@folkdatorn.se>
Co-authored-by: rolleifx <110799844+rolleifx@users.noreply.github.com>
Co-authored-by: ⭐️NINIKA⭐️ <DCNick3@users.noreply.github.com>
Co-authored-by: Alfred Gutierrez <alfg@users.noreply.github.com>
Co-authored-by: w-flo <w-flo@users.noreply.github.com>
Co-authored-by: jensenn <neil.jensen@pluto.tv>
Co-authored-by: emkman99 <emkman99@users.noreply.github.com>
Co-authored-by: Andrey Tkachenko <andrey@aidev.ru>
jprochazk pushed a commit to jprochazk/mp4 that referenced this pull request Sep 18, 2024
* Extract esds from wave box

* Allow empty, multi-byte, and arbitrary NUL terminated strings

* Skip unsupported avc1 sub-boxes

* Fixed non-integer framerates

* Fixed bitrate calculation

* Fixed format issue

* Public read sample offset

* Fix lint warning.

---------

Co-authored-by: Alfred Gutierrez <alfg@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants