Opened 14 years ago

Closed 14 years ago

Last modified 14 years ago

#201 closed patch (wontfix)

DVB: For streams not correctly identifying as video

Reported by: atomjack@… Owned by: Isaac Richards
Priority: minor Milestone: unknown
Component: mythtv Version: head
Severity: medium Keywords:
Cc: Ticket locked: no

Description

I had problems getting myth to tune to Discovery HD theater, and it turns out it was because the stream wasn't being properly identified as having video - dvbtraffic showed OTHER for that stream, although it also showed that it had a type 0x80. I had no problems tuning to and capturing this channel outside of myth, however. Upon inspection of the source, I found that it looked like this fix was started but never finished. Here's the diff:

Index: libs/libmythtv/siparser.cpp
===================================================================
--- libs/libmythtv/siparser.cpp (revision 6995)
+++ libs/libmythtv/siparser.cpp (working copy)
@@ -795,6 +795,8 @@
                 e.Type = ES_TYPE_VIDEO_MPEG1;
                 break;
             case 0x80:  // OpenCable Mpeg2
+                e.Type = ES_TYPE_VIDEO_MPEG2;
+                break;
             case 0x02:  // DVB/ATSC Mpeg2
                 e.Type = ES_TYPE_VIDEO_MPEG2;
                 break;

You'll notice all I had to add was the two lines underneath case 0x80, which was already there. This is my first contribution. Hope I did everything right.

Attachments (1)

mythtvdvb.diff (518 bytes) - added by atomjack@… 14 years ago.

Download all attachments as: .zip

Change History (5)

Changed 14 years ago by atomjack@…

Attachment: mythtvdvb.diff added

comment:1 Changed 14 years ago by anonymous

I had problems getting myth to tune to Discovery HD theater, and it turns out it was because the stream wasn't being properly identified as having video - dvbtraffic showed OTHER for that stream, although it also showed that it had a type 0x80. I had no problems tuning to and capturing this channel outside of myth, however. Upon inspection of the source, I found that it looked like this fix was started but never finished. You'll notice all I had to add was the two lines underneath case 0x80, which was already there. This is my first contribution. Hope I did everything right.

comment:2 Changed 14 years ago by anonymous

Type: defectpatch
Version: 0.18.1head

comment:3 Changed 14 years ago by Isaac Richards

Resolution: wontfix
Status: newclosed

Patch makes no sense.

comment:4 Changed 14 years ago by KeithIrwin@…

As the person who last touched the code in this vicinity, I'd like to add that Isaac is completely correct here. The patch is not sensible.

Atomjack, you do not understand how a switch statement in C/++ works. A case statement is a label. Everything between a given label and the next break statement is executed. So, your patch will not change the function of the code at all.

If the the tuning was working incorrectly before you patched it and correctly afterwards, I would suggest that was has most likely happened is that before the change, you were not running the most up-to-date version of the code, perhaps due to something silly like failing to install it or having two versions of the binaries installed in different locations. The fix to recognize OpenCable?-labeled MPEG-2 streams in TS mode was made over a month ago before the switch to TS mode as the default, but after the 0.18.1 release.

Keith

Note: See TracTickets for help on using tickets.