View Full Version : Did I pick the wrong codec?
miahallen
8th August 2007, 08:29
I decided to creat my digital library back in 2005, and have been slowly expanding it since then, for me it seems like I've invested a lot of time, and I'd hate to start over, but here is what I'm faced with.
I started by reading, and reading, and reading, and then decided that based on the opinions of the editors here at Doom9, I'd use the XviD codec, with ogg audio wrapped in the .ogm container. I was in Iraq at the time, and I didn't have the need or the time to enjoy the collection, I simply wanted to get the hard part out of the way so when I returned home, I'd be able to put all the movies on my main PC and enjoy.
After the deployment, I returned and have battled ever since attempting to get my audio to play in 5.1. So, I ditched the ogg/ogm combo and decided to stick with the original ac3 audio, and wrap them in the ever popluar avi container for better MCE compatability. I've been pretty happy with that decision (I'm still having trouble getting subtitles to work properly in MCE, but that's another story altogether). I have also encoded all my movies upscaled to 960x540 (at about 2.5Mb/s) for better scaling, and hopefully to preserve as much quality as possible.
So now my collection is at about 200 tiltes (some of you are probably laughing at it's punyness, but I'm proud). I store them on my workstation in the office and stream them (100Mb/s LAN) to the HTPC for 1080i upscaling to my HDTV in the livingroom. I'm using Vista w/ MCE on the HTPC with the "My Movies" plugin - it's fantastic!!!
The dilema is this, the HTPC is an XP 2500+ (Barton) with 2GB of RAM and barely keeps up with what I throw at it now. I do not want to invest in a whole new machine if I can help it. But as the proliferation of HDTV content takes place, I'm finding the machine chokes. 720p is mostly smooth, but I cannot play 1080i or 1080p very well at all.
As I begin to add HDTV content to my collection, which codec should I use? I think to solve my HW problem I should be able to get a newer ATI 2400 Pro or similar to offload the CPU a bit. But everything I read about video acceleration talks about the HD-DVD & Blue Ray decoding (VC1 & H.264). Will these cards also offload XviD decoding. Or do I need to switch to another codec?
I also heard something about nVidia's drivers not supporting Pure Video decoding when paired with older processor like mine, can anyone confirm this?
Anyhow, sorry to give you my whole life story, thanks for your help.
burfadel
8th August 2007, 08:45
What you need to do is update all the drivers on that computer to the latest, download the amd cpu driver (it can affect things ever so slightly, due to the athlon's power features), set the bios up, maybe a 10 percent overclock (very small, but will avoid heating problems, etc), and use say, the latest ffdshow always (latest one is rev 1407), but yeah, download from ffdshow.info the latest version. Every two weeks or so is a good bet. If you use mplayerc, you can use inbuilt pixel shaders when you set it up for sharpening, and if you set the output as evr is seemed to be a little processor more friendly. Don't use post processing fi you can avoid it, it will degrade the performance and if the quality of the original was very high it should be needed... ffdshow is faster than the xvid decoder btw :)
But yeah, the video, sound, and chipset drivers to the latest is important :) I mean, the latest beta (163.16) because they're compatible with older graphics cards and it runs a whole lot better!
GrofLuigi
8th August 2007, 19:59
download the amd cpu driver (it can affect things ever so slightly, due to the athlon's power features)
Does such a driver for Barton exist? I have one too that could use it. Last time I checked (a long ago) I couldn't find one.
Sorry for OT
GL
Digga
9th August 2007, 01:12
Does such a driver for Barton exist? I have one too that could use it. Last time I checked (a long ago) I couldn't find one. nope, burfadel made a small mistake. an Athlon XP doesn't need any further CPU drivers, only AMD CPUs with CNQ can use the CPU drivers (e.g. Athlon 64).
Mutant_Fruit
9th August 2007, 03:55
Best bet is to get something faster than an XP 2500+, which is ancient by any stretch of the imagination.
A Core2Duo would probably be out of your pricerange if you're going ultra-budget, but you should be able to pick up a reasonable AMD X2 processor for fairly cheap (less than $100) which will vastly outperform the chip you have there.
Nematocyst
9th August 2007, 05:46
Best bet is to get something faster than an XP 2500+, which is ancient by any stretch of the imagination.
A Core2Duo would probably be out of your pricerange if you're going ultra-budget, but you should be able to pick up a reasonable AMD X2 processor for fairly cheap (less than $100) which will vastly outperform the chip you have there.
It's going to be more expensive than that because you'll need a new motherboard-- there are no socket A X2 chips. The cheapest solution is to go socket 939 with an AGP slot because then the only new components will be motherboard and cpu. Unfortunately, socket 939 is becoming scarce quickly.
If you end up going socket AM2, you'll need a new video card, new memory, new mobo and cpu, and maybe a new power supply. It may be possible to reuse your RAM and video card going with Intel socket 775, but I'm not sure.
miahallen
9th August 2007, 11:26
So, I take it from the lack of any response to my video card question that the answer is no? Just to re-cap, I'm wondering if the new video cards (2400 Pro) that will offload nearly 100% of the workload with the VC1 & H.264 codecs.....will they also accelerate other mpeg4 codecs (specifically XviD)? If so, there would be no need for me to upgrade the CPU, because the GPU would handle the extra workload. The video cards run about $70, there's no way I could get a powerful enough upgrade for anywhere near that cheap. So if this solves my problem, I don't see the point of upgrading everything else.
I do not need anymore comments concerning what system upgrades would be a good choice for me, I've been building systems for years and I'm a habitual window shopper (online). So, if I decided to upgrade the whole system, I would be able to figure that part out on my own. Thanks anyway.
foxyshadis
9th August 2007, 21:18
nope, burfadel made a small mistake. an Athlon XP doesn't need any further CPU drivers, only AMD CPUs with CNQ can use the CPU drivers (e.g. Athlon 64).
Barton XP-Ms can also use CNQ, I have one of them in my server. I prefer crystalcpuid for multiplier management though, CNQ never really worked with it.
New video cards don't work with mpeg-4 asp in any way, unfortunately, it's the stepchild of the codecs.
Newegg finally stopped selling socket A a while back, but you can get XP-Ms or Sempr0ns on ebay still. (XP-Ms are especially good - they're made for 266 but run fine at 333, with low heat because they're made for laptops, so you get 25% extra performance free. 400 fsb is easily possible with some boards, but shows up cheap ram. A 3000+ at 2.6ghz is a scary beast, compared to the 1.9 you have now.)
It's not a particularly good investment for your money long-term, but if $50 lasts you a year it's not so bad.
HeadBangeR77
9th August 2007, 21:51
Newegg finally stopped selling socket A a while back, but you can get XP-Ms or Sempr0ns on ebay still. (XP-Ms are especially good - they're made for 266 but run fine at 333, with low heat because they're made for laptops, so you get 25% extra performance free. 400 fsb is easily possible with some boards, but shows up cheap ram. A 3000+ at 2.6ghz is a scary beast, compared to the 1.9 you have now.)
It's not a particularly good investment for your money long-term, but if $50 lasts you a year it's not so bad.
I can only second that. :)
Have had like 3-4 XP with Barton core and two of their XP-M version (one of which I'm still using). Not only pure GHz power but also FSB does really make a difference here. So instead of running on FSB133 with extremely high multiplier it's better to run on FSB200 with a lower one. Mine does 11x220 with no sweat (1.55v), going higher though is already a challenge, because I'm a freak of silent systems, and not a big fan of water cooling.
Seems like a good investment for some period of time (half a year, maybe a year - the time will catch up to you then ;)).
cheers /HDBR77
PS. though the lack of multi-threading is a real pain in the ass while encoding with x264.
Mutant_Fruit
9th August 2007, 23:43
You can get an AMD X2 3600+ (2.0GHz) processor and a bog-standard motherboard for $130 delivered to your door. Add in the cost of new ram (probably the only other thing you'd have to replace) and you're talking sub $200 for a far superior system.
Thing is, even an AMD X2 3600 might struggle with full 1080P HD video.
Dark Shikari
9th August 2007, 23:54
You can get an AMD X2 3600+ (2.0GHz) processor and a bog-standard motherboard for $130 delivered to your door. Add in the cost of new ram (probably the only other thing you'd have to replace) and you're talking sub $200 for a far superior system.
Thing is, even an AMD X2 3600 might struggle with full 1080P HD video.
Not with CoreAVC. And that's just 15 dollars or a trip to your local FreeCodecs website.
HeadBangeR77
10th August 2007, 00:17
It's always a matter of adding additional things and additional costs - me thinks he would need a new PSU, and a new graphic card as well, since AGP isn't supported any more. Besides, I think he knows how to build a system ;)
XviD decoding is usually a bit less demanding. There are some threads around here about what causes x264/H.264 to utilize more CPU. I can't help no further.
cheers
HDBR77
miahallen
10th August 2007, 07:24
XviD decoding is usually a bit less demanding. There are some threads around here about what causes x264/H.264 to utilize more CPU. I can't help no further.
So, as I asked in the OP, should I switch to a codec that would be able to use HW acceleration? For instance H.264...it's interesting you put H.264 & x264 together like that...will the video cards accelerate x264 as well? And if I decided to start encoding all my new 1080p stuff with H.264 where can I find the codec. I've used avidemux2 & gordian knot as my front ends, and both support x264, but H.264 is nowhere to be seen. Is is not freeware/shareware/open source?
What do you guys use for 1080p encoding? Do you just stick with whatever you've always used and upgrade your CPU accordingly? Do any of you bennefit from HW acceleration, if so...how?
BTW - please stop reccommending new upgrades for me, that was not the intention of my post. If I wanted to upgrade the system, I have an ASRock Dual939-SATA2 mobo sitting in my closet. All I'd need to get is a dual core CPU which are still availible plenty of places. The point is, I'd like to avoid that route, so I'm looking for GPU UPGRADE ALTERNATIVES! Thanks.
foxyshadis
10th August 2007, 08:55
H.264 is just the name for the standard that x264, Nero AVC, and the various broadcase products implement.
You can get GPU assisted playback to work fairly reliably with PowerDVD (Cyberlink) and Windvd (Intervideo/Corel) with both home encodes and HD discs. Not entirely, a number of people have issues on all the different OSes and cards, and PowerDVD is generally said to be more reliable. (I wouldn't know, I only have an X1300pro.)
smok3
10th August 2007, 11:05
ot: how is gordian knot supporting x264?
miahallen
10th August 2007, 23:14
ot: how is gordian knot supporting x264?
http://www.doom9.org/gknot-main6.htm
Selur
13th August 2007, 07:38
if it has to be Gordian Knot better use agkp (http://forum.doom9.org/showthread.php?t=117883) which uses x264.exe instead of the vfw x264 codec.
Cu Selur
Wam7
23rd August 2007, 03:15
Rather than try to get acceleration from the GPU it would be much better for you just to change the CPU (which is probably why you've got the responses you have), especially as you have an DualSata2 which can take a cheap socket 939 dual core CPU, uses DDR memory & uses AGP or PCI-Ex.
The future is H.264 so tailor your hardware for that and it is much easy to get the speed from the CPU than the GPU.
Lenny_Nero
23rd August 2007, 04:44
I would also go with the CPU change, I think it will do the most for the money, I have a HTPC/media server built around a Semptron (2600 Tbread Asus A7N8X 2 GB RAM) I have seen many of these chips on ebay (go for full XP or mobile chip if you can) and 2nd hand for small money ~£20.
I can clock it just above 2 GHz with std Vcore and HS/f, but stick with its 1850 MHz because it will run for weeks and stays cool, its stuffed with drives and cables so does not have the best air flow :)
I dont use any (real) HD content and make bog standard XviD/mp3/avi stuff from my TV cards, but this means that its rare to see my CPU doing more than 15%. I have just given it a £20 upgrade with a Radeon 9550, IMO a great box/chip for the cost.
The encoding box in my sig was built last year for ~£600 with 95% new parts.
blizard
23rd August 2007, 05:38
Rather than try to get acceleration from the GPU it would be much better for you just to change the CPU (which is probably why you've got the responses you have), especially as you have an DualSata2 which can take a cheap socket 939 dual core CPU, uses DDR memory & uses AGP or PCI-Ex.
The future is H.264 so tailor your hardware for that and it is much easy to get the speed from the CPU than the GPU.
I agree with wam and all other in this thread that OP would be best off with any dual core based system as it would make it possible to transcode and still watch HD material at the same time. GPU can offload part of this process, but still need a fairly good CPU to do this work. Dual core CPU support some feature like SSE, MMX etc which also help in the transcoding process and an old socket A CPU do not support the latest multimedia support.
This (http://www.behardware.com/news/8117/coreavc-stronger-than-avivo-purevideo.html) article about AVIVO, PureVideo and CoreAVC can give some hint about what to to look for in the future.
It have been said that neither Xvid or x264 exist for multi core environment from my reading here. I use myself Celtic Druids build of MEncoder which do both support 64 bit and dual core (or more core then one) for encoding. There is an option on some x264 based encoders (for H.264 AVC) that can enable multiple threads (threads=auto).
Here you can read about different build of Xvid : Xvid on Quadcore (Faster than Dualcore?) (http://forum.doom9.org/showthread.php?t=128036). Xvid 1.2.0 do support multithreading and you can learn more by going to Doom9 about Xvid/ASP (http://forum.doom9.org/forumdisplay.php?f=52) or Doom9 on H.264/AVC (http://forum.doom9.org/forumdisplay.php?f=77).
I would be careful to buy CoreAVC as many have complained about lack of support and that it is not much better, then what you can find from decoders like FFDShow (by use of libavcodec) or any other open source based decoder.
You can read about CoreAVC and development here (http://forum.doom9.org/showthread.php?t=104277).
When it come down to compressed surround sound there is option like AAC 5.1 which is in development and there are even some version of MP3 that do support six channel sound (5.1). AC3 can take rather much place compared to six channel AAC, so it could be worth to dig deeper into it here (http://forum.doom9.org/forumdisplay.php?f=11).
___
Don't forget that the colour you can get out of any video card is also very important for how good the end result will look at High definition. I have an X1950XT and use it to watch standard analogue captures on my CRT, but the colour reproduction are really well done. With this video card I can use Haali renderer which make use of some more hardware power then other render will use and I have a much more vibrant and clear image (quality), then with VMR9 or overlay.
My point are that it is more into this then just how well any video card might help you in the decoding process. HDMI is a new standard that might also be of interest to connect to your HDTV as VISTA is supposed to demand this to watch HD content (DRM).
Blue_MiSfit
23rd August 2007, 09:00
I don't think AGP will cut it. I doubt it has enough bi-directional bandwidth to handle H.264 / VC1 decoding.
None of the new cards are available on AGP, so if you want hardware accelerated H.264, you need a new motherboard / cpu. If you can get a 939 board, you can re-use your memory. I don't recommend it, especially since DDR2 is stupid cheap these days.
Sorry, but you're just not going to be able to handle high bitrate 1080p on anything less than a Radeon 2400/2600 or GeForce 8500/8600 assisted system. So time for a new platform :)
~MiSfit
blizard
23rd August 2007, 15:22
To answer OP first question about "wrong codec":
It depends on your source material and what codec that will be the best choice at the time you transcode (development in decoder and encoder is an ongoing process).
Related to the first point are how you want to output your encoded material: the chain from file, decoder and renderer in software is also related to what kind of hardware you have and how good your driver for hardware will be to make use of these features.
Xvid is still very much in focus and this make it also a very good reason to use as codec as many open source project invest their time and effort to make Xvid a very fast and versatile codec based on MPEG-4 ASP. H.264/AVC is better on colour reproduction from my point of view, but with the recommended pre-set or profiles (http://forum.doom9.org/showthread.php?t=119399) set in Xvid you can get very near the same visual result and in less time to finish the same encoding process as H.264 would take.
Lastly, why should I care about XviD (ASP) presets when there are more modern (AVC) codecs?
Strange as it sounds, there are some things ASP codecs still do better than AVC codecs IMHO; at low compression they simply deliver higher fidelity with many DVD source than AVC codecs; or so my eyes tell me. Roughly I would say that AVC certainly looks better than XviD with the '>30%' presets. But still you may want to use XviD for some reason? (If there ever is an XviD binary that can produce both ASP and AVC output, the >30% preset should definitely be changed to utilize AVC). AVC can look better than XviD with the '>45' preset. Not in every case, I would say, so XviD might still be worthwhile here. But I would say that from the '>58%' preset upwards high fidelity is more easily reached with XviD. So for me personally XviD presets are valuable because I want to make 'transparent' backups (=backups that can't be told from the original). You might or might not find a reason to use these presets - if you do: have a lot of fun!
You can read more here! (http://forum.doom9.org/showthread.php?t=119399)
To sum it up:
My impression are that MPEG-4 ASP based encoders are still very good at what they do compared to H.264/AVC. There is no such ting as the "perfect" codec and the only way to find out is by reading up as much as you can here on doom9 about both type of codec and try out yourself on different source material. This is also what doom9 forum rules say about asking subjective question like this about what is the best or in your case if you picked wrong codec.
I don't think AGP will cut it. I doubt it has enough bi-directional bandwidth to handle H.264 / VC1 decoding.
None of the new cards are available on AGP, so if you want hardware accelerated H.264, you need a new motherboard / cpu. If you can get a 939 board, you can re-use your memory. I don't recommend it, especially since DDR2 is stupid cheap these days.
Sorry, but you're just not going to be able to handle high bitrate 1080p on anything less than a Radeon 2400/2600 or GeForce 8500/8600 assisted system. So time for a new platform :)
~MiSfit
Even my system that is based on dual core Athlon64 X2 4200+@stock speed, 2 GB DDR and X1950XT can have some problem to play High Definition content at full 1080 range without going up to 50 % (*) and all transcoding take time, so a faster CPU would always be better. Socket AM2 (or Intels dual core) can be found for much cheaper then skt 939 (at least where I live). With a large archive of DVD (and later HD DVD) to transcode it would make sense to save up money for a complete system or use two system: one to handle HD content and one to do transcoding and only that on 24/7.
(*) I tried to see how much power I would need to watch a trailer from Quicktime site: Enchanted (http://www.apple.com/trailers/disney/enchanted/hd/).
Problem is that it wasn't at full high definition resolution 1920 x 1080, but in 1920 x 816 pixel according to MediaInfo. This isn't meant to be in any way a scientific valid benchmark, but just to give an indication for how power demanding HD content can be. Full resolution HD content will need more power then most low level PC can provide when HD audio become standard for surround sound and HD TV or HD DVD content will be the major market. Ordinary DVD doesn't need that much power and are well supported in almost every GPU (in hardware with support of Cyberlink or PureVideo) as for MPEG2 content, which want to transcode as I understand it to a smaller size on harddisk.
General #0
Complete name : P:\enchanted-tlr1_h1080p.hdmov
Format : QuickTime
Format/Info : Quictime movie
Format/Family : MPEG-4
File size : 178 MiB
PlayTime : 2mn 30s
Bit rate : 9931 Kbps
StreamSize : 93.1 KiB
Movie name : Enchanted
Movie name/More : In theaters 2007
Encoded date : UTC 2007-08-17 20:46:37
Tagged date : UTC 2007-08-17 20:46:50
Copyright : © 2007 Walt Disney Pictures. All Rights Reserved
Comment : Encoded and delivered by apple.com/trailers/
Video #0
Codec : H.264
Codec/Info : H.264 (3GPP)
PlayTime : 2mn 30s
Bit rate : 9827 Kbps
Width : 1920 pixels
Height : 816 pixels
Aspect ratio : 2.35
Frame rate : 23.976 fps
Bits/(Pixel*Frame) : 0.257
StreamSize : 176 MiB
Encoded date : UTC 2007-07-08 03:48:10
Tagged date : UTC 2007-08-17 20:46:50
Audio #0
Codec : AAC LC
Codec/Info : AAC Low Complexity
PlayTime : 2mn 30s
Bit rate : 99 Kbps
Bit rate mode : CBR
Channel(s) : 2 channels
Sampling rate : 44 KHz
Resolution : 16 bits
StreamSize : 1.77 MiB
Encoded date : UTC 2007-07-08 03:48:12
Tagged date : UTC 2007-08-17 20:46:50
Valeron
6th September 2007, 21:10
AMD HD 2400 Pro AGP edition is available, it's a worth-considered candidate if you need AVC/VC-1 decoding.
but if u need to re-encode ur backup, u can't slip through any platform upgrade imo)^-^(, mainly focus on CPU and RAM
Brisbane core Athlon X2 3600+ or 4000+(most of both can be well overclocked under the default VCore, I OC my new 4000+ to 2.4G under-voltage@1.25v solid-stable) with 690G board is an option.
btw, u should invest less bucks on 2400 PCIE edition.
if you would like to save money for 1080p decoding on the fly with CPU, CoreAVC(a commercial soft but maybe some codec pack will surprised u.....) and MS VC-1 decoder(Cyberlink's VC-1 decoder is even faster afaik but i don't know how to link it to WVC1 stream decode in GE......) is the only option since they both can do multi-thread decoding, by far faster than libavcodec(only decode in single thread) on multicore processors.
vBulletin® v3.8.4, Copyright ©2000-2009, Jelsoft Enterprises Ltd.