DataStreamPtr fix, indentation fixes

This commit is contained in:
scrawl 2012-12-11 23:06:06 +01:00
parent c49966dd29
commit 0ce5ade6d8
2 changed files with 59 additions and 55 deletions

View file

@ -11,7 +11,7 @@ namespace MWRender
int OgreResource_Read(void *opaque, uint8_t *buf, int buf_size)
{
Ogre::DataStreamPtr stream = *((Ogre::DataStreamPtr*)opaque);
Ogre::DataStreamPtr stream = static_cast<VideoState*>(opaque)->stream;
int num_read = stream->size() - stream->tell();
@ -24,7 +24,7 @@ namespace MWRender
int OgreResource_Write(void *opaque, uint8_t *buf, int buf_size)
{
Ogre::DataStreamPtr stream = *((Ogre::DataStreamPtr*)opaque);
Ogre::DataStreamPtr stream = static_cast<VideoState*>(opaque)->stream;
int num_write = stream->size() - stream->tell();
@ -37,7 +37,7 @@ namespace MWRender
int64_t OgreResource_Seek(void *opaque, int64_t offset, int whence)
{
Ogre::DataStreamPtr stream = *((Ogre::DataStreamPtr*)opaque);
Ogre::DataStreamPtr stream = static_cast<VideoState*>(opaque)->stream;
switch (whence)
{
@ -432,7 +432,8 @@ namespace MWRender
is->pictq_cond.notify_one ();
is->pictq_mutex.unlock ();
}
} else {
}
else {
schedule_refresh(is, 100);
}
}
@ -673,10 +674,11 @@ namespace MWRender
Ogre::DataStreamPtr stream = Ogre::ResourceGroupManager::getSingleton ().openResource (is->resourceName);
if(stream.isNull ())
throw std::runtime_error("Failed to open video resource");
is->stream = stream;
AVIOContext *ioContext = 0;
ioContext = avio_alloc_context(NULL, 0, 0, &stream, OgreResource_Read, OgreResource_Write, OgreResource_Seek);
ioContext = avio_alloc_context(NULL, 0, 0, is, OgreResource_Read, OgreResource_Write, OgreResource_Seek);
if (!ioContext)
throw std::runtime_error("Failed to allocate ioContext ");

View file

@ -108,6 +108,8 @@ namespace MWRender
AVStream *video_st;
PacketQueue videoq;
Ogre::DataStreamPtr stream;
SwsContext* sws_context;
VideoPicture pictq[VIDEO_PICTURE_QUEUE_SIZE];