Skip to content

Commit b112ba8

Browse files
author
Clement Champetier
committed
VideoProperties: add progress callback in analyseFull method
1 parent 465af95 commit b112ba8

File tree

1 file changed

+3
-1
lines changed

1 file changed

+3
-1
lines changed

src/AvTranscoder/properties/VideoProperties.cpp

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -376,7 +376,7 @@ size_t VideoProperties::getNbFrames() const
376376
size_t nbFrames = _formatContext->streams[_streamIndex]->nb_frames;
377377
if(nbFrames == 0)
378378
{
379-
if(_levelAnalysis == eAnalyseLevelFull)
379+
if(_levelAnalysis == eAnalyseLevelFull && _nbFrames)
380380
return _nbFrames;
381381

382382
LOG_WARN("The number of frames in the stream '" << _streamIndex << "' of file '" << _formatContext->filename
@@ -591,9 +591,11 @@ size_t VideoProperties::analyseFull(IProgress& progress)
591591
VideoDecoder decoder(static_cast<InputStream&>(stream));
592592
VideoFrame frame(VideoFrameDesc(getWidth(), getHeight(), getPixelFormatName(getPixelProperties().getAVPixelFormat())), false);
593593

594+
const size_t estimateNbFrames = getNbFrames();
594595
_nbFrames = nbDecodedFrames;
595596
while(decoder.decodeNextFrame(frame))
596597
{
598+
progress.progress(_nbFrames, estimateNbFrames);
597599
++_nbFrames;
598600
}
599601

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy