← Back to team overview

mythbuntu-bugs team mailing list archive

[Bug 562690] Re: No LiveTV nor recording with V4L cards and 64-bit Linux backend

 

This bug was fixed in the package mythtv - 0.23.0+fixes24133-0ubuntu1

---------------
mythtv (0.23.0+fixes24133-0ubuntu1) lucid; urgency=low

  [ Dave Walker (Daviey) ]
  * New upstream snapshot (r24133)
    - Fixes crash of mythfrontend when upconverting audio to 5.1 (LP: #550562)
    - Improve Jamu handling of invalid database data (LP: #549352)
    - Remove mythtranscode's internal copy of the slow-delete code and instead
      send a request to the backend to delete the file. (LP: #481104)
    - LiveTV & recording with V4L cards on 64-bit backend fixed. (LP: #562690)
  * debian/mcc-mirobridge/*: New icon, UI alignment changes and description
    text added.  Courtesy of R. Doug Vaughan.
  * debian/rules: Added cxx option "-maltivec" to PowerPC specifc configure
    option to fix FTBFS for that architecture. (LP: #559614)

  [ Mario Limonciello ]
  * 40_libudev.path:
    - Add -ludev to the library check.
  * debian/control:
    - Drop linux-libc-dev build-dep.
  * Actually disable halt and reboot commands by default.
 -- Dave Walker (Daviey) <DaveWalker@xxxxxxxxxx>   Thu, 15 Apr 2010 00:04:14 +0100

** Changed in: mythtv (Ubuntu)
       Status: In Progress => Fix Released

-- 
No LiveTV nor recording with V4L cards and 64-bit Linux backend
https://bugs.launchpad.net/bugs/562690
You received this bug notification because you are a member of Mythbuntu
Bug Team, which is subscribed to mythtv in ubuntu.

Status in “mythtv” package in Ubuntu: Fix Released

Bug description:
Binary package hint: mythtv

Package: mythtv 0.23.0+fixes23820-0ubuntu1
Ubuntu: Lucid 10.04 Beta 2 LTS 64-bit

Problem:
LiveTV stalls on the frontend with the 'Please wait' message for a couple of seconds and then turns to black; after a couple more seconds the 'Video frame buffering failed too many times' dialog pops up.
Recording creates a very small file (~1 MB/minute) and when attempting to play it back it does the same as LiveTV.

Context:
Backend running on a 64-bit system, with V4L capture cards (anything that compresses by RTJPEG + LZO for the network).

Analysis:
In line 3050 of the NuppelVideoRecorder.cpp file a pointer to the variable 'out_len' is passed to the function lzo1x_1_compress, typecast from a pointer to a int (&out_len) to a pointer to a lzo_uint (lzo_uint *). But when compiling on a 64-bit system an int = 4 bytes and lzo_uint = 8 bytes. So when the function stores the value in the 'out_len' variable it overwrites the previous variable on the stack, that is 'tmp'. This causes the call to ringBuffer->Write(strm, tmp) to not write any frame data.
The problem may actually be caused by incorrect #defines in the lzoconf.h file.

Possible solution:
Change the line 2902 from :

int tmp = 0,out_len = OUT_LEN;

to:

int tmp = 0;
lzo_uint out_len = OUT_LEN;





References