VirtualBox

Changeset 96480 in vbox


Ignore:
Timestamp:
Aug 25, 2022 7:02:55 AM (2 years ago)
Author:
vboxsync
Message:

Recording/Main: Added video frame dumping utility functions (debug-mode only) [build fix, forgot files]. ​bugref:10275

Location:
trunk/src/VBox/Main/include
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Main/include/RecordingInternals.h

    r96407 r96480  
    335335
    336336/**
     337 * Enumeration for a recording frame type.
     338 */
     339enum RECORDINGFRAME_TYPE
     340{
     341    /** Invalid frame type; do not use. */
     342    RECORDINGFRAME_TYPE_INVALID   = 0,
     343    /** Frame is an audio frame. */
     344    RECORDINGFRAME_TYPE_AUDIO     = 1,
     345    /** Frame is an video frame. */
     346    RECORDINGFRAME_TYPE_VIDEO     = 2,
     347    /** Frame contains a video frame pointer. */
     348    RECORDINGFRAME_TYPE_VIDEO_PTR = 3
     349};
     350
     351/**
    337352 * Structure for keeping a single recording video frame.
    338353 */
    339354typedef struct RECORDINGVIDEOFRAME
    340355{
    341     /** X resolution of this frame. */
    342     uint32_t            uWidth;
    343     /** Y resolution of this frame. */
    344     uint32_t            uHeight;
     356    /** X origin  (in pixel) of this frame. */
     357    uint16_t            uX;
     358    /** X origin  (in pixel) of this frame. */
     359    uint16_t            uY;
     360    /** X resolution (in pixel) of this frame. */
     361    uint16_t            uWidth;
     362    /** Y resolution (in pixel)  of this frame. */
     363    uint16_t            uHeight;
     364    /** Bits per pixel (BPP). */
     365    uint8_t             uBPP;
    345366    /** Pixel format of this frame. */
    346     uint32_t            uPixelFormat;
     367    RECORDINGPIXELFMT   enmPixelFmt;
     368    /** Bytes per scan line. */
     369    uint16_t            uBytesPerLine;
    347370    /** RGB buffer containing the unmodified frame buffer data from Main's display. */
    348371    uint8_t            *pu8RGBBuf;
     
    367390typedef struct RECORDINGFRAME
    368391{
     392    /** List node. */
     393    RTLISTNODE              Node;
     394    /** Stream index (hint) where this frame should go to.
     395     *  Specify UINT16_MAX to broadcast to all streams. */
     396    uint16_t                idStream;
     397    /** The frame type. */
     398    RECORDINGFRAME_TYPE     enmType;
    369399    /** Timestamp (PTS, in ms). */
    370400    uint64_t                msTimestamp;
     
    372402    {
    373403#ifdef VBOX_WITH_AUDIO_RECORDING
     404        /** Audio frame data. */
    374405        RECORDINGAUDIOFRAME  Audio;
    375406#endif
     407        /** Video frame data. */
    376408        RECORDINGVIDEOFRAME  Video;
     409        /** A (weak) pointer to a video frame. */
    377410        RECORDINGVIDEOFRAME *VideoPtr;
    378411    };
  • trunk/src/VBox/Main/include/RecordingUtils.h

    r96479 r96480  
    3131# pragma once
    3232#endif
     33
     34#include "RecordingInternals.h"
    3335
    3436
Note: See TracChangeset for help on using the changeset viewer.

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