summaryrefslogtreecommitdiff
path: root/src/post/goom/xine_goom.c
AgeCommit message (Collapse)Author
2008-09-17Remove an extra const directive for goom_csc_methodsErik Hovland
2008-05-07xine_xmalloc() deprecation: replace its use with static and non-zero size.Diego 'Flameeyes' Pettenò
The xine_xmalloc() function is going to be deprecated, as its behaviour is rarely needed as such, and it's thus misused. With this, almost all uses of xine_xmalloc() with static size (for instance the value returned by sizeof()) or with a size that is guaranteed not to be zero (like strlen()+1) are replaced with calls to either calloc(1, ...) or malloc(). malloc() is used whenever the allocated memory is going to be immediately overwritten, while calloc() is used in every other case, as it sets the whole memory area to zero. --HG-- extra : transplant_source : %8F%98%EC%02%1E%83%F0s%06X%83C%205Y%80%B12%CC%E1
2007-12-24Consistently use "colour", "colour key", "colour space" in output.Darren Salt
Some instances of "key colour" remain; ffmpeg is unmodified. This change has caused two strings with two translations to collide (the strings have become identical since some instances already used "colour"). I have therefore arbitrarily dropped the first of the differing translations, the one for the string at src/video_out/video_out_directfb.c:1365.
2007-11-10Delete most of the CVS $Id$/$Log$ lines.Darren Salt
--HG-- extra : transplant_source : %E0%D0%C5%8B%BEU%DD%24%5D7%1F%ADV%AD%EB%23%CBU%80%EB
2007-11-09Update FSF address on non-contributed code and COPYING files.Diego 'Flameeyes' Pettenò
For contributed code, leave whatever the version we last synced for is using to make simpler future syncs.
2007-08-15Workaround for recent glibc & -D_FORTIFY_SOURCE=2 (defines open() as a macro).Darren Salt
According to bug 1773769, this breaks foo->open(). The fix (as used in Ville Skyttä's patch, which doesn't cover all cases) is to replace this with (foo->open)(). This patch was generated using sed -i -re 's/(([[:alnum:]_]+(->|\.))+open) ?\(/(\1) (/' `grep '[>.]open \?(' include -rIl` One change (in a comment) is not committed.
2007-08-12Fix goom visualization plug-inMaxim Levitsky
I noticed that goom visualization plug-in doesn't work / freezes at some combination of bit rates and its FPS. Digging through it I found that algorithm that dispatches sound data to goom is buggy, and so I have rewrote/cleaned it a lot. Let me explain what is wrong: I am talking about goom_port_put_buffer in /xine-lib-1.1.7/src/post/goom/xine_goom.c The counter this->skip_frame is supposed to hold count of frames that goom should skip because of _video render unable to render video_. But that algorithm also skips frames on its own, and still decrements that counter. So it goes negative, and no frames are displayed. Basically to fix that you need to add if (this->skip_frame > 0) before this->skip_frame--; But since I want to fix that properly I decided to learn why goom skips frames on its own, and I now understand that whole algorithm is buggy. Thus I reimplemented it properly. I tested it , and it works with all my sound files, also I added lot of debug printfs to test whenever it works as expected, and it does. --HG-- extra : transplant_source : %B6%0C%09%D6%93%B8%00cj%3B8%C7%B5%0B%DB%21%08%92%3E%7B
2007-02-20Remove the cast as register_enum now accept consts.Diego 'Flameeyes' Pettenò
CVS patchset: 8614 CVS date: 2007/02/20 00:58:51
2006-12-02two fixes to viz glue code:Miguel Freitas
- avoid overrunning the provided input audio buffer. - generate a bad frame if time is due but we don't have enough data for updating the viz plugin. this could happen in some rare situations but the result was pretty catastrophic: xine froze with 100% cpu usage. CVS patchset: 8400 CVS date: 2006/12/02 22:35:18
2006-10-23- unregister configuration callbacks when disposing of the classBastien Nocera
should fix http://bugzilla.gnome.org/show_bug.cgi?id=355254 CVS patchset: 8348 CVS date: 2006/10/23 21:13:44
2006-07-10Implement visibility support, available on GCC 4.0 and later and on some 3.4 ↵Diego 'Flameeyes' Pettenò
(through backports), to avoid exporting unneeded internal symbols, making plugins' loading faster and use of internal copies of libraries more solid. It should automatically fall back to the old way in GCCs that does not support -fvisibility=hidden, but has to be tested carefully. No issues were found in the months of testing in Gentoo, but this requires special attention anyway. CVS patchset: 8101 CVS date: 2006/07/10 22:08:12
2006-06-02More static/const fixes from Gentoo. These should probably go upstream.Darren Salt
CVS patchset: 8008 CVS date: 2006/06/02 22:13:45
2006-05-03Make various arrays and structures (mainly xine_plugin_info) const.Darren Salt
(Diego Pettenò) CVS patchset: 7985 CVS date: 2006/05/03 19:46:06
2006-01-27Adapt the engine to the new list code.Thibaut Mattern
CVS patchset: 7848 CVS date: 2006/01/27 07:46:09
2005-07-19update goom to 2k4-0 + patches. details:Miguel Freitas
- removed convolve_fx: goom logo is definitely annoying. besides using xine_fast_memcpy instead of convolve makes it much faster! - reduced number of tentacles: too many tentacles on low res (320x240) made it too brighter - darker ifs.c: again problem with low res, image was saturating to white most of the time - increased fps to 14 now that goom is faster ;-) CVS patchset: 7667 CVS date: 2005/07/19 18:10:29
2005-05-03**BUGFIX**Darren Salt
Clip goom fps value to >= 1 [bug #1193783] CVS patchset: 7514 CVS date: 2005/05/03 01:31:12
2004-12-12huge patch ahead: reorganizing config entries with automatic conversionMichael Roitzsch
and backwards compatible translation Sorry, I got a litte tired proof-reading the patch, so their might be bugs lurking around. I will give it some further examination and (as necessary) fixing tomorrow. CVS patchset: 7233 CVS date: 2004/12/12 22:00:47
2004-11-21updated goom to 2k4-dev21Michael Roitzsch
* tweaked somewhat to avoid the bright circle for the first seconds of playback * no idea whether this fixes the AMD64 problems, I have not found anything suspicious CVS patchset: 7143 CVS date: 2004/11/21 15:10:39
2004-06-27include the new goom version 2k4-dev15Michael Roitzsch
everybody: test, test, test CVS patchset: 6756 CVS date: 2004/06/27 11:58:47
2004-05-29separate the two semantics of querying a port's status with a NULL stream;Michael Roitzsch
before, NULL could mean two things: no stream at all or a stream that does not want to be addressed; now the latter is represented by the new XINE_ANON_STREAM resulting changes: * the status() functions now behave differently for NULL and XINE_ANON_STREAM (as the commentary always implied, but this was not the case, so post plugin rewiring went wrong, because it relies on the status() function) * the NULL_STREAM defines in audio_out and video_out are obsolete * update the function comments in the headers * update the post plugin rewire functions to use the status() functions to check, if the old port was opened and handle the new one accordingly; this makes open_count obsolete * change all post plugins accordingly (mostly using XINE_ANON_STREAM instead of NULL) additional change: * the status() function of audio port now returns the bits/rate/mode values of the input and not the output; this is more likely to be what a post plugin wants * the reimplementation of status() in the upmix plugin is obsolete CVS patchset: 6603 CVS date: 2004/05/29 14:45:25
2004-05-18track number of times the port has being opened.Miguel Freitas
rewiring a closed port won't cause the new destination to be opened. CVS patchset: 6564 CVS date: 2004/05/18 03:16:12
2004-04-26help strings added for all remaining config entries (so I hope)Michael Roitzsch
please everybody watch out for spelling (and other) errors CVS patchset: 6442 CVS date: 2004/04/26 17:50:06
2004-04-17swap usage of "up" and "down" to the more common meaning:Michael Roitzsch
"down" is the usual datapath from decoder to output, "up" is the opposite way -> this means swapping two function names -> this means increasing the post plugin iface version external plugin developers: just swap usage of _x_post_frame_copy_up() and _x_post_frame_copy_down() functions CVS patchset: 6412 CVS date: 2004/04/17 19:54:31
2004-02-12function has been renamedMichael Roitzsch
CVS patchset: 6140 CVS date: 2004/02/12 18:25:07
2004-01-07the new, refined post plugin architectureMichael Roitzsch
* post plugins are now much safer (fewer races/inconsistencies) and easier to write * all post plugins are ported to the new architecture (and should work) * ports can now be opened and closed with a NULL stream CVS patchset: 6007 CVS date: 2004/01/07 19:52:42
2003-12-14API version bounceSiggi Langauf
CVS patchset: 5912 CVS date: 2003/12/14 22:13:22
2003-12-05cleanup phase II. use xprintf when it's relevant, use xine_xmalloc when it's ↵Daniel Caujolle-Bert
relevant too. Small other little fix (can't remember). Change few internal function prototype because it xine_t pointer need to be used if some xine's internal sections. NOTE: libdvd{nav,read} is still too noisy, i will take a look to made it quit, without invasive changes. To be continued... CVS patchset: 5844 CVS date: 2003/12/05 15:54:56
2003-12-03use _x_ao_mode2channels in post-pluginsMarco Zuehlke
CVS patchset: 5829 CVS date: 2003/12/03 10:52:41
2003-11-26lprintf cleanup, pass I.Daniel Caujolle-Bert
CVS patchset: 5796 CVS date: 2003/11/26 19:43:26
2003-11-26the viz plugins are feeding their private metronom with video only data, soMichael Roitzsch
have_video=1, have_audio=0 seems more logical CVS patchset: 5791 CVS date: 2003/11/26 19:30:14
2003-11-20"Anti audio fifo null" patch ;)Thibaut Mattern
Makes things a bit more symetric: - the audio fifo (demuxer->decoder) can't be NULL - the video driver can be NULL A dummy fifo (5 buffers) is used if the audio driver or video driver is NULL. Audio frontends (rhythmbox, seedeexeen, quark) do not need to instanciate a video driver anymore. CVS patchset: 5767 CVS date: 2003/11/20 00:42:14
2003-11-16audio visualization post plugins now use a private metronom to sync their videoMichael Roitzsch
CVS patchset: 5743 CVS date: 2003/11/16 12:18:59
2003-11-11rename internal API function (_x_<function>).Daniel Caujolle-Bert
CVS patchset: 5721 CVS date: 2003/11/11 18:44:50
2003-11-10avoid segfault when resizingDaniel Caujolle-Bert
CVS patchset: 5718 CVS date: 2003/11/10 21:58:31
2003-10-30* modify the engine slightly, so that the stream member in a video frame orMichael Roitzsch
audio buffer can be NULL; this should be used to indicate that the frame/ buffer does not come directly from a stream, but was generated otherwise (the most important result is that frames/buffers with stream NULL will not be passed through metronom) * modify visualization post plugins so they set the stream on the generated frames to NULL, this avoids cluttering metronom, when playing a stream with audio AND video AND a visualization post * this also means modifying the way post plugins provide vpts values: they have to calculate them themselves for now CVS patchset: 5647 CVS date: 2003/10/30 22:40:53
2003-10-23I should have seen this coming...Michael Roitzsch
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
2003-10-06- add XvMC supportMiguel Freitas
- bump vo and post interface versions obs: video_out_xvmc.c needs some more work, see todo. CVS patchset: 5459 CVS date: 2003/10/06 21:52:42
2003-09-14newer goom version.Thibaut Mattern
CVS patchset: 5378 CVS date: 2003/09/14 15:45:55
2003-08-04support for arbitrary aspect ratiosMiguel Freitas
patch by Philip Jgenstedt CVS patchset: 5243 CVS date: 2003/08/04 03:47:09
2003-07-26Try to avoid to discard audio buffersThibaut Mattern
skip frames if there is less than 200ms of audio data in the audio_out fifo. It works pretty well here, I can compile xine during a goom session without sound skips. I know it's a hack, comments are welcomed. CVS patchset: 5217 CVS date: 2003/07/26 23:31:55
2003-07-26- compute a pts using metronom internals if the demuxer doesn't provide pts ↵Thibaut Mattern
(demux_mpegaudio) - frame dropping it's more usable on my slow cpu now ;-) CVS patchset: 5215 CVS date: 2003/07/26 17:13:00
2003-05-31update video out api to allow better frame management (explicit locking)Miguel Freitas
img->displayed is obsolete now, drivers should use img->free. CVS patchset: 4994 CVS date: 2003/05/31 18:33:28
2003-04-30Don't forget to reset frame->bad_frame to 0 !Thibaut Mattern
Fix strange problems with viz plugins. CVS patchset: 4716 CVS date: 2003/04/30 06:58:50
2003-04-09avoid sefault (tweaking fried memory is never a good idea ;-)Daniel Caujolle-Bert
CVS patchset: 4580 CVS date: 2003/04/09 20:15:52
2003-03-11Several post plugins were crashing with a failed assertion, due toJuergen Keil
closing a bogus xine_video_port_t: xine-lib/src/xine-engine/audio_out.c:fifo_append_int:225: assertion `!buf->next' failed. Next audio buffer is not NULL. CVS patchset: 4395 CVS date: 2003/03/11 17:40:30
2003-03-06- revert stream info changesBastien Nocera
CVS patchset: 4346 CVS date: 2003/03/06 22:59:35
2003-03-06- following the screenshot discussion, inform the height and width of the streamBastien Nocera
if it exists so we can take screenshots of goom, the other post plugins need to be adapted as well CVS patchset: 4344 CVS date: 2003/03/06 00:51:39
2003-02-22handle extra info properly; that is: the inverter should pass on the extra info,Michael Roitzsch
the vis plugins should invalidate the extra info of the frames they output to not interfere with the (correct) extra info which will be set by audio out CVS patchset: 4250 CVS date: 2003/02/22 14:21:37
2003-01-29log messagesMiguel Freitas
CVS patchset: 4041 CVS date: 2003/01/29 17:21:13
2003-01-28- Patch from Jeff Smith (remove warnings)Thibaut Mattern
- Last ppc asm code from Guillaume Borios (not used yet) - Add callbacks to config entries. Each change takes effect immediately (including resolution and fps) ;) CVS patchset: 4026 CVS date: 2003/01/28 21:57:30