mirror of https://github.com/FFmpeg/FFmpeg.git
Originally committed as revision 11077 to svn://svn.ffmpeg.org/ffmpeg/trunkpull/126/head
parent
489b0d4d98
commit
c721d803cb
19 changed files with 145 additions and 25 deletions
@ -0,0 +1,28 @@ |
||||
include ../config.mak |
||||
|
||||
NAME=avdevice
|
||||
LIBVERSION=$(LAVDVERSION)
|
||||
LIBMAJOR=$(LAVDMAJOR)
|
||||
|
||||
CFLAGS += -I$(SRC_PATH)/libavcodec -I$(SRC_PATH)/libavformat
|
||||
|
||||
OBJS = alldevices.o
|
||||
|
||||
HEADERS = avdevice.h
|
||||
|
||||
# input/output devices
|
||||
OBJS-$(CONFIG_BKTR_DEMUXER) += bktr.o
|
||||
OBJS-$(CONFIG_DV1394_DEMUXER) += dv1394.o
|
||||
OBJS-$(CONFIG_OSS_DEMUXER) += audio.o
|
||||
OBJS-$(CONFIG_OSS_MUXER) += audio.o
|
||||
OBJS-$(CONFIG_V4L2_DEMUXER) += v4l2.o
|
||||
OBJS-$(CONFIG_V4L_DEMUXER) += v4l.o
|
||||
OBJS-$(CONFIG_X11_GRAB_DEVICE_DEMUXER) += x11grab.o
|
||||
|
||||
# external libraries
|
||||
OBJS-$(CONFIG_LIBDC1394_DEMUXER) += libdc1394.o
|
||||
|
||||
CPPOBJS-$(CONFIG_AUDIO_BEOS_DEMUXER) += beosaudio.o
|
||||
CPPOBJS-$(CONFIG_AUDIO_BEOS_MUXER) += beosaudio.o
|
||||
|
||||
include ../common.mak |
@ -0,0 +1,50 @@ |
||||
/*
|
||||
* Register all the grabbing devices. |
||||
* |
||||
* This file is part of FFmpeg. |
||||
* |
||||
* FFmpeg is free software; you can redistribute it and/or |
||||
* modify it under the terms of the GNU Lesser General Public |
||||
* License as published by the Free Software Foundation; either |
||||
* version 2.1 of the License, or (at your option) any later version. |
||||
* |
||||
* FFmpeg is distributed in the hope that it will be useful, |
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
||||
* Lesser General Public License for more details. |
||||
* |
||||
* You should have received a copy of the GNU Lesser General Public |
||||
* License along with FFmpeg; if not, write to the Free Software |
||||
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA |
||||
*/ |
||||
#include "avformat.h" |
||||
#include "avdevice.h" |
||||
|
||||
#define REGISTER_OUTDEV(X,x) { \ |
||||
extern AVOutputFormat x##_muxer; \
|
||||
if(ENABLE_##X##_MUXER) av_register_output_format(&x##_muxer); } |
||||
#define REGISTER_INDEV(X,x) { \ |
||||
extern AVInputFormat x##_demuxer; \
|
||||
if(ENABLE_##X##_DEMUXER) av_register_input_format(&x##_demuxer); } |
||||
#define REGISTER_INOUTDEV(X,x) REGISTER_INDEV(X,x); REGISTER_OUTDEV(X,x) |
||||
|
||||
void avdevice_register_all(void) |
||||
{ |
||||
static int inited; |
||||
|
||||
if (inited) |
||||
return; |
||||
inited = 1; |
||||
|
||||
/* devices */ |
||||
REGISTER_INOUTDEV (AUDIO_BEOS, audio_beos); |
||||
REGISTER_INDEV (BKTR, bktr); |
||||
REGISTER_INDEV (DV1394, dv1394); |
||||
REGISTER_INOUTDEV (OSS, oss); |
||||
REGISTER_INDEV (V4L2, v4l2); |
||||
REGISTER_INDEV (V4L, v4l); |
||||
REGISTER_INDEV (X11_GRAB_DEVICE, x11_grab_device); |
||||
|
||||
/* external libraries */ |
||||
REGISTER_INDEV (LIBDC1394, libdc1394); |
||||
} |
@ -0,0 +1,33 @@ |
||||
/*
|
||||
* This file is part of FFmpeg. |
||||
* |
||||
* FFmpeg is free software; you can redistribute it and/or |
||||
* modify it under the terms of the GNU Lesser General Public |
||||
* License as published by the Free Software Foundation; either |
||||
* version 2.1 of the License, or (at your option) any later version. |
||||
* |
||||
* FFmpeg is distributed in the hope that it will be useful, |
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
||||
* Lesser General Public License for more details. |
||||
* |
||||
* You should have received a copy of the GNU Lesser General Public |
||||
* License along with FFmpeg; if not, write to the Free Software |
||||
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA |
||||
*/ |
||||
|
||||
#ifndef FFMPEG_AVDEVICE_H |
||||
#define FFMPEG_AVDEVICE_H |
||||
|
||||
#define LIBAVDEVICE_VERSION_INT ((52<<16)+(0<<8)+0) |
||||
#define LIBAVDEVICE_VERSION 52.0.0 |
||||
#define LIBAVDEVICE_BUILD LIBAVDEVICE_VERSION_INT |
||||
|
||||
/**
|
||||
* Initialize libavdevice and register all the input and output devices. |
||||
* @warning This function is not thread safe. |
||||
*/ |
||||
void avdevice_register_all(void); |
||||
|
||||
#endif /* FFMPEG_AVDEVICE_H */ |
||||
|
Loading…
Reference in new issue