[mythtv] Two entries for every recording and black screen not

Chris Pinkham cpinkham at bc2va.org
Mon Dec 5 23:47:31 UTC 2005


> On Mon, 2005-12-05 at 21:37 +0100, Adam Egger wrote:
> > Regarding:
> > Ticket #742 - DVB dummy stream also recorded
> > you said, it's a feature not a bug.
> > 
> > This feature unfortunately means for me (and others too) that there're
> > two entries for every recorded show in the recording list. It's always
> > possible to start watching the file by clicking on both entries, so
> > both point to the same file.
> 
> If the entry points to the recording then it is not #742. #742 is about
> dummy streams being recorded, not about two recording entries being created
> for the same recording. That is an entirely different issue that has 
> nothing to do with dummy recordings as such. You are free to create a
> ticket for your problem, which sounds like a bug not a feature. :)
> 
> -- Daniel

The second entries he's seeing are dated one second apart.  Here's the output
from a select I had him run while looking into the AutoExpire issues.

+--------+---------------------+---------------------+-----------------------+----------+
| chanid | starttime           | endtime             | title                 | hostname |
+--------+---------------------+---------------------+-----------------------+----------+
|   1226 | 2005-12-02 16:59:27 | 2005-12-02 17:00:00 | Kaffee oder Tee?      | c64      |
|   1226 | 2005-12-02 16:59:28 | 2005-12-02 17:00:00 | Kaffee oder Tee?      | c64      |
+--------+---------------------+---------------------+-----------------------+----------+

I'm not sure about watching both files, but from his logs, it appears that there
are 2 different entries with 2 different files and one appears to have been
created by the dummy recorder.  Here's some excerpts from Adam's logs that he sent me:

2005-12-02 17:06:35.030 TVRec(1): Changing from None to WatchingLiveTV

2005-12-02 17:06:35.035 TVRec(1): CreateLiveTVRingBuffer()
2005-12-02 17:06:35.035 TVRec(1): GetProgramRingBufferForLiveTV()

2005-12-02 17:06:35.083 TVRec(1): StartedRecording(0x81df308) fn(/big/myth/record/7_20051202170635.mpg)

2005-12-02 17:06:35.133 DummyDTVRecorder::StartRecording -- begin

2005-12-02 17:06:36.122 DummyDTVRecorder::StopRecordingThread(void)

2005-12-02 17:06:36.129 DummyDTVRecorder::FinishRecording()

2005-12-02 17:06:36.139 DummyDTVRecorder::StartRecording -- end

2005-12-02 17:06:36.144 TVRec(1): SwitchLiveTVRingBuffer(discont 1, set_rec 0)
2005-12-02 17:06:36.144 TVRec(1): GetProgramRingBufferForLiveTV()

2005-12-02 17:06:36.166 TVRec(1): StartedRecording(0x8198510) fn(/big/myth/record/7_20051202170636.mpg)

2005-12-02 17:06:36.181 DummyDTVRecorder::StopRecordingThread(void)


So, it appears the dummy recorder exits, and ProgramInfo::StartedRecording() gets
called again for the same recording since TVRec::GetProgramRingBufferForLiveTV() is called
again from TVRec::SwitchLiveTVRingBuffer().  And since the new ProgramInfo::StartedRecording()
code increments the time by one second if the entry already exists in the DB,
the user ends up with 2 recordings (one being empty I assume, but I don't have DVB
so I'm not sure).

I don't know enough how the dummy recorder works, or how it interacts with LiveTV, but
I wonder if we should be calling TVRec::StartedRecording(prog);() inside
TVRec::GetProgramRingBufferForLiveTV() when we are switching from a dummy recorder.

-- 
Chris



More information about the mythtv-dev mailing list