| 
    Open CASCADE Technology 7.8.2.dev
    
   | 
 
Video recording tool based on FFmpeg framework. More...
#include <Image_VideoRecorder.hxx>

Data Structures | |
| struct | VideoRational | 
| AVRational alias.  More... | |
Public Member Functions | |
| Image_VideoRecorder () | |
| Empty constructor.   | |
| virtual | ~Image_VideoRecorder () | 
| Destructor.   | |
| void | Close () | 
| Close the stream - stop recorder.   | |
| Standard_Boolean | Open (const char *theFileName, const Image_VideoParams &theParams) | 
| Open output stream - initialize recorder.   | |
| Image_PixMap & | ChangeFrame () | 
| Access RGBA frame, should NOT be re-initialized outside. Note that image is expected to have upper-left origin.   | |
| int64_t | FrameCount () const | 
| Return current frame index.   | |
| Standard_Boolean | PushFrame () | 
| Push new frame, should be called after Open().   | |
  Public Member Functions inherited from Standard_Transient | |
| Standard_Transient () | |
| Empty constructor.   | |
| Standard_Transient (const Standard_Transient &) | |
| Copy constructor – does nothing.   | |
| Standard_Transient & | operator= (const Standard_Transient &) | 
| Assignment operator, needed to avoid copying reference counter.   | |
| virtual | ~Standard_Transient () | 
| Destructor must be virtual.   | |
| virtual const opencascade::handle< Standard_Type > & | DynamicType () const | 
| Returns a type descriptor about this object.   | |
| Standard_Boolean | IsInstance (const opencascade::handle< Standard_Type > &theType) const | 
| Returns a true value if this is an instance of Type.   | |
| Standard_Boolean | IsInstance (const Standard_CString theTypeName) const | 
| Returns a true value if this is an instance of TypeName.   | |
| Standard_Boolean | IsKind (const opencascade::handle< Standard_Type > &theType) const | 
| Returns true if this is an instance of Type or an instance of any class that inherits from Type. Note that multiple inheritance is not supported by OCCT RTTI mechanism.   | |
| Standard_Boolean | IsKind (const Standard_CString theTypeName) const | 
| Returns true if this is an instance of TypeName or an instance of any class that inherits from TypeName. Note that multiple inheritance is not supported by OCCT RTTI mechanism.   | |
| Standard_Transient * | This () const | 
| Returns non-const pointer to this object (like const_cast). For protection against creating handle to objects allocated in stack or call from constructor, it will raise exception Standard_ProgramError if reference counter is zero.   | |
| Standard_Integer | GetRefCount () const noexcept | 
| Get the reference counter of this object.   | |
| void | IncrementRefCounter () noexcept | 
| Increments the reference counter of this object.   | |
| Standard_Integer | DecrementRefCounter () noexcept | 
| Decrements the reference counter of this object; returns the decremented value.   | |
| virtual void | Delete () const | 
| Memory deallocator for transient classes.   | |
Protected Member Functions | |
| TCollection_AsciiString | formatAvError (const int theError) const | 
| Wrapper for av_strerror().   | |
| Standard_Boolean | addVideoStream (const Image_VideoParams &theParams, const Standard_Integer theDefCodecId) | 
| Append video stream. theParams [in] video parameters theDefCodecId [in] identifier of codec managed by FFmpeg library (AVCodecID enum)   | |
| Standard_Boolean | openVideoCodec (const Image_VideoParams &theParams) | 
| Open video codec.   | |
| Standard_Boolean | writeVideoFrame (const Standard_Boolean theToFlush) | 
| Write new video frame.   | |
Protected Attributes | |
| AVFormatContext * | myAVContext | 
| video context   | |
| AVStream * | myVideoStream | 
| video stream   | |
| AVCodec * | myVideoCodec | 
| video codec   | |
| AVFrame * | myFrame | 
| frame to record   | |
| SwsContext * | myScaleCtx | 
| scale context for conversion from RGBA to YUV   | |
| Image_PixMap | myImgSrcRgba | 
| input RGBA image   | |
| VideoRational | myFrameRate | 
| video framerate   | |
| int64_t | myFrameCount | 
| current frame index   | |
Additional Inherited Members | |
  Public Types inherited from Standard_Transient | |
| typedef void | base_type | 
| Returns a type descriptor about this object.   | |
  Static Public Member Functions inherited from Standard_Transient | |
| static constexpr const char * | get_type_name () | 
| Returns a type descriptor about this object.   | |
| static const opencascade::handle< Standard_Type > & | get_type_descriptor () | 
| Returns type descriptor of Standard_Transient class.   | |
Video recording tool based on FFmpeg framework.
| Image_VideoRecorder::Image_VideoRecorder | ( | ) | 
Empty constructor.
      
  | 
  virtual | 
Destructor.
      
  | 
  protected | 
Append video stream. theParams [in] video parameters theDefCodecId [in] identifier of codec managed by FFmpeg library (AVCodecID enum)
      
  | 
  inline | 
Access RGBA frame, should NOT be re-initialized outside. Note that image is expected to have upper-left origin.
| void Image_VideoRecorder::Close | ( | ) | 
Close the stream - stop recorder.
      
  | 
  protected | 
Wrapper for av_strerror().
      
  | 
  inline | 
Return current frame index.
| Standard_Boolean Image_VideoRecorder::Open | ( | const char * | theFileName, | 
| const Image_VideoParams & | theParams | ||
| ) | 
Open output stream - initialize recorder.
| theFileName | [in] video filename | 
| theParams | [in] video parameters | 
      
  | 
  protected | 
Open video codec.
      
  | 
  inline | 
Push new frame, should be called after Open().
      
  | 
  protected | 
Write new video frame.
      
  | 
  protected | 
video context
      
  | 
  protected | 
frame to record
      
  | 
  protected | 
current frame index
      
  | 
  protected | 
video framerate
      
  | 
  protected | 
input RGBA image
      
  | 
  protected | 
scale context for conversion from RGBA to YUV
      
  | 
  protected | 
video codec
      
  | 
  protected | 
video stream