Page 1 of 1

compile vlc with amr support in ubuntu hardy

Posted: 27 May 2008 09:35
by marcbalcells
Hello, I've been trying to get amr support in vlc with no success, from what I've read I have to first compile ffmpeg with amr support and then vlc. I've done both but still I can't get vlc to transcode a movie to amr audio.

I've tried the following.
Get vlc and ffmpeg source from ubuntu repositories. Change ffmpeg build options to "risky" so it includes amr, build package and install. Then build vlc and install. This doesn't work when trying to transcode a movie to h263 and amr, it yields "cannot find encoder for samr".

When building vlc package, do I have to change configure to indicate where ffmpeg source is? Is there anything I'm missing?

Thank's.

Re: compile vlc with amr support in ubuntu hardy

Posted: 27 May 2008 19:18
by Jean-Baptiste Kempf
Did you tell VLC which ffmpeg install to use ?

Re: compile vlc with amr support in ubuntu hardy

Posted: 29 May 2008 09:16
by marcbalcells
No, how can I do that?

Re: compile vlc with amr support in ubuntu hardy

Posted: 29 May 2008 19:22
by Jean-Baptiste Kempf
--with-ffmpeg-tree=

Re: compile vlc with amr support in ubuntu hardy

Posted: 29 May 2008 22:49
by marcbalcells
thank's for your help j-b
I still can't get it to compile, I'm trying to do it with deb-src packages, here's what I did:

Code: Select all

apt-get build-dep ffmpeg apt-get build-dep vlc apt-get source ffmpeg apt-get source vlc
then I go to /usr/local/src/vlc-0.8.6.release.e+x264svn20071224+faad2.6.1
I modified debian/rules including the following line:

Code: Select all

vlc_confflags += --with-ffmpeg-tree=/usr/local/src/ffmpeg-0.cvs20070307 --with-ffmpeg-amr_nb
and then

Code: Select all

dpkg-buildpackage
with the following result:

Code: Select all

make[3]: Entering directory `/usr/local/src/vlc-0.8.6.release.e+x264svn20071224+faad2.6.1' i486-linux-gnu-gcc -DHAVE_CONFIG_H -I. -DSYS_LINUX -I./include `top_builddir="." ./vlc-config --cflags vlc` -Wsign-compare -Wall -g -O2 -pipe -MT vlc-vlc.o -MD -MP -MF .deps/vlc-vlc.Tpo -c -o vlc-vlc.o `test -f 'src/vlc.c' || echo './'`src/vlc.c mv -f .deps/vlc-vlc.Tpo .deps/vlc-vlc.Po /bin/bash ./libtool --tag=CC --mode=link i486-linux-gnu-gcc -Wsign-compare -Wall -g -O2 -pipe -Wl,-Bsymbolic-functions -o vlc vlc-vlc.o src/libvlc.la -L/usr/lib -lhal -ldbus-1 -lrt -lpthread -ldl -lm -Wl,-Bsymbolic-functions -version-info 0:0:0 mkdir .libs libtool: link: warning: `-version-info' is ignored for programs i486-linux-gnu-gcc -Wsign-compare -Wall -g -O2 -pipe -Wl,-Bsymbolic-functions -o .libs/vlc vlc-vlc.o -Wl,-Bsymbolic-functions src/.libs/libvlc.so -L/usr/lib -lhal -ldbus-1 -lrt -lpthread -ldl -lm src/.libs/libvlc.so: undefined reference to `dc1394_dma_done_with_buffer' src/.libs/libvlc.so: undefined reference to `lame_set_num_channels' src/.libs/libvlc.so: undefined reference to `dc1394_get_camera_nodes' src/.libs/libvlc.so: undefined reference to `faacEncGetCurrentConfiguration' src/.libs/libvlc.so: undefined reference to `dc1394_dma_single_capture' src/.libs/libvlc.so: undefined reference to `gsm_create' src/.libs/libvlc.so: undefined reference to `lame_encode_buffer' src/.libs/libvlc.so: undefined reference to `faacEncEncode' src/.libs/libvlc.so: undefined reference to `lame_close' src/.libs/libvlc.so: undefined reference to `gsm_decode' src/.libs/libvlc.so: undefined reference to `dc1394_dma_unlisten' src/.libs/libvlc.so: undefined reference to `dc1394_stop_iso_transmission' src/.libs/libvlc.so: undefined reference to `lame_set_VBR' src/.libs/libvlc.so: undefined reference to `faacEncGetDecoderSpecificInfo' src/.libs/libvlc.so: undefined reference to `faacEncClose' src/.libs/libvlc.so: undefined reference to `lame_set_out_samplerate' src/.libs/libvlc.so: undefined reference to `lame_set_brate' src/.libs/libvlc.so: undefined reference to `lame_get_framesize' src/.libs/libvlc.so: undefined reference to `dc1394_create_handle' src/.libs/libvlc.so: undefined reference to `lame_encode_flush' src/.libs/libvlc.so: undefined reference to `dc1394_dma_setup_capture' src/.libs/libvlc.so: undefined reference to `lame_set_quality' src/.libs/libvlc.so: undefined reference to `gsm_encode' src/.libs/libvlc.so: undefined reference to `lame_init_params' src/.libs/libvlc.so: undefined reference to `lame_set_bWriteVbrTag' src/.libs/libvlc.so: undefined reference to `faacEncSetConfiguration' src/.libs/libvlc.so: undefined reference to `gsm_destroy' src/.libs/libvlc.so: undefined reference to `faacEncOpen' src/.libs/libvlc.so: undefined reference to `dc1394_destroy_handle' src/.libs/libvlc.so: undefined reference to `lame_encode_buffer_interleaved' src/.libs/libvlc.so: undefined reference to `lame_set_mode' src/.libs/libvlc.so: undefined reference to `lame_set_in_samplerate' src/.libs/libvlc.so: undefined reference to `lame_set_VBR_q' src/.libs/libvlc.so: undefined reference to `gsm_option' src/.libs/libvlc.so: undefined reference to `dc1394_dma_release_camera' src/.libs/libvlc.so: undefined reference to `lame_init' src/.libs/libvlc.so: undefined reference to `dc1394_start_iso_transmission' collect2: ld returned 1 exit status make[3]: *** [vlc] Error 1 make[3]: Leaving directory `/usr/local/src/vlc-0.8.6.release.e+x264svn20071224+faad2.6.1' make[2]: *** [all-recursive] Error 1 make[2]: Leaving directory `/usr/local/src/vlc-0.8.6.release.e+x264svn20071224+faad2.6.1' make[1]: *** [all] Error 2 make[1]: Leaving directory `/usr/local/src/vlc-0.8.6.release.e+x264svn20071224+faad2.6.1' make: *** [build-stamp] Error 2 dpkg-buildpackage: failure: debian/rules build gave error exit status 2
I have no idea where is the error, is it on dc1394_start_iso_transmission or lame_init ??? Am I missing any extra library?

Thank's again.