# [Video Encoding] OpenCL, x64, Open Source



## newfellow (Nov 24, 2009)

Well, though why not hit subject here since it seems every video software company is so eager to get money, but none does any real work out there to actually even have an support for today's hardware with the technology on hands. Does anyone know any software which is A. x64 and B. uses OpenCL C. doesn't need an rocket scientist to be run.

*AviDemux* = x86(Although damn well multi-threaded), No OpenCL
*MediaCoder* = x64, CUDA support
*ATIXCoder*/*Badaboom* = ATI Stream drivers/CUDA Only (Neither of applications has absolute no clue what is multi-core CPU)
*TMPGEnc* = x86(Although damn well multi-threaded), No OpenCL, sad CUDA support.
*DVDx* = x86(Multithreaded?), Has also absolutely no idea on what's an GPU)
*VirtualDub*/*VirtualDub Mod* = x86(Multi-threaded)/x64 Support, No OpenCL (has absolutely no clue what's an GPU)
*Generic video softwares on web* = x86, Multi-threaded (But non has absolutely no clue what's an GPU)
*MeGUI* = made for rocket scientists only.


*So, does anyone here have any additions to this list or anything actually functional paid or Open Source software which actully works ?*

(I simply cannot believe that hundreds of thousands of software coders can't get one piece of code out)


----------



## angelkiller (Nov 24, 2009)

MeGui actually isn't that hard. Yeah, it not made for n00bs, but after watching a couple of tutorials, I can encode x264 pretty easily.

Also, doesn't multi-threaded ability depend on the codec used?

Maybe add VirtualDub to the list? I don't think it's 64 bit, and doubt it uses OpenCL and is probably made for advanced users. But after you learn the basics, it works great.


----------



## newfellow (Nov 24, 2009)

angelkiller said:


> MeGui actually isn't that hard. Yeah, it not made for n00bs, but after watching a couple of tutorials, I can encode x264 pretty easily.



yeah, it's not like impossible mission I simply don't see any reason why use something which has anything else on screen, but codec, quality + encode button.



angelkiller said:


> Also, doesn't multi-threaded ability depend on the codec used?



Yes, but we do have codecs to x64 enviroment, if there would be anything missing OpenCL is basically an C code including such won't be too hard and as far I read on OpenCL specifications it could alone actually utilize CPU + Any GPU(s)/(processing unit(s)) in box. So, even basically multi-threading an x86 to CPU streams + extra processing through GPU(s) streams should do the trick. This however would require through supported GPU driver (which NVIDIA/ATI both has).



angelkiller said:


> Maybe add VirtualDub to the list? I don't think it's 64 bit, and doubt it uses OpenCL and is probably made for advanced users. But after you learn the basics, it works great.



VirtualDub in the list yeah that's a nice one and I think there actually is x64 or at least multi-threaded edition called 'VirtualDub Mod' or something. However, not exactly close to what we're missing. 
*Edit*: Checked on docs yeah has x86/x64 editions neither has a clue what's GPU. Added on list.


----------



## W1zzard (Nov 24, 2009)

i think you are listing the frontend applications vs. the codec libraries used?


----------



## angelkiller (Nov 24, 2009)

W1zzard said:


> i think you are listing the frontend applications vs. the codec libraries used?


That's what I was getting at in my post above. 



newfellow said:


> yeah, it's not like impossible mission I simply don't see any reason why use something which has anything else on screen, but codec, quality + encode button.


Well, I think that that would be overly simplifing things. For the average user, the bitrate and codec is all that really matters. In fact, that's what 98% of people need. But codecs are more complex than that and support lots of really advanced features and such. I think advanced programs should support all the options that the codec has. I think the bottom line is how complex you want your encoding program to be. Sounds like you prefer something on the simple side.




newfellow said:


> Yes, but we do have codecs to x64 enviroment, if there would be anything missing OpenCL is basically an C code including such won't be too hard and as far I read on OpenCL specifications it could alone actually utilize CPU + Any GPU(s)/(processing unit(s)) in box. So, even basically multi-threading an x86 to CPU streams + extra processing through GPU(s) streams should do the trick. This however would require through supported GPU driver (which NVIDIA/ATI both has).


Was that Chinese?  (over my head)


----------



## EastCoasthandle (Nov 24, 2009)

There was a Chinese version that claimed to do what you want but the problem is that there was no English version at the time I looked at it.


----------



## newfellow (Nov 24, 2009)

yeah, well only gods know about the command line toys or well maybe I'm just too dump on them. Kinda softwares like 'Handbreak' is exactly what people would need. Hell, it'll dump 12 cores full but damn if there would just be some sort of GPU encoding support.

Don't see codecs as an problem, if ATIXCoder can use 50-65% of GPU can't see why anything else out there couldn't do the same although it's going through closed ATI source. So, that's a bit sad.


----------

