View Full Version : What is the platform you use to develop ??
burnix
4th November 2007, 22:56
Hello. I want to start develop some such about video, but i dont know what language to use. A lots of people use VC, but a friend tell me that delphi was more efficient (he had work on vc++ for 7 years and then jump to delphi). My goals was to make very efficient app to video (not 100 % cpu). In my young year i have made some assembly, but i think it's to hard to see some results quick.
I thank you for all.
Guest
5th November 2007, 02:01
Moving to development, as this is not Avisynth specific.
You are in danger of starting a "religious" discussion about coding tools. There is no sense in which Delphi is "more efficient" for video processing. Ask your friend to back up that claim with real data.
burnix
5th November 2007, 09:07
I thank you for the reply. I dont have too much time to spend to code so i just want to know on what language i can start, on what language i can put all my ressource. .net language are are simply to use but there are platform dependant (except c# whit mono). I think c or c++ are good (i learn linux at the same time), but i just want to know hte opinion of doom9 developpers. My inscription was pretty new, but i follow the forum since 2000 or 2001, and i know the competence of all of it's member.
A big thank you to you and all the other.
P.S: sorry formy english.
Maccara
5th November 2007, 09:10
My (usual) advice is: go with what you feel comfortable with (developing in) to get prototype results fast (keeping in mind possible interfacing limitations).
If you need to make it really efficient, you probably have to code the critical parts in asm anyway.
Edit: But first of all you need to have a clear set of goals / restrictions in mind (doesn't seem like you have a clear perspective what you're trying to accomplish?). After that you can start limiting your language options (does it need to be multiplatform etc). If you just "want to mess around and learn" (the impression I got from your first post), my usual advice stands. Clear goals/restrictions beforehand is even more important if you "don't have too much time to spend to code".
burnix
5th November 2007, 09:53
Thanks Maccara. Yes my goals are to develop to windows and linux. So (you think) i dont have the choice = c or c++. But there is pascal (lazarus), java and c# are portable to linux. I hesitate between between these language :
- c or c++ (i hate pointer)
- free pascal (i like this language, but is there a big community that develop in that language ???)
- C# the language of the moment, but what is his performance in term of image processing.
There are my question.
Dark Shikari
5th November 2007, 10:06
- C# the language of the moment, but what is his performance in term of image processing.C# is not the "language of the moment"; statistics show that it is vastly overhyped and is used an order of magnitude less than Java. IMO there is never any reason to use C# over Java; if you want a VM'd OO language, use the best one, not a cheap ripoff, IMO. Most importantly, C#'s portability is iffy at best, so it isn't really a cross-platform solution.
On the other hand, for image processing, C/C++ is your only real choice, especially if you want to assembly-optimize core processing functions as is done in most encoders.
imcold
6th November 2007, 00:12
What kind of project will this be?
Well, I agree with Maccara: you should use the language you're most familiar and experienced with, unless you want to try something new.
FreePascal is doing well and has a nice community. Code speed is fine, in fact quite recently released 2.2 got much faster at -O3 (for some code at least). Compilation speed is great. GCC 4 does autovectorization iirc, FPC does not: doesn't matter when you going to use your own (or borrowed from other project, for that matter) assembly optimized code. FPC doesn't support aligned attribute on vars/structs like GCC (funny that I asked about this earlier today) - this is used in x264 for example, but can be worked around.
I can't think of any more serious defficiency - maybe lack of (serious) preprocessor, it would be quite handy sometimes.
And if you hate pointers... you should consider hate them a bit less, they're really useful. I use pascal in my codec and use them really often.
Dark Shikari: If you have the speed-critical functions in assembly, any language/compiler/linker, that's capable of gluing them together will be fine (unless it's purposely created to generate bloat around them) imho.
JohnnyMalaria
6th November 2007, 00:24
I use Microsoft Visual Studio .NET 2005, primarily VC++ and handcoded assembler. A bit of VB .NET and - ahem - Excel VBA (there is a reason, honest). Running on the 32-bit Vista platform (for my sadistic reasons).
Maccara
6th November 2007, 05:45
Dark Shikari: If you have the speed-critical functions in assembly, any language/compiler/linker, that's capable of gluing them together will be fine (unless it's purposely created to generate bloat around them) imho.
My point exactly. Want something funky? Try VB6 with inline asm. :D (sorry for anyone, who really likes it still ;))
As for the development platforms, I've grown to like Visual Studio myself for my own stuff. Otherwise, I'm restricted to using shells, and emacs is handy there (and something I'm used to).
Maccara
6th November 2007, 05:49
Excel VBA (there is a reason, honest).
I do sometimes too. It's nice to have all the excel functions available (no point in implementing your own algorithms if you for example just need to hack some proof-of-concept up fast)
Dark Shikari
6th November 2007, 06:41
Dark Shikari: If you have the speed-critical functions in assembly, any language/compiler/linker, that's capable of gluing them together will be fine (unless it's purposely created to generate bloat around them) imho.Well, you're pretty much restricted to non-interpreted languages unless you want to shoot yourself in the foot.
DoC hEx
6th November 2007, 07:55
My point exactly. Want something funky? Try VB6 with inline asm. :D (sorry for anyone, who really likes it still ;))
Why you picking on VB6! :angry: It still rocks, it might be as old as my granddad but it's never let me down. Even if you have to do some real optimization just create a C/ASM DLL and then make calls from VB. I've done this a number of times to simplify development of complex projects. That said it is time I learned VB.NET and C# only because my parents sold my soul to Microsoft.
Maccara
6th November 2007, 08:39
Why you picking on VB6! :angry: It still rocks, it might be as old as my granddad but it's never let me down.
Heh, I just realized my apology can be interpreted to mean I'm sorry for anyone still using/liking it (as I wrote :)). What I meant was to be an advance apology for anyone who still is using/liking it for picking on the language. Shows my native language is not English... ;)
(it is just my personal opinion formed mostly on the fact that for the past few years I've been subjected to some pretty "interesting" legacy VB6 code which needs to be brought up-to-date - fact being that whoever wrote the code probably shouldn't have been writing any code in the first place, whatever the language; it was that bad)
imcold
6th November 2007, 09:10
Well, you're pretty much restricted to non-interpreted languages unless you want to shoot yourself in the foot.
I have no clue, how interpreted languages bind with external object files... but yes, I would avoid them for speed/memory reasons too.
burnix
7th November 2007, 08:22
Thanks to all of you for these response. I think i'm going to do c++ and make pointer my new friends. The reason are :
- your post
- i learn linux (debian) at the same time
- i want to work on a free dvb-t app i have found
imcold : good page and good project ;-)
Thanks for all and "i be back" surely with question on c++.
Hard Core Rikki
7th November 2007, 09:29
I gave up java since a while now. I used to be a mere VB peon, but lately, I'm more into C#. Nifty for GUIs, too bad for penguin lovers, but they wouldn't miss my stuff anyway ;)
imcold
7th November 2007, 16:39
hey burnix, thanks and good luck!
Sirber
7th November 2007, 19:09
Compiled code with FreePascal doesn't work under Vista and UAC... the thing that popups.
http://www.detritus.qc.ca/forum/viewtopic.php?t=65
Ajax_Undone
8th November 2007, 23:11
I would have to say IC# is my primary and Visual Basic .Net Express and Visual C# .Net Express are secondary
KoD
9th November 2007, 08:42
java and C# (as well as the other .NET languages) are used primarly for business applications, the kind that do database processing, data entry, enterprise management, etc. Needless to say, the demand is huge for programmers that know them as there are more ERPs/CRMs, and other applications that require user interaction in easy to edit (for the programmer) forms and database processing out there than one might imagine.
Java is also used nowadays on mobile platforms (phones), but things look more like they will switch from this. The trend nowadays is to have some sort of linux os on devices.
For code that requires to be fast and/or small, that doesn't require a supporting framework that's bigger than the code itself, when working with hardware, with Unices or all the new devices that have some sort of linux os on them, C and C++ sprinkled with ASM are the ones used.
vBulletin® v3.8.11, Copyright ©2000-2026, vBulletin Solutions Inc.