mp4-rust icon indicating copy to clipboard operation
mp4-rust copied to clipboard

question: MOV Quicktime and MP4 metadata

Open yuribudilov opened this issue 3 years ago • 7 comments

Hello everyone, and happy 2022.

I have just a question, it is not an issue at all.

I have a lot of .MP4 videos which originated from Android phones. Also, I have equally large number of .MOV files which originated from Apple iPhones (Quicktime?).

I am after video date/time creation and GPS Location coordinates for MOV files and MP4 files.

Can you please advise if there is a Rust crate to extract the video metadata from MOV and MP4 files ?

I have tried code sample on both MP4 and MOV, it worked (it extracted date, in Unix/MP4-epoch format integer?).

I could not find anywhere how to extract the GPS latitude/longitude coordinates from either MP4 or MOV files.

I used exifdata command line utility to obtain the date/time and GPS latitude & longitude, so I do know they are stored in my files. I wanted access to metadata directly from Rust program, not from command line utility.

I thank you very much in advance.

yuribudilov avatar Jan 01 '22 05:01 yuribudilov

Hi @yuribudilov,

Happy 2022! Unfortunately, this package does not cover the meta box currently, which is where the metadata information from the QT format (mov) are stored according to the spec document. However, I'll leave this issue open as a TODO to add support for the meta box and an interface to parse the information.

You may be able to check out https://github.com/mozilla/mp4parse-rust to see if it's supported. I have not tried it myself yet.

Thanks!

alfg avatar Jan 01 '22 06:01 alfg

thank you very much.

I look forward to this being added sometime in 2022 !

yuribudilov avatar Jan 01 '22 07:01 yuribudilov

Hello @alfg Thanks for the great work.

I have a question. I am trying to chunk/split video file and upload each to a server. I have look at the documentation but am not sure if is possible to chunk/split a video file.

If is possible can you point me to the method or any others ways/means of chunking video file. Thanks for your assist.

osain-az avatar Apr 19 '22 10:04 osain-az

Hey @osain-az,

It should be possible to write the header as the init file and then the rest of the mp4 chunk segments. However, I don't have a good example of this working yet. I suggest checking out mp4split from the Bento4 library/utility. It's not a Rust library, but I have used it successfully to split up mp4 chunks for DASH.

https://github.com/axiomatic-systems/Bento4

alfg avatar Apr 20 '22 03:04 alfg

Hey @osain-az,

It should be possible to write the header as the init file and then the rest of the mp4 chunk segments. However, I don't have a good example of this working yet. I suggest checking out mp4split from the Bento4 library/utility. It's not a Rust library, but I have used it successfully to split up mp4 chunks for DASH.

https://github.com/axiomatic-systems/Bento4

Thanks for the information.

osain-az avatar Apr 20 '22 21:04 osain-az

work in progress : #77

ririsoft avatar Jun 16 '22 15:06 ririsoft

Hello everyone, I'm currently working on implementing this in rust live image. But I couldn't find a way to write a Meta Track (I suppose it need a Metatrack handler and Metatrack Config) and also writing QT metadata into the metadata part.

Thank you very much:P

WERDXZ avatar Dec 27 '23 17:12 WERDXZ