summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authoryucliu <yucliu@chromium.org>2015-06-29 13:59:36 -0700
committerCommit bot <commit-bot@chromium.org>2015-06-29 21:00:05 +0000
commit6ebe2cd94eed4b3259eb7f895d321294e66d94de (patch)
tree37067ea7ef9ab2e2665cbe60723fe2f3f7a88939
parentbe1283d4cde3f146cba2ed93adee630581bfd45f (diff)
downloadchromium_src-6ebe2cd94eed4b3259eb7f895d321294e66d94de.zip
chromium_src-6ebe2cd94eed4b3259eb7f895d321294e66d94de.tar.gz
chromium_src-6ebe2cd94eed4b3259eb7f895d321294e66d94de.tar.bz2
End to end test for mpeg2ts parser
Upstream mpeg2ts parser test with chromium's browser test framework BUG=internal b/17491447 Review URL: https://codereview.chromium.org/1214493002 Cr-Commit-Position: refs/heads/master@{#336635}
-rw-r--r--content/browser/media/media_source_browsertest.cc9
-rw-r--r--media/test/data/media_source_player.html11
2 files changed, 20 insertions, 0 deletions
diff --git a/content/browser/media/media_source_browsertest.cc b/content/browser/media/media_source_browsertest.cc
index 191ff66..69afa36 100644
--- a/content/browser/media/media_source_browsertest.cc
+++ b/content/browser/media/media_source_browsertest.cc
@@ -17,6 +17,10 @@ const char kWebMOpusAudioOnly[] = "audio/webm; codecs=\"opus\"";
const char kWebMVideoOnly[] = "video/webm; codecs=\"vp8\"";
const char kWebMAudioVideo[] = "video/webm; codecs=\"vorbis, vp8\"";
+#if defined(USE_PROPRIETARY_CODECS) && defined(ENABLE_MPEG2TS_STREAM_PARSER)
+const char kMp2tAudioVideo[] = "video/mp2t; codecs=\"mp4a.40.2, avc1.42E01E\"";
+#endif
+
namespace content {
// MSE is available on all desktop platforms and on Android 4.1 and later.
@@ -91,4 +95,9 @@ IN_PROC_BROWSER_TEST_F(MediaSourceTest, ConfigChangeVideo) {
RunMediaTestPage("mse_config_change.html", query_params, kEnded, true);
}
+#if defined(USE_PROPRIETARY_CODECS) && defined(ENABLE_MPEG2TS_STREAM_PARSER)
+IN_PROC_BROWSER_TEST_F(MediaSourceTest, Playback_AudioVideo_Mp2t) {
+ TestSimplePlayback("bear-1280x720.ts", kMp2tAudioVideo, kEnded);
+}
+#endif
} // namespace content
diff --git a/media/test/data/media_source_player.html b/media/test/data/media_source_player.html
index 7a2ecbe..319907c 100644
--- a/media/test/data/media_source_player.html
+++ b/media/test/data/media_source_player.html
@@ -19,6 +19,16 @@
Utils.installTitleEventHandler(video, 'ended');
}
+ // For those streams whose start time is greater than
+ // kSeekToStartFudgeRoom defined in source_buffer_stream.cc, we
+ // need to skip those time range. Otherwise it won't play
+ function onLoadedMetaData() {
+ var buf = video.buffered;
+ if (buf.length > 0) {
+ video.currentTime = buf.start(0);
+ }
+ }
+
// The test completes after media starts playing, seeks to 0.9 of
// duration and fires the ended event.
// The test stops when an error or ended event fire unexpectedly.
@@ -29,6 +39,7 @@
video.addEventListener('ended', Utils.failTest);
video.addEventListener('seeked', onSeeked);
video.addEventListener('timeupdate', onTimeUpdate);
+ video.addEventListener('loadedmetadata', onLoadedMetaData);
var source = MediaSourceUtils.loadMediaSourceFromTestConfig(testConfig);
video.src = window.URL.createObjectURL(source);
video.play();