Encoding to .mp4 container with h.264 | how to speed encoding most

wuxiixuw

Honorable
Aug 23, 2012
7
0
10,510
I've found this website from a review of CPUs performances regarding video encoding.

We are a small scale media or video production company that do video encoding a lot, and business start to expand and we are looking for upgrading our hardware to reduce consumed time by encoding.

We are encoding a lot of videos on a daily base.

The source files are .TS and .MPEG-2.

Most of our clients now require encoding to .mp4 containers using .h264 and move atom to the beginning of the file to make it start playing or streamed as fast as possible instead of load the whole file first.

I've goggled and found some specific forum in video encoding like videohelp dot com and doom9 dot org and they helped me a lot to learn more about video encoding, and been advised to come here to ask about the hardware upgrading or recommendations.

After trying many encoders or converter clients we found that almost VidCoder or Handbrake is the best option compared to other ones like WinAVI or a like.

While VidCoder do amazing result for the quality and small file size but our only option with it is the consumed time for encoding.

If a file .TS or .MPEG-2 with an hour length, and encoded to .mp4 using h.264 it is being encoded in about 7 or 8 minutes, this is when we make the vidcoder process with real time high priority and make sure that is using 8 cores.

The current hardware is Intel core i7 2600k sandy bridge, with 16 GB Ram ddr3, and NVIDIA GeForce GTX 550 2 GB.

So what kind of upgrade we may do to reduce the encoding time as low as possible?

Also does using Core i7 is like using the Xeon or there are a much differences?

Also does using a single processor motherboard is the same as using dual socket processor like xeon?

Thanks a lot for reading my question and hope to know what we should do to get a solution.

Regards,
WI
 

womble

Distinguished
Mar 10, 2006
365
0
18,810
You don't mention it so I don't know if you have been exploring the Intel Quick sync engine built into your cpu. If you haven't it might be worth a look at least, not sure what the quality is like as my motherboard doesn't support it (no video out on my board). From what I've heard though the quality is supposed to be pretty good.
 

InvalidError

Titan
Moderator

From what I read, there is a substantial quality improvement between SB and IB QuickSync on top of IB being about twice as fast. So someone planning to use QuickSync to quickly regularly transcode large amounts of high-quality video should use IB.
 

Id like to substantiate that if possible. Any references?
 

wuxiixuw

Honorable
Aug 23, 2012
7
0
10,510
Thanks for your help.

Please it seems that I reported a wrong information regarding CPU usage.

Please I've recorded a video for the whole process and what system monitoring says as well in the attached video.



http://www.youtube.com/watch?v=dmXu06nC2Jw&hd=1

Choose HD quality.

I think that HDD maybe the reason for this slow performance if I am not mistaken.

So please tell me your opinion regarding this issue and shall I go for the SSD option 1st before go to xeon.

So what kind of a Motherboard I should stick to in case I will buy a SSD drive and does the brand vary or all are the same?

I will buy the biggest size of course which is 256 GB as far as I know.

Thanks a lot and too much appreciated
 
The HDD is not holding back your performance. The hard drive is just writing to the hard as quickly as the CPU can encode the video to be written to the HDD. At the very beginning of your video you will notice that the Resource Monitor shows initially a very fast rate at which data is being written to the HDD. I do not know what video you are encoding, but typically when a video / movie starts off whatever scene it starts off with it is usually pretty static compared to what take place later on in the video.

Let's take a very popular movie that most people show be aware of; Star Wars - A New Hope. The movie starts of with the title and story crawl. There is not much as going on since there is only text scrolling on the screen. At this point there is actually not much for the CPU to encode so the encoding process it pretty quick at this point in time and data can be written very quickly to the HDD. Soon however, the scene changes as it panes to the planet with the Corellian Blockade Runner fleeing from the Star Destroyer, then finally the brief firefight once the Blockade Runner has been captured. At this point there is a lot of action going on and the CPU now needs to put in some effort into encoding the scene, this means slower processing, thus a slower rate of writing data to the HDD.

----------------------------------------------------------------
Note - It is actually "illegal" not to have opening credits at the beginning of the movie. George Lucas was fined $250,000 and dropped his membership from the Directors Guild. This basically meant he was forbidden to film any movies in the United States from that point.
----------------------------------------------------------------

To get back to the original topic, the fact only a little more than 2 cores (33% Total CPU Usage) are utilized to encode video is the reason why encoding video is so slow.
 

wuxiixuw

Honorable
Aug 23, 2012
7
0
10,510

Yes, Exactly.
Please how could I make it use all available cores powers of the CPU?
 

I think it varies from software to software.

I use convertxtodvd for encoding alot, and the number of cores it uses is user selectable. So I have it use all four cores.
 

wuxiixuw

Honorable
Aug 23, 2012
7
0
10,510

The vidcoder does use all existing cores as shown in the video:
http://www.youtube.com/watch?v=dmXu06nC2Jw&hd=1&t=1m33s

or I understand it the wrong way.

But I've realized that VidCoder uses many cores as shown in the begenning of the video.
 

wuxiixuw

Honorable
Aug 23, 2012
7
0
10,510
You mean the Handbrake GUI client only or you install something beside it?
Is it faster then core i7 2600k sandy bridge?
I've realized that all 4 cores of the CPU being used with all 8 threads as well, but the question still rising why the CPU usage is not more then 25% ?
 


That's what I've read too, on Anandtech's review of Ivy Bridge. http://www.anandtech.com/show/5771/the-intel-ivy-bridge-core-i7-3770k-review/21. Intel exposed the internal settings for QS2 (Ivy Bridge version) to external software, to enable user-selectable quality settings, whereas SB's original QuickSync did not.

45954.png


 

wuxiixuw

Honorable
Aug 23, 2012
7
0
10,510

when i open the task manager i can see all cores being used but all being used by 25% and not maximum.
 

createmedia

Honorable
Oct 17, 2012
1
0
10,510
I edit with and sell turnkey systems with Grass Valley Edius software. On a Gigabyte GA-Z77 D3H MB with i7 3770K I can use the hardware encoder within Edius. So no need to export and encode afterwards.

It is an available tick box option in the exporter to use the hardware. The Logix Lucid Vertu has to be loaded from the motherboard driver disk, and an extended desktop monitor HAS to be plugged in to the motherboard GPU for it all to work. Up to 10 times the speed over software encoding can be obtained by this method.

Note this ONLY works with H264 encoding for example to YouTube and BluRay.

Xeons have a hardware link included to go multi CPU, the iX series do not and only work in single CPU situations.

Mike Sanders
Create Media Partners Ltd