summaryrefslogtreecommitdiff
path: root/src/de/danoeh/antennapod/service
diff options
context:
space:
mode:
authordaniel oeh <daniel.oeh@gmail.com>2012-09-22 11:56:50 +0200
committerdaniel oeh <daniel.oeh@gmail.com>2012-09-22 11:56:50 +0200
commit142f3cb9dbd9babae91146d1d972f80b598c59a5 (patch)
treedef4d71f7a18375ec20f1498d92918d0c3cbad5f /src/de/danoeh/antennapod/service
parent7bbbeb0382f8c03212b7360d83a6da2988a244d6 (diff)
downloadAntennaPod-142f3cb9dbd9babae91146d1d972f80b598c59a5.zip
Added support for reading chapters from streams
Diffstat (limited to 'src/de/danoeh/antennapod/service')
-rw-r--r--src/de/danoeh/antennapod/service/PlaybackService.java20
-rw-r--r--src/de/danoeh/antennapod/service/download/DownloadService.java2
2 files changed, 20 insertions, 2 deletions
diff --git a/src/de/danoeh/antennapod/service/PlaybackService.java b/src/de/danoeh/antennapod/service/PlaybackService.java
index 2a425e9fe..e83912970 100644
--- a/src/de/danoeh/antennapod/service/PlaybackService.java
+++ b/src/de/danoeh/antennapod/service/PlaybackService.java
@@ -46,6 +46,7 @@ import de.danoeh.antennapod.feed.FeedMedia;
import de.danoeh.antennapod.feed.SimpleChapter;
import de.danoeh.antennapod.receiver.MediaButtonReceiver;
import de.danoeh.antennapod.receiver.PlayerWidget;
+import de.danoeh.antennapod.util.ChapterUtils;
/** Controls the MediaPlayer that plays a FeedMedia-file */
public class PlaybackService extends Service {
@@ -505,6 +506,23 @@ public class PlaybackService extends Service {
if (startWhenPrepared) {
play();
}
+ if (shouldStream && media.getItem().getChapters() == null) {
+ // load chapters if available
+ Thread chapterLoader = new Thread() {
+
+ @Override
+ public void run() {
+ if (AppConfig.DEBUG) Log.d(TAG, "Starting chapterLoader thread");
+ ChapterUtils.readID3ChaptersFromFeedMediaDownloadUrl(media.getItem());
+ if (media.getItem().getChapters() != null) {
+ sendNotificationBroadcast(NOTIFICATION_TYPE_RELOAD, 0);
+ }
+ if (AppConfig.DEBUG) Log.d(TAG, "ChapterLoaderThread has finished");
+ }
+
+ };
+ chapterLoader.start();
+ }
}
};
@@ -961,7 +979,7 @@ public class PlaybackService extends Service {
try {
Thread.sleep(UPDATE_INTERVALL);
waitingTime -= UPDATE_INTERVALL;
-
+
if (waitingTime <= 0) {
if (AppConfig.DEBUG)
Log.d(TAG, "Waiting completed");
diff --git a/src/de/danoeh/antennapod/service/download/DownloadService.java b/src/de/danoeh/antennapod/service/download/DownloadService.java
index 5341c54aa..fae0f3b0f 100644
--- a/src/de/danoeh/antennapod/service/download/DownloadService.java
+++ b/src/de/danoeh/antennapod/service/download/DownloadService.java
@@ -695,7 +695,7 @@ public class DownloadService extends Service {
}
if (media.getItem().getChapters() == null) {
- ChapterUtils.readID3ChaptersFromFeedItem(media.getItem());
+ ChapterUtils.readID3ChaptersFromFeedMediaFileUrl(media.getItem());
if (media.getItem().getChapters() != null) {
chaptersRead = true;
}