VirtualBox

Changeset 45838 in vbox for trunk/src/VBox/Main


Ignore:
Timestamp:
Apr 30, 2013 1:54:20 PM (12 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
85412
Message:

VPX: plugged memory leak; introduced rate parameter; clear artefacts from previous frames after resize; cleanup

Location:
trunk/src/VBox/Main
Files:
6 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Main/idl/VirtualBox.xidl

    r45810 r45838  
    42394239    <attribute name="VideoCaptureFile" type="wstring" default="Test.webm">
    42404240      <desc>
    4241         This setting determines what filename VirtualBox uses to save
     4241        This setting determines the filename VirtualBox uses to save
    42424242        the recorded content.</desc>
    42434243    </attribute>
     
    42454245    <attribute name="VideoCaptureWidth" type="unsigned long" default="640">
    42464246      <desc>
    4247         This setting determines what should be the horizontal resolution of
    4248         recorded video.</desc>
     4247        This setting determines the horizontal resolution of the recorded video.</desc>
    42494248    </attribute>
    42504249
    42514250    <attribute name="VideoCaptureHeight" type="unsigned long" default="480">
    42524251      <desc>
    4253         This setting determines what should be the vertical resolution
    4254         of recorded video.</desc>
     4252        This setting determines the vertical resolution of the recorded video.</desc>
     4253    </attribute>
     4254
     4255    <attribute name="VideoCaptureRate" type="unsigned long" default="512">
     4256      <desc>
     4257        This setting determines the bitrate in kilobits per second
     4258      </desc>
    42554259    </attribute>
    42564260
  • trunk/src/VBox/Main/include/DisplayImpl.h

    r45674 r45838  
    295295
    296296#ifdef VBOX_WITH_VPX
    297     VIDEORECCONTEXT *mpVideoRecContext;
     297    VIDEORECCONTEXT *mpVideoRecCtx;
    298298#endif
    299299};
  • trunk/src/VBox/Main/include/MachineImpl.h

    r45660 r45838  
    259259        ULONG               mVideoCaptureWidth;
    260260        ULONG               mVideoCaptureHeight;
     261        ULONG               mVideoCaptureRate;
    261262        Bstr                mVideoCaptureFile;
    262263        BOOL                mVideoCaptureEnabled;
     
    410411    STDMETHOD(COMGETTER(CPUExecutionCap))(ULONG *aExecutionCap);
    411412    STDMETHOD(COMSETTER(CPUExecutionCap))(ULONG aExecutionCap);
    412     STDMETHOD(COMGETTER(EmulatedUSBCardReaderEnabled))(BOOL *enabled);
    413     STDMETHOD(COMSETTER(EmulatedUSBCardReaderEnabled))(BOOL enabled);
    414     STDMETHOD(COMGETTER(EmulatedUSBWebcameraEnabled))(BOOL *enabled);
    415     STDMETHOD(COMSETTER(EmulatedUSBWebcameraEnabled))(BOOL enabled);
     413    STDMETHOD(COMGETTER(EmulatedUSBCardReaderEnabled))(BOOL *aEnabled);
     414    STDMETHOD(COMSETTER(EmulatedUSBCardReaderEnabled))(BOOL aEnabled);
     415    STDMETHOD(COMGETTER(EmulatedUSBWebcameraEnabled))(BOOL *aEnabled);
     416    STDMETHOD(COMSETTER(EmulatedUSBWebcameraEnabled))(BOOL aEnabled);
    416417    STDMETHOD(COMGETTER(HPETEnabled))(BOOL *enabled);
    417418    STDMETHOD(COMSETTER(HPETEnabled))(BOOL enabled);
     
    424425    STDMETHOD(COMGETTER(VRAMSize))(ULONG *memorySize);
    425426    STDMETHOD(COMSETTER(VRAMSize))(ULONG memorySize);
    426     STDMETHOD(COMGETTER(Accelerate3DEnabled))(BOOL *enabled);
    427     STDMETHOD(COMSETTER(Accelerate3DEnabled))(BOOL enabled);
    428     STDMETHOD(COMGETTER(Accelerate2DVideoEnabled))(BOOL *enabled);
    429     STDMETHOD(COMSETTER(Accelerate2DVideoEnabled))(BOOL enabled);
     427    STDMETHOD(COMGETTER(Accelerate3DEnabled))(BOOL *aEnabled);
     428    STDMETHOD(COMSETTER(Accelerate3DEnabled))(BOOL aEnabled);
     429    STDMETHOD(COMGETTER(Accelerate2DVideoEnabled))(BOOL *aEnabled);
     430    STDMETHOD(COMSETTER(Accelerate2DVideoEnabled))(BOOL aEnabled);
    430431    STDMETHOD(COMGETTER(MonitorCount))(ULONG *monitorCount);
    431432    STDMETHOD(COMSETTER(MonitorCount))(ULONG monitorCount);
     
    434435    STDMETHOD(COMGETTER(VideoCaptureFile))(BSTR * ppChVideoRecFilename);
    435436    STDMETHOD(COMSETTER(VideoCaptureFile))(IN_BSTR pChVideoRecFilename);
    436     STDMETHOD(COMGETTER(VideoCaptureWidth))(ULONG *u32VideoRecHorzRes);
    437     STDMETHOD(COMSETTER(VideoCaptureWidth))(ULONG u32VideoRecHorzRes);
    438     STDMETHOD(COMGETTER(VideoCaptureHeight))(ULONG *u32VideoRecVertRes);
    439     STDMETHOD(COMSETTER(VideoCaptureHeight))(ULONG u32VideoRecVertRes);
     437    STDMETHOD(COMGETTER(VideoCaptureWidth))(ULONG *aHorzRes);
     438    STDMETHOD(COMSETTER(VideoCaptureWidth))(ULONG aorzRes);
     439    STDMETHOD(COMGETTER(VideoCaptureHeight))(ULONG *aVertRes);
     440    STDMETHOD(COMSETTER(VideoCaptureHeight))(ULONG aVertRes);
     441    STDMETHOD(COMGETTER(VideoCaptureRate))(ULONG *aRate);
     442    STDMETHOD(COMSETTER(VideoCaptureRate))(ULONG aRate);
    440443    STDMETHOD(COMGETTER(BIOSSettings))(IBIOSSettings **biosSettings);
    441444    STDMETHOD(COMGETTER(SnapshotFolder))(BSTR *aSavedStateFolder);
  • trunk/src/VBox/Main/src-client/DisplayImpl.cpp

    r45776 r45838  
    480480
    481481#ifdef VBOX_WITH_VPX
    482     if (VideoRecContextCreate(&mpVideoRecContext))
     482    if (VideoRecContextCreate(&mpVideoRecCtx))
    483483    {
    484484        LogFlow(("Failed to create Video Recording Context\n"));
     
    490490    if (fEnabled)
    491491    {
    492         ULONG ulCaptWidth;
    493         mParent->machine()->COMGETTER(VideoCaptureWidth)(&ulCaptWidth);
    494         ULONG ulCaptHeight;
    495         mParent->machine()->COMGETTER(VideoCaptureHeight)(&ulCaptHeight);
    496         BSTR strCaptFile;
    497         mParent->machine()->COMGETTER(VideoCaptureFile)(&strCaptFile);
    498         if (VideoRecContextInit(mpVideoRecContext, strCaptFile, ulCaptWidth, ulCaptHeight))
     492        ULONG ulWidth;
     493        mParent->machine()->COMGETTER(VideoCaptureWidth)(&ulWidth);
     494        ULONG ulHeight;
     495        mParent->machine()->COMGETTER(VideoCaptureHeight)(&ulHeight);
     496        ULONG ulRate;
     497        mParent->machine()->COMGETTER(VideoCaptureRate)(&ulRate);
     498        BSTR strFile;
     499        mParent->machine()->COMGETTER(VideoCaptureFile)(&strFile);
     500        if (VideoRecContextInit(mpVideoRecCtx, strFile, ulWidth, ulHeight, ulRate))
    499501        {
    500502            LogFlow(("Failed to initialize video recording context!\n"));
    501503            return E_FAIL;
    502504        }
    503         LogFlow(("Video recording as VPX with %lux%lu to '%ls' enabled!\n",
    504                   ulCaptWidth, ulCaptHeight, strCaptFile));
     505        LogFlow(("Video recording as VPX with %lux%lu @ %lukbps to '%ls' enabled!\n",
     506                  ulWidth, ulHeight, ulRate, strFile));
    505507    }
    506508#endif
     
    555557
    556558#ifdef VBOX_WITH_VPX
    557     if (mpVideoRecContext)
    558         VideoRecContextClose(mpVideoRecContext);
     559    if (mpVideoRecCtx)
     560        VideoRecContextClose(mpVideoRecCtx);
    559561#endif
    560562}
     
    33153317
    33163318#ifdef VBOX_WITH_VPX
    3317     if (   pDisplay->mpVideoRecContext
    3318         && VideoRecIsEnabled(pDisplay->mpVideoRecContext))
     3319    if (   pDisplay->mpVideoRecCtx
     3320        && VideoRecIsEnabled(pDisplay->mpVideoRecCtx))
    33193321    {
    33203322        uint32_t u32VideoRecImgFormat = VPX_IMG_FMT_NONE;
     
    33263328
    33273329        uint64_t us = RTTimeProgramMicroTS();
    3328         LogRel(("CopyToIntBuffer start\n"));
    33293330        if (   !pFBInfo->pFramebuffer.isNull()
    33303331            && !pFBInfo->fDisabled
     
    33333334            if (pFBInfo->fVBVAEnabled && pFBInfo->pu8FramebufferVRAM)
    33343335            {
    3335                 rc = VideoRecCopyToIntBuffer(pDisplay->mpVideoRecContext, 0, 0,
     3336                rc = VideoRecCopyToIntBuffer(pDisplay->mpVideoRecCtx, 0, 0,
    33363337                                             FramebufferPixelFormat_FOURCC_RGB, pFBInfo->u16BitsPerPixel,
    33373338                                             pFBInfo->u32LineSize, pFBInfo->w, pFBInfo->h,
     
    33433344            else
    33443345            {
    3345                 rc = VideoRecCopyToIntBuffer(pDisplay->mpVideoRecContext, 0, 0,
     3346                rc = VideoRecCopyToIntBuffer(pDisplay->mpVideoRecCtx, 0, 0,
    33463347                                             FramebufferPixelFormat_FOURCC_RGB, pDrv->IConnector.cBits,
    33473348                                             pDrv->IConnector.cbScanline, pDrv->IConnector.cx,
     
    33703371                    break;
    33713372            }
    3372             LogRel(("  CopyToIntBuffer done %Rrc %llu\n", rc, RTTimeProgramMicroTS()-us));
    33733373
    33743374            /* Just return in case of failure without any assertion */
    33753375            if (RT_SUCCESS(rc))
    33763376            {
    3377                 LogRel(("  VideoRecDoRGBToYUV done %Rrc %llu\n", rc, RTTimeProgramMicroTS()-us));
    3378                 rc = VideoRecDoRGBToYUV(pDisplay->mpVideoRecContext, u32VideoRecImgFormat);
     3377                rc = VideoRecDoRGBToYUV(pDisplay->mpVideoRecCtx, u32VideoRecImgFormat);
    33793378                if (RT_SUCCESS(rc))
    3380                     VideoRecEncodeAndWrite(pDisplay->mpVideoRecContext, ulGuestWidth, ulGuestHeight);
    3381                 LogRel(("  VideoRecEncodeAndWrite done %Rrc %llu\n", rc, RTTimeProgramMicroTS()-us));
     3379                    VideoRecEncodeAndWrite(pDisplay->mpVideoRecCtx, ulGuestWidth, ulGuestHeight);
     3380                LogRel(("Wrote video frame in %lluus\n", RTTimeProgramMicroTS()-us));
    33823381            }
    33833382        }
  • trunk/src/VBox/Main/src-server/MachineImpl.cpp

    r45814 r45838  
    170170    mVideoCaptureWidth = 1024;
    171171    mVideoCaptureHeight = 768;
     172    mVideoCaptureRate = 512;
    172173    mVideoCaptureEnabled = false;
    173174
     
    15181519
    15191520
    1520 STDMETHODIMP Machine::COMGETTER(CPUHotPlugEnabled)(BOOL *enabled)
    1521 {
    1522     CheckComArgOutPointerValid(enabled);
     1521STDMETHODIMP Machine::COMGETTER(CPUHotPlugEnabled)(BOOL *aEnabled)
     1522{
     1523    CheckComArgOutPointerValid(aEnabled);
    15231524
    15241525    AutoCaller autoCaller(this);
     
    15271528    AutoReadLock alock(this COMMA_LOCKVAL_SRC_POS);
    15281529
    1529     *enabled = mHWData->mCPUHotPlugEnabled;
    1530 
    1531     return S_OK;
    1532 }
    1533 
    1534 STDMETHODIMP Machine::COMSETTER(CPUHotPlugEnabled)(BOOL enabled)
     1530    *aEnabled = mHWData->mCPUHotPlugEnabled;
     1531
     1532    return S_OK;
     1533}
     1534
     1535STDMETHODIMP Machine::COMSETTER(CPUHotPlugEnabled)(BOOL aEnabled)
    15351536{
    15361537    HRESULT rc = S_OK;
     
    15441545    if (FAILED(rc)) return rc;
    15451546
    1546     if (mHWData->mCPUHotPlugEnabled != enabled)
    1547     {
    1548         if (enabled)
     1547    if (mHWData->mCPUHotPlugEnabled != aEnabled)
     1548    {
     1549        if (aEnabled)
    15491550        {
    15501551            setModified(IsModified_MachineData);
     
    15851586    }
    15861587
    1587     mHWData->mCPUHotPlugEnabled = enabled;
     1588    mHWData->mCPUHotPlugEnabled = aEnabled;
    15881589
    15891590    return rc;
    15901591}
    15911592
    1592 STDMETHODIMP Machine::COMGETTER(EmulatedUSBCardReaderEnabled)(BOOL *enabled)
     1593STDMETHODIMP Machine::COMGETTER(EmulatedUSBCardReaderEnabled)(BOOL *aEnabled)
    15931594{
    15941595#ifdef VBOX_WITH_USB_CARDREADER
    1595     CheckComArgOutPointerValid(enabled);
     1596    CheckComArgOutPointerValid(aEnabled);
    15961597
    15971598    AutoCaller autoCaller(this);
     
    16001601    AutoReadLock alock(this COMMA_LOCKVAL_SRC_POS);
    16011602
    1602     *enabled = mHWData->mEmulatedUSBCardReaderEnabled;
     1603    *aEnabled = mHWData->mEmulatedUSBCardReaderEnabled;
    16031604
    16041605    return S_OK;
    16051606#else
    1606     NOREF(enabled);
     1607    NOREF(aEnabled);
    16071608    return E_NOTIMPL;
    16081609#endif
    16091610}
    16101611
    1611 STDMETHODIMP Machine::COMSETTER(EmulatedUSBCardReaderEnabled)(BOOL enabled)
     1612STDMETHODIMP Machine::COMSETTER(EmulatedUSBCardReaderEnabled)(BOOL aEnabled)
    16121613{
    16131614#ifdef VBOX_WITH_USB_CARDREADER
     
    16211622    setModified(IsModified_MachineData);
    16221623    mHWData.backup();
    1623     mHWData->mEmulatedUSBCardReaderEnabled = enabled;
     1624    mHWData->mEmulatedUSBCardReaderEnabled = aEnabled;
    16241625
    16251626    return S_OK;
    16261627#else
    1627     NOREF(enabled);
     1628    NOREF(aEnabled);
    16281629    return E_NOTIMPL;
    16291630#endif
    16301631}
    16311632
    1632 STDMETHODIMP Machine::COMGETTER(EmulatedUSBWebcameraEnabled)(BOOL *enabled)
     1633STDMETHODIMP Machine::COMGETTER(EmulatedUSBWebcameraEnabled)(BOOL *aEnabled)
    16331634{
    16341635#ifdef VBOX_WITH_USB_VIDEO
    1635     CheckComArgOutPointerValid(enabled);
     1636    CheckComArgOutPointerValid(aEnabled);
    16361637
    16371638    AutoCaller autoCaller(this);
     
    16401641    AutoReadLock alock(this COMMA_LOCKVAL_SRC_POS);
    16411642
    1642     *enabled = mHWData->mEmulatedUSBWebcamEnabled;
     1643    *aEnabled = mHWData->mEmulatedUSBWebcamEnabled;
    16431644
    16441645    return S_OK;
    16451646#else
    1646     NOREF(enabled);
     1647    NOREF(aEnabled);
    16471648    return E_NOTIMPL;
    16481649#endif
    16491650}
    16501651
    1651 STDMETHODIMP Machine::COMSETTER(EmulatedUSBWebcameraEnabled)(BOOL enabled)
     1652STDMETHODIMP Machine::COMSETTER(EmulatedUSBWebcameraEnabled)(BOOL aEnabled)
    16521653{
    16531654#ifdef VBOX_WITH_USB_VIDEO
     
    16611662    setModified(IsModified_MachineData);
    16621663    mHWData.backup();
    1663     mHWData->mEmulatedUSBWebcamEnabled = enabled;
     1664    mHWData->mEmulatedUSBWebcamEnabled = aEnabled;
    16641665
    16651666    return S_OK;
    16661667#else
    1667     NOREF(enabled);
     1668    NOREF(aEnabled);
    16681669    return E_NOTIMPL;
    16691670#endif
    16701671}
    16711672
    1672 STDMETHODIMP Machine::COMGETTER(HPETEnabled)(BOOL *enabled)
    1673 {
    1674     CheckComArgOutPointerValid(enabled);
     1673STDMETHODIMP Machine::COMGETTER(HPETEnabled)(BOOL *aEnabled)
     1674{
     1675    CheckComArgOutPointerValid(aEnabled);
    16751676
    16761677    AutoCaller autoCaller(this);
     
    16781679    AutoReadLock alock(this COMMA_LOCKVAL_SRC_POS);
    16791680
    1680     *enabled = mHWData->mHPETEnabled;
    1681 
    1682     return S_OK;
    1683 }
    1684 
    1685 STDMETHODIMP Machine::COMSETTER(HPETEnabled)(BOOL enabled)
     1681    *aEnabled = mHWData->mHPETEnabled;
     1682
     1683    return S_OK;
     1684}
     1685
     1686STDMETHODIMP Machine::COMSETTER(HPETEnabled)(BOOL aEnabled)
    16861687{
    16871688    HRESULT rc = S_OK;
     
    16971698    mHWData.backup();
    16981699
    1699     mHWData->mHPETEnabled = enabled;
     1700    mHWData->mHPETEnabled = aEnabled;
    17001701
    17011702    return rc;
     
    17231724}
    17241725
    1725 STDMETHODIMP Machine::COMGETTER(VideoCaptureFile)(BSTR * apFile)
     1726STDMETHODIMP Machine::COMGETTER(VideoCaptureFile)(BSTR *apFile)
    17261727{
    17271728    AutoCaller autoCaller(this);
     
    17461747}
    17471748
    1748 
    1749 STDMETHODIMP Machine::COMGETTER(VideoCaptureWidth)(ULONG *ulHorzRes)
     1749STDMETHODIMP Machine::COMGETTER(VideoCaptureWidth)(ULONG *aHorzRes)
    17501750{
    17511751    AutoCaller autoCaller(this);
     
    17531753
    17541754    AutoReadLock alock(this COMMA_LOCKVAL_SRC_POS);
    1755     *ulHorzRes = mHWData->mVideoCaptureWidth;
    1756     return S_OK;
    1757 }
    1758 
    1759 STDMETHODIMP Machine::COMSETTER(VideoCaptureWidth)(ULONG ulHorzRes)
     1755    *aHorzRes = mHWData->mVideoCaptureWidth;
     1756    return S_OK;
     1757}
     1758
     1759STDMETHODIMP Machine::COMSETTER(VideoCaptureWidth)(ULONG aHorzRes)
    17601760{
    17611761    AutoCaller autoCaller(this);
     
    17671767
    17681768    AutoWriteLock alock(this COMMA_LOCKVAL_SRC_POS);
    1769     mHWData->mVideoCaptureWidth = ulHorzRes;
    1770     return S_OK;
    1771 }
    1772 
    1773 STDMETHODIMP Machine::COMGETTER(VideoCaptureHeight)(ULONG *ulVertRes)
     1769    mHWData->mVideoCaptureWidth = aHorzRes;
     1770    return S_OK;
     1771}
     1772
     1773STDMETHODIMP Machine::COMGETTER(VideoCaptureHeight)(ULONG *aVertRes)
    17741774{
    17751775    AutoCaller autoCaller(this);
     
    17771777
    17781778    AutoReadLock alock(this COMMA_LOCKVAL_SRC_POS);
    1779      *ulVertRes = mHWData->mVideoCaptureHeight;
    1780     return S_OK;
    1781 }
    1782 
    1783 STDMETHODIMP Machine::COMSETTER(VideoCaptureHeight)(ULONG ulVertRes)
     1779     *aVertRes = mHWData->mVideoCaptureHeight;
     1780    return S_OK;
     1781}
     1782
     1783STDMETHODIMP Machine::COMSETTER(VideoCaptureHeight)(ULONG aVertRes)
    17841784{
    17851785    AutoCaller autoCaller(this);
     
    17871787
    17881788    AutoReadLock alock(this COMMA_LOCKVAL_SRC_POS);
    1789     mHWData->mVideoCaptureHeight = ulVertRes;
     1789    mHWData->mVideoCaptureHeight = aVertRes;
     1790    return S_OK;
     1791}
     1792
     1793STDMETHODIMP Machine::COMGETTER(VideoCaptureRate)(ULONG *aRate)
     1794{
     1795    AutoCaller autoCaller(this);
     1796    if (FAILED(autoCaller.rc())) return autoCaller.rc();
     1797
     1798    AutoReadLock alock(this COMMA_LOCKVAL_SRC_POS);
     1799     *aRate = mHWData->mVideoCaptureRate;
     1800    return S_OK;
     1801}
     1802
     1803STDMETHODIMP Machine::COMSETTER(VideoCaptureRate)(ULONG aRate)
     1804{
     1805    AutoCaller autoCaller(this);
     1806    if (FAILED(autoCaller.rc())) return autoCaller.rc();
     1807
     1808    AutoReadLock alock(this COMMA_LOCKVAL_SRC_POS);
     1809    mHWData->mVideoCaptureHeight = aRate;
    17901810    return S_OK;
    17911811}
     
    19161936}
    19171937
    1918 STDMETHODIMP Machine::COMGETTER(PageFusionEnabled) (BOOL *enabled)
    1919 {
    1920     CheckComArgOutPointerValid(enabled);
     1938STDMETHODIMP Machine::COMGETTER(PageFusionEnabled) (BOOL *aEnabled)
     1939{
     1940    CheckComArgOutPointerValid(aEnabled);
    19211941
    19221942    AutoCaller autoCaller(this);
     
    19251945    AutoReadLock alock(this COMMA_LOCKVAL_SRC_POS);
    19261946
    1927     *enabled = mHWData->mPageFusionEnabled;
    1928     return S_OK;
    1929 }
    1930 
    1931 STDMETHODIMP Machine::COMSETTER(PageFusionEnabled) (BOOL enabled)
     1947    *aEnabled = mHWData->mPageFusionEnabled;
     1948    return S_OK;
     1949}
     1950
     1951STDMETHODIMP Machine::COMSETTER(PageFusionEnabled) (BOOL aEnabled)
    19321952{
    19331953#ifdef VBOX_WITH_PAGE_SHARING
     
    19401960    setModified(IsModified_MachineData);
    19411961    mHWData.backup();
    1942     mHWData->mPageFusionEnabled = enabled;
     1962    mHWData->mPageFusionEnabled = aEnabled;
    19431963    return S_OK;
    19441964#else
    1945     NOREF(enabled);
     1965    NOREF(aEnabled);
    19461966    return setError(E_NOTIMPL, tr("Page fusion is only supported on 64-bit hosts"));
    19471967#endif
    19481968}
    19491969
    1950 STDMETHODIMP Machine::COMGETTER(Accelerate3DEnabled)(BOOL *enabled)
    1951 {
    1952     CheckComArgOutPointerValid(enabled);
     1970STDMETHODIMP Machine::COMGETTER(Accelerate3DEnabled)(BOOL *aEnabled)
     1971{
     1972    CheckComArgOutPointerValid(aEnabled);
    19531973
    19541974    AutoCaller autoCaller(this);
     
    19571977    AutoReadLock alock(this COMMA_LOCKVAL_SRC_POS);
    19581978
    1959     *enabled = mHWData->mAccelerate3DEnabled;
     1979    *aEnabled = mHWData->mAccelerate3DEnabled;
    19601980
    19611981    return S_OK;
     
    19822002
    19832003
    1984 STDMETHODIMP Machine::COMGETTER(Accelerate2DVideoEnabled)(BOOL *enabled)
    1985 {
    1986     CheckComArgOutPointerValid(enabled);
     2004STDMETHODIMP Machine::COMGETTER(Accelerate2DVideoEnabled)(BOOL *aEnabled)
     2005{
     2006    CheckComArgOutPointerValid(aEnabled);
    19872007
    19882008    AutoCaller autoCaller(this);
     
    19912011    AutoReadLock alock(this COMMA_LOCKVAL_SRC_POS);
    19922012
    1993     *enabled = mHWData->mAccelerate2DVideoEnabled;
     2013    *aEnabled = mHWData->mAccelerate2DVideoEnabled;
    19942014
    19952015    return S_OK;
     
    87658785        mHWData->mVideoCaptureHeight = data.ulVideoCaptureVertRes;
    87668786        mHWData->mVideoCaptureEnabled = data.fVideoCaptureEnabled;
     8787        mHWData->mVideoCaptureRate = data.ulVideoCaptureRate;
    87678788        mHWData->mVideoCaptureFile = data.strVideoCaptureFile;
    87688789        mHWData->mFirmwareType = data.firmwareType;
     
    998110002        data.ulVideoCaptureHorzRes = mHWData->mVideoCaptureWidth;
    998210003        data.ulVideoCaptureVertRes = mHWData->mVideoCaptureHeight;
     10004        data.ulVideoCaptureRate = mHWData->mVideoCaptureRate;
    998310005        data.fVideoCaptureEnabled  = !!mHWData->mVideoCaptureEnabled;
    998410006        data.strVideoCaptureFile = mHWData->mVideoCaptureFile;
  • trunk/src/VBox/Main/xml/Settings.cpp

    r45834 r45838  
    17491749          ulVideoCaptureHorzRes(1024),
    17501750          ulVideoCaptureVertRes(768),
     1751          ulVideoCaptureRate(512),
    17511752          fVideoCaptureEnabled(false),
    17521753          strVideoCaptureFile("Test.webm"),
     
    18221823                  && (ulVideoCaptureHorzRes     == h.ulVideoCaptureHorzRes)
    18231824                  && (ulVideoCaptureVertRes     == h.ulVideoCaptureVertRes)
     1825                  && (ulVideoCaptureRate        == h.ulVideoCaptureRate)
    18241826                  && (firmwareType              == h.firmwareType)
    18251827                  && (pointingHIDType           == h.pointingHIDType)
     
    27202722            pelmHwChild->getAttributeValue("horzRes", hw.ulVideoCaptureHorzRes);
    27212723            pelmHwChild->getAttributeValue("vertRes", hw.ulVideoCaptureVertRes);
     2724            pelmHwChild->getAttributeValue("rate",    hw.ulVideoCaptureRate);
    27222725        }
    27232726        else if (pelmHwChild->nameEquals("RemoteDisplay"))
     
    39043907        pelmVideoCapture->setAttribute("horzRes", hw.ulVideoCaptureHorzRes);
    39053908        pelmVideoCapture->setAttribute("vertRes", hw.ulVideoCaptureVertRes);
     3909        pelmVideoCapture->setAttribute("rate",    hw.ulVideoCaptureRate);
    39063910    }
    39073911
Note: See TracChangeset for help on using the changeset viewer.

© 2025 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette