[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