From d88779134d242939b662f859b947eb61d98a46aa Mon Sep 17 00:00:00 2001 From: Erik Walthinsen Date: Tue, 6 Feb 2001 19:39:15 +0000 Subject: [PATCH] updated ac3play to work with latest libgst Original commit message from CVS: updated ac3play to work with latest libgst --- test/ac3play.c | 32 ++++++++++---------------------- 1 file changed, 10 insertions(+), 22 deletions(-) diff --git a/test/ac3play.c b/test/ac3play.c index ada9c3285f..9967a1aada 100644 --- a/test/ac3play.c +++ b/test/ac3play.c @@ -10,26 +10,22 @@ int main(int argc,char *argv[]) { GstElement *queue; GstPad *infopad; - g_print("have %d args\n",argc); +// g_print("have %d args\n",argc); - _gst_plugin_spew = TRUE; +// _gst_plugin_spew = TRUE; gst_init(&argc,&argv); -// gst_plugin_load("ac3parse"); - gst_plugin_load_all(); pipeline = gst_elementfactory_make("pipeline","ac3player"); g_return_if_fail(pipeline != NULL); decodethread = gst_elementfactory_make("thread","decodethread"); g_return_if_fail(decodethread != NULL); - playthread = gst_elementfactory_make("thread","playthread"); - g_return_if_fail(playthread != NULL); queue = gst_elementfactory_make("queue","queue"); g_return_if_fail(queue != NULL); src = gst_elementfactory_make("disksrc","src"); g_return_if_fail(src != NULL); gtk_object_set(GTK_OBJECT(src),"location",argv[1],NULL); - g_print("should be using file '%s'\n",argv[1]); +// g_print("should be using file '%s'\n",argv[1]); parse = gst_elementfactory_make("ac3parse","parse"); g_return_if_fail(parse != NULL); decode = gst_elementfactory_make("ac3dec","decode"); @@ -49,36 +45,28 @@ int main(int argc,char *argv[]) { gst_element_add_ghost_pad(GST_ELEMENT(decodethread), gst_element_get_pad(decode,"src"),"src"); - // construct the play thread - g_print("constructing the play thread\n"); - gst_bin_add(GST_BIN(playthread),GST_ELEMENT(play)); - gst_element_add_ghost_pad(GST_ELEMENT(playthread), - gst_element_get_pad(play,"sink"),"sink"); - // construct the outer pipeline g_print("constructing the main pipeline\n"); gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(decodethread)); gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(queue)); - gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(playthread)); + gst_bin_add(GST_BIN(pipeline),GST_ELEMENT(play)); + g_print("connecting main pipeline\n"); gst_pad_connect(gst_element_get_pad(decodethread,"src"), gst_element_get_pad(queue,"sink")); gst_pad_connect(gst_element_get_pad(queue,"src"), - gst_element_get_pad(playthread,"sink")); + gst_element_get_pad(play,"sink")); + + xmlSaveFile("ac3play.gst", gst_xml_write(GST_ELEMENT(pipeline))); // set thread start state gtk_object_set(GTK_OBJECT(decodethread),"create_thread",TRUE,NULL); - gtk_object_set(GTK_OBJECT(playthread),"create_thread",FALSE,NULL); g_print("setting to READY state\n"); - gst_element_set_state(GST_ELEMENT(pipeline),GST_STATE_READY); gst_element_set_state(GST_ELEMENT(pipeline),GST_STATE_PLAYING); // sleep(1); - g_print("about to enter loop\n"); +// g_print("about to enter loop\n"); while (1) { - gst_bin_iterate(GST_BIN(playthread)); - g_print("using %d bytes\n",vmsize()); + gst_bin_iterate(GST_BIN(pipeline)); } - - xmlSaveFile("ac3play.xml",gst_xml_write(GST_ELEMENT(pipeline))); }