Improve company productivity with a Business Account.Sign Up

x
?
Solved

Streaming WMV files from an EXE

Posted on 2006-06-12
10
Medium Priority
?
340 Views
Last Modified: 2010-04-05
Hi,

I have a series of WMV files that I want to be able to show as set of random animations for training purposes.  I don't want the end user getting access to the WMV files as they are my IP and took a long time to compile.

I'd really like to create an EXE with them embedded and have them play that way, without, at any time, the raw files being accessible to the end user.

I can get MPG and AVI to stream from an EXE, although the MPG is very jerky.  AVI is fine, but I can't get the compression I want easily from the CINEPAK codec.

So, I have one problem and two options I am exploring:

1. I really want to stream the WMV files from the EXE.  Is this possible?  Do I have to buy a component for this?

2. If I have to stream an AVI, what codec should I use?  DivX?  Can you embed the DivX codec into your code in case the end user PC doesn't have it installed?

I'd really appreciate any help!

- The target platform is XP
- I'm currently using D7 (old, I know!)

Looking forward to some discussion on this!

Thanks,
Chrism
0
Comment
Question by:Chrism
  • 2
  • 2
  • 2
  • +2
8 Comments
 
LVL 28

Expert Comment

by:2266180
ID: 16884743
Hi Chrism,

I have researched this issue and got to the conclusion that it's not doable unless you write your own wmv parser using the sdk. There migth be otehr alternatives as well, but AFAIK, none is imlementable in an easy/less easy way.

However, I can tell you that using directshow, you cna embed mostly any video format (except wmf, wmv).

You can try going the MCI way, and thus support win9x along with XP (in this case only avi files can be streamed) or using DS way, in which case most vide/audio formats can be streamed.
I have a made a demo a while back for someone here: http://www.ciuly.com/delphi/multimedia/
I will start investigatin wmv issue more deeply in a few months and I'll update that page when I find something. until then, I guess I'll just watch this page, maybe someone knows better than me :)
0
 
LVL 14

Expert Comment

by:DragonSlayer
ID: 16949189
Just a suggestion, is it possible to encrypt everything into a single file system (e.g. http://www.aidaim.com/products/sfs/sfs_spec.php) and use normal filestreams to access it?
0
 
LVL 2

Author Comment

by:Chrism
ID: 17982236
Hi cwwkie,

While I appreciate ciuly's comment, it didn't answer the question.  In the end, I have written my own WMV streaming application from Delphi.  It was challenging, but is now done.

Thanks,
Chrism
0
Get expert help—faster!

Need expert help—fast? Use the Help Bell for personalized assistance getting answers to your important questions.

 
LVL 28

Expert Comment

by:2266180
ID: 17987036
just a though, from what I know (!), you probably used the wm sdk (or some translated header from it) to write either a full wmv parser or some pseudo-parser based on some demo from the sdk in order to make that streaming app. at least this was my line of research a while ago.

of course, I won't be the only one to say that the community would appreciate some information/tips in this direction. I know I personally spent weeks on this issue without getting anywhere too far with it. (some pieces of code from the more trickier parts would be even better)

and then we can say that a paq and refund will be better ;)

thanks
0
 
LVL 14

Expert Comment

by:cwwkie
ID: 17990938
>> While I appreciate ciuly's comment, it didn't answer the question.  In the end, I have written
>> my own WMV streaming application from Delphi.  It was challenging, but is now done.

ciuly's comment looked the best answer, and because you did not responded before, I had to asume you were "happy" with the answer.

But if you tell what exactly you have done to implement this, I'll change my recommendation to paq/refund.
0
 
LVL 2

Author Comment

by:Chrism
ID: 17991045
We have created a local server, written a custom interface for WMP and been able to stream the WMV files locally, reducing impact and overhead on local resources.

As you can see, the comment includes the lines "I have researched this issue and got to the conclusion that it's not doable unless you write your own wmv parser using the sdk." and "I will start investigatin wmv issue more deeply in a few months and I'll update that page when I find something.".  

Both statements are appreciated but certainly cannot qualify as an answer to the question "I really want to stream the WMV files from the EXE.  Is this possible?  Do I have to buy a component for this?"

The sample provided showed me how to stream other file formats, but you'll note in my original question, I could already do that and it wasn't operationally satisfactory as a solution.

Thanks,
Chris
0
 
LVL 14

Expert Comment

by:cwwkie
ID: 17998769
>> Both statements are appreciated but certainly cannot qualify as an answer

The comment from ciuly was more or less "it is not possible to do that", that is not an answer you were looking for, but it is an answer. Only if someone proves it is possible, then it is clear the answer is wrong. Now you have, although one line is a little bit short, but I understand what you mean. I'll change my recommendation.
0
 
LVL 1

Accepted Solution

by:
Computer101 earned 0 total points
ID: 18005654
PAQed with points refunded (500)

Computer101
EE Admin
0

Featured Post

Free Tool: Port Scanner

Check which ports are open to the outside world. Helps make sure that your firewall rules are working as intended.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Objective: - This article will help user in how to convert their numeric value become words. How to use 1. You can copy this code in your Unit as function 2. than you can perform your function by type this code The Code   (CODE) The Im…
Have you ever had your Delphi form/application just hanging while waiting for data to load? This is the article to read if you want to learn some things about adding threads for data loading in the background. First, I'll setup a general applica…
Watch the software video of Kernel Import PST to Office 365 tools which can easily import PST and OST files to Office 365 for bulk mailboxes. The process of migration is simple and user can map source and destination mailboxes and easily import data…
Go through the video which explain the procedure to export Amazon WorkMail single or multiple mailboxes to Outlook with Kernel Export Amazon WorkMail to PST tool. User can see the simple steps to export. It has salient features like filters (Include…

579 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