Re: [Ekiga-list] No video with anything other than h261
- From: David Woodfall <dave dawoodfall net>
- To: ekiga-list gnome org
- Subject: Re: [Ekiga-list] No video with anything other than h261
- Date: Tue, 25 Mar 2014 13:55:08 +0000
On (25/03/14 14:33), Thierry Simonnet <thierry simonnet esiee fr> put forth the proposition:
Le 25/03/2014 12:15, David Woodfall a écrit :
On (25/03/14 11:31), Thierry Simonnet <thierry simonnet esiee fr> put
forth the proposition:
Le 25/03/2014 10:03, David Woodfall a écrit :
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 :
...................
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.
_______________________________________________
ekiga-list mailing list
ekiga-list gnome org
https://mail.gnome.org/mailman/listinfo/ekiga-list
PATHS can be set in configure to set LIBAVCODEC_LIBS and LIBAVUTIL_LIBS
Now the original error is back:
ekiga -d 4 2>&1 | grep -i Error
2014/03/25 11:05:34.692 0:03.945 Pool:0x7f9ba40c0700
H264 Error linking function avcodec_init,
error=/usr/lib64/libavcodec.so.55: undefined symbol: avcodec_init
ffmpeg is not stripped and has both static and shared libs.
Opal configured by:
----
LIBAVCODEC_LIBS="/usr/lib${LIBDIRSUFFIX}/libavcodec.so" \
LIBAVUTIL_LIBS="/usr/lib${LIBDIRSUFFIX}/libavutil.so" \
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
--sysconfdir=/etc \
--localstatedir=/var \
--enable-shared \
--build=$ARCH-slackware-linux
make VERBOSE=1
make install DESTDIR=$PK
----
Quite frankly I'm stumped...
_______________________________________________
ekiga-list mailing list
ekiga-list gnome org
https://mail.gnome.org/mailman/listinfo/ekiga-list
Avcodec_init is defined as static av_cold void in libavcodec/utils.c and
not referenced in libavcodec/avcodec.h. Then it is usable only by local
functions (no output when using nm). It is done like that because
avcodec_init is deprecated and only usable through avcodec_register...
To make it usable, 2 solutions :
1. register it in libavcodec/avcodec.h and remove static in
libavcodec/utils.c
2. use avcodec_register instead
I tested both methods
Thanks, I did try patching some of the code to do a avcoded_register
and some of the avcodec_alloc_context to avcodec_alloc_context3,
but after a few changes it kept segfaulting.
Could you make a patch of what you did so I can test it please?
I downgraded ffmpeg to 0.10.12 now and it works fine for me. Not quite
sure how I'm going to handle on slackbuilds.org though. A patch would
be ideal.
-Dave
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]