| Index: media/filters/pipeline_integration_test.cc | 
| diff --git a/media/filters/pipeline_integration_test.cc b/media/filters/pipeline_integration_test.cc | 
| index a0f505d8c48c9c4be200a01f8650bd52b6126859..3eec062ac34fb9094bcb5fed34edca6dc0eee936 100644 | 
| --- a/media/filters/pipeline_integration_test.cc | 
| +++ b/media/filters/pipeline_integration_test.cc | 
| @@ -919,24 +919,35 @@ TEST_P(PipelineIntegrationTest, MediaSource_ADTS) { | 
|  | 
| TEST_P(PipelineIntegrationTest, MediaSource_ADTS_TimestampOffset) { | 
| MockMediaSource source("sfx.adts", kADTS, kAppendWholeFile, GetParam()); | 
| -  StartPipelineWithMediaSource(&source); | 
| +  StartHashedPipelineWithMediaSource(&source); | 
| EXPECT_EQ(325, source.last_timestamp_offset().InMilliseconds()); | 
|  | 
| +  // Trim off multiple frames off the beginning of the segment which will cause | 
| +  // the first decoded frame to be incorrect if preroll isn't implemented. | 
| +  const base::TimeDelta adts_preroll_duration = | 
| +      base::TimeDelta::FromSecondsD(2.5 * 1024 / 44100); | 
| +  const base::TimeDelta append_time = | 
| +      source.last_timestamp_offset() - adts_preroll_duration; | 
| + | 
| scoped_refptr<DecoderBuffer> second_file = ReadTestDataFile("sfx.adts"); | 
| -  source.AppendAtTime( | 
| -      source.last_timestamp_offset() - base::TimeDelta::FromMilliseconds(10), | 
| -      second_file->data(), | 
| -      second_file->data_size()); | 
| +  source.AppendAtTimeWithWindow(append_time, | 
| +                                append_time + adts_preroll_duration, | 
| +                                kInfiniteDuration(), | 
| +                                second_file->data(), | 
| +                                second_file->data_size()); | 
| source.EndOfStream(); | 
|  | 
| -  EXPECT_EQ(640, source.last_timestamp_offset().InMilliseconds()); | 
| +  EXPECT_EQ(592, source.last_timestamp_offset().InMilliseconds()); | 
| EXPECT_EQ(1u, pipeline_->GetBufferedTimeRanges().size()); | 
| EXPECT_EQ(0, pipeline_->GetBufferedTimeRanges().start(0).InMilliseconds()); | 
| -  EXPECT_EQ(640, pipeline_->GetBufferedTimeRanges().end(0).InMilliseconds()); | 
| +  EXPECT_EQ(592, pipeline_->GetBufferedTimeRanges().end(0).InMilliseconds()); | 
|  | 
| Play(); | 
|  | 
| EXPECT_TRUE(WaitUntilOnEnded()); | 
| + | 
| +  // Verify preroll is stripped. | 
| +  EXPECT_EQ("-0.06,0.97,-0.90,-0.70,-0.53,-0.34,", GetAudioHash()); | 
| } | 
|  | 
| TEST_F(PipelineIntegrationTest, BasicPlaybackHashed_MP3) { | 
|  |