summaryrefslogtreecommitdiff
path: root/src/xine-engine
diff options
context:
space:
mode:
authorDaniel Caujolle-Bert <f1rmb@users.sourceforge.net>2001-05-28 12:08:20 +0000
committerDaniel Caujolle-Bert <f1rmb@users.sourceforge.net>2001-05-28 12:08:20 +0000
commit00eefe1016adb7d586a3cf79f015afc6e367f920 (patch)
treeeec831f95eeddb8d8d1ca5f1a0b2410cb8a0be3f /src/xine-engine
parenta94dd5082488feb9248044f122dec8da9bc90d1a (diff)
downloadxine-lib-00eefe1016adb7d586a3cf79f015afc6e367f920.tar.gz
xine-lib-00eefe1016adb7d586a3cf79f015afc6e367f920.tar.bz2
Ability to playback streams without loaded audio driver.
CVS patchset: 89 CVS date: 2001/05/28 12:08:20
Diffstat (limited to 'src/xine-engine')
-rw-r--r--src/xine-engine/audio_decoder.c17
-rw-r--r--src/xine-engine/xine.c13
2 files changed, 22 insertions, 8 deletions
diff --git a/src/xine-engine/audio_decoder.c b/src/xine-engine/audio_decoder.c
index cdd73ec6b..8b947856b 100644
--- a/src/xine-engine/audio_decoder.c
+++ b/src/xine-engine/audio_decoder.c
@@ -17,7 +17,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
*
- * $Id: audio_decoder.c,v 1.9 2001/05/24 23:15:40 f1rmb Exp $
+ * $Id: audio_decoder.c,v 1.10 2001/05/28 12:08:20 f1rmb Exp $
*
*
* functions that implement audio decoding
@@ -155,6 +155,21 @@ void *audio_decoder_loop (void *this_gen) {
}
}
+ else {
+ /* No audio driver loaded */
+ pthread_mutex_lock (&this->xine_lock);
+
+ this->audio_finished = 1;
+
+ if (this->video_finished) {
+ pthread_mutex_unlock (&this->xine_lock);
+ xine_notify_stream_finished (this);
+ } else
+ pthread_mutex_unlock (&this->xine_lock);
+
+ pthread_exit(NULL);
+ }
+
buf->free_buffer (buf);
}
diff --git a/src/xine-engine/xine.c b/src/xine-engine/xine.c
index 6dd68199c..f7d6557cb 100644
--- a/src/xine-engine/xine.c
+++ b/src/xine-engine/xine.c
@@ -17,7 +17,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
*
- * $Id: xine.c,v 1.18 2001/05/28 01:28:11 f1rmb Exp $
+ * $Id: xine.c,v 1.19 2001/05/28 12:08:20 f1rmb Exp $
*
* top-level xine functions
*
@@ -211,7 +211,8 @@ static void xine_play_internal (xine_t *this, char *MRL,
return;
}
- printf ("xine: using input plugin >%s< for this MRL.\n", this->cur_input_plugin->get_identifier(this->cur_input_plugin));
+ printf ("xine: using input plugin >%s< for this MRL.\n",
+ this->cur_input_plugin->get_identifier(this->cur_input_plugin));
/*
* find demuxer plugin
@@ -224,7 +225,8 @@ static void xine_play_internal (xine_t *this, char *MRL,
return;
}
- printf ("xine: using demuxer plugin >%s< for this MRL.\n", this->cur_demuxer_plugin->get_identifier());
+ printf ("xine: using demuxer plugin >%s< for this MRL.\n",
+ this->cur_demuxer_plugin->get_identifier());
/*
* Init SPU decoder with colour lookup table.
@@ -438,11 +440,8 @@ xine_t *xine_init (vo_driver_t *vo,
if(ao) {
this->audio_out = ao;
this->audio_out->connect (this->audio_out, this->metronom);
- audio_decoder_init (this);
}
- else
- this->audio_out = NULL; /* Disabling audio output */
-
+ audio_decoder_init (this);
/*
* init SPU decoder