Solved

Pros and cons: embed Windows Media Player, or use Microsoft Multimedia Control 6.0?

Posted on 2007-04-07
3
885 Views
Last Modified: 2008-02-01
Hello,

I'm writing a new application using VB6 (I'm still not ready for .NET), and in the application, users may include their video files, are play them.

( I think ) the good old Microsoft Multimedia Control 6.0 (MMC) will play AVI, MPG, MP4, WMV, MPEG, MPEG2, and MPEG4. (I haven't actually tested MP4 and MPEG2.)

Microsoft Multimedia Control 6.0 seems to be a good choice for this task, where the users will be taking small video clips, probably in AVI format, from camcorder uploads into their computers. Even video camera files in other formats can be pretty easily be converted to one of the compatible file types with little trouble to the end users. The other reasons the MMC might still be a good choice is that it will use up the least system resources (compared to Windows Media Player, "WMP" ), and will not have headaches for me in support. Embedding some version (v.9?) of WMP and dealing with different WMP versions and different Windows OS versions will probably create some support headaches.

My new application runs on Win2000, WinXP, and after testing and debugging, I'll include Vista on that list. I mention that because of the different WMP player versions distributed with those OSs.

What other considerations am I forgetting? The application in general, and the form that plays the videos in particular (and the .bas modules behind it) are pretty resource intensive, if that will affect your answer.
WMP plays SWF (Macromedia Flash files), which may be a bonus for some of the users, but is not mandatory. It appears to me that when codecs are installed on a computer, the good old MMC does indeed get to use those. I have my own UI, with my own controls that will allow users to interact with the video files (Stop, Play, start at the Beginning, etc.) Because those controls are already necessary to move through a presentation that includes JPG files and a bunch of data being displayed, I would need to hide the WMP controls anyway, so they provide no benefit. I know that Microsoft is actively doing development on the WMP, and the MMC is relatively "dead", but their are advantages and disadvantages both ways to a programmer.

So, will you please share your expertise and insights: Should I embed Windows Media Player, or use Microsoft Multimedia Control 6.0?

Thanks in advance!

Dennis
0
Comment
Question by:dtleahy
  • 2
3 Comments
 
LVL 10

Accepted Solution

by:
sakuya_su earned 500 total points
ID: 18874186
there is nothing wrong with VB6 IMHO, it gets the job done, and in the end thats what it counts

a few points I would like to make from working with MMC and WMP controls:

 - MMC is very good becayse you will not have to worry about versions. WMP on the other hand, will sometimes completely stop working once you update.. I found it happening many many times, the older OCX replaced by a new version, then all the sudden a bunch of features are under different names and your old program no longer work.. at all (This is exactly what happened when WMP 9 came out, all the functions became members of classes and i find myself rewriting code)

 - MMC is indeed less resource intensive. When you create a copy of the WMP, a whole bunch of junk come up as well, like background protection code, database etc etc.

 - WMP Does have many features, like play listing, digital media, DVD, visualization (although I don't really know if that is usable in VB), but overwall it is more powerful. BUT, in your case with your custom controls etc, those features will simply not be used.


Personally, i find that MMC, being "dead" as you put it, is not a bad thing, because you know it has all the things you want, and you know the control will not be updated, causing problems.

So in the end, if you dont mind writing a little more code and you are going to hide your WMP window on the form anyway, why not use MMC?


-------

I'm sure there are things I havent thought of, there are some really bad limitations on MMC, just cant remember what they are exactly
0
 

Author Comment

by:dtleahy
ID: 18874310
Hi sakuya_su, and thanks for the reply.

>there is nothing wrong with VB6 IMHO, it gets the job done, and in the end thats what it counts

From what Microsoft is saying (http://msdn2.microsoft.com/en-us/vbrun/ms788708.aspx), Vista is shipping with VB6 runtime files, and VB6 apps should run on Vista. They "guarantee" the VB6 runtime files will be included for 10 years (5yrs product cycle for Vista, plus 5 extended years.) So, I guess I still don't HAVE to throw VB6 away and learn C# or VB.NET or something else - at least not yet. Heck, maybe Microsoft will sell the source to Sun or Borland, and VB6 will be resurrected !  :~)

You comments on MMC vs WMP are right in line with what I am thinking, I just wanted to hear other viewpoints (other than my own.)

>I'm sure there are things I havent thought of, there are some really bad limitations on MMC, just cant remember what they are exactly

Lack of documentation? (at least using API calls)  If it wasn't for Abdullah Al-Ahdal, and his wonderful sample code (http://www.planet-source-code.com/vb/scripts/ShowCode.asp?lngWId=1&txtCodeId=9783), I would still be scratching my head on lots of the MMC functionality with API calls.

Thanks for taking the time to reply, sakuya_su. I hope some other experts who have used the WMP and MMC can add to this thread as well...

Dennis
0
 

Author Comment

by:dtleahy
ID: 18877994
OK, well maybe sakuya_su said it all, and maybe I got lucky enough to have found someone who has actually tried both ways and knows the pitfalls. So, thanks sakuya_su for your helpful insight. I'm awarding the points to you.

Thanks,

Dennis
0

Featured Post

How to improve team productivity

Quip adds documents, spreadsheets, and tasklists to your Slack experience
- Elevate ideas to Quip docs
- Share Quip docs in Slack
- Get notified of changes to your docs
- Available on iOS/Android/Desktop/Web
- Online/Offline

Join & Write a Comment

Suggested Solutions

Have you ever wanted to restrict the users input in a textbox to numbers, and while doing that make sure that they can't 'cheat' by pasting in non-numeric text? Of course you can do that with code you write yourself but it's tedious and error-prone …
You can of course define an array to hold data that is of a particular type like an array of Strings to hold customer names or an array of Doubles to hold customer sales, but what do you do if you want to coordinate that data? This article describes…
Get people started with the process of using Access VBA to control Outlook using automation, Microsoft Access can control other applications. An example is the ability to programmatically talk to Microsoft Outlook. Using automation, an Access applic…
Get people started with the process of using Access VBA to control Excel using automation, Microsoft Access can control other applications. An example is the ability to programmatically talk to Excel. Using automation, an Access application can laun…

746 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

10 Experts available now in Live!

Get 1:1 Help Now