Update To 11.40.268.0
[platform/framework/web/crosswalk.git] / src / media / base / demuxer_perftest.cc
index e86b0b8..339cfe1 100644 (file)
 
 namespace media {
 
-static const int kBenchmarkIterations = 5000;
+static const int kBenchmarkIterations = 100;
 
 class DemuxerHostImpl : public media::DemuxerHost {
  public:
   DemuxerHostImpl() {}
-  virtual ~DemuxerHostImpl() {}
-
-  // DataSourceHost implementation.
-  virtual void SetTotalBytes(int64 total_bytes) OVERRIDE {}
-  virtual void AddBufferedByteRange(int64 start, int64 end) OVERRIDE {}
-  virtual void AddBufferedTimeRange(base::TimeDelta start,
-                                    base::TimeDelta end) OVERRIDE {}
+  ~DemuxerHostImpl() override {}
 
   // DemuxerHost implementation.
-  virtual void SetDuration(base::TimeDelta duration) OVERRIDE {}
-  virtual void OnDemuxerError(media::PipelineStatus error) OVERRIDE {}
+  void AddBufferedTimeRange(base::TimeDelta start,
+                            base::TimeDelta end) override {}
+  void SetDuration(base::TimeDelta duration) override {}
+  void OnDemuxerError(media::PipelineStatus error) override {}
+  void AddTextStream(media::DemuxerStream* text_stream,
+                     const media::TextTrackConfig& config) override {}
+  void RemoveTextStream(media::DemuxerStream* text_stream) override {}
 
  private:
   DISALLOW_COPY_AND_ASSIGN(DemuxerHostImpl);
 };
 
 static void QuitLoopWithStatus(base::MessageLoop* message_loop,
-                        media::PipelineStatus status) {
+                               media::PipelineStatus status) {
   CHECK_EQ(status, media::PIPELINE_OK);
   message_loop->PostTask(FROM_HERE, base::MessageLoop::QuitWhenIdleClosure());
 }
 
 static void NeedKey(const std::string& type,
                     const std::vector<uint8>& init_data) {
-  LOG(INFO) << "File is encrypted.";
+  VLOG(0) << "File is encrypted.";
 }
 
 typedef std::vector<media::DemuxerStream* > Streams;
@@ -64,7 +63,7 @@ class StreamReader {
   // Returns true when all streams have reached end of stream.
   bool IsDone();
 
-  int number_of_streams() { return streams_.size(); }
+  int number_of_streams() { return static_cast<int>(streams_.size()); }
   const Streams& streams() { return streams_; }
   const std::vector<int>& counts() { return counts_; }
 
@@ -182,8 +181,9 @@ static void RunDemuxerBenchmark(const std::string& filename) {
                           need_key_cb,
                           new MediaLog());
 
-    demuxer.Initialize(&demuxer_host, base::Bind(
-        &QuitLoopWithStatus, &message_loop));
+    demuxer.Initialize(&demuxer_host,
+                       base::Bind(&QuitLoopWithStatus, &message_loop),
+                       false);
     message_loop.Run();
     StreamReader stream_reader(&demuxer, false);
 
@@ -194,8 +194,8 @@ static void RunDemuxerBenchmark(const std::string& filename) {
     }
     base::TimeTicks end = base::TimeTicks::HighResNow();
     total_time += (end - start).InSecondsF();
-    demuxer.Stop(base::Bind(
-        &QuitLoopWithStatus, &message_loop, PIPELINE_OK));
+    demuxer.Stop();
+    QuitLoopWithStatus(&message_loop, PIPELINE_OK);
     message_loop.Run();
   }
 
@@ -207,19 +207,25 @@ static void RunDemuxerBenchmark(const std::string& filename) {
                          true);
 }
 
-TEST(DemuxerPerfTest, Demuxer) {
-  RunDemuxerBenchmark("media/test/data/bear.ogv");
-  RunDemuxerBenchmark("media/test/data/bear-640x360.webm");
-  RunDemuxerBenchmark("media/test/data/sfx_s16le.wav");
+#if defined(OS_WIN)
+// http://crbug.com/399002
+#define MAYBE_Demuxer DISABLED_Demuxer
+#else
+#define MAYBE_Demuxer Demuxer
+#endif
+TEST(DemuxerPerfTest, MAYBE_Demuxer) {
+  RunDemuxerBenchmark("bear.ogv");
+  RunDemuxerBenchmark("bear-640x360.webm");
+  RunDemuxerBenchmark("sfx_s16le.wav");
 #if defined(USE_PROPRIETARY_CODECS)
-  RunDemuxerBenchmark("media/test/data/bear-1280x720.mp4");
-  RunDemuxerBenchmark("media/test/data/sfx.mp3");
+  RunDemuxerBenchmark("bear-1280x720.mp4");
+  RunDemuxerBenchmark("sfx.mp3");
 #endif
 #if defined(OS_CHROMEOS)
-  RunDemuxerBenchmark("media/test/data/bear.flac");
+  RunDemuxerBenchmark("bear.flac");
 #endif
 #if defined(USE_PROPRIETARY_CODECS) && defined(OS_CHROMEOS)
-  RunDemuxerBenchmark("media/test/data/bear.avi");
+  RunDemuxerBenchmark("bear.avi");
 #endif
 }