Pleora Technologies Inc. eBUS SDK v7.0.1.7536 API



Loading...
Searching...
No Matches
PvH264Decoder.h
1// *****************************************************************************
2//
3// Copyright (c) 2019, Pleora Technologies Inc., All rights reserved.
4//
5// *****************************************************************************
6
7#ifndef __PVH264DECODER_H__
8#define __PVH264DECODER_H__
9
10#include <PvCodecLib.h>
11#include <PvBuffer.h>
12
13
14#ifdef WIN32
15struct IMFSample;
16#endif
17
18namespace PvCodecLib
19{
20 class IH264Decoder;
21}
22
23
24class PV_CODEC_API PvH264Decoder
25{
26public:
27#ifndef NOT_ALLOW_FFMPEG
30
31 bool IsAvailable() const;
32
33 PvResult Reset();
34 PvResult Process( const IPvH264AccessUnit *aAccessUnit );
35 PvResult Retrieve( PvImage *aImage );
36 void GetLastError( PvString &aString ) const;
37 void ResetLastError();
38
39#else
42
43 bool IsAvailable() const { return false; }
44
45 PvResult Reset() { return PvResult::Code::NOT_SUPPORTED; }
46 PvResult Process ( const IPvH264AccessUnit *aAccessUnit ) { return PvResult::Code::NOT_SUPPORTED; }
47 PvResult Retrieve( PvImage *aImage ) { return PvResult::Code::NOT_SUPPORTED; }
48 void GetLastError( PvString &aString ) const {}
49 void ResetLastError(){}
50
51#endif
52
53#ifdef WIN32
54 PvResult Retrieve( IMFSample *aSample );
55#endif
56
57private:
58
59 PvCodecLib::IH264Decoder *mThis;
60
61 // Not implemented
63 const PvH264Decoder &operator=( const PvH264Decoder & );
64
65};
66
67
68#endif
Generic, read-only H264 access unit interface.
Definition PvH264AccessUnit.h:32
Definition PvH264Decoder.h:25
Image interface to a PvBuffer.
Definition PvImage.h:176
Result information.
Definition PvResult.h:30
String class.
Definition PvString.h:26
@ NOT_SUPPORTED
The requested feature or functionality is not supported.
Definition PvResult.h:342

Copyright (c) 2002-2026 Pleora Technologies Inc.
www.pleora.com