Coverage Report

Created: 2025-08-29 06:30

/src/vlc/src/input/var.c
Line
Count
Source (jump to first uncovered line)
1
/*****************************************************************************
2
 * var.c: object variables for input thread
3
 *****************************************************************************
4
 * Copyright (C) 2004-2007 VLC authors and VideoLAN
5
 *
6
 * Authors: Laurent Aimar <fenrir@via.ecp.fr>
7
 *
8
 * This program is free software; you can redistribute it and/or modify it
9
 * under the terms of the GNU Lesser General Public License as published by
10
 * the Free Software Foundation; either version 2.1 of the License, or
11
 * (at your option) any later version.
12
 *
13
 * This program is distributed in the hope that it will be useful,
14
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16
 * GNU Lesser General Public License for more details.
17
 *
18
 * You should have received a copy of the GNU Lesser General Public License
19
 * along with this program; if not, write to the Free Software Foundation,
20
 * Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
21
 *****************************************************************************/
22
23
/*****************************************************************************
24
 * Preamble
25
 *****************************************************************************/
26
#ifdef HAVE_CONFIG_H
27
# include "config.h"
28
#endif
29
30
#include <vlc_common.h>
31
#include <assert.h>
32
33
#include "input_internal.h"
34
35
/*****************************************************************************
36
 * input_ConfigVarInit:
37
 *  Create all config object variables
38
 *****************************************************************************/
39
void vlc_object_InitInputConfig(vlc_object_t *obj,
40
                                bool playback, bool do_inherit)
41
1
{
42
    /* Create Object Variables for private use only */
43
1
    int inherit_flag = do_inherit ? VLC_VAR_DOINHERIT : 0;
44
45
1
    if (playback)
46
1
    {
47
1
        var_Create(obj, "video", VLC_VAR_BOOL | inherit_flag);
48
1
        var_Create(obj, "audio", VLC_VAR_BOOL | inherit_flag);
49
1
        var_Create(obj, "spu", VLC_VAR_BOOL | inherit_flag);
50
51
1
        var_Create(obj, "video-track", VLC_VAR_INTEGER|inherit_flag);
52
1
        var_Create(obj, "audio-track", VLC_VAR_INTEGER|inherit_flag);
53
1
        var_Create(obj, "sub-track", VLC_VAR_INTEGER|inherit_flag);
54
55
1
        var_Create(obj, "audio-language",
56
1
                    VLC_VAR_STRING|inherit_flag);
57
1
        var_Create(obj, "sub-language",
58
1
                    VLC_VAR_STRING|inherit_flag);
59
1
        var_Create(obj, "menu-language",
60
1
                    VLC_VAR_STRING|inherit_flag);
61
62
1
        var_Create(obj, "video-track-id",
63
1
                    VLC_VAR_STRING|inherit_flag);
64
1
        var_Create(obj, "audio-track-id",
65
1
                    VLC_VAR_STRING|inherit_flag);
66
1
        var_Create(obj, "sub-track-id",
67
1
                    VLC_VAR_STRING|inherit_flag);
68
69
1
        var_Create(obj, "sub-file", VLC_VAR_STRING | inherit_flag);
70
1
        var_Create(obj, "sub-autodetect-file", VLC_VAR_BOOL |
71
1
                    inherit_flag);
72
1
        var_Create(obj, "sub-autodetect-path", VLC_VAR_STRING |
73
1
                    inherit_flag);
74
1
        var_Create(obj, "sub-autodetect-fuzzy", VLC_VAR_INTEGER |
75
1
                    inherit_flag);
76
77
1
        var_Create(obj, "sout", VLC_VAR_STRING | inherit_flag);
78
1
        var_Create(obj, "sout-all",   VLC_VAR_BOOL | inherit_flag);
79
1
        var_Create(obj, "sout-audio", VLC_VAR_BOOL | inherit_flag);
80
1
        var_Create(obj, "sout-video", VLC_VAR_BOOL | inherit_flag);
81
1
        var_Create(obj, "sout-spu", VLC_VAR_BOOL | inherit_flag);
82
1
        var_Create(obj, "sout-keep",  VLC_VAR_BOOL | inherit_flag);
83
84
1
        var_Create(obj, "input-repeat",
85
1
                    VLC_VAR_INTEGER|inherit_flag);
86
1
        var_Create(obj, "start-time", VLC_VAR_FLOAT|inherit_flag);
87
1
        var_Create(obj, "stop-time", VLC_VAR_FLOAT|inherit_flag);
88
1
        var_Create(obj, "run-time", VLC_VAR_FLOAT|inherit_flag);
89
1
        var_Create(obj, "input-fast-seek", VLC_VAR_BOOL|inherit_flag);
90
91
1
        var_Create(obj, "input-slave",
92
1
                    VLC_VAR_STRING | inherit_flag);
93
94
1
        var_Create(obj, "audio-desync",
95
1
                    VLC_VAR_INTEGER | inherit_flag);
96
1
        var_Create(obj, "cr-average",
97
1
                    VLC_VAR_INTEGER | inherit_flag);
98
1
        var_Create(obj, "clock-synchro",
99
1
                    VLC_VAR_INTEGER | inherit_flag);
100
101
1
        var_Create(obj, "bookmarks", VLC_VAR_STRING | inherit_flag);
102
1
        var_Create(obj, "programs", VLC_VAR_STRING | inherit_flag);
103
1
        var_Create(obj, "program", VLC_VAR_INTEGER | inherit_flag);
104
1
        var_Create(obj, "rate", VLC_VAR_FLOAT | inherit_flag);
105
1
    }
106
107
    /* */
108
1
    var_Create(obj, "input-record-native", VLC_VAR_BOOL | inherit_flag);
109
110
    /* */
111
1
    var_Create(obj, "demux", VLC_VAR_STRING | inherit_flag);
112
1
    var_Create(obj, "demux-filter", VLC_VAR_STRING | inherit_flag);
113
1
    var_Create(obj, "stream-filter", VLC_VAR_STRING | inherit_flag);
114
115
    /* Meta */
116
1
    var_Create(obj, "meta-title", VLC_VAR_STRING | inherit_flag);
117
1
    var_Create(obj, "meta-author", VLC_VAR_STRING | inherit_flag);
118
1
    var_Create(obj, "meta-artist", VLC_VAR_STRING | inherit_flag);
119
1
    var_Create(obj, "meta-genre", VLC_VAR_STRING | inherit_flag);
120
1
    var_Create(obj, "meta-copyright", VLC_VAR_STRING | inherit_flag);
121
1
    var_Create(obj, "meta-description", VLC_VAR_STRING|inherit_flag);
122
1
    var_Create(obj, "meta-date", VLC_VAR_STRING | inherit_flag);
123
1
    var_Create(obj, "meta-url", VLC_VAR_STRING | inherit_flag);
124
125
    /* Inherited by demux/subtitle.c */
126
1
    var_Create(obj, "sub-original-fps", VLC_VAR_FLOAT);
127
128
    /* used by Medialibrary */
129
1
    var_Create(obj, "save-recentplay", VLC_VAR_BOOL | inherit_flag);
130
1
}