[mythtv-commits] Ticket #1013: livetv does not work (svn 8575) [DVB]

MythTV mythtv at cvs.mythtv.org
Sat Jan 14 06:39:30 UTC 2006


#1013: livetv does not work (svn 8575) [DVB]
-----------------------+----------------------------------------------------
 Reporter:  anonymous  |        Owner:  cpinkham
     Type:  defect     |       Status:  reopened
 Priority:  blocker    |    Milestone:  0.19    
Component:  dvb        |      Version:  head    
 Severity:  medium     |   Resolution:          
-----------------------+----------------------------------------------------
Changes (by cpinkham):

  * priority:  minor => blocker

Comment:

 Mark, can you update to SVN head and verify things work correctly again,
 then apply the attached avcodeclock.diff patch and see if it still works
 correctly after applying the patch.  We need to lock around avcodec_open
 and avcodec_close, otherwise we get failures when multiple threads are
 trying to call one of those such as when we have multiple recordings
 ending at the same time and multiple preview generators firing off.  This
 was the reason for the initial added locks.  With this patch, we convert
 the lock to a recursive lock, so we can lock it once inside
 HandleStreamChange which calls ScanStreams, then inside ScanStreams, we
 can lock it again around avcodec_open.  This way when we call ScanStreams
 outside of HandleStreamChange, we still correctly lock around
 avcodec_open.

 If this doesn't fix the issue, I'll have to defer to someone with DVB.
 I'm unable to replicate the issue on my system with either patch revision.
 We need to get locks around this call to avcodec_open somehow since it is
 a documented issue that it is not thread-safe.  It is thread-aware in that
 it prints a nasty error message if called twice at the same time, so it
 doesn't segfault or anything, but it can and does break functionality in
 certain parts of Myth.  Otherwise we'll have lots of users with multiple
 tuners getting the error I noted in [8573].

-- 
Ticket URL: <http://svn.mythtv.org/trac/ticket/1013>
MythTV <http://www.mythtv.org/>
MythTV


More information about the mythtv-commits mailing list