1 /*****************************************************************************
2 * adummy.c : dummy audio output plugin
3 *****************************************************************************
4 * Copyright (C) 2002 VLC authors and VideoLAN
7 * Authors: Christophe Massiot <massiot@via.ecp.fr>
9 * This program is free software; you can redistribute it and/or modify it
10 * under the terms of the GNU Lesser General Public License as published by
11 * the Free Software Foundation; either version 2.1 of the License, or
12 * (at your option) any later version.
14 * This program is distributed in the hope that it will be useful,
15 * but WITHOUT ANY WARRANTY; without even the implied warranty of
16 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17 * GNU Lesser General Public License for more details.
19 * You should have received a copy of the GNU Lesser General Public License
20 * along with this program; if not, write to the Free Software Foundation,
21 * Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
22 *****************************************************************************/
28 #include <vlc_common.h>
29 #include <vlc_plugin.h>
33 static int Open( vlc_object_t
* p_this
);
36 set_shortname( N_("Dummy") )
37 set_description( N_("Dummy audio output") )
38 set_capability( "audio output", 0 )
39 set_callbacks( Open
, NULL
)
40 add_shortcut( "dummy" )
43 #define A52_FRAME_NB 1536
45 static void Play(audio_output_t
*aout
, block_t
*block
)
47 block_Release( block
);
51 static void Flush(audio_output_t
*aout
, bool wait
)
53 (void) aout
; (void) wait
;
56 static int Start(audio_output_t
*aout
, audio_sample_format_t
*restrict fmt
)
60 switch (fmt
->i_format
)
64 fmt
->i_format
= VLC_CODEC_SPDIFL
;
65 fmt
->i_bytes_per_frame
= 4;
66 fmt
->i_frame_length
= 1;
69 case VLC_CODEC_TRUEHD
:
71 fmt
->i_format
= VLC_CODEC_SPDIFL
;
73 fmt
->i_bytes_per_frame
= 16;
74 fmt
->i_frame_length
= 1;
77 assert(AOUT_FMT_LINEAR(fmt
));
78 assert(aout_FormatNbChannels(fmt
) > 0);
79 fmt
->i_format
= HAVE_FPU
? VLC_CODEC_FL32
: VLC_CODEC_S16N
;
80 fmt
->channel_type
= AUDIO_CHANNEL_TYPE_BITMAP
;
87 static int Open(vlc_object_t
*obj
)
89 audio_output_t
*aout
= (audio_output_t
*)obj
;
92 aout
->time_get
= NULL
;
97 aout
->volume_set
= NULL
;
98 aout
->mute_set
= NULL
;