summaryrefslogtreecommitdiff
path: root/player.cpp
diff options
context:
space:
mode:
authorVegard Storheil Eriksen <zyp@jvnv.net>2010-09-05 04:36:48 +0200
committerVegard Storheil Eriksen <zyp@jvnv.net>2010-09-05 04:36:48 +0200
commit9dac6d187810915895ac9f7a6b739ff818336b35 (patch)
treeae3c3c87bd05972fbb1cea7f5f77151a206d4c18 /player.cpp
Initial import.
Diffstat (limited to 'player.cpp')
-rw-r--r--player.cpp49
1 files changed, 49 insertions, 0 deletions
diff --git a/player.cpp b/player.cpp
new file mode 100644
index 0000000..8419d8c
--- /dev/null
+++ b/player.cpp
@@ -0,0 +1,49 @@
+#include "player.h"
+
+Player::Player() {
+ mo = new Phonon::MediaObject();
+ ao = new Phonon::AudioOutput(Phonon::MusicCategory);
+ Phonon::createPath(mo, ao);
+
+ mo->setTickInterval(100);
+
+ connect(mo, SIGNAL(tick(qint64)), SLOT(tick(qint64)));
+ connect(mo, SIGNAL(totalTimeChanged(qint64)), SLOT(newlength(qint64)));
+}
+
+void Player::prev() {
+
+}
+
+void Player::pause() {
+ mo->pause();
+ emit changed_state(false);
+}
+
+void Player::play() {
+ static bool kake = false;
+
+ if(!kake) {
+ kake = true;
+ mo->setCurrentSource(*(new Phonon::MediaSource("historie.tta")));
+ }
+
+ mo->play();
+ emit changed_state(true);
+}
+
+void Player::next() {
+
+}
+
+void Player::seek(int pos) {
+ mo->seek(pos * 1000);
+}
+
+void Player::tick(qint64 time) {
+ emit changed_pos(time / 1000);
+}
+
+void Player::newlength(qint64 length) {
+ emit changed_length(length / 1000);
+}