vlc_config_cat.h 11.5 KB
Newer Older
Clément Stenac's avatar
Clément Stenac committed
1
/*****************************************************************************
Clément Stenac's avatar
Clément Stenac committed
2
 * vlc_config_cat.h : Definition of configuration categories
Clément Stenac's avatar
Clément Stenac committed
3
 *****************************************************************************
4
 * Copyright (C) 2003 the VideoLAN team
5
 * $Id$
Clément Stenac's avatar
Clément Stenac committed
6
 *
Rémi Denis-Courmont's avatar
Rémi Denis-Courmont committed
7
 * Authors: Clément Stenac <zorglub@videolan.org>
Clément Stenac's avatar
Clément Stenac committed
8 9 10 11 12 13 14 15 16 17 18 19 20 21
 *          Anil Daoud <anil@videolan.org>
 *
 * This program is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation; either version 2 of the License, or
 * (at your option) any later version.
 *
 * This program 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 General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program; if not, write to the Free Software
Antoine Cellerier's avatar
Antoine Cellerier committed
22
 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
Clément Stenac's avatar
Clément Stenac committed
23 24
 *****************************************************************************/

25 26
#ifndef VLC_HELP_H
#define VLC_HELP_H 1
Clément Stenac's avatar
Clément Stenac committed
27 28 29 30 31 32 33

/*
 *  First, we need help strings for the General Settings and for the
 *  Plugins screen
 */
#define MAIN_TITLE N_( "VLC preferences" )
#define MAIN_HELP N_( \
34
    "Select \"Advanced Options\" to see all options." )
Clément Stenac's avatar
Clément Stenac committed
35 36 37

/* Interface */
#define INTF_TITLE N_("Interface")
38
#define INTF_HELP  N_( "Settings for VLC's interfaces" )
Clément Stenac's avatar
Clément Stenac committed
39

40
#define INTF_GENERAL_HELP N_( "Main interfaces settings" )
Clément Stenac's avatar
Clément Stenac committed
41

Clément Stenac's avatar
Clément Stenac committed
42 43 44
#define INTF_MAIN_TITLE  N_( "Main interfaces" )
#define INTF_MAIN_HELP N_( "Settings for the main interface" )

Clément Stenac's avatar
Clément Stenac committed
45
#define INTF_CONTROL_TITLE N_( "Control interfaces" )
46
#define INTF_CONTROL_HELP N_( "Settings for VLC's control interfaces" )
Clément Stenac's avatar
Clément Stenac committed
47 48 49 50 51 52 53 54 55 56 57

#define INTF_HOTKEYS_TITLE N_( "Hotkeys settings" )
#define INTF_HOTKEYS_HELP N_( "Hotkeys settings" )

/* Audio */
#define AUDIO_TITLE N_( "Audio" )
#define AUDIO_HELP N_( "Audio settings" )

#define AUDIO_GENERAL_HELP N_("General audio settings")

#define AFILTER_TITLE N_("Filters")
58
#define AFILTER_HELP N_( "Audio filters are used to process the audio stream." )
Clément Stenac's avatar
Clément Stenac committed
59 60

#define AVISUAL_TITLE N_("Visualizations")
61
#define AVISUAL_HELP N_( "Audio visualizations" )
Clément Stenac's avatar
Clément Stenac committed
62 63

#define AOUT_TITLE N_( "Output modules" )
64
#define AOUT_HELP N_("General settings for audio output modules.")
Clément Stenac's avatar
Clément Stenac committed
65 66

#define AMISC_TITLE N_("Miscellaneous")
67
#define AMISC_HELP N_( "Miscellaneous audio settings and modules." )
Clément Stenac's avatar
Clément Stenac committed
68 69 70 71 72

/* Video */
#define VIDEO_TITLE N_("Video")
#define VIDEO_HELP N_("Video settings")

73
#define VIDEO_GENERAL_HELP N_( "General video settings" )
Clément Stenac's avatar
Clément Stenac committed
74 75 76 77 78 79 80

#define _VOUT_TITLE N_("Output modules" )
#define VOUT_HELP N_( \
    "Choose your preferred video output and configure it here." )

#define VFILTER_TITLE N_("Filters" )
#define VFILTER_HELP N_( \
81
    "Video filters are used to process the video stream." )
Clément Stenac's avatar
Clément Stenac committed
82 83

#define SUBPIC_TITLE N_( "Subtitles/OSD")
84 85
#define SUBPIC_HELP N_( "Settings related to On-Screen-Display,"\
        " subtitles and \"overlay subpictures\"")
86
/*
Clément Stenac's avatar
Clément Stenac committed
87 88 89
#define TEXT_TITLE N_("Text rendering")
#define TEXT_HELP N_( \
    "Use the settings of the \"freetype\" module to choose the font you " \
90
    "want VLC to use for text rendering (to display subtitles for example).")
91
*/
Clément Stenac's avatar
Clément Stenac committed
92 93
/* Input */
#define INPUT_TITLE N_( "Input / Codecs" )
94 95
#define INPUT_HELP N_( "Settings for input, demultiplexing, " \
         "decoding and encoding")
Clément Stenac's avatar
Clément Stenac committed
96 97 98

#define ACCESS_TITLE N_( "Access modules" )
#define ACCESS_HELP N_( \
99
    "Settings related to the various access methods. " \
Clément Stenac's avatar
Clément Stenac committed
100 101 102
    "Common settings you may want to alter are HTTP proxy or " \
    "caching settings." )

103 104 105
#define STREAM_FILTER_TITLE N_( "Stream filters" )
#define STREAM_FILTER_HELP N_( \
    "Stream filters are special modules that allow advanced operations on " \
106
    "the input side of VLC. Use with care..." )
107

Clément Stenac's avatar
Clément Stenac committed
108
#define DEMUX_TITLE N_("Demuxers")
109
#define DEMUX_HELP N_( "Demuxers are used to separate audio and video streams." )
Clément Stenac's avatar
Clément Stenac committed
110 111

#define VDEC_TITLE  N_( "Video codecs" )
112
#define VDEC_HELP N_( "Settings for the video, images or video+audio decoders and encoders." )
Clément Stenac's avatar
Clément Stenac committed
113 114

#define ADEC_TITLE  N_( "Audio codecs" )
115
#define ADEC_HELP N_( "Settings for the audio-only decoders and encoders." )
Clément Stenac's avatar
Clément Stenac committed
116

117 118
#define SDEC_TITLE N_( "Subtitles codecs")
#define SDEC_HELP N_( "Settings for subtitles, teletext and CC decoders and encoders." )
Clément Stenac's avatar
Clément Stenac committed
119

120 121
#define ADVANCED_TITLE N_("General Input" )
#define ADVANCED_HELP N_( "General input settings. Use with care..." )
Clément Stenac's avatar
Clément Stenac committed
122 123 124 125

/* Sout */
#define SOUT_TITLE N_( "Stream output" )
#define SOUT_HELP N_( \
126 127
      "Stream output settings are used when acting as a streaming server " \
      "or when saving incoming streams.\n" \
Clément Stenac's avatar
Clément Stenac committed
128 129 130 131
      "Streams are first muxed and then sent through an \"access output\" "\
      "module that can either save the stream to a file, or stream " \
      "it (UDP, HTTP, RTP/RTSP).\n" \
      "Sout streams modules allow advanced stream processing (transcoding, "\
132
      "duplicating...).")
Clément Stenac's avatar
Clément Stenac committed
133 134 135 136

#define SOUT_GENERAL_HELP N_( "General stream output settings")

#define SOUT_MUX_TITLE N_( "Muxers" )
137 138 139 140 141 142 143
#define SOUT_MUX_HELP N_( \
       "Muxers create the encapsulation formats that are used to " \
       "put all the elementary streams (video, audio, ...) " \
       "together. This setting allows you to always force a specific muxer. " \
       "You should probably not do that.\n" \
       "You can also set default parameters for each muxer." )

Clément Stenac's avatar
Clément Stenac committed
144
#define SOUT_ACO_TITLE N_( "Access output" )
145 146 147 148 149
#define SOUT_ACO_HELP N_( \
   "Access output modules control the ways the muxed streams are sent. " \
   "This setting allows you to always force a specific access output method. " \
   "You should probably not do that.\n" \
   "You can also set default parameters for each access output.")
Clément Stenac's avatar
Clément Stenac committed
150 151

#define SOUT_PACKET_TITLE N_( "Packetizers" )
152
#define SOUT_PACKET_HELP N_( \
Christophe Mutricy's avatar
typo  
Christophe Mutricy committed
153
        "Packetizers are used to \"preprocess\" the elementary "\
154 155 156 157
        "streams before muxing. " \
        "This setting allows you to always force a packetizer. " \
        "You should probably not do that.\n" \
        "You can also set default parameters for each packetizer." )
Clément Stenac's avatar
Clément Stenac committed
158 159 160 161 162 163 164 165

#define SOUT_STREAM_TITLE N_("Sout stream")
#define SOUT_STREAM_HELP N_( "Sout stream modules allow to build a sout " \
                "processing chain. Please refer to the Streaming Howto for " \
                "more information. You can configure default options for " \
                "each sout stream module here.")

#define SOUT_SAP_TITLE N_( "SAP" )
166 167 168
#define SOUT_SAP_HELP N_( \
                 "SAP is a way to publically announce streams that are being "\
                 "sent using multicast UDP or RTP." )
Clément Stenac's avatar
Clément Stenac committed
169 170 171 172 173 174 175

#define SOUT_VOD_TITLE N_( "VOD" )
#define SOUT_VOD_HELP N_( "VLC's implementation of Video On Demand" )


/* Playlist */
#define PLAYLIST_TITLE N_( "Playlist" )
176 177 178
#define PLAYLIST_HELP N_( "Settings related to playlist behaviour " \
        "(e.g. playback mode) and to modules that automatically add "\
        "items to the playlist (\"service discovery\" modules).")
Clément Stenac's avatar
Clément Stenac committed
179 180 181

#define PGENERAL_HELP N_( "General playlist behaviour")
#define SD_TITLE N_("Services discovery")
182 183
#define SD_HELP N_("Services discovery modules are facilities "\
        "that automatically add items to playlist.")
Clément Stenac's avatar
Clément Stenac committed
184 185 186

/* Advanced */
#define AADVANCED_TITLE N_( "Advanced" )
187
#define AADVANCED_HELP N_( "Advanced settings. Use with care...")
Clément Stenac's avatar
Clément Stenac committed
188 189

#define CPU_TITLE N_( "CPU features" )
190
#define CPU_HELP N_( "You can choose to disable some CPU accelerations " \
191
        "here. Use with extreme care!" )
Clément Stenac's avatar
Clément Stenac committed
192

Clément Stenac's avatar
Clément Stenac committed
193
#define MISC_TITLE N_( "Advanced settings" )
Clément Stenac's avatar
Clément Stenac committed
194

195 196 197

/* OLD */
#if 0
Clément Stenac's avatar
Clément Stenac committed
198 199
#define NETWORK_TITLE N_( "Network" )
#define NETWORK_HELP N_( "These modules provide network functions to all " \
200
                "other parts of VLC." )
Clément Stenac's avatar
Clément Stenac committed
201 202 203 204 205

#define CHROMA_TITLE N_("Chroma modules settings")
#define CHROMA_HELP N_("These settings affect chroma transformation modules.")

#define PACKETIZER_TITLE  N_("Packetizer modules settings" )
206 207
#define PACKETIZER_HELP "These are general settings for the "\
        "packetizers used in VLC's stream output subsystem."
Clément Stenac's avatar
Clément Stenac committed
208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227

#define ENCODER_TITLE N_("Encoders settings")
#define ENCODER_HELP N_( \
    "These are general settings for video/audio/subtitles encoding modules.")


#define DIALOGS_TITLE N_("Dialog providers settings")
#define DIALOGS_HELP  N_( \
    "Dialog providers can be configured here.")

#define SUBTITLE_DEMUX_TITLE N_("Subtitle demuxer settings")
#define SUBTITLE_DEMUX_HELP N_( \
    "In this section you can force the behavior of the subtitle demuxer, " \
    "for example by setting the subtitles type or file name.")

/*
 *  A little help for modules with unknown capabilities
 */

#define UNKNOWN_TITLE N_("No help available" )
228
#define UNKNOWN_HELP N_("There is no help available for these modules.")
229
#endif
Clément Stenac's avatar
Clément Stenac committed
230

Clément Stenac's avatar
Clément Stenac committed
231
/* This function is deprecated and is kept only for compatibility */
232
static const struct config_category_t categories_array[] =
Clément Stenac's avatar
Clément Stenac committed
233 234 235
{
    /* Interface */
    { CAT_INTERFACE, INTF_TITLE, INTF_HELP },
236
    { SUBCAT_INTERFACE_GENERAL, INTF_TITLE, INTF_GENERAL_HELP },
Clément Stenac's avatar
Clément Stenac committed
237
    { SUBCAT_INTERFACE_MAIN, INTF_MAIN_TITLE, INTF_MAIN_HELP },
Clément Stenac's avatar
Clément Stenac committed
238 239 240 241
    { SUBCAT_INTERFACE_CONTROL, INTF_CONTROL_TITLE, INTF_CONTROL_HELP },
    { SUBCAT_INTERFACE_HOTKEYS, INTF_HOTKEYS_TITLE, INTF_HOTKEYS_HELP },

    { CAT_AUDIO, AUDIO_TITLE, AUDIO_HELP },
242
    { SUBCAT_AUDIO_GENERAL, AUDIO_TITLE, AUDIO_GENERAL_HELP },
Clément Stenac's avatar
Clément Stenac committed
243 244 245 246 247 248
    { SUBCAT_AUDIO_AOUT, AOUT_TITLE, AOUT_HELP },
    { SUBCAT_AUDIO_AFILTER, AFILTER_TITLE, AFILTER_HELP },
    { SUBCAT_AUDIO_VISUAL, AVISUAL_TITLE, AVISUAL_HELP },
    { SUBCAT_AUDIO_MISC, AMISC_TITLE, AMISC_HELP },

    { CAT_VIDEO, VIDEO_TITLE, VIDEO_HELP },
249
    { SUBCAT_VIDEO_GENERAL, VIDEO_TITLE, VIDEO_GENERAL_HELP },
Clément Stenac's avatar
Clément Stenac committed
250 251 252 253 254
    { SUBCAT_VIDEO_VOUT, _VOUT_TITLE, VOUT_HELP },
    { SUBCAT_VIDEO_VFILTER, VFILTER_TITLE, VFILTER_HELP },
    { SUBCAT_VIDEO_SUBPIC, SUBPIC_TITLE, SUBPIC_HELP },

    { CAT_INPUT, INPUT_TITLE, INPUT_HELP },
255
    { SUBCAT_INPUT_GENERAL, INPUT_TITLE, INPUT_HELP },
Clément Stenac's avatar
Clément Stenac committed
256 257 258 259 260
    { SUBCAT_INPUT_ACCESS, ACCESS_TITLE, ACCESS_HELP },
    { SUBCAT_INPUT_DEMUX, DEMUX_TITLE, DEMUX_HELP },
    { SUBCAT_INPUT_VCODEC, VDEC_TITLE, VDEC_HELP },
    { SUBCAT_INPUT_ACODEC, ADEC_TITLE, ADEC_HELP },
    { SUBCAT_INPUT_SCODEC, SDEC_TITLE, SDEC_HELP },
261
    { SUBCAT_INPUT_STREAM_FILTER, STREAM_FILTER_TITLE, STREAM_FILTER_HELP },
Clément Stenac's avatar
Clément Stenac committed
262 263

    { CAT_SOUT, SOUT_TITLE, SOUT_HELP },
264
    { SUBCAT_SOUT_GENERAL, SOUT_TITLE, SOUT_GENERAL_HELP },
Clément Stenac's avatar
Clément Stenac committed
265 266 267 268 269 270 271 272
    { SUBCAT_SOUT_STREAM, SOUT_STREAM_TITLE, SOUT_STREAM_HELP },
    { SUBCAT_SOUT_MUX, SOUT_MUX_TITLE, SOUT_MUX_HELP },
    { SUBCAT_SOUT_ACO, SOUT_ACO_TITLE, SOUT_ACO_HELP },
    { SUBCAT_SOUT_PACKETIZER, SOUT_PACKET_TITLE, SOUT_PACKET_HELP },
    { SUBCAT_SOUT_SAP, SOUT_SAP_TITLE, SOUT_SAP_HELP },
    { SUBCAT_SOUT_VOD, SOUT_VOD_TITLE, SOUT_VOD_HELP },

    { CAT_PLAYLIST, PLAYLIST_TITLE , PLAYLIST_HELP },
273
    { SUBCAT_PLAYLIST_GENERAL, PLAYLIST_TITLE, PGENERAL_HELP },
Clément Stenac's avatar
Clément Stenac committed
274 275 276 277
    { SUBCAT_PLAYLIST_SD, SD_TITLE, SD_HELP },

    { CAT_ADVANCED, AADVANCED_TITLE, AADVANCED_HELP },
    { SUBCAT_ADVANCED_CPU, CPU_TITLE, CPU_HELP },
278
    { SUBCAT_ADVANCED_MISC, MISC_TITLE, AADVANCED_HELP },
Clément Stenac's avatar
Clément Stenac committed
279 280 281 282

    { -1, NULL, NULL }
};

283
VLC_USED
Christophe Mutricy's avatar
Christophe Mutricy committed
284
static inline const char *config_CategoryNameGet( int i_value )
Clément Stenac's avatar
Clément Stenac committed
285
{
286
    int i = 0;
Clément Stenac's avatar
Clément Stenac committed
287 288 289 290
    while( categories_array[i].psz_name != NULL )
    {
        if( categories_array[i].i_id == i_value )
        {
291
            return vlc_gettext(categories_array[i].psz_name);
Clément Stenac's avatar
Clément Stenac committed
292 293 294 295 296 297
        }
        i++;
    }
    return NULL;
}

298
VLC_USED
Christophe Mutricy's avatar
Christophe Mutricy committed
299
static inline const char *config_CategoryHelpGet( int i_value )
Clément Stenac's avatar
Clément Stenac committed
300
{
301
    int i = 0;
Clément Stenac's avatar
Clément Stenac committed
302 303 304 305
    while( categories_array[i].psz_help != NULL )
    {
        if( categories_array[i].i_id == i_value )
        {
306
            return vlc_gettext(categories_array[i].psz_help);
Clément Stenac's avatar
Clément Stenac committed
307 308 309 310 311 312 313
        }
        i++;
    }
    return NULL;
}

#endif /* VLC_HELP_H */