AVPKit
IBufferSource.h
1 /*
2  * To change this license header, choose License Headers in Project Properties.
3  * To change this template file, choose Tools | Templates
4  * and open the template in the editor.
5  */
6 
7 /*
8  * File: BufferSource.h
9  * Author: ayache
10  *
11  * Created on March 6, 2020, 1:34 PM
12  */
13 
14 #ifndef IBUFFERSOURCE_H
15 #define IBUFFERSOURCE_H
16 
17 #include <com/avpkit/core/IAudioSamples.h>
18 #include <com/avpkit/core/IVideoPicture.h>
19 #include <com/avpkit/core/IRational.h>
20 #include <com/avpkit/core/IMediaFilter.h>
21 
22 namespace com {
23  namespace avpkit {
24  namespace core {
25 
26  class VS_API_AVPKIT IBufferSource : public virtual IMediaFilter {
27  public:
28 
36  virtual int addAudioSamples(IAudioSamples* samples) = 0;
37 
45  virtual int addVideoPicture(IVideoPicture* picture) = 0;
46 
47  protected:
48  virtual ~IBufferSource() = default;
49  };
50 
51  }
52  }
53 }
54 
55 #endif /* BUFFERSOURCE_H */
56 
A set of raw (decoded) samples, plus a timestamp for when to play those samples relative to other ite...
Definition: IAudioSamples.h:38
virtual int addVideoPicture(IVideoPicture *picture)=0
Adds picture to this filter.
virtual int addAudioSamples(IAudioSamples *samples)=0
Adds audio samples to this filter.
Represents one raw (undecoded) picture in a video stream, plus a timestamp for when to display that v...
Definition: IVideoPicture.h:40
WARNING: Do not use logging in this class, and do not set any static file variables to values other t...