Example #1
0
 public static void readOggChaptersFromPlayableFileUrl(Playable media) {
   if (media != null && media.getLocalMediaUrl() != null) {
     File source = new File(media.getLocalMediaUrl());
     if (source.exists()) {
       InputStream input = null;
       try {
         input = new BufferedInputStream(new FileInputStream(source));
         readOggChaptersFromInputStream(media, input);
       } catch (FileNotFoundException e) {
         e.printStackTrace();
       } finally {
         IOUtils.closeQuietly(input);
       }
     }
   }
 }
Example #2
0
  /** Uses the file URL of a media object of a feeditem to read its ID3 chapters. */
  public static void readID3ChaptersFromPlayableFileUrl(Playable p) {
    if (AppConfig.DEBUG) Log.d(TAG, "Reading id3 chapters from item " + p.getEpisodeTitle());
    if (p != null && p.localFileAvailable() && p.getLocalMediaUrl() != null) {
      File source = new File(p.getLocalMediaUrl());
      if (source.exists()) {
        ChapterReader reader = new ChapterReader();
        InputStream in = null;

        try {
          in = new BufferedInputStream(new FileInputStream(source));
          reader.readInputStream(in);
          List<Chapter> chapters = reader.getChapters();

          if (chapters != null) {
            Collections.sort(chapters, new ChapterStartTimeComparator());
            processChapters(chapters, p);
            if (chaptersValid(chapters)) {
              p.setChapters(chapters);
              Log.i(TAG, "Chapters loaded");
            } else {
              Log.e(TAG, "Chapter data was invalid");
            }
          } else {
            Log.i(TAG, "ChapterReader could not find any ID3 chapters");
          }
        } catch (IOException e) {
          e.printStackTrace();
        } catch (ID3ReaderException e) {
          e.printStackTrace();
        } finally {
          if (in != null) {
            try {
              in.close();
            } catch (IOException e) {
              e.printStackTrace();
            }
          }
        }
      } else {
        Log.e(TAG, "Unable to read id3 chapters: Source doesn't exist");
      }
    }
  }