Lines Matching refs:track

652     Track *track = &mTracks.editItemAt(mTracks.size() - 1);
654 track->mMeta = meta;
655 track->mRate = rate;
656 track->mScale = scale;
657 track->mBytesPerSample = sampleSize;
658 track->mKind = kind;
659 track->mNumSyncSamples = 0;
660 track->mThumbnailSampleSize = 0;
661 track->mThumbnailSampleIndex = -1;
662 track->mMaxSampleSize = 0;
663 track->mAvgChunkSize = 1.0;
664 track->mFirstChunkSize = 0;
674 Track *track = &mTracks.editItemAt(mTracks.size() - 1);
676 if (track->mKind == Track::OTHER) {
681 bool isVideo = (track->mKind == Track::VIDEO);
701 track->mMeta->setInt32(kKeyWidth, width);
702 track->mMeta->setInt32(kKeyHeight, height);
707 track->mMeta->setCString(kKeyMIMEType, MEDIA_MIMETYPE_AUDIO_MPEG);
715 track->mMeta->setInt32(kKeyChannelCount, numChannels);
716 track->mMeta->setInt32(kKeySampleRate, sampleRate);
797 Track *track = &mTracks.editItemAt(trackIndex);
799 if (!IsCorrectChunkType(-1, track->mKind, chunkType)) {
803 if (track->mKind == Track::OTHER) {
813 if (chunkSize > track->mMaxSampleSize) {
814 track->mMaxSampleSize = chunkSize;
817 track->mSamples.push();
820 &track->mSamples.editItemAt(track->mSamples.size() - 1);
828 if (track->mNumSyncSamples < kMaxNumSyncSamplesToScan) {
829 if (chunkSize > track->mThumbnailSampleSize) {
830 track->mThumbnailSampleSize = chunkSize;
832 track->mThumbnailSampleIndex =
833 track->mSamples.size() - 1;
837 ++track->mNumSyncSamples;
865 Track *track = &mTracks.editItemAt(i);
867 if (track->mBytesPerSample > 0) {
873 size_t numSamplesToAverage = track->mSamples.size();
896 track->mFirstChunkSize = size;
905 track->mAvgChunkSize = avgChunkSize;
910 getSampleTime(i, track->mSamples.size() - 1, &durationUs));
912 ALOGV("track %d duration = %.2f secs", i, durationUs / 1E6);
914 track->mMeta->setInt64(kKeyDuration, durationUs);
915 track->mMeta->setInt32(kKeyMaxInputSize, track->mMaxSampleSize);
918 CHECK(track->mMeta->findCString(kKeyMIMEType, &tmp));
923 if (track->mThumbnailSampleIndex >= 0) {
926 getSampleTime(i, track->mThumbnailSampleIndex,
929 track->mMeta->setInt64(kKeyThumbnailTime, thumbnailTimeUs);
1000 Track *track = &mTracks.editItemAt(trackIndex);
1042 track->mMeta->setData(kKeyESDS, kTypeESDS, csd->data(), csd->size());
1048 Track *track = &mTracks.editItemAt(trackIndex);
1097 track->mMeta->setInt32(kKeyWidth, width);
1098 track->mMeta->setInt32(kKeyHeight, height);
1099 track->mMeta->setData(kKeyAVCC, type, csd, csdSize);
1112 const Track &track = mTracks.itemAt(trackIndex);
1114 if (sampleIndex >= track.mSamples.size()) {
1118 const SampleInfo &info = track.mSamples.itemAt(sampleIndex);
1137 if (!IsCorrectChunkType(trackIndex, track.mKind, chunkType)) {
1146 if (track.mBytesPerSample > 0) {
1152 track.mFirstChunkSize + track.mAvgChunkSize * (sampleIndex - 1);
1155 sampleIndex = sampleStartInBytes / track.mBytesPerSample;
1158 *sampleTimeUs = (sampleIndex * 1000000ll * track.mRate) / track.mScale;
1180 const Track &track = mTracks.itemAt(trackIndex);
1184 if (track.mBytesPerSample > 0) {
1186 (timeUs * track.mBytesPerSample)
1187 / track.mRate * track.mScale / 1000000ll;
1189 if (closestByteOffset <= track.mFirstChunkSize) {
1193 (closestByteOffset - track.mFirstChunkSize)
1194 / track.mAvgChunkSize;
1198 closestSampleIndex = timeUs / track.mRate * track.mScale / 1000000ll;
1201 ssize_t numSamples = track.mSamples.size();
1218 track.mSamples.itemAt(prevSyncSampleIndex);
1230 track.mSamples.itemAt(nextSyncSampleIndex);