diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/combined/flac_demuxer.c | 3 | ||||
-rw-r--r-- | src/combined/xine_ogg_demuxer.c | 8 | ||||
-rw-r--r-- | src/demuxers/demux_flac.c | 4 | ||||
-rw-r--r-- | src/demuxers/demux_flv.c | 1 | ||||
-rw-r--r-- | src/demuxers/demux_mpgaudio.c | 4 | ||||
-rw-r--r-- | src/input/input_v4l.c | 19 |
6 files changed, 31 insertions, 8 deletions
diff --git a/src/combined/flac_demuxer.c b/src/combined/flac_demuxer.c index bab42876c..22ee2319b 100644 --- a/src/combined/flac_demuxer.c +++ b/src/combined/flac_demuxer.c @@ -713,7 +713,8 @@ demux_flac_init_class (xine_t *xine, void *data) { this->demux_class.open_plugin = open_plugin; this->demux_class.description = N_("FLAC demux plugin"); this->demux_class.identifier = "FLAC"; - this->demux_class.mimetypes = "application/x-flac: flac: FLAC Audio;"; + this->demux_class.mimetypes = "application/x-flac: flac: FLAC Audio;" + "application/flac: flac: FLAC Audio;"; this->demux_class.extensions = "flac"; this->demux_class.dispose = default_demux_class_dispose; diff --git a/src/combined/xine_ogg_demuxer.c b/src/combined/xine_ogg_demuxer.c index e0610f5ca..b09bc1a41 100644 --- a/src/combined/xine_ogg_demuxer.c +++ b/src/combined/xine_ogg_demuxer.c @@ -2081,8 +2081,11 @@ static void *anx_init_class (xine_t *xine, void *data) { this->demux_class.identifier = "Annodex"; this->demux_class.mimetypes = "application/annodex: anx: Annodex media;" + "application/x-annodex: anx: Annodex media;" "audio/annodex: axa: Annodex audio;" - "video/annodex: axv: Annodex video;"; + "audio/x-annodex: axa: Annodex audio;" + "video/annodex: axv: Annodex video;" + "video/x-annodex: axv: Annodex video;"; this->demux_class.extensions = "anx axa axv"; this->demux_class.dispose = default_demux_class_dispose; @@ -2102,8 +2105,11 @@ static void *ogg_init_class (xine_t *xine, void *data) { this->demux_class.identifier = "OGG"; this->demux_class.mimetypes = "application/ogg: ogx: Ogg Stream;" + "application/x-ogg: ogx: Ogg Stream;" "audio/ogg: oga: Ogg Audio;" + "audio/x-ogg: oga: Ogg Audio;" "video/ogg: ogv: Ogg Video;"; + "video/x-ogg: ogv: Ogg Video;"; this->demux_class.extensions = "ogx ogv oga ogg spx ogm"; this->demux_class.dispose = default_demux_class_dispose; diff --git a/src/demuxers/demux_flac.c b/src/demuxers/demux_flac.c index b4c5427c5..40cd5d265 100644 --- a/src/demuxers/demux_flac.c +++ b/src/demuxers/demux_flac.c @@ -520,7 +520,9 @@ void *demux_flac_init_plugin (xine_t *xine, void *data) { this->demux_class.open_plugin = open_plugin; this->demux_class.description = N_("Free Lossless Audio Codec (flac) demux plugin"); this->demux_class.identifier = "FLAC"; - this->demux_class.mimetypes = NULL; + this->demux_class.mimetypes = + "audio/x-flac: flac: FLAC Audio;" + "audio/flac: flac: FLAC Audio;"; this->demux_class.extensions = "flac"; this->demux_class.dispose = default_demux_class_dispose; diff --git a/src/demuxers/demux_flv.c b/src/demuxers/demux_flv.c index a65702207..38855c027 100644 --- a/src/demuxers/demux_flv.c +++ b/src/demuxers/demux_flv.c @@ -908,4 +908,3 @@ const plugin_info_t xine_plugin_info[] EXPORTED = { { PLUGIN_DEMUX, 27, "flashvideo", XINE_VERSION_CODE, &demux_info_flv, init_plugin }, { PLUGIN_NONE, 0, "", 0, NULL, NULL } }; - diff --git a/src/demuxers/demux_mpgaudio.c b/src/demuxers/demux_mpgaudio.c index cf410eed8..79da40e36 100644 --- a/src/demuxers/demux_mpgaudio.c +++ b/src/demuxers/demux_mpgaudio.c @@ -591,14 +591,14 @@ static int parse_frame_payload(demux_mpgaudio_t *this, if (this->xing_header) { buf->free_buffer(buf); xprintf(this->stream->xine, XINE_VERBOSITY_LOG, - LOG_MODULE ": found Xing header at offset %PRId64\n", frame_pos); + LOG_MODULE ": found Xing header at offset %"PRId64"\n", frame_pos); return 1; } this->vbri_header = parse_vbri_header(&this->cur_frame, buf->content, this->cur_frame.size); if (this->vbri_header) { buf->free_buffer(buf); xprintf(this->stream->xine, XINE_VERBOSITY_LOG, - LOG_MODULE ": found Vbri header at offset %PRId64\n", frame_pos); + LOG_MODULE ": found Vbri header at offset %"PRId64"\n", frame_pos); return 1; } } diff --git a/src/input/input_v4l.c b/src/input/input_v4l.c index a8f387b3d..df0e0e48b 100644 --- a/src/input/input_v4l.c +++ b/src/input/input_v4l.c @@ -116,6 +116,9 @@ static const int tv_standard_values[] = { VIDEO_MODE_PAL, VIDEO_MODE_NTSC, VIDEO #define NUM_RESOLUTIONS (sizeof(resolutions)/sizeof(resolutions[0])) #define RADIO_DEV "/dev/radio0" #define VIDEO_DEV "/dev/video0" +#ifdef HAVE_ALSA +#define AUDIO_DEV "plughw:0,0" +#endif #if !defined(NDELAY) && defined(O_NDELAY) #define FNDELAY O_NDELAY @@ -1732,6 +1735,9 @@ static input_plugin_t *v4l_class_get_instance (input_class_t *cls_gen, { /* v4l_input_class_t *cls = (v4l_input_class_t *) cls_gen; */ v4l_input_plugin_t *this; +#ifdef HAVE_ALSA + cfg_entry_t *entry; +#endif char *mrl = strdup(data); /* Example mrl: v4l:/Television/62500 */ @@ -1752,13 +1758,14 @@ static input_plugin_t *v4l_class_get_instance (input_class_t *cls_gen, this->event_queue = NULL; this->scr = NULL; #ifdef HAVE_ALSA - this->pcm_name = NULL; this->pcm_data = NULL; this->pcm_hwparams = NULL; /* Audio */ this->pcm_stream = SND_PCM_STREAM_CAPTURE; - this->pcm_name = strdup("plughw:0,0"); + entry = this->stream->xine->config->lookup_entry(this->stream->xine->config, + "media.video4linux.audio_device"); + this->pcm_name = strdup (entry->str_value); this->audio_capture = 1; #endif this->rate = 44100; @@ -1928,6 +1935,14 @@ static void *init_video_class (xine_t *xine, void *data) _("Selects the TV standard of the input signals. " "Either: PAL, NTSC and SECAM. "), 20, NULL, NULL); +#ifdef HAVE_ALSA + config->register_filename (config, "media.video4linux.audio_device", + AUDIO_DEV, 0, + _("v4l ALSA audio input device"), + _("The name of the audio device which corresponds " + "to your Video4Linux video device."), + 10, NULL, NULL); +#endif return this; } |