TGEA Theora support
by Frank Bignone · 08/05/2009 (2:26 am) · 24 comments
Archive file updated on 6th August 2009
The proposed download is a modification of provided source code from GarageGames in order to support Theora movie playback. The current resource is only working for video playback and does not included the sound streaming which is needed in order to have both video and sound support.
First of all, just download the following file and copy the engine folder inside your TGEA folder (do not forget to backup your data first). The archive includes also the latest Theora library distribution. You may need to compile them for your platform (just go inside engine/lib/libTheora).
In order to compile you application, you will need to set-up the correct path for include and library file. First set-up the path for the include files as followed:

Then set-up the path for the library and the new theora lib file in the linker option as followed:


For the library to link, you may face some linker issue with the release library; but it works well with the debug library.
Then you can try the .ogg demonstration video available in the archive by creating a TheoraGuiCtrl in the GUI editor as followed.

You can find this resource on our blog here www.torquelab.com.
The proposed download is a modification of provided source code from GarageGames in order to support Theora movie playback. The current resource is only working for video playback and does not included the sound streaming which is needed in order to have both video and sound support.
First of all, just download the following file and copy the engine folder inside your TGEA folder (do not forget to backup your data first). The archive includes also the latest Theora library distribution. You may need to compile them for your platform (just go inside engine/lib/libTheora).
In order to compile you application, you will need to set-up the correct path for include and library file. First set-up the path for the include files as followed:

Then set-up the path for the library and the new theora lib file in the linker option as followed:


For the library to link, you may face some linker issue with the release library; but it works well with the debug library.
Then you can try the .ogg demonstration video available in the archive by creating a TheoraGuiCtrl in the GUI editor as followed.

You can find this resource on our blog here www.torquelab.com.
About the author
Real programmers don't waste time recompiling; they patch the binary files... ... Real programmers don't waste time patching binary files; they patch memory.
#2
08/05/2009 (12:51 pm)
I tried to add this to T3D but got an error saying it couldnt find GFXDefaultTheoraProfile. I tried changing it to some of the default texture profiles, but none of them worked. The video just stayed black. Any ideas?
#3
and gfxTextureProfile.h
Archive file is updated with it.
08/05/2009 (5:20 pm)
As stated it is for TGEA 1.8.1, did not try it for T3D yet. For the texture profile, it is defined inside gfxTextureProfile.cpp:GFX_ImplementTextureProfile(GFXDefaultTheoraProfile,
GFXTextureProfile::DiffuseMap,
GFXTextureProfile::NoMipmap /*| GFXTextureProfile::Dynamic*/ | GFXTextureProfile::KeepBitmap,
GFXTextureProfile::None);and gfxTextureProfile.h
GFX_DeclareTextureProfile(GFXDefaultTheoraProfile);
Archive file is updated with it.
#4
08/05/2009 (6:33 pm)
Works perfectly Frank, much appreciated!
#5
08/05/2009 (10:36 pm)
Hei good work ;-)
#6
Can you think of anything that would prevent this resource from working on TGEA 1.7.1?
08/06/2009 (7:46 am)
Great work!Can you think of anything that would prevent this resource from working on TGEA 1.7.1?
#8
08/08/2009 (7:45 am)
Never tested it on TGEA 1.7.1 and T3D yet...
#9
gfxTextureProfile.h(11) : fatal error C1083: Cannot open include file: 'core/util/str.h': No such file or directory
So I figure I need to use my original version of gfxTextureProfile.h and just add your changes to mine.
Is this the only thing you added to yours?
08/08/2009 (9:39 am)
I added it to 1.7.1 just to see what would happen, and I get just this one error repeatedly.gfxTextureProfile.h(11) : fatal error C1083: Cannot open include file: 'core/util/str.h': No such file or directory
So I figure I need to use my original version of gfxTextureProfile.h and just add your changes to mine.
Is this the only thing you added to yours?
// START SIM CHANGE // Depth buffer texture GFX_DeclareTextureProfile(GFXDefaultTheoraProfile); // END SIM CHANGE
#12
And if the source code change did nothing to change those things, well it wouldn't give that error.
Why don't you try and compile with all original files, see what happens. My guess would be incorrect project file or folders/files or what ever.
Maybe?
08/14/2009 (6:35 pm)
john im no expert but if your getting that errors the file is trying to include str.h, and obviously it cant find it.And if the source code change did nothing to change those things, well it wouldn't give that error.
Why don't you try and compile with all original files, see what happens. My guess would be incorrect project file or folders/files or what ever.
Maybe?
#13
These are all the pop up windows i have been getting:
08/27/2009 (8:13 am)
I am getting a lot of errors, when i run the exe. It compiles ok but i am getting a lot of debugger info that is not looking to nice.These are all the pop up windows i have been getting:
Fatal: (m:\gamedev\engine\neverendingrealm\engine\source\core\stream\bitstream.h @ 294) Out of bounds value!
Fatal: (m:\gamedev\engine\neverendingrealm\engine\source\gfx\bitmap\gbitmap.cpp @ 166) GBitmap::GBitmap: in order to extrude mip levels, bitmap w/h must be pow2and then i get this, which i can not get past.
Fatal: (m:\gamedev\engine\neverendingrealm\engine\source\ts\tsmesh.cpp @ 2569) TSMesh::castRayOpcode - no good ray collide!
#14
08/27/2009 (8:18 am)
Damn, sorry about the double post... stupid refresh
#15
08/27/2009 (10:09 am)
Well strange as TSMesh was not changed... are you sure it is due to this resource?
#16
08/30/2009 (12:43 am)
i am pretty sure, i had no problems until i added this resource, i have a funny feeling it is because i have broken the linking. I am going to try an install of this resource again after my exams
#17
09/10/2009 (8:38 am)
I'm trying to download the resource, but the link don't load. Is the web off?
#18
09/11/2009 (5:06 am)
the link works for me :P
#20
01/03/2010 (1:32 pm)
I was unable to get it to work for TGEA 1.7.1, but I need to revisit it and try again. It just may be a slight code difference from 1.8 that is causing all the errors.
Torque Owner Mike Rowley
Mike Rowley