Commit ae76b813 authored by philipjsg's avatar philipjsg

Added a release function to free up the context. Also removed the dummy

declarations at the bottom of the file. This type checking is now handled by the
header file.


git-svn-id: file:///var/local/repositories/ffmpeg/trunk@1295 9553f0bf-9b14-0410-a0b8-cfaf0461ba5b
parent 4df6d5fd
......@@ -82,6 +82,11 @@ static void dorange(const char *s, int *first, int *second, int maxval)
*second = maxval;
}
void Release(void *ctx)
{
if (ctx)
av_free(ctx);
}
int Configure(void **ctxp, int argc, char *argv[])
{
......@@ -325,6 +330,3 @@ void Process(void *ctx, AVPicture *picture, enum PixelFormat pix_fmt, int width,
}
}
/* To ensure correct typing */
FrameHookConfigureFn ConfigureFn = Configure;
FrameHookProcessFn ProcessFn = Process;
......@@ -72,6 +72,19 @@ typedef struct _CachedImage {
int height;
} CachedImage;
void Release(void *ctx)
{
ContextInfo *ci;
ci = (ContextInfo *) ctx;
if (ci->cache) {
imlib_context_set_image(ci->cache->image);
imlib_free_image();
av_free(ci->cache);
}
if (ctx)
av_free(ctx);
}
int Configure(void **ctxp, int argc, char *argv[])
{
......@@ -261,6 +274,3 @@ done:
;
}
/* To ensure correct typing */
FrameHookConfigureFn ConfigureFn = Configure;
FrameHookProcessFn ProcessFn = Process;
......@@ -24,6 +24,14 @@ typedef struct {
int dummy;
} ContextInfo;
void Release(void *ctx)
{
ContextInfo *ci;
ci = (ContextInfo *) ctx;
if (ctx)
av_free(ctx);
}
int Configure(void **ctxp, int argc, char *argv[])
{
......@@ -68,6 +76,3 @@ void Process(void *ctx, AVPicture *picture, enum PixelFormat pix_fmt, int width,
av_free(buf);
}
/* To ensure correct typing */
FrameHookConfigureFn ConfigureFn = Configure;
FrameHookProcessFn ProcessFn = Process;
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment