summaryrefslogtreecommitdiff
path: root/src/libspudec/spu.c
AgeCommit message (Collapse)Author
2003-03-08first step towards fixing the DVD menu highlighting problemsMichael Roitzsch
The problem arises because of inconsistent usage of libdvdread's functions regarding NAV packet reading: libspudec and the dxr3 spu decoder use some of these functions, but they used to have private copies of the relevant files of libdvdread. These do not work any more now, since the internal layout of NAV packets in libdvdread changed lately. So we should always use the functions from current libdvdread. Please note that highlights might not work yet. The next step will be to sync libdvdnav. Stay tuned. CVS patchset: 4371 CVS date: 2003/03/08 14:11:52
2003-02-28Xine assert() replacement:Stephen Torri
All assert() function calls, with exceptions of libdvdread and libdvdnav, have been replaced with XINE_ASSERT. Functionally XINE_ASSERT behaves just likes its predecesor but its adding the ability to print out a stack trace at the point where the assertion fails. So here are a few examples. assert (0); This use of assert was found in a couple locations most favorably being the default case of a switch statement. This was the only thing there. So if the switch statement was unable to find a match it would have defaulted to this and the user and the developers would be stuck wonder who died and where. So it has been replaced with XINE_ASSERT(0, "We have reach this point and don't have a default case"); It may seem a bit none descriptive but there is more going on behind the scene. In addition to checking a condition is true/false, in this case '0', the XINE_ASSERT prints out: <filename>:<function name>:<line number> - assertion '<assertion expression>' failed. <description> An example of this might be: input_dvd.c:open_plugin:1178 - assertion '0' failed. xine_malloc failed!!! You have run out of memory XINE_ASSERT and its helper function, print_trace, are found in src/xine-utils/xineutils.h CVS patchset: 4301 CVS date: 2003/02/28 02:51:47
2003-02-20Michael's num_buttons patchSiggi Langauf
(menu detection by number of SPU buttons) CVS patchset: 4220 CVS date: 2003/02/20 18:09:09
2003-02-12malloc.h is deprecated on FreeBSD and apparently unneeded on gnu/linuxHeiko Schaefer
CVS patchset: 4139 CVS date: 2003/02/12 17:29:30
2002-12-26- cleanup internal interfaces for rewiringMiguel Freitas
- fix UI_PLAYBACK_FINISHED rifle CVS patchset: 3686 CVS date: 2002/12/26 21:53:41
2002-11-26* remove what appears to be debug code messing up colors for some SPUsMichael Roitzsch
(thanks to James Slorach for providing the fix) * implement a draft of a reset() function that will hopefully bring the spu decoder into a safe state * handle broken SPUs more gracefully CVS patchset: 3377 CVS date: 2002/11/26 16:05:00
2002-11-20the last patch moved the command parsing too far, forced_display is updatedMichael Roitzsch
inside spudec_do_commands, so it has to come before the check for it CVS patchset: 3317 CVS date: 2002/11/20 14:00:34
2002-11-20this should fix the various overlay problems: we should not parse commands ofMichael Roitzsch
SPUs we are going to drop because of wrong channel later, so move the parsing after the drop checking (and remove the birdcage hack) CVS patchset: 3315 CVS date: 2002/11/20 13:49:05
2002-11-19Added some test code in, to help us with highlight problems with some DVDs.James Courtier-Dutton
Specifically the BIRDCAGE. CVS patchset: 3304 CVS date: 2002/11/19 13:31:03
2002-11-19spu and overlay cleanups, mostly cosmeticMiguel Freitas
CVS patchset: 3298 CVS date: 2002/11/19 00:45:41
2002-11-18the new metronom discontinuity handling allows for some cleanupMichael Roitzsch
(some time guessing code should be obsolete now) just tested quickly, but DVD menus and SPUs seem to work fine CVS patchset: 3294 CVS date: 2002/11/18 13:42:50
2002-11-01Add stricter checking.James Courtier-Dutton
Try to remove SPU_WIPE bug. CVS patchset: 3122 CVS date: 2002/11/01 11:02:52
2002-10-26fix event sendingMichael Roitzsch
CVS patchset: 3021 CVS date: 2002/10/26 20:52:42
2002-10-21Enable DVD SPU subtitles.James Courtier-Dutton
CLUT and timing do not seem to be working well yet. CVS patchset: 2897 CVS date: 2002/10/21 12:10:58
2002-09-30Fixes and performance improvements to the alphablend.c code.James Courtier-Dutton
The fixes involved getting blend_rgb16 to correctly handle different colours in the highlight area and general overlay area. Another fix involved fixing the overlay scaling function so that it scales in the same proportion as the yuv2rgb code. Currently, blend_yuv has not been updated. blend_rgb16 has been improved. blend_rgb24 and blend_rgb32 have not been changed and will probably not work now. The performance improvements are due to two things: - 1) Special detection of overlays without any buttons/clip areas. This is detected by ensuring overl->clip_top = -1 when no button is present. 2) Reorganise the blending code so that for each time round the loop, the fewest possible IF statements are executed. So, for overlays without any buttons, not checks for the clip area is done. For overlay with buttons, state is kept as to whether we are above, to the left, inside or to the right or below the clip area, thus saving having to do IF statements each time round the loop to find out where we are. CVS patchset: 2762 CVS date: 2002/09/30 05:16:45
2002-09-18dxr3 worksMichael Roitzsch
CVS patchset: 2693 CVS date: 2002/09/18 15:42:56
2002-09-18Updating the DVD menu code to use better nav_pci information.James Courtier-Dutton
libspudec parses nav_pci info correctly. libdvdnav does not parse nav_pci info at all. CVS patchset: 2681 CVS date: 2002/09/18 04:20:09
2002-09-04merging in the new_api branch ... unfortunately video_out / vo_scale is ↵Guenter Bartsch
broken now ... matthias/miguel: please fix it :-) CVS patchset: 2606 CVS date: 2002/09/04 23:31:05
2002-09-01Improve a few debug print statements.James Courtier-Dutton
fix a wrong format statement. CVS patchset: 2577 CVS date: 2002/09/01 06:02:53
2002-07-20don't be too rude with bad dvds:Michael Roitzsch
don't abort on broken spu control sequences, skip them instead CVS patchset: 2328 CVS date: 2002/07/20 16:28:14
2002-07-19fix some menu highlights not disappearing on menu leaveMichael Roitzsch
CVS patchset: 2320 CVS date: 2002/07/19 17:16:39
2002-07-06whoops, spelling errorMichael Roitzsch
CVS patchset: 2222 CVS date: 2002/07/06 16:38:30
2002-07-06Button areas in the nav packets are in screen coordinated.Michael Roitzsch
Overlay clipping areas are in overlay coordinates. Therefore, up to now, the menu highlight positions were only correct, when the menu subpicture started at (0,0) on screen. Although this seems to be common, it is not necessarily true and I have dvds here, for which it is not. The fix is easy: Correctly convert the button areas to clipping areas by subtracting the subpictures display offset. CVS patchset: 2221 CVS date: 2002/07/06 16:36:43
2002-04-24Some more adjustments to make dvd menus work better.James Courtier-Dutton
CVS patchset: 1774 CVS date: 2002/04/24 20:26:06
2002-04-24Some further improvements to dvd menu buttons.James Courtier-Dutton
CVS patchset: 1773 CVS date: 2002/04/24 13:42:17
2002-04-23Add support for forced buttons due to nav pci fosl control.James Courtier-Dutton
CVS patchset: 1771 CVS date: 2002/04/23 23:46:23
2002-04-23Minor bug fix.James Courtier-Dutton
Apparently transparent SPUs are still needed, in case buttons go on them. CVS patchset: 1770 CVS date: 2002/04/23 22:42:17
2002-04-23Small improvement to menu highlights.James Courtier-Dutton
Once a menu has been activated, it will not move until the next menu appears. CVS patchset: 1769 CVS date: 2002/04/23 21:48:06
2002-04-23Moving more highlight handling to libspudec.James Courtier-Dutton
Remove some highlight code from xine-dvdnav. CVS patchset: 1768 CVS date: 2002/04/23 20:27:31
2002-04-09Introducing steps towards a menu api in video_overlay.cJames Courtier-Dutton
First step here is make libspudec use different calls to video_overlay than osd, so changes can be made to menu handling without effecting osd too much. CVS patchset: 1702 CVS date: 2002/04/09 13:20:43
2002-04-06Cleaning up libspudecJames Courtier-Dutton
CVS patchset: 1687 CVS date: 2002/04/06 15:40:19
2002-03-25Re-organised libspudec to hopefully make it more readable.James Courtier-Dutton
CVS patchset: 1632 CVS date: 2002/03/25 13:57:25
2002-02-25xine now compiles ok with the dxr3 em8300 ver 0.12.0 ,but dxr3 does not ↵James Courtier-Dutton
actually work yet. CVS patchset: 1519 CVS date: 2002/02/25 23:44:05
2002-01-05NAV packets not provide input to SPU clut,trans and clip info all in libspudec.James Courtier-Dutton
Still need a communication between libspudec and dvdnav for button numbers. CVS patchset: 1342 CVS date: 2002/01/05 21:29:37
2002-01-05Fix NAV packet demux.James Courtier-Dutton
CVS patchset: 1340 CVS date: 2002/01/05 18:14:27
2001-11-30Valid mrls are no more static (except few ones), like file suffix too.Daniel Caujolle-Bert
First draft of compat.h (almost empty for now). CVS patchset: 1139 CVS date: 2001/11/30 00:53:50
2001-11-28* OSD (On Screen Display) for rendering text and graphics into overlaysMiguel Freitas
* reworked spu and overlay manager (multiple overlays supported) CVS patchset: 1126 CVS date: 2001/11/28 22:19:10
2001-11-26switching off spu debug outputGuenter Bartsch
CVS patchset: 1118 CVS date: 2001/11/26 20:02:33
2001-11-20avoid segfault if rle is nullMiguel Freitas
CVS patchset: 1085 CVS date: 2001/11/20 03:43:18
2001-11-18new configfile interface, code cleanup, xprintf is goneGuenter Bartsch
CVS patchset: 1064 CVS date: 2001/11/18 03:53:23
2001-11-17Add 'xine_' prefix to all of xine-utils functions (what about cpuDaniel Caujolle-Bert
acceleration?). Merge xine-utils header files to a new one "xineutils.h". Update xine-lib C/headers to reflect those changes. dxr3 headers are no more installed ine $includdir, but $includdir/xine. CVS patchset: 1054 CVS date: 2001/11/17 14:26:36
2001-10-26Fixes some subtitle crashes.James Courtier-Dutton
Still more theoritical fixes need doing, but I cannot get libspudec to crash any more. CVS patchset: 887 CVS date: 2001/10/26 13:39:21
2001-10-26Added some debug commands, trying to track malloc segfaults.James Courtier-Dutton
CVS patchset: 886 CVS date: 2001/10/26 11:21:08
2001-10-23Changed debug printf to xprintf.James Courtier-Dutton
Added a comment in load_plugins. CVS patchset: 871 CVS date: 2001/10/23 21:51:11
2001-10-23discover clut reenabledMiguel Freitas
CVS patchset: 863 CVS date: 2001/10/23 00:50:47
2001-10-21Some minor changes.James Courtier-Dutton
DVDs only have 8 audio streams. CVS patchset: 849 CVS date: 2001/10/21 15:04:13
2001-10-20A reorganisation of libspudec, so we can support OSD and have better menu ↵James Courtier-Dutton
support. Work still needs to be done on it and some xine-lib api changes. CVS patchset: 841 CVS date: 2001/10/20 17:51:58
2001-10-09overlay clut colorspace conversionMiguel Freitas
CVS patchset: 783 CVS date: 2001/10/09 22:20:11
2001-10-04hopefully fix problems detecting some subtitle colorsMiguel Freitas
(i forgot these breaks at the original code) CVS patchset: 734 CVS date: 2001/10/04 23:22:21
2001-09-27discover the colors used by the subtitlesMiguel Freitas
and assign a "readable" pallete to them CVS patchset: 701 CVS date: 2001/09/27 02:11:16