# Aiuto ruby-gstreamer

**URL:** <https://www.ruby-forum.com/t/aiuto-ruby-gstreamer/168944>\
**Category:** IT\
**Created:** [May 27, 2009, 4:36pm UTC](https://www.ruby-forum.com/t/aiuto-ruby-gstreamer/168944 "2009-05-27T16:36:59Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![Giorgio\_G](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/g/b2d939/32.png) [@Giorgio\_G](https://www.ruby-forum.com/u/Giorgio_G)\
**Post date:** [May 27, 2009, 4:36pm UTC](https://www.ruby-forum.com/t/aiuto-ruby-gstreamer/168944/1 "2009-05-27T16:36:59Z")

</div>

Ciao a tutti  
ho abbozzato un semplice lettore audio usango ruby-gtk e ruby-gstreamer  
il  
problema è che non riesco a usare la classe Gst::Thread mi da sempre  
questo  
errore :

./M.audio.rb:31:in `play': uninitialized constant Gst::Thread from ./M.audio.rb:58 from ./M.audio.rb:62:in`call’  
from ./M.audio.rb:62:in `main’  
from ./M.audio.rb:62

qualche dritta?  
Grazie  
di seguito c’è il codice:  
#!/usr/bin/env ruby

require ‘gst’  
require ‘gtk2’

class Player  
@stopped = 0

```
def initialize
    @pipeline = Gst::Pipeline.new
    @src = Gst::ElementFactory.make("filesrc")
    @dec = Gst::ElementFactory.make("mad")
    @sink = Gst::ElementFactory.make("autoaudiosink")
    @pipeline.add(@src, @dec, @sink)
    @src >> @dec >> @sink

end

def get_song
    if ARGV.size != 1
        puts "Troppe Canzoni"
        exit
    end
    @song = ARGV.first
    @src.location = @song
end

def play

    Thread.new do

        while @stopped != 1
        @pipeline.play
        end
    end

end

def pause

    @stopped = 0

        @pipeline.pause

end

```

end

Gst.init  
P = Player.new  
P.get\_song  
window = Gtk::Window.new(‘Player’)  
window.border\_width = 10  
window.resizable = true  
window.window\_position = Gtk::Window::POS\_CENTER  
button = Gtk::Button.new(‘play’)  
button.signal\_connect(‘clicked’){ P.play }  
window.signal\_connect(‘destroy’){ Gtk.main\_quit }  
window.add(button)  
window.show\_all  
Gtk.main

---

<div class="post-metadata">

**Author:** ![Giorgio\_G](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/g/b2d939/32.png) [@Giorgio\_G](https://www.ruby-forum.com/u/Giorgio_G)\
**Post date:** [May 27, 2009, 5:19pm UTC](https://www.ruby-forum.com/t/aiuto-ruby-gstreamer/168944/2 "2009-05-27T17:19:45Z")

</div>

Controlla che nel file richiesto con require ‘gst’ ci sia davvero quella  
definizione, perchÃ© googlando l’errore ho trovato questo  
[https://bugzilla.redhat.com/show\_bug.cgi?id=475465](https://bugzilla.redhat.com/show_bug.cgi?id=475465)  
Se le cose stanno ancora come Ã¨ scritto lÃ¬, Gst::Thread non c’Ã¨.

Paolo

Giorgio G. wrote:

> Ciao a tutti  
> ho abbozzato un semplice lettore audio usango ruby-gtk e ruby-gstreamer  
> il problema Ã¨ che non riesco a usare la classe Gst::Thread mi da sempre  
> questo errore :
> 
> ./M.audio.rb:31:in `play': uninitialized constant Gst::Thread from ./M.audio.rb:58 from ./M.audio.rb:62:in `call’  
> from ./M.audio.rb:62:in `main’  
> from ./M.audio.rb:62

---

<div class="post-metadata">

**Author:** ![Giorgio\_G](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/g/b2d939/32.png) [@Giorgio\_G](https://www.ruby-forum.com/u/Giorgio_G)\
**Post date:** [May 27, 2009, 7:58pm UTC](https://www.ruby-forum.com/t/aiuto-ruby-gstreamer/168944/3 "2009-05-27T19:58:55Z")

</div>

eh allora mi sa che è prorpio così…  
avranno avuto dei problemi  
sapreste mica indicarmi un modo alternativo ?  
perchè se uso un ciclo una volta cliccato un bottone la gui rimane  
inutilizzabile

Il giorno 27 maggio 2009 17.19, Paolo M.  
[removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid)ha scritto:
