ffmpeg bringing me down

Place to discuss Fedora and/or Red Hat
Post Reply
worker201
guru
guru
Posts: 668
Joined: Sun Jun 13, 2004 6:38 pm
Location: Hawaii

ffmpeg bringing me down

Post by worker201 » Thu May 19, 2005 6:11 pm

I've been trying to build ffmpeg from source on my FC3 box. It fails, with the following error message. The users of the ffmpeg mailing list are ignoring me. So I installed the ffmpeg and ffmpeg-devel packages with synaptic. Then, I attempted to build avifile from source. It requires the ffmpeg libraries, and it ran into the same troublesome junk as building ffmpeg did. If anybody can tell me anything about how to get this darn thing to work properly, I would be very pleased. ffmpeg has to work in order to get transcode to work. And transcode has to work before dvds will be authored.

ffmpeg details
attempted to build with release version, and cvs snapshots from 4-27, 5-16 and 5-18

Cflags:
-O2 -march=pentium4 -mtune=pentium4 -fomit-frame-pointer -mmmx -msse -mfpmath=sse

configure:
--enable-mp3lame --enable-libogg --enable-vorbis --enable-faad --enable-faac --enable-xvid --enable-a52 --enable-a52bin --enable-pp --enable-shared-pp --enable-shared --enable-gpl --disable-opts --disable-strip --enable-theora --enable-codec=mp2

trouble:
make[1]: Leaving directory `/usr/local/FFMpeg-20050516/libavformat'
gcc -g -Wall -Wno-switch -O2 -march=pentium4 -mtune=pentium4 -fomit-frame-pointer -mmmx -msse -mfpmath=sse -I.
-I'/usr/local/FFMpeg-20050516' -I'/usr/local/FFMpeg-20050516'/libavcodec -I'/usr/local/FFMpeg-20050516'/libavformat -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_GNU_SOURCE -c -o ffmpeg.o ffmpeg.c
gcc -g -Wall -Wno-switch -O2 -march=pentium4 -mtune=pentium4 -fomit-frame-pointer -mmmx -msse -mfpmath=sse -I. -I'/usr/local/FFMpeg-20050516' -I'/usr/local/FFMpeg-20050516'/libavcodec -I'/usr/local/FFMpeg-20050516'/libavformat -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_GNU_SOURCE -c -o cmdutils.o cmdutils.c
gcc -Wl,--warn-common -rdynamic -g -o ffmpeg_g ffmpeg.o cmdutils.o -L./
libavformat -lavformat -L./libavcodec -lavcodec -lm -lz -ldl -lvorbisenc -lvorbis -ltheora -logg -lfaad -lfaac -lxvidcore
./libavcodec/libavcodec.so: undefined reference to `please_use_av_log'
./libavcodec/libavcodec.so: undefined reference to `a52_syncinfo'
collect2: ld returned 1 exit status
make: *** [ffmpeg_g] Error 1

Please, help me!!!!!!! This is ruining my month.

User avatar
Void Main
Site Admin
Site Admin
Posts: 5716
Joined: Wed Jan 08, 2003 5:24 am
Location: Tuxville, USA
Contact:

Post by Void Main » Thu May 19, 2005 6:15 pm

You couldn't rebuild using the SRPM as I suggested in your previous thread? Can you give me an example of where transcode fails so I can duplicate the problem and build you an RPM that works (assuming it's just compile option differences)?

Regarding your specific error I would assume you don't have a52dec-devel installed (apt-get install a52dec-devel).

worker201
guru
guru
Posts: 668
Joined: Sun Jun 13, 2004 6:38 pm
Location: Hawaii

Post by worker201 » Thu May 19, 2005 6:25 pm

Here is the output I have been able to get from the version of transcode available from synaptic. The mpa codec referenced here, as far as all internet research can explain, is part of the mp2 codec. The command 'ffmpeg -formats' claims that this codec is enabled, however, transcode cannot tell. I wanted to give the beta version of transcode exact links to the correct libraries during configure. So I guess what I need is to have the exact libraries built correctly somewhere. And apparently those are libavformat.so and libavcodec.so.


transcode v0.6.14 (C) 2001-2003 Thomas Oestreich, 2003-2004 T. Bitterberg
[transcode] (probe) suggested AV correction -D 0 (0 ms) | AV 0 ms | 0 ms
[transcode] auto-probing source rogue2.avi (ok)
[transcode] V: import format | DivX;-) RIFF data, AVI (V=ffmpeg|A=mp3)
[transcode] V: import frame | 480x352 1.36:1
XXX: zoom=yes pre_clip=yes
[transcode] V: pre clip frame | 480x264 (44,0,44,0)
[transcode] V: zoom | 720x480 1.12:1 (Lanczos3)
[transcode] V: bits/pixel | 0.434
[transcode] V: decoding fps,frc | 29.970,4
[transcode] V: Y'CbCr | YV12/I420
[transcode] A: import format | 0x55 MPEG layer-3 [48000,16,2] 224 kbps
[transcode] A: export format | 0x55 MPEG layer-3 [48000,16,2] 128 kbps
[transcode] V: encoding fps,frc | 29.970,4
[transcode] A: bytes per frame | 6408 (6406.400000)
[transcode] A: adjustment | -1600@1000
[transcode] A: rescale stream | 2.000
[transcode] V: IA32 accel mode | sse2 (sse2 sse mmxext mmx asm C)
tc_memcpy: using mmxext for memcpy
[transcode] V: video buffer | 10 @ 720x480
[import_mp3.so] v0.1.4 (2003-08-04) (audio) MPEG
[import_ffmpeg.so] v0.1.11 (2004-02-29) (video) FFmpeg0.4.9-pre1b4730: MS MPEG4v1-3/MPEG4/MJPEG
[filter_modfps.so] v0.10 (2003-08-18) plugin to modify framerate
[filter_modfps.so] converting from 29.9700fps to 29.9700fps
[filter_modfps.so] No framerate conversion requested, exiting
[transcode] warning : filter plugin 'modfps' returned error - plugin skipped
[export_ffmpeg.so] v0.3.13 (2004-08-03) (video) FFmpeg0.4.9-pre1b4730 |
(audio) MPEG/AC3/PCM
[import_mp3.so] MP3->PCM
[import_mp3.so] tcextract -a 0 -i "rogue2.avi" -x mp3 -d 0 | tcdecode -x mp3 -d 0 -z 28000
tc_memcpy: using mmxext for memcpy
[export_ffmpeg.so] Using FFMPEG codec 'mpeg2video' (FourCC 'mpg2', MPEG2
compliant video).
[export_ffmpeg.so]: INFO: Selected dvd profile, ntsc video type for video
[export_ffmpeg.so]: INFO: Set interlacing to bottom-first
[export_ffmpeg.so]: INFO: Set frame rate to 29.97
[export_ffmpeg.so]: INFO: Set GOP size to 18
[export_ffmpeg.so] Neither './ffmpeg.cfg' nor '~/.transcode/ffmpeg.cfg'
[export_ffmpeg.so] found. Default settings will be used instead.
[export_ffmpeg.so]: INFO: Starting 1 thread(s)
[export_ffmpeg.so]: INFO: Display aspect ratio calculated as 1.777778
[export_ffmpeg.so]: INFO: Sample aspect ratio calculated as 1.185185
[export_ffmpeg.so]: INFO: Selected dvd profile for audio
[export_ffmpeg.so]: INFO: Resampling filter inactive
[export_ffmpeg.so]: INFO: Set number of audio channels to 2
[export_ffmpeg.so]: INFO: Set number of audio bits to 16
[export_ffmpeg.so]: INFO: No audio resampling necessary, using 48000 Hz
[export_ffmpeg.so]: INFO: Set audio bit rate to 224 kbps
[export_ffmpeg.so]: INFO: Set audio codec to ac3
[encode_ffmpeg] mpa codec not found !
[transcode] warning : (encoder.c) audio export module error: init failed
[transcode] critical: failed to init encoder

User avatar
Void Main
Site Admin
Site Admin
Posts: 5716
Joined: Wed Jan 08, 2003 5:24 am
Location: Tuxville, USA
Contact:

Post by Void Main » Thu May 19, 2005 6:28 pm

What command line did you use to produce that output?

worker201
guru
guru
Posts: 668
Joined: Sun Jun 13, 2004 6:38 pm
Location: Hawaii

Post by worker201 » Thu May 19, 2005 6:34 pm

Sorry, got clipped in my copy/paste:

transcode -i rogue2.avi -y ffmpeg -w4500 --export_prof dvd-ntsc --export_asr 3
-o rogue2 -D0 -s2 -m rogue2.ac3 -J modfps --export_fps 29.97

User avatar
Void Main
Site Admin
Site Admin
Posts: 5716
Joined: Wed Jan 08, 2003 5:24 am
Location: Tuxville, USA
Contact:

Post by Void Main » Thu May 19, 2005 6:49 pm

Ok, I have some AVI files and I can duplicate the problem. I will do some research and see what I can come up with.

User avatar
Void Main
Site Admin
Site Admin
Posts: 5716
Joined: Wed Jan 08, 2003 5:24 am
Location: Tuxville, USA
Contact:

Post by Void Main » Thu May 19, 2005 7:02 pm

I haven't got an answer yet for transcode but I am about to start looking into it. Are you sure you can't accomplish what you need using tools other than transcode? For instance, I use lxdvdrip and I recall not being able to use transcode but it gives you a couple of other options like "streamdvd" and "mplayer". I have mine set to use "streamdvd". Maybe if I get transcode fixed I might be able to use it to. I guess my point is, there might be other ways to get what you want using other tools.

worker201
guru
guru
Posts: 668
Joined: Sun Jun 13, 2004 6:38 pm
Location: Hawaii

Post by worker201 » Thu May 19, 2005 7:13 pm

I would use some other tools, but I am not familiar with any of them. If I had the original moviefile available, I would just attempt to re-rip it with the encoding I wanted. Guess there's plenty more research for me to do.

worker201
guru
guru
Posts: 668
Joined: Sun Jun 13, 2004 6:38 pm
Location: Hawaii

Post by worker201 » Fri May 20, 2005 6:17 pm

I downloaded a program called avidemux which seems to work okay. It accesses ffmpeg too, but it doesn't seem to have a problem finding the right codecs. Hopefully, this will work. It's not really a command line program, and it's not really a gui program either. When you invoke it from the xterm command line, it opens a gtk window, which has the usual features. But it also produces output to stderr, the terminal window that spawned it. Pretty cool, it's kinda like setting a gui-based program to verbose mode or something.

User avatar
Void Main
Site Admin
Site Admin
Posts: 5716
Joined: Wed Jan 08, 2003 5:24 am
Location: Tuxville, USA
Contact:

Post by Void Main » Fri May 20, 2005 10:02 pm

Cool, I spent quite a bit of time last night trying to figure it out and I just haven't had time since. I will be busy all weekend doing other things as well so I hope you can get that working.

worker201
guru
guru
Posts: 668
Joined: Sun Jun 13, 2004 6:38 pm
Location: Hawaii

Post by worker201 » Thu Jun 02, 2005 10:31 am

I finally managed to get transcode 1.0.0beta3 working, using the freshrpms ffmpeg package. Here's the configure line that worked:

Code: Select all

./configure --enable-mmx --enable-sse --enable-sse2 --enable-freetype2 --enable-lame --enable-ogg --enable-vorbis --enable-theora --enable-libquicktime --enable-a52 --enable-libmpeg3 --enable-libxml2 --enable-mjpegtools --enable-imagemagick --with-libavcodec-includes=/usr/include/ffmpeg
And of course, the following CFLAGS:

Code: Select all

export CFLAGS="-O2 -fomit-frame-pointer -mmmx -msse -mfpmath=sse"
Of course this assumes you have a Pentium 4 and all the enabled programs installed correctly. The key is the --with-libavcodec-includes portion, since transcode assumes the includes are in /usr/bin/ffmpeg, and that's not where FC3 rpms drop them.

Still not sure why ffmpeg won't build, but that's now a spare-time problem.

Post Reply