Re: ANNOUNCE: gstreamermm-0.10.5



On Sun, 2009-11-22 at 14:36 +0100, Carlo Wood wrote: 
> Hi, I'm trying to use gstreamermm, but run into problems.
> Anything I'm doing wrong here:
> 
> hikaru:~/projects/speech/speech-objdir/src>./speech
> 
> ** (speech:16125): CRITICAL **: gst_alsa_mixer_element_list_tracks: assertion `this->mixer != NULL' failed

This looks like a bug.  Could you file a bugzilla report here please:

https://bugzilla.gnome.org/enter_bug.cgi?product=gstreamermm


> The relevant code is:
> [...]
> int
> main (int argc, char *argv[])
> {
>   Gtk::Main kit(argc, argv);
>   Gst::init(argc, argv);
> 
>   // mixer gives access to the alsamixer.
>   Glib::RefPtr<Gst::Mixer> mixer = Gst::AlsaMixer::create("mixer");
> 
>   if(!mixer)
>   {
>     std::cerr << "The mixer could not be created." << std::endl;
>     return -1;
>   }
> 
>   // List the tracks of the mixer.
>   typedef Glib::ListHandle<Glib::RefPtr<Gst::MixerTrack> > mixer_list_handle_type;
>   mixer_list_handle_type mixer_list_handle = mixer->list_tracks();	// THIS LINE CAUSES THE ERROR
> [...]

The only thing I think is wrong is that getting tracks from a mixer
should be done using standard C++ containers like so:

std::list< Glib::RefPtr<Gst::MixerTrack> > tracks = mixer->get_tracks();

or:

std::list< Glib::RefPtr<const Gst::MixerTrack> > tracks =
mixer->get_tracks();

However, once the above bug is fixed getting tracks as above should work
just fine.

-- 
José








[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]