Le 24/03/14 13:49, David Woodfall a
écrit :
On
(24/03/14 12:40), Dave Woodfall <dave dawoodfall net> put
forth the proposition:
On (24/03/14 12:36), Dave Woodfall
<dave dawoodfall net> put forth the proposition:
On (24/03/14 11:50), Damien Sandras
<dsandras seconix com> put forth the proposition:
Le 24/03/14 10:11, David Woodfall a
écrit :
On (24/03/14 09:37), Eugen Dedu
<Eugen Dedu pu-pm univ-fcomte fr> put forth the
proposition:
On 24/03/14 09:33, Damien Sandras
wrote:
Le 23/03/14 19:13, David
Woodfall a écrit :
On (23/03/14 17:52), Damien
Sandras <dsandras seconix com> put forth the
proposition:
Le 23/03/14 14:37, David
Woodfall a écrit :
What Asterisk are you
running? Is it a default distro like
FreePBX? There
are some configs to check, but they are mush
easier using the freePBX GUI.
But apart from my asterisk server I only get
video on ekiga.net's echo
tester with h261 too.
If it helps any, these are the output of -d 4.
The first is using h261
and the second is h263. I rang the ekiga.net
echo line then hungup
afterwards:
h261: http://www.r0t.co.uk/paste/p/qJ9yve44.html
h263: http://www.r0t.co.uk/paste/p/cbgaee38.html
You should report a bug to your distribution
maintainer. Things are badly
compiled:
2014/03/23 13:31:34.472 0:05.195
Pool:0x7f799496d700 H263+ Successfully
loaded 'libavcodec.so.55'
2014/03/23 13:31:34.472 0:05.195
Pool:0x7f799496d700 H263+ Successfully
loaded 'libavutil.so.52'
2014/03/23 13:31:34.472 0:05.195
Pool:0x7f799496d700 H263+ Error linking
function avcodec_init,
error=/usr/lib64/libavcodec.so.55: undefined
symbol:
avcodec_init
2014/03/23 13:31:34.472 0:05.195
Pool:0x7f799496d700 H.263-RFC2190 Encoder
closed
My guess would be that it links to a different
libavcodec library than the
one whose headers were used to compile things.
I've just recompiled both Opal and Ekiga and get the
same error.
There's no way that it's compiled against a
different version. Is
there a recommended ffmpeg version to use?
Currently, I have version 2.1.4.
Have you seen this?:
http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2012-April/123454.html
I will have to patch Opal by the look of it.
If the compilation succeeded, that means that
avcodec_init was present in your
headers.
If it fails at runtime, that means that the library
you are linking to does not
contain that method.
=> your headers and libraries are different,
believe me
Perhaps you have ffmpeg/libav installed from your
distribution, and you also installed it manually?
During compilation, one of them is used, and during
execution the other gets used.
Slackware doesn't have ffmpeg in it's stock repo. But like
I said I
rebuilt both Opal and Ekiga from what I had installed, and
there is
only one version installed.
Impossible !
What does :
grep avcodec_init /usr/ -r
return ?
Ok
grep -r avcodec_init /usr
Binary file /usr/bin/avidemux2_gtk matches
Binary file /usr/bin/audacity matches
Binary file /usr/bin/avidemux2_qt4 matches
Binary file /usr/bin/avidemux2_cli matches
Binary file /usr/lib64/libADM5avcodec.so.53 matches
Binary file
/usr/lib64/opal-3.10.10/codecs/video/mpeg4_ffmpeg_ptplugin.so
matches
Binary file
/usr/lib64/opal-3.10.10/codecs/video/h264_x264_ptplugin.so
matches
Binary file
/usr/lib64/opal-3.10.10/codecs/video/h263_ffmpeg_ptplugin.so
matches
Binary file /usr/lib64/xine/plugins/1.30/xineplug_decode_ff.so
matches
Binary file /usr/lib64/libavcodec.a matches
Binary file
/usr/lib64/ADM_plugins/videoEncoder/libADM_vidEnc_avcodec.so
matches
So the static /usr/lib64/libavcodec.a has the old _init()
function, but:
ugh that was from libav. Thought I'd removed it.
Ok so after removing libav and rebuilding yet again:
ekiga -d 4 2>&1 | grep Error
2014/03/24 12:48:13.627 0:04.360 Pool:0x7fa488e42700
H263+ Error linking function avcodec_init,
error=/usr/lib64/libavcodec.so.55: undefined symbol: avcodec_init
2014/03/24 12:48:13.629 0:04.362 Pool:0x7fa488e42700
Opal Error creating transcoder instance from H.263 to YUV420P
2014/03/24 12:48:13.759 0:04.492 Pool:0x7fa488e42700
H263+ Error linking function avcodec_init,
error=/usr/lib64/libavcodec.so.55: undefined symbol: avcodec_init
2014/03/24 12:48:13.760 0:04.493 Pool:0x7fa488e42700
Opal Error creating transcoder instance from YUV420P to H.263
That means that when compiling OPAL the avcodec_init method was
present in the ffmpeg headers, and when running the executable, it
is not present anymore.
I see Opal picks the plugins in
/usr/lib64/opal-3.10.10/codecs/video/
Isn't that the place of an older Opal plugin that was compiled once
with an older ffmpeg ?
Anyway, I can not really help more than this. When you link to a
library at runtime and it compiains that it does not find a symbol,
it means that the compilation was done with headers from a different
(and incompatible) version of the library.
|