[maemo-developers] problem with playing wav file
From: Ganesh Kundapur ganesh.kundapur at gmail.comDate: Mon Jun 23 19:44:18 EEST 2008
- Previous message: Problem with quilt when rebuilding chinook package on autobuilder
- Next message: Installing xulrunner on N810
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Hi, I'm able to play the wav file by using gst-launch as fallows gst-launch-0.10 filesrc location=~/songs/4voice.wav ! wavparse ! audioconvert ! alsasink Setting pipeline to PAUSED ... Pipeline is PREROLLING ... Pipeline is PREROLLED ... Setting pipeline to PLAYING ... New clock: GstAudioSinkClock Caught interrupt -- handling interrupt. Interrupt: Setting pipeline to PAUSED ... Execution ended after 1914601000 ns. Setting pipeline to PAUSED ... Setting pipeline to READY ... Setting pipeline to NULL ... FREEING pipeline ... I modified the helloworld code to play the wav as 1. I created "waveparse" in place of oggdemux and vorbis parser elements 2. Added filesrc, waveparse and alsasink to the pipeline and linked. -- int main ( int argc, char *argv[] ) { GMainLoop *loop; GstBus *bus; gst_init ( &argc, &argv ); loop = g_main_loop_new ( NULL, FALSE ); pipeline = gst_pipeline_new ( "audio-player" ); source = gst_element_factory_make ( "filesrc", "file-source" ); //parser = gst_element_factory_make ( "oggdemux", "ogg-parser" ); parser = gst_element_factory_make ( "wavparse", "wave-parser" ); //decoder = gst_element_factory_make ( "vorbisdec", "vorbis-decoder" ); conv = gst_element_factory_make ( "audioconvert", "converter" ); sink = gst_element_factory_make ( "alsasink", "alsa-output" ); if ( !pipeline || !source || !parser || !conv || !sink ) { g_print ( "One element could not be created\n" ); return -1; } g_object_set (G_OBJECT (source), "location", argv[1], NULL ); bus = gst_pipeline_get_bus ( GST_PIPELINE ( pipeline ) ); gst_bus_add_watch ( bus, bus_call, loop ); gst_object_unref ( bus ); gst_bin_add_many ( GST_BIN ( pipeline), source, parser, conv, sink, NULL ); //gst_element_link ( source, parser ); gst_element_link_many ( source, parser, conv, sink, NULL ); g_signal_connect ( parser, "pad-added", G_CALLBACK ( new_pad ), NULL ); g_print ( "Setting to Playing\n" ); gst_element_set_state ( pipeline, GST_STATE_PLAYING ); g_print ( "Running\n" ); g_main_loop_run ( loop ); g_print ( "Returned, stopping playback\n" ); gst_element_set_state ( pipeline, GST_STATE_NULL ); g_print ( "Deleting pipeline\n" ); gst_object_unref ( GST_OBJECT ( pipeline ) ); return 0; } -- When i tried to run the fallowing code, i'm getting fallowing errors -- ./a.out ~/songs/4voice.wav Setting to Playing Running Dynamic pad created, linking parser/decoder (a.out:20136): GStreamer-CRITICAL **: gst_element_get_static_pad: assertion `GST_IS_ELEMENT (element)' failed (a.out:20136): GStreamer-CRITICAL **: gst_pad_link_prepare: assertion `GST_IS_PAD (sinkpad)' failed (a.out:20136): GStreamer-CRITICAL **: gst_object_unref: assertion `object != NULL' failed Error: Internal data flow error. Returned, stopping playback Deleting pipeline -- Somebody already posted the similar problem in the mailing list ( http://lists.maemo.org/pipermail/maemo-developers/2006-August/023007.html ), but solution is not mentioned over there. It would be of great help if somebody look into this. Thanks, Ganesh -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.maemo.org/pipermail/maemo-developers/attachments/20080623/db56c197/attachment.htm
- Previous message: Problem with quilt when rebuilding chinook package on autobuilder
- Next message: Installing xulrunner on N810
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]