Browse Source

vfwcap: Move vfw_read_close to avoid forward declaration.

Patch by Diego.

Originally committed as revision 19567 to svn://svn.ffmpeg.org/ffmpeg/trunk
tags/v0.6
Diego Biurrun Ramiro Polla 16 years ago
parent
commit
c959c6ee3d
1 changed files with 16 additions and 18 deletions
  1. +16
    -18
      libavdevice/vfwcap.c

+ 16
- 18
libavdevice/vfwcap.c View File

@@ -201,7 +201,22 @@ fail:
return FALSE;
}

static int vfw_read_close(AVFormatContext *s);
static int vfw_read_close(AVFormatContext *s)
{
struct vfw_ctx *ctx = s->priv_data;

if(ctx->hwnd) {
SendMessage(ctx->hwnd, WM_CAP_SET_CALLBACK_VIDEOSTREAM, 0, 0);
SendMessage(ctx->hwnd, WM_CAP_DRIVER_DISCONNECT, 0, 0);
DestroyWindow(ctx->hwnd);
}
if(ctx->mutex)
CloseHandle(ctx->mutex);
if(ctx->event)
CloseHandle(ctx->event);

return 0;
}

static int vfw_read_header(AVFormatContext *s, AVFormatParameters *ap)
{
@@ -402,23 +417,6 @@ static int vfw_read_packet(AVFormatContext *s, AVPacket *pkt)
return pkt->size;
}

static int vfw_read_close(AVFormatContext *s)
{
struct vfw_ctx *ctx = s->priv_data;

if(ctx->hwnd) {
SendMessage(ctx->hwnd, WM_CAP_SET_CALLBACK_VIDEOSTREAM, 0, 0);
SendMessage(ctx->hwnd, WM_CAP_DRIVER_DISCONNECT, 0, 0);
DestroyWindow(ctx->hwnd);
}
if(ctx->mutex)
CloseHandle(ctx->mutex);
if(ctx->event)
CloseHandle(ctx->event);

return 0;
}

AVInputFormat vfwcap_demuxer = {
"vfwcap",
NULL_IF_CONFIG_SMALL("VFW video capture"),


Loading…
Cancel
Save