diff options
author | daniel oeh <daniel.oeh@gmail.com> | 2012-09-22 11:56:50 +0200 |
---|---|---|
committer | daniel oeh <daniel.oeh@gmail.com> | 2012-09-22 11:56:50 +0200 |
commit | 142f3cb9dbd9babae91146d1d972f80b598c59a5 (patch) | |
tree | def4d71f7a18375ec20f1498d92918d0c3cbad5f /src/de/danoeh/antennapod/service | |
parent | 7bbbeb0382f8c03212b7360d83a6da2988a244d6 (diff) | |
download | AntennaPod-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.java | 20 | ||||
-rw-r--r-- | src/de/danoeh/antennapod/service/download/DownloadService.java | 2 |
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; } |