[mythtv-commits] Ticket #4515: Frontend unknown error, exiting decoder, livetv stuck on bad channel
MythTV
mythtv at cvs.mythtv.org
Mon Feb 18 13:40:59 UTC 2008
#4515: Frontend unknown error, exiting decoder, livetv stuck on bad channel
------------------------------------+---------------------------------------
Reporter: markus.ingalsuo at osp.fi | Owner: danielk
Type: patch | Status: assigned
Priority: minor | Milestone: 0.21
Component: mythtv | Version: head
Severity: medium | Resolution:
Mlocked: 0 |
------------------------------------+---------------------------------------
Comment(by dm at prolingua.co.uk):
I've been looking at various issues to do with the frontend. The attached
patch deals with the situation where av_find_stream_info is looking for
timing information on the streams. Since DSMCC packets are not part of a
PES stream there is no timing information available.
There are other issues:
mpegts.c sets AVFMTCTX_NOHEADER for the transport stream presumably
because information about the stream is held in the PMT. That causes
av_find_stream_info not to return until MAX_FRAMES packets have been
returned, or there is both video and audio. That can cause the ring
buffer to time out on some channels (e.g. TeleG) with a very low rate of
DSMCC packets. One possibility would be to clear AVFMTCTX_NOHEADER once a
PMT is seen. The original ffmpeg version of av_find_stream_info actually
waits for read_size >= MAX_READ_SIZE only and it looks as though this
condition has been weakened in the Myth version to speed up channel
changing in live TV.
RingBuffer.cpp sets end-of-file and produces a "Timing out wait due to
impending livetv switch." message if the user changes channel. If this
happens before sufficient packets have arrived for
NuppelVideoPlayer::OpenFile to return successfully this appears as a hard
error and the log shows something like:
2008-02-18 13:05:12.067 RingBuf(/video/1008_20080218130508.mpg): Timing
out wait due to impending livetv switch.[[BR]]
2008-02-18 13:05:12.067 NVP::OpenFile(): Error, couldn't read file:
/video/1008_20080218130508.mpg[[BR]]
2008-02-18 13:05:12.067 NVP: DoPlay: rate: 25 speed: 1 skip: 1 => new
interval 40000[[BR]]
2008-02-18 13:05:12.067 Set video sync frame interval to 40000[[BR]]
2008-02-18 13:05:12.067 NVP, Error: JumpToProgram failed.[[BR]]
This can make it impossible to change to a different channel if one is
tuned to a channel that is producing DSMCC packets slowly.
I've tried out Daniel's revised backend patch and it seems to work fine.
David.
--
Ticket URL: <http://svn.mythtv.org/trac/ticket/4515#comment:22>
MythTV <http://svn.mythtv.org/trac>
MythTV
More information about the mythtv-commits
mailing list