File tree Expand file tree Collapse file tree 2 files changed +19
-3
lines changed
src/AvTranscoder/EssenceStream Expand file tree Collapse file tree 2 files changed +19
-3
lines changed Original file line number Diff line number Diff line change @@ -8,6 +8,7 @@ namespace avtranscoder
8
8
9
9
DummyVideo::DummyVideo ( )
10
10
: InputEssence( )
11
+ , _inputFrame( NULL )
11
12
, _numberOfView( 1 )
12
13
{
13
14
}
@@ -27,13 +28,25 @@ VideoDesc DummyVideo::getVideoDesc() const
27
28
return _videoDesc;
28
29
}
29
30
31
+ void DummyVideo::setFrame ( Frame& inputFrame )
32
+ {
33
+ _inputFrame = &inputFrame;
34
+ }
35
+
30
36
bool DummyVideo::readNextFrame ( Frame& frameBuffer )
31
37
{
32
38
frameBuffer.getBuffer ().resize ( _imageDesc.getDataSize () );
33
39
34
- int fillChar = 0 ; // fill images with black
35
- memset ( frameBuffer.getPtr (), fillChar, frameBuffer.getSize () );
36
-
40
+ if ( ! _inputFrame )
41
+ {
42
+ int fillChar = 0 ; // fill images with black
43
+ memset ( frameBuffer.getPtr (), fillChar, frameBuffer.getSize () );
44
+ return true ;
45
+ }
46
+
47
+ if ( frameBuffer.getSize () != _inputFrame->getSize () )
48
+ frameBuffer.getBuffer ().resize ( _inputFrame->getSize () );
49
+ std::memcpy ( frameBuffer.getPtr (), _inputFrame->getPtr (), _inputFrame->getSize () );
37
50
return true ;
38
51
}
39
52
Original file line number Diff line number Diff line change @@ -23,10 +23,13 @@ class AvExport DummyVideo : public InputEssence
23
23
24
24
void setup () {}
25
25
26
+ void setFrame ( Frame& inputFrame );
27
+
26
28
bool readNextFrame ( Frame& frameBuffer );
27
29
bool readNextFrame ( Frame& frameBuffer, const size_t subStreamIndex );
28
30
29
31
private:
32
+ Frame* _inputFrame;
30
33
VideoDesc _videoDesc;
31
34
ImageDesc _imageDesc;
32
35
You can’t perform that action at this time.
0 commit comments