summaryrefslogtreecommitdiff
path: root/src/video_out
AgeCommit message (Collapse)Author
2007-12-11Update all video output plugins to the new identifier/description interface.Diego 'Flameeyes' Pettenò
2007-12-11Update to the new identifier/description interface and call _().Diego 'Flameeyes' Pettenò
2007-11-19add support for GNU/kFreeBSDPetr Salinger ext:(%20)
It changes some "defined (__FreeBSD__)" into "defined (__FreeBSD_kernel__)" and "__FreeBSD_version" into "__FreeBSD_kernel_version". The changes are performed on places, where feature of kernel is tested. On some other places, feature of userland/libc is tested, on them "defined (__FreeBSD__)" remains. As proposed, include/configure.h cause __FreeBSD_kernel__ be defined if __FreeBSD__ is defined. --HG-- extra : transplant_source : %25%96K%05%E4Y%B15%94%60%15%FE1%8Ah%26Xy%8C/
2007-11-11Merge transplanted patches.Darren Salt
2007-11-11Reset the previous screen resolution after switching to fullscreen.Claudio Ciccani
This is because, while in shared mode the default resolution is taken from directfb config, in fullscreen mode the default resolution comes from fbdev configuration.
2007-11-11Reset the previous screen resolution after switching to fullscreen.Claudio Ciccani
This is because, while in shared mode the default resolution is taken from directfb config, in fullscreen mode the default resolution comes from fbdev configuration. (transplanted from 2ce76206b5c10b6f9cfc55a9edb0d883bfb446a2) --HG-- extra : transplant_source : %2C%E7b%06%B5%C1%0Bo%9C%FCU%A9%ED%B0%D8%83%BF%B4F%A2
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-10Merge from 1.1.Darren Salt
--HG-- rename : src/libxineadec/nsf.c => src/combined/nsf_decoder.c rename : src/demuxers/demux_nsf.c => src/combined/nsf_demuxer.c rename : src/combined/combined_wavpack.c => src/combined/wavpack_combined.c rename : src/combined/combined_wavpack.h => src/combined/wavpack_combined.h rename : src/combined/decoder_wavpack.c => src/combined/wavpack_decoder.c rename : src/combined/demux_wavpack.c => src/combined/wavpack_demuxer.c rename : src/demuxers/demux_ogg.c => src/combined/xine_ogg_demuxer.c rename : src/libxineadec/xine_speex_decoder.c => src/combined/xine_speex_decoder.c rename : src/libxinevdec/xine_theora_decoder.c => src/combined/xine_theora_decoder.c rename : src/libxineadec/xine_vorbis_decoder.c => src/combined/xine_vorbis_decoder.c rename : src/liba52/xine_a52_decoder.c => src/libxineadec/xine_a52_decoder.c rename : src/libdts/xine_dts_decoder.c => src/libxineadec/xine_dts_decoder.c rename : src/libfaad/xine_faad_decoder.c => src/libxineadec/xine_faad_decoder.c rename : src/libmad/xine_mad_decoder.c => src/libxineadec/xine_mad_decoder.c rename : src/libmusepack/xine_musepack_decoder.c => src/libxineadec/xine_musepack_decoder.c
2007-11-09Merge FSF address changes from 1.1 branch.Diego 'Flameeyes' Pettenò
--HG-- rename : src/combined/decoder_flac.c => src/combined/flac_decoder.c rename : src/combined/demux_flac.c => src/combined/flac_demuxer.c rename : src/libxineadec/nsf.c => src/combined/nsf_decoder.c rename : src/demuxers/demux_nsf.c => src/combined/nsf_demuxer.c rename : src/combined/combined_wavpack.c => src/combined/wavpack_combined.c rename : src/combined/combined_wavpack.h => src/combined/wavpack_combined.h rename : src/combined/decoder_wavpack.c => src/combined/wavpack_decoder.c rename : src/combined/demux_wavpack.c => src/combined/wavpack_demuxer.c rename : src/demuxers/demux_ogg.c => src/combined/xine_ogg_demuxer.c rename : src/libxineadec/xine_speex_decoder.c => src/combined/xine_speex_decoder.c rename : src/libxinevdec/xine_theora_decoder.c => src/combined/xine_theora_decoder.c rename : src/libxineadec/xine_vorbis_decoder.c => src/combined/xine_vorbis_decoder.c rename : src/liba52/xine_a52_decoder.c => src/libxineadec/xine_a52_decoder.c rename : src/libdts/xine_dts_decoder.c => src/libxineadec/xine_dts_decoder.c rename : src/libfaad/xine_faad_decoder.c => src/libxineadec/xine_faad_decoder.c rename : src/libmusepack/xine_musepack_decoder.c => src/libxineadec/xine_musepack_decoder.c
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-10-08Revert cheating invalid frame sizes after fixed frame allocation (continued).Reinhard Nißl
These cheats where hiding a frame allocation bug in FFmpeg decoder which was previously fixed.
2007-10-03Merge from 1.1.Darren Salt
2007-10-01Revert cheating invalid frame sizes after fixed frame allocation.Reinhard Nißl
These cheats where hiding a frame allocation bug in FFmpeg decoder which was previously fixed.
2007-08-26Merge from 1.1.Darren Salt
2007-08-26Protect previously shown frame from immediate reuse by decoder.Reinhard Nißl
It happend that the previously shown frame was still on screen while the decoder reused it already and the result was a mixed picture on screen. Protection is easy: just keep a reference to previously shown frame and it cannot be reused by the decoder until a frame duration has passed which should be sufficient to see the current frame on screen. Such referencing has already been implemented although it was not used for deinterlacing. Therefore it had been disabled to get an additional frame for decoding in coping with dropped frames. The change reenables referencing the previously shown frame.
2007-08-26Provide options to control ondemand disabling of bob deinterlacing.Reinhard Nißl
While disabling for progressive frames was ment to improve DVD playback, it turned out that many TV broadcasters set this flag too, although their content is not progressive. Adding an option allows the user now to enable this feature when the watched streams make correct use of this flag. Another option allows to disable bob deinterlacing when a scaled OSD is on screen. As bobbing adds some noise to horizontal lines the OSD quality might be improved by enabling this option.
2007-08-26Protect drawable from beeing changed while drawing.Reinhard Nißl
When xine-ui switches to fullscreen mode or back again, it will change the drawable by sending XINE_GUI_SEND_DRAWABLE_CHANGED. This may lead to BadDrawable X Errors when the video out thread is still using the old drawable for drawing. The changes below block XINE_GUI_SEND_DRAWABLE_CHANGED from changing the drawable while it is used for drawing.
2007-08-16Merge all but the open()/glibc workaround from 1.1.Darren Salt
2007-07-26propagate frame changes in xxmc_do_update_frame() to intercepted framesReinhard Nißl
XXMC doesn't work well with the way how intercepting frames is implemented for postprocessing as xxmc_do_update_frame() may change the native frame's format after the frame has been intercepted. As intercepting XXMC frames didn't work in the past, we can imply that postplugins which will support XXMC do know about this special behaviour. So the idea is to detect any changes on the native frame and propagate these changes to all intercepted frames. At the same time, we check that all intercepted frames still share the same data (which we are about to change) with the native frame and abort otherwise. --HG-- extra : transplant_source : c%D5%13%21jF%1E%D4%AB%D7%DB%22%27%0A%CB%0E%7F%CF%84v
2007-07-26access native frame where an intercepted can be passedReinhard Nißl
When postprocessing is activated, the decoder will pass intercepted frames to the video driver. The driver must nolonger assume that a native frame will be passed from the decoder -- it's necessary to use the supplied macros which give access to the native frame even when an intercepted frame gets passed. --HG-- extra : transplant_source : %19%E7%83q1%F6%FEJ%12%A4%1D%AC%CF%7F%2Cn%5BJ%92Y
2007-07-26initialize pointer to native frame in acceleration dataReinhard Nißl
--HG-- extra : transplant_source : %EA%EBm%3Exb%A5%3C%07%BC%F0%D9%E1%00%F7%D1%E0%D5%94%ED
2007-07-26report unsupported frame format when blending overlayReinhard Nißl
--HG-- extra : transplant_source : y%93%01Dn%EE%9B%DA%60%84%F0%DAT%B7%99%AD%F9%90%03%B0
2007-07-26report unsupported frame format and abortReinhard Nißl
--HG-- extra : transplant_source : IsD%AB%2Ci%A1%0F%AE%21%16eg%F2%98%D5%DD%87%DE%3F
2007-08-02Merge from 1.1.Darren Salt
2007-07-26clip overlay against sub image when calling XvMCCompositeSubpicture()Reinhard Nißl
Blending functions like _x_blend_xx44() take care to clip the overlay against the destination bitmap. The same clipping must be applied to determine the relevant area in the destination bitmap for the call to XvMCCompositeSubpicture().
2007-06-17Merge 1.1 branch, with the BE_/LE_ macros renamed.Diego 'Flameeyes' Pettenò
2007-06-15fix possible crash in xcbxv output plugin"Christoph Pfister"
A null pointer dereference happens if reading a xv port attribute (which has been reported as readable) fails. This issue exists for example with proprietary (and a bit buggy ...) ati drivers; nevertheless it shouldn't cause a segmentation fault (the non-xcb version simply stores an unitialised value). This patches solves the issue in a clean way for both branches. Fixes debian bug #428612 :-)
2007-06-15Use xine_xcalloc() to make sure nothing will overflow.Diego 'Flameeyes' Pettenò
2007-06-15Change variable to be size_t if sizeof() is used to compare to it.Diego 'Flameeyes' Pettenò
2007-06-14Merge from 1.1 branch.Diego 'Flameeyes' Pettenò
2007-06-13pgx32/64 need SUNDGA_CFLAGSAlbert Lee
2007-06-13Avoid name collison (don't redefine TRANSPARENT).Albert Lee
2007-06-12A nice simple merge from 1.1.Darren Salt
Hopefully, I've applied all of the $(LTLIBINTL) changes correctly...
2007-08-12Add a few missing "\n"s.Darren Salt
2007-06-09Add $(LTLIBINTL) for a few plugins which I'd missed.Darren Salt
2007-06-09Add $(LTLIBINTL) wherever objdump -R shows a dependency on gettext functions.Darren Salt
Some plugins may have been missed due to them not being built here.
2007-06-08Added $(LTLIBINTL) to several targetsBen Taylor
2007-06-08Merge from 1.1.Darren Salt
2007-06-06[PATCH] video_out_fb crashSteve Freeland
I discovered some problems with the framebuffer output driver. The first problem I had was a segfault when trying to play a 480x360 clip on a 640x480 display. I traced it to the yuv420_rgb16() color conversion function, which was overrunning the input buffer (the "y" part of the image). The reason was that it was being called downstack from fb_frame_proc_slice(), multiple times for each 16-pixel high horizontal slice of the image. When it got to the last slice, only 8 pixels were left to the bottom but it still tried to process a 16-pixel high slice. Nosing around a bit, I compared the configuration of the color converter as used by the fb driver to the xshm driver and found some oddities: 1) The color converter was configured with a "source height" of 16 pixels no matter what the size of the image, and a "dest height" based on what was referred to within video_out_fb.c as a "stripe" -- essentially an input slice scaled up or down as required by the output size. 2) Apparently to prevent the above from causing problems, the position in the output buffer was managed by special code -- see the "stripe_incr" variable. 3) The xshm driver calls yuv2rgb_next_slice() with a NULL argument at the beginning of each frame to allow the color converter to reset its tracking of the slice-by-slice progress through the image; the fb driver does not. I'm not sure exactly why it was done that way, but my best guess would be that whoever coded it didn't know about the need to call yuv2rgb_next_slice() with a NULL argument, and the rest was built up to get it to mostly work without that. The attached patch changes the behaviour to match that of the xshm driver, and also removes the reset_dest_pointers() function, replacing its single invocation with one to fb_frame_field(), which is identical after removing the "stripe" management. It fixed my crash. Can anyone see if I've misunderstood what was going on? If not, it should probably be applied to the official version.
2007-06-01Port Simon Farnsworth's xv deinterlacing fix to xcbxv.Darren Salt
2007-05-17Convert comments (and the occasional string where it doesn't matter) to UTF-8.Darren Salt
2007-05-02[PATCH] Enhance logging in demux_ts, input_dvb and video_out_xvSimon Farnsworth
The three attached patches (against 1.1.6) each increase the amount of debug logging in their respective components. We've found the extra logging useful when trying to track down faults. I've split this into three patches to make it easier to apply only some of our changes. -- Comments welcome, Simon Farnsworth
2007-05-04[PATCH] Fix deinterlacing in video_out_xv.cSimon Farnsworth
Xv drivers are permitted to return a bigger image than we asked for, to work around hardware constraints. If this happens, 1.1.6's video_out_xv cannot deinterlace properly. Fix this by deinterlacing based on the width of the Xv image; the Xv driver will discard the extra horizontal data. Without this patch, you get a barber-pole effect if the input video is interlaced *and* the Xv driver chooses to round up the width of the requested image. -- Simon Farnsworth
2007-05-06Merge Reinhard Nissl's xxmc fixes and related changes.Darren Salt
2007-04-16[1.2 patch] removal of deinterlace.[c/h] and xvmc deinterlacersChristoph Pfister
Hi, With the last patch posted deinterlace.c became obsolete. deinterlace.h was only used in video_out_xvmc.c for the defines. I removed the deinterlacer stuff from xvmc in my patch, because there is only onefield which is hardware accelerated. However it has very bad quality compared to other deinterlacers or even compared to non-interlaced video and it's a very cheap one to run in software for those who absolutely want to use it. Christoph
2007-04-16removal of [xcb]xv deinterlacersChristoph Pfister
Hi, As the deinterlacers in video_out_[xcb]xv.c are implemented purely in software there's no need to have them there. Instead use the post deinterlacer plugin. Both plugins tested with kaffeine and no regression found. Christoph
2007-05-31Make vidix buildable again.Darren Salt
2007-05-31Move vidix and libdha into contrib/.Diego 'Flameeyes' Pettenò
--HG-- rename : src/video_out/libdha/.hgignore => contrib/libdha/.hgignore rename : src/video_out/libdha/AsmMacros.h => contrib/libdha/AsmMacros.h rename : src/video_out/libdha/Makefile.am => contrib/libdha/Makefile.am rename : src/video_out/libdha/README => contrib/libdha/README rename : src/video_out/libdha/bin/Makefile.am => contrib/libdha/bin/Makefile.am rename : src/video_out/libdha/bin/README => contrib/libdha/bin/README rename : src/video_out/libdha/bin/mapdev.copyright => contrib/libdha/bin/mapdev.copyright rename : src/video_out/libdha/bin/mapdev.vxd => contrib/libdha/bin/mapdev.vxd rename : src/video_out/libdha/cpu_flush.c => contrib/libdha/cpu_flush.c rename : src/video_out/libdha/irq.c => contrib/libdha/irq.c rename : src/video_out/libdha/kernelhelper/Makefile.am => contrib/libdha/kernelhelper/Makefile.am rename : src/video_out/libdha/kernelhelper/README => contrib/libdha/kernelhelper/README rename : src/video_out/libdha/kernelhelper/dhahelper.c => contrib/libdha/kernelhelper/dhahelper.c rename : src/video_out/libdha/kernelhelper/dhahelper.h => contrib/libdha/kernelhelper/dhahelper.h rename : src/video_out/libdha/kernelhelper/test.c => contrib/libdha/kernelhelper/test.c rename : src/video_out/libdha/libdha.c => contrib/libdha/libdha.c rename : src/video_out/libdha/libdha.h => contrib/libdha/libdha.h rename : src/video_out/libdha/mmi.c => contrib/libdha/mmi.c rename : src/video_out/libdha/mtrr.c => contrib/libdha/mtrr.c rename : src/video_out/libdha/oth/Makefile.am => contrib/libdha/oth/Makefile.am rename : src/video_out/libdha/oth/pci.db => contrib/libdha/oth/pci.db rename : src/video_out/libdha/pci.c => contrib/libdha/pci.c rename : src/video_out/libdha/pci_db2c.awk => contrib/libdha/pci_db2c.awk rename : src/video_out/libdha/ports.c => contrib/libdha/ports.c rename : src/video_out/libdha/sysdep/AsmMacros_alpha.h => contrib/libdha/sysdep/AsmMacros_alpha.h rename : src/video_out/libdha/sysdep/AsmMacros_arm32.h => contrib/libdha/sysdep/AsmMacros_arm32.h rename : src/video_out/libdha/sysdep/AsmMacros_generic.h => contrib/libdha/sysdep/AsmMacros_generic.h rename : src/video_out/libdha/sysdep/AsmMacros_ia64.h => contrib/libdha/sysdep/AsmMacros_ia64.h rename : src/video_out/libdha/sysdep/AsmMacros_powerpc.h => contrib/libdha/sysdep/AsmMacros_powerpc.h rename : src/video_out/libdha/sysdep/AsmMacros_sparc.h => contrib/libdha/sysdep/AsmMacros_sparc.h rename : src/video_out/libdha/sysdep/AsmMacros_x86.h => contrib/libdha/sysdep/AsmMacros_x86.h rename : src/video_out/libdha/sysdep/Makefile.am => contrib/libdha/sysdep/Makefile.am rename : src/video_out/libdha/sysdep/libdha_os2.c => contrib/libdha/sysdep/libdha_os2.c rename : src/video_out/libdha/sysdep/libdha_win32.c => contrib/libdha/sysdep/libdha_win32.c rename : src/video_out/libdha/sysdep/pci_386bsd.c => contrib/libdha/sysdep/pci_386bsd.c rename : src/video_out/libdha/sysdep/pci_alpha.c => contrib/libdha/sysdep/pci_alpha.c rename : src/video_out/libdha/sysdep/pci_arm32.c => contrib/libdha/sysdep/pci_arm32.c rename : src/video_out/libdha/sysdep/pci_bsdi.c => contrib/libdha/sysdep/pci_bsdi.c rename : src/video_out/libdha/sysdep/pci_freebsd.c => contrib/libdha/sysdep/pci_freebsd.c rename : src/video_out/libdha/sysdep/pci_generic_cpu.c => contrib/libdha/sysdep/pci_generic_cpu.c rename : src/video_out/libdha/sysdep/pci_generic_os.c => contrib/libdha/sysdep/pci_generic_os.c rename : src/video_out/libdha/sysdep/pci_ia64.c => contrib/libdha/sysdep/pci_ia64.c rename : src/video_out/libdha/sysdep/pci_isc.c => contrib/libdha/sysdep/pci_isc.c rename : src/video_out/libdha/sysdep/pci_linux.c => contrib/libdha/sysdep/pci_linux.c rename : src/video_out/libdha/sysdep/pci_lynx.c => contrib/libdha/sysdep/pci_lynx.c rename : src/video_out/libdha/sysdep/pci_mach386.c => contrib/libdha/sysdep/pci_mach386.c rename : src/video_out/libdha/sysdep/pci_netbsd.c => contrib/libdha/sysdep/pci_netbsd.c rename : src/video_out/libdha/sysdep/pci_openbsd.c => contrib/libdha/sysdep/pci_openbsd.c rename : src/video_out/libdha/sysdep/pci_os2.c => contrib/libdha/sysdep/pci_os2.c rename : src/video_out/libdha/sysdep/pci_powerpc.c => contrib/libdha/sysdep/pci_powerpc.c rename : src/video_out/libdha/sysdep/pci_sco.c => contrib/libdha/sysdep/pci_sco.c rename : src/video_out/libdha/sysdep/pci_sparc.c => contrib/libdha/sysdep/pci_sparc.c rename : src/video_out/libdha/sysdep/pci_svr4.c => contrib/libdha/sysdep/pci_svr4.c rename : src/video_out/libdha/sysdep/pci_win32.c => contrib/libdha/sysdep/pci_win32.c rename : src/video_out/libdha/sysdep/pci_x86.c => contrib/libdha/sysdep/pci_x86.c rename : src/video_out/libdha/test.c => contrib/libdha/test.c rename : src/video_out/vidix/Makefile.am => contrib/vidix/Makefile.am rename : src/video_out/vidix/README => contrib/vidix/README rename : src/video_out/vidix/drivers/Makefile.am => contrib/vidix/drivers/Makefile.am rename : src/video_out/vidix/drivers/cyberblade_regs.h => contrib/vidix/drivers/cyberblade_regs.h rename : src/video_out/vidix/drivers/cyberblade_vid.c => contrib/vidix/drivers/cyberblade_vid.c rename : src/video_out/vidix/drivers/genfb_vid.c => contrib/vidix/drivers/genfb_vid.c rename : src/video_out/vidix/drivers/glint_regs.h => contrib/vidix/drivers/glint_regs.h rename : src/video_out/vidix/drivers/mach64.h => contrib/vidix/drivers/mach64.h rename : src/video_out/vidix/drivers/mach64_vid.c => contrib/vidix/drivers/mach64_vid.c rename : src/video_out/vidix/drivers/mga_vid.c => contrib/vidix/drivers/mga_vid.c rename : src/video_out/vidix/drivers/nvidia_vid.c => contrib/vidix/drivers/nvidia_vid.c rename : src/video_out/vidix/drivers/pm2_vid.c => contrib/vidix/drivers/pm2_vid.c rename : src/video_out/vidix/drivers/pm3_regs.h => contrib/vidix/drivers/pm3_regs.h rename : src/video_out/vidix/drivers/pm3_vid.c => contrib/vidix/drivers/pm3_vid.c rename : src/video_out/vidix/drivers/radeon.h => contrib/vidix/drivers/radeon.h rename : src/video_out/vidix/drivers/radeon_vid.c => contrib/vidix/drivers/radeon_vid.c rename : src/video_out/vidix/drivers/savage_regs.h => contrib/vidix/drivers/savage_regs.h rename : src/video_out/vidix/drivers/savage_vid.c => contrib/vidix/drivers/savage_vid.c rename : src/video_out/vidix/drivers/sis_bridge.c => contrib/vidix/drivers/sis_bridge.c rename : src/video_out/vidix/drivers/sis_defs.h => contrib/vidix/drivers/sis_defs.h rename : src/video_out/vidix/drivers/sis_regs.h => contrib/vidix/drivers/sis_regs.h rename : src/video_out/vidix/drivers/sis_vid.c => contrib/vidix/drivers/sis_vid.c rename : src/video_out/vidix/drivers/unichrome_regs.h => contrib/vidix/drivers/unichrome_regs.h rename : src/video_out/vidix/drivers/unichrome_vid.c => contrib/vidix/drivers/unichrome_vid.c rename : src/video_out/vidix/fourcc.h => contrib/vidix/fourcc.h rename : src/video_out/vidix/vidix.h => contrib/vidix/vidix.h rename : src/video_out/vidix/vidix.txt => contrib/vidix/vidix.txt rename : src/video_out/vidix/vidixlib.c => contrib/vidix/vidixlib.c rename : src/video_out/vidix/vidixlib.h => contrib/vidix/vidixlib.h
2007-05-16Merge changes from main 1.2 repositoryMatt Messier
2007-05-17Merge from 1.1.Darren Salt