[mythtv-commits] Ticket #6208: Changing channels in browse mode switches to incorrect channel if input is not on same dvb input
MythTV
mythtv at cvs.mythtv.org
Tue Aug 25 22:41:55 UTC 2009
#6208: Changing channels in browse mode switches to incorrect channel if input is
not on same dvb input
--------------------------------------+-------------------------------------
Reporter: Mitch <mitch at hasbox.com> | Owner: danielk
Type: defect | Status: new
Priority: minor | Milestone: unknown
Component: MythTV - DVB/ATSC | Version: head
Severity: low | Resolution:
Mlocked: 0 |
--------------------------------------+-------------------------------------
Old description:
> I have a single DVB card with a single input connected to 3 satellites
> via a diseqc. Mythbackend shows this:
>
> ----
>
> 2009-01-31 23:42:03.867 DiSEqCDevTree: Changing LNB voltage to 18V
> 2009-01-31 23:42:04.368 DiSEqCDevTree: Resetting DiSEqC Bus
> 2009-01-31 23:42:04.368 DiSEqCDevTree: Sending DiSEqC Command: e0 0 0
> 2009-01-31 23:42:05.017 ChannelBase(1): Input #1: 'DVBInput #1'
> schan(630) sourceid(1) ccid(1)
> 2009-01-31 23:42:05.018 ChannelBase(1): Input #2: 'DVBInput #2'
> schan(384) sourceid(2) ccid(1)
> 2009-01-31 23:42:05.019 ChannelBase(1): Input #3: 'DVBInput #3'
> schan(330) sourceid(3) ccid(1)
> 2009-01-31 23:42:05.019 ChannelBase(1): Current Input #1: 'DVBInput #1'
>
> ----
>
> Everything works fine normally. However if you attempt to change channel
> in '''browse mode''' to a channel on a different input you will see the
> following output
>
> ----
>
> 2009-01-31 20:30:33.773 ChannelBase(1): Failed to find channel(785) on
> current input (DVBInput #3) of card (1).
> 2009-01-31 20:30:33.775 ChannelBase(1): Found channel(785) on another
> input (DVBInput #1) of card (1).
> 2009-01-31 20:30:33.811 ChannelBase(1): Failed to find channel(384) on
> current input (DVBInput #3) of card (1).
> 2009-01-31 20:30:33.813 ChannelBase(1): Found channel(384) on another
> input (DVBInput #2) of card (1).
> 2009-01-31 20:30:33.818 TVRec(1): SetChannel(384) -- begin
> 2009-01-31 20:30:33.818 ChannelBase(1): Looking for startchannel '384' on
> input 'DVBInput #1'
> 2009-01-31 20:30:33.833 ChannelBase(1): Found startchannel '384' on input
> 'DVBInput #2'
> 2009-01-31 20:30:33.834 TVRec(1): HW Tuner: 1->1
>
> ----
>
> So it recognises that the channel i'm wanting to change to is not on the
> current input, but then changes to change the channel to the start
> channel but on a totally different input (i.e. the wrong channel). Once
> you are on this new (wrong) channel, you can no longer change channel in
> browse mode and you have to go to the EPG to change channels.
>
> I believe this bug is due to the fact that CheckChannel() ignores the
> filled in return field 'inputName'.
>
> I have attached a patch which seems to fix this for me however i'm not
> sure this is the right place to do this or if we're leaking anything
> here.
>
> I've marked this as major/high as i'm positive this is bug and should
> affect everyone with multiple satellites on a single dvb card.
New description:
I have a single DVB card with a single input connected to 3 satellites via
a diseqc. Mythbackend shows this:
{{{
2009-01-31 23:42:03.867 DiSEqCDevTree: Changing LNB voltage to 18V
2009-01-31 23:42:04.368 DiSEqCDevTree: Resetting DiSEqC Bus
2009-01-31 23:42:04.368 DiSEqCDevTree: Sending DiSEqC Command: e0 0 0
2009-01-31 23:42:05.017 ChannelBase(1): Input #1: 'DVBInput #1' schan(630)
sourceid(1) ccid(1)
2009-01-31 23:42:05.018 ChannelBase(1): Input #2: 'DVBInput #2' schan(384)
sourceid(2) ccid(1)
2009-01-31 23:42:05.019 ChannelBase(1): Input #3: 'DVBInput #3' schan(330)
sourceid(3) ccid(1)
2009-01-31 23:42:05.019 ChannelBase(1): Current Input #1: 'DVBInput #1'
}}}
Everything works fine normally. However if you attempt to change channel
in '''browse mode''' to a channel on a different input you will see the
following output
{{{
2009-01-31 20:30:33.773 ChannelBase(1): Failed to find channel(785) on
current input (DVBInput #3) of card (1).
2009-01-31 20:30:33.775 ChannelBase(1): Found channel(785) on another
input (DVBInput #1) of card (1).
2009-01-31 20:30:33.811 ChannelBase(1): Failed to find channel(384) on
current input (DVBInput #3) of card (1).
2009-01-31 20:30:33.813 ChannelBase(1): Found channel(384) on another
input (DVBInput #2) of card (1).
2009-01-31 20:30:33.818 TVRec(1): SetChannel(384) -- begin
2009-01-31 20:30:33.818 ChannelBase(1): Looking for startchannel '384' on
input 'DVBInput #1'
2009-01-31 20:30:33.833 ChannelBase(1): Found startchannel '384' on input
'DVBInput #2'
2009-01-31 20:30:33.834 TVRec(1): HW Tuner: 1->1
}}}
So it recognises that the channel i'm wanting to change to is not on the
current input, but then changes to change the channel to the start channel
but on a totally different input (i.e. the wrong channel). Once you are on
this new (wrong) channel, you can no longer change channel in browse mode
and you have to go to the EPG to change channels.
I believe this bug is due to the fact that CheckChannel() ignores the
filled in return field 'inputName'.
I have attached a patch which seems to fix this for me however i'm not
sure this is the right place to do this or if we're leaking anything here.
I've marked this as major/high as i'm positive this is bug and should
affect everyone with multiple satellites on a single dvb card.
--
Comment(by mdean):
See, also, #6909 for a -v channel,record,siparser log.
--
Ticket URL: <http://svn.mythtv.org/trac/ticket/6208#comment:3>
MythTV <http://www.mythtv.org/>
MythTV
More information about the mythtv-commits
mailing list