|
Hey mark,
I'll check it out.. hopefully i won't ever bug u again.
Thank's alot, now there are no excuses left and i have to get to work...
Good weekend .
Michael
|
|
|
|
|
mjmim wrote: hopefully i won't ever bug u again
If it bothered me I wouldn't be here responding.
If you run into problems then definitely post questions here - that's what the site's for.
Good weekend to you as well, thanks!
Mark
"If you can dodge a wrench, you can dodge a ball."
|
|
|
|
|
Hey Mark,
I am looking into the DirectShow Editing Services and it seems quite interesting, I was already able to play an mpg file with it (after dividing its sound and video part according to the documentation!
One question though, I am reading about the "Writing a Project to a File".
Because eventually i am interested in having a mpg file in the end product.
How exactly is it supposed to work if i do not have a multiplexer codec file from a third party? How does microsoft do the muxing of the uncompressed audio and video data?
Thanks,
Michael
mjmimmm@hotmail.com
|
|
|
|
|
mjmim wrote: How exactly is it supposed to work if i do not have a multiplexer codec file from a third party?
It won't, unfortunately. I believe because of licensing, Microsoft provides no encoders for
MPEG-1,2,3. There is an encoder for MPEG-4 but the resulting file is wrapped in an ASF
(.wma, .wmv, etc.) format "container".
The only mux filter included is for AVI. The multiplexer for ASF format (which is actually part
of the Windows Media Format SDK) is built-in to the WM ASF Writer filter.
I guess I should have been more spcific in my first reply about what type of encoder you'd need.
If you have encoding code it may be fairly easy to develop your own filter. I've developed and
use a few custom filters but I've never done a mux/encode filter so I'm not sure what's involved.
I suppose if you have encoder code (or a library) that takes raw timestamped audio and video input
then it could be fairly easy.
Mark
"If you can dodge a wrench, you can dodge a ball."
|
|
|
|
|
Hey Mark,
I too have written quite a few transform filters. I have never written a multiplexer before, and certainly not a multiplexer for mpeg2. Do you have a direction to point me in for a open source multiplexing code or for a guideline as how to write such a thing? Do you have an estimate for how long it would take to write such a thing? thank you very much...
Michael
mjmimmm@hotmail.com
|
|
|
|
|
Michael,
I have no idea how much work it would be. I've never worked with MPEG.
Using DES, the render engine yields an uncompressed video stream and an uncompressed audio stream.
If I had code to take those streams and make an MPEG file then a filter could be made to do that
fairly easily. If I had to actually compress the data and build the file I wouldn't know where to
start.
Maybe these links will help for resources:
The MPEG Home Page[^]
MPEG Pointers and Resources[^]
Mark
"If you can dodge a wrench, you can dodge a ball."
|
|
|
|
|
I have found a commercial Mpeg-2 multiplexer
What type of Media subtype to i need to specify wheni set the output file?
Name of function: SetOutputFileName
They are many mpeg2 video subtypes.....
Do you know which one?
Thank you,
Michael
mjmimmm@hotmail.com
|
|
|
|
|
Hello everybody!
This is my first message. And first of all i would like to say sorry for my english (because i am ukrainian ).
Currently I developing some educational application. It is Solar Model (you can take a look here -- http://solarmodel.sourceforge.net/). It is free and open source.
So what do i need ?
I want to make step by step more realistic frame rendering in my application. Now it shows planets, main moons, sun, and background starts (static). I plaining to add:
1) Asteroid Belt (it is a ring of asteroids that orbits the Sun between Mars and Jupiter); so does any body have an ideas how can i implement that ? (real 3d models of even thousands asteroids -- bad idea ). any ideas and thoughs are welcome.
2) Our solar system has 4 planets that are gas giants, it is: Saturn, Jupiter, Uranus and Neptune. It is most bigest planets in Solar System. Now they renders as ordinar planet, but in real they should looks another way. (this is most hard to implement idea i guess, but if i here, i would like to ask this too... thanks);
3) Real Sun has fire at its surface. Fire effect is highly needed for me. Alot of games implements it. Does anybody know how they do this?
That is it for now.
If you steel reading -- Thank you
P.S.: it doesn't matter how you can give me ideas (i mean in OpenGL or DirectX terms) -- i can understand both.
|
|
|
|
|
|
There are many ways to do something similar to this. You can take a pre-rendered model and implement animated textures of flame off the sun. This gives you the quality of a raytrace, with precalculated values, and the speed of hardware textures.
Nebulas and gas giants can be done much the same way. Animated textures allow you the speed and flexibility to do many things. You can use raytrace images like povray http://www.geocities.com/ccolefax/galaxy.html[^] to generate images and then use them within the render system. Take a look at how Stellarium[^] does its rendering. Celestia as mentioned allows travel to other planets, where as Stellarium is trying to be your own private planetarium.
_________________________
Asu no koto o ieba, tenjo de nezumi ga warau.
Talk about things of tomorrow and the mice in the ceiling laugh. (Japanese Proverb)
|
|
|
|
|
Can somebody please tell me how I can use the File Source (URL) filter as an input block in a Direct Show Filter Graph. As in, how do I assign the IP address and Port number of a remote sender. Actually I want to send an MPEG stream from a remote sender to my filter graph application to decode it ...
_______________________________________________________
Trying to make sense of it all ........
|
|
|
|
|
You'll need to specify a protocol in your URL to transfer the file data with.
I believe ftp and http are supported but that means you have to have an ftp or http server running
on the source machine.
If you have a mapped network drive then you could probably use a URL of the form
file://driveletter:\path\filename.ext
Otherwise you'll need your own filter that handles the streaming of the data.
Mark
"If you can dodge a wrench, you can dodge a ball."
|
|
|
|
|
Okay I could use a URL in the format u said for transferring data from a file. .... what if the data is coming LIVE in the form of byte arrays ? how can i pick that data and give it to my direct show application ??
|
|
|
|
|
You can write your own custom source filter. If it's going across a network then you'll need
a way to transfer the data as well. There's no filters included with DirectShow that do either
of these.
Mark
"If you can dodge a wrench, you can dodge a ball."
|
|
|
|
|
i have a kind of tiff image,but it only can use GDI+ open it.And the traditional methods of open tiff image can not open it,photo neither.
so i use notepad open it ,then i saw this at the head
II* H WANG TIFF 0 Title: Author: Subject: Keywords: Comments: ? ?
D ,i 1 D h 4 < % ( 1 D , , Oi/GFS, writer v00.06.01P ?
I never saw a tiff image like this, what is it???
|
|
|
|
|
See here[^]
"If you can dodge a wrench, you can dodge a ball."
|
|
|
|
|
hi all,
i have installed cricket 2005 .... installation was fine.. when i load the game it runs but there is no graphics display ...it shows "MISSING TEXTURE ".....plz help
If U Get Errors U Will Learn
If U Don't Get Errors U Have Learnt
|
|
|
|
|
Did you write the software? If not, then the vendor's website is probably a better place for
answers than this programming forum.
Mark
"If you can dodge a wrench, you can dodge a ball."
|
|
|
|
|
vimal_yet wrote: If U Get Errors U Will Learn
If U Don't Get Errors U Have Learnt
I hate to tell you this, but your sig is wrong. If you don't get errors, it just means that you haven't been thorough enough in your testing.
Deja View - the feeling that you've seen this post before.
|
|
|
|
|
vimal_yet wrote: If U Get Errors U Will Learn
If U Don't Get Errors U Have Learnt
We learn by the mistakes we make. If you don't make mistakes you learn nothing. You will always make mistakes.
|
|
|
|
|
Colin Angus Mackay wrote: We learn by the mistakes we make. If you don't make mistakes you learn nothing. You will always make mistakes.
Indeed. It is a mistake to think you will make no mistakes.
Deja View - the feeling that you've seen this post before.
|
|
|
|
|
Hi everyone.
Does anyone have experience in developing an equalizer with DirectX? I really damned with Directx.Sound. Thanks.
|
|
|
|
|
You want to do an audio equaliser ? this is the graphics forum.
Christian Graus - Microsoft MVP - C++
Metal Musings - Rex and my new metal blog
"I am working on a project that will convert a FORTRAN code to corresponding C++ code.I am not aware of FORTRAN syntax" ( spotted in the C++/CLI forum )
|
|
|
|
|
Hi.
I have (in my oppinion) a VERY annoying and wierd problem. I'm using UpdateLayeredWindow() according to the code below. I do the FillRect() just for testing. But when I do this UpdateLayeredWindow() returns 0 which, according to the msdn documentation, indicates that the function failed and more info should be in GetLastError(). However, if I call GetLastError() just after UpdateLayeredWindow() it simply returns 0, indicating that there was no last error. I have remembered to set WS_EX_LAYERED...
Could it be that FillRect() doesn't set any alpha information? Any ideas? Thanks.
<br />
HDC dcScreen = ::GetDC(NULL);<br />
HDC dcMemory = ::CreateCompatibleDC(dcScreen);<br />
HBITMAP bmpMemory = ::CreateCompatibleBitmap(dcScreen, 500, 500);<br />
<br />
::SelectObject(dcMemory, bmpMemory);<br />
<br />
BITMAP bitmap;<br />
GetObject(bmpMemory, sizeof(BITMAP), &bitmap);<br />
<br />
RECT rc = {0, 0, 100, 100};<br />
::FillRect(dcMemory, &rc, ::GetSysColorBrush(COLOR_HIGHLIGHTTEXT));<br />
<br />
BLENDFUNCTION bf = {AC_SRC_OVER, 0, 255, AC_SRC_ALPHA};<br />
<br />
UpdateLayeredWindow(m_hWnd,<br />
dcScreen,<br />
NULL,<br />
NULL,<br />
dcMemory,<br />
NULL,<br />
0,<br />
&bf,<br />
ULW_ALPHA);
|
|
|
|
|
Since you're specifying the source DC (dcMemory), I would try passing values for arguments 3,4 & 6 (i.e., the various size and positions). Argument 6 should just be the address of a POINT with value (0,0).
I use this function all the time, and that's what I do (returns non zero - and it works of course )
|
|
|
|