Bug 1345756: [MSE] P4. Pre-roll AAC by 2112 audio frames. r=gerald

MozReview-Commit-ID: K09DyZMzbY7

--HG--
extra : rebase_source : 489974fa5cc254eba8b3bc83bb45bad8323a4313
This commit is contained in:
Jean-Yves Avenard 2017-03-09 10:57:02 +01:00
Родитель 2af615365e
Коммит 1a7b7995d5
1 изменённых файлов: 9 добавлений и 2 удалений

Просмотреть файл

@ -302,8 +302,15 @@ MediaSourceTrackDemuxer::MediaSourceTrackDemuxer(MediaSourceDemuxer* aParent,
, mMonitor("MediaSourceTrackDemuxer")
, mReset(true)
, mPreRoll(TimeUnit::FromMicroseconds(
OpusDataDecoder::IsOpus(mParent->GetTrackInfo(mType)->mMimeType) ? 80000
: 0))
OpusDataDecoder::IsOpus(mParent->GetTrackInfo(mType)->mMimeType)
? 80000
: mParent->GetTrackInfo(mType)->mMimeType.EqualsLiteral("audio/mp4a-latm")
// AAC encoder delay is by default 2112 audio frames.
// See https://developer.apple.com/library/content/documentation/QuickTime/QTFF/QTFFAppenG/QTFFAppenG.html
// So we always seek 2112 frames
? (2112 * 1000000ULL
/ mParent->GetTrackInfo(mType)->GetAsAudioInfo()->mRate)
: 0))
{
}