Internal changes in ogle

Bj|rn Englund <[email protected]> Thu, 29 Jul 2004 15:37:52 +0200
Newsgroups gmane.comp.video.ogle.devel
Message-ID <[email protected]>
There is a new tar.gz at
http://www.dtek.chalmers.se/groups/dvd/dist/ogle-0.9.2-cvs.tar.gz

Changes made are:
1. Sockets are used instead of SYSV message queues.

2. Posix shared memory is used instead of SYSV shm where possible
   If posix shm isn't available sysv shm will be used.
   You can disable use of posix shm by setting the environment 
   variable OGLE_USE_POSIX_SHM to 0.
   We still need one sysv shared memory segment for XShm.

3. Some changes were made to make ogle compile without patches on MacOS X


Please test and report any compile/runtime/performance issues.

If you notice any performance difference when running with
OGLE_USE_POSIX_SHM = 0 or 1, report which one is better so we can
set a good default on that platform.
Also report if posix shm doesn't work at all on your platform.

Platforms that have been tested a bit already are Solaris, Linux, FreeBSD
FreeBSD is different from Solaris and Linux in that the path passed to
shm_open needs to be a path in the normal filesystem.
In Solaris and Linux it is a path beginning with '/' and not containing
any more '/'s.
I also noticed that not all linux distros have tmpfs mounted on /dev/shm
by default, this prevents the use of posix shm and ogle will
fall back to sysv shm in that case. 

Does posix shm work on other BSDs and what should the pathname be like?


The libdvdcontrol interface has changed slightly,
DVDOpenNav now takes a char* msgqid instead of int.
This might change again.

libdvdcontrol will get a function to returns the socket fd, so you
can poll/select on it.

If you want to check for performance differences between sysv msgq and sockets
you have to change the first #if 1 in ogle/msgevents.h to #if 0


Comments?

/Bj|rn