<feed xmlns='http://www.w3.org/2005/Atom'>
<title>xine-lib/src/xine-engine/spu_decoder.h, branch 1.2.0</title>
<subtitle>xine-lib git mirror
</subtitle>
<link rel='alternate' type='text/html' href='https://vdr-projects.e-tobi.net/git/xine-lib/'/>
<entry>
<title>Consolidate all public include files into include/xine directory.</title>
<updated>2007-12-19T01:10:56+00:00</updated>
<author>
<name>Diego 'Flameeyes' Pettenò</name>
<email>flameeyes@gmail.com</email>
</author>
<published>2007-12-19T01:10:56+00:00</published>
<link rel='alternate' type='text/html' href='https://vdr-projects.e-tobi.net/git/xine-lib/commit/?id=f80c8d4d48e7a5ef6ac6c9f2a4dfdb39f40aaff6'/>
<id>f80c8d4d48e7a5ef6ac6c9f2a4dfdb39f40aaff6</id>
<content type='text'>
--HG--
rename : src/xine-engine/alphablend.h =&gt; include/xine/alphablend.h
rename : src/xine-utils/array.h =&gt; include/xine/array.h
rename : src/xine-utils/attributes.h =&gt; include/xine/attributes.h
rename : src/xine-engine/audio_decoder.h =&gt; include/xine/audio_decoder.h
rename : src/xine-engine/audio_out.h =&gt; include/xine/audio_out.h
rename : src/xine-engine/broadcaster.h =&gt; include/xine/broadcaster.h
rename : src/xine-engine/buffer.h =&gt; include/xine/buffer.h
rename : src/xine-utils/compat.h =&gt; include/xine/compat.h
rename : src/xine-engine/configfile.h =&gt; include/xine/configfile.h
rename : src/demuxers/demux.h =&gt; include/xine/demux.h
rename : src/xine-engine/info_helper.h =&gt; include/xine/info_helper.h
rename : src/input/input_plugin.h =&gt; include/xine/input_plugin.h
rename : src/xine-engine/io_helper.h =&gt; include/xine/io_helper.h
rename : src/xine-utils/list.h =&gt; include/xine/list.h
rename : src/xine-engine/metronom.h =&gt; include/xine/metronom.h
rename : src/xine-engine/osd.h =&gt; include/xine/osd.h
rename : src/xine-engine/plugin_catalog.h =&gt; include/xine/plugin_catalog.h
rename : src/xine-utils/pool.h =&gt; include/xine/pool.h
rename : src/xine-engine/post.h =&gt; include/xine/post.h
rename : src/xine-engine/refcounter.h =&gt; include/xine/refcounter.h
rename : src/xine-engine/resample.h =&gt; include/xine/resample.h
rename : src/xine-utils/ring_buffer.h =&gt; include/xine/ring_buffer.h
rename : src/xine-engine/scratch.h =&gt; include/xine/scratch.h
rename : src/xine-utils/sorted_array.h =&gt; include/xine/sorted_array.h
rename : src/xine-engine/spu.h =&gt; include/xine/spu.h
rename : src/xine-engine/spu_decoder.h =&gt; include/xine/spu_decoder.h
rename : src/xine-engine/video_decoder.h =&gt; include/xine/video_decoder.h
rename : src/xine-engine/video_out.h =&gt; include/xine/video_out.h
rename : src/xine-engine/video_overlay.h =&gt; include/xine/video_overlay.h
rename : src/xine-engine/vo_scale.h =&gt; include/xine/vo_scale.h
rename : src/xine-utils/xine_buffer.h =&gt; include/xine/xine_buffer.h
rename : src/xine-engine/xine_internal.h =&gt; include/xine/xine_internal.h
rename : src/xine-engine/xine_plugin.h =&gt; include/xine/xine_plugin.h
rename : src/xine-engine/xineintl.h =&gt; include/xine/xineintl.h
rename : src/xine-utils/xineutils.h =&gt; include/xine/xineutils.h
rename : src/xine-utils/xmllexer.h =&gt; include/xine/xmllexer.h
rename : src/xine-utils/xmlparser.h =&gt; include/xine/xmlparser.h
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
--HG--
rename : src/xine-engine/alphablend.h =&gt; include/xine/alphablend.h
rename : src/xine-utils/array.h =&gt; include/xine/array.h
rename : src/xine-utils/attributes.h =&gt; include/xine/attributes.h
rename : src/xine-engine/audio_decoder.h =&gt; include/xine/audio_decoder.h
rename : src/xine-engine/audio_out.h =&gt; include/xine/audio_out.h
rename : src/xine-engine/broadcaster.h =&gt; include/xine/broadcaster.h
rename : src/xine-engine/buffer.h =&gt; include/xine/buffer.h
rename : src/xine-utils/compat.h =&gt; include/xine/compat.h
rename : src/xine-engine/configfile.h =&gt; include/xine/configfile.h
rename : src/demuxers/demux.h =&gt; include/xine/demux.h
rename : src/xine-engine/info_helper.h =&gt; include/xine/info_helper.h
rename : src/input/input_plugin.h =&gt; include/xine/input_plugin.h
rename : src/xine-engine/io_helper.h =&gt; include/xine/io_helper.h
rename : src/xine-utils/list.h =&gt; include/xine/list.h
rename : src/xine-engine/metronom.h =&gt; include/xine/metronom.h
rename : src/xine-engine/osd.h =&gt; include/xine/osd.h
rename : src/xine-engine/plugin_catalog.h =&gt; include/xine/plugin_catalog.h
rename : src/xine-utils/pool.h =&gt; include/xine/pool.h
rename : src/xine-engine/post.h =&gt; include/xine/post.h
rename : src/xine-engine/refcounter.h =&gt; include/xine/refcounter.h
rename : src/xine-engine/resample.h =&gt; include/xine/resample.h
rename : src/xine-utils/ring_buffer.h =&gt; include/xine/ring_buffer.h
rename : src/xine-engine/scratch.h =&gt; include/xine/scratch.h
rename : src/xine-utils/sorted_array.h =&gt; include/xine/sorted_array.h
rename : src/xine-engine/spu.h =&gt; include/xine/spu.h
rename : src/xine-engine/spu_decoder.h =&gt; include/xine/spu_decoder.h
rename : src/xine-engine/video_decoder.h =&gt; include/xine/video_decoder.h
rename : src/xine-engine/video_out.h =&gt; include/xine/video_out.h
rename : src/xine-engine/video_overlay.h =&gt; include/xine/video_overlay.h
rename : src/xine-engine/vo_scale.h =&gt; include/xine/vo_scale.h
rename : src/xine-utils/xine_buffer.h =&gt; include/xine/xine_buffer.h
rename : src/xine-engine/xine_internal.h =&gt; include/xine/xine_internal.h
rename : src/xine-engine/xine_plugin.h =&gt; include/xine/xine_plugin.h
rename : src/xine-engine/xineintl.h =&gt; include/xine/xineintl.h
rename : src/xine-utils/xineutils.h =&gt; include/xine/xineutils.h
rename : src/xine-utils/xmllexer.h =&gt; include/xine/xmllexer.h
rename : src/xine-utils/xmlparser.h =&gt; include/xine/xmlparser.h
</pre>
</div>
</content>
</entry>
<entry>
<title>Bump the interface version for SPU decoders.</title>
<updated>2007-12-11T17:08:49+00:00</updated>
<author>
<name>Diego 'Flameeyes' Pettenò</name>
<email>flameeyes@gmail.com</email>
</author>
<published>2007-12-11T17:08:49+00:00</published>
<link rel='alternate' type='text/html' href='https://vdr-projects.e-tobi.net/git/xine-lib/commit/?id=b9dffdcf551ccd23b31618cf86716082e9f50f9d'/>
<id>b9dffdcf551ccd23b31618cf86716082e9f50f9d</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Define free() as the default dispose function for plugin classes.</title>
<updated>2007-12-11T13:26:34+00:00</updated>
<author>
<name>Diego 'Flameeyes' Pettenò</name>
<email>flameeyes@gmail.com</email>
</author>
<published>2007-12-11T13:26:34+00:00</published>
<link rel='alternate' type='text/html' href='https://vdr-projects.e-tobi.net/git/xine-lib/commit/?id=448923a2d401f3e21eb586f50c1ca9e2dd6259d9'/>
<id>448923a2d401f3e21eb586f50c1ca9e2dd6259d9</id>
<content type='text'>
Most plugin classes in xine define a dispose function simply to call free(),
but free() is ABI-compatible with our dispose functions, so add a macro
that allows to pass free() directly as dispose function.

It's an opt-in so that no extra conditional is needed, and plugin authors
won't forget about providing a dispose function (if they need to).
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Most plugin classes in xine define a dispose function simply to call free(),
but free() is ABI-compatible with our dispose functions, so add a macro
that allows to pass free() directly as dispose function.

It's an opt-in so that no extra conditional is needed, and plugin authors
won't forget about providing a dispose function (if they need to).
</pre>
</div>
</content>
</entry>
<entry>
<title>Add a textdomain field to allow using a different i18n catalog for the description translation.</title>
<updated>2007-12-11T13:02:35+00:00</updated>
<author>
<name>Diego 'Flameeyes' Pettenò</name>
<email>flameeyes@gmail.com</email>
</author>
<published>2007-12-11T13:02:35+00:00</published>
<link rel='alternate' type='text/html' href='https://vdr-projects.e-tobi.net/git/xine-lib/commit/?id=5b812f5ae063e9e6dadb4eff65bbbe78e977c6f3'/>
<id>5b812f5ae063e9e6dadb4eff65bbbe78e977c6f3</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Replace get_identifier/get_description functions with strings.</title>
<updated>2007-12-11T09:49:51+00:00</updated>
<author>
<name>Diego 'Flameeyes' Pettenò</name>
<email>flameeyes@gmail.com</email>
</author>
<published>2007-12-11T09:49:51+00:00</published>
<link rel='alternate' type='text/html' href='https://vdr-projects.e-tobi.net/git/xine-lib/commit/?id=90b866329e8962a3f1f03dc8172cf75ccc9d2b85'/>
<id>90b866329e8962a3f1f03dc8172cf75ccc9d2b85</id>
<content type='text'>
This is the start of a new experimental branch, with the first objective being
the replacement of the get_description and get_identifier functions with
direct-access strings.

The reason for this change is to reduce code size and time of execution.
By replacing the functions with direct-access strings there is one less call
to be done in those cases where the description has to be fetched.

The solution is not yet definitive though, there are a couple of problems to
take care of:

 - the use of N_() still makes it easy to internationalise the strings, but it
   requires for the string to be found on libxine2 catalog, which is not
   exactly a nice solution for external plugins;
 - it would be simpler to re-use the id field in plugin_info_t, and then move
   description there; it should reduce memory usage for the class structures;
 - I'm not really aware of any reason why get_description and get_identifier
   were used beside the idea of making i18n simpler.

This probably would break a couple of frontends, especially if they have some
internal plugins (like post-plugins), so it needs to be reviewed carefully
before merging in 1.2 branch. My current goal is to get this in before 1.2
though, rather than waiting for 1.3.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This is the start of a new experimental branch, with the first objective being
the replacement of the get_description and get_identifier functions with
direct-access strings.

The reason for this change is to reduce code size and time of execution.
By replacing the functions with direct-access strings there is one less call
to be done in those cases where the description has to be fetched.

The solution is not yet definitive though, there are a couple of problems to
take care of:

 - the use of N_() still makes it easy to internationalise the strings, but it
   requires for the string to be found on libxine2 catalog, which is not
   exactly a nice solution for external plugins;
 - it would be simpler to re-use the id field in plugin_info_t, and then move
   description there; it should reduce memory usage for the class structures;
 - I'm not really aware of any reason why get_description and get_identifier
   were used beside the idea of making i18n simpler.

This probably would break a couple of frontends, especially if they have some
internal plugins (like post-plugins), so it needs to be reviewed carefully
before merging in 1.2 branch. My current goal is to get this in before 1.2
though, rather than waiting for 1.3.
</pre>
</div>
</content>
</entry>
<entry>
<title>Use protected visibility for all the functions exported by libxine.so, so that their binding is local to the library (has a similar effect to -Bsymbolic, but will work better with hidden visibility enabled, that is step two).</title>
<updated>2006-09-26T05:19:47+00:00</updated>
<author>
<name>Diego 'Flameeyes' Pettenò</name>
<email>flameeyes@gmail.com</email>
</author>
<published>2006-09-26T05:19:47+00:00</published>
<link rel='alternate' type='text/html' href='https://vdr-projects.e-tobi.net/git/xine-lib/commit/?id=1b23ad7e208929b8b99e37de64282f74070f37b6'/>
<id>1b23ad7e208929b8b99e37de64282f74070f37b6</id>
<content type='text'>
CVS patchset: 8289
CVS date: 2006/09/26 05:19:47

</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
CVS patchset: 8289
CVS date: 2006/09/26 05:19:47

</pre>
</div>
</content>
</entry>
<entry>
<title> - almost finalize headers refactoring needed for MSVC frontends (and for other</title>
<updated>2004-09-26T22:54:51+00:00</updated>
<author>
<name>František Dvořák</name>
<email>valtri@users.sourceforge.net</email>
</author>
<published>2004-09-26T22:54:51+00:00</published>
<link rel='alternate' type='text/html' href='https://vdr-projects.e-tobi.net/git/xine-lib/commit/?id=9025bf7cc003e8e9981eaf2adc4c614d9bca765c'/>
<id>9025bf7cc003e8e9981eaf2adc4c614d9bca765c</id>
<content type='text'>
   poor platforms, of course)
 - fix a bug in generated xine-config for WIN32 and make it relocateable
   under Windows
 - MSVC port: update, fix some warnings, remove old unneeded files
 - improve function for getting runtime directory, it will need next fix
   yet (bug probably due to active volume drives)

CVS patchset: 7001
CVS date: 2004/09/26 22:54:51

</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
   poor platforms, of course)
 - fix a bug in generated xine-config for WIN32 and make it relocateable
   under Windows
 - MSVC port: update, fix some warnings, remove old unneeded files
 - improve function for getting runtime directory, it will need next fix
   yet (bug probably due to active volume drives)

CVS patchset: 7001
CVS date: 2004/09/26 22:54:51

</pre>
</div>
</content>
</entry>
<entry>
<title>Michael's patch for improving playback with subtitles, fix the long seeking.</title>
<updated>2004-04-07T18:10:20+00:00</updated>
<author>
<name>František Dvořák</name>
<email>valtri@users.sourceforge.net</email>
</author>
<published>2004-04-07T18:10:20+00:00</published>
<link rel='alternate' type='text/html' href='https://vdr-projects.e-tobi.net/git/xine-lib/commit/?id=ef959e21c2fb8688ff2bfcf7758e9323be8b65f7'/>
<id>ef959e21c2fb8688ff2bfcf7758e9323be8b65f7</id>
<content type='text'>
CVS patchset: 6342
CVS date: 2004/04/07 18:10:20

</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
CVS patchset: 6342
CVS date: 2004/04/07 18:10:20

</pre>
</div>
</content>
</entry>
<entry>
<title>API version bounce</title>
<updated>2003-12-14T22:13:22+00:00</updated>
<author>
<name>Siggi Langauf</name>
<email>siggi@users.sourceforge.net</email>
</author>
<published>2003-12-14T22:13:22+00:00</published>
<link rel='alternate' type='text/html' href='https://vdr-projects.e-tobi.net/git/xine-lib/commit/?id=5d30a7730fa08774a1c48082580eb40a4e9a8095'/>
<id>5d30a7730fa08774a1c48082580eb40a4e9a8095</id>
<content type='text'>
CVS patchset: 5912
CVS date: 2003/12/14 22:13:22

</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
CVS patchset: 5912
CVS date: 2003/12/14 22:13:22

</pre>
</div>
</content>
</entry>
<entry>
<title>I should have seen this coming...</title>
<updated>2003-10-23T20:12:33+00:00</updated>
<author>
<name>Michael Roitzsch</name>
<email>mroi@users.sourceforge.net</email>
</author>
<published>2003-10-23T20:12:33+00:00</published>
<link rel='alternate' type='text/html' href='https://vdr-projects.e-tobi.net/git/xine-lib/commit/?id=bc348464a67516b828815673585f8724651d969a'/>
<id>bc348464a67516b828815673585f8724651d969a</id>
<content type='text'>
The changes to the video API of course require the video/spu decoder and
post plugin APIs to be increased as well.

CVS patchset: 5579
CVS date: 2003/10/23 20:12:33

</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The changes to the video API of course require the video/spu decoder and
post plugin APIs to be increased as well.

CVS patchset: 5579
CVS date: 2003/10/23 20:12:33

</pre>
</div>
</content>
</entry>
</feed>
