[mythtv] pcHDTV NTSC<->ATSC
jhoos at thwack.net
Tue Sep 14 19:16:14 EDT 2004
I recently looked into getting both ATSC and NTSC working on a single pcHDTV
card, mostly because I had defined two sources on my card (one off each
antenna), one source being HDTV and one source being cable. When I did
that, Myth kept locking up anytime I switched to an NTSC channel.
Off the top of my head, here is what I discovered. Fixing the problem for a
record-only setup shouldn't be too bad - in tv_rec.cpp, you need to modify
the function that sets up the appropriate Recorder class so that it checks
whether the channel is ATSC or NTSC, and have it instantiate an HDTVRecorder
or NuppelVideoRecorder as appropriate. In addition, some changes to the
Channel class were necessary in order to keep it from trying to check signal
strength on an NTSC channel.
Those were the changes I made so far, and they seem to be steps in the right
direction, although I didn't test recording really since my initial goal was
to get things working in Live TV, since that was where the lockup was
occurring. Getting things working in LiveTV, however, is more difficult,
and I got sidetracked before I made any major headway with it.
The main problem with Live TV is that when you enter Live TV mode on the
pcHDTV, Myth pretty much sets up everything it needs up front in order to do
ATSC, and there isn't really much provision (that I could see anyways) for
switching to NTSC on a per-channel basis. When LiveTV starts up, the
backend creates the HDTVRecorder object and the frontend creates a
corresponding AVFormatDecoder object, and they persist until you exit Live
TV. The class in tv_rec.cpp doesn't really have any facility currently for
switching back and forth between using HDTVRecorder and NuppelVideoRecorder
when changing channels, and I'm guessing that a similar situation exists
with the decoders in the frontend, although I didn't get that far.
I toyed around (mentally) with various ideas to either get tv_rec to be able
to switch recorders, but I haven't come up with anything yet that seemed
elegant. Once that gets solved, there's still the issue of whether the
frontend needs logic to switch decoders (unless somehow it already can), and
whether or how the backend would tell the frontend that it needed to, etc...
If you want, I can share the changes I made so far if I still have them (not
sure if I do or not), since they may work sufficiently at least for
mythtv-dev-bounces at mythtv.org <> wrote:
> I don't believe anyone is working on this. Doug, John Poet and me have
> been doing work lately on HDTV. Just to warn you, you'll need
> to fiddle
> a few things to get this working.
> -- Daniel
> On Mon, 13 Sep 2004, Todd Freeman wrote:
> ]Howdy all...
> ]I have been salivating over what my pcHDTV card can do in
> ATSC mode...
> ]and now have gotten it in my head to go ahead and see if I can get
> ]Mythtv to use it in both NTSC and ATSC mode...
> ]Before I go doing massive code writing I wanted to check and see who
> ]the programmers were that are working on the core pcHDTV stuff for
> ]Mythtv. ]
> ]Basically I don't want to step on anyones toes or to dupe effort
> that ]is already being worked on. ]
> ]So far I have noticed that with the card set as a pcHDTV card you are
> ]locked into ATSC no matter what the channel table says the channel
> ]really is. I have thought of a couple fairly easy ways out of
> this... ] ]Also perculating in my head is the idea to have mythtv
> change it's ]capture type and also switch the pchdtv over on channel
> change. ] ]Anyways... any info would be great
> ]Keep up the good work everyone!
More information about the mythtv-dev