Video enhancements in iMatch

Started by javiavid, March 22, 2021, 11:11:30 AM

Previous topic - Next topic

javiavid

Hi Mario, I'm sending you some improvements to be able to use video inside iMatch.
I'd like to use iMatch more, but in the current state it's complicated.


PREVIEW

When you leave the cursor over a video thumbnail the image is enlarged and you can see the thumnails it contains.

-When the image is enlarged, the sides of the image disappear, could it be possible that it is not enlarged to see the whole image? (I have the thumbnail in 600px I think)

-It has a delay in starting to play the thumbnails, also the time between each thumbnail is a bit slow. This makes long videos a very slow process that you don't use and at the end you open the video in an external player. Sometimes you don't have access to that video (offline).
Would it be possible to configure this to have no delay in starting and playback between thumbnails would be faster?

-In most DAM software it is possible to view the frames or scenes that make up the video. This helps you to watch the video quickly without having to replay it.


Would a window with these frames be possible?
One idea is to use the current Quick view window, currently has little use in video (by licenses), the video playback is not very useful, of 9 formats that I've tried only plays one well.
By using the same window, if you are viewing images and videos it is more comfortable and takes up less space.
Is there any way to play more video formats by installing external codecs?
Would it be possible to use ffplay (ffmpeg) to play the videos?

-The vast majority of standard video formats and displays are 16:9.
It would be interesting to have in the file explorer an option for the thumbnails to be in 16:9 to not have so much grey space between thumbnails.

THUMBNAILS IN MXF (User-defined Formats)

In professional video the most extended format is MXF, it would be very interesting to give more support. I've tried to include it manually, but I can't get thumbnails.
http://www.squarebox.com/wp-content/uploads/images/Screen-Shot-2016-06-27-at-13.42.52-1.png
https://videocataloger.com/wp-content/uploads/2019/03/2019-03-17_22-11-36_jpg.jpg

I read in the forum that you use FFMPEG to create video thumbnails and FFMPEG is compatible with MXF.
IMatch Anywhere and heic files (photools.com IMatch)](https://www.photools.com/community/index.php?topic=9451.msg66841;topicseen#msg66841)
Would it be possible to enable thumbnails for MXF or other user formats?


METADATA IN VIDEO

I think the video metadata could be improved.
I have tried 3 open source tools that can be used by command line, exiftool, mediainfo and ffprobe (ffmpeg).

I think you are using exiftool for the videos, it gives a lot of data but most of it is confusing and some essential data is missing.

I think the best of the 3 is mediainfo, the information is very well organized and are the most necessary data. Ffprobe also has some extra data that would be nice to know about exiftool (codec, field order, color space...).
-Is it possible to use Mediainfo for video instead of exiftool?

With these small adjustments imatch would be much more interesting for people who work with video and not only at a professional level.

I don't know programming and I don't know how many hours it takes to make these changes, but if you decide to improve the video in iMatch I have 20 years of broadcast experience and would be happy to help you.

mastodon

+1
Video META data handling enhancements would be great. But I see the difficulties.

Mario

IMatch extracts up to n preview images for video files as configured under Edit > Preferences > Database.
The size of these video thumbnails is the same as the size used for the standard thumbnails.

When you hover the mouse cursor for 1 second over a video file in a File Window, IMatch loads the thumbnails for that video from the database and presents them as a small slide show.
The 1s delay has been chosen to make previewing the thumbnails a decisive action. Doing it all the time while the user moves the mouse cursor over the File Window would severely impact performance and would get in the way badly.

Quote-When the image is enlarged, the sides of the image disappear,

I don't understand this. The image is displayed within the bounds of the thumbnail panel in the File Window. The effective size depends on how large you make the panels. The thumbnails are clipped as needed to not overlap into other panels. The maximum size depends on the size of the thumbnail in the database, there is no scaling > 100% for video thumbnails.

Quote-In most DAM software it is possible to view the frames or scenes that make up the video.

Licensing, legal and royalty payment reasons. Most video formats are heavily protected by software patents, licenses and legals controlled by the MPEG group and the patent holders.
Including a video player in IMatch would require me to hire a law firm which figures out which other law firms to contact to settle annual royalty payments with the MPEG and other involved parties. I cannot even afford one of the specialized lawyers which would be the starting point. Since most DAM software as you said can do this, they are paying royalties to the MPEG. FOSS software is usually not required to pay, but I am.

Since the video player of your choice is a single double-click or Ctrl+Enter away, I doubt I will ever add a video player into IMatch. It's convenient enough as it is.

Quote-The vast majority of standard video formats and displays are 16:9.
It would be interesting to have in the file explorer an option for the thumbnails to be in 16:9 to not have so much grey space between thumbnails.

Thumbnails in IMatch are stored in their original aspect ratio and displayed as such. Thumbnail panels use a quadratic space for holding thumbnails, and hence there might be some extra space top/bottom or left/right, depending on the width of the panels and how much other data you show.

QuoteI read in the forum that you use FFMPEG to create video thumbnails and FFMPEG is compatible with MXF.

I have never heard about this format before. There are literally thousands of files formats out there, including hundreds of vector and maybe dozens of video formats.
I can add new file formats easily to IMatch when users request support, and provide some download links for sample files, documentation, patents or legal issues to consider etc.

QuoteI think the video metadata could be improved...and some essential data is missing.

Please define essential data. I have no idea what could be missing. Most data about chapters, subtitles, color modes etc. is of very little interest for the majority of the IMatch user base, I suppose.
Specialized video software may display this data, but IMatch is a DAM.

IMatch processes metadata via ExifTool. In addition it uses the ffprobe utility included in FFMPEG to extract some additional data, like the runtime (which is not always correct in ExifTool).
Metadata storage in IMatch is based on the over 14,000 metadata fields ExifTool currently supports.
I'm not sure what is missing but I'm sure when you ask Phil to include more fields, provide example files and documentation when available, he will be look into it. And all ExifTool users in this world would benefit from it.
Start here https://exiftool.org/forum/

If MediaInfo gives you better info than IMatch, why not use it?
I don't want to add another dependency on yet another 3rd party open source component. I have too many 3rd party projects to manage and maintain already.
And while MediaInfo is releaded under the Berkley License, some of the 3rd party component it is based on use other licenses, including GPL. This makes things a lot more complicated.

It seems to me that you are a profession or at least have professional requirements...
I'm always open to enhance IMatch for its users and to add new features and ideas. But adding an integrated video player will not happen. Adding yet another unknown to me 3rd party library to extract specialist data for some file formats will not happen very likely. I would figure out a way to make this data compatible with the metadata storage in IMatch etc. This is all doable, but the cost in time and development will be high - and this means there must be a substantial number of users who would benefit from that. Which I don't see.
-- Mario
IMatch Developer
Forum Administrator
http://www.photools.com  -  Contact & Support - Follow me on 𝕏 - Like photools.com on Facebook

javiavid

Ok, I see there's not much interest, it's a business decision and I understand that.
I have some doubts.


-PERSONALIZED TAGS

The missing metadata, I'll ask Phil for it as a suggestion.

The main problem I see is that the metadata in each file format appears in a different tag, this makes you need a huge panel of tags to be able to cover all the options, besides practically all of them will always be empty and out of place. In addition to this each time they are called in a different way. That's why I suggested mediainfo, it's much neater.

I know iMatch is very complete, is it possible to create a custom metadata tag, for example called "codec"? and have all the values of multiple tags displayed in this custom tag?

For example:

If there is a value in these tags

{File.MD.XMP::dcformat:Format:0}
{File.MD.QuickTime::ImageDesc\2CompressorIDID0}
{File.MD.RIFF::StreamHeader "VideoCodec".}
{File.MD.QuickTime::ImageDesc\25\CompressorName\0}

To appear in the custom tag called "codec".


If it can't be done inside iMatch, is it possible to make these custom tags by modifying the xmp file?
Then you could script from outside iMatch to fill in the information you need.


-THUMBNAIL MXF

FFmpeg works perfectly with MXF.
If you are already using ffmpeg to extract the thumbnails from the other formats, How hard is it to add another file extension to do the same?


-TIME BETWEEN THUMBNAILS

I understand what you say about performance if you remove the initial delay, but changing the time between thumbnails is just modifying a number...

Thank you

Mario

#4
QuoteThe main problem I see is that the metadata in each file format appears in a different tag, this makes you need a huge panel of tags to be able to cover all the options, besides practically all of them will always be empty and out of place. In addition to this each time they are called in a different way. That's why I suggested mediainfo, it's much neater.

That's not something IMatch can solve. The inventors of these formats should get their shit together and create a standard. Besides the age-old QuickTime metadata format which changes at Apple's whims all the time, we have nothing.

Quote...ossible to create a custom metadata tag, for example called "codec"? and have all the values of multiple tags displayed in this custom tag?

You cannot create custom tags. At least not that easily and not without me actively supporting your custom metadata by streaming your custom ARGS files into the ExifTool processor.
Which is way too much work for a single user or even a handful of users.

But You can handle all much easier in IMatch by displaying different sections in the Metadata Panel depending on the file format. You can use the labels you want, which allows you to use the same name for different tags, depending on your needs. IMatch is highly customizable, although not many users ever need that.



Using this you can setup custom sections for one or more file formats, and IMatch shows them depending on what file type is selected.
Display Codec as the label, but access different tags for different file formats.

QuoteThat's why I suggested mediainfo, it's much neater.
Then why not use it? It seems to be specialized for your use case.
I guess they have built-in logic and know how and just merge different metadata fields from different formats under a common name.
In IMatch you do this with a custom metadata panel layout.

QuoteFFmpeg works perfectly with MXF.
If you are already using ffmpeg to extract the thumbnails from the other formats, How hard is it to add another file extension to do the same?

I can add file extensions easily. But I have never heard about MXF files before today. Please provide a link to some sample files. Which applications produce these files?

You can change the animation frame rate under Edit > Preferences > File Window: Animation. The default is 1s.
-- Mario
IMatch Developer
Forum Administrator
http://www.photools.com  -  Contact & Support - Follow me on 𝕏 - Like photools.com on Facebook

javiavid

It is true that the problem of metadata in video is incredible, there is a total lack of control...

Video is more complicated than images.
A format/container/extension (mov, mxf...) can have different codecs inside (h264,Prores,avc intra..) and each codec has a different metadata.

If this filter was by tag instead of file extension it would be more useful. But I appreciate the trick. Would it be possible then to make filters by this "label"? (caption)?

The idea of being able to have better metadata inside imatch is to be able to make filters, keywords... It would be interesting to use mediainfo if you could somehow get the data into the XMP. I know almost nothing about programming, but I think I would be able to make a script to pass the data.
The problem is whether imatch would then understand this..

--

Regarding the MXF, is an open format that was created in 2004 to end the problems of metadata and proprietary formats in professional video, is very versatile and almost all video and sound editing programs are compatible Avid, Adobe, Davinci Resolve, Protools, Vegas... As well as the players VLC, Potplayer... From the abandonment by Apple of Quicktime on Windows began to grow its use in the editors. It is also used in the vast majority of television channels.

But I understand that there will be many people who do not use it, out of MOV files, MP4 is gaining a lot of strength in recent years.

Here are some examples:
https://filesamples.com/formats/mxf
http://www.gvgdevelopers.com/concrete/products/k2/test_clips/
http://freemxf.org/samples/index.html

--

Thanks for the slideshow trick, iMatch is huge, every time I talk to you I discover a new option.

Mario

Thanks for the links. I will have a look when there is some free time.

QuoteIf this filter was by tag instead of file extension

The trick is you want to display different tags (for the same purpose) for different formats.
For example, you want to display one "compressor" tag, but this is stored in different tags for different formats.

So, you set up one panel with one tag labeled compressor for each format, using whatever tag fits. Or multiple tags, whatever is needed.
IMatch picks the panel based on the file extension.

If you encounter the additional difficulty that for the same format there can be multiple tags holding the info, you add all these tags. And use the hide if empty option. This way you see only the entry with actual data.

IMatch is flexible enough to allow you to do this.

I have never used MediaInfo. The 14,000 tags ExifTool supports were always sufficient.
But there is surely always a better  specialized solution out there, may it be video formats, audio formats, vector formats.
It would be futile for me to try this.

And not many users would ever need that.
The MXF format has been requested for the first time by you. I have never heard about it before, and apparently it is not in use in the IMatch user base.
If FFMPEG supports it, I will add it as a standard format for IMatch 2021 and it should work like all other multimedia formats.


-- Mario
IMatch Developer
Forum Administrator
http://www.photools.com  -  Contact & Support - Follow me on 𝕏 - Like photools.com on Facebook

javiavid

Sorry to bother you, just one last question.

I'm trying the custom intervals option to generate the thumbnails of the videos, but I don't really understand how it works.
My idea is that every 5 seconds I take a thumbnail, until the video is finished.

Is it possible with this option?

I have tried to put 5    5,   5,5,5,5,5,5,5 but it always generates only one thumbnail.

Thank you

Mario

This is a very rarely used option.
After changing this option you must force a reload of the video with Shift+Ctrl+F5 > Force Reload.
Keep in mind that the more frames you create per video, the bigger the database wil become. Especially if you use very large 600 pixel thumbnails.

Use 5,10,15,20,25,30,35 to make a frame every 5 seconds. Or 1,2,3,4,5,... to make a thumbnail for every second.

The automatic mode allows you to make up to 10 frames. This is just a visual indicator and not a replacement for a video player. The default 5 frames as usually more than enough to do a quick pre-roll.

-- Mario
IMatch Developer
Forum Administrator
http://www.photools.com  -  Contact & Support - Follow me on 𝕏 - Like photools.com on Facebook

javiavid

#9
I've been reading the iMatch documentation about metadata to understand a little better the problem and I've found something that could be a temporary solution so that in a single variable always appears the same information, the user-defined variables.

The idea of doing it this way instead of with a panel layout is because I could use it in many more options in the program. For example in the columns of  tabular view, in the filters or in the metadata layout (so that the metadata is always sorted in any video).

I've been trying to create a user-defined variable, its content are several XMP tags, Quicktime... I've tried it in VarToy and it works correctly, but I see that some parts of the program use tag selector and others variable selector.

Would it be possible to activate the selector variables where you can currently use tag selector?

Mario

User-defined variables are listed in the Variables Selector dialog. Look at the top, the red variables.
If your variable is named FOO, the Name will be Application.Variables.FOO.
-- Mario
IMatch Developer
Forum Administrator
http://www.photools.com  -  Contact & Support - Follow me on 𝕏 - Like photools.com on Facebook

javiavid

(Sorry, I updated the previous message to make it more understandable)

The doubts are:

-Would it be possible to activate the selector variables where you can currently use tag selector?
(filter, metadata layout panel, file window layout...)

-I have tried in the file window layout editor to use the following:
Attribute - Custom template
Tag - {Application.Variables.codecok}

It doesn't give any error, but nothing happens either. When I go back to the layout editor the tag appears empty.

Mario

I don't understand.

The Tag Selector shows only tags, not variables.
The Variables Selector has a button to create variables from tags.
Variables cannot be used everywhere a tag can be used. You cannot use variables in the Metadata Panel, for example.

I have no problem adding a user-defined variable to a File Window layout (custom template) and the content also shows:



What exactly are you doing?
-- Mario
IMatch Developer
Forum Administrator
http://www.photools.com  -  Contact & Support - Follow me on 𝕏 - Like photools.com on Facebook

javiavid


javiavid

I know that MXF is not natively supported by Imatch, but I have tried to include it as a user format in the preferences and a lot of metadata has been imported, I have only found 2 errors regarding exiftool so that it can be used normally.

-The duration for the MXF OP-Atom files is not correct.
Exiftool has 2 labels that are called the same (or so I think) a label with a value of 3.04 and another with a value of 5 days.
Imatch is only importing the value of 5 days. (Attached capture)

If you could import all the Duration of Track 1, you could get any correct amount, I have seen that it is not always in that accurate position, but it is always named as a duration and is inside Track 1.

-The codec of the MXF files comes as a number in Exiftool, but I can not find it in Imatch. To see this label I have generated the file with the exiftool command -a -u -g1 13-dnx120-atom.mxf> exif-13-dnx120-atom.txt because in Exiftoolgui I can not find it (attached TXT).
The label is:

[MXF] Video Coding Scheme ID: 060E2B34-0401-010A-0401-020271080000

According to the Codec of the MXF changes the start, it can be [MXF], [Track1], [Track4] .. But the "Video Coding Scheme ID" is always the same and it is only a label called so.
I'm making a board to have the correspondence between that number and the real codec, that number is also in MediaInfo along with the actual codec. My idea is that with the arguments you can see yourself correctly.

If you need the MXF file I can send it as you tell me.

Mario

I have added this format as a standard format.
If you think ExifTool is extracting data wrong, please report that in the https://exiftool.org/forum/
I don't develop ExifTool.

I recommend you use a software specialized in video editing and supporting all the requirements you have.
This seems all way to specialized for a general purpose DAM.
Since the MXF format was never requested before, I assume that demand for anything related to it in IMatch is virtually zero.
-- Mario
IMatch Developer
Forum Administrator
http://www.photools.com  -  Contact & Support - Follow me on 𝕏 - Like photools.com on Facebook

javiavid

Thank you for add MXF and I hope that in the future more users use it.

I think I do not explain well, Exiftool extracts from the MXF the data I need, but I am not able to see it in Imatch.
I'm looking for it inside the metadata / browser panel and on the tag selector, but I can not find it.

Is there a place where more tags exist?

Thanks

Mario

If you don't see the data in the Metadata Panel in Browser layout, IMatch has not imported it.
IMatch by default imports only relevant tags and keeps most of the fluff out. Many RAW files have 500 to 1,000 metadata tags filled with data of no use for humans.

If you are interested in maker notes or other special tags, you will need to enable them in the Tag Manager
Read that help topic in its entirety to learn how to enable tags, how to re-import metadata etc.
-- Mario
IMatch Developer
Forum Administrator
http://www.photools.com  -  Contact & Support - Follow me on 𝕏 - Like photools.com on Facebook

javiavid

I have checked the tag manager and I have found the tag I need, by default it is activated.

In ExifTool Command Processor I have checked that this tag exists and has a value in the file.


Mario

None of the sample MXF files provided by you contains this tag.
-- Mario
IMatch Developer
Forum Administrator
http://www.photools.com  -  Contact & Support - Follow me on 𝕏 - Like photools.com on Facebook

javiavid

I sent you by wetransfer the file to the support email.

Mario

#21
In your ECP preset you have deliberately added the -u option to list tags unknown top ExifTool.
This is not how IMatch uses ExfiTool. IMatch imports only known tags because it needs to reference them against the database or known tags (~15,000 at this time) maintained by ExifTool and IMatch.

Ask Phil to add support for [MXF] Video Coding Scheme ID in a future ExifTool version.
Provide him with a sample file so he can see all these tags in an actual file. If you have a documentation for all these tags and which applications write them, include them so Phil has a reference.
Phil is very nice and I'm sure he can add thís tag and other relevant tags missing in a later ExifTool version.
-- Mario
IMatch Developer
Forum Administrator
http://www.photools.com  -  Contact & Support - Follow me on 𝕏 - Like photools.com on Facebook

javiavid


javiavid

Hi Mario, talk to Phil and he has already included the VideoCodingSchemeID tag for MXFs in the new version.  It was just to let you know.  Thanks