Home | History | Annotate | Download | only in src

Lines Matching refs:audioTrackPtr

566     mMp4FileDataPtr->audioTrackPtr = M4OSA_NULL;
655 if (mMp4FileDataPtr->audioTrackPtr == M4OSA_NULL)
657 mMp4FileDataPtr->audioTrackPtr = (M4MP4W_AudioTrackData
660 ERR_CHECK(mMp4FileDataPtr->audioTrackPtr != M4OSA_NULL,
665 mMp4FileDataPtr->audioTrackPtr->Chunk = M4OSA_NULL;
666 mMp4FileDataPtr->audioTrackPtr->chunkOffsetTable = M4OSA_NULL;
667 mMp4FileDataPtr->audioTrackPtr->chunkSizeTable = M4OSA_NULL;
668 mMp4FileDataPtr->audioTrackPtr->chunkSampleNbTable = M4OSA_NULL;
669 mMp4FileDataPtr->audioTrackPtr->chunkTimeMsTable = M4OSA_NULL;
670 mMp4FileDataPtr->audioTrackPtr->TABLE_STTS = M4OSA_NULL;
671 mMp4FileDataPtr->audioTrackPtr->TABLE_STSZ = M4OSA_NULL;
672 mMp4FileDataPtr->audioTrackPtr->DSI = M4OSA_NULL;
678 mMp4FileDataPtr->audioTrackPtr->Chunk =
681 M4MP4_WRITER, (M4OSA_Char *)"audioTrackPtr->Chunk");
682 ERR_CHECK(mMp4FileDataPtr->audioTrackPtr->Chunk != M4OSA_NULL,
687 mMp4FileDataPtr->audioTrackPtr->Chunk =
689 M4MP4_WRITER, (M4OSA_Char *)"audioTrackPtr->Chunk");
690 ERR_CHECK(mMp4FileDataPtr->audioTrackPtr->Chunk != M4OSA_NULL,
692 mMp4FileDataPtr->audioTrackPtr->Chunk[0] = M4OSA_NULL;
694 mMp4FileDataPtr->audioTrackPtr->chunkOffsetTable =
697 M4MP4_WRITER, (M4OSA_Char *)"audioTrackPtr->chunkOffsetTable");
698 ERR_CHECK(mMp4FileDataPtr->audioTrackPtr->chunkOffsetTable
703 mMp4FileDataPtr->audioTrackPtr->TABLE_STTS =
705 M4MP4_WRITER, (M4OSA_Char *)"audioTrackPtr->TABLE_STTS");
706 ERR_CHECK(mMp4FileDataPtr->audioTrackPtr->TABLE_STTS
708 mMp4FileDataPtr->audioTrackPtr->nbOfAllocatedSttsBlocks = 1;
710 mMp4FileDataPtr->audioTrackPtr->chunkSizeTable =
713 M4MP4_WRITER, (M4OSA_Char *)"audioTrackPtr->chunkSizeTable");
714 ERR_CHECK(mMp4FileDataPtr->audioTrackPtr->chunkSizeTable
716 mMp4FileDataPtr->audioTrackPtr->chunkSampleNbTable =
719 M4MP4_WRITER, (M4OSA_Char *)"audioTrackPtr->chunkSampleNbTable");
720 ERR_CHECK(mMp4FileDataPtr->audioTrackPtr->chunkSampleNbTable
722 mMp4FileDataPtr->audioTrackPtr->chunkTimeMsTable =
725 M4MP4_WRITER, (M4OSA_Char *)"audioTrackPtr->chunkTimeMsTable");
726 ERR_CHECK(mMp4FileDataPtr->audioTrackPtr->chunkTimeMsTable
729 mMp4FileDataPtr->audioTrackPtr->LastAllocatedChunk = 0;
733 mMp4FileDataPtr->audioTrackPtr->MaxChunkSize =
735 mMp4FileDataPtr->audioTrackPtr->MaxAUSize =
737 mMp4FileDataPtr->audioTrackPtr->CommonData.lastCTS = 0;
738 mMp4FileDataPtr->audioTrackPtr->CommonData.sampleNb = 0;
739 mMp4FileDataPtr->audioTrackPtr->CommonData.sampleSize = 0;
740 mMp4FileDataPtr->audioTrackPtr->CommonData.sttsTableEntryNb = 1;
741 mMp4FileDataPtr->audioTrackPtr->CommonData.timescale =
743 mMp4FileDataPtr->audioTrackPtr->chunkSizeTable[0] = 0; /*init*/
744 mMp4FileDataPtr->audioTrackPtr->chunkSampleNbTable[0] = 0; /*init*/
745 mMp4FileDataPtr->audioTrackPtr->chunkTimeMsTable[0] = 0; /*init*/
746 mMp4FileDataPtr->audioTrackPtr->currentChunk =
748 mMp4FileDataPtr->audioTrackPtr->currentPos = 0;
751 mMp4FileDataPtr->audioTrackPtr->currentStsc = 0;
755 mMp4FileDataPtr->audioTrackPtr->microState = M4MP4W_ready;
756 mMp4FileDataPtr->audioTrackPtr->nbOfAllocatedStszBlocks = 0;
757 mMp4FileDataPtr->audioTrackPtr->TABLE_STSZ = M4OSA_NULL;
759 mMp4FileDataPtr->audioTrackPtr->avgBitrate =
761 mMp4FileDataPtr->audioTrackPtr->maxBitrate =
767 mMp4FileDataPtr->audioTrackPtr->CommonData.trackType =
770 mMp4FileDataPtr->audioTrackPtr->sampleDuration =
777 mMp4FileDataPtr->audioTrackPtr->dsiSize =
781 mMp4FileDataPtr->audioTrackPtr->DSI =
783 (M4OSA_Char *)"audioTrackPtr->DSI");
784 ERR_CHECK(mMp4FileDataPtr->audioTrackPtr->DSI != M4OSA_NULL,
787 (void *)mMp4FileDataPtr->audioTrackPtr->DSI,
793 mMp4FileDataPtr->audioTrackPtr->DSI =
795 mMp4FileDataPtr->audioTrackPtr->dsiSize =
802 mMp4FileDataPtr->audioTrackPtr->CommonData.trackType =
805 mMp4FileDataPtr->audioTrackPtr->sampleDuration =
812 mMp4FileDataPtr->audioTrackPtr->dsiSize =
816 mMp4FileDataPtr->audioTrackPtr->DSI =
818 (M4OSA_Char *)"audioTrackPtr->DSI");
819 ERR_CHECK(mMp4FileDataPtr->audioTrackPtr->DSI != M4OSA_NULL,
822 (void *)mMp4FileDataPtr->audioTrackPtr->DSI,
828 mMp4FileDataPtr->audioTrackPtr->DSI =
830 mMp4FileDataPtr->audioTrackPtr->dsiSize =
840 mMp4FileDataPtr->audioTrackPtr->CommonData.trackType =
842 mMp4FileDataPtr->audioTrackPtr->sampleDuration =
845 mMp4FileDataPtr->audioTrackPtr->dsiSize =
848 if (mMp4FileDataPtr->audioTrackPtr->dsiSize != 0)
850 mMp4FileDataPtr->audioTrackPtr->DSI =
853 M4MP4_WRITER, (M4OSA_Char *)"audioTrackPtr->DSI");
854 ERR_CHECK(mMp4FileDataPtr->audioTrackPtr->DSI != M4OSA_NULL,
857 (void *)mMp4FileDataPtr->audioTrackPtr->DSI,
1217 /* if (mMp4FileDataPtr->audioTrackPtr != M4OSA_NULL)*/
1220 ERR_CHECK((mMp4FileDataPtr->audioTrackPtr->microState == M4MP4W_ready),
1222 mMp4FileDataPtr->audioTrackPtr->microState = M4MP4W_writing;
1225 mMp4FileDataPtr->audioTrackPtr->Chunk[0] = (M4OSA_UChar
1226 *)M4OSA_32bitAlignedMalloc(mMp4FileDataPtr->audioTrackPtr->MaxChunkSize,
1227 M4MP4_WRITER, (M4OSA_Char *)"audioTrackPtr->Chunk[0]");
1228 ERR_CHECK(mMp4FileDataPtr->audioTrackPtr->Chunk[0] != M4OSA_NULL,
1256 20 * mMp4FileDataPtr->audioTrackPtr->MaxChunkSize
1257 / mMp4FileDataPtr->audioTrackPtr->MaxAUSize;
1261 < 20 *mMp4FileDataPtr->audioTrackPtr->MaxChunkSize
1262 / mMp4FileDataPtr->audioTrackPtr->MaxAUSize))
1362 safetyFileSize += mMp4FileDataPtr->audioTrackPtr->MaxChunkSize;
1415 if (mMp4FileDataPtr->audioTrackPtr == M4OSA_NULL)
1420 mMp4FileDataPtr->audioTrackPtr->currentChunk,
1423 scale_audio = 1000.0 / mMp4FileDataPtr->audioTrackPtr->CommonData.timescale;
1428 err = M4MP4W_putBlock(mMp4FileDataPtr->audioTrackPtr->Chunk[0],
1429 mMp4FileDataPtr->audioTrackPtr->currentPos,
1464 mMp4FileDataPtr->audioTrackPtr->
1465 chunkOffsetTable[mMp4FileDataPtr->audioTrackPtr->currentChunk] =
1470 mMp4FileDataPtr->audioTrackPtr->currentPos;
1476 mMp4FileDataPtr->audioTrackPtr->
1477 chunkSizeTable[mMp4FileDataPtr->audioTrackPtr->currentChunk] =
1478 mMp4FileDataPtr->audioTrackPtr->currentPos;
1479 mMp4FileDataPtr->audioTrackPtr->
1480 chunkTimeMsTable[mMp4FileDataPtr->audioTrackPtr->currentChunk] =
1481 mMp4FileDataPtr->audioTrackPtr->CommonData.lastCTS;
1483 mMp4FileDataPtr->audioTrackPtr->currentChunk += 1;
1490 if (mMp4FileDataPtr->audioTrackPtr->currentChunk
1491 > mMp4FileDataPtr->audioTrackPtr->LastAllocatedChunk)
1494 mMp4FileDataPtr->audioTrackPtr->LastAllocatedChunk += 1;
1499 if (mMp4FileDataPtr->audioTrackPtr->LastAllocatedChunk
1508 if (((mMp4FileDataPtr->audioTrackPtr->LastAllocatedChunk)
1511 reallocNb = mMp4FileDataPtr->audioTrackPtr->LastAllocatedChunk
1516 mMp4FileDataPtr->audioTrackPtr->Chunk =
1518 (M4OSA_MemAddr32)mMp4FileDataPtr->audioTrackPtr->Chunk,
1522 ERR_CHECK(mMp4FileDataPtr->audioTrackPtr->Chunk != M4OSA_NULL,
1527 mMp4FileDataPtr->audioTrackPtr->chunkOffsetTable =
1529 (M4OSA_MemAddr32)mMp4FileDataPtr->audioTrackPtr->
1534 ERR_CHECK(mMp4FileDataPtr->audioTrackPtr->chunkOffsetTable
1539 mMp4FileDataPtr->audioTrackPtr->chunkSizeTable =
1541 (M4OSA_MemAddr32)mMp4FileDataPtr->audioTrackPtr->
1546 ERR_CHECK(mMp4FileDataPtr->audioTrackPtr->chunkSizeTable
1549 mMp4FileDataPtr->audioTrackPtr->chunkSampleNbTable =
1551 (M4OSA_MemAddr32)mMp4FileDataPtr->audioTrackPtr->
1556 ERR_CHECK(mMp4FileDataPtr->audioTrackPtr->chunkSampleNbTable
1559 mMp4FileDataPtr->audioTrackPtr->chunkTimeMsTable =
1561 (M4OSA_MemAddr32)mMp4FileDataPtr->audioTrackPtr->
1566 ERR_CHECK(mMp4FileDataPtr->audioTrackPtr->chunkTimeMsTable
1573 mMp4FileDataPtr->audioTrackPtr->
1574 Chunk[mMp4FileDataPtr->audioTrackPtr->currentChunk] = (M4OSA_UChar
1575 *)M4OSA_32bitAlignedMalloc(mMp4FileDataPtr->audioTrackPtr->MaxChunkSize,
1576 M4MP4_WRITER, (M4OSA_Char *)"audioTrackPtr->currentChunk");
1577 ERR_CHECK(mMp4FileDataPtr->audioTrackPtr->
1578 Chunk[mMp4FileDataPtr->audioTrackPtr->currentChunk]
1586 *leftSpaceInChunk = mMp4FileDataPtr->audioTrackPtr->MaxChunkSize;
1587 mMp4FileDataPtr->audioTrackPtr->currentPos = 0;
1592 if (mMp4FileDataPtr->audioTrackPtr->currentStsc > 0)
1594 if (( mMp4FileDataPtr->audioTrackPtr->
1595 chunkSampleNbTable[mMp4FileDataPtr->audioTrackPtr->
1596 currentStsc] & 0xFFF) != (mMp4FileDataPtr->audioTrackPtr->
1597 chunkSampleNbTable[mMp4FileDataPtr->audioTrackPtr->currentStsc
1599 mMp4FileDataPtr->audioTrackPtr->currentStsc += 1;
1602 mMp4FileDataPtr->audioTrackPtr->currentStsc += 1;
1605 if (mMp4FileDataPtr->audioTrackPtr->currentStsc
1613 mMp4FileDataPtr->audioTrackPtr->
1614 chunkSampleNbTable[mMp4FileDataPtr->audioTrackPtr->currentStsc] =
1615 0 + (mMp4FileDataPtr->audioTrackPtr->currentChunk << 12);
1620 mMp4FileDataPtr->audioTrackPtr->
1621 chunkSampleNbTable[mMp4FileDataPtr->audioTrackPtr->currentChunk] = 0;
1628 mMp4FileDataPtr->audioTrackPtr->
1629 chunkTimeMsTable[mMp4FileDataPtr->audioTrackPtr->currentChunk] =
1630 (M4OSA_UInt32)(mMp4FileDataPtr->audioTrackPtr->CommonData.lastCTS
1905 1000.0 / mMp4FileDataPtr->audioTrackPtr->CommonData.timescale;
1908 ERR_CHECK((mMp4FileDataPtr->audioTrackPtr->microState
1910 mMp4FileDataPtr->audioTrackPtr->microState = M4MP4W_writing_startAU;
1912 leftSpaceInChunk = mMp4FileDataPtr->audioTrackPtr->MaxChunkSize
1913 - mMp4FileDataPtr->audioTrackPtr->currentPos;
1916 mMp4FileDataPtr->audioTrackPtr->currentPos, leftSpaceInChunk);
1919 (M4OSA_UInt32)(( mMp4FileDataPtr->audioTrackPtr->CommonData.lastCTS
1920 * scale_audio) - mMp4FileDataPtr->audioTrackPtr->
1921 chunkTimeMsTable[mMp4FileDataPtr->audioTrackPtr->
1924 if ((leftSpaceInChunk < mMp4FileDataPtr->audioTrackPtr->MaxAUSize)
1954 auPtr->dataAddress = (M4OSA_MemAddr32)(mMp4FileDataPtr->audioTrackPtr->
1955 Chunk[mMp4FileDataPtr->audioTrackPtr->currentChunk]
1956 + mMp4FileDataPtr->audioTrackPtr->currentPos);
1961 (M4OSA_MemAddr32)(mMp4FileDataPtr->audioTrackPtr->Chunk[0]
1962 + mMp4FileDataPtr->audioTrackPtr->currentPos);
2109 1000.0 / mMp4FileDataPtr->audioTrackPtr->CommonData.timescale;
2122 + mMp4FileDataPtr->audioTrackPtr->currentPos
2123 > mMp4FileDataPtr->audioTrackPtr->MaxChunkSize,
2127 > mMp4FileDataPtr->audioTrackPtr->MaxAUSize,
2183 if ((mMp4FileDataPtr->audioTrackPtr->currentChunk != 0)
2184 && (mMp4FileDataPtr->audioTrackPtr->currentPos == 0))
2186 mMp4FileDataPtr->audioTrackPtr->currentChunk--;
2198 ERR_CHECK((mMp4FileDataPtr->audioTrackPtr->microState
2200 mMp4FileDataPtr->audioTrackPtr->microState = M4MP4W_writing;
2202 mMp4FileDataPtr->audioTrackPtr->currentPos += auPtr->size;
2205 - mMp4FileDataPtr->audioTrackPtr->CommonData.lastCTS;
2210 if (mMp4FileDataPtr->audioTrackPtr->CommonData.sampleNb
2214 mMp4FileDataPtr->audioTrackPtr->CommonData.sampleSize = auPtr->size;
2219 /*mMp4FileDataPtr->audioTrackPtr->sampleDuration = delta; */
2226 if (mMp4FileDataPtr->audioTrackPtr->CommonData.sampleSize != 0)
2228 if (mMp4FileDataPtr->audioTrackPtr->CommonData.sampleSize
2233 mMp4FileDataPtr->audioTrackPtr->nbOfAllocatedStszBlocks =
2234 1 + mMp4FileDataPtr->audioTrackPtr->
2237 mMp4FileDataPtr->audioTrackPtr->TABLE_STSZ =
2239 mMp4FileDataPtr->audioTrackPtr->
2242 M4MP4_WRITER, (M4OSA_Char *)"audioTrackPtr->TABLE_STSZ");
2243 ERR_CHECK(mMp4FileDataPtr->audioTrackPtr->TABLE_STSZ
2247 i < mMp4FileDataPtr->audioTrackPtr->CommonData.sampleNb;
2250 mMp4FileDataPtr->audioTrackPtr->TABLE_STSZ[i] =
2251 mMp4FileDataPtr->audioTrackPtr->
2254 mMp4FileDataPtr->audioTrackPtr->
2255 TABLE_STSZ[mMp4FileDataPtr->audioTrackPtr->
2257 mMp4FileDataPtr->audioTrackPtr->CommonData.sampleSize =
2262 4 * mMp4FileDataPtr->audioTrackPtr->
2271 if (4 *(mMp4FileDataPtr->audioTrackPtr->CommonData.sampleNb + 3)
2272 >= mMp4FileDataPtr->audioTrackPtr->nbOfAllocatedStszBlocks
2282 if (4 *mMp4FileDataPtr->audioTrackPtr->CommonData.sampleNb
2283 >= mMp4FileDataPtr->audioTrackPtr->nbOfAllocatedStszBlocks
2286 mMp4FileDataPtr->audioTrackPtr->nbOfAllocatedStszBlocks +=
2288 mMp4FileDataPtr->audioTrackPtr->TABLE_STSZ =
2290 (M4OSA_MemAddr32)mMp4FileDataPtr->audioTrackPtr->
2291 TABLE_STSZ, ( mMp4FileDataPtr->audioTrackPtr->
2294 mMp4FileDataPtr->audioTrackPtr->
2297 ERR_CHECK(mMp4FileDataPtr->audioTrackPtr->TABLE_STSZ
2303 mMp4FileDataPtr->audioTrackPtr->
2304 TABLE_STSZ[mMp4FileDataPtr->audioTrackPtr->
2312 if (delta > mMp4FileDataPtr->audioTrackPtr->sampleDuration)
2315 mMp4FileDataPtr->audioTrackPtr->sampleDuration = delta;
2318 if (mMp4FileDataPtr->audioTrackPtr->CommonData.sampleNb
2321 mMp4FileDataPtr->audioTrackPtr->TABLE_STTS[0] = 1;
2322 mMp4FileDataPtr->audioTrackPtr->TABLE_STTS[1] = 0;
2323 mMp4FileDataPtr->audioTrackPtr->CommonData.sttsTableEntryNb = 1;
2326 else if (mMp4FileDataPtr->audioTrackPtr->CommonData.sampleNb
2331 mMp4FileDataPtr->audioTrackPtr->TABLE_STTS[0] += 1;
2335 mMp4FileDataPtr->audioTrackPtr->TABLE_STTS[1] = delta;
2336 mMp4FileDataPtr->audioTrackPtr->CommonData.sttsTableEntryNb += 1;
2342 lastSampleDur = mMp4FileDataPtr->audioTrackPtr->TABLE_STTS[2
2343 * (mMp4FileDataPtr->audioTrackPtr->
2348 if (8 *(mMp4FileDataPtr->audioTrackPtr->CommonData.sttsTableEntryNb
2349 + 3) >= mMp4FileDataPtr->audioTrackPtr->nbOfAllocatedSttsBlocks
2358 if (8 *mMp4FileDataPtr->audioTrackPtr->CommonData.sttsTableEntryNb
2359 >= mMp4FileDataPtr->audioTrackPtr->nbOfAllocatedSttsBlocks
2362 mMp4FileDataPtr->audioTrackPtr->nbOfAllocatedSttsBlocks += 1;
2363 mMp4FileDataPtr->audioTrackPtr->TABLE_STTS =
2365 (M4OSA_MemAddr32)mMp4FileDataPtr->audioTrackPtr->
2366 TABLE_STTS, ( mMp4FileDataPtr->audioTrackPtr->
2369 mMp4FileDataPtr->audioTrackPtr->
2372 ERR_CHECK(mMp4FileDataPtr->audioTrackPtr->TABLE_STTS
2380 mMp4FileDataPtr->audioTrackPtr->TABLE_STTS[2 *(
2381 mMp4FileDataPtr->audioTrackPtr->
2383 mMp4FileDataPtr->audioTrackPtr->TABLE_STTS[2 *(
2384 mMp4FileDataPtr->audioTrackPtr->
2386 mMp4FileDataPtr->audioTrackPtr->CommonData.sttsTableEntryNb +=
2393 mMp4FileDataPtr->audioTrackPtr->TABLE_STTS[2 *(
2394 mMp4FileDataPtr->audioTrackPtr->
2398 mMp4FileDataPtr->audioTrackPtr->CommonData.sampleNb += 1;
2401 mMp4FileDataPtr->audioTrackPtr->
2402 chunkSampleNbTable[mMp4FileDataPtr->audioTrackPtr->currentStsc] +=
2407 mMp4FileDataPtr->audioTrackPtr->
2408 chunkSampleNbTable[mMp4FileDataPtr->audioTrackPtr->currentChunk] +=
2414 mMp4FileDataPtr->audioTrackPtr->CommonData.lastCTS =
2754 *(M4OSA_Double)mMp4FileDataPtr->audioTrackPtr->MaxAUSize
2760 *(M4OSA_Double)mMp4FileDataPtr->audioTrackPtr->MaxAUSize
2786 && (mMp4FileDataPtr->audioTrackPtr->CommonData.sampleNb
2787 != 0)); /*((mMp4FileDataPtr->audioTrackPtr != M4OSA_NULL) &&
2788 (mMp4FileDataPtr->audioTrackPtr->CommonData.sampleNb != 0));*/
3079 if (mMp4FileDataPtr->audioTrackPtr != M4OSA_NULL)
3085 mMp4FileDataPtr->audioTrackPtr->CommonData.lastCTS
3086 * (1000.0 / mMp4FileDataPtr->audioTrackPtr->
3260 if ((M4OSA_NULL == mMp4FileDataPtr->audioTrackPtr->chunkOffsetTable)
3261 || (M4OSA_NULL == mMp4FileDataPtr->audioTrackPtr->chunkSizeTable)
3263 == mMp4FileDataPtr->audioTrackPtr->chunkSampleNbTable)
3265 == mMp4FileDataPtr->audioTrackPtr->chunkTimeMsTable)
3266 || (M4OSA_NULL == mMp4FileDataPtr->audioTrackPtr->TABLE_STTS))
3275 mMp4FileDataPtr->audioTrackPtr->microState = M4MP4W_closed;
3277 if (mMp4FileDataPtr->audioTrackPtr->CommonData.trackType == M4SYS_kAAC)
3281 dsi = mMp4FileDataPtr->audioTrackPtr->dsiSize; /*variable size*/
3299 if (mMp4FileDataPtr->audioTrackPtr->CommonData.trackType
3315 if (mMp4FileDataPtr->audioTrackPtr->CommonData.sampleSize == 0)
3317 if (M4OSA_NULL == mMp4FileDataPtr->audioTrackPtr->TABLE_STSZ)
3325 M4MP4W_table32ToBE(mMp4FileDataPtr->audioTrackPtr->TABLE_STSZ,
3326 mMp4FileDataPtr->audioTrackPtr->CommonData.sampleNb);
3328 4 * mMp4FileDataPtr->audioTrackPtr->CommonData.sampleNb;
3330 4 * mMp4FileDataPtr->audioTrackPtr->CommonData.sampleNb;
3332 4 * mMp4FileDataPtr->audioTrackPtr->CommonData.sampleNb;
3334 4 * mMp4FileDataPtr->audioTrackPtr->CommonData.sampleNb;
3336 4 * mMp4FileDataPtr->audioTrackPtr->CommonData.sampleNb;
3337 moovSize += 4 * mMp4FileDataPtr->audioTrackPtr->CommonData.sampleNb;
3343 for ( i = 0; i < mMp4FileDataPtr->audioTrackPtr->currentChunk; i++ )
3345 a_dataSize += mMp4FileDataPtr->audioTrackPtr->chunkSizeTable[i];
3351 if (mMp4FileDataPtr->audioTrackPtr->currentPos > 0)
3353 err = M4MP4W_putBlock(mMp4FileDataPtr->audioTrackPtr->Chunk[0],
3354 mMp4FileDataPtr->audioTrackPtr->currentPos,
3364 mMp4FileDataPtr->audioTrackPtr->currentChunk,
3368 mMp4FileDataPtr->audioTrackPtr->
3369 chunkOffsetTable[mMp4FileDataPtr->audioTrackPtr->currentChunk] =
3374 mMp4FileDataPtr->audioTrackPtr->currentPos;
3380 mMp4FileDataPtr->audioTrackPtr->
3381 chunkSizeTable[mMp4FileDataPtr->audioTrackPtr->currentChunk] =
3382 mMp4FileDataPtr->audioTrackPtr->currentPos;
3384 mMp4FileDataPtr->audioTrackPtr->currentPos; /*add last chunk size*/
3387 if ((mMp4FileDataPtr->audioTrackPtr->currentChunk != 0)
3388 && (mMp4FileDataPtr->audioTrackPtr->currentPos == 0))
3390 mMp4FileDataPtr->audioTrackPtr->currentChunk--;
3394 if ((mMp4FileDataPtr->audioTrackPtr->
3395 chunkSampleNbTable[mMp4FileDataPtr->audioTrackPtr->
3398 mMp4FileDataPtr->audioTrackPtr->currentStsc--;
3403 a_trakDuration = mMp4FileDataPtr->audioTrackPtr->
3407 if (mMp4FileDataPtr->audioTrackPtr->CommonData.sttsTableEntryNb != 1)
3412 mMp4FileDataPtr->audioTrackPtr->TABLE_STTS[2
3413 *(mMp4FileDataPtr->audioTrackPtr
3418 a_trakDuration += mMp4FileDataPtr->audioTrackPtr->TABLE_STTS[2
3419 * (mMp4FileDataPtr->audioTrackPtr->
3422 else if (0 == mMp4FileDataPtr->audioTrackPtr->CommonData.lastCTS)
3424 if (mMp4FileDataPtr->audioTrackPtr->CommonData.trackType
3427 if (12200 == mMp4FileDataPtr->audioTrackPtr->avgBitrate)
3430 * mMp4FileDataPtr->audioTrackPtr->sampleDuration;
3432 else if (10200 == mMp4FileDataPtr->audioTrackPtr->avgBitrate)
3435 * mMp4FileDataPtr->audioTrackPtr->sampleDuration;
3437 else if (7950 == mMp4FileDataPtr->audioTrackPtr->avgBitrate)
3440 * mMp4FileDataPtr->audioTrackPtr->sampleDuration;
3442 else if (7400 == mMp4FileDataPtr->audioTrackPtr->avgBitrate)
3445 * mMp4FileDataPtr->audioTrackPtr->sampleDuration;
3447 else if (6700 == mMp4FileDataPtr->audioTrackPtr->avgBitrate)
3450 * mMp4FileDataPtr->audioTrackPtr->sampleDuration;
3452 else if (5900 == mMp4FileDataPtr->audioTrackPtr->avgBitrate)
3455 * mMp4FileDataPtr->audioTrackPtr->sampleDuration;
3457 else if (5150 == mMp4FileDataPtr->audioTrackPtr->avgBitrate)
3460 * mMp4FileDataPtr->audioTrackPtr->sampleDuration;
3462 else if (4750 == mMp4FileDataPtr->audioTrackPtr->avgBitrate)
3465 * mMp4FileDataPtr->audioTrackPtr->sampleDuration;
3471 1000.0 / mMp4FileDataPtr->audioTrackPtr->CommonData.timescale;
3477 a_stscSize += 12 * mMp4FileDataPtr->audioTrackPtr->currentStsc;
3478 a_stblSize += 12 * mMp4FileDataPtr->audioTrackPtr->currentStsc;
3479 a_minfSize += 12 * mMp4FileDataPtr->audioTrackPtr->currentStsc;
3480 a_mdiaSize += 12 * mMp4FileDataPtr->audioTrackPtr->currentStsc;
3481 a_trakSize += 12 * mMp4FileDataPtr->audioTrackPtr->currentStsc;
3482 moovSize += 12 * mMp4FileDataPtr->audioTrackPtr->currentStsc;
3485 a_stcoSize += 4 * mMp4FileDataPtr->audioTrackPtr->currentChunk;
3486 a_stblSize += 4 * mMp4FileDataPtr->audioTrackPtr->currentChunk;
3487 a_minfSize += 4 * mMp4FileDataPtr->audioTrackPtr->currentChunk;
3488 a_mdiaSize += 4 * mMp4FileDataPtr->audioTrackPtr->currentChunk;
3489 a_trakSize += 4 * mMp4FileDataPtr->audioTrackPtr->currentChunk;
3490 moovSize += 4 * mMp4FileDataPtr->audioTrackPtr->currentChunk;
3495 a_stscSize += 12 * mMp4FileDataPtr->audioTrackPtr->currentChunk;
3496 a_stcoSize += 4 * mMp4FileDataPtr->audioTrackPtr->currentChunk;
3497 a_stblSize += 16 * mMp4FileDataPtr->audioTrackPtr->currentChunk;
3498 a_minfSize += 16 * mMp4FileDataPtr->audioTrackPtr->currentChunk;
3499 a_mdiaSize += 16 * mMp4FileDataPtr->audioTrackPtr->currentChunk;
3500 a_trakSize += 16 * mMp4FileDataPtr->audioTrackPtr->currentChunk;
3501 moovSize += 16 * mMp4FileDataPtr->audioTrackPtr->currentChunk;
3507 a_sttsSize = 16 + 8 * (mMp4FileDataPtr->audioTrackPtr->
3517 mMp4FileDataPtr->audioTrackPtr->
3518 chunkTimeMsTable[mMp4FileDataPtr->audioTrackPtr->currentChunk] =
3676 M4MP4W_putBE32(mMp4FileDataPtr->audioTrackPtr->CommonData.timescale,
3698 mMp4FileDataPtr->audioTrackPtr->CommonData.sttsTableEntryNb - 1,
3701 M4MP4W_table32ToBE(mMp4FileDataPtr->audioTrackPtr->TABLE_STTS,
3702 2 * (mMp4FileDataPtr->audioTrackPtr->CommonData.sttsTableEntryNb
3705 *)mMp4FileDataPtr->audioTrackPtr->TABLE_STTS,
3706 ( mMp4FileDataPtr->audioTrackPtr->CommonData.sttsTableEntryNb - 1)
3745 M4MP4W_putBE32(mMp4FileDataPtr->audioTrackPtr->CommonData.timescale
3771 M4MP4W_putBE24(mMp4FileDataPtr->audioTrackPtr->avgBitrate * 5,
3775 M4MP4W_putBE32(mMp4FileDataPtr->audioTrackPtr->maxBitrate,
3779 M4MP4W_putBE32(mMp4FileDataPtr->audioTrackPtr->avgBitrate,
3785 CLEANUPonERR(M4MP4W_putByte(mMp4FileDataPtr->audioTrackPtr->dsiSize,
3788 CLEANUPonERR(M4MP4W_putBlock(mMp4FileDataPtr->audioTrackPtr->DSI,
3789 mMp4FileDataPtr->audioTrackPtr->dsiSize,
3814 (M4OSA_UInt8)(mMp4FileDataPtr->audioTrackPtr->sampleDuration
3817 if (mMp4FileDataPtr->audioTrackPtr->DSI != M4OSA_NULL)
3823 mMp4FileDataPtr->audioTrackPtr->DSI[localI]);
3851 (M4OSA_UInt8)(mMp4FileDataPtr->audioTrackPtr->sampleDuration
3854 if (mMp4FileDataPtr->audioTrackPtr->DSI != M4OSA_NULL)
3860 mMp4FileDataPtr->audioTrackPtr->DSI[localI]);
3867 mMp4FileDataPtr->audioTrackPtr->DSI[localI]);
3881 mMp4FileDataPtr->audioTrackPtr->CommonData.sampleSize,
3884 M4MP4W_putBE32(mMp4FileDataPtr->audioTrackPtr->CommonData.sampleNb,
3888 if (mMp4FileDataPtr->audioTrackPtr->CommonData.sampleSize == 0)
3891 *)mMp4FileDataPtr->audioTrackPtr->TABLE_STSZ,
3892 mMp4FileDataPtr->audioTrackPtr->CommonData.sampleNb * 4,
3903 CLEANUPonERR(M4MP4W_putBE32(mMp4FileDataPtr->audioTrackPtr->currentStsc
3906 for ( i = 0; i <= mMp4FileDataPtr->audioTrackPtr->currentStsc; i++ )
3909 ( mMp4FileDataPtr->audioTrackPtr->chunkSampleNbTable[i]
3912 CLEANUPonERR(M4MP4W_putBE32((mMp4FileDataPtr->audioTrackPtr->
3921 CLEANUPonERR(M4MP4W_putBE32(mMp4FileDataPtr->audioTrackPtr->currentChunk
3924 for ( i = 0; i <= mMp4FileDataPtr->audioTrackPtr->currentChunk; i++ )
3929 mMp4FileDataPtr->audioTrackPtr->chunkSampleNbTable[i],
3942 CLEANUPonERR(M4MP4W_putBE32(mMp4FileDataPtr->audioTrackPtr->currentChunk
3947 for ( i = 0; i <= mMp4FileDataPtr->audioTrackPtr->currentChunk; i++ )
3951 a_trakOffset += mMp4FileDataPtr->audioTrackPtr->chunkSizeTable[i];
3963 for ( i = 0; i <= mMp4FileDataPtr->audioTrackPtr->currentChunk; i++ )
3966 mMp4FileDataPtr->audioTrackPtr->chunkOffsetTable[i],
4343 && (mMp4FileDataPtr->audioTrackPtr->currentChunk >= i))
4346 mMp4FileDataPtr->audioTrackPtr->chunkSizeTable[i];
4393 for ( i = 0; i <= mMp4FileDataPtr->audioTrackPtr->currentChunk;
4397 M4MP4W_putBlock(mMp4FileDataPtr->audioTrackPtr->Chunk[i],
4398 mMp4FileDataPtr->audioTrackPtr->chunkSizeTable[i],
4419 for ( i = 0; i <= max(mMp4FileDataPtr->audioTrackPtr->currentChunk,
4422 if (i <= mMp4FileDataPtr->audioTrackPtr->currentChunk)
4425 M4MP4W_putBlock(mMp4FileDataPtr->audioTrackPtr->Chunk[i],
4426 mMp4FileDataPtr->audioTrackPtr->chunkSizeTable[i],
4652 mMp4FileDataPtr->audioTrackPtr->MaxChunkSize;
4763 mMp4FileDataPtr->audioTrackPtr->MaxAUSize;
4874 mMp4FileDataPtr->audioTrackPtr->MaxChunkSize =
4899 mMp4FileDataPtr->audioTrackPtr->MaxChunkSize =
5022 /*if (mMp4FileDataPtr->audioTrackPtr == M4OSA_NULL)*/
5026 mMp4FileDataPtr->audioTrackPtr->MaxAUSize =
5045 mMp4FileDataPtr->audioTrackPtr->MaxAUSize =
5328 *state = mMp4FileDataPtr->audioTrackPtr->microState;