27.04.2003: ogg/theora support + massively reduced external dependancies ogg/vorbis/theora/speex are all statically included in the source tree
25.02.2003: enix-user and enix-devel mailing lists have been created
24.02.2003: enix sources have been checked into cvs.
enix is to become for encoding and video processing what
xine is today for video playback:
possible applications that can be built using enix include:
enix is built around a very simple basic primitive, called enix_stream_t:
typedef struct enix_stream_s enix_stream_t;
struct enix_stream_s {
int (*play) (enix_stream_t *stream,
int start_pos,
int start_time);
int (*get_next_video_frame) (enix_stream_t *stream,
xine_video_frame_t *frame);
int (*get_next_audio_frame) (enix_stream_t *stream,
xine_audio_frame_t *frame);
void (*dispose) (enix_stream_t *stream);
int (*get_property) (enix_stream_t *stream, int property);
} ;
these primitives can be used as a common interface for
inputs (e.g. a wrapper around the xine engine is provided
so any stream that xine can decode can be processed in enix
but also other inputs such as low-latency frame grabbing
can be implemented) and filters. enix_stream_t can be
recursively used to form pipelines for multimedia stram processing.
usually you'll find a multiplexer and encoder at the end
of the pipeline:
enix is in the very early stages of it's developement, so please be patient. currently enix sources are only available from cvs:
access enix cvs here
enix mailing lists: mailing lists