On Thursday, January 12, 2006, 10:07:52 PM, John wrote:

> I'm cross posting this onto the devel list (and top posting - sorry). 
> Looks like another python2.4 and ivtv driver issue and they are running 
> 1.5.4. Can someone (Rob again :)) take a look?

Jason and Gerrit Hannaert already looked into it. Both provided a patch on the
userlist at 10/11 june 2005. Both patches didn't make it in python 2.4 bugfix
release freevo 1.5.4 I did have a private correspondence with Geert Decorte who
experienced the following python 2.4 error

r = fcntl.ioctl(self.device, long(QUERYCAP_NO), val)
OverflowError: long int too large to convert to int

and after applying the attached patches provided by Jason and Gerrit it worked
again. Although i haven't looked if there are more instances which could trigger
this error within Freevo.

The other error in this thread

 r = fcntl.ioctl(self.device, i32(QUERYCAP_NO), val)
    IOError: [Errno 22] Invalid argument

is already fixed in 1.5.4

        /Robert
> Thanks,

> John

> Geert Decorte wrote:

>>This is a simple metoo reply.
>>
>>None of the patches John described worked for me.
>>Have the impression this is specific on python 2.4 acting different then
>>python 2.3
>>
>>I have a hauppage MCE 500 working under linux on a epia motherboard.
>>(using epios: gentoo derivative for epia mobo's)
>>
>>  
>>
>>>brian wrote:
>>>
>>>    
>>>
>>>>      
>>>>
>>>>>"brian" wrote:
>>>>>
>>>>>
>>>>>        
>>>>>
>>>>>>>  File "/usr/lib/python2.4/site-packages/freevo/tv/v4l2.py", line
>>>>>>>225, in querycap
>>>>>>>    r = fcntl.ioctl(self.device, i32(QUERYCAP_NO), val)
>>>>>>>IOError: [Errno 22] Invalid argument
>>>>>>>            
>>>>>>>
>>>>>>          
>>>>>>
>>>>>Sounds like Freevo != 1.5.4 and Python 2.4. Please update Freevo.
>>>>>
>>>>>Dischi
>>>>>
>>>>>        
>>>>>
>>>>I just checked my install and it was 1.5.4.  but just to make sure i
>>>>removed it and installed from the SourceInstallation, and have the
>>>>same problem.  Any other suggestions would be greatly appreciated.
>>>>
>>>>
>>>>      
>>>>
>>>Hi Brian,
>>>
>>>by coincedence I just had a similar problem solved, unfortunately it
>>>wasn't the exact same. The discussion is on the devel list if you want
>>>to look up the archives. Here are two suggestions that might apply to
>>>you though.
>>>
>>> From Duncan:
>>>I now remember that I send a message back in November about a problem
>>>with v4l2.py and the AMD64 maybe this problem is not limited to the AMD64.
>>>
>>>Here's a patch that I've done for this problem:
>>>http://www.linuxowl.com/patches/freevo-1.5.4-v4l2.py.patch
>>>Python was using 'L' for 64bit ints and the interface wanted 32bit ints.
>>>
>>>Regards,
>>>Duncan
>>>
>>>--- freevo-1.5.4/src/tv/v4l2.py.orig    2005-10-16 11:18:50.000000000
>>>+0200
>>>+++ freevo-1.5.4/src/tv/v4l2.py 2005-11-13 15:13:15.000000000 +0100
>>>@@ -100,6 +100,7 @@
>>>SETFREQ_NO_V4L = _IOW('v', 15, "L")
>>>
>>>QUERYCAP_ST  = "16s32s32sLL16x"
>>>+QUERYCAP_ST  = "16s32s32sII16x" #NEW
>>>QUERYCAP_NO  = _IOR('V',  0, QUERYCAP_ST)
>>>
>>>ENUMSTD_ST   = "LQ24s2LL16x"
>>>@@ -112,11 +113,13 @@
>>>ENUMINPUT_ST = "L32sLLLQL16x"
>>>ENUMINPUT_NO = _IOWR('V', 26, ENUMINPUT_ST)
>>>
>>>-INPUT_ST  = "L";
>>>+INPUT_ST  = "L"
>>>+INPUT_ST  = "I"; #NEW
>>>GETINPUT_NO  = _IOR('V', 38, INPUT_ST)
>>>SETINPUT_NO  = _IOWR('V', 39, INPUT_ST)
>>>
>>>FMT_ST = "L7L4x168x"
>>>+FMT_ST = "L7I4x168x" #NEW
>>>GET_FMT_NO = _IOWR ('V',  4, FMT_ST)
>>>SET_FMT_NO = _IOWR ('V',  5, FMT_ST)
>>>
>>> From RobertW:
>>>
>>>What i recall is when DEBUG is set in local_conf.py some extra
>>>informational ioctl is called. This bug is there for a year or maybe
>>>more  :-) .  User can workaround this by disabling DEBUG or removing (if
>>>DEBUG: v.print_settings()) in  ivtv_record.py as Rob already pointed
>>>out or apply the following oneliner patch provided by Duncan Web back
>>>in september and not the one he mentioned earlier in this thread  ;-)
>>>
>>>--- v4l2.py     2006-01-05 20:56:22.000000000 +0100
>>>+++ v4l2.py.orig        2006-01-05 20:53:54.000000000 +0100
>>>@@ -243,7 +243,7 @@
>>>
>>>
>>>     def getfmt(self):
>>>-        val = struct.pack( FMT_ST, 1L,0,0,0,0,0,0,0)
>>>+        val = struct.pack( FMT_ST, 0,0,0,0,0,0,0,0)
>>>         r = fcntl.ioctl(self.device,GET_FMT_NO,val)
>>>         return struct.unpack( FMT_ST, r )
>>>
>>>
>>>
>>>
>>>-------------------------------------------------------
>>>This SF.net email is sponsored by: Splunk Inc. Do you grep through log
>>>files
>>>for problems?  Stop!  Download the new AJAX search engine that makes
>>>searching your log files as easy as surfing the  web.  DOWNLOAD SPLUNK!
>>>http://ads.osdn.com/?ad_id=7637&alloc_id=16865&op=click
>>>_______________________________________________
>>>Freevo-users mailing list
>>>[email protected]
>>>https://lists.sourceforge.net/lists/listinfo/freevo-users
>>>
>>>
>>>--
>>>This message has been scanned for viruses and
>>>dangerous content by OpenProtect(http://www.openprotect.com), and is
>>>believed to be clean.
>>>
>>>
>>>    
>>>
>>
>>
>>http://gedeco.no-ip.org
>>
>>
>>
>>  
>>

Attachment: freevo-recordserver-python-2.4.patch
Description: Binary data

Attachment: mixer_i32.patch
Description: Binary data

Reply via email to