17.11.2017, 03:15
As i've been doing a lot of test encodes lately, which mostly just consists of tediously copy-pasting Encoding settings and filesizes to text files for comparison in WinMerge, i've come up with some ideas that would make this sort of thing a whole lot faster...
- Support adding metadata like Filesize, Bitrate, PSNR, SSIM & Encoding settings to automatically generated filenames.
- Since adding Encoding settings could easily result in a filename that's way too long, also allow blacklisting of user specified / redundant text strings like so:
Code:cpuid=*; frame-threads=*; numa-pools=*; no-pmode; no-pme; psnr; ssim; log-level=2; input-csp=1; input-res=1920x1080; interlace=0; total-frames=0; level-idc=0; high-tier=1; uhd-bd=0; ref=6; no-allow-non-conformance; no-repeat-headers; annexb; no-aud; no-hrd; info; hash=0
- With '*' being a wildcard and ';' acting as separator. Thus user would be able to copy-paste their baseline settings here and have the filename only include the changed settings.
- When specified, use automatically generated filenames also for intermediate Video, Audio & Subtitle tracks, each with their own Filesize(in bytes), bitrate(in Kbps), etc. metadata; renaming can be done once encoding is finished.
- The two suggestions above would make this almost obsolete, but allowing for serialization of filenames, where for example: 'test#{2}' would become 'test#01' unless it already exists, in which case it'll become 'test#02' as opposed to just replacing the older file. This would help avoid accidental overwrites. I haven't really given much thought to whether '{#}' would be a good markup (there could be more commonly used alternative), but the general idea is to allow for padding with zeros to a specified length.
- To keep things cleaner, I've been using a simple trick to do my encodings inside a subfolder of the source file's directory by setting 'enc\' as prefix for the filename. However .chp & .xml files are still being created inside the source file's folder. Perhaps there is a reason why these need to be there during encoding, but moving or deleting them automatically after encoding would be helpful, especially since a new one gets created every time the file is encoded, thereby making the folder slower to navigate and easier for user to accidentally delete something they shouldn't. EDIT: This is about adding full support for dynamic destination directories, not about improving or fixing an accidental 'feature'.