No LiveTV nor recording with V4L cards and 64-bit Linux backend

Bug #562690 reported by Carlos Azevedo
10
This bug affects 1 person
Affects Status Importance Assigned to Milestone
mythtv (Ubuntu)
Fix Released
Critical
Unassigned

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;

Revision history for this message
Carlos Azevedo (geral-sware) wrote :
Revision history for this message
MarcRandolph (mrand) wrote :

Per the thread, a change has been applied to trunk (http://svn.mythtv.org/trac/changeset/24126) to address this. People running 0.23 auto-builds will pick this up as soon as it is backported to the 0.23-fixes branch.

Changed in mythtv (Ubuntu):
importance: Undecided → Critical
status: New → In Progress
Revision history for this message
Launchpad Janitor (janitor) wrote :

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) <email address hidden> Thu, 15 Apr 2010 00:04:14 +0100

Changed in mythtv (Ubuntu):
status: In Progress → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.