[FFmpeg-cvslog] vf_idet: set interlaced flags

Michael Niedermayer git at videolan.org
Wed Apr 4 16:36:29 CEST 2012


ffmpeg | branch: master | Michael Niedermayer <michaelni at gmx.at> | Wed Apr  4 16:27:24 2012 +0200| [baf0c79a4da265320e77af78a2810e254baa4110] | committer: Michael Niedermayer

vf_idet: set interlaced flags

Signed-off-by: Michael Niedermayer <michaelni at gmx.at>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=baf0c79a4da265320e77af78a2810e254baa4110
---

 libavfilter/vf_idet.c |    7 +++++++
 1 files changed, 7 insertions(+), 0 deletions(-)

diff --git a/libavfilter/vf_idet.c b/libavfilter/vf_idet.c
index d0682b4..f4030a6 100644
--- a/libavfilter/vf_idet.c
+++ b/libavfilter/vf_idet.c
@@ -103,15 +103,22 @@ static void filter(AVFilterContext *ctx)
     if      (alpha[0] / (float)alpha[1] > idet->interlace_threshold){
         av_log(ctx, AV_LOG_INFO, "Interlaced, top field first\n");
         idet->stat_tff++;
+        idet->cur->video->top_field_first = 1;
+        idet->cur->video->interlaced = 1;
     }else if(alpha[1] / (float)alpha[0] > idet->interlace_threshold){
         av_log(ctx, AV_LOG_INFO, "Interlaced, bottom field first\n");
         idet->stat_bff++;
+        idet->cur->video->top_field_first = 0;
+        idet->cur->video->interlaced = 1;
     }else if(alpha[1] / (float)delta    > idet->progressive_threshold){
         av_log(ctx, AV_LOG_INFO, "Progressive\n");
         idet->stat_progressive++;
+        idet->cur->video->interlaced = 0;
     }else{
         av_log(ctx, AV_LOG_INFO, "Undetermined\n");
         idet->stat_undetermined++;
+        idet->cur->video->interlaced      = idet->prev->video->interlaced;
+        idet->cur->video->top_field_first = idet->prev->video->top_field_first;
     }
 //     av_log(ctx,0, "t%d b%d p%d u%d\n", t,b,p,u);
 }



More information about the ffmpeg-cvslog mailing list