There has been major upheaval in FFMPEG between version 52 to 54 and most of the api calls have changed (including detection). I thought we had caught most of them but even between different versions of 52 for instance the API changed. Very difficult to capture.
Usually the configure scripts will create the makefile in the plugin directory. So it's only a matter of going to the directory and typing make to build the particular plugin.
I suggest you test with a different client and see if you are experiencing the same issue. H.261 is very stable and is used in production on a wide variety of clients.
Simon
-----Original Message----- From: h323plus-bounces@lists.packetizer.com [mailto:h323plus-bounces@lists.packetizer.com] On Behalf Of lkcl luke Sent: 14 August 2012 23:14 To: h323plus@lists.packetizer.com Subject: [h323plus] openmcu and h323plus - getting video operational
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.