Page 1 of 1

Report Command not returning {Frame width} {Frame height}

Posted: 27 Mar 2025 22:05
by arazi89
Hello,

I just updated to the newest version 27.00.0100 a few minutes ago

One thing I noticed is that the following line of script no longer returns actual values for {frame width} and {frame height}

text report("{Name} -- {size} Dur: {Duration} C: {created} M: {modified} -- {frame width}x{frame height} {ext} <crlf>");

Before it returned the actual frame width and frame height values for .mp4 files. But now it returns this:

Only Fools 23 03-8 Thicker u023 HQ.mp4 -- 378 MB Dur: 00:28:52 C: 2025-03-27 08:24 AM M: 2025-03-27 08:52 AM -- {frame width}x{frame height} mp4

Am I missing something in this latest version?

Thank you!!

Re: Report Command not returning {Frame width} {Frame height}

Posted: 27 Mar 2025 22:35
by jupe
Maybe in the past you previously had visible columns named "frame width" etc, in that case it would work. but the correct way to do it so that it always works would be like this:

Code: Select all

text report("{Name} -- {size} Dur: {Duration} C: {created} M: {modified} -- {prop:System.Video.FrameWidth}x{prop:System.Video.FrameHeight} {ext} <crlf>");

Re: Report Command not returning {Frame width} {Frame height}

Posted: 27 Mar 2025 23:00
by arazi89
jupe wrote: 27 Mar 2025 22:35 Maybe in the past you previously had visible columns named "frame width" etc, in that case it would work. but the correct way to do it so that it always works would be like this:

Code: Select all

text report("{Name} -- {size} Dur: {Duration} C: {created} M: {modified} -- {prop:System.Video.FrameWidth}x{prop:System.Video.FrameHeight} {ext} <crlf>");
THANK YOU!!

Yes, that works just fine now!

It could have been that I was using custom columns with those names. That is possible. I do use custom columns.

But that scripting definitely worked every day.... for YEARS. That is what I have used to grab the width and length for inclusion into database records. According to my signature line, I wonder if I just updated from version 22 to 27? Could I have procrastinated that much? Or maybe just procrastinated updating my signature.

In any case, all is well that ends well. Thank you!

Re: Report Command not returning {Frame width} {Frame height}

Posted: 27 Mar 2025 23:26
by highend
It didn't work in v22.00 as well with a custom column that holds int values for e.g. frame width (ofc with the same column name)...

Re: Report Command not returning {Frame width} {Frame height}

Posted: 28 Mar 2025 00:18
by arazi89
highend wrote: 27 Mar 2025 23:26 It didn't work in v22.00 as well with a custom column that holds int values for e.g. frame width (ofc with the same column name)...
Very interesting.

It worked in whatever version I had this morning. And for the last couple of years. I have used it nearly every day for quite a while. Below is the script I have used hundreds + of times. Now, I guess the question is where the columns I had named "Frame width" and "Frame height" came from. What they were.

But, trust me, the script below has worked for YEARS. Including this morning.

The line: text report("{Name} @ {frame width} % {frame height} ; {Duration} <crlf>");

I have used that line 10,000+ times to copy and paste text into LibreOffice Calc to parse out the frame width, frame height, and duration into separate columns on the characters: @ % ;

/ -----------------------------------------------------------------------------------------------------------------------
//
// 2024_01_30_113912
// Select all files in a directory and report their Duration values ; "Duration" being a column name
// Run this script with the command line: Load "2023_07_10_Tim_Scripts.xys", "ReportDur"
//
"Report on Duration column : _ReportDur"
status "Report on Duration column has started..." , "F73459" , "progress";
Load "2023_07_15_Tim_Columns.xys", "StandardDVDBrowse010";
//wait 10200;
sel a;
text report("{Name} @ {frame width} % {frame height} ; {Duration} <crlf>");
status "Report on Duration column has FINISHED..." , "1BBC23" , "progress";
//
// this puts the information in a box that can then be copied/pasted to the clipboard
// then, pasted ('pasted as values') into a LibreOffice Calc spreadsheet (for example)
// -----------------------------------------------------------------------------------------------------------------------
//
// -----------------------------------------------------------------------------------------------------------------------
//

//
// -----------------------------------------------------------------------------------------------------------------------
// 2023_07_19_115632
// Load (1) the Standard Column Layout, and (2) the DVD type Custom Columns that show Duration and Frame Width
// Column Layouts files should be in directory: C:\Users\Wilso\AppData\Roaming\XYplorer\Columns\
// Run this script with the command line: Load "2023_07_15_Tim_Columns.xys", "StandardDVDBrowse010"
"Tim Standard + DVD (Browse) : StandardDVDBrowse010"
columnlayout("Tim_010_Standard_DVD_BROWSE"); // Loads the layout file: C:\Users\Wilso\AppData\Roaming\XYplorer\Columns\Tim_010_Standard_DVD_BROWSE.txt
// -----------------------------------------------------------------------------------------------------------------------
// -----------------------------------------------------------------------------------------------------------------------


Re: Report Command not returning {Frame width} {Frame height}

Posted: 28 Mar 2025 00:41
by highend
That's great. I see no reason why it shouldn't work in v27.00.0100 then ;)
CCs syntax hasn't changed for cc names...

Re: Report Command not returning {Frame width} {Frame height}

Posted: 28 Mar 2025 01:03
by arazi89
I found out where "frame width" and "frame height" columns came from.

They are among the very basic columns that can be added by just right-clicking on the column headers. I am guessing that I did not add those to the list myself.

Image

I can add the others to the layout and reference them in the Report command by name like: {duration} {size} {modified}

But {frame width} does not work with the Report command. Even though it should (I suppose) be just as simple as the other columns.


Also, the script line shared in an earlier post no longer works, either.

text report("{Name} -- {size} Dur: {Duration} C: {created} M: {modified} -- {prop:System.Video.FrameWidth}x{prop:System.Video.FrameHeight} {ext} <crlf>");

I am now getting an Error 9 when I try to run that script line.

Error: 9 (0x00000009)
Desc: Subscript out of range
Dll: 0
Proc: rep_MakeReport
Source: XYplorer
XY ver: XYplorer 27.00.0100 - Lifetime License Professional
OS: Windows 10, 64-bit, Version 22H2, Build 19045.5608 (10.0)
Locale: 1033 (en-US)
ANSI: 1252, ACP: 1252 (ANSI - Latin I)
Font: Segoe UI 11.25, Segoe UI 9.75, DBCS: No
DPI: 96 (100%), 1920x1080
Date: 2025-03-27 19:55:13

Re: Report Command not returning {Frame width} {Frame height}

Posted: 28 Mar 2025 01:32
by jupe
Just restart XY and that error should go away.

I see the bug, it is using SC report without supplying filenames, which defaults to the itemlist flag of 0, that doesn't work currently, I already reported it at the end of my post here:

viewtopic.php?p=228353#p228353

Re: Report Command not returning {Frame width} {Frame height}

Posted: 28 Mar 2025 02:35
by arazi89
jupe wrote: 28 Mar 2025 01:32 Just restart XY and that error should go away.

I see the bug, it is using SC report without supplying filenames, which defaults to the itemlist flag of 0, that doesn't work currently, I already reported it at the end of my post here:

viewtopic.php?p=228353#p228353
Thank you for all of your help!

Re: Report Command not returning {Frame width} {Frame height}

Posted: 31 Mar 2025 23:56
by arazi89
As a follow-up: Of the topics below covered under the documentation for the report() command, none of the following currently work for me with the latest version of XYPlorer.

Report() command

[1] {frame width} and {frame height}

Just returns text strings "{frame width}" and "{frame height}"; not the actual numeric values those basic columns contain.

[2] A custom column containing {frame width} or {frame width}

Usage shown in the documentation:
Custom Columns can be referenced by their case-insensitive canonic names (independent of any translations), e.g. "custom 1", e.g.:

text report("{name}: {custom 1}, {custom 2}, {custom 3}, {custom 4}, {custom 5}<crlf>");

Custom Columns and Extra Columns can as well be referenced by their case-insensitive current captions as long as they are shown in the current list. In this case no formatting is possible though. E.g.:

text report("{name}: {Dimensions}, {Aspect Ratio}, {Camera Model}<crlf>");
None of these variations-- of trying to reference the custom column by number or name-- return anything at all.

[3] Metadata extended properties
Metadata (aka Extended Properties)

The so-called "Extended Properties" (the complete set of available metadata of file) are fully supported using the field {prop:[property]}. [property] can be a numeric as well as a literal property identifier.
text report("{Name} {prop:System.Video.FrameWidth}x{prop:System.Video.FrameHeight} <crlf>");

The script line above was gratefully shared earlier in the thread by jupe and worked exactly one time (which prematurely got my hopes up that I had a viable workaround) but now just returns, regardless of rebooting, restarting the program, etc.:

Error: 9 (0x00000009)
Desc: Subscript out of range
Dll: 0
Proc: rep_MakeReport


Oh, well. Report() was fun while it lasted.

Re: Report Command not returning {Frame width} {Frame height}

Posted: 12 Apr 2025 07:26
by jupe
In the latest version, the issues you were having earlier should now be resolved, hopefully even the error.

Re: Report Command not returning {Frame width} {Frame height}

Posted: 19 Apr 2025 02:00
by arazi89
jupe wrote: 12 Apr 2025 07:26 In the latest version, the issues you were having earlier should now be resolved, hopefully even the error.
Yes, they most definitely are in 27.00.0200!

The memory error I was getting using Metadata extended properties I have not double-checked because scripts referencing by {frame width} or by custom column name are both 100% working now so I forgot to check on the extended properties.

So awesome... thank you!