====== Avalon ======
===== What is Avalon ? =====
The goal of this project is to provide a concise video annotator using mpeg-7 and in particular the VideoSegment mpeg-7 element.
Avalon is based on these 2 projects:
* gstreamer-java.
* Xuggle-xuggler.
For this two projects, gstreamer-java and Xuggle-xuggler, MacOSX, Linux and Windows versions are available.
Avalon is coded in Java, the development is made only under GNU/Linux but the project could be ported to the MacOSX or the Windows platform.
===== And about VLC ? =====
I begin to write the project using Java and gstreamer-java, but there is also 3 alternative considering VLC:
- a module for VLC
- a C++ application using the libvlc
- JVLC (but for this one, the JVLC project is a bit old and unmaintained). (see the [[http://forum.videolan.org/viewtopic.php?f=32&t=56939&start=0|forum]] about the JVLC status).
- a similar project to JVLC is [[http://code.google.com/p/vlcj/|vlcj]], which is recent... need to be investigated (choosing the video and audio stream in a container is it possible ?). apparenlty it's the continuation of JVLC.
The direct advantage of this approach is VLC: no problem of codecs, and we could use all the power of VLC for the several options to play a video container (choosing the audio track, the video track, subtitles etc.). But all of these features are also available ine the case of gstreamer-java.
Some interesting links:
* about a VLC module:
* [[http://www.barrywardell.net/gsoc]]
* [[http://www.barrywardell.net/gsoc/63-module-vs-libvlc]]
* about LibVLC
* [[http://wiki.videolan.org/LibVLC_SampleCode_Qt]]
===== Existing softwares =====
* [[http://polysema.di.uoa.gr/en/resources.html]], [[http://sourceforge.net/projects/polysemaannot/]]: the libraries needed by the project (protege, protege-owl, xerces etc.) are not included in the project archive, it's a bit difficult to built / use...
* [[http://doras.dcu.ie/309/1/samt_2006.pdf]]
===== Development tracks =====
* adding comboboxes for choosing the audio, the video, and subtitles (there is maybe all for doing that in the javadoc of the PlayBin class, see [[http://groups.google.com/group/gstreamer-java/browse_thread/thread/77ca0e3b38a6ac40/20a1020c826db74e?lnk=gst&q=subtitle#20a1020c826db74e]] ).