AMVtool - One software for encoding & recontainering!

If you have questions about compression/encoding/converting look here.
Post Reply
User avatar
l33tmeatwad
Joined: Wed Feb 16, 2005 3:22 pm
Location: Christiansburg, VA
Contact:
Org Profile

AMVtool - One software for encoding & recontainering!

Post by l33tmeatwad » Wed Jan 25, 2017 9:20 am

Any testing and feedback that I can get would be very helpful!

Download

Features:
Available on Linux, macOS, and Windows.
Automatically chooses the color matrix based on the existing file or guesses based on resolution.
Can pass through HDR or convert it to SDR.
Easily copy video & audio streams from one container to another.
Queue for batch encoding and easily configure all videos at once or individually.
Shows bit depth of the currently selected video stream.
Supports encoding of AviSynth (Windows Only) & VapourSynth scripts.
Supports encoding to DNxHR, ProRes, Ut Video, VP9, x264, & x265.
Supports multiple audio streams.

Planned/Upcoming Features:
Multi-Language Support

Notes:
On Linux and macOS it looks for FFmpeg in the same folder that AMVtool is in, then additionally in /usr/bin and /usr/local/bin. On Windows it looks for VSPIPE in the same folder, however in Linux and macOS it looks for it in /usr/local/bin.

Known Issues:
-The first pass for VP9 encodes will not show progress (working on a fix).
-Unable to determine bit depth of VP9 video so program makes an educated guess based on other details (limitation of MediaInfo).
-Unable to pass through HDR from AviSynth & VapourSynth.

Windows Requirements:
FFmpeg 5.1 (Copy Included)
Visual C++ Redistributable 2019

Linux Requirements:
FFmpeg 4.0 or greater.
Git
MediaInfo Library (Ubuntu Package Name: libmediainfo-dev)
Qt 5.6

Linux Instructions:

Code: Select all

git clone https://github.com/l33tmeatwad/AMVtool
cd AMVtool
qmake
make
make install
Changelog:
Version 1.2 (Beta)
-Added support for VP9 & Opus codecs.
-Added WebM as a container option.
-Added ability to convert HDR to SDR.
-Added ability to inverse telecine & deinterlace.
-Added ability to change aspect ratio.
-Added ability to change video resolutions.
-Added HDR tag in the main queue.
-Added Interlaced tag in the main queue.
-Added "Recontainering" as a status instead of just "Encoding".
-Updated configuration menu layout.
-Updated FFmpeg executable to version 5.1.

Version 1.1.0.6
-Fixed issue where Bitrate 1 Pass encodes would not output a file.
-Fix conditions where UT Video could potentially not output a file.

Version 1.1.0.5
-Fixed issue where "Use Another Source" could cause the software to hang.
-Updated configuration menu layout.

Version 1.1.0.4
-Added error if attempting to encode with Ut Video & BT.2020 color matrix.
-Added FFmpeg command being run under Show Details.
-Disabled AVI as an option when source color matrix is BT.2020.
-Fixed issue where multiple audio streams may encode instead of copy.
-Fixed issue where configuring an errored line in the queue would not reset it to pending.
-Fixed renaming to account for 2 & 4 letter extensions.
-Updated Qt to 5.15.2 for Windows.
-Updated layout to prevent things form moving around when hiding options.

Version 1.1.0.3
-Updated MediaInfo to fix issue with opening files containing 32-bit PCM audio.

Version 1.1.0.2
-Fixed issue where loading a bad file when default is set to recontainer would crash the application.
-Updated code to support compiling with Qt 6.

Version 1.1.0.1
-Fixed issue where duration would not pull for some file types in Windows.

Version 1.1.0.0
-Added support for DNxHR & ProRes codecs.
-Added "Other" tab in configuration for additional settings.
-Fixed graphical issues with dark mode in macOS.
-Fixed issue for AviSynth where audio would not be detected.
-Fixed issue for configuration where Color Depth would default to the file value instead of saved settings.
-Fixed issue for configuration with Bit Depth 12 setting.
-Updated FFmpeg executable to version 5.0.
-Updated MediaInfo to version 21.09.
-Updated Qt on macOS to 5.15.2.
-Updated macOS minimum version to 10.13.

Version 1.0.1.6
-Added dialog box to confirm closing the application.
-Added AviSynthWrapper library file to the repository.
-Code cleanup & updates to support for newer versions of AviSynthWrapper.
-Reorganized file structure of the repository.
-Updated AviSynthWraper, MediaInfoLib, & ZenLib.
-Updated FFmpeg executable to version 4.3.1.
-Updated macOS & Windows builds to Qt 5.12.9.

Version 1.0.1.5
-Fixed bug where automatic overwrite would skip instead.

Version 1.0.1.4
-Fixed bug where attempting to copy multiple audio streams would crash the application.
-Fixed bug where if the audio from the source and alternate audio source did not match the application may crash.

Version 1.0.1.3
-Fixed bug where new files added would not apply recontainer settings set through Configure All.
-Updated FFmpeg executable to version 4.2.2.

Version 1.0.1.2
-Added automatic workaround for the FFMPEG error "Too many packets buffered for output stream".
-Added webm support.

Version 1.0.1.1
-Bugfix for incorrect output locations when using the Configure All option.

Version 1.0.1.0
-Update to the way UT Video is interpreted for auto settings.

Version 1.0.0.9
-Fixed bug with audio stream selection in the configure menu.
-Fixed bug with drag and drop rejecting files with capital letters in the file extension.
-Fixed bug with external audio causing the encode to fail (Windows).

Version 1.0.0.8
-Fixed bug with audio stream selection in the configure menu.

Version 1.0.0.7
-Added the ability to encode 10-bit x264.
-Added the ability to encode 10 & 12-bit x265.
-Added checks to enable or disable 10 & 12-bit encoding based on the copy of FFmpeg.
-Fixed bug where RGBA would actually encode to RGB24.
-Fixed bug where audio option "Copy Compatible" would check itself.
-Fixed quirks with audio options.
-Updated FFmpeg included with macOS & Windows releases to enable 10-bit x264, 10 & 12-bit x265, and FLAC.
-Updated Media Info.

Version 1.0.0.6
-Fixed bug for auto selection of color matrix for VapourSynth.

Version 1.0.0.5
-Fixed bug for auto selection of color matrix for AviSynth.
-Updated FFmpeg to 4.0.

Version 1.0.0.4
-Fixed bug for auto selection of color matrix for videos.

Version 1.0.0.3
-Code cleanup.
-Fixed bug for MPG audio in Windows.

Version 1.0.0.2
-Fixed bug for 2-Pass encoding where it would fail immediately.

Version 1.0.0.1
-Added High Bit-Depth support for Windows.

Version 1.0.0.0
-Added Version Information
-Changed the default for "Preset" (x264/x265) to "Medium"

Release Candidate 1
-Bugfix for Configure All where the saved color matrix choice would be overwritten
-Bugfix for Configure All where files containing no audio would error

Beta 12
-Bigfix for copying PCM audio
-Updated recontainering for Configure All

Beta 11
-Added option for audio when recontainering from Configure All
-Bugfix for Configure All

Beta 10
-Added the ability to open MPG files
-Bugfix for auto color matrix selection
-Bugfix for TrueHD audio in M2TS container
-Minor interface updates

Beta 9
-Added the ability to open MTS files
-Bugfix for AviSynth/VapourSynth stream IDs
-Bugfix to prevent encoding everything when "Encode Incompatible" was checked

Beta 8
-Added back the ability to open M2TS, TS, and VOB files
-Bugfix for handling stream IDs

Beta 7
-Bugfix for handling stream IDs
-Removed ability to open M2TS, TS, and VOB (Temporary)

Beta 6
-Added AviSynth support (Windows Only).
-Added dependency checks and error handling.
-Added a status bar.
-Cleanup and optimization of code.
-Minor interface updates.

Beta 5
-Added drag & drop support.
-Minor changes to the layout and bugfixes.

Beta 4
-Minor changes to the layout and bugfixes.

Beta 3
-Added support for Linux and Windows.
-Fixed bug where it would not look for the output file if not in the same directory as the source.

Beta 2
-Fixed issue where codec for audio when recontainering was not always compatible with the output container.
Software & Guides: AMVpack | AMV 101 | AviSynth 101 | VapourSynth 101
PixelBlended Studios: Website | Twitter | YouTube

User avatar
MystykAMV
Joined: Sun Feb 24, 2008 3:17 am
Location: Hungary
Org Profile

Re: AMVtool - One software for encoding & recontainering! (8/15/17)

Post by MystykAMV » Sat Dec 16, 2017 9:23 am

Wow, nice tool! Thank you for making this!

I'll be waiting for the 10bit conversion.

I can't really see too much difference between using this and using the MKVExtractGUI (+MKVToolNix) and MyMP4Box combo, however I tried converting a 704x482 source with both your tool and my old method, and with the old method it changed the aspect ratio, but yours kept the aspect ratio, so thumbs up for that!

I also think this is very useful for beginners, it's only one program that they need (basically) and it's also easy to use and it's fast, so I also recommended it for others.

If you need help with translation into hungarian, feel free to tell me, I'll gladly help you!

User avatar
MystykAMV
Joined: Sun Feb 24, 2008 3:17 am
Location: Hungary
Org Profile

Re: AMVtool - One software for encoding & recontainering! (8/15/17)

Post by MystykAMV » Sat Dec 16, 2017 9:49 am

Another post since I can't edit my original post:

One more thing I would mention:
Before conversion: fps --> 23,976215
After conversion: fps --> 24,500609

Is that on purpose?

User avatar
l33tmeatwad
Joined: Wed Feb 16, 2005 3:22 pm
Location: Christiansburg, VA
Contact:
Org Profile

Re: AMVtool - One software for encoding & recontainering! (8/15/17)

Post by l33tmeatwad » Sat Dec 16, 2017 6:32 pm

MystykAMV wrote:Another post since I can't edit my original post:

One more thing I would mention:
Before conversion: fps --> 23,976215
After conversion: fps --> 24,500609

Is that on purpose?
I'd have to see the specs on the original file and what exactly your settings were.
Software & Guides: AMVpack | AMV 101 | AviSynth 101 | VapourSynth 101
PixelBlended Studios: Website | Twitter | YouTube

User avatar
MystykAMV
Joined: Sun Feb 24, 2008 3:17 am
Location: Hungary
Org Profile

Re: AMVtool - One software for encoding & recontainering! (8/15/17)

Post by MystykAMV » Sun Dec 17, 2017 8:41 am

Original file:
Spoiler :

Code: Select all

General
Unique ID                      : 174591468175778811771528154701075795350 (0x835917FA106D27A0AC90CFD1491F4D96)
Complete name                  : D:\ANIME\La Portrait de Petit Cosette\cossette_no_shouzou_01[h264.dts][niizk].mkv
Format                         : Matroska
Format version                 : Version 1
File size                      : 609 MiB
Duration                       : 37mn 52s
Overall bit rate               : 2 247 Kbps
Encoded date                   : UTC 2006-12-03 13:23:00
Writing application            : mkvmerge v1.8.1 ('Little By Little') built on Nov 25 2006 16:14:30
Writing library                : libebml v0.7.7 + libmatroska v0.8.0
Attachements                   : Ogirema.ttf / Timeless-Bold.ttf / Alexa.ttf / FLUID-LI.TTF / GARABL__.TTF / GARARG__.TTF / InkyDinky.ttf / Manga.ttf / mangal.ttf

Video
ID                             : 1
Format                         : AVC
Format/Info                    : Advanced Video Codec
Format profile                 : High@L5.1
Format settings, CABAC         : Yes
Format settings, ReFrames      : 13 frames
Codec ID                       : V_MPEG4/ISO/AVC
Duration                       : 37mn 52s
Bit rate                       : 1 447 Kbps
Nominal bit rate               : 1 816 Kbps
Width                          : 704 pixels
Height                         : 480 pixels
Display aspect ratio           : 16:9
Original display aspect ratio  : 3:2
Frame rate mode                : Constant
Frame rate                     : 23.976 fps
Original frame rate            : 29.970 fps
Standard                       : NTSC
Color space                    : YUV
Chroma subsampling             : 4:2:0
Bit depth                      : 8 bits
Scan type                      : Progressive
Bits/(Pixel*Frame)             : 0.179
Stream size                    : 392 MiB (64%)
Title                          : Cossette no Shouzou - Episode01
Writing library                : x264 core 54 svn-602M
Encoding settings              : cabac=1 / ref=10 / deblock=1:-2:-1 / analyse=0x3:0x133 / me=umh / subme=7 / brdo=1 / mixed_ref=1 / me_range=16 / chroma_me=1 / trellis=0 / 8x8dct=1 / cqm=2 / deadzone=15,6 / chroma_qp_offset=0 / slices=2 / nr=0 / decimate=0 / mbaff=0 / bframes=3 / b_pyramid=1 / b_adapt=1 / b_bias=0 / direct=0 / wpredb=1 / bime=1 / keyint=250 / keyint_min=25 / scenecut=40 / rc=2pass / bitrate=1816 / ratetol=1.0 / rceq='blurCplx^(1-qComp)' / qcomp=0.60 / qpmin=10 / qpmax=51 / qpstep=4 / cplxblur=20.0 / qblur=0.5 / ip_ratio=1.40 / pb_ratio=1.30 / aq=1:1.1:15.0
Default                        : Yes
Forced                         : No
In AMVTool I did the following:
1. Configure all
2. Recontainer
3. Click no on audio
4. Click yes on the mp4 question (only recontainer videos compatible with mp4)
Spoiler :
Image

User avatar
l33tmeatwad
Joined: Wed Feb 16, 2005 3:22 pm
Location: Christiansburg, VA
Contact:
Org Profile

Re: AMVtool - One software for encoding & recontainering! (8/15/17)

Post by l33tmeatwad » Wed Jan 03, 2018 1:01 pm

This part is the reason it is doing the weird frame rate change:

Code: Select all

Frame rate                     : 23.976 fps
Original frame rate            : 29.970 fps
That said, it should not change it enough to be an issue, especially for editing purposes. You can also tell your editing software to interpret the footage at a particular frame rate as well.
Software & Guides: AMVpack | AMV 101 | AviSynth 101 | VapourSynth 101
PixelBlended Studios: Website | Twitter | YouTube

Post Reply

Return to “Conversion / Encoding Help”