Welcome Guest! To enable all features, please Login or Register.

Notification

Icon
Error

Options
View
Last Go to last post Unread Go to first unread post
#1 Posted : Sunday, October 10, 2010 1:06:01 PM(UTC)
JoeWright

Groups: Registered
Posts: 8


I'm not coming up with a good way to do field stepping with the deinterlace filter.

If you do playctrl.NextFrame() when paused it will take you to the next frame rather than the next field (so skips every other field).

If you play very slowly (say 1/50) and monitor the frame times, one frame is presented more or less at the right time but the second frame is timed just after - say 0.2ms after. This presumably would make it very hard to step by time rather than frame/field.

I've tested with a variety of interlaced sources, all with the same behaviour.

I would be happy even if I could get both fields somehow at once and manually select as appropriate.

Any ideas?

Thanks, Joe
 

Try the latest version of LEADTOOLS for free for 60 days by downloading the evaluation: https://www.leadtools.com/downloads

Wanna join the discussion? Login to your LEADTOOLS Support accountor Register a new forum account.

#2 Posted : Monday, October 11, 2010 4:12:44 AM(UTC)

Adam Boulad  
Guest

Groups: Guests
Posts: 3,028

Was thanked: 2 time(s) in 2 post(s)

Joe,
When using the de-interlace filter, the output of the filter will be the 2 split half frames for each input frame. However, seeking is done before the filter at the splitter (demultiplexer) and video decoder side. This means seeking will always take place at the interlaced full frames side, not the split half-frames side.

There could be an indirect way to solve it as follows:
1. Use the LEAD Video Callback filter instead of the De-interlace filter. This filter gives you the pixel data for each frame.
2. Perform your own splitting of this data.
3. When using this filter, you can get accurate frame seeking if you use the CurrentFramePosition (which seeks in frames) instead of CurrentPosition (which seeks in seconds). You can then get the frame, split it, and draw the half frame you choose.

One drawback is that you will have to implement both your own splitting and your drawing code. This means you won't be using our ltmmPlay control for displaying the split half-frames.
 
#3 Posted : Monday, October 11, 2010 4:21:53 AM(UTC)
JoeWright

Groups: Registered
Posts: 8


Its something I could do as I'm already using the callback filter because I want to have more control over the drawing anyway. I just didn't want to write my own deinterlacing code.

Thanks, Joe
 
You cannot post new topics in this forum.
You cannot reply to topics in this forum.
You cannot delete your posts in this forum.
You cannot edit your posts in this forum.
You cannot create polls in this forum.
You cannot vote in polls in this forum.

Powered by YAF.NET | YAF.NET © 2003-2020, Yet Another Forum.NET
This page was generated in 0.051 seconds.