VLC
2.1.0-git
Main Page
Related Pages
Modules
Data Structures
Files
File List
Globals
All
Data Structures
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
Groups
Pages
src
input
demux.h
Go to the documentation of this file.
1
/*****************************************************************************
2
* demux.h: Input demux functions
3
*****************************************************************************
4
* Copyright (C) 1998-2008 VLC authors and VideoLAN
5
* Copyright (C) 2008 Laurent Aimar
6
* $Id: 3372f17229d5ff15ab1729464a0db7ac202eb1ab $
7
*
8
* Authors: Laurent Aimar <fenrir@via.ecp.fr>
9
*
10
* This program is free software; you can redistribute it and/or modify it
11
* under the terms of the GNU Lesser General Public License as published by
12
* the Free Software Foundation; either version 2.1 of the License, or
13
* (at your option) any later version.
14
*
15
* This program is distributed in the hope that it will be useful,
16
* but WITHOUT ANY WARRANTY; without even the implied warranty of
17
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18
* GNU Lesser General Public License for more details.
19
*
20
* You should have received a copy of the GNU Lesser General Public License
21
* along with this program; if not, write to the Free Software Foundation,
22
* Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
23
*****************************************************************************/
24
25
#ifndef LIBVLC_INPUT_DEMUX_H
26
#define LIBVLC_INPUT_DEMUX_H 1
27
28
#include <
vlc_common.h
>
29
#include <
vlc_demux.h
>
30
31
#include "
stream.h
"
32
33
/* stream_t *s could be null and then it mean a access+demux in one */
34
demux_t
*
demux_New
(
vlc_object_t
*p_obj,
input_thread_t
*p_parent_input,
const
char
*psz_access,
const
char
*psz_demux,
const
char
*psz_path,
stream_t
*s,
es_out_t
*out,
bool
);
35
#define demux_New( a, b, c, d, e, f, g, h ) demux_New(VLC_OBJECT(a),b,c,d,e,f,g,h)
36
37
void
demux_Delete
(
demux_t
* );
38
39
static
inline
int
demux_Demux
(
demux_t
*p_demux )
40
{
41
if
( !p_demux->
pf_demux
)
42
return
1;
43
44
return
p_demux->
pf_demux
( p_demux );
45
}
46
static
inline
int
demux_vaControl
(
demux_t
*p_demux,
int
i_query, va_list args )
47
{
48
return
p_demux->
pf_control
( p_demux, i_query, args );
49
}
50
static
inline
int
demux_Control
(
demux_t
*p_demux,
int
i_query, ... )
51
{
52
va_list args;
53
int
i_result;
54
55
va_start( args, i_query );
56
i_result =
demux_vaControl
( p_demux, i_query, args );
57
va_end( args );
58
return
i_result;
59
}
60
61
#endif
Generated by
1.8.1.2