Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit969c6c3

Browse files
author
Valentin NOEL
committed
FilterGraph: remove useless areInputAudioFrames() method
Replace it by a simple AudioFrameBuffer vector empty() test, sincebuffers are initialized only for audio frames (into the addInBuffer()method)And rename _inputAudioFramesBuffer attribute to _inputAudioFrameBuffers
1 parent06b8b45 commit969c6c3

File tree

2 files changed

+14
-22
lines changed

2 files changed

+14
-22
lines changed

‎src/AvTranscoder/filter/FilterGraph.cpp

Lines changed: 13 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -133,7 +133,7 @@ FilterGraph::FilterGraph(const ICodec& codec)
133133

134134
FilterGraph::~FilterGraph()
135135
{
136-
_inputAudioFramesBuffer.clear();
136+
_inputAudioFrameBuffers.clear();
137137
for(std::vector<Filter*>::iterator it = _filters.begin(); it < _filters.end(); ++it)
138138
{
139139
delete(*it);
@@ -145,7 +145,7 @@ size_t FilterGraph::getAvailableFrameSize(const std::vector<IFrame*>& inputs, co
145145
{
146146
size_t frameSize = inputs.at(index)->getDataSize();
147147
if(frameSize ==0)
148-
frameSize =_inputAudioFramesBuffer.at(index).getDataSize();
148+
frameSize =_inputAudioFrameBuffers.at(index).getDataSize();
149149
return frameSize;
150150
}
151151

@@ -166,10 +166,10 @@ size_t FilterGraph::getMinInputFrameSize(const std::vector<IFrame*>& inputs)
166166

167167
boolFilterGraph::hasBufferedFrames()
168168
{
169-
if(!_inputAudioFramesBuffer.size())
169+
if(!_inputAudioFrameBuffers.size())
170170
returnfalse;
171171

172-
for(std::vector<AudioFramebuffer>::iterator it =_inputAudioFramesBuffer.begin(); it !=_inputAudioFramesBuffer.end(); ++it)
172+
for(std::vector<AudioFramebuffer>::iterator it =_inputAudioFrameBuffers.begin(); it !=_inputAudioFrameBuffers.end(); ++it)
173173
{
174174
if(it->isEmpty())
175175
returnfalse;
@@ -179,17 +179,10 @@ bool FilterGraph::hasBufferedFrames()
179179

180180
boolFilterGraph::hasBufferedFrames(constsize_t index)
181181
{
182-
if(index >=_inputAudioFramesBuffer.size())
182+
if(index >=_inputAudioFrameBuffers.size())
183183
returnfalse;
184184

185-
return !_inputAudioFramesBuffer.at(index).isEmpty();
186-
}
187-
188-
boolFilterGraph::areInputAudioFrames(const std::vector<IFrame*>& inputs)
189-
{
190-
if(!inputs.size())
191-
returnfalse;
192-
returntypeid(*(inputs.at(0))) ==typeid(AudioFrame);
185+
return !_inputAudioFrameBuffers.at(index).isEmpty();
193186
}
194187

195188
boolFilterGraph::areInputFrameSizesEqual(const std::vector<IFrame*>& inputs)
@@ -208,10 +201,10 @@ bool FilterGraph::areInputFrameSizesEqual(const std::vector<IFrame*>& inputs)
208201

209202
boolFilterGraph::areFrameBuffersEmpty()
210203
{
211-
if(!_inputAudioFramesBuffer.size())
204+
if(!_inputAudioFrameBuffers.size())
212205
returntrue;
213206

214-
for(std::vector<AudioFramebuffer>::iterator it =_inputAudioFramesBuffer.begin(); it !=_inputAudioFramesBuffer.end(); ++it)
207+
for(std::vector<AudioFramebuffer>::iterator it =_inputAudioFrameBuffers.begin(); it !=_inputAudioFrameBuffers.end(); ++it)
215208
{
216209
if(!it->isEmpty())
217210
returnfalse;
@@ -226,7 +219,7 @@ void FilterGraph::process(const std::vector<IFrame*>& inputs, IFrame& output)
226219
init(inputs, output);
227220

228221
// Check whether we can bypass the input audio buffers
229-
constbool bypassBuffers =!areInputAudioFrames(inputs) || (areInputFrameSizesEqual(inputs) &&areFrameBuffersEmpty());
222+
constbool bypassBuffers =_inputAudioFrameBuffers.empty() || (areInputFrameSizesEqual(inputs) &&areFrameBuffersEmpty());
230223
size_t minInputFrameSize =0;
231224

232225
if(!bypassBuffers)
@@ -236,10 +229,10 @@ void FilterGraph::process(const std::vector<IFrame*>& inputs, IFrame& output)
236229
{
237230
if(!inputs.at(index)->getDataSize())
238231
{
239-
LOG_DEBUG("Empty frame from filter graph input" << index <<". Remaining audio frames in buffer:" <<_inputAudioFramesBuffer.at(index).getBufferSize());
232+
LOG_DEBUG("Empty frame from filter graph input" << index <<". Remaining audio frames in buffer:" <<_inputAudioFrameBuffers.at(index).getBufferSize());
240233
continue;
241234
}
242-
_inputAudioFramesBuffer.at(index).addFrame(inputs.at(index));
235+
_inputAudioFrameBuffers.at(index).addFrame(inputs.at(index));
243236
}
244237

245238
// Get the minimum input frames size
@@ -251,7 +244,7 @@ void FilterGraph::process(const std::vector<IFrame*>& inputs, IFrame& output)
251244
for(size_t index =0; index < inputs.size(); ++index)
252245
{
253246
// Retrieve frame from buffer or directly from input
254-
IFrame* inputFrame = (bypassBuffers)? inputs.at(index) :_inputAudioFramesBuffer.at(index).getFrame(minInputFrameSize);
247+
IFrame* inputFrame = (bypassBuffers)? inputs.at(index) :_inputAudioFrameBuffers.at(index).getFrame(minInputFrameSize);
255248
constint ret =av_buffersrc_add_frame_flags(_filters.at(index)->getAVFilterContext(), &inputFrame->getAVFrame(), AV_BUFFERSRC_FLAG_PUSH);
256249

257250
if(ret <0)
@@ -363,7 +356,7 @@ void FilterGraph::addInBuffer(const std::vector<IFrame*>& inputs)
363356
const AudioFrameDescaudioFrameDesc(audioFrame->getSampleRate(),
364357
audioFrame->getNbChannels(),
365358
getSampleFormatName(audioFrame->getSampleFormat()));
366-
_inputAudioFramesBuffer.push_back(AudioFramebuffer(audioFrameDesc));
359+
_inputAudioFrameBuffers.push_back(AudioFramebuffer(audioFrameDesc));
367360
}
368361
// video frame
369362
elseif((*it)->isVideoFrame())

‎src/AvTranscoder/filter/FilterGraph.hpp

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -143,7 +143,6 @@ class AvExport FilterGraph
143143
*/
144144
size_tgetMinInputFrameSize(const std::vector<IFrame*>& inputs);
145145

146-
boolareInputAudioFrames(const std::vector<IFrame*>& inputs);
147146
boolareInputFrameSizesEqual(const std::vector<IFrame*>& inputs);
148147
boolareFrameBuffersEmpty();
149148

@@ -152,7 +151,7 @@ class AvExport FilterGraph
152151
std::vector<Filter*> _filters;///< List of filters to process.
153152
const ICodec& _codec;///< Codec of the stream on which the filters will be applied.
154153

155-
std::vector<AudioFramebuffer>_inputAudioFramesBuffer;
154+
std::vector<AudioFramebuffer>_inputAudioFrameBuffers;
156155

157156
/**
158157
* @brief Is the FilterGraph initialized.

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp