Re: [Ekiga-list] No video with anything other than h261



On (25/03/14 09:39), Thierry Simonnet <thierry simonnet esiee fr> put forth the proposition:
Le 25/03/2014 08:54, David Woodfall a écrit :
On (24/03/14 15:12), Thierry Simonnet <thierry simonnet esiee fr> put
forth the proposition:
Le 24/03/2014 14:38, David Woodfall a écrit :
On (24/03/14 14:19), Damien Sandras <dsandras seconix com> put forth
the proposition:
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.

All I did, and this is what I did originally, is build/install ffmpeg
2.1 and then Opal/ekiga.

I don't know where plugins should go, but here is a list of all:

http://www.r0t.co.uk/paste/p/pdoGLS92.html

Trust me, there is no other opal or ffmpeg on my system.
Both the ffmpeg and opal slackbuilds are on slackbuilds.org. If they
are wrong please let me know.

By the way, I'm the slackbuild maintainer for ptlib, opal and ekiga
and I do want to sort this out as ekiga is the only sip/voip app that
looks like any thought went into its gui.

_______________________________________________
ekiga-list mailing list
ekiga-list gnome org
https://mail.gnome.org/mailman/listinfo/ekiga-list
I use ffmpeg from git (version # N-61767-gc08e523) with libx264 from git
./configure --enable-shared --enable-libx264 --enable-gpl
--disable-stripping && make && make install
Don't forget disable stripping. I also work with some limitation with
libav. (dyna, slopen, dlsym).
Dyna.cxx from opal dlopens libavcodec.so and check functions using
dlsym.
If libavcodec is stripped, dlsym fails (and of course dyna).
For avcodec_init, last versions of opal didn't use this call anymore and
in opal_10 this call is deprecated -  see
opal/plugins/video/common/ffmpeg/libavcodec/avcodec.h

Thanks Thierry. This had me looking in the right direction. It turns
out to be --enable-shared in ffmpeg that is the problem. I still don't
get video for h.263 but that avcodec_init error is gone.

Here's what I see now:

2014/03/25 07:44:09.828   0:07.099          Pool:0x7f1008084700 Opal
Error creating transcoder instance from H.263 to YUV420P

I'll keep plugging away at this.
_______________________________________________
ekiga-list mailing list
ekiga-list gnome org
https://mail.gnome.org/mailman/listinfo/ekiga-list
For plugins : have a look at opal/plugins/video/
H.261 : internal plugin
H.263/H.263-1998 : ffmpeg
H.264 : system if using libx264
common : tools for ffmpeg use, especially dyna for dynamic loader

usr/lib64/opal-3.10.10/codecs/video/h261_vic_ptplugin.so
usr/lib64/opal-3.10.10/codecs/video/theora_ptplugin.so
usr/lib64/opal-3.10.10/codecs/video/mpeg4_ffmpeg_ptplugin.so
usr/lib64/opal-3.10.10/codecs/video/h264_x264_ptplugin.so
usr/lib64/opal-3.10.10/codecs/video/h263_ffmpeg_ptplugin.so
usr/lib64/opal-3.10.10/codecs/video/h264_video_pwplugin_helper


Check if configure generates Makefile and make builds all plugins.
I had to add  -fpermissive flag in Makefile.in, some CODEC_FLAG_Hxx in
h263xx.cxx, and change CodecID by AVCodecID

Yeah, I have a patch for that AVCodecID problem.

Here's a full message though. It seems to be looking in the wrong place
for them:

2014/03/25 08:59:40.120   0:04.095          Pool:0x7fd0900d8700         dlopen error ./: cannot read file 
data: Is a directory
2014/03/25 08:59:40.120   0:04.095          Pool:0x7fd0900d8700         dlopen error /usr/local/lib/: cannot 
read file data: Is a directory
2014/03/25 08:59:40.121   0:04.096          Pool:0x7fd0900d8700         dlopen error libavcodec: cannot open 
shared object file: No such file or directory
2014/03/25 08:59:40.121   0:04.096          Pool:0x7fd0900d8700         dlopen error ./libavcodec: cannot 
open shared object file: No such file or directory
2014/03/25 08:59:40.122   0:04.097          Pool:0x7fd0900d8700         dlopen error 
/usr/local/lib/libavcodec: cannot open shared object file: No such file or directory
2014/03/25 08:59:40.122   0:04.097          Pool:0x7fd0900d8700         dlopen error avcodec-55: cannot open 
shared object file: No such file or directory
2014/03/25 08:59:40.122   0:04.097          Pool:0x7fd0900d8700         dlopen error ./avcodec-55: cannot 
open shared object file: No such file or directory
2014/03/25 08:59:40.123   0:04.098          Pool:0x7fd0900d8700         dlopen error 
/usr/local/lib/avcodec-55: cannot open shared object file: No such file or directory
2014/03/25 08:59:40.125   0:04.101          Pool:0x7fd0900d8700 Opal    Error creating transcoder instance 
from H.264-0 to YUV420P
2014/03/25 08:59:40.257   0:04.232          Pool:0x7fd0900d8700 PVidInDev       G_STD failed for fd=59 with 
error: Inappropriate ioctl for device
2014/03/25 08:59:40.262   0:04.237          Pool:0x7fd0900d8700 PVidInDev       G_STD failed for fd=59 with 
error: Inappropriate ioctl for device
2014/03/25 08:59:40.286   0:04.261          Pool:0x7fd0900d8700         dlopen error ./: cannot read file 
data: Is a directory
2014/03/25 08:59:40.286   0:04.261          Pool:0x7fd0900d8700         dlopen error /usr/local/lib/: cannot 
read file data: Is a directory
2014/03/25 08:59:40.287   0:04.262          Pool:0x7fd0900d8700         dlopen error libavcodec: cannot open 
shared object file: No such file or directory
2014/03/25 08:59:40.287   0:04.262          Pool:0x7fd0900d8700         dlopen error ./libavcodec: cannot 
open shared object file: No such file or directory
2014/03/25 08:59:40.287   0:04.262          Pool:0x7fd0900d8700         dlopen error 
/usr/local/lib/libavcodec: cannot open shared object file: No such file or directory
2014/03/25 08:59:40.288   0:04.263          Pool:0x7fd0900d8700         dlopen error avcodec-55: cannot open 
shared object file: No such file or directory
2014/03/25 08:59:40.288   0:04.263          Pool:0x7fd0900d8700         dlopen error ./avcodec-55: cannot 
open shared object file: No such file or directory
2014/03/25 08:59:40.288   0:04.263          Pool:0x7fd0900d8700         dlopen error 
/usr/local/lib/avcodec-55: cannot open shared object file: No such file or directory
2014/03/25 08:59:40.289   0:04.264          Pool:0x7fd0900d8700 x264-pipe       Error when trying to remove 
UL named pipe - No such file or directory
2014/03/25 08:59:40.289   0:04.264          Pool:0x7fd0900d8700 x264-pipe       Error when trying to remove 
DL named pipe - No such file or directory
2014/03/25 08:59:40.291   0:04.266          Pool:0x7fd0900d8700 Opal    Error creating transcoder instance 
from YUV420P to H.264-0

Looks like I need to build this in a chroot, since my system is multilib.
That may be messing with it.




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]