Test Report on x86 Builds

Discuss about generic usage of MediaCoder.

Moderator: HuggiL

Posts: 3116
Joined: Tue Jun 23, 2009 2:45 pm
Location: Sydney, Australia

Test Report on x86 Builds

Post by meRobs » Sat Mar 05, 2011 11:47 am

[updated 16 Nov 2012]

All tests described below were conducted on the 32-bit version (x86) of MediaCoder in a a 64-bit PC with Win7.
For test results on earlier builds, from 4399 to 4799, see: viewtopic.php?f=17&t=9611.
All builds from build 4045 to the most recent are available from: http://www.videohelp.com/tools/MediaCod ... s#download.

The tests were discontinued after build 5290 since I switched to the exclusive use of x64 builds (Test Report at viewtopic.php?f=17&t=12306). The x64 builds are quicker and do not have the problem that x86 builds have: that Xvidcore may fail to encode large files (see: viewtopic.php?f=28&t=12250).

Section 1: Which Functions work in MediaCoder?

Below are indicated whether each of the tested functions Works or Fails for the builds listed.
They relate to the x86 (32-bit) Edition and, thus, may not apply to the x64!
In particular, please note that the tests were done under specific conditions using specified file types and Presets. Thus, strictly speaking, they may apply only to these conditions, although I do expect them to apply more generally. They are meant to be indicative only and they may not apply to your special circumstance!

............ Easy .... Trim .. Copy .. Choose . Hard ... Audio .... Add ...... Add ... Group .. Effects Effects . Encode . Xvid .. Inter-
Build ... Cropper . (Clip) . Video .. Audio . Render . Delay ...Track A . Track B . (join) ...... A ....... B ..... test* .. Codec . lacing
5002 ...... works ... fails .. works .. works ... fails ... works ... F/F/F .... works .. works ... works ... fails .. some# .. fails .... yes
5010-18 .. works ... fails .. works .. works .. works .. works .. W/W/W ... fails ... works ... works ... fails .... yes ..... yes ... fails
5025-28 .. works ... fails .. works .. works .. works .. works .. W/W/W .......... .. works ... works ... fails .. some# ... yes ... fails
5030 ...... works ... fails .. works .. works .. works .. works .. W/W/W ... fails ... works ... works ... fails .... yes ..... yes ....fails
5050-62 .. works ... fails ... fails ... works .. works . . fails ... W/W/W ... fails ... works ... works ... fails .. some# ... yes ... fails
5067-75 .. works ... fails .. works .. works .. works .. works .. W/W/W .......... .. works ... works ... fails .... yes .... fails ... fails
5100 ...... works ... fails .. works .. works .. works .. works .. W/W/W ... fails ... works ... works ... fails .... yes .... fails ... fails
5120 ...... works ... fails .. works .. works .. works .. works .. W/W/W .......... .. works ... works ... fails .. some# .. fails ... fails
5130-38 .. works ... fails .. works .. works .. works .. works .. W/W/W ... fails ... works ... works ... fails .... yes ..... yes .... yes
5140-46 .. works ... fails .. works .. works .. works .. works .. W/W/W .. works .. works ... works .. works ... yes ..... yes .... yes
5150 ...... works ... fails .. works .. works .. works .. works .. W/W/W .. works .. works ... works .. works ... yes ..... yes .... yes
5160 ...... works ... fails .. works .. works .. works .. works .. W/W/W .. works? . works ... works .. works ... yes ..... yes ... fails
5166 ...... works ... fails .. works .. works .. works .. works .. W/W/W .. works .. works ... works .. works ... yes ..... yes ... fails
5170 ...... works ... fails ... fails ... fails .... fails ... works .. W/W/W .. works .. works ... works .. works .. fails# .... yes ... fails
5172 ...... works ... fails .. works .. works .. works .. works .. W/W/W .. works .. works ... works .. works ... yes ..... yes ... fails
5175 ...... works ... fails .. works .. works .. works .. works .. W/W/W .. works .. works ... works .. works ... yes ..... yes .... yes
5180 ...... works ... fails .. works .. works .. works .. works .. W/W/W .. works .. works ... works .. works . some# ... yes .... yes
5191 ...... works .. works . works .. works .. works .. works .. W/W/W .. works .. works ... works .. works ... yes .... fails .... yes
5197-98... works .. works . works .. works .. works .. works .. W/W/W .. works .. works ... works .. works ... yes ..... yes .... yes
5200 ...... works .. works . works .. works .. works .. works .. W/W/W .. works .. works ... works .. works ... yes ..... yes .... yes
5210-15 .. works .. works . works .. works .. works .. works .. W/W/W .. works .. works ... works .. works ... yes ..... yes .... yes
5220 ...... works .. works . works .. works .. works .. works .. W/W/W .. works .. works ... works .. works ... yes ..... yes .... yes
5226 ...... works .. works . works ... fails ... works .. works .. W/W/W .. works .. works ... works .. works ... yes ..... yes .... yes
5230-36 .. works .. works . works .. works .. works .. works .. W/W/W .. works .. works ... works .. works ... yes ..... yes .... yes
5240 ...... works .. works . works .. works ... fails ... works .. W/W/W .. works .. works ... works .. works ... yes .... fails .... yes
5250 ...... works .. works . works .. works ... fails ... works .. W/W/W .. works .. works ... works .. works . some# .. fails .... yes
5260 ...... works .. works . works .. works ... fails ... works .... F/F/F .... fails ... works ... works .. works . some# .. fails .... yes
5262 ...... works .. works . works .. works ... fails ... works .. W/W/W .. works .. works ... works .. works ... yes .... fails .... yes
5266-75 .. works .. works . works .. works ... fails ... works .. W/W/W .. works .. works ... works .. works ... yes ..... yes .... yes
5280-90 .. works .. works . works .. works .. works .. works .. W/W/W .. works .. works ... works .. works ... yes ..... yes .... yes

NOTE: before these comparative results may be correctly interpreted, they should be read in conjunction with Section 2, below.
* the settings in the Encoding Guide worked if "yes" appears in the Encode column, but see Section 3, below.
# see "Some encoding success" in Section 3 for comment
? see "Problems/Bugs" in Section 3

If your build doesn't support the features you mostly use, uninstall that build and install a build that does, by choosing from the above or an earlier report (at: viewtopic.php?f=17&t=9611).
Earlier builds are available from http://www.videohelp.com/tools/MediaCod ... s#download.
If your aim in getting the earlier build of MediaCoder is merely to replace the EXE file for FFmpeg or MPlayer, etc, in your more recent build, there is no need to install the older build. Simply download it and extract the desired file(s) using a compression utility like 7-Zip (R-click > Open archive, select file and click 'Extract'). For example, extract 'ffmpeg.exe' to a suitable folder, for safe keeping, and copy it to the Codecs sub-folder for MediaCoder. So as not to lose the more recent version of the EXE, first change its name to "ffmpeg_new.exe", for example.

Section 2: MediaCoder Functions & how I tested them

The functions in MediaCoder that I test (when I feel up to it), how I do it and what constitutes success are described below. Please note, though, that I had to restrict the extent of testing because there are too many perms and coms. If you get a different result with a different combination of parameters, issue a bug report!
When a test required the playing of an encoded output, I used SMplayer, a GUI for MPlayer.

Easy Cropper (click on the Cropper button on the Picture tab).
The crop function is described in viewtopic.php?f=17&t=8188&start=0 and is considered working if the video can be moved 'under' the defined boundaries in Free Cropping mode and the boundaries may be dragged relative to the video for a different crop area. Usually when the Cropper fails it opens with no video showing (uniform grey).
The Cropper test is routinely done on a VOB file that has only one audio stream and no subtitle streams. An occasional test with an FLV file gives the same result.

Trim or Clip a video (Clipping & Effects window via the 'Effects' button on the Picture tab or 'Select' from the Time tab).
'Clipping' is used to remove content from the ends of a file, and is described in viewtopic.php?f=17&t=8912&start=0. It should be reasonably easy to set the Mark In and Out points on this window. Whereas, trimming a video with such a tool would be inaccurate, depending on the I-frame spacing, it ought to be usable. The slider should stop on hitting Pause and it should be possible to scrub through the video to find the desired points. The jump buttons (double arrows) should also work (about 10 sec). The test result will be indicated as “fails” if both of the following methods fail: (1) move the slider repeatedly by dragging or the jump buttons to find the desired points and mark the times with the Mark In/Out buttons and (2) use the Pause button to allow scrubbing and marking. It was tested on a VOB file that had one audio stream and no subtitles.

Copy the Video stream ('Copy Video' on the Video tab).
Presumably, this 'copy' function would fail if the video and/or audio streams were not compatible with the output container. For example, it would usually fail for an FLV file re-muxed to MPEG2. Copy Video may be applied with the audio disabled, converted or copied. Similarly, there are three options for Copy Audio. If all combinations were to be tested, especially if I were equally thorough with the other functions, testing would take too long. It would be even more complicated if I considered combining two functions.
Video quality is easily compromised by repeated encoding, whereas, in my opinion, it is easy to re-encode audio without a noticeable loss. Moreover, the saving in time when video is copied is far greater than for audio. Hence, the ability to copy video will be considered as more important; and I will limit myself accordingly. Consequently, the 'Copy Video' function was tested by converting a VOB having just one video and one audio stream, and was considered to be 'working' if (1) both the video and the audio will copy at the same time (very quick since no transcoding takes place) and (2) Video will copy with the audio stream being converted. The test was done using the MPEG2 Preset since this container will accept the streams from a VOB (see NOTE at the end of Section 3).

Auto De-interlacing This test (described in the earlier Test Report at viewtopic.php?f=17&t=9611) was removed prior to testing build 5170 since all builds from 5002 to 5166 passed the test and there may be confusion with the "Interlacing" test (below) and a posssible overlap in function.

Choose Audio Stream (select ID on audio tab).
This was tested by applying the MPEG2 Preset (see NOTE at the end of Section 3) to a VOB file having three different audio streams. This feature is considered as 'working' if the selected audio stream appears in the output file when converting both the video and the audio streams of this VOB. I chose to limit myself to this scenario since there are too many possible combinations and I have had to restrict myself.

Hard Rendering of a Subtitle – on the Subtitle tab, choose 'Default' for Renderer and ID=0.
See also the comments in section I of the guide on rendering (viewtopic.php?f=17&t=10927).
For this test, I chose the above VOB with 3 audio streams. It also has 8 subtitle streams. However, since build 5200, I included a second source file for the test, an MKV with one subtitle stream, and used MEncoder as video ‘Source’. I converted both files to MPEG2 and/or to MP4 with the ID = 0 (default). For success in this test, the correct subtitle had to be present on the Preview panel (if open) during transcoding and also in the output file. If there are no (hard) subtitles for either the VOB or the MKV, the test “fails”.
However for rendering to be considered a successful function, the setting of 'Disable' should avoid rendering. Hence, if subtitles are present when the mode is 'Default' and absent for 'Disable', the rendering function is considered as “working”. On the other hand, if rendering occurs when disabled, it is just as much a failure as not rendering when 'Render' is chosen. To distinguish the two failures, a rendered result when disabled will be marked “w/fail” (works when render is set and fails when disabled).

Audio delay (on the Sound tab).
Even though the conversion of VOBs is best not done directly (see: viewtopic.php?f=17&t=8082&start=0), if you must convert them, their delays (given as video delay under 'audio' in MediaInfo) may be corrected with this function. It is tested using the MPEG2 Preset (see NOTE at the end of Section 3) on an FLV file with obvious sharp impact noises. I set a negative delay of -550 ms and, if successful, the resultant audio shift would be heard (early) on playing the output. Usually, when the function fails the set delay resets to zero on hitting Start.

Add Track feature (on the 'File' menu or Ctrl+T). This feature is described in viewtopic.php?f=17&t=8082&start=0.
For the test “Add Track A”, a VIDEO_TS folder was used that had been ripped to a HDD from a DVD in PAL. It has one VTS group having 14 Tracks' and MP2 audio. I chose a DVD with MP2 audio because a problem of this kind seems less likely for AC3 audio. There were three steps:
Step 1: use File > Add Track to select the VIDEO_TS folder, via Disc Root/URL, to display all its tracks in the Track panel and to select tracks 7 and 11 to display their content in the Chapter panel at right,
Step 2: 'Add' these tracks into MediaCoder and check their details in the Properties panel and
Step 3: convert Track 11 to MPEG2.
The Properties info (Step 2) was either satisfactory or mostly empty. When 'satisfactory', it had details under Container, Video and Audio, even though usually only broadly correct. When 'mostly empty' there were very few data and a conversion (step 3) usually failed.
From my experience to date, the conditions of this test are those that are most likely to find a fault in the Add Track function.
The Add Track A test was rated using three letters in the form: “A/B/C”, where A, B and C relate to Steps 1, 2 and 3, resp. Each is either 'F' for failure or 'W' if it works. A failure for step 1 is when it gives a complete blank in the Track panel or gibberish in the chapters panel; and for step 2, when the Properties data for either track is virtually empty. Obviously, if the Track panel is a blank (Step 1), a track could not be selected for adding to MediaCoder for conversion. In this case, the result would be “F/F/F”.

On 4 May 2011, the test “Add Track B” was added because looping behaviour had been noted in builds 5100 and 5130 when converting material from a DVD (VIDEO_TS folder). It was found that the transcoding of a VTS group containing more than 2 VOB files failed to extend beyond the end of the second VOB and action looped back to the start of the first VOB. Also, that looping repeated indefinitely. For this test I used a DVD with two VTS groups, the first of 2.2 GB (3 VOB for 88:20 min) and a second of 1.8 GB (2 VOBs). I used Add Track and ‘Added’ Track 1 for transcoding to MPEG2. It was considered successful if it completed the full 88:20 min without looping. It failed if encoding looped back from the end of VOB2 and continued beyond 100 min of video.
As a check this test was applied to the earlier builds, 4640 and 4797, and it worked in both cases. Then, I tried it in builds 5002, etc, as indicated in the above table.

Group function (on the 'Item' menu or via R-click on selected files).
'Group' was tested using three 30-sec VOBs cut from the same source file (at I-frames using Avidemux). Each had only one audio track. They were then placed in MediaCoder, joined (R-click > Group) for transcoding to MPEG2, with progress indicated as a percentage in the 'State' column for the first file only. Success may be judged by checking the Duration of the output file in the Properties panel, at right.

Video Effects (applied via the Effects button on the Picture tab).
Here, there are two groups. (1) Group A, for the Brightness, Contrast, Saturation and Hue, and (2) Group B, for the three colour gammas, nominally for Red (R), Green (G) and Blue (B). Notice that Hue is like a Colour Wheel, adjustable from -180 to +180 to cover the spectrum, with small values near 0 (default) offering small colour corrections.
Notice also that the success of each group of Effects is expressed separately in the Table of Section 1. For either group of effects to be considered successful, they must satisfy two criteria: (a) the effect of any adjustment must be evident in the video panel of the Clipping and Effects window, else this feature would have no practical use, and (b) that the change seen in this panel should be a true reflection of the change to be seen in the output file after conversion.

Encoding Test. I applied the 8 encoding suggestions tabulated in the Encoding Guide (viewtopic.php?f=17&t=9643). In each case, the source file was a 100-sec VOB file, which has one MPEG2 video stream at 6000 kbps, one AC3 audio at 224 kbps and no subtitle streams. Having different bit rates than those set in the Encoding Guide allowed a check on whether Copy Video/Audio, etc, worked.

Xvid Codec: If the correct FourCC code is not written to the header of an Xvid/AVI file, many standalone players will not play. It should be ‘dx50’ or ‘XVID’, for example. For this test, the build is considered successful if “Codec ID = XVID” in MediaInfo for the Xvid/AVI settings given the Encoding Guide (viewtopic.php?f=17&t=9643). Otherwise it fails, usually with “FMP4” displayed. To avoid such a failure and to overcome problems in a future build of MediaCoder, include in your Preset: Settings > Overall > Video > “Override FourCC …” = XVID. Alternatively, apply this override manually or change to a build that works. Another option is to change the video encoder to FFmpeg (should give XVID as Codec ID), although, it is unlikely to allow the choices shown on the Xvid tab, opposite the Video tab.
NOTE: in some builds, such as 5185 to 5196 and 5240 to 5266, the output frame rate given in the Properties panel is double the set value and seems due to a writing error to the file header by the Muxer – it is not real, so ignore it!

Interlacing: It is often useful to maintain interlacing in an interlaced file (such as an MKV, VOB or MPEG2 file) when converting. There are two setting parameters that govern this: De-interlacing and Field Order, both available on the Effects tab opposite the Picture tab. By default MediaCoder outputs Progressive. To achieve an interlaced output, De-interlacing should be disabled. For more comment on interlacing, visit: viewtopic.php?f=17&t=9867&start=0.
This test was done by applying the MPEG2 Preset (see Note below) on the above VOB (TFF). And of all the options available, I considered it sufficient for a build to pass if (1) De-interlacing ‘Enabled’ with field order at ‘Auto’ gives a Progressive file, to confirm that interlacing can be switched off, and (2) that De-interlacing ‘Disabled’ with field order at ‘BFF’ should give an Interlaced BFF file. In builds 5130, it took 50% longer to create an interlaced file.

Section 3: More Observations

The Encoding Guide: the Encoding Guide (viewtopic.php?f=17&t=9643) was changed at various times:
(1) as of build 5026, FFmpeg as video source was no longer compatible with the presence of AAC audio. So, the audio for MKV was changed to MP3, the old MP4 (MPEG4/AAC) option was replaced by the MPEG4/AVI, leaving the MP4 option in the Guide as the only one based on the X264 encoder;
(2) on 21 Mar 2011, the audio bit rate for MPEG4/AVI was changed from 144 to 160 kbps because setting 144 kbps with MP2 or AC3 gave an incorrect result ("no file output" or error 11). The use of 144 kbps gave similar results when converting to MPEG2; and these comments apply to builds from 5000 to 5075 at least.
(3) on 2 Apr 2011, the sampling frequency (“Resample”) for MP3 in FLV was changed from 32 kHz to 44.1 kHz because at 32 kHz build 5100 gave “No file output”.
(4) On 30 Aug 2011, the MP3 audio for Xvid AVI was changed to LAME at 96 kbps CBR, partly because the FFmpeg encoder that had previously been used for MP3 gave 96 kbps when set at 112 kbps (see also Section 5 in viewtopic.php?f=17&t=9643).
(5) On 7 Jan 2012, for build 5220, the Multiplexer for MKV was changed from Auto Select to MKVmerge in the Guide. With Auto Select, encoding faulted with the decoder showed 0% CPU usage and eventually gave the error message: “The encoding thread seems to be blocked …”
(6) On 15 May 2012, for build 5240, the video encoder for Xvid was changed from Xvidcore to FFmpeg because of problems with the former in x86 builds. See bug report: viewtopic.php?f=28&t=11982.

'Some' encoding success:
* build 5002 failed to convert to Xvid/AVI and for MKV, the file header failed to include the bitrates and the audio was 4-channel (set stereo).
* For build 5025, four of the seven conversions defined in the Encoding Guide failed, three of which gave Error 11.
* Build 5026 initially failed for MP4 and MKV (error 11), which initiated changes to the encoding settings (see above). As a result, build 5026 was successful for all conversions.
* Build 5028 then failed for MKV due to changing the “Matroska” string to “MKV”.
* In builds 5050 to 5066, attempts to get AC3 in MPEG2 gave audio that failed to play, yet, it worked for MP2 and MP3. This bug was fixed in build 5067.
* Build 5120 gave “No file output” when attempting to convert a VOB to MPEG1 or to FLV.
* Build 5170 failed to convert any VOB file, as used for the Encoding test as well as the Copy Video, Choose Audio, Hard Render and Interlacing tests. Hence for these tests I had to report a failure!
* Build 5180 hung up trying to convert to MKV (see: viewtopic.php?f=28&t=10911)
* build 5220 failed to convert to MKV until the Multiplexer was enabled as MKVmerge (see comment on the Encoding Guide, above).
* builds 5250 and 5260 failed to convert to WMV-8 (on 22 Jun 12, the developer replaced FFmpeg in 5260 and it worked)

* Build 5160 completed the Track B conversion test, with a successful output file, but MediaCoder then crashed (maybe related to the Firewall). Fixed in build 5166.

NOTE: for the MPEG2 Preset, mentioned above, I used the settings given in viewtopic.php?f=17&t=8599&start=0, which includes the setting of the GOP length to 12.
Have you checked out the Tips & Guides for MediaCoder? Try: http://forum.mediacoderhq.com/viewtopic.php?f=17&t=8061
Also, get older builds at: http://www.videohelp.com/tools/MediaCoder/old-versions#download