View previous topic :: View next topic |
Author |
Message |
depontius Advocate
Joined: 05 May 2004 Posts: 3509
|
Posted: Wed Jul 23, 2008 1:34 am Post subject: Mythtv, bttv, and 2.6.25 [SOLVED] |
|
|
I lost MythTV this weekend. As near as I can tell, it's a problem with kernel-2.6.25 moving to V4L2, with a compatibility layer to support V4L1, which MythTV uses. Here's a reference: http://lists.zerezo.com/video4linux/msg23164.html
My symptoms:
- First off, with my el-cheapo card, watching live TV has always been dicey, at the moment it's just plain broken.
- When I try to record something, it takes up gobs of space, on the order of 10X normal. Furthermore, if I try to view it, it's just a green screen, which looks like some of the symptoms I've found when searching the web.
For now I'm back to gentoo-2.6.24-r8, and recording cleanly. The obvious solution is to get rid of the el-cheapo card, and get a decent one, which I've asked about on a separate thread. It looks like there is marginal support for the Hauppauge HVR-1600, and better support is on the way. The old 3-digit Hauppauge cards are on their way out, plus the HVR-1600 does both analog+hardware MPEG2 and ATSC/QAM HDTV. I'm still trying to line up the support story, and make sure full support really is coming. NTSC/HDTV cards are getting to be common, but I haven't found much that has hardware MPEG2 for the NTSC. (So far only a few Hauppauge, and the HVR-1600 appears to have the best support, dicey as it is.)
Supposedly there's a workaround for 2.6.25 which amounts to using an mplayer script to watch TV before starting Myth. It sounds as if there's some card setup that is no longer getting done properly by Myth that is done properly by mplayer. I haven't tried this yet.
I'd be curious to see if anyone else has seen this, or has any other experiences.
Preliminary solution:
There is a patch out there that tells MythTV to use V4L2 to initialize bttv cards. I have done this manually and rebuilt. At the very least, MythTV still records. I have not gone further because of udev issues with my new capture card and device renaming. When the new capture card is recognized, it becomes /dev/video0 and moves the bttv card to /dev/video1. I need some udev rules to fix this, but that's a separate thread.
Solution:
The patch to tell MythTV to use V4L2 to initialize bttv cards works, though it was still done by a manual edit. Give that there have been no responses on this thread, I'm not terribly motivated to work it into a real patch and ebuild. Given a little time I'll be migrated off of the bttv card, and this will not longer be an issue for me. If others have the problem and respond, I can furnish further information. _________________ .sigs waste space and bandwidth |
|
Back to top |
|
|
traffic_hazard n00b
Joined: 08 Oct 2005 Posts: 17 Location: AZ
|
Posted: Tue Sep 02, 2008 6:17 pm Post subject: |
|
|
Can you explain (code snippet) how to get MythTV to use V4L2? I am having similar issues with a bttv card that I am using for NTSC cable TV input. Even after February, basic (boxless) cable will still be analog. So far, the NTSC/ATSC/QAM card I'm using with bunny ears (cx23885) has no NTSC support under Linux, so a second one of those is out of the question.
Thanks |
|
Back to top |
|
|
depontius Advocate
Joined: 05 May 2004 Posts: 3509
|
Posted: Wed Sep 03, 2008 2:05 am Post subject: |
|
|
Since I was doing a manual patch, I:
Code: | ebuild /usr/portage/media-tv/mythtv/mythtv-0.21_p18116.ebuild unpack |
then went to /var/tmp/portage/media/mythtv-0.21_p18116/work/mythtv-0.21/lib/libmyth
Here is the patch, but I didn't use it, because it's an ugly hack to get rid of the entire "if" clause. If you also have anything other than a cx8800, go7007, em28xx, or bttv this patch might do the wrong thing.
Code: | Index: libs/libmythtv/NuppelVideoRecorder.cpp
===================================================================
--- libs/libmythtv/NuppelVideoRecorder.cpp (revision 17447)
+++ libs/libmythtv/NuppelVideoRecorder.cpp (working copy)
@@ -985,7 +985,7 @@
correct_bttv = true;
QString driver = (char *)vcap.driver;
- if (driver == "cx8800" || driver == "go7007" || driver == "em28xx")
+ //if (driver == "cx8800" || driver == "go7007" || driver == "em28xx")
{
channelfd = open(videodevice.ascii(), O_RDWR);
if (channelfd < 0) |
Instead I added an extra '|| driver == "bttv"' clause inside the parentheses of the "if" statement.
Then:
Code: | ebuild /usr/portage/media-tv/mythtv/mythtv-0.21_p18116.ebuild install
ebuild /usr/portage/media-tv/mythtv/mythtv-0.21_p18116.ebuild qmerge |
to compile, install, and merge the code. Of course before starting all of this I did a qpkg of the existing code, and shut down the mythbackend.
It would probably be more correct to generate a good patch and add it to an ebuild, then file a bug and submit my patch.
Who knows, after I've got my new HVR-1600 working, I just might do that. Time is scarce. _________________ .sigs waste space and bandwidth |
|
Back to top |
|
|
bunder Bodhisattva
Joined: 10 Apr 2004 Posts: 5934
|
Posted: Sun Oct 12, 2008 2:23 am Post subject: |
|
|
i just did this on my machine. except i used the other patch provided, the one that adds bttv to that list instead of commenting it out. seems to work okay. IIRC the patch has been implemented into newer versions of mythtv (probably 0.22).
cheers _________________
Neddyseagoon wrote: | The problem with leaving is that you can only do it once and it reduces your influence. |
banned from #gentoo since sept 2017 |
|
Back to top |
|
|
depontius Advocate
Joined: 05 May 2004 Posts: 3509
|
Posted: Mon Oct 13, 2008 1:11 pm Post subject: |
|
|
bunder wrote: | i just did this on my machine. except i used the other patch provided, the one that adds bttv to that list instead of commenting it out. seems to work okay. IIRC the patch has been implemented into newer versions of mythtv (probably 0.22).
cheers |
I didn't use the patch I quoted either, rather adding the extra driver clause. Any idea when mythtv-0.22 goes stable? Would it be worth trying to pass this patch on to the Genoo mythtv developers? (Actually, I don't have a patch - I just hand-edit.) _________________ .sigs waste space and bandwidth |
|
Back to top |
|
|
bunder Bodhisattva
Joined: 10 Apr 2004 Posts: 5934
|
Posted: Mon Oct 13, 2008 2:48 pm Post subject: |
|
|
depontius wrote: | bunder wrote: | i just did this on my machine. except i used the other patch provided, the one that adds bttv to that list instead of commenting it out. seems to work okay. IIRC the patch has been implemented into newer versions of mythtv (probably 0.22).
cheers |
I didn't use the patch I quoted either, rather adding the extra driver clause. Any idea when mythtv-0.22 goes stable? Would it be worth trying to pass this patch on to the Genoo mythtv developers? (Actually, I don't have a patch - I just hand-edit.) |
wouldn't know, i'm still using 0.20. _________________
Neddyseagoon wrote: | The problem with leaving is that you can only do it once and it reduces your influence. |
banned from #gentoo since sept 2017 |
|
Back to top |
|
|
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|