diff options
author | qinmin <qinmin@chromium.org> | 2014-12-04 19:28:23 -0800 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2014-12-05 03:28:49 +0000 |
commit | a48d452b6b319946563ca11bc80027de88d6335f (patch) | |
tree | 4bbbb03af2c4c2f880d8d4d49f43374c3d760292 | |
parent | 4090dafbb5873fe6a8f163b09fd777c0b65aca08 (diff) | |
download | chromium_src-a48d452b6b319946563ca11bc80027de88d6335f.zip chromium_src-a48d452b6b319946563ca11bc80027de88d6335f.tar.gz chromium_src-a48d452b6b319946563ca11bc80027de88d6335f.tar.bz2 |
Don't get metadata for HLS streams
MediaMetadataRetriever doesn't support HLS, so we should just return an empty metadata.
internal b/18228893
Review URL: https://codereview.chromium.org/783563003
Cr-Commit-Position: refs/heads/master@{#306968}
-rw-r--r-- | content/public/android/java/src/org/chromium/content/browser/MediaResourceGetter.java | 43 |
1 files changed, 23 insertions, 20 deletions
diff --git a/content/public/android/java/src/org/chromium/content/browser/MediaResourceGetter.java b/content/public/android/java/src/org/chromium/content/browser/MediaResourceGetter.java index 43427bd..71bd333 100644 --- a/content/public/android/java/src/org/chromium/content/browser/MediaResourceGetter.java +++ b/content/public/android/java/src/org/chromium/content/browser/MediaResourceGetter.java @@ -242,26 +242,29 @@ class MediaResourceGetter { Log.e(TAG, "Error configuring data source", e); return false; } - } else { - final String host = uri.getHost(); - if (!isLoopbackAddress(host) && !isNetworkReliable(context)) { - Log.w(TAG, "non-file URI can't be read due to unsuitable network conditions"); - return false; - } - Map<String, String> headersMap = new HashMap<String, String>(); - if (!TextUtils.isEmpty(cookies)) { - headersMap.put("Cookie", cookies); - } - if (!TextUtils.isEmpty(userAgent)) { - headersMap.put("User-Agent", userAgent); - } - try { - configure(url, headersMap); - return true; - } catch (RuntimeException e) { - Log.e(TAG, "Error configuring data source", e); - return false; - } + } + if (uri.getPath() != null && uri.getPath().endsWith(".m3u8")) { + // MediaMetadataRetriever does not work with HLS correctly. + return false; + } + final String host = uri.getHost(); + if (!isLoopbackAddress(host) && !isNetworkReliable(context)) { + Log.w(TAG, "non-file URI can't be read due to unsuitable network conditions"); + return false; + } + Map<String, String> headersMap = new HashMap<String, String>(); + if (!TextUtils.isEmpty(cookies)) { + headersMap.put("Cookie", cookies); + } + if (!TextUtils.isEmpty(userAgent)) { + headersMap.put("User-Agent", userAgent); + } + try { + configure(url, headersMap); + return true; + } catch (RuntimeException e) { + Log.e(TAG, "Error configuring data source", e); + return false; } } |