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

MP4: improve display of operating system and hardware #2189

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

JeromeMartinez
Copy link
Member

Improvement of #2179.
Focused on Android and iOS but also handle some cameras, and XML or JSON outputs have separate fields for company name, product name, model, similar to writing app and library.

e.g.

Writing hardware                         : Canon EOS-1D C
Writing operating system                 : Google Android 14
Writing hardware                         : Samsung S23 Ultra (SM-M918B)
Writing operating system                 : Apple iOS 14.7.1
Writing hardware                         : Apple iPhone 12 mini

cc @cjee21.

Focused on Android and iOS but also handle some cameras
@cjee21
Copy link
Contributor

cjee21 commented Feb 11, 2025

Here is the output with MediaInfo built from this branch on a video from S23 Ultra that someone sent to me:

Performer                                : Galaxy S23 Ultra
Encoded date                             : 2025-01-12 06:12:18 UTC
Tagged date                              : 2025-01-12 06:12:18 UTC
Writing operating system                 : Google Android 14
Writing hardware                         : Samsung SM-S918B

Performer is still there... and hardware missing 'Galaxy S23 Ultra'... not expected right?

For another model looks fine:

Writing operating system                 : Google Android 13
Writing hardware                         : Samsung SM-M325FV

@JeromeMartinez
Copy link
Member Author

Performer is still there... and hardware missing 'Galaxy S23 Ultra'... not expected right?

I created a file based on what I understood as being there, looks like it is not the exact way in the file :(.
Please provide a slice of the file, I need only what is in the "moov" atom, you can find "moov" in the file and cut everything before that before sending it to me ([email protected] if you prefer not to share it publicly), it removes all the A/V content.
Else you need to tweak https://github.com/MediaArea/MediaInfoLib/pull/2189/files#diff-f50cbeb39c0bf1da5a4cc81812b1f9f63ac05b6b2edcea155698c48088fc91deR1046

@JeromeMartinez
Copy link
Member Author

Galaxy S23 Ultra

Argh, I see, I wrongly wrote "Samsung" instead of "Galaxy" in the file, I change my file and tweak the code.

@cjee21
Copy link
Contributor

cjee21 commented Feb 11, 2025

Argh, I see, I wrongly wrote "Samsung" instead of "Galaxy" in the file, I change my file and tweak the code.

The thing is, some Samsung phones contain Samsung there and some Galaxy...

@JeromeMartinez
Copy link
Member Author

The thing is, some Samsung phones contain Samsung there and some Galaxy...

I will manage both.

@JeromeMartinez
Copy link
Member Author

The thing is, some Samsung phones contain Samsung there and some Galaxy...

What is the exact string of a file having "Samsung"?
(I wonder if it contains "Galaxy" or not i.e. "Samsung Galaxy S23" rather than "Samsung S23", as it is the marketing name)

@cjee21
Copy link
Contributor

cjee21 commented Feb 11, 2025

MediaTrace of file from Galaxy S23: #2179 (comment)
Sample file from Galaxy M32: #2175 (comment)

I only have files from two types of Samsung phones so don't know if there are other possibilities. Both phones not mine. So far I have not seen other brand Android phones that write this kind of info. Others only have com.android.version which seems to be present for any video created on the phone, not only from camera.

@JeromeMartinez
Copy link
Member Author

So no "S23" with "Samsung", always with "Galaxy".

So far I have not seen other brand Android phones that write this kind of info

Even my A41 does not have any info... but still good to show when it is present, and we'll see if we find more...

@JeromeMartinez
Copy link
Member Author

I mean, "Samsung" seems used for the model (technical) name, "Galaxy" for the marketing name, at least up to now.

@cjee21
Copy link
Contributor

cjee21 commented Feb 11, 2025

This PR causes performers such as "Samsung Electronics Nano Philharmonic Orchestra" to not be displayed correctly.

@JeromeMartinez
Copy link
Member Author

This PR causes performers such as "Samsung Electronics Nano Philharmonic Orchestra" to not be displayed correctly.

Argh! I need to find a more proper way... Maybe with testing only "Galaxy" there, not "Samsung".
Can you share this file? (only the "moov" atom is useful)

@cjee21
Copy link
Contributor

cjee21 commented Feb 11, 2025

Argh! I need to find a more proper way... Maybe with testing only "Galaxy" there, not "Samsung". Can you share this file? (only the "moov" atom is useful)

I just tried tagging the previous sample file with Mp3tag. That orchestra name I found on Google. If the Samsung metadata is removed first then it shows performer correctly. Take note that someone might be named Galaxy too 😉

@cjee21
Copy link
Contributor

cjee21 commented Feb 11, 2025

Sample after tagging with Mp3tag:
samsung_sample (2).zip

@JeromeMartinez
Copy link
Member Author

Take note that someone might be named Galaxy too 😉

At some point I need to have a rule... :(
Storing all the model name is not future proof.
Let's see a proposal...

@cjee21
Copy link
Contributor

cjee21 commented Feb 11, 2025

For some reason, the performer saved by the phone does not show in Mp3tag or FFmpeg. Only the one added by Mp3tag shows. So there is a difference?

@JeromeMartinez
Copy link
Member Author

samsung_sample (2).zip

This file has 2 "Performer" fields, one old fashion "auth" atom and another "©ART" in "meta" atom, but I see the idea.

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