Opened 14 years ago

Closed 14 years ago

Last modified 14 years ago

#2579 closed task (fixed)

Recognize "OpenCable" in channel scanner

Reported by: funaho@… Owned by: danielk
Priority: minor Milestone: 0.21
Component: mythtv Version: head
Severity: medium Keywords:
Cc: Ticket locked: no


Running SVN 11532. I have an HDHomeRun hooked up to my Comcast digital cable and mapped out numerous unencrypted channels. However, non-ATSC channels record files that although they play in mplayer, myth cannot find the video stream.

After much digging I found the culprit. libavformat as included in mythtv does not recognize STREAM_TYPE_VIDEO_OPENCABLE (0x80) as a valid stream type. After adding this support in the right places the files now play beautifully.

I am attaching the (short) patch against SVN 11532. This should probably get backported to 0.20-fixes as well; it's very short and should not cause any other problems.

Attachments (1)

opencable.patch (1.7 KB) - added by funaho@… 14 years ago.

Download all attachments as: .zip

Change History (10)

Changed 14 years ago by funaho@…

Attachment: opencable.patch added

comment:1 Changed 14 years ago by danielk

Milestone: unknown0.21
Owner: changed from Isaac Richards to danielk
Priority: majorminor

comment:2 Changed 14 years ago by Stuart Auchterlonie

This is interesting, since the underlying problem with #2556 is that the broadcaster is sending out a PMT with streams that myth recognizes as opencable video.

If the opencable video stream identifier is actually 0x80 and not 0x128 then this solves two problems in one go.

comment:3 Changed 14 years ago by danielk

Type: patchtask

funaho, I can't use your change because it will cause problems in DVB countries. But we have a fix for this particular problem in the DVBRecorder code, which I will port over to the HDHRRecorder sometime in the next couple weeks.

Your patch is completely safe so long you are only tuning OpenCable? and ATSC transports so you should continue using it until I port over the PMT rewrite fix.

comment:4 Changed 14 years ago by danielk

Summary: Make libavformat recognize OpenCable video streams in MPEG-TS filesRecognize "OpenCable" in channel scanner

comment:5 Changed 14 years ago by danielk

(In [11572]) Refs #2579. Fix for HDHomeRun problem with "OpenCable?" (does not fix DVB-x issues with OpenCable? fixup, and does not fix playback of existing "OpenCable?" recordings).

comment:6 Changed 14 years ago by danielk

(In [11691]) Refs #2579. Refactors ChannelBase? and moves it's digital tuning methods to DTVChannel.

comment:7 Changed 14 years ago by danielk

(In [11692]) Refs #2579. Fixes bug in [11691], the GetDTVChannel() was only compiled properly if DVB was enabled. This also adds a sanity check to make sure the channel is a DTVChannel before we try to use it as such in SetupDTVSignalMonitor().

comment:8 Changed 14 years ago by danielk

Resolution: fixed
Status: newclosed

(In [11693]) Fixes #2579. Adds two new system information table types for MPEG streams, "mpeg" and "opencable".

The problem with "OpenCable?" is that it uses a different stream id for video 0x80 which is already being used for other data in DVB countries for other uses. We were remapping the 0x80 stream id to the standard video stream id unconditionally which caused problems when this was not in fact a video stream.

With this change we mark a transport as being either a "dvb", "atsc", "opencable" or "mpeg" instead of just marking it as either "dvb" or "atsc" during the channel scan. This allows us to avoid this 0x80->video stream id mapping when in a DVB country, but still perform the remapping when the channel really is an "opencable" channel.

comment:9 Changed 14 years ago by danielk

(In [11701]) Refs #2579. Fixes bug in [11691] the GetDTVChannel() was only compiled properly if DVB was enabled. This is in the channel scanner as opposed to [11692] which was in TVRec.

Note: See TracTickets for help on using tickets.