Argus Camera Sample Argus Camera Sample

- Main Page
- Related Pages
- Namespaces
- Classes
- Files

- Class List
- Class Index
- Class Hierarchy
- Class Members

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Types | Public Member Functions | Static Public Member Functions
ArgusSamples::VideoPipeline Class Reference

Record a video from a EGL stream. More...

`#include <VideoPipeline.h>`

List of all members.

## Public Types

enum | VideoFormat { VIDEO_FORMAT_H263, VIDEO_FORMAT_H264, VIDEO_FORMAT_H265, VIDEO_FORMAT_VP8, VIDEO_FORMAT_MPEG4 }
| Supported video formats. More...
enum | VideoFileType { VIDEO_FILE_TYPE_MP4, VIDEO_FILE_TYPE_3GP, VIDEO_FILE_TYPE_AVI, VIDEO_FILE_TYPE_MKV, VIDEO_FILE_TYPE_H265 }
| Supported video file types. More...

## Public Member Functions

| VideoPipeline ()
| ~VideoPipeline ()
bool | destroy ()
| Destroy the video pipeline.
bool | setupForRecording (EGLStreamKHR videoStream, uint32_t width, uint32_t height, float frameRate, const char *fileName, VideoFormat videoFormat=VIDEO_FORMAT_H264, VideoFileType videoFileType=VIDEO_FILE_TYPE_MP4, uint32_t bitRate=0)
| Setup the video pipeline for recording.
bool | setupForPlayback (EGLStreamKHR *videoStream, const char *fileName)
| Setup the video pipeline for playback.
bool | start ()
| Start recording/playback.
bool | pause ()
| Pause recording/playback.
bool | toggle ()
| Toggle recording/playback.
bool | rewind ()
| Rewind (playback only)
bool | stop ()
| Stop recording/playback.
bool | getAspectRatio (float *aspectRatio) const
| Get the aspect ratio of the video.

## Static Public Member Functions

static const char * | getFileExtension (VideoFileType fileType)
| Get the file extension for a video file type.

## Detailed Description

Record a video from a EGL stream.

Definition at line 45 of file VideoPipeline.h.

## Member Enumeration Documentation

enum ArgusSamples::VideoPipeline::VideoFileType

Supported video file types.

Enumerator:

  VIDEO_FILE_TYPE_MP4 |
  VIDEO_FILE_TYPE_3GP |
  VIDEO_FILE_TYPE_AVI |
  VIDEO_FILE_TYPE_MKV |
  VIDEO_FILE_TYPE_H265 |

Definition at line 66 of file VideoPipeline.h.

enum ArgusSamples::VideoPipeline::VideoFormat

Supported video formats.

Enumerator:

  VIDEO_FORMAT_H263 |
  VIDEO_FORMAT_H264 |
  VIDEO_FORMAT_H265 |
  VIDEO_FORMAT_VP8 |
  VIDEO_FORMAT_MPEG4 |

Definition at line 54 of file VideoPipeline.h.

## Constructor & Destructor Documentation

ArgusSamples::VideoPipeline::VideoPipeline | ( |  | ) |

Definition at line 40 of file VideoPipeline.cpp.

ArgusSamples::VideoPipeline::~VideoPipeline | ( |  | ) |

Definition at line 48 of file VideoPipeline.cpp.

## Member Function Documentation

bool ArgusSamples::VideoPipeline::destroy | ( |  | ) |

Destroy the video pipeline.

Definition at line 574 of file VideoPipeline.cpp.

bool ArgusSamples::VideoPipeline::getAspectRatio | ( | float * | aspectRatio | ) | const

Get the aspect ratio of the video.

The video has to be in paused or playing state.

Parameters:

  aspectRatio | [out]

Definition at line 614 of file VideoPipeline.cpp.

const char * ArgusSamples::VideoPipeline::getFileExtension | ( | VideoFileType | fileType | ) |

static

Get the file extension for a video file type.

Definition at line 593 of file VideoPipeline.cpp.

bool ArgusSamples::VideoPipeline::pause | ( |  | ) |

Pause recording/playback.

Definition at line 467 of file VideoPipeline.cpp.

bool ArgusSamples::VideoPipeline::rewind | ( |  | ) |

Rewind (playback only)

Definition at line 512 of file VideoPipeline.cpp.

bool ArgusSamples::VideoPipeline::setupForPlayback | ( | EGLStreamKHR * | videoStream,
|  | const char * | fileName
| ) |  |

Setup the video pipeline for playback.

Parameters:

  [out] | videoStream | EGL stream
  [in] | fileName | File name

Definition at line 349 of file VideoPipeline.cpp.

bool ArgusSamples::VideoPipeline::setupForRecording | ( | EGLStreamKHR | videoStream,
|  | uint32_t | width,
|  | uint32_t | height,
|  | float | frameRate,
|  | const char * | fileName,
|  | VideoFormat | videoFormat = `VIDEO_FORMAT_H264`,
|  | VideoFileType | videoFileType = `VIDEO_FILE_TYPE_MP4`,
|  | uint32_t | bitRate = `0`
| ) |  |

Setup the video pipeline for recording.

Parameters:

  [in] | videoStream | EGL stream to record from
  [in] | width | Width of the recorded video
  [in] | height | Height of the recorded video
  [in] | frameRate | Frame rate
  [in] | fileName | File name
  [in] | videoFormat | Video format
  [in] | videoFileType | Video file type
  [in] | bitRate | Bitrate, if 0 the bitrate will be selected depending on the resolution

Definition at line 111 of file VideoPipeline.cpp.

bool ArgusSamples::VideoPipeline::start | ( |  | ) |

Start recording/playback.

Definition at line 436 of file VideoPipeline.cpp.

bool ArgusSamples::VideoPipeline::stop | ( |  | ) |

Stop recording/playback.

Definition at line 530 of file VideoPipeline.cpp.

bool ArgusSamples::VideoPipeline::toggle | ( |  | ) |

Toggle recording/playback.

Definition at line 487 of file VideoPipeline.cpp.

The documentation for this class was generated from the following files:

- common/VideoPipeline.h
- common/VideoPipeline.cpp