torstai 8. toukokuuta 2014
Simple gstreamer ogg soitin 2
Edellisen artikkelin koodiin on nyt lisätty threadi jolla voimme keskeyttää / jatkaa soittoa.
Uusi koodi löytyy täältä.
Soiton keskeyttäminen tapahtuu p ja r näppäin jatkaa soittoa.
---
Tässä nähdään molemmat funktiot ... aika yksinkertaista sinänsä
void pause (void)
{
if (pipeline) {
g_print ("Pause\n");
gst_element_set_state (pipeline, GST_STATE_PAUSED);
}
}
void resume (void)
{
g_print ("Resume\n");
gst_element_set_state (pipeline, GST_STATE_PLAYING);
}
Ja se itse thread sitten ... puskuri ss on tarkoituksella kirjoitettu näin, myöhempää käyttöä varten.
void *thread1()
{
char ss[1];
while(1)
{
gets(ss);
if(ss[0]=='p') /* pause */
pause ();
else if(ss[0]=='r') /* resume */
resume();
}
}
Seuraavassa artikkelissa kokeillaan hakea kappaleen pituutta ja siirtää positiota
torstai 1. toukokuuta 2014
Simple gstreamer ogg soitin 1
Aikaisemmin kun puhuin Jolla puhelimen Midi soittimesta, jonka perustana on siis Wildmidi ja gstreamer, niin ennen kuin tutkitaan sitä tarkemmin, Gstreamer sivuilta löytyy esimerkki yksinkertaisesta soittimesta, jonka kääntämistä voisi kokeilla Jolla emulaattorissa tai puhelimessa. Tämä ei siis soita midiä, mutta .ogg tiedostot pitäisi pelittää.
Sivuilta löytyvä koodi löytyy myös täältä
Kääntäminen on sinänsä aika simppeliä, tässä tapauksessa käytetään Makefile:ä ja sitä kutsutaan komentorivillä komennolla make
----
CC=gcc
EXTRA_WARNINGS=-Wall -W -Wformat-nonliteral -Wcast-align -Wpointer-arith \
-Wbad-function-cast -Wmissing-prototypes -Wstrict-prototypes \
-Wmissing-declarations -Winline -Wundef -Wnested-externs -Wcast-qual \
-Wshadow -Wwrite-strings -Wno-unused-parameter -Wfloat-equal -pedantic -ansi -std=c99
GST_LIBS=`pkg-config --libs gstreamer-0.10` -lgstinterfaces-0.10
GST_CFLAGS=`pkg-config --cflags gstreamer-0.10`
CFLAGS=-ggdb $(EXTRA_WARNINGS)
BINS=simple-player
all: $(BINS)
simple-player: simple.c
$(CC) $(CFLAGS) $(GST_CFLAGS) $(GST_LIBS) $+ -o $@
clean:
rm -rf $(BINS)
------
Jos kääntäminen onnistui ilman virheitä, meillä pitäisi olla nyt ohjelma nimeltä
simple-player
soitetaan - ./simple-player jokin-biisi.ogg - Ctrl c keskeyttää.
Gstreamer on siis 0.10 versio, eikä 1.0, laitteessa voi olla molemmat versiot, kunhan vain käännettäessä käytetään samaa versiota.
soitetaan - ./simple-player jokin-biisi.ogg - Ctrl c keskeyttää.
Gstreamer on siis 0.10 versio, eikä 1.0, laitteessa voi olla molemmat versiot, kunhan vain käännettäessä käytetään samaa versiota.
Tilaa:
Kommentit (Atom)

