I typically use FFmpeg for conversions. It’s a bit more confusing to use than Handbrake, but I find that it’s faster, and the output is generally a higher quality too. Another benefit over Handbrake is that Handbrake will try to re-transcode the entire video; whereas FFmpeg can simply repackage the video and audio tracks into any other format container. In other words, it can convert your file to a compatible file type without losing any video quality.
If you just need to convert it from
.avi to, for example,
.mp4, you can do that really easily and quickly with this command (remove the square brackets and add the file name):
ffmpeg -i "[source file].avi" -c:v copy -c:a copy "[output file].mp4"
(In layman’s terms, this means “Run FFmpeg. Use [source file].avi as the input file. Copy the video and audio tracks without transcoding them, and output them into [output file].mp4”)
If you need to convert the audio codec -
aac audio tends to work well when I’m editing - you could do that with:
ffmpeg -i "[source file].avi" -c:v copy -c:a:1 aac "[output file].mp4"
(Run FFmpeg. Use [source file].avi as the input file. Copy the video track without transcoding it. Convert the 1st audio track to .aac, and output the video and the audio track into [output file].mp4")
Except if it’s a codec issue beyond container, then it’s not solving the issue. If something is an avi, it’s not likely H.264 even though the new container of mp4 would suggest that. If a program, especially a non-linear editor, can’t read a file, it’s far more likely a codec issue than a container issue.
Also, transcoding doesn’t lose quality just because it’s changing formats. For example, to use ProRes codecs as an example, you cannot add quality that wasn’t there. So, some people will transcode H.264 into ProRes 422 or ProRes 422 HQ for editing, and scoff at using ProRes 422 LT: all have higher bandwidth than H.264 and will not have any quality loss. Look at the data rates capable from codecs, if the source codec is at a lower rate than the destination codec, you won’t lose quality (unless you set the transcode to compress the file or something). Using something too much higher in bandwidth will just create an unnecessarily large file.
FFmpeg is a good tool, but if you’re deep enough in knowing how to use codecs and such, I feel like you’d be using better tools anyway. That’s why I generally don’t recommend it to people.