[mythtv] [PATCH] HDTV Recorder Patch

John Patrick Poet john at BlueSkyTours.com
Fri Dec 3 07:15:59 UTC 2004


John Patrick Poet wrote:

> Daniel Thor Kristjansson wrote:
>
>> On Wed, 1 Dec 2004, Isaac Richards wrote:
>> ]Yeah, the old hdtvrecorder would treat sequence headers as gop 
>> starts if no ]real gop headers were found.  Looking over your patch, 
>> I think you've broken ]it slightly:
>> ]            else if (0xB8 == k1)
>> ]                HandleGOP();
>> ]            else if (0xB3 == k1 && !_gop_seen)
>> ]                HandleGOP();
>>
>> I've updated the HDTV recorder patch:
>>  http://www.mrl.nyu.edu/~danielk/mythtv/hdtv-recorder-v34.tbz
>>
>> It has four improvements motivated by John Poet's testing:
>>
>>  1) The PCR stream is recorded, even if it is not in the PMT.
>>     This isn't in the old hdtvrecorder, but is needed to produce
>>     valid streams when recording John's local CBS station. Thanks
>>     go to Taylor Jacob for the info that lead to this bug fix.
>>
>>  2) If GOPs are not found the hdtvrecorder tries to use sequence
>>     headers instead. This is in the old hdtvrecorder, but
>>     got lost in the new hdtvrecorder code.
>>
>>  3) If neither GOPs, nor Sequence headers are found in the first 30 
>>     frames hdtvrecorder creates a jump table by marking every 15th 
>>     frame as a keyframe. This works for recordings but if we don't 
>> fix     the resolution change bug in ffmpeg, it could cause problems 
>> there.
>>     Hopefully every stream will have a GOP or Sequence header anyway.
>>
>>  4) I created a statistics class TSStats which keeps track of the     
>> streams we are not recording. If VB_RECORD is true the recorder     
>> prints out the cummulative statistics once for every million     
>> packets we see. This prevents debugging messages from swamping
>>     the CPU, while providing the same information.
>>
>> -- Daniel
>>  
>>
>
> I only had 30 minutes to play with it, but this looks really good.  
> All of my digital channels are working perfectly.  I can record, 
> FF/REW and skip around without any problems.
>
> I did have to change "#define FAKE_VIDEO 1" to "#define FAKE_VIDEO 0" 
> in channel.h :-)
>
> Thanks Daniel!


Rats.  I just tried recording another PBS show, and once again I cannot 
FF/REW.  I deleted the show I recorded earlier, so I can't go back and 
make sure I recorded what I thought I did.

What is weird, is that it seemed to work for about the first 55 seconds 
of the show.  It is like I hit a magic barrier, and once there, FF/REW 
don't work anymore.

Other than than, this patch seems to work very well applied to the 
latest CVS.

John



More information about the mythtv-dev mailing list