Hi,
On 22 January 2014 13:04, Sergio Matone <
sw36...@gmail.com> wrote:
> Let's start to collect info about architecture, roadmap and related topics
> about migration to Gst 1.x. ... The idea is to move the discussion away form issue tracking.
>
IMO, good move! :-)
> Main topics that come to my mind are:
> - project name (e.g. gstreamer-1.x-java)
I'd agree with that.
> - project location (I'll vote definitely for Github)
Yes, though I suggest we set up an organisation for this, rather than
hosting through any individual GitHub account.
I'm happy to set up an organisation called GStreamer-Java, or someone
else can? Thoughts? That naming is deliberate btw, so that we can
maintain bug fixes for the 0.10 branch there too if necessary.
> - backward compatibility with Gst 0.1x
Personally, I don't think this is a high-priority, or necessarily
achievable. It could be that once we have the bare bones of a native
wrapping it is possible to create a somewhat API compatible library
that delegates to the new bindings.
As GStreamer hasn't retained API compatibility in order to facilitate
onward progression and improvement, I'd suggest that neither do we.
> - reference platform (whether cross compatibility cannot be achieved)
OTOH, cross-platform compatibility is a definite requirement if you
ask me, and I see no reason it cannot be achieved. That's not to say
that the JNAerator configuration has to be cross-platform capable - as
stated elsewhere, I'd be in favour of an initial automated binding
created against the GStreamer headers, and manually massaging it from
there.
> - API java generation
Just taking this for now, the reason I'm suggesting an initial
automated binding with manual addition is that we need to be careful
how we treat any additions to the GStreamer API if we want the Java
bindings to remain backwards compatible. For this reason,
incidentally, I think we should probably be building against 1.0
headers. IIRC the direct bindings in JNA will fail at library load if
a native function cannot be found (unlike interface mapping which
happens at runtime). I emphasise the IIRC there though - need to
relook at this to see what the best way of approaching possibly
missing functions is.
Best wishes,
Neil
--
Neil C Smith
Artist : Technologist : Adviser
http://neilcsmith.net
Praxis LIVE - open-source intermedia development -
www.praxislive.org
Digital Prisoners - interactive spaces and projections -
www.digitalprisoners.co.uk
OpenEye - the web, managed -
www.openeye.info