Hi
I'm getting a bunch of errors trying to compile xine-lib-1.2 for vdr-xine.
First up, I had to disable musepack support - because I could find no source containing musepack.h. There is no libmusepack for Fedora, it's contained in libmpcdec but libmpcdec-devel does not have musepack.h. Only thing I could do to get past this is disable via:
./autogen.sh --with-external-ffmpeg --disable-dxr3 --enable-debug --disable-optimizations --with-mpc=no
Now I'm getting the following error ff_video_decoder.c:1271: error: 'AVCodecContext' has no member named 'ticks_per_frame'
ff_video_decoder.c:127: warning: 'AVPaletteControl' is deprecated ff_video_decoder.c: In function 'ff_handle_special_buffer': ff_video_decoder.c:954: warning: 'AVPaletteControl' is deprecated ff_video_decoder.c:958: warning: 'AVPaletteControl' is deprecated ff_video_decoder.c: In function 'ff_handle_buffer': ff_video_decoder.c:1271: error: 'AVCodecContext' has no member named 'ticks_per_frame' ff_video_decoder.c:1354: warning: passing argument 1 of 'pp_postprocess' from incompatible pointer type make[4]: *** [xineplug_decode_ff_la-ff_video_decoder.lo] Error 1 make[4]: Leaving directory `/usr/src/development/xine-lib-1.2/src/combined/ffmpeg' make[3]: *** [all] Error 2 make[3]: Leaving directory `/usr/src/development/xine-lib-1.2/src/combined/ffmpeg' make[2]: *** [all-recursive] Error 1 make[2]: Leaving directory `/usr/src/development/xine-lib-1.2/src/combined' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/usr/src/development/xine-lib-1.2/src' make: *** [all-recursive] Error 1
I'm using ffmpeg svn revision 29766
Any ideas?
Simon Baxter wrote:
I'm using ffmpeg svn revision 29766
Any ideas?
You must have picked up that revision number from a wrong place, since the current revision is 20199. libavcodec/avcodec.h is the file where you should look for the missing member definition. Also make sure that the headers for that revision are the only ones installed. Most likely you are not using correct headers.
btw... --with-external-ffmpeg is deprecated in xine-lib 1.2 since it uses external ffmpeg by default.
-Petri
I pulled ffmpeg from: svn checkout svn://svn.mplayerhq.hu/ffmpeg/trunk ffmpeg which told me revision 29766 is this wrong?
/usr/src/development/ffmpeg/libavcodec/avcodec.h _does define_ int ticks_per_frame;
Perhaps I am using the wrong headers - how do I link to these?
btw... --with-external-ffmpeg is deprecated in xine-lib 1.2 since it uses external ffmpeg by default.
Thanks
Simon Baxter wrote:
You can check the revision with "svn info". I guess that 29766 is actually the revision of libswscale.
You should install the headers (well, doing "make install" should do that). Look for avcodec.h under /usr/local/include and check the contents of that file. Also make sure that there is only one such file. To do that, you could clear all ffmpeg headers and re-install the current ones.
-Petri
Yes - my mistake. Am running revision 20195
Found 2 copies of the headers: /usr/local/include/libavcodec/avcodec.h /usr/include/ffmpeg/libavcodec/avcodec.h
Have written over the "/usr/include/ffmpeg/libavcodec/avcodec.h" with the new headers and it now complies.
NEXT PROBLEM(s): 1) I gather I still need a xine front end for xine-0.9.1? I've compiled and installed "xine-ui-cvs-20090412200000" Correct?
2) I've compiled xine-0.9.1 plugin and started vdr. But when I start xine with: xine --verbose=2 -V vdpau -L --post vdr_video --post vdr_audio --post upmix_mono vdr:/tmp/vdr-xine/stream#demux:mpeg_pes I get: xine: error while loading shared libraries: libxine.so.2: cannot open shared object file: No such file or directory But: # locate libxine.so.2 /usr/local/lib/libxine.so.2 /usr/local/lib/libxine.so.2.0.0
What's wrong now? Is the wrong front end to use?
I did this because the YUM installed ffmpeg had loads of dependencies and wouldn't easily YUM REMOVE
I've ended up using the latest cvs xine-ui which works fine
Idiot error - updated my /etc/ld.so.conf/xine.conf to add the location for these libraries, then did a ldconfig
AND....it works!!!
Not too happy about the CPU usage though - it's up at 55% on replaying MPEG2 recordings, where xvmc/xxmc was at ~30ish.....
Ahh well!