[h323plus] openmcu and h323plus - getting video operational

lkcl luke luke.leighton at gmail.com
Tue Aug 14 09:13:31 EDT 2012


hi,

i'm in the process of getting openmcu up and running.  the usual
issues which have been discussed many many times - audio working but
video is not - are being experienced.  i've managed to get to the
point where, after downloading the source code for ffmpeg, ptlib,
h323plus, openmcu and various other plugins that i've found on
openmcu.ru, and after making various modifications i can get a stable
build... *without* video.  the moment i add in the plugins which
handle video, a connection from ekiga hangs openmcu indefinitely, to
the extent where even the web interface on port 1420 doesn't work.

so, things that *might* be stopping this from working: i haven't been
able to build any of the h323plus plugins, except just now, and i had
to modify the "configure" script as well as the source code, because
the detection of h263p_encoder has now been modified: it's called
ff_h263p_encoder, as is h264_encoder, decoder and mpeg_decoder - they
all now have the prefix "ff_" as you can see from these patches (which
i found via very very obscure google searches)

   http://ftp.netbsd.org/pub/pkgsrc/current/pkgsrc/devel/opal/patches/

but... this still isn't enough, because the actual detection in
configure.ac is utterly broken.  so, instead what i did - temporarily
- was to hack the configure script to define HAVE_H263P=yes,
HAVE_H264_DETECTION=yes, HAVE_H263=yes on a permanent basis.

that then allowed me to actually have the plugins configured, *but*
they're not actually compiled!  so i had to "cd plugins" and run
"make", that then discovered that there's an error in
include/openh323buildopts.h - i had to edit this file to hard-code the
location of ptlib's revision.h file (#include
"/root/ptlib-2.10.4~dfsg/revision.h"), and hooray, the make worked.

i say worked, but it still didn't compile things: the detection for
LIBAVCODEC changes is wrong - features that said to be in version 54
are actually present in version 52, so i had to make changes like
this:

#if LIBAVCODEC_VERSION_MAJOR < 52
    _context->codec_type          = CODEC_TYPE_VIDEO;
#else
    _context->codec_type          = AVMEDIA_TYPE_VIDEO;
#endif
    _context->codec_id            = CODEC_ID_H264;

then there was also a #include that was commented out in rfc2190.cxx
#include <malloc.h> which had to go back in, because the "free"
function is undefined otherwise.

so fiiinally, that allowed h261-vic_video_pwplugin.so and a whole
bunch of other codecs to be built (hooray!)

and, so, having compiled all these plugins, i now install them
aaaaaand.... openmcu hangs when h261-vic_video_pwplugin.so is
installed.  all other plugins are installed (h264 etc.) but making a
call with ekiga using these plugins, they're not activated.

so... after struggling to get even the plugins compiled (several hours
of investigation), and struggling to get the source code compiled (2
days), things are no further along.

does anyone have a successful recipe and build environment and/or has
anyone actually ever got openmcu to ever work with video, or does
anyone have any advice on how to go about investigating and/or fixing
the issue of hanging with h261-vic-video-pwplugin?

many thanks,

l.



More information about the h323plus mailing list