Hi,
I am wondering on the right means for streaming video into a graphics environment, looking for an example of DirectX rendering a video to texture which can then be mounted to a model. As far as documents go DirectShow was the means for doing this in a 3D world, however, that has evidently become depreciated.... quite what it has been depreciated by is a much harder question to answer.
I looked around for a means of getting video files into DirectX and the only up-to-date source I could find was Bink Video (with a 6000 dollar price tag). I am wondering if there is anything for Indie developers to use to get video into a scene and if anyone could enlighten me as to its name or usage. Does everyone without a million pound budget develop an application using DirectShows old methods to do it? I am hoping there is something current I have missed, I do not want to have to use sprite board style UV clipping to achieve the desired effect on this one, if there is a better alternative.
Many Thanks
EnlightenedOne
Video to a texture in DX9
ffmpeg / libvorbis
Thanks Hodgeman,
I looked at ffmpeg but their licensing is ladend with landmines and it doesn't look like commercial use is on the cards especially with the Mpeg people scouring for royalties. Vorbis certainly looks like the right direction to go in. Correct me if I am wrong but is libvorbis only audio based? I believe the Vorbis application Theora is the video player SDK they have.
I will scour their wiki for information on plugging video into DirectX thanks for a point in the right direction, as ever
I appreciate any advice anyone who has experimented with video in DX might have to say, otherwise I will march on... I am hoping to record video for a texture and height and normal map and use these to produce a parallax relief effect which looks as if water is streaming along its surface via HLSL or perhaps see if I can produce any other interesting effects like arrows moving over a brick surface as if part of the textures height. Just to play around with it for the time being until I make some progress. Maybe I can produce a more realistic water surface with animated changing refraction on a moving layer. I can't think why I didn't try to solve this earlier it opens some fun doors!
EnlightenedOne
Ah yes, sorry. Glad you found the right one anyway
Correct me if I am wrong but is libvorbis only audio based? I believe the Vorbis application Theora is the video player SDK they have.
I am hoping to record video for a texture and height and normal map and use these to produce ... interesting effects[/quote]I've never played around with using video textures (except for as regular videos) but what you're suggesting is basically how the extremely detailed facial animations in La Noire are implemented.
The Win32 AVIFile interface is free and pretty easy to use, once you get used to copying frames from a DIB to your D3D texture. But the real issue is codec hell - making sure your users have the same codec installed that you used to make the video. Unless you can somehow get (or pay for) rights to distro a decent codec with your app, you'll be stuck with the standard Windows codecs. They're ok, but finding one which works across Win XP, Vista, and 7 is tricky. That's why Bink costs, and it's worth every nickel to avoid the codec mess. Theora is similar to Bink in that it is an API and codec, but the API is a real mind bender compared to Bink.
what you're suggesting is basically how the extremely detailed facial animations in La Noire are implemented.
Sounds all the more fun when your confident its plausible, I predicted its how they do the rain on surface effects in many applications and also part of what some were doing to get high quality water.
The Win32 AVIFile interface is free and pretty easy to use, once you get used to copying frames from a DIB to your D3D texture.
If that is the case I am keen to take a look at it, I believe I have seen an XNA implementation of this copying process in looking for a solution.
But the real issue is codec hell - making sure your users have the same codec installed that you used to make the video. Unless you can somehow get (or pay for) rights to distro a decent codec with your app, you'll be stuck with the standard Windows codecs. They're ok, but finding one which works across Win XP, Vista, and 7 is tricky. That's why Bink costs, and it's worth every nickel to avoid the codec mess. Theora is similar to Bink in that it is an API and codec, but the API is a real mind bender compared to Bink.
Can I ask if there are any royalty free standard video codec's which work accross those three platforms which you are aware of which are variable in compression quality and at a decent level dont suck lemons and a vast amount of memory?
If I had all the money in the world I would use Bink and fmod in my project and 3DS Max for my models instead of Blender these days.
All I can afford with just a curious rookie is VS2010, CrazyBump and Pixexix in terms of things which have a price tag attached. Gotta start simple (or contrivedly convoluted it seems), I am hoping that while the SDK and API will require some elbow grease all the bare necessities involving codecs is not going to get at a very low level loaded onto the stand alone programmer. I will soon tell you if I am wrong!
Thanks for the feedback so far! When I am free to get cracking on with my experiments in Theora I will tell you how it goes maybe even write a manual if I get anywhere good. Certainly looks the part from the time I have spent investigating it.
EnlightenedOne
I found the holy grail of Theora abstracting me from the majority of the messy video formatting detail so I can get exactly what I need.
http://sourceforge.net/apps/mediawiki/libtheoraplayer/index.php?title=Main_Page
Brilliant SDK, I found it via an old thread.
http://www.gamedev.net/topic/557959-theora-playback-library-10-rc1/page__p__4610652__hl__theora__fromsearch__1
There are binary demoes on the wiki page you can use to view how much potential it has. I will start hooking this up as soon as I get some free time!
EnlightenedOne
http://sourceforge.net/apps/mediawiki/libtheoraplayer/index.php?title=Main_Page
Brilliant SDK, I found it via an old thread.
http://www.gamedev.net/topic/557959-theora-playback-library-10-rc1/page__p__4610652__hl__theora__fromsearch__1
There are binary demoes on the wiki page you can use to view how much potential it has. I will start hooking this up as soon as I get some free time!
EnlightenedOne
This topic is closed to new replies.
Advertisement
Popular Topics
Advertisement