[vdr] Re: [Softdevice-devel] [ANNOUNCE] vdr-softdevice-0.3.0

Herbert Poetzl herbert at 13thfloor.at
Tue Oct 10 03:42:19 CEST 2006


On Mon, Oct 09, 2006 at 01:25:18AM +0200, Stefan Lucke wrote:
> Hello,
> 
> the softdevice team (Torgeir Veimo, Martin Wache and me, Stefan Lucke)
> is pleased to announce a new release of vdr's softdevice plugin.
> 
> General info:
>   Softdevice plugin enables vdr to run on your desktop with
>   so called budget cards. You'll get vdr output via framebuffer or X11-Xv or
>   DirectFB or vidix to your screen. Decoding is done via ffmpeg.
> 
> Supported vdr versions: (1.2.x,) 1.3.x and 1.4.x

segfaults here (100% reproducible) with or without
alpha blending (i.e. pseudo and software). the only
difference is the backtrace (CopyPicBuf vs *AlphaBlend)

# ./vdr -D1 -c/opt/CONFIG-1/ -P"softdevice -vo xv:"
[softdevice] processing args
[softdevice]   argv [0] = softdevice
[softdevice]   argv [1] = -vo
vo_argv: xv: 
[setup-softdevice] alsa ac3Mode set to: 0
[setup-softdevice] alsa AC3 device set to: hw:0,1
[setup-softdevice] alsa device set to: default
[setup-softdevice] A/V Offset set to (0)
[setup-softdevice] Cropping 2 lines from bottom
[setup-softdevice] Cropping 2 columns from left
[setup-softdevice] cropping mode set to 0 (none)
[setup-softdevice] cropping mode toggle key set to 0 (none)
[setup-softdevice] Cropping 2 columns from right
[setup-softdevice] Cropping 2 lines from top
[setup-softdevice] deinterlace method set to 1 lavc
[setup-softdevice] mainMenu: 1
[setup-softdevice] setting alpha blend mode to software
[softdevice] picture mirroring set to 0 (off)
[setup-softdevice] pixel format set to (YUY2)
[setup-softdevice] shouldSuspend to: 0
[setup-softdevice] syncTimerMode: sig
[softdevice] UseStretchBlitset to on
[setup-softdevice] vidBrightness: 50
[setup-softdevice] vidContrast: 50
[setup-softdevice] vidHue: 0
[setup-softdevice] vidSaturation: 50
[setup-softdevice] startup aspect set to (4:3 normal)
[softdevice] initializing Plugin
[softdevice] Initializing Video Out
[softdevice] ffmpeg build(3345152)
[XvVideoOut]: osd_image shmid = 24051722
[XvVideoOut]: got osd_image: width 1600 height 1200, bytes per line 3200
[XvVideoOut]: max area size 2046 x 2046
[XvVideoOut]: using area size 736 x 576
[softdevice] Subplugin successfully opend
[softdevice] Video Out seems to be OK
[softdevice] Initializing Audio Out
[softdevice] Audio out seems to be OK
[softdevice] A/V devices initialized, now initializing MPEG2 Decoder
DeinitXv
[XvVideoOut]: max area size 2046 x 2046
[XvVideoOut]: using area size 736 x 576
vout_pic[2304]:CopyPicBufAlphaBlend_YUV420P_YUY2 width 736 height 576
Segmentation fault (core dumped)


with the following backtrace

#0  yv12_to_yuy2_il_mmx2_line (dest1=0xb4723a34 "\020\200\020\200\020\200\020\200\020", dest2=0xb4723ff4 "\020\200\020\200\020\200\020\200", chromaWidth=368, 
    yc1=0xb6103ef8 '\020' <repeats 200 times>..., yc2=0xb61041d8 "\020\020\020\020", uc=0xb6103a9c "\200\200", vc=0xb61037ac "\200\200") at utils.c:133
133	    movntq(mm6,*(dest2 + 8));

(gdb) where
#0  yv12_to_yuy2_il_mmx2_line (dest1=0xb4723a34 "\020\200\020\200\020\200\020\200\020", dest2=0xb4723ff4 "\020\200\020\200\020\200\020\200", chromaWidth=368, 
    yc1=0xb6103ef8 '\020' <repeats 200 times>..., yc2=0xb61041d8 "\020\020\020\020", uc=0xb6103a9c "\200\200", vc=0xb61037ac "\200\200") at utils.c:133
#1  0xb675503a in CopyPicBufAlphaBlend_YUV420P_YUY2 (dst=0x8383ce8, src=0xb61043c0, width=736, height=576, OsdPy=0xb65ca008 '\020' <repeats 200 times>..., 
    OsdPu=0x8bc6338 '\200' <repeats 200 times>..., OsdPv=0x8be0148 '\200' <repeats 200 times>..., OsdPAlphaY=0xb6562008 "", OsdPAlphaUV=0x8bf9f58 "", OsdStride=736, 
    cutTop=2, cutBottom=2, cutLeft=2, cutRight=2) at PicBuffer.c:570
#2  0xb6755591 in CopyPicBufAlphaBlend (dst=0x8383ce8, src=0xb61043c0, OsdPy=0xb65ca008 '\020' <repeats 200 times>..., OsdPu=0x8bc6338 '\200' <repeats 200 times>..., 
    OsdPv=0x8be0148 '\200' <repeats 200 times>..., OsdPAlphaY=0xb6562008 "", OsdPAlphaUV=0x8bf9f58 "", OsdStride=736, cutTop=2, cutBottom=2, cutLeft=2, cutRight=2)
    at PicBuffer.c:700
#3  0xb6752874 in cXvVideoOut::YUV (this=0x8383680, buf=0xb61043c0) at video-xv.c:1820
#4  0xb674e1c9 in cVideoOut::DrawStill_420pl (this=0x8383680, buf=0xb61043c0) at video.c:468
#5  0xb674d79a in cVideoOut::Action (this=0x8383680) at video.c:133
#6  0x080ea83a in cThread::StartThread (Thread=0x8383adc) at thread.c:244
#7  0xb7f37c40 in start_thread () from /lib/tls/libpthread.so.0
#8  0xb7dbb0ee in clone () from /lib/tls/libc.so.6


note: the softdevice-cvs20060623 version I used before
works perfectly fine in the same vdr/setup  (although I h
ad to #define the FFMPEG_VERSION to make it work)

any ideas?

TIA,
Herbert

> Plugin's homepage is located at: http://softdevice.berlios.de/
> 
> Special hint:
>  For cle266 hardware decoding support via DirectFB, you'll need a fresh
>  version from todays DirectFB's cvs.
>  Further you'll need libcle266mpegdec which is available from:
>    http://sourceforge.net/projects/cle266mpegdec/
> 
> Changelog since last release:
> 2006-10-09: softdevice-0.3.0
> 2006-10-03:
>    - fix hang after long pause.
> 2006-10-01:
>    - enable cropping for video-shm.
>    - Remove some unneeded code and fix ctl->width/height setting.
> 2006-09-29:
>    - video-shm: silence warnings.
>    - video-xv: removed osdMutex.
>    - video-dfb: removed osdMutex.
>                 clear non video area when OSD is active to avoid fade effects.
> 2006-09-22:
>    - protect locking for old picture by a separate mutex.
>    - fix possible lost picture update and dropped areaMutex.
> 2006-09-21:
>    - introduce a mutex to protect calls to videoOut from SoftOsd
>    - initialize parameters for the vout->GetOSDMode() call
> 2006-09-19:
>    - fix "Error! Trying to unlock a nil picture... Ignoring" error message.
>    - use current_OsdMode instead of setupStore.OsdMode
> 2006-09-18:
>    - fix RefreshAll for NoVScaleCopyToBitmap()
>    - add a very simple cpu type and host system detection to configure
>    - fix changing from pseudo to software osd blending for video-xv
>    - remove no longer needed test for broken gcc compiler from configure
>    - combine shared memory checks into CheckShmIDs()
>    - improve error messages in video-shm.c
> 2006-09-17:
>    - replace "pshufw" with MMX commands to make scaling optimazations available
>      to processors without MMX2
>    - cleanup PicBuffer.c, release PicBuffers in destructor,...
>    - add linux framebuffer detection to configure
>    - disable libcle266mpegdec if no DirectFB is found
>    - add altivec optimizations to some AlphaBlend() and
>      yv12_to_yuy2_il_mmx2_line()
>    - make utils.c compile on non MMX machines, cleanup some #ifdefs
>    - fix compile issue with g++-4.1.1
>    - add NoVScaleCopyToBitmap() for RGB modes
> 2006-09-16:
>    - added -vo shm: to help option
>    - added support new fields from libcle266mpegdec-0.4
>    - video-dfb: removed check and support for DSBLIT_INTERLACED as DirectFB
>                 has buildin support for this now.
>    - disable cle266 support if DirectFB is not patched for this
>    - cle266: fix one aspect ratio info and configure (by Rolf Ahrenberg)
> 2006-09-12:
>    - don't continue on argument errors
> 2006-09-11:
>    - catch unrecognized options for dfb-out (reported by Rolf Ahrenberg)
> 2006-09-10:
>    - fix "NVidia software alpha blending OSD" issue, which turned out
>      to be a compiler problem with g++-4.1.1. (Many thanks to Prakash
>      Punnoor, Matthias Schwarzott, Chris Elsworth and all the others
>      who helped to fix this)
> 2006-09-09:
>    - video-xv.c: silence some warnings
>    - video-vidix: offer equalizer settings via OSD (brightness, hue,
>                   saturation and contrast)
>                   offer HW-deinetrlace via OSD when available
>                   (by Roland Praml)
> 2006-09-08:
>    - limit destination video offsets to even values
>    - fix typo in asignment
>    - fix xv-out with subplugins disabled
> 2006-09-04:
>    - fix wrong colors when using ShmClient (reported by Matthias Schwarzott
>      and derWolf at vdrportal)
>    - disable debuging printouts
>    - cleanup
>    - set sPicBuffer completly to zero
> 2006-08-27:
>    - adjust ffmpeg library order in configure
>    - enable different pixel formats in video-xv
>    - properly init ctl->key (reported by Matthias Schwarzott)
> 2006-08-05:
>    - video-dfb: disable reported failed flags in SetParams()
> 2006-07-25:
>    - no longer exit when a audio mode is not available, audio is only disabled.
>    - clean up audio-alsa
>    - init tmpOsdSurface and delete dirtyLines properly
>    - try to use the XVideo default brightness, hue etc. values on first start
>    - new option: "-vo xv:use-defaults", can be used to reset the values
>      of brightness, hue etc. to the default values. (Based on a patch
>      by Matthias Schwarzott)
> 2006-07-16:
>    - only link against libXi if necessary ( do we need libXi at all?)
>    - check explicitly for pkg-config in configure
>    - configure: "--with-ffmpeg-path" overrides pkg-config
>    - unconditionally set _NET_WM_FULLSCREEN Atom when going fullscreen (recent Metacity WM need it)
> 2006-07-12:
>    - fix segfault in OSD refresher.
> 2006-07-11:
>    - remove no longer defined FFMPEG_VERSION string
> 2006-07-10:
>    - move alsa related stuff into a separate file, enable build without alsa
>      support
>    - remove uneeded include of "sys/mman.h" and "sys/ioctl.h" from video.c
>    - set max_width and max_height for temporary PicBuffer
>    - remove uneeded include of "linux/fb.h" from softdevice.c
>    - fix possible endianness problems in SoftOsd.c
>    - add support for yuy2 pixel format to alpha blend and copy pic buf code
>    - change return value of AllocPicBuffer()
>    - change the parameters of yv12_to_yuy2_il_mmx() so that it can also be used
>      for not interlaced pictures
> 2006-06-25:
>    - video pixelformat and stretchblit mode can be locked by output driver, so
>      that changeing them is not offered via OSD.
>    - video-dfb: - Adapted radeon real alphablend handling to current DirectFB-cvs.
>                   It is now handled similary to via mode (with underlay).
>                 - In mgatv-out mode, video surface is now allways allocated with
>                   attribute DSCAPS_INTERLACED to support interlaced stretchblit
>                   of DirectFB-cvs.
>                 - Removed test #if directives introduced in first via hw-dec support.
>                 - Lock pixelformat and stretchblit mode in case via hw-decode
>                   and mgatv mode.
> 2006-06-21:
>    - video-dfb: changed pixel format for HW-decoding to I420. So accelerated and
>      unaccelerated modes use the same pixel format.
> 2006-06-18:
>    - ignore config.log on commit checks
>    - removed hardcoded FBDEV name in Makefile and configure
> 2006-06-17:
>    - cle266, video-dfb: added HW-decoder support
>    - configure: check for libcle266mpegdec instead of cle266mpegdec
>    - get frame buffer name at runtime:
>      1. via enviroment variable FRAMEBUFFER
>      2. try /dev/fb0 or /dev/fb/0
> 2006-06-16:
>    - video-dfb: fix via aspect ratio handling
> 2006-06-15:
>    - make configure a bit more verbose. A complete log is now saved in
>      config.log.
>    - fix delete <-> delete[] mismatch reported by Prakash Punnoor.
> 2006-06-09:
>    - activate mmx version of yv12_to_yuy2_il_ () for dfb, xv and vidix.
>    - name change libsubvdr-softdevice-METHOD.so.?? -> libsoftdevice-METHOD.so.?? .
>    - removed option -L . is obsolete since we can get the path we are loaded from,
>      at runtime (thanks to Petri Hintukainen).
> 2006-06-06:
>    - mmx version of yv12_to_yuy2_il_c(): yv12_to_yuy2_il_mmx2(). not yet called.
> 2006-05-30:
>    - set pic->format in AllocPicBuffer()
>    - more debug messages
> 2006-05-29:
>    - fix PICDEB
>    - fix a few stupid errors in VideoFilter.c, initialise more
>      variables in PicFilter.c
> 2006-05-27:
>    - move postproc stuff into VideoFilter.[ch]
>    - apply patch to use direct rendering
>    - add tests for older ffmpeg versions to configure
>    - add "--disable-mmx" and "--disable-mmx2" to configure
>    - fix possible segfaults in SoftOsd when using a zoom faktor
> 2006-05-23:
>    - fix VIA OSD transparency for newer DirectFB cvs versions
>    - merged some defines which belong together
>    - added 15:9 screen aspect
>    - fix postprocessing not offered via OSD even detected by configure
>    - reenable software alpha blending for video-shm
>    - move AlphaBlend into utils.c, clean up MMX defines
> 2006-05-07:
>    - video-dfb: preparation for DSBLIT_INTERLACED which results
>      in better displaying of downscaled 16:9 on 4:3 TVs with matrox.
>    - video-dfb: make YUY2 color info reordering dependant of
>      interlaced vs. progressive video.
> 2006-05-01:
>    - some fixes for DirectFB compile, configure & 64bit arch .
> 
> -- 
> Stefan Lucke
> _______________________________________________
> Softdevice-devel mailing list
> Softdevice-devel at lists.berlios.de
> https://lists.berlios.de/mailman/listinfo/softdevice-devel



More information about the vdr mailing list