The same, but different!

After another long phone call, I decided to repeat a test previously conducted 3 years ago.

The conversation surrounded a small experiment on transcoders and players. It highlighted an issue in that any documented process must include what software was used, the settings and then a comparison of the results. It originally proved that just specifying a player type and / or container format was useless, as the video file itself could have been created in a million different ways. I was asked, “would the same issues happen today?” With updated software and higher spec PC’s, would issues still arise. I said Yes… but then thought I had better check!

Disclaimer!! – This is by no means scientific. I have replicated the real world and not dug too deep into encoding parameters or software settings and the PC used is mid ranged. I have posted this information in order to highlight the issues and, offer some suggested methods to conduct similar tests yourself if required.

Creating the test video in Virtualdub

Creating the test video in Virtualdub

I created my test footage in Virtualdub, and simply used the RGB Cube. This resulted in a file with the following specifications:

About_AVI

I could of created my test video in FFmpeg by using something like:

ffmpeg -f lavfi -i testsrc -pix_fmt rgb24 -c:v rawvideo -s 640×480 -t 30 -r 30 yourtestvideo.avi

However, I wanted the 3D spinning cube to test the motion replication and, as such, Vdub was chosen.

I then chose the WMV container. The purpose of this was to highlight a number of points. In many encoding software applications, the container is specified but not the encoding format. It would be of interest to see what was being used. Also, Windows Media Player is on every standard Windows PC, so the resulting video should play on a standard ‘out of the box’ build with no requirement for any other software.

As well as WMP, I decided to test playback in another application. VLC was chosen.

VLC Version information

VLC Version information

Finally, the encoding software was chosen.

  • Microsoft Expression
  • Free Video Converter
  • Windows Movie Maker
  • Adobe Premier Pro

Attempting to keep encoding settings the same, bit rate settings at 4000kbps, (if editable) size, frame rate etc…

Purely on the data, here are the results:

Microsoft Expression

Format : VC-1
Format profile : AP@L1
Codec ID : WVC1
Codec ID/Hint : Microsoft
Description of the codec : VC-1 – VC-1 Advanced Profile
Duration : 33s 367ms
Bit rate mode : Constant
Bit rate : 4 020 Kbps
Width : 640 pixels
Height : 480 pixels
Display aspect ratio : 4:3
Frame rate : 29.970 fps
Chroma subsampling : 4:2:0
Bit depth : 8 bits
Scan type : Progressive
Compression mode : Lossy
Bits/(Pixel*Frame) : 0.437
Stream size : 16.0 MiB
Language : English (US)

Free Video Converter

Format : WMV2
Codec ID : WMV2
Codec ID/Info : Windows Media Video 8
Description of the codec : wmv2
Duration : 33s 367ms
Bit rate : 2 044 Kbps
Width : 640 pixels
Height : 480 pixels
Display aspect ratio : 4:3
Frame rate : 29.970 fps
Bit depth : 8 bits
Bits/(Pixel*Frame) : 0.222
Stream size : 8.13 MiB (96%)

Windows Movie Maker

Format : VC-1
Format profile : MP@ML
Codec ID : WMV3
Codec ID/Info : Windows Media Video 9
Codec ID/Hint : WMV3
Description of the codec : Windows Media Video 9 – Professional
Duration : 33s 400ms
Bit rate mode : Constant
Bit rate : 4 000 Kbps
Width : 640 pixels
Height : 480 pixels
Display aspect ratio : 4:3
Frame rate : 29.970 fps
Bit depth : 8 bits
Scan type : Progressive
Compression mode : Lossy
Bits/(Pixel*Frame) : 0.434
Stream size : 15.9 MiB
Language : English (US)

Adobe Premier Pro 

Format : VC-1
Format profile : MP@ML
Codec ID : WMV3
Codec ID/Info : Windows Media Video 9
Codec ID/Hint : WMV3
Description of the codec : Windows Media Video 9 – Professional
Duration : 33s 834ms
Bit rate mode : Constant
Bit rate : 4 000 Kbps
Width : 640 pixels
Height : 480 pixels
Display aspect ratio : 4:3
Frame rate : 29.970 fps
Bit depth : 8 bits
Scan type : Progressive
Compression mode : Lossy
Bits/(Pixel*Frame) : 0.434
Stream size : 16.1 MiB
Language : English (GB)
NumberOfFrames : 1000

After observing and noting the differences in the Codec formats, the profiles, the durations and the bit rates… it was time to actually see the footage.

Firstly, all played with no issues in WMP. The only problems with this player is the controls, or lack thereof. It is fairly limited with regards to its functionality and this is probably one of the major reasons why a lot of people use other applications.

VLC Playback had differing results.

The version produced using Free Video Converter would not scrub or frame advance. When hitting pause and then play again, it would crash the software.

The version produced using Premier Pro also would not scrub correctly, and failed to frame advance properly. It also displayed decoding errors whilst playing back:

PremProError

Due to the scrubbing errors in the FVC and Adobe versions, selecting a single frame across all samples proved to be a challenge but eventually, Frame 411 was screen captured from all clips.

Notice the scrub bar missing from  the player when rendering the FVC version

Notice the scrub bar missing from the player when rendering the FVC version

Snap 2014-12-02-22_24_46

Its difficult to show the loss in detail but the Windows Movie Maker version was significantly lower in quality. Its Top-Right in the image above. The text was considerably softer. When viewing the edges of the blocks, the softness and artefacting was hardly seen in the Expression version.

Snap 2014-12-02-22_26_21

The point of this quick exercise was to identify the differences in transcoding software in order to make better decisions on what to use and why. It also highlights that even though it may look the same, a transcoded file is not the same as the original. Everything is important; the original file type, the transcoding software, the format chosen and the container type, and then the player. After that, it must be realised that if the player relies on system files and codecs, even then it may not play as expected.

Food for thought…..

 

 

 

Advertisements
By Spreadys Posted in EEPIP

One comment on “The same, but different!

  1. Reblogged this on Carpet Bomberz Inc. and commented:
    I too am a big believer in doing some amount of testing when the opportunity comes along. Most recently I had to crunch down some video to smaller file sizes. I decided to use Handbrake as that’s the hammer I use for every nail. And in the time since I first started using it, a number of options have cropped up all surrounding the use of the open source x264 encoding libraries. There are now more commandline tweaks and options than you could ever imagine. Thankfully the maintainers for Handbrake have simplified some of the setting through the GUI based version of the software. Now I wasn’t going for quality but for file size and I got it using the “constant quality” output option as opposed to my classical fave “Constant Bitrate”. Let’s just say after a few hours of doing different tweaks on the same file I got bit rates way down without using Contant Bit Rate. And it seams to work no matter what the content is (static shots or fast moving action). So kudos to Spreadys for giving a head-to-head comparison. Much appreciated.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s