Reliable use of deinterlacing a stream with pulldown flags
Posted: Fri Apr 29, 2011 11:53 pm
I was trying to use DGDecNV to deinterlace a mostly interlaced stream, when I detected that the framecount after deinterlacing is lower than before.
After some search, I found that the DGIndexNV found some pulldown flags inside the stream, and when I order it to deinterlace it just ignores the pulldown flags, making the deinterlaced output useless regarding audio sync.
Reading the manual, I found that DGDecNV ignore the pulldown flags when GPU deinterlacing is active.
I imagine that the pulldown is probably handled outside the CUDA decoding core, and understand too that if we process pulldown correctly we'll generate interlaced patterns AFTER the CUDA's processed deinterlaced frames, which is nonsense.
Not sure if I understood correctly the problem, but in this case (deinterlace=true & pulldown flags), wouldn't be more practical if we respect "partially" the pulldown flags, just repeating a full frame, instead of using half A / half B frames (which create an interlaced frame)? I'm just brainstorming, I didn't even know if this would be possible!
Like DGDecNV is working right now, my considerations would be: "If the stream has pulldown flags - DON'T DEINTERLACE IT USING GPU!". Or we'll certainly generating an audio sync problem. Am I Correct?
Best Regards,
Fernando
After some search, I found that the DGIndexNV found some pulldown flags inside the stream, and when I order it to deinterlace it just ignores the pulldown flags, making the deinterlaced output useless regarding audio sync.
Reading the manual, I found that DGDecNV ignore the pulldown flags when GPU deinterlacing is active.
I imagine that the pulldown is probably handled outside the CUDA decoding core, and understand too that if we process pulldown correctly we'll generate interlaced patterns AFTER the CUDA's processed deinterlaced frames, which is nonsense.
Not sure if I understood correctly the problem, but in this case (deinterlace=true & pulldown flags), wouldn't be more practical if we respect "partially" the pulldown flags, just repeating a full frame, instead of using half A / half B frames (which create an interlaced frame)? I'm just brainstorming, I didn't even know if this would be possible!
Like DGDecNV is working right now, my considerations would be: "If the stream has pulldown flags - DON'T DEINTERLACE IT USING GPU!". Or we'll certainly generating an audio sync problem. Am I Correct?
Best Regards,
Fernando