mmplugins/lib3gp/impl/src/mp4compose.cpp
branchRCL_3
changeset 11 d5f04de580b7
parent 0 40261b775718
child 39 3f0ddfac3ede
equal deleted inserted replaced
8:bc06d8566074 11:d5f04de580b7
  1309         udta->atomcontentsize = bufferSize;
  1309         udta->atomcontentsize = bufferSize;
  1310         }
  1310         }
  1311 
  1311 
  1312     return MP4_OK;
  1312     return MP4_OK;
  1313     }
  1313     }
  1314 
  1314 	
       
  1315 	
  1315 extern EXPORT_C MP4Err MP4SetCustomFileBufferSizes( MP4Handle apihandle, 
  1316 extern EXPORT_C MP4Err MP4SetCustomFileBufferSizes( MP4Handle apihandle, 
  1316                                                                mp4_u32 mediaWriteBufferSize,
  1317                                                                mp4_u32 mediaWriteBufferSize,
  1317                                                                mp4_u32 writeBufferMaxCount,
  1318                                                                mp4_u32 writeBufferMaxCount,
  1318                                                                mp4_u32 readBufferSize )
  1319                                                                mp4_u32 readBufferSize )
  1319     {
  1320     {
  1320     MP4HandleImp handle = (MP4HandleImp)apihandle;
  1321     MP4HandleImp handle = (MP4HandleImp)apihandle;
  1321 
  1322 
  1322     if (!handle)
  1323     if (!handle)
  1323         return MP4_ERROR;
  1324         return MP4_ERROR;
  1324     
  1325     
  1325     // Read Buffer size
  1326     // If no specific file size is given we try to use an 'optimal' buffer size.
  1326     if ( (readBufferSize) && 
  1327     if (readBufferSize == 0)
  1327          (readBufferSize != handle->readBufferSize) )
  1328     	{
       
  1329     	readBufferSize = RecommendedBufferSize(handle);
       
  1330 		}
       
  1331 
       
  1332 	if (readBufferSize > handle->readBufferSize)
  1328         {
  1333         {
  1329         handle->readBufferSize = readBufferSize;
  1334         handle->readBufferSize = readBufferSize;
  1330         if (handle->diskReadBuf)
  1335         if (handle->diskReadBuf)
  1331             {
  1336             {
  1332             mp4free(handle->diskReadBuf);
  1337             mp4free(handle->diskReadBuf);
       
  1338             handle->diskReadBuf = NULL;
  1333             if ((handle->diskReadBuf = (mp4_u8 *)mp4malloc(handle->readBufferSize)) == NULL)
  1339             if ((handle->diskReadBuf = (mp4_u8 *)mp4malloc(handle->readBufferSize)) == NULL)
  1334                 {
  1340                 {
  1335                 return MP4_OUT_OF_MEMORY;
  1341                 return MP4_OUT_OF_MEMORY;
  1336                 }
  1342                 }
  1337             }
  1343             }