Hallo,
ich möchte gerne eine komplette Audiodatei laden, die sich der Nutzer anhören kann. Der Nutzer soll weiterhin die Möglichkeit haben einen Abschnitt der Audiodatei als Loop abzuspielen.
Habe schon die QT4 Doku durchsucht, aber nichts gefunden, womit dies einfach zu bewerkstelligen wäre. Das Setzen der Anfangs- und Endzeiten des Loops habe ich schon programmiert. Mir fehlt nur noch der Loop.
Hat irgendwer eine Idee, wie man das mit QT Bordmitteln umsetzen kann?
Vielen Dank
Ingo Siegert
[gelöst] Abschnitt einer Audiodatei abspielen
[gelöst] Abschnitt einer Audiodatei abspielen
Zuletzt geändert von thebigear am 17. April 2010 11:01, insgesamt 1-mal geändert.
Danke, das war die Lösung.
Beim drücken des Loop-Butons wird jetzt der neue Zeitpunkt gesetzt, mittels seek und ich überwache in der tick-funktion, ob die Datei über das Ende des Loops hinausgeht und springe dann wieder an den Anfang. Hier noch der Code:
Beim drücken des Loop-Butons wird jetzt der neue Zeitpunkt gesetzt, mittels seek und ich überwache in der tick-funktion, ob die Datei über das Ende des Loops hinausgeht und springe dann wieder an den Anfang. Hier noch der Code:
Code: Alles auswählen
void Glob_Wgt_Audioplayer::slotSetLoop(bool value){
loop = value;
//when loop enabled, seek to start position of sentence:
if(loop){
//Change State to Pause to seek:
mediaObject->pause();
mediaObject->seek(startLoop);
//Change State to Play, to start Playing
mediaObject->play();
}
}
void Glob_Wgt_Audioplayer::slotTick(qint64 time){
QTime displayTime((time / 3600000) % 60, (time / 60000) % 60, (time / 1000) % 60);
actTime = QTime::QTime((time / 3600000) % 60, (time / 60000) % 60, (time / 1000) % 60, (time % 1000));
actTimeInt64 = time;
m_ui->LCD_actTime->display(displayTime.toString("mm:ss"));
if(loop && time > endLoop){
mediaObject->seek(startLoop);
}
}