- Timestamp:
- Jan 6, 2017 10:04:49 AM (8 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Main/src-client/VideoRec.cpp
r65173 r65175 121 121 /** Worker thread. */ 122 122 RTTHREAD Thread; 123 /** Number of stream contexts */124 uint32_t cScreens;125 123 /** Maximal time stamp. */ 126 124 uint64_t u64MaxTimeStamp; … … 128 126 uint32_t uMaxFileSize; 129 127 /** Vector of current video recording stream contexts. */ 130 VideoRecStreams lstStreams;128 VideoRecStreams vecStreams; 131 129 } VIDEORECCONTEXT, *PVIDEORECCONTEXT; 132 130 … … 412 410 break; 413 411 414 for (VideoRecStreams::iterator it = pCtx-> lstStreams.begin(); it != pCtx->lstStreams.end(); it++)412 for (VideoRecStreams::iterator it = pCtx->vecStreams.begin(); it != pCtx->vecStreams.end(); it++) 415 413 { 416 414 PVIDEORECSTREAM pStream = (*it); … … 473 471 try 474 472 { 475 pCtx-> lstStreams.push_back(pStream);473 pCtx->vecStreams.push_back(pStream); 476 474 477 475 pStream->pEBML = new WebMWriter(); … … 486 484 if (RT_SUCCESS(rc)) 487 485 { 488 pCtx->cScreens = cScreens;489 490 486 rc = RTSemEventCreate(&pCtx->WaitEvent); 491 487 AssertRCReturn(rc, rc); … … 506 502 { 507 503 /* Roll back allocations on error. */ 508 VideoRecStreams::iterator it = pCtx-> lstStreams.begin();509 while (it != pCtx-> lstStreams.end())504 VideoRecStreams::iterator it = pCtx->vecStreams.begin(); 505 while (it != pCtx->vecStreams.end()) 510 506 { 511 507 PVIDEORECSTREAM pStream = (*it); … … 517 513 pStream = NULL; 518 514 519 it = pCtx-> lstStreams.erase(it);520 } 521 522 Assert(pCtx-> lstStreams.empty());515 it = pCtx->vecStreams.erase(it); 516 } 517 518 Assert(pCtx->vecStreams.empty()); 523 519 } 524 520 … … 557 553 RTSemEventDestroy(pCtx->TermEvent); 558 554 559 for (VideoRecStreams::iterator it = pCtx-> lstStreams.begin(); it != pCtx->lstStreams.end(); it++)555 for (VideoRecStreams::iterator it = pCtx->vecStreams.begin(); it != pCtx->vecStreams.end(); it++) 560 556 { 561 557 PVIDEORECSTREAM pStream = (*it); … … 607 603 uint32_t uMaxTime, uint32_t uMaxFileSize, const char *pszOptions) 608 604 { 609 AssertPtrReturn(pCtx, VERR_INVALID_PARAMETER);610 AssertReturn(uScreen < pCtx-> cScreens, VERR_INVALID_PARAMETER);605 AssertPtrReturn(pCtx, VERR_INVALID_PARAMETER); 606 AssertReturn(uScreen < pCtx->vecStreams.size(), VERR_INVALID_PARAMETER); 611 607 612 608 pCtx->u64MaxTimeStamp = (uMaxTime > 0 ? RTTimeProgramMilliTS() + uMaxTime * 1000 : 0); 613 609 pCtx->uMaxFileSize = uMaxFileSize; 614 610 615 PVIDEORECSTREAM pStream = pCtx-> lstStreams.at(uScreen);611 PVIDEORECSTREAM pStream = pCtx->vecStreams.at(uScreen); 616 612 617 613 pStream->uTargetWidth = uWidth; … … 738 734 return false; 739 735 740 PVIDEORECSTREAM pStream = pCtx-> lstStreams.at(uScreen);736 PVIDEORECSTREAM pStream = pCtx->vecStreams.at(uScreen); 741 737 if (!pStream->fEnabled) 742 738 return false; … … 763 759 bool VideoRecIsFull(PVIDEORECCONTEXT pCtx, uint32_t uScreen, uint64_t u64TimeStamp) 764 760 { 765 PVIDEORECSTREAM pStream = pCtx-> lstStreams.at(uScreen);761 PVIDEORECSTREAM pStream = pCtx->vecStreams.at(uScreen); 766 762 if(!pStream->fEnabled) 767 763 return false; … … 902 898 do 903 899 { 904 AssertPtrBreakStmt(pu8BufAddr, rc = VERR_INVALID_PARAMETER);905 AssertBreakStmt(uSourceWidth, rc = VERR_INVALID_PARAMETER);906 AssertBreakStmt(uSourceHeight, rc = VERR_INVALID_PARAMETER);907 AssertBreakStmt(uScreen < pCtx-> cScreens, rc = VERR_INVALID_PARAMETER);908 909 PVIDEORECSTREAM pStream = pCtx-> lstStreams.at(uScreen);900 AssertPtrBreakStmt(pu8BufAddr, rc = VERR_INVALID_PARAMETER); 901 AssertBreakStmt(uSourceWidth, rc = VERR_INVALID_PARAMETER); 902 AssertBreakStmt(uSourceHeight, rc = VERR_INVALID_PARAMETER); 903 AssertBreakStmt(uScreen < pCtx->vecStreams.size(), rc = VERR_INVALID_PARAMETER); 904 905 PVIDEORECSTREAM pStream = pCtx->vecStreams.at(uScreen); 910 906 if (!pStream->fEnabled) 911 907 {
Note:
See TracChangeset
for help on using the changeset viewer.