Stop modifying MP4 files - respect descript.ion setting

I finally took the plunge and upgraded from Opus 11 to 12 along with Windows 11. While most of the new features are excellent, there is one which is driving me crazy. It's about the "Use 'descript.ion' file comments system instead of NTFS comments" option.

Screenshot 2023-08-18 164738

In Opus 11 I could set a description on any file type and it would happen instantly. In 12 there is a noticeable delay opening the Set Description dialog as well as applying in the lister.

Clipboard Image (343)

But the worst part is when I apply a description to an MP4 file, it takes ages, during which time I can see Opus creating a hidden copy of the file.

When the hidden file finally disappears, the original file's size changes.

MediaInfo confirms Opus has modified my MP4 file to embed my comment inside it.

That is bad because this came from a torrent, which I am actively seeding. The moment someone tries to leech it, qBittorrent detects the incorrect file size and forces a recheck. Since the file no longer hashes, it starts re-downloading from scratch.

Worse, it doesn't add my comment to the descript.ion file, despite the option being enabled.

So my request is simple:

  • Opus should repsect the descript.ion setting, only use comments in the descript.ion file and never try to retrieve or embed a comment in a file itself.

And whlie you're there:

  • Make the Set Description dialog resizeable (and remember its size).
  • Remember the last 50 descriptions in the drop-down list instead of 9 (or make the number configurable).
  • Remove the dangerous "Set this description for files within selected folders" checkbox (if I really want to do something that bizarre, make me do it the hard way).

Thanks for listening :stuck_out_tongue_winking_eye:

1 Like

I don’t think any of that changed between Opus 11 and 12 (although it was about 7 years ago, so it’s hard to remember exactly).

The delays in various places and OS change suggest something about the filesystem is slow, possibly antivirus or storage drivers on the new OS compared to the old one.

Thanks Leo. To test your idea, I uninstalled Opus 12.32 and installed 11.19. Sure enough, it applis descriptions instantly, without changing the file.

And the descipt.ion file was updated shortly after.

Is there any way to restore this behaviour in 12?

Opus has always written descriptions into files if it knows how to. Saving descriptions to NTFS metadata or descript.ion files is a fallback for when Opus doesn't now how to write them to the file itself (or where it's impossible, e.g. a plain text file can't have a description added as there is no metadata in a format like that).

Maybe Opus 11 didn't know how to modify MP4 metadata; I can't remember to be honest, it was so long ago. It's also possible that it depends on the other components installed on the system, since shell extensions can expand/replace the metadata handlers for different file formats.

I didn't realise before we were talking about large MP4 file. (I think I misread it as MP3 initially.) It taking a couple of seconds (or longer on a slower drive) to write a new version of the file seems normal when it's almost 2GB in size.

Since it's likely been this way for over 7 years and we haven't had any other complaints in that time, it's unlikely we'll change this. Most people prefer the metadata to be written into the file itself where possible, since it then shows up in more software and will not be lost if the file is copied in a way that doesn't copy the NTFS metadata or descript.ion file with it.

Using labels instead of descriptions may be an alternative, since those are Opus-specific and are never stored inside the files themselves. Doesn't let you type in free-text comments, but would let you set up a "Great" label to flag a video as such, for example.

1 Like

It's not true that no one else has complained in 7 years. Here is someone who wants Opus to stop modifying JPG files.

2022-01-23 filewrangler
When writing to "descript.ion" files, I think it would be preferable that the image/file is not modified.

Labels are great, but like you said, they don't support free text, and cannot be used in other programs like 7-Zip.

Try WinRAR?
Is there a way to keep the user descriptions after RAR/Zip transfer? - Help & Support - Directory Opus Resource Centre (dopus.com)

Hello. I have never tried Directory Opus before. I came here today to read more about it before installing.

Is there a way to completely disable this "editing the file contents" behavior? Respectfully, I do not want my file manager to alter the contents of my files. Ever.

I would like to try Directory Opus, but not if I risk corrupting my files.

Thank you.

Yes, simply don't tell Opus to modify file's contents, and it won't.

What Opus is doing is no different to changing the Comment on an MP4 file via File Explorer's Properties dialog, which also modifies the MP4 file to write the comment into it:

This is not something to panic about, not specific to Opus, and not something strange or unusual Opus is doing out of the blue. You've lived this long without accidentally modifying the content of a file in File Explorer; the same will be true in Opus, if you do the same things.

Can we also please stop using the word "hack" to mean "modify a piece of metadata inside a file"? It's more than a little bit hyperbolic.

3 Likes

Ah, I see. If that is the only way that Directory Opus will alter a file, then my concern is removed. Is it the only way that Directory Opus will alter the contents of a file?

Personally, I dislike how the word "hack" has come to mean "do a thing (even if it is a very obvious thing)" (YouTube is full of this). But please note that my message did not use the word "hack". I used the words "alter" and "corrupt". I do think those words are accurate within the context of my question.

Also, thank you for the prompt reply. :slight_smile:

Of course not. You could use the Split command to split a file in half, or the Join command to add another 100 files to the end of it. You could write a script to change the contents in any way you wanted. You could replace or delete the file, which has quite a drastic effect on the file's contents...

It would take a long time to enumerate all the ways a file's content might be changed. The point is that it doesn't just happen by itself. It happens when you ask for it to happen.

My fault for not directing the statement. That was about the thread itself rather than your reply.

Alter, sure. But nothing is being corrupted.

1 Like

Splendid. Thank you. I will give it a try. :slight_smile:

I make no apology for using the term "hack". My bittorrent client automatically re-downloaded 20+ MP4 files before I figured out what Opus was doing. So yes, I was shocked to say the least.

It is irrelevant how many years ago this feature was implemented. The fact is I could always trust Opus 11 to save my comments in the descript.ion file. Now in Opus 12, I am afraid to use the Set Description command because I have no idea which file types it will alter. And the scariest part is you don't seem to know either.

I do apologize for fightening away any potential users like bblackmoor. But that is precisley why this issue needs to be addressed.

1 Like

MP4 has a clearly defined internal metadata structure which includes the ability to store user-editable descriptions. It's ridiculous to describe that as "hacking". Opus 11 simply didn't support MP4 files, Opus 12 does.

That said, we're happy to look into adding an option to bypass internal metadata for file descriptions.

It's not quite as simple as you might think - e.g. what happens if an MP4 file already has a description in that field? Should Opus overwrite it in that case? If not, which one takes precedence when it needs to be displayed?

Anything to do with metadata is always, always, more complicated than it superficially appears. Jumping up and down and getting angry about something simply because it doesn't work as you expect is nothing more than counter-productive.

3 Likes

I too would like DOpus to not modify metadata in .MP4 files if it has been told to use descript.ion. It is very confusing to have this setting respected for most file types but not mp4 (and maybe others, not sure). I use Total Commander to add descriptions to these sorts of files since it never writes any metadata and 100% uses descript.ion.

Thanks.

1 Like

Jon, first let me say it's an honour. Opus is the most impressive, flexible, insanely customizable and stable piece of software I have ever used. It's been on my work and home PCs for over 13 years and I couldn't live without it. Knowing it was created in my hometown of Brisbane makes me proud to be an Queenslander.

Now please accept my sincerest apology. I am not angry or jumping up and down. I am simply upset that I caught Opus "altering" my files without my consent. To me that is "hacking". I didn't realize that term is so offensive here. I have now fixed the topic title.

As a fellow software developer, I know what you mean when users demand things which sound easy but aren't. So here are my suggestions on how to improve it:

  • Create a new Preference page where users can select which file types Opus is allowed to embed descriptions into.
  • For backward compatiblity, tick them all by default.
  • When I untick MP4, Opus should no longer retrieve or embed comments inside MP4 files — it should only use descript.ion or NTFS streams.

That would help bring this undocumented behaviour to the surface. I think that is why so few people have complained — they simply don't know it is happening. NTFS streams are all but invisible to the user, and embedded comments can be difficult to detect. Thanks for your support also Wombat.

1 Like

No worries. I really think this behaviour of DOpus is just plain wrong. I love the program and it has even got me away from my beloved Total Commander, but in this respect I feel it could use a little more work.

Thanks for the heads-up on Total Commander Womat. I am now using it to set descriptions on MP4 files instead of Opus.

To stop myself from accidentally damaging my files, I found a way to disable the Set Description command for .mp4 and .jpg files here:

Clipboard Image (375)

Can you give us the current list of file types Opus can embed descriptions into please @Jon?

Handy. Thanks. I really hope that a future version of DOpus will at least make the current behaviour optional. Personally, I would like it to never update an mp4 file if it has been told to use descript.ion.

Huge thanks for addressing this issue in Opus 13 @Jon! This new option alone is worth the price of upgrading :partying_face:

The option is on by default, but after turning it off, I can add a description to an MP4 file and Opus will write it to the descript.ion file :grinning:

However, if I change an existing description, it appears to work at first.

But then 2 seconds later it changes back, and the file size increases :astonished:

Sure enough, Opus has embedded my new description into the MP4 file :tired_face:

And failed to write it to the descript.ion file, hence why it reverted back 2 seconds later.

Almost there Jon! Hoping you can fix this bug in the next release :+1:

I'd almost forgotten about this. I ended up scripting my way around these sorts of problems. I took the rather good DescriptionX script and adapted it for my own use. Essentially it manages descript.ion outside of DOpus.Well, inside of DOpus but it writes to the descript.ion directly rather than letting DOpus do it, so there's no chance of the original mp4 file getting changed.