HI Michael,

I havent compiled the ffmpeg 0.47 at my end. There is a precompiled libavcodec.so I found on net. It worked fine for me.
You can download it from http://www.voxgratia.org/bin/libavcodec-0.4.7-linux.bin.tar.gz.
Since you have already compiled H.263 plug-in just rename libavcoded.so in downloaded tar.gz to avcodec and put it into $PWLIBPLUGINDIR and run openmcu.

It should work fine if the architecture of machine on which this .so is compiled matches with your machine's architecture. (I happened in my case). I could see pretty fine video with this ffmpeg.


Thanks,
- Prasad



On Mon, Jan 11, 2010 at 2:14 PM, Michael Bondi <mike@bridgeconference.co.za> wrote:
Hi Jan,

Any idea of when the new ffmpeg 0.5 will be able to be compiled with h323 support?

Are you able to supply me with your patched ffmpeg 0.4.7 so I can continue with my current compilation with gcc 4.3, albeit an inelegant solution?

I'd like to learn how the openmcu works with your fantastic gnugk before the day is over.

Mike


Jan Willamowius wrote:
Yes, the old ffmpeg code doesn't compile with gcc 4.x.

Jan

Michael Bondi wrote:
 
Hi Jan,

It appears that I have ver 4.3 of gcc.

Could that be the reason for the ffmpeg 0.4.7 make failure?

Thanks

Mike


Jan Willamowius wrote:
   
I have a patched version of ffmpeg-0.4.7, that compiles with gcc 4.4.x,
but there is work going on to let the H.323-ffmpeg plugin compile with
current versions of ffmpeg, which is a much better solution.

Regards,
Jan

Michael Bondi wrote:
       
Thanks Prasad,

I try install ffmpeg 0.4.7 from http://www.voxgratia.org/bin/ffmpeg-0.4.7.tar.gz but I get the following:

voyage:~/ffmpeg-0.4.7# make
make -C libavcodec all
make[1]: Entering directory `/root/ffmpeg-0.4.7/libavcodec'
gcc -O3 -Wall -g -DHAVE_AV_CONFIG_H -I.. -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_GNU_SOURCE -c -o common.o common.c
In file included from avcodec.h:14,
                from common.c:27:
common.h:65: error: array type has incomplete element type
common.h:69: error: array type has incomplete element type
make[1]: *** [common.o] Error 1
make[1]: Leaving directory `/root/ffmpeg-0.4.7/libavcodec'
make: *** [lib] Error 2

But I proceed and continue  to configure and make and make install the a/v pugins in the ~/h323plus/plugins directory.

I create a directory ~/codecs and copy both h263-ffmpeg_video_pwplugin.so and libavcodec.so (from the libavcodec-0.4.7-linux.bin.tar.gz file) into there. I rename libavcodec.so to avcodec

I set export P_T_LIBPLUGINDIR=~/codecs           (does this have to be P_W_LIBPLUGINDIR ?????)

I run openmcu and connect with Polycom PVX, and I see the video window!!  But the video has strange lines with pink and blue colours, but it is the video from the webcam!

I assume it may be because I do not have the ffmpeg 0.4.7 installed correctly?

I will have a look at installing ffmpeg 0.4.7 direct from ffmpeg site.

So I am closer....

Thanks again for the help.

Mike


Prasad Mohire wrote:
           
HI Michael,

I guess you have compiled PTLIB and H323plus and OpenMCU correctly. H323plus doesn't need ffmpeg. ffmpeg is needed by h323plus avplugin. You were able to hear audio because h323plus comes with G711 codecs. You will need to build H263 plugin separately.

h263 plugin needs ffmpeg version 0.47. To install it:
 run ./configure --enable-shared, then make and make install in ffmpeg directory.

Once that is done, download the plugins directory from h323plus.com <http://h323plus.com>.
untar the direcory under h323plus directory so that you will have plugins directory under h323plus.
Goto plugins directory.
run ./configure
You should see h263 : yes in output of configure script. This means it will build H.263 plugin. If it is 'no' there is something wrong with prerequisites i.e. ffmpeg. make sure that libavcodec.h file is in include path.

once you see H.263: yes as output, run make and make install in plugins directory.
create a directory to store the plugins. Set environment variable PWLIBPLUGINDIR pointing to that directory. Copy h323plus/plugins/video/h.263/h263-ffmpeg_video_pwplugin.so file to $PWLIBPLUGINDIR. Copy libavcoded.so to $PWLIBPLUGINDIR  and rename it to avcodec.

Now start openmcu, it should load with H.263 capability.

File "C:\\traces.txt" will be created in directory from which you will start openmcu. You can see what all capabilities are added while openmcu is started in that file.


Thanks and Regards,
Prasad.


On Fri, Jan 8, 2010 at 3:32 PM, Michael Bondi <mike@bridgeconference.co.za <mailto:mike@bridgeconference.co.za>> wrote:

   Hi all and Happy 2010!

   This may have been asked before, but I cannot help myself but to
   ask again.

   I have compiled ptlib 2.4.5 and h323plus 1.21 and openmcu 2.2.5 on
   a Debian 5 machine.

   I am able to connect and hear the tones and message for connecting
   but am unable to get video on the screen.

   I have tried compiling h323plus with only the 0.4.7 ffmpeg
   libavcodec.so placed in a directory /root/codec and compiled with
   ./configure --enable-rfc2190avcodec=/root/ffmpeg switch, all
   compiles fine, but still no h.263 video. Is there any more I need
   to do here?

   Also, I am getting confused where to unpack and install the a/v
   plugins from file
   http://www.h323plus.org/source/download/plugins-v1_21_0.tar.gz

   Thanks

   Mike