Small adjustments to the main screen logic to increase user-friendliness

Started by AlanD, January 30, 2020, 11:23:29 PM

Previous topic - Next topic

AlanD

I think one of the learning curves with AVIdemux is working out the output formats and the relationship between filters and copy. I think it would make more sense to the average user if the order of things on the left hand edge was reordered slightly, with the output format selected BEFORE you select the video or audio output formats, i.e.

Output Format
- MP4

Video Output
- MPEG4 AVC (x264)

Audio Output
- AAC (FDK)

My reason for thinking this is that the output format determines which video outputs and audio outputs are available, and I think this would be more logical to most people. It would be even better if, having selected an output format option such as MP4, the video output and audio output dropdowns show only the available options for that output format.

I also think it would be a usability improvement if the restriction on only using filters while the output format was set to copy was removed. Instead, at the point where you initiate a save, the logic could be:

If video output is still set at COPY
And if there are any video filters specified,
Set the video format to one compatible with the selected Output format, e.g. x264

If the audio output is still set to COPY
And if there are any audio filters specified
Set the audio format to one compatible with the selected container, e.g. AAC

If the output audio format isn't compatible with the specified container
Set the audio format to one which is compatible, e.g. AAC

(This situation arises where you are using trying to replace the AAC soundtrack in an MP4 file with an MP3, for example)

Alternatively, you could say

If there are no video filters specificed
And if the input format matches the target output format
Just use copy, no recoding necessary

I think that would make the process a bit more user-friendly, and should, I think, cut out the need for the error message in the save dialogue where it tells you the output formats are incomplatible with the container type.