Thanks for the links and suggestions. Crimson is a great editor. DotGNU's website was especially enlightening. The last time I followed up on.NET, even Gates himself was unsure what what it was about.
Take a look at the intent of each of the popular formats available today and then consider what will be expected of your visitors in terms of installed software.
MPEG1 is a universal tried and true standard, but you can do better when it comes to streaming. MPEG2 was not designed for low-bandwidth transmission. I'm assuming you would like to maximize quality as well as support dial-up visitors.
MPEG4 is designed and intended for transmission on low-bandwidth devices, and would be equally suited to streaming over the Internet. I would say that this is the preferred format for streaming video. Now you need to choose an implementation of MPEG4.
WMV9 is easily the lowest common denominator if you figure that most visitors are on Windows, but obviously that would lock out a
lot of other people, which you don't want to do. On the upside, developing WMV9 video is cheap, easy, and fast. The tools are all free. The Windows Media Video 9 Series Encoder can accomplish a lot in a single pass than. It can be a pain to work with in Virtual Dub though, so for batch encoding I'd recommend some of River Past's video tools as helpers. Real Media is good, but some people may have objections to using the RealPlayer software due to some of its features (popups, cookies, etc. etc.). Not every computer I come across has it installed. Unfortunately, I often have.RM files that aren't video files at all, but pointers to videos online that have long since been removed. Admittedly, I never learned to make the most of Real Media, but I believe You can also do better than this. QuickTime, except QT is very solid with great quality even at lower bitrates. However, I have always found the QuickTime implementation on Windows to be piss-poor as compared to how it is on the Mac. Maybe others would agree. Still, I wouldn't write off QT totally. I've never seen many questions concerning optimizing Real Media or WMV-9, or QT for that matter, so I can't comment about your support options with these codecs.
Xvid offers great video quality at low bitrates. It is open-source, you can count on it being around a long time, but it's not as well known outside the OSS and videophile communities. You'll want to provide a link to a binary install of the codec to make things easier on your visitors. DivX also offers great video quality at low bitrates. DivX is cross-platform with a codec available for Mac, Linux, and Windows. It appears that Xvid has beaten DivX on live action videos (films, television, etc). I believe DivX is better on animation though. The player is a small download. The software is pretty reliable. There are a growing number of certified DivX playback devices, so if you support DivX, you might be offering your visitors some added value in giving them a video format they can take with them.
On the downside, Xvid and DivX both require more time and attention to the transcoding process than does WMV9. You could easily do a single pass transcode with either, and the results will be okay, but DivX really doesn't hit its sweet spot (min. size and max. quality) unless you do a triple-pass. I don't know if Xvid does any better after a second pass. The DivX encoder will cost a small fee, but then you are free to use it all you want. You also get more tweaking with Xvid and DivX than with WMV-9 and (in my opinion) QT, but that means you may spend more time per video than you want in order to perfect things. On the upside, I believe DivX offers a tool for helping you to churn out fast high-quality videos, and both the Xvid and DivX communities are filled with people who are more than willing to offer tips and suggestions. 3ivx is the lesser known MPEG4 codec. It is a great suite that includes MPEG4 tools as well as an AAC encoder. For a more thorough comparison of these last three codecs, see the Doom9 website:
Sorry if I sound a little annoyed. Power to you if you're editing movies on a Mac--they're great machines and lots of folks in the industry swear by them. But I'm sick to death of people saying, "Nope! Get a Mac!" It just ain't so.
Wanna start a "Get an Amiga" thread just to piss them off!?! Cinelerra and Blender I understand to be pretty cool. I can't wait to find out as I migrate my video editing work over. Video capture though is a whole other story. It's a little harder to recommend capture equipment for Linux when the best products are on Windows, and that's no FUD!
That's what pisses me off more. UNIX has some great audio and video processing tools. Linux has a couple of great filesystems perfect for video work. The entire platform screams for videographers to migrate, and I can't be the only geek here who was a member of the AV Club, but the fact that DirectShow and WDM make it so easy to develop video apps and hardware for Windows is just too seductive!
I use an HP zd7010 series notebook for my video editing. It has a nice widescreen, and the drive has handled video capturing very well for what must be a few thousand hours of straight capturing I've done so far.
the problem with these stock computers is that the components are pretty underpowered. This is as true of the so-called gaming system desktop makers like Dell churn out. You probably don't want to capture raw AVI on your laptop (space issues notwithstanding), but a hardware-based tuner will certainly ease the strain a lot. My personal USB based preference is Pinnacle System's PCTV USB2. It is the only one I've seen with quality DV capture, optional MPEG 1 & 2 capture (no cap on MPEG1 resolution), and quality audio. Unfortunately, the audio downmixes stereo to mono, but it still sounds great.
If you go with a laptop, you need to be aware that most USB tuners pass audio through a separate stereo jack requiring a soundcard line-in. It's a bit idiot considering the primarily market for USB tuners, but there are few (Pinnacle and Hauppauge included that send audio over USB).
I tried capturing from USB2 tuners to USB2 hard drives. I wasn't dissatisfied. Providing you minimize all disk reads and writes on your main drive, you'll be okay. Be aware of antivirus software, and the usual apps that like to make sudden drastic reads.
If I'm editing straight video (next to no graphics/animation, etc), is there a point at which extra RAM adds little value?
RAM isn't really the issue in video capturing. Video capturing is a function of encoder speed, available bandwidth, and hard drive speed. Of course memory and CPU have an effect as well. You'll definitely want to have the appropriate amount of memory and CPU for your system, but you will want to have your system tuned for video capturing. That gets back to the first three options. Certain codecs are pretty heavyweight (DivX comes to mind), so they aren't the best for on-the-fly capturing. If you have 128MB available, I'd go with HuffYUV or a MJPEG codec if you can't do MPEG1 above 320x240. I'd stay away from WMV, MPEG2, or MPEG-4 unless you can do it in your capture hardware. For video editing, you'll need a lot of memory to smoothly shuttle through uncompressed AVI or HuffYUV encoded video. A lot of it though will depend on how well your video editing software is designed. I use Womble MPEG-VCR for cutting MPEG2s when I don't plan to convert the format. I use Virtual Dub for linear editing and Premiere Pro for nonlinear editing. Virtual Dub is sleek and fast. You can do a lot with a little, and it's got a plugin filter system, making it infinitely extendable (like Photoshop or GIMP). Premiere is still a beast. I don't know about Cinelerra. I'm still in the process of turning my laptop video toaster into a Linux box. I will be keeping updates on my success though in my journal.
Christ, I hate Pinnacle Studio. Studio 9 is supposed to be vastly improved over Studio 7 and 8, both of which were very bad at needlessly re-rending scenes. Unfortunately for Pinnacle, it's too late. Most people who own Studio 9, got it because it came packaged with Pinnacle hardware. Those of us who used to use Pinnacle software know to stay far far away.
I believe this original poster will need support for analog sources as well. FireWire based capture devices obviously prefer clean digital sources, and many vendors design the products with that intent in mind. This can have disasterous effects for those converting say, VHS to DVD. Example, Pinnacle's first MovieBox DV routinely crashed when working with VHS sources. I'm sure subsequent versions have been improved in design, but I have stayed with my MovieBox USB:)
Is Linux up to the task? It depends on how much video work you do. I do video processing work nearly everyday. Regarding Macs, they are great, but there isn't as broad a range of tuners and capture cards available for the Mac as there are for Windows. For the Mac I recommend the Elgato products, namely the upcoming EyeTV Wonder (done in partnership with ATI). Generally speaking, you will pay a premium for going with Mac video equipment. Of course you will also minimize many of the problems videographers face providing you are working with clean video. Despite how many people feel about Windows, Windows makes a great video processing platform. Some of the best video processing software out there such as AviSynth, DScaler, VirtualDub, and VirtualDub MPEG exists as open-source Windows apps. TMPGEnc and Womble are world-class applications for working with MPEG. MPEG2 can be a real expensive pain to edit properly. Linux really adds to the power of PC-based video work.
Moving on, video capturing on Linux itself isn't very mature. There are a lot of older Brooktree BT8x8 chipset based tuners supported, but most of the newer (and better quality tuners) chipsets, namely the Philips SAA* based tuners are supported only under Windows using WDM drivers. Linux support is growing though. There are a couple of projects in Linux to bring video capturing over (thank God), but the greatest successes to date have been in getting digital tuners to work.
In any case, don't just accept any product recommendation. As someone who has a garage full of video equipment, I suggest you consider your needs and interests before settling on any specific product. There is a list of things I always ask people to consider:
What broadcast standards will you be working with, PAL, SECAM, NTSC? Will you be capturing TV feeds using your computer? Do you need to be able to schedule recordings using your computer as a PVR? Will you be mastering DVDs for commercial use? Do you have the time (and the desire) to post-edit your capture files before converting them, or would you rather get it all done in one shot? Do you prefer hardware-based MPEG encoding, or do you have a need to capture at full resolution uncompressed AVI format (AVI is not really a format)? Will you need to be mobile with your gear?
There are some caveats you will need to consider. There are many video capture devices out there that are designed specifically for video conversion. They lack tuners so you cannot use these devices to turn your TV into an effective timeshifting PVR. USB tuners are very attractive, but if you buy one, you will generally be limited to using the vendor-supplied capture software. DV capture devices using FireWire are few and far between in the Windows world, and those that exist, such as Pinnacle's MovieBox DV sometimes have problems with analog sources, making them ill-suited to all-around capturing. Hardware MPEG encoders free up your CPU cycles and memory by doing much of the work for you. Capturing raw AVI can really strain your system, but MPEG2 is a poor editing format that often requires you to purchase pricey MPEG tools. Also, the MPEG2 encoders in most consumer grade capture devices are not the same quality of those used in mastering commercially sold DVD, so it's best to get an MPEG2 encoder that can handle at least 12 Mbps bitrates.
In your case, I'd recommend a PCI based tuner, preferably with a Philips chipset, but a newer Brooktree-based tuner will give you a stronger guarantee of cross-platform support. I'd recommend using a tuner that doesn't use hardware MPEG encoding since you'll likely be editing your captures anyway whether it is to remove commercials or to add special effects or titles. You'll probably want to stay away from USB-based tuners for the time being until we see more support in Linux for Philips-based products. Depending on your location, you'll want a tuner that can capture at full frame, 720x420 NTSC or 720x576 PAL/SECAM.
For software, Cinelerra is the best editing suite out there. I haven't used Final Cut Pro, but Cinelerra is much more useful than iMovie. I haven't used Premiere is years, and Cinelerra is on par with what I remember of Premiere. Cinelerra should be able to do everything that you need.
If you haven't used Final Cut Pro or touched Premiere in years, how can you say that Cinelerra is the best editing suite out there? If you want to get into the category of "best" or "arguably best" test out a Pinnacle or Avid editing system.
I think so too. There would have to been some value in using a legacy application on Linux and WINE that one couldn't get in running the app under Windows natively or through the use of MS Virtual PC or VMWare.
It's simple. A lot of specialty software is very boring, and there just isn't any interest in the OSS community in developing similar software.
Very true. I would also add that there might also be a lack of programming skills in the OSS community when it comes to certain types of software.
I do a lot of video processing, I have some good hardware, but none of it works under Linux, and downgrading to older lesser hardware would be foolish. Within the Linux OSS community there are only a couple of projects relating to video capturing - none dealing with my type of hardware much less my particular gear. Thus, I am SOL. Most video equipment vendors will not release specs or source code to help create a market for themselves through Linux, nor will they develop closed-source drivers for Linux (likely because they lack the skills). I can't contribute anything either because my skills like those of most Windows OSS-based video projects is based on DirectShow and WDM. Thus the knowledge I have is not transferrable to Linux development. This means that many people cannot use Linux for an activity for which Linux is especially suited even if they want to use it.
Maybe, years from now, when they're running -ALL- of their software under WINE, they might realize that there's a better way.
What would be the better way in that case, to look for Linux software alternatives that may not exist or go back to Windows? I'm betting on the latter. I stopped actively working with Linux two years ago (I'm back now). I found it much easier to switch to Windows from Linux than to go the other way. Finding a native port or Cygwin translation of a UNIX app is so very easy.
I can't speak for all of Microsoft's dev tools as I have only worked with Microsoft BASIC, Visual Basic, and Visual C++. I'm holding off on C# because it's too specific to Windows for my tastes. Although it's my primary programming platform, I'd like to know that any knowledge I gain in a language will still hold on another platform.
The latest compiler is pretty standards compliant from what I've experienced (Microsoft claims roughly 98% conformance). It produces some very clean and tight code, fast too. The optimizations are nice, especially for MMX, SSE, and SSE2. I don't know if automatic vectorization is supported as it is in ICC. I can't compare the new toolkit to the latest ICC either. I have heard that the Microsoft compiler doesn't generate warnings or errors for certain bad programming practices like GCC would: ie, "if (x = 5)..." - but I never bothered to check it out.
Of course, anyone could saw the same and more about Metroworks, GNU, Borland, Intel, and any other compiler with the possible exception of Watcom. When people talk about VC++ or.NET's greatness, they're often speaking more about the the whole suite - IDE included.
When doing ATL, COM, and DirectX programming, I've heard (and have found) that Microsoft's tools work better. Things don't break as easily. However, I don't think it's Microsoft intentionally screwing with other compilers. I think we're looking again at the quality of the IDE. It's easy to manage your libaries from within Visual Studio. The various helper tools make it easier for you to concentrate on your code. You don't have to poke around as much looking for the right library... in theory. The concensus is that if you are doing Windows platform-specific code work, you're better off using Microsoft's compiler, especially when dealing with the more esoteric aspects of DirectX like DirectShow. How much of this is FUD is unknown to me. Unfortunately, I do worry that VS makes lazy programmers because it can be easy.
OffTopic: I've been using the free compiler since its release, and I absolutely love it. Most of the complaints are unfounded because people are used to having everything put in front of them. No one bothers to look around or put any effort into building a complete development suite around the new compiler. It is now possible to do full-fledged development using only free tools. Compiler + MS's debug tools + platform SDK +.NET framework + NASM gives you everything short of the VS IDE. My preference is TextPad until someone can convince me of something better. I have found that being free of the IDE has forced me to write better code because I spend more time manually looking up libraries and tweaking compile options, which in turn forces me to rethink my design choices.
Thanks for the links and suggestions. Crimson is a great editor. DotGNU's website was especially enlightening. The last time I followed up on .NET, even Gates himself was unsure what what it was about.
Take a look at the intent of each of the popular formats available today and then consider what will be expected of your visitors in terms of installed software.
.RM files that aren't video files at all, but pointers to videos online that have long since been removed. Admittedly, I never learned to make the most of Real Media, but I believe You can also do better than this. QuickTime, except QT is very solid with great quality even at lower bitrates. However, I have always found the QuickTime implementation on Windows to be piss-poor as compared to how it is on the Mac. Maybe others would agree. Still, I wouldn't write off QT totally. I've never seen many questions concerning optimizing Real Media or WMV-9, or QT for that matter, so I can't comment about your support options with these codecs.
MPEG1 is a universal tried and true standard, but you can do better when it comes to streaming. MPEG2 was not designed for low-bandwidth transmission. I'm assuming you would like to maximize quality as well as support dial-up visitors.
MPEG4 is designed and intended for transmission on low-bandwidth devices, and would be equally suited to streaming over the Internet. I would say that this is the preferred format for streaming video. Now you need to choose an implementation of MPEG4.
WMV9 is easily the lowest common denominator if you figure that most visitors are on Windows, but obviously that would lock out a lot of other people, which you don't want to do. On the upside, developing WMV9 video is cheap, easy, and fast. The tools are all free. The Windows Media Video 9 Series Encoder can accomplish a lot in a single pass than. It can be a pain to work with in Virtual Dub though, so for batch encoding I'd recommend some of River Past's video tools as helpers. Real Media is good, but some people may have objections to using the RealPlayer software due to some of its features (popups, cookies, etc. etc.). Not every computer I come across has it installed. Unfortunately, I often have
Xvid offers great video quality at low bitrates. It is open-source, you can count on it being around a long time, but it's not as well known outside the OSS and videophile communities. You'll want to provide a link to a binary install of the codec to make things easier on your visitors. DivX also offers great video quality at low bitrates. DivX is cross-platform with a codec available for Mac, Linux, and Windows. It appears that Xvid has beaten DivX on live action videos (films, television, etc). I believe DivX is better on animation though. The player is a small download. The software is pretty reliable. There are a growing number of certified DivX playback devices, so if you support DivX, you might be offering your visitors some added value in giving them a video format they can take with them.
On the downside, Xvid and DivX both require more time and attention to the transcoding process than does WMV9. You could easily do a single pass transcode with either, and the results will be okay, but DivX really doesn't hit its sweet spot (min. size and max. quality) unless you do a triple-pass. I don't know if Xvid does any better after a second pass. The DivX encoder will cost a small fee, but then you are free to use it all you want. You also get more tweaking with Xvid and DivX than with WMV-9 and (in my opinion) QT, but that means you may spend more time per video than you want in order to perfect things. On the upside, I believe DivX offers a tool for helping you to churn out fast high-quality videos, and both the Xvid and DivX communities are filled with people who are more than willing to offer tips and suggestions. 3ivx is the lesser known MPEG4 codec. It is a great suite that includes MPEG4 tools as well as an AAC encoder. For a more thorough comparison of these last three codecs, see the Doom9 website:
http://www.doom9.org/index.html?/codecs-104-1.htm
Avoid Microsoft's ASF/MPEG4 VKI codec entirely.
Sorry if I sound a little annoyed. Power to you if you're editing movies on a Mac--they're great machines and lots of folks in the industry swear by them. But I'm sick to death of people saying, "Nope! Get a Mac!" It just ain't so.
Wanna start a "Get an Amiga" thread just to piss them off!?! Cinelerra and Blender I understand to be pretty cool. I can't wait to find out as I migrate my video editing work over. Video capture though is a whole other story. It's a little harder to recommend capture equipment for Linux when the best products are on Windows, and that's no FUD!
That's what pisses me off more. UNIX has some great audio and video processing tools. Linux has a couple of great filesystems perfect for video work. The entire platform screams for videographers to migrate, and I can't be the only geek here who was a member of the AV Club, but the fact that DirectShow and WDM make it so easy to develop video apps and hardware for Windows is just too seductive!
I use an HP zd7010 series notebook for my video editing. It has a nice widescreen, and the drive has handled video capturing very well for what must be a few thousand hours of straight capturing I've done so far.
the problem with these stock computers is that the components are pretty underpowered. This is as true of the so-called gaming system desktop makers like Dell churn out. You probably don't want to capture raw AVI on your laptop (space issues notwithstanding), but a hardware-based tuner will certainly ease the strain a lot. My personal USB based preference is Pinnacle System's PCTV USB2. It is the only one I've seen with quality DV capture, optional MPEG 1 & 2 capture (no cap on MPEG1 resolution), and quality audio. Unfortunately, the audio downmixes stereo to mono, but it still sounds great.
If you go with a laptop, you need to be aware that most USB tuners pass audio through a separate stereo jack requiring a soundcard line-in. It's a bit idiot considering the primarily market for USB tuners, but there are few (Pinnacle and Hauppauge included that send audio over USB).
I tried capturing from USB2 tuners to USB2 hard drives. I wasn't dissatisfied. Providing you minimize all disk reads and writes on your main drive, you'll be okay. Be aware of antivirus software, and the usual apps that like to make sudden drastic reads.
If I'm editing straight video (next to no graphics/animation, etc), is there a point at which extra RAM adds little value?
RAM isn't really the issue in video capturing. Video capturing is a function of encoder speed, available bandwidth, and hard drive speed. Of course memory and CPU have an effect as well. You'll definitely want to have the appropriate amount of memory and CPU for your system, but you will want to have your system tuned for video capturing. That gets back to the first three options. Certain codecs are pretty heavyweight (DivX comes to mind), so they aren't the best for on-the-fly capturing. If you have 128MB available, I'd go with HuffYUV or a MJPEG codec if you can't do MPEG1 above 320x240. I'd stay away from WMV, MPEG2, or MPEG-4 unless you can do it in your capture hardware. For video editing, you'll need a lot of memory to smoothly shuttle through uncompressed AVI or HuffYUV encoded video. A lot of it though will depend on how well your video editing software is designed. I use Womble MPEG-VCR for cutting MPEG2s when I don't plan to convert the format. I use Virtual Dub for linear editing and Premiere Pro for nonlinear editing. Virtual Dub is sleek and fast. You can do a lot with a little, and it's got a plugin filter system, making it infinitely extendable (like Photoshop or GIMP). Premiere is still a beast. I don't know about Cinelerra. I'm still in the process of turning my laptop video toaster into a Linux box. I will be keeping updates on my success though in my journal.
Christ, I hate Pinnacle Studio. Studio 9 is supposed to be vastly improved over Studio 7 and 8, both of which were very bad at needlessly re-rending scenes. Unfortunately for Pinnacle, it's too late. Most people who own Studio 9, got it because it came packaged with Pinnacle hardware. Those of us who used to use Pinnacle software know to stay far far away.
:)
I believe this original poster will need support for analog sources as well. FireWire based capture devices obviously prefer clean digital sources, and many vendors design the products with that intent in mind. This can have disasterous effects for those converting say, VHS to DVD. Example, Pinnacle's first MovieBox DV routinely crashed when working with VHS sources. I'm sure subsequent versions have been improved in design, but I have stayed with my MovieBox USB
Is Linux up to the task? It depends on how much video work you do. I do video processing work nearly everyday. Regarding Macs, they are great, but there isn't as broad a range of tuners and capture cards available for the Mac as there are for Windows. For the Mac I recommend the Elgato products, namely the upcoming EyeTV Wonder (done in partnership with ATI). Generally speaking, you will pay a premium for going with Mac video equipment. Of course you will also minimize many of the problems videographers face providing you are working with clean video. Despite how many people feel about Windows, Windows makes a great video processing platform. Some of the best video processing software out there such as AviSynth, DScaler, VirtualDub, and VirtualDub MPEG exists as open-source Windows apps. TMPGEnc and Womble are world-class applications for working with MPEG. MPEG2 can be a real expensive pain to edit properly. Linux really adds to the power of PC-based video work.
Moving on, video capturing on Linux itself isn't very mature. There are a lot of older Brooktree BT8x8 chipset based tuners supported, but most of the newer (and better quality tuners) chipsets, namely the Philips SAA* based tuners are supported only under Windows using WDM drivers. Linux support is growing though. There are a couple of projects in Linux to bring video capturing over (thank God), but the greatest successes to date have been in getting digital tuners to work.
In any case, don't just accept any product recommendation. As someone who has a garage full of video equipment, I suggest you consider your needs and interests before settling on any specific product. There is a list of things I always ask people to consider:
What broadcast standards will you be working with, PAL, SECAM, NTSC? Will you be capturing TV feeds using your computer? Do you need to be able to schedule recordings using your computer as a PVR? Will you be mastering DVDs for commercial use? Do you have the time (and the desire) to post-edit your capture files before converting them, or would you rather get it all done in one shot? Do you prefer hardware-based MPEG encoding, or do you have a need to capture at full resolution uncompressed AVI format (AVI is not really a format)? Will you need to be mobile with your gear?
There are some caveats you will need to consider. There are many video capture devices out there that are designed specifically for video conversion. They lack tuners so you cannot use these devices to turn your TV into an effective timeshifting PVR. USB tuners are very attractive, but if you buy one, you will generally be limited to using the vendor-supplied capture software. DV capture devices using FireWire are few and far between in the Windows world, and those that exist, such as Pinnacle's MovieBox DV sometimes have problems with analog sources, making them ill-suited to all-around capturing. Hardware MPEG encoders free up your CPU cycles and memory by doing much of the work for you. Capturing raw AVI can really strain your system, but MPEG2 is a poor editing format that often requires you to purchase pricey MPEG tools. Also, the MPEG2 encoders in most consumer grade capture devices are not the same quality of those used in mastering commercially sold DVD, so it's best to get an MPEG2 encoder that can handle at least 12 Mbps bitrates.
In your case, I'd recommend a PCI based tuner, preferably with a Philips chipset, but a newer Brooktree-based tuner will give you a stronger guarantee of cross-platform support. I'd recommend using a tuner that doesn't use hardware MPEG encoding since you'll likely be editing your captures anyway whether it is to remove commercials or to add special effects or titles. You'll probably want to stay away from USB-based tuners for the time being until we see more support in Linux for Philips-based products. Depending on your location, you'll want a tuner that can capture at full frame, 720x420 NTSC or 720x576 PAL/SECAM.
In any case, there are two real good communities
For software, Cinelerra is the best editing suite out there. I haven't used Final Cut Pro, but Cinelerra is much more useful than iMovie. I haven't used Premiere is years, and Cinelerra is on par with what I remember of Premiere. Cinelerra should be able to do everything that you need.
If you haven't used Final Cut Pro or touched Premiere in years, how can you say that Cinelerra is the best editing suite out there? If you want to get into the category of "best" or "arguably best" test out a Pinnacle or Avid editing system.
I think so too. There would have to been some value in using a legacy application on Linux and WINE that one couldn't get in running the app under Windows natively or through the use of MS Virtual PC or VMWare.
It's simple. A lot of specialty software is very boring, and there just isn't any interest in the OSS community in developing similar software.
Very true. I would also add that there might also be a lack of programming skills in the OSS community when it comes to certain types of software.
I do a lot of video processing, I have some good hardware, but none of it works under Linux, and downgrading to older lesser hardware would be foolish. Within the Linux OSS community there are only a couple of projects relating to video capturing - none dealing with my type of hardware much less my particular gear. Thus, I am SOL. Most video equipment vendors will not release specs or source code to help create a market for themselves through Linux, nor will they develop closed-source drivers for Linux (likely because they lack the skills). I can't contribute anything either because my skills like those of most Windows OSS-based video projects is based on DirectShow and WDM. Thus the knowledge I have is not transferrable to Linux development. This means that many people cannot use Linux for an activity for which Linux is especially suited even if they want to use it.
Maybe, years from now, when they're running -ALL- of their software under WINE, they might realize that there's a better way.
What would be the better way in that case, to look for Linux software alternatives that may not exist or go back to Windows? I'm betting on the latter. I stopped actively working with Linux two years ago (I'm back now). I found it much easier to switch to Windows from Linux than to go the other way. Finding a native port or Cygwin translation of a UNIX app is so very easy.
I can't speak for all of Microsoft's dev tools as I have only worked with Microsoft BASIC, Visual Basic, and Visual C++. I'm holding off on C# because it's too specific to Windows for my tastes. Although it's my primary programming platform, I'd like to know that any knowledge I gain in a language will still hold on another platform.
.NET's greatness, they're often speaking more about the the whole suite - IDE included.
.NET framework + NASM gives you everything short of the VS IDE. My preference is TextPad until someone can convince me of something better. I have found that being free of the IDE has forced me to write better code because I spend more time manually looking up libraries and tweaking compile options, which in turn forces me to rethink my design choices.
The latest compiler is pretty standards compliant from what I've experienced (Microsoft claims roughly 98% conformance). It produces some very clean and tight code, fast too. The optimizations are nice, especially for MMX, SSE, and SSE2. I don't know if automatic vectorization is supported as it is in ICC. I can't compare the new toolkit to the latest ICC either. I have heard that the Microsoft compiler doesn't generate warnings or errors for certain bad programming practices like GCC would: ie, "if (x = 5)..." - but I never bothered to check it out.
Of course, anyone could saw the same and more about Metroworks, GNU, Borland, Intel, and any other compiler with the possible exception of Watcom. When people talk about VC++ or
When doing ATL, COM, and DirectX programming, I've heard (and have found) that Microsoft's tools work better. Things don't break as easily. However, I don't think it's Microsoft intentionally screwing with other compilers. I think we're looking again at the quality of the IDE. It's easy to manage your libaries from within Visual Studio. The various helper tools make it easier for you to concentrate on your code. You don't have to poke around as much looking for the right library... in theory. The concensus is that if you are doing Windows platform-specific code work, you're better off using Microsoft's compiler, especially when dealing with the more esoteric aspects of DirectX like DirectShow. How much of this is FUD is unknown to me. Unfortunately, I do worry that VS makes lazy programmers because it can be easy.
OffTopic: I've been using the free compiler since its release, and I absolutely love it. Most of the complaints are unfounded because people are used to having everything put in front of them. No one bothers to look around or put any effort into building a complete development suite around the new compiler. It is now possible to do full-fledged development using only free tools. Compiler + MS's debug tools + platform SDK +