diff options
author | Juan Linietsky <reduzio@gmail.com> | 2014-09-15 11:33:30 -0300 |
---|---|---|
committer | Juan Linietsky <reduzio@gmail.com> | 2014-09-15 11:33:30 -0300 |
commit | 8cab401d08f8e25aa9b2dc710204785858ff3dbb (patch) | |
tree | 1a4cec868f937fb24d340ee33fbeba2f1c6fa9f2 /drivers/theoraplayer/src/AVFoundation/TheoraVideoClip_AVFoundation.h | |
parent | 1a2cb755e2d8b9d59178f36702f6dff7235b9088 (diff) |
3D Physics Rework, Other Stuff
-=-=-=-=-=-=-=-=-=-=-=-=-=-
3D Physics:
-Fixed "Bounce" parameter in 3D
-Fixed bug affecting Area (sometims it would not detect properly)
-Vehicle Body has seen heavy work
-Added Query API for doing space queries in 3D. Needs some docs though.
-Added JOINTS! Adapted Bullet Joints: and created easy gizmos for setting them up:
-PinJoint
-HingeJoint (with motor)
-SliderJoint
-ConeTwistJoint
-Generic6DOFJoint
-Added OBJECT PICKING! based on the new query API. Any physics object now (Area or Body) has the following signals and virtual functions:
-input_event (mouse or multitouch input over the body)
-mouse_enter (mouse entered the body area)
-mouse_exit (mouse exited body area)
For Area it needs to be activated manually, as it isn't by default (ray goes thru).
Other:
-Begun working on Windows 8 (RT) port. Compiles but does not work yet.
-Added TheoraPlayer library for improved to-texture and portable video support.
-Fixed a few bugs in the renderer, collada importer, collada exporter, etc.
Diffstat (limited to 'drivers/theoraplayer/src/AVFoundation/TheoraVideoClip_AVFoundation.h')
-rw-r--r-- | drivers/theoraplayer/src/AVFoundation/TheoraVideoClip_AVFoundation.h | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/drivers/theoraplayer/src/AVFoundation/TheoraVideoClip_AVFoundation.h b/drivers/theoraplayer/src/AVFoundation/TheoraVideoClip_AVFoundation.h new file mode 100644 index 0000000000..abd898aa01 --- /dev/null +++ b/drivers/theoraplayer/src/AVFoundation/TheoraVideoClip_AVFoundation.h @@ -0,0 +1,47 @@ +/************************************************************************************ +This source file is part of the Theora Video Playback Library +For latest info, see http://libtheoraplayer.googlecode.com +************************************************************************************* +Copyright (c) 2008-2014 Kresimir Spes (kspes@cateia.com) +This program is free software; you can redistribute it and/or modify it under +the terms of the BSD license: http://opensource.org/licenses/BSD-3-Clause +*************************************************************************************/ +#if defined(__AVFOUNDATION) && !defined(_TheoraVideoClip_AVFoundation_h) +#define _TheoraVideoClip_AVFoundation_h + +#include "TheoraAudioPacketQueue.h" +#include "TheoraVideoClip.h" + +#ifndef AVFOUNDATION_CLASSES_DEFINED +class AVAssetReader; +class AVAssetReaderTrackOutput; +#endif + +class TheoraVideoClip_AVFoundation : public TheoraVideoClip, public TheoraAudioPacketQueue +{ +protected: + bool mLoaded; + int mFrameNumber; + AVAssetReader* mReader; + AVAssetReaderTrackOutput *mOutput, *mAudioOutput; + unsigned int mReadAudioSamples; + + void unload(); + void doSeek(); +public: + TheoraVideoClip_AVFoundation(TheoraDataSource* data_source, + TheoraOutputMode output_mode, + int nPrecachedFrames, + bool usePower2Stride); + ~TheoraVideoClip_AVFoundation(); + + bool _readData(); + bool decodeNextFrame(); + void _restart(); + void load(TheoraDataSource* source); + float decodeAudio(); + void decodedAudioCheck(); + std::string getDecoderName() { return "AVFoundation"; } +}; + +#endif |