[mythtv-users] Cannot play converted .nuv recordings in 0.23

Joern Koerner joern.koerner at gmail.com
Fri Jun 4 07:45:39 UTC 2010


Am 04.06.2010 03:19, schrieb Michael T. Dean:
> On 06/03/2010 08:26 AM, Joern Koerner wrote:
>> Ok, here are the configure arguments and it's output:
>>
>> ./configure --prefix=/usr --enable-audio-oss --enable-audio-alsa
>> --disable-audio-jack --disable-audio-pulse --disable-distcc
>> --disable-ccache --enable-vdpau --enable-dvb --dvb-path=/usr/include
>> --enable-x11 --with-bindings=perl,python
>
> OK, that looks OK. So, assuming you don't have any environment variables
> set that affect compilation (i.e. like CFLAGS/CXXFLAGS/whatever, which
> could break things with various things, like -O values), I don't know
> why it would be failing.
>
> I'll test a transcoded recording this weekend, but I'm pretty sure it
> will work (since it did just a couple weeks ago).
>

I'm not that sure ;-)


Let the things clear up a little bit: The error itself ("NuppelDecoder?: 
lzo_init() failed, aborting") is generated in 
libmythtv->nuppeldecoder.cpp at ~line 86. At this point the linked 
library "minilzo.cpp" is called. So the initialisation of the lzo lib 
failed.

So far I found some interesting comment when I look at the minilzo 
sources (testmini.c) -- SNIP --------------------------

     if (lzo_init() != LZO_E_OK) {

         printf("internal error - lzo_init() failed !!!\n"); 
printf("(this usually indicates a compiler bug - try 
recompiling\nwithout optimizations, and enable `-DLZO_DEBUG' for 
diagnostics)\n"); return 3;

     }

-- SNAP --------------------------

Also the README of the mimilzo lib tells: ...

     If you are running on a very unusual architecture and lzo_init() 
fails then you should first recompile with `-DLZO_DEBUG' to see what 
causes the failure. The most probable case is something like 
`sizeof(char *) != sizeof(long)'. After identifying the problem you can 
compile by adding some defines like `-DSIZEOF_CHAR_P=8' to your Makefile.

     The best solution is (of course) using Autoconf - if your project 
uses Autoconf anyway just add `-DMINILZO_HAVE_CONFIG_H' to your compiler 
flags when compiling minilzo.c. See the LZO distribution for an example 
how to set up configure.in.

My configure parameters and it's output are: ./configure --prefix=/usr 
--enable-audio-oss --enable-audio-alsa --disable-audio-jack 
--disable-audio-pulse --disable-distcc --disable-ccache --enable-vdpau 
--enable-dvb --dvb-path=/usr/include --enable-x11 
--with-bindings=perl,python # Basic Settings Compile type release 
Compiler cache no DistCC no qmake /usr/bin/qmake install prefix /usr 
runtime prefix /usr CPU x86 x86_32 (Intel(R) Pentium(R) 4 CPU 3.00GHz) 
big-endian no runtime cpu detection no yasm yes MMX enabled yes MMX2 
enabled yes 3DNow! enabled yes 3DNow! extended enabled yes SSE enabled 
yes SSSE3 enabled yes CMOV enabled yes

# Input Support Joystick menu yes lirc support yes Video4Linux sup. yes 
ivtv support yes HD-PVR support yes FireWire? support yes DVB support 
yes /usr/include DVB-S2 support yes HDHomeRun support yes IPTV support yes

# Sound Output Support PulseAudio? support no OSS support yes ALSA 
support yes JACK support no libfftw3 support no

# Video Output Support x11 support yes xrandr support yes xv support yes 
XvMC support yes XvMC VLD support yes XvMC pro support no XvMC libs 
-lXvMCW VDPAU support yes OpenGL video yes OpenGL vsync yes DirectFB no 
Fribidi formatting yes MHEG support yes

# Misc Features multi threaded libavcodec yes Frontend yes Backend yes

# Bindings bindings_perl yes bindings_python yes

Creating libs/libmythdb/mythconfig.h and libs/libmythdb/mythconfig.mak

libs/libavutil/avconfig.h is unchanged

This is the same (well and correct) way mythtv tries to initialize the 
lzo library. I will try get more info.
Changed 82 seconds ago by Joern Koerner <joern.koerner@…> ¶

It seems to be the CXXFLAGS "-DPIC -fPIC -fomit-frame-pointer" that 
causes this problem.

When I (manually) compile libmythtv and remove the flags for minilzo.cpp 
it works.

This are the flags which works fine: DEFINES="-DMMX -Di386 -D_GNU_SOURCE 
-D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DLZO_DEBUG" CXXFLAGS="-pipe 
-O2 -march=i686 -g -Wall -Wno-switch -Wpointer-arith -Wredundant-decls 
-Wno-non-virtual-dtor -funit-at-a-time -DSTDC_CONSTANT_MACROS 
-I/usr/include/freetype2 -D_REENTRANT "


For further information about this issue, see this ticket:
http://svn.mythtv.org/trac/ticket/8523



More information about the mythtv-users mailing list