> On Sep 30, 2023, at 17:47, Stéphane Archer <[email protected]> wrote:
>
> I'm not sure I understand what you mean, do you mean a hash like md5 and
> sha1?
> Could you please elaborate and simplify a bit?
I checked-- I was referencing this from your OP
> Is there any good reason why FFmpeg which sees that the video file input
> and output match every single characteristic doesn't copy the stream to
> avoid useless reencoding?
> Basically doing "-vcodec copy" automatically.
Based on that I was assuming you had existing files and arriving files new
files that might or might not match your existing files
(Your actual situation may be different. Might be helpful if you can provide
more context about what you're trying to achieve.)
But to answer your question re hash: yes an md5 or sha.
I cobbled up a quick algorithm but instead of solving the problem it reveals a
logic flaw
Take the following
ExistingFile = some file you might want to update
NewFile = The file that might update it.
ExistingFileHash = shasum -a 512 /path/to/ExistingFile
NewFileHash = shasum -a 512 /path/to/NewFile
if(NewFileHash <> ExistingFile){
delete ExistingFile (or archive it, depending on your workflow)
ffmpeg -i ExistingFile -whateversettings NewFile **Here's the logic
flaw**
} else {
Don't do anything to the ExistingFile
}
* An Existing File that was transcoded ffmpeg would never match hashes with a
new file. or if it did match, it would seem there's no reason to transcode it.
So it sounds like there's more to the story of what you're trying to achieve.
Are you maybe instead trying to see if the metadata of a NewFile matches stored
metadata of an Existing file, and if not, then do a transcode?
_______________________________________________
ffmpeg-user mailing list
[email protected]
https://ffmpeg.org/mailman/listinfo/ffmpeg-user
To unsubscribe, visit link above, or email
[email protected] with subject "unsubscribe".