[mythtv] [mythtv-commits] Ticket #1356: DTVRecorder::FindKeyframes in 0.19 causes video gltiches in firewire recordings

Steven Adeff adeffs.mythtv at gmail.com
Mon Mar 6 00:01:58 UTC 2006


On 3/4/06, Daniel Kristjansson <danielk at cuymedia.net> wrote:
> On Sat, 2006-03-04 at 14:15 -0800, Jim Westfall wrote:
> > can anyone explain this part of ::FindKeyframes?
> >
> >     // if packet contains start of PES packet, start
> >     // looking for first byte of MPEG start code (3 bytes 0 0 1)
> >     // otherwise, pick up search where we left off.
> >     const bool payloadStart = tspacket->PayloadStart();
> >     _header_pos = (payloadStart) ? 0 : _header_pos;
> >
> > If the packet doesnt contain the start of a PES packet, which is what
> > we are looking for, why do we process the packet?
> >
> > I would think we could short circuit on (!payloadStart && !_header_pos).
>
> Yeah, I used to think so too and had that short circuit in the
> code for a while, but sometimes the headers we are looking for
> are not in the first TS packet containing the PES packet. This
> happens especially with DVB-S, because they often insert a lot
> of non-video data into the video packets, but can happen with any
> stream encoded at the broadcast end.
>
> When I get around to fixing #799 we should be able to short
> circuit the scan at a safe point in the pes packet. I've also
> avoided  optimizing the FindKeyFrames function because I knew
> we needed to fix #799 first.
>
> -- Daniel

Daniel, I don't see how #799 is related to the firewire issue? Also,
is this a ticket anyone is working on currently?

--
Thanks,
Steve


More information about the mythtv-dev mailing list