2007-11-22 18:10:02 +02:00
|
|
|
/*
|
2011-03-18 19:35:10 +02:00
|
|
|
* This file is part of Libav.
|
2007-11-22 18:10:02 +02:00
|
|
|
*
|
2011-03-18 19:35:10 +02:00
|
|
|
* Libav is free software; you can redistribute it and/or
|
2007-11-22 18:10:02 +02:00
|
|
|
* 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.
|
|
|
|
*
|
2011-03-18 19:35:10 +02:00
|
|
|
* Libav is distributed in the hope that it will be useful,
|
2007-11-22 18:10:02 +02:00
|
|
|
* 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
|
2011-03-18 19:35:10 +02:00
|
|
|
* License along with Libav; if not, write to the Free Software
|
2007-11-22 18:10:02 +02:00
|
|
|
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
|
|
|
*/
|
|
|
|
|
2008-08-31 10:39:47 +03:00
|
|
|
#ifndef AVDEVICE_AVDEVICE_H
|
|
|
|
#define AVDEVICE_AVDEVICE_H
|
2007-11-22 18:10:02 +02:00
|
|
|
|
2012-07-01 12:51:30 +03:00
|
|
|
#include "version.h"
|
|
|
|
|
2011-12-11 14:43:50 +03:00
|
|
|
/**
|
|
|
|
* @file
|
|
|
|
* @ingroup lavd
|
|
|
|
* Main libavdevice API header
|
|
|
|
*/
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @defgroup lavd Special devices muxing/demuxing library
|
|
|
|
* @{
|
|
|
|
* Libavdevice is a complementary library to @ref libavf "libavformat". It
|
|
|
|
* provides various "special" platform-specific muxers and demuxers, e.g. for
|
|
|
|
* grabbing devices, audio capture and playback etc. As a consequence, the
|
|
|
|
* (de)muxers in libavdevice are of the AVFMT_NOFILE type (they use their own
|
|
|
|
* I/O functions). The filename passed to avformat_open_input() often does not
|
|
|
|
* refer to an actually existing file, but has some special device-specific
|
2012-07-21 22:28:54 +03:00
|
|
|
* meaning - e.g. for x11grab it is the display name.
|
2011-12-11 14:43:50 +03:00
|
|
|
*
|
|
|
|
* To use libavdevice, simply call avdevice_register_all() to register all
|
|
|
|
* compiled muxers and demuxers. They all use standard libavformat API.
|
|
|
|
* @}
|
|
|
|
*/
|
|
|
|
|
2008-08-08 21:42:31 +03:00
|
|
|
/**
|
2010-06-30 18:38:06 +03:00
|
|
|
* Return the LIBAVDEVICE_VERSION_INT constant.
|
2008-08-08 21:42:31 +03:00
|
|
|
*/
|
|
|
|
unsigned avdevice_version(void);
|
|
|
|
|
2009-11-18 19:15:17 +02:00
|
|
|
/**
|
2010-06-30 18:38:06 +03:00
|
|
|
* Return the libavdevice build-time configuration.
|
2009-11-18 19:15:17 +02:00
|
|
|
*/
|
2010-02-06 01:24:08 +02:00
|
|
|
const char *avdevice_configuration(void);
|
2009-11-18 19:15:17 +02:00
|
|
|
|
|
|
|
/**
|
2010-06-30 18:38:06 +03:00
|
|
|
* Return the libavdevice license.
|
2009-11-18 19:15:17 +02:00
|
|
|
*/
|
2010-02-06 01:24:08 +02:00
|
|
|
const char *avdevice_license(void);
|
2009-11-18 19:15:17 +02:00
|
|
|
|
2007-11-22 18:10:02 +02:00
|
|
|
/**
|
|
|
|
* Initialize libavdevice and register all the input and output devices.
|
|
|
|
* @warning This function is not thread safe.
|
|
|
|
*/
|
|
|
|
void avdevice_register_all(void);
|
|
|
|
|
2008-08-31 10:39:47 +03:00
|
|
|
#endif /* AVDEVICE_AVDEVICE_H */
|