[MPlayer-advusers] [BUG] Problem with swscaler

Fabio Russo f.russo at sosinformatica.com
Mon Dec 12 09:44:16 CET 2005


Hi,

this happens everytime I try to scale a video with -vf scale, either in
mplayer and in mencoder.
Is that a known issue? I tried a (fast) search on -users, but I wasn't
able to find anything useful...
Info, log & backtrace attached.
Thanks for the attention.
-- 
Kind regards,
Fabio Russo

f.russo at sosinformatica.com
-------------- next part --------------
uname -a:
Linux puppalo 2.6.13.4 #1 SMP Tue Oct 11 16:58:13 CEST 2005 i686 i686 i386 GNU/Linux

ls -l /lib/libc[.-]*:
-rwxr-xr-x  1 root root 1348602 2004-10-05 14:05 /lib/libc.so.6

gcc -v:
Reading specs from /usr/lib/gcc-lib/i586-suse-linux/3.3.4/specs
Configured with: ../configure --enable-threads=posix --prefix=/usr --with-local-prefix=/usr/local --infodir=/usr/share/info --mandir=/usr/share/man --enable-languages=c,c++,f77,objc,java,ada --disable-checking --libdir=/usr/lib --enable-libgcj--with-gxx-include-dir=/usr/include/g++ --with-slibdir=/lib --with-system-zlib --enable-shared --enable-__cxa_atexit i586-suse-linux
Thread model: posix
gcc version 3.3.4 (pre 3.3.5 20040809)

ld -v:
GNU ld version 2.15.91.0.2 20040727 (SuSE Linux)

as --version:
GNU assembler 2.15.91.0.2 20040727 (SuSE Linux)
Copyright 2002 Free Software Foundation, Inc.
This program is free software; you may redistribute it under the terms of
the GNU General Public License.  This program has absolutely no warranty.
This assembler was configured for a target of `i586-suse-linux'.

cat /proc/cpuinfo:
processor	: 0
vendor_id	: GenuineIntel
cpu family	: 15
model		: 3
model name	: Intel(R) Pentium(R) 4 CPU 3.00GHz
stepping	: 4
cpu MHz		: 2999.280
cache size	: 1024 KB
physical id	: 0
siblings	: 2
core id		: 0
cpu cores	: 1
fdiv_bug	: no
hlt_bug		: no
f00f_bug	: no
coma_bug	: no
fpu		: yes
fpu_exception	: yes
cpuid level	: 5
wp		: yes
flags		: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe pni monitor ds_cpl cid xtpr
bogomips	: 6005.70

processor	: 1
vendor_id	: GenuineIntel
cpu family	: 15
model		: 3
model name	: Intel(R) Pentium(R) 4 CPU 3.00GHz
stepping	: 4
cpu MHz		: 2999.280
cache size	: 1024 KB
physical id	: 0
siblings	: 2
core id		: 0
cpu cores	: 1
fdiv_bug	: no
hlt_bug		: no
f00f_bug	: no
coma_bug	: no
fpu		: yes
fpu_exception	: yes
cpuid level	: 5
wp		: yes
flags		: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe pni monitor ds_cpl cid xtpr
bogomips	: 5997.66


-------------- next part --------------
alk at puppalo:~> gdb --args mplayer -v test.avi -vf scale=640:480
GNU gdb 6.2.1
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type show copying to see the conditions.
There is absolutely no warranty for GDB.  Type show warranty for details.
This GDB was configured as i586-suse-linux...Using host libthread_db library /lib/tls/libthread_db.so.1.

(gdb) r
Starting program: /usr/local/bin/mplayer -v test.avi -vf scale=640:480
[Thread debugging using libthread_db enabled]
[New Thread 1101127744 (LWP 13466)]
Using GNU internationalization
Original domain: messages
Original dirname: /usr/share/locale
Current domain: mplayer
Current dirname: /usr/local/share/locale

MPlayer dev-CVS-051212-00:35-3.3.4 (C) 2000-2005 MPlayer Team
CPU: Intel Pentium 4/Celeron D Prescott; Xeon Nocona (Family: 15, Stepping: 4)
CPUflags:  MMX: 1 MMX2: 1 3DNow: 0 3DNow2: 0 SSE: 1 SSE2: 1
Compiled for x86 CPU with extensions: MMX MMX2 SSE SSE2


get_path('codecs.conf') -> '/home/alk/.mplayer/codecs.conf'
Reading /home/alk/.mplayer/codecs.conf: Can't open '/home/alk/.mplayer/codecs.conf': No such file or directory
Reading /usr/local/etc/mplayer/codecs.conf: Can't open '/usr/local/etc/mplayer/codecs.conf': No such file or directory
Using built-in default codecs.conf.
CommandLine: '-v' 'test.avi' '-vf' 'scale=640:480'
init_freetype
get_path('font/font.desc') -> '/home/alk/.mplayer/font/font.desc'
font: can't open file: /home/alk/.mplayer/font/font.desc
Font /usr/local/share/mplayer/font/font.desc loaded successfully! (206 chars)
Using MMX (with tiny bit MMX2) Optimized OnScreenDisplay
Failed to open /dev/rtc: Device or resource busy (it should be readable by the user.)
Using nanosleep() timing
get_path('input.conf') -> '/home/alk/.mplayer/input.conf'
Can't open input config file /home/alk/.mplayer/input.conf: No such file or directory
Can't open input config file /usr/local/etc/mplayer/input.conf: No such file or directory
Falling back on default (hardcoded) input config
Setting up LIRC support...
mplayer: could not connect to socket
mplayer: Permission denied
Failed to open LIRC support.
You will not be able to use your remote control.
get_path('test.avi.conf') -> '/home/alk/.mplayer/test.avi.conf'
Playing test.avi.
get_path('sub/') -> '/home/alk/.mplayer/sub/'
[file] File size is 3145728 bytes
STREAM: [file] test.avi
STREAM: Description: File
STREAM: Author: Albeu
STREAM: Comment: based on the code from ??? (probably Arpi)
Detaching after fork from child process 13469.
CACHE_PRE_INIT: 0 [0] 0  pre:0  eof:0
Cache fill:  0.00% (0 bytes)
AVI file format detected.
list_end=0x2292
======= AVI Header =======
us/frame: 40000  (fps=25.000)
max bytes/sec: 0
padding: 0
MainAVIHeader.dwFlags: (272) HAS_INDEX IS_INTERLEAVED
frames  total: 75458   initial: 0
streams: 2
Suggested BufferSize: 0
Size:  680 x 544
==========================
list_end=0x10F4
==> Found video stream: 0
====== STREAM Header =====
Type: vids   FCC: divx (78766964)
Flags: 0
Priority: 0   Language: 0
InitialFrames: 0
Rate: 1000000/40000 = 25.000
Start: 0   Len: 75458
Suggested BufferSize: 91067
Quality 0
Sample size: 0
==========================
Found 'bih', 40 bytes of 40
======= VIDEO Format ======
  biSize 40
  biWidth 680
  biHeight 544
  biPlanes 1
  biBitCount 24
  biCompression 808802372='DX50'
  biSizeImage 1109760
===========================
Regenerating keyframe table for MPEG4 video
list_end=0x2186
==> Found audio stream: 1
====== STREAM Header =====
Type: auds   FCC:  (0)
Flags: 0
Priority: 0   Language: 0
InitialFrames: 1
Rate: 12000/1 = 12000.000
Start: 0   Len: 36220032
Suggested BufferSize: 5312
Quality -1
Sample size: 1
==========================
Found 'wf', 30 bytes of 18
======= WAVE Format =======
Format Tag: 85 (0x55)
Channels: 2
Samplerate: 48000
avg byte/sec: 12000
Block align: 1
bits/sample: 0
cbSize: 12
mp3.wID=1
mp3.fdwFlags=0x2
mp3.nBlockSize=288
mp3.nFramesPerBlock=1
mp3.nCodecDelay=1393
===========================
list_end=0x2292
AVI: dmlh found (size=248) (total_frames=75458)
list_end=0x26AEFB32
Found movie at 0x280C - 0x26AEFB32
cache_stream_seek: WARNING! Can't seek to 0x26AEFB32 !
Auto-selected AVI audio ID = 1
Auto-selected AVI video ID = 0
AVI: Searching for audio stream (id:1)
AVI video size=612167830 (75458)  audio size=36220032
VIDEO:  [DX50]  680x544  24bpp  25.000 fps  1622.5 kbps (198.1 kbyte/s)
[V] filefmt:3  fourcc:0x30355844  size:680x544  fps:25.00  ftime:=0.0400
get_path('sub/') -> '/home/alk/.mplay
get_path('default.sub') -> '/home/alk/.mplayer/default.sub'
==========================================================================
Opening audio decoder: [mp3lib] MPEG layer-2, la
dec_audio: Allocating 460
mp3lib: made decode tables with MMX optimization
mp3lib: using MMX optimized decore!
MP3lib: init lay
MPEG 1.0, Layer III, 48000 Hz 96 kbit Joint-Stereo, BPF: 288
Channels: 2, copyright: No, original: Yes, CRC: No, emphasis: 0
AUDIO: 48000 Hz, 2 ch, s16le, 96.0 kbit/6.25% (ratio: 12000->192000)
Selected audio codec: [mp3] afm: mp3lib (mp3lib MPEG layer-2, 
=============================================================
X11 opening display: :0
vo: X11 color mask:  FFFF  (R:F800 G:7E0 B:1F)
vo: X11 running at 1280x1024 with depth 16 and 16 bpp (:0 => local display)
[x11] Detected wm supports NetWM.
[x11] Detected wm supports FULLSCREEN state.
[x11] Detected wm supports ABOVE state.
[x11] Detected wm supports BELOW state.
[x11] Detected wm supp
[x11] Current fstype setting honours FULLSCREEN STAYS_ON_TOP ABOV
[xv common] Drawing colorkey manually.
[xv common] Using colorkey from Xv (0x00083e).
[xv common] Maximum source image dimensions: 2046x2046
Opening video filter: [scale w=640 h=480]
SwScale params: 640 x 480 (-1=no scaling)
==========================================================================
Opening video decoder: [ffmpeg] FFmpeg's libavcodec codec fa
INFO: libavcodec init OK!
Selected video codec: [ffodivx] vfm: ffmpeg (FFmpeg MPEG-4)
==========================================================================
Building audio filter chain for 48000Hz/2ch/s16le -> 0Hz/0ch/??
[libaf] Adding filter dummy
[dummy] Was reinitialized: 48000Hz/2ch/s16le
[dummy] Was reinitialized: 48000Hz/2ch/s16le
alsa-init: requested format: 48000 Hz, 2 channels, 9
alsa-init: compiled for ALSA-1.0.6
alsa-init: setup for 1/2 channel(s)
alsa-init: 1 soundcard found, using: default
alsa-init: pcm opend in block-mode
alsa-init: chunksize set to 1024
alsa-init: fragcount=16
alsa-init: got buffersize=65536
alsa: 48000 Hz/2 channels/4 bpf/65536 bytes buffer/Signed 16 bit Little Endian
AO: [alsa] 48000Hz 2ch s16le (2 bytes per sample)
AO: Description: ALSA-0.9.x-1.x audio output
AO: Author: Alex Beregszaszi, Zsolt Barat <joy at streamminister.de>
AO: Comment: under developement
Building audio filter chain for 48000Hz/2ch/s16le -> 48000Hz/2ch/s16le...
[dummy] Was reinitialized: 48000Hz
[dummy] Was reinitialized: 48000Hz/2ch/s16le
Starting playback...
alsa-space: free space = 65536, prepared --
[ffmpeg] aspect_ratio: 1.250000
VDec: vo config request - 680 x 544 (pr
Trying filter chain: scale vo
VDec: using Planar YV12 as output csp (no 0)
Movie-Aspect is 1.25:1 - prescaling to correct movie as
VO Config (680x544->680x544,flags=1,'MPlayer',0x32315659)
SwScaler: reducing / aligning filtersize 6 -> 8
SwScaler: reducing / aligning filtersize 6 -> 8
SwScaler: reducing / aligning filtersize 6 -> 5
SwScaler: reducing / aligning filtersize 6 -> 5

SwScaler: BICUBIC scaler, from Planar YV12 to Planar 
SwScaler: using 8-tap MMX scaler for hori
SwScaler: using 8-tap MMX 
SwScaler: using n-tap 
SwScaler
REQ: flags=0x437  req=0x0
VO: [xv] 640x480 => 640x512 Planar YV12  [fs]
VO: Description: X11/Xv
VO: Author: Gerd Knorr <kraxel at goldbach.in-berlin.de> and others
Xvideo image format: 0x32595559 (YUY2) 
Xvideo image format: 0x32315659 (YV12) planar
Xvideo image format: 0x59565955 (
Xvideo image format: 0x30323449 (I420) planar
using Xvideo port 53 for hw scaling
[xv-fs] dx: 40 dy: 0 dw:
[xv] dx: 40 dy: 0 dw:
*** [vo] Allocating mp_image_t, 640x480x12bpp YU
*** [scale] Allocating (slices) mp_image_t, 688x544x12bpp YUV p
[xv] dx: 0 dy: 0 dw: 1280 dh: 1024
[xv-fs] dx: 40 dy: 0 dw: 1200 dh: 1024
XXX initial  v_pts=0.000  a_pos=5312 (0.443)   1 ??% ??% ??,?% 0 0
[mpeg4 @ 0x85ff168]frame skip 8
*** [scale] Allocating (slices) mp_image_t, 688x544x12bpp YUV planar, 561408 bytes

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 1101127744 (LWP 13466)]
0x081e7b72 in hScale_MMX2 (dst=Variable dst is not available.
) at swscale_template.c:2086
2086                    asm volatile(
(gdb) bt
#0  0x081e7b72 in hScale_MMX2 (dst=Variable dst is not available.
) at swscale_template.c:2086
Cannot access memory at address 0xfffffd84
(gdb) disass $pc-32 $pc+32
Dump of assembler code from 0x81e7b52 to 0x81e7b92:
0x081e7b52 <hScale_MMX2+416>:   or     %dl,0x
0x081e7b55 <hScale_MMX2+419>:   lds    0xbc8d0076(%ebp),%ecx
0x081e7b5b <hScale_MMX2+425>:   daa
0x081e7b5c <hScale_MMX2+426>:   add    %al,(%eax)
0x081e7b5e <hScale_MMX2+428>:   add    %al,(%eax)
0x081e7b60 <hScale_MMX2+430>:   movzwl (%edx,%ebp,1),%eax
0x081e7b64 <hScale_MMX2+434>:   movzwl 0x2(%edx,%ebp,1),%ebx
0x081e7b69 <hScale_MMX2+439>:   movq   (%ecx,%ebp,8),%mm1
0x081e7b6d <hScale_MMX2+443>:   movq   0x10(%ecx,%ebp,8),%mm3
0x081e7b72 <hScale_MMX2+448>:   movd   (%esi,%eax,1),%mm0
0x081e7b76 <hScale_MMX2+452>:   movd   (%esi,%ebx,1)
0x081e7b7a <hScale_MMX2+456>:   punpckl
0x081e7b7d <hScale_MMX2+459>:   punpckl
0x081e7b80 <hScale_MMX2+462>:   pmaddwd %mm1,%mm0
0x081e7b83 <hScale_MMX2+465>:   pmaddwd %mm2,%mm3
0x081e7b86 <hScale_MMX2+468>:   movq   0x8(%ecx,%ebp,8),%mm1
0x081e7b8b <hScale_MMX2+473>:   movq   0x18(%ecx,%ebp,8),%mm5
0x081e7b90 <hScale_MMX2+478>:   movd   0x4(%esi,
End of assembler dump.
(gdb) info all-registers
eax            0x0      0
ecx            0x8827658        142767704
edx            0x8826250        142762576
ebx            0x0      0
esp            0xbfa30c8c       0xbfa30c8c
ebp            0xfffffd80       0xfffffd80
esi            0x154    340
edi            0x8835820        142825504
eip            0x81e7b72        0x81e7b72
eflags         0x210203 2163203
cs             0x73     115
ss             0x7b     123
ds             0x7b     123
es             0x7b     123
fs             0x0      0
gs             0x33     51
st0            -nan(0x3f7e3f7e3f7e3f7e) (raw 0xffff3f7e3f7e3f7e3f
st1            -nan(0xff5703f03cb9)     (raw
st2            -nan(0x7f007f007f00
st3            -nan(0xfeca075a3a
st4            -nan(0x1
st5            -nan(0x201456fff
st6            -nan(0x2000200020002)    (raw 0xffff0002000200020002)
st7            <invalid float value>    (raw 0xffff00000000
fctrl          0x37f    895
fstat          0x120    288
ftag           0xaaaa   43690
fiseg          0x73     115
fioff          0x81081a1        135299489
foseg          0x7b     123
fooff          0xbfa3113c       -1079832260
fop            0x54e    1358
xmm0           {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double =
    0xff <repeats 16 times>}, v8_int16 = {0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff}, v4_int32
    0xffffffff, 0xffffffff, 0
  uint128 = 0xffffffffffffffffffffffffffffffff}
xmm1           {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x8000000000000000, 0x8000000000000000}, v16_int
    0xff <repeats 16 times>}, v8_int16 = {0xfff
    0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff}, v2_int64 = {0xffffffffffffffff, 0xffffffff
  uint128 = 0xffffffffffffffffffffffffffffffff}
xmm2           {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_do
    0xff <repeats 16 times>}, v8_int16 = {0xffff, 0xffff, 0xffff, 0x
    0xffffffff, 0xffff
  uint12
xmm3           {v4_float = {0x0, 0x0, 0x
    0xff <repeats 16 times>}, v8_int16 = {0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff}, v4_int32 = {
    0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff}, v2_int64 = 
  uint128 = 0xffffffffffffffffffffffffffffffff}
xmm4           {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double
    0xff <repeats 16 times>}, v8_int16 = {0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff}, v4_int32 = {
    0xffffffff, 0xffffffff, 0xffffffff, 0xfffffff
  uint128 = 0xffffffffffffffffffffffffffffffff}
xmm5           {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x8000000000000000, 0x80000
    0xff <repeats 16 times>}, v8_int16 = {0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 

  uint128 = 0xffffffffffffffffffffffffffffffff}
xmm6           {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x8000000000000000, 0x8000000000000000}, v16_int8 =
    0xff <repeats 16 times>}
    0xffffffff, 0xffffffff, 0xffffffff, 0xffff
  uint128 = 0xffffffffffffffffffffffffffffffff}
xmm7           {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x8000000000000000, 0x8000000
    0xff <repeats 16 times>}, v8_int16 = {0xffff, 0xffff, 0xffff, 0xffff, 0xff
    0xffffffff, 0xffffffff, 0xffffffff, 0xfff
  uint128 = 0xffffffffffffffffffffffffffffffff}
mxcsr          0x1f80   8064
mm0            {uint64 = 0x3f7e3f7e3f7e3f7e, v2_int32 = {0x3f7e3f7e, 
    0x3f7e}, v8_int8 = {0x7e, 0x3f, 0x7e, 0x3f, 0
mm1            {uint64 = 0xff5703f03cb9, v2_int32 = {0x3f03cb9, 0xff57}, v4_int16 = {0x3cb9, 0x3f0, 0xff57, 0x0},
  v8_int8 = {0xb9, 0x3c, 0xf0, 0x3, 0x57, 0xff, 0x0, 0x0}}
mm2            {uint64 = 0x7f007f007f007f, v2_int32 = {0x7f007f, 
  v8_int8 = {0x7f, 0x0, 0x7f, 0x0, 0x7f, 0x0, 0x7f, 0x0}}
mm3            {uint64 = 0xfeca075a3adbff01, v2_int32 = {0x3adbff01, 0xfeca075a}, v4_int16 =
    0xfeca}, v8_int8 = {0x1, 0xff, 0xdb, 0x3a, 0x5a, 0x7, 0xca, 0xfe}}
mm4            {uint64 = 0x1cb3a500030c5b, v2_int32 = {0x30c5b, 0x1c
  v8_int8 = {0x5b, 0xc, 0x3, 0x0, 0xa5, 0xb3, 0x1c, 0x0}}
mm5            {uint64 = 0x201456ffffabaa, v2_int32 = {0xffffaba
  v8_int8 = {0xaa, 0xab, 0xff, 0xff, 0x56, 0x14,
mm6            {uint64
    0x2, 0x0, 0x2, 0x0, 0x2, 0x0, 0x2, 0x0}}
mm7            {uint64 = 0x0, v2_int32 = {0x0, 
    0x0, 0x0, 0x0, 0x0}}



More information about the MPlayer-advusers mailing list