annotate stream/stream_radio.h @ 25487:81a77832f5fc

Add a read_varlen function to reduce some code duplication
author reimar
date Sun, 23 Dec 2007 16:42:54 +0000
parents 4587edae1790
children 4129c8cfa742
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
23689
3f0d00abc073 Do not use leading underscores in multiple inclusion guards, they are reserved.
diego
parents: 21042
diff changeset
1 #ifndef STREAM_RADIO_H
3f0d00abc073 Do not use leading underscores in multiple inclusion guards, they are reserved.
diego
parents: 21042
diff changeset
2 #define STREAM_RADIO_H
19568
bd821fd3e244 Radio support, patch by Vladimir Voroshilov (voroshil gmail com)
reimar
parents:
diff changeset
3
bd821fd3e244 Radio support, patch by Vladimir Voroshilov (voroshil gmail com)
reimar
parents:
diff changeset
4 #define RADIO_CHANNEL_LOWER 1
bd821fd3e244 Radio support, patch by Vladimir Voroshilov (voroshil gmail com)
reimar
parents:
diff changeset
5 #define RADIO_CHANNEL_HIGHER 2
bd821fd3e244 Radio support, patch by Vladimir Voroshilov (voroshil gmail com)
reimar
parents:
diff changeset
6
23890
4587edae1790 Replacing global variables in radio:// with
voroshil
parents: 23735
diff changeset
7 typedef struct radio_param_s{
4587edae1790 Replacing global variables in radio:// with
voroshil
parents: 23735
diff changeset
8 /** name of radio device file */
4587edae1790 Replacing global variables in radio:// with
voroshil
parents: 23735
diff changeset
9 char* device;
4587edae1790 Replacing global variables in radio:// with
voroshil
parents: 23735
diff changeset
10 #ifdef HAVE_RADIO_BSDBT848
4587edae1790 Replacing global variables in radio:// with
voroshil
parents: 23735
diff changeset
11 /** minimal allowed frequency */
4587edae1790 Replacing global variables in radio:// with
voroshil
parents: 23735
diff changeset
12 float freq_min;
4587edae1790 Replacing global variables in radio:// with
voroshil
parents: 23735
diff changeset
13 /** maximal allowed frequency */
4587edae1790 Replacing global variables in radio:// with
voroshil
parents: 23735
diff changeset
14 float freq_max;
20985
20110e4437c6 Add *BSD BT848 radio support
voroshil
parents: 20968
diff changeset
15 #endif
23890
4587edae1790 Replacing global variables in radio:// with
voroshil
parents: 23735
diff changeset
16 /** radio driver (v4l,v4l2) */
4587edae1790 Replacing global variables in radio:// with
voroshil
parents: 23735
diff changeset
17 char* driver;
4587edae1790 Replacing global variables in radio:// with
voroshil
parents: 23735
diff changeset
18 /** channels list (see man page) */
4587edae1790 Replacing global variables in radio:// with
voroshil
parents: 23735
diff changeset
19 char** channels;
4587edae1790 Replacing global variables in radio:// with
voroshil
parents: 23735
diff changeset
20 /** initial volume for radio device */
4587edae1790 Replacing global variables in radio:// with
voroshil
parents: 23735
diff changeset
21 int volume;
4587edae1790 Replacing global variables in radio:// with
voroshil
parents: 23735
diff changeset
22 /** name of audio device file to grab data from */
4587edae1790 Replacing global variables in radio:// with
voroshil
parents: 23735
diff changeset
23 char* adevice;
4587edae1790 Replacing global variables in radio:// with
voroshil
parents: 23735
diff changeset
24 /** audio framerate (please also set -rawaudio rate
4587edae1790 Replacing global variables in radio:// with
voroshil
parents: 23735
diff changeset
25 parameter to the same value) */
4587edae1790 Replacing global variables in radio:// with
voroshil
parents: 23735
diff changeset
26 int arate;
4587edae1790 Replacing global variables in radio:// with
voroshil
parents: 23735
diff changeset
27 /** number of audio channels */
4587edae1790 Replacing global variables in radio:// with
voroshil
parents: 23735
diff changeset
28 int achannels;
4587edae1790 Replacing global variables in radio:// with
voroshil
parents: 23735
diff changeset
29 /** if channels parameter exist, here will be channel
4587edae1790 Replacing global variables in radio:// with
voroshil
parents: 23735
diff changeset
30 number otherwise - frequency */
4587edae1790 Replacing global variables in radio:// with
voroshil
parents: 23735
diff changeset
31 float freq_channel;
4587edae1790 Replacing global variables in radio:// with
voroshil
parents: 23735
diff changeset
32 char* capture;
4587edae1790 Replacing global variables in radio:// with
voroshil
parents: 23735
diff changeset
33 } radio_param_t;
4587edae1790 Replacing global variables in radio:// with
voroshil
parents: 23735
diff changeset
34
4587edae1790 Replacing global variables in radio:// with
voroshil
parents: 23735
diff changeset
35 extern radio_param_t stream_radio_defaults;
19568
bd821fd3e244 Radio support, patch by Vladimir Voroshilov (voroshil gmail com)
reimar
parents:
diff changeset
36
bd821fd3e244 Radio support, patch by Vladimir Voroshilov (voroshil gmail com)
reimar
parents:
diff changeset
37 int radio_set_freq(struct stream_st *stream, float freq);
20968
1e6ebb9e49eb add public wrapper for get_frequency
voroshil
parents: 19568
diff changeset
38 int radio_get_freq(struct stream_st *stream, float* freq);
19568
bd821fd3e244 Radio support, patch by Vladimir Voroshilov (voroshil gmail com)
reimar
parents:
diff changeset
39 char* radio_get_channel_name(struct stream_st *stream);
bd821fd3e244 Radio support, patch by Vladimir Voroshilov (voroshil gmail com)
reimar
parents:
diff changeset
40 int radio_set_channel(struct stream_st *stream, char *channel);
bd821fd3e244 Radio support, patch by Vladimir Voroshilov (voroshil gmail com)
reimar
parents:
diff changeset
41 int radio_step_channel(struct stream_st *stream, int direction);
21042
c549c2de24ce new slave command: radio_step_freq
voroshil
parents: 20985
diff changeset
42 int radio_step_freq(struct stream_st *stream, float step_interval);
19568
bd821fd3e244 Radio support, patch by Vladimir Voroshilov (voroshil gmail com)
reimar
parents:
diff changeset
43
bd821fd3e244 Radio support, patch by Vladimir Voroshilov (voroshil gmail com)
reimar
parents:
diff changeset
44 #endif