Discussion:
[MPlayer-users] Crash with -subcp
Josh
2016-02-20 22:11:22 UTC
Permalink
Seems to happen mainly with most MPG and all TS files I have, but I also
tried some audio formats like flac and mp3 (normally not a problem to
leave out -subcp for these on the command-line but some programs like
SMPlayer pass the same commands to all files regardless if they can be
used for a given file type).

Uploaded a sample to /incoming as mpegts_subcp_crash_r37778.mpg / .txt.

(gdb) run -subcp ISO-8859-1 D:\Videos\1080p.mpg -v
Starting program: D:\Programs\SMPlayer\mplayer-d\mplayer.exe -subcp
ISO-8859-1 D:\Videos\1080p.mpg -v
[New Thread 3856.0xca8]
MPlayer SVN-r37778-4.9.3 (C) 2000-2016 MPlayer Team
CPU vendor name: GenuineIntel max cpuid level: 13
CPU: Intel(R) Core(TM) i5-2410M CPU @ 2.30GHz (Family: 6, Model: 42,
Stepping: 7)
extended cpuid-level: 8
extended cache-info: 16801856
Detected cache-line size is 64 bytes
Testing OS support for SSE... yes.
CPUflags: MMX: 1 MMX2: 1 3DNow: 0 3DNowExt: 0 SSE: 1 SSE2: 1 SSE3: 1
SSSE3: 1 SSE4: 1 SSE4.2: 1 AVX: 1
Compiled with runtime CPU detection.
Setting PATH to D:\Programs\SMPlayer\mplayer-d\codecs
get_path('codecs.conf') ->
'D:/Programs/SMPlayer/mplayer-d/mplayer/codecs.conf'
Reading optional codecs config file
D:/Programs/SMPlayer/mplayer-d/mplayer/codecs.conf: No such file or
directory
Reading optional codecs config file /usr/local/etc/mplayer/codecs.conf:
No such file or directory
Using built-in default codecs.conf.
init_freetype
Using MMX (with tiny bit MMX2) Optimized OnScreenDisplay
get_path('fonts') -> 'D:/Programs/SMPlayer/mplayer-d/mplayer/fonts'
Configuration: --enable-static --enable-runtime-cpudetection
--enable-menu --disable-inet6 --disable-liba52
--disable-libmpeg2-internal --disable-tv --disable-v
idix --disable-faac-lavc --extra-cflags=-I/sources/live555
--disable-mencoder --enable-debug=3
CommandLine: '-subcp' 'ISO-8859-1' 'D:\Videos\1080p.mpg' '-v'
Using Windows native timing
get_path('input.conf') ->
'D:/Programs/SMPlayer/mplayer-d/mplayer/input.conf'
Parsing input config file D:/Programs/SMPlayer/mplayer-d/mplayer/input.conf
Input config file D:/Programs/SMPlayer/mplayer-d/mplayer/input.conf
parsed: 92 binds
get_path('1080p.mpg.conf') ->
'D:/Programs/SMPlayer/mplayer-d/mplayer/1080p.mpg.conf'

Playing D:\Videos\1080p.mpg.
get_path('sub/') -> 'D:/Programs/SMPlayer/mplayer-d/mplayer/sub/'
WINSOCK2 init: 0
WINSOCK2 init: 0
[file] File size is 106713088 bytes
STREAM: [file] D:\Videos\1080p.mpg
STREAM: Description: File
STREAM: Author: Albeu
STREAM: Comment: based on the code from ??? (probably Arpi)
libavformat version 57.26.100 (internal)
Configuration: --enable-gpl --enable-postproc
LAVF_check: MPEG-PS (MPEG-2 Program Stream)
Checking for YUV4MPEG2
ASF_check: not ASF guid!
Checking for REAL
Checking for SMJPEG

Program received signal SIGSEGV, Segmentation fault.
0x00d49d6f in libiconv_open ()
(gdb) bt
#0 0x00d49d6f in libiconv_open ()
#1 0x00000000 in ?? ()
(gdb) disass $pc-32,$pc+32
Dump of assembler code from 0xd49d4f to 0xd49d8f:
0x00d49d4f <libiconv_open+751>: mov $0x84,%bh
0x00d49d51 <libiconv_open+753>: add %al,0x1016d90(%eax)
0x00d49d57 <libiconv_open+759>: clc
0x00d49d58 <libiconv_open+760>: jmp 0xd49bd8 <libiconv_open+376>
0x00d49d5d <libiconv_open+765>: cmp $0x7e,%ebx
0x00d49d60 <libiconv_open+768>: mov $0xa,%eax
0x00d49d65 <libiconv_open+773>: cmove %eax,%ebx
0x00d49d68 <libiconv_open+776>: mov 0x84(%esp),%eax
=> 0x00d49d6f <libiconv_open+783>: movzbl (%eax),%eax
0x00d49d72 <libiconv_open+786>: test %al,%al
0x00d49d74 <libiconv_open+788>: js 0xd49ba0 <libiconv_open+320>
0x00d49d7a <libiconv_open+794>: mov %esi,%edi
0x00d49d7c <libiconv_open+796>: jmp 0xd49dac <libiconv_open+844>
0x00d49d7e <libiconv_open+798>: sub $0x20,%eax
0x00d49d81 <libiconv_open+801>: mov %al,(%edi)
0x00d49d83 <libiconv_open+803>: lea 0x5f(%esp),%eax
0x00d49d87 <libiconv_open+807>: cmp %eax,%edi
0x00d49d89 <libiconv_open+809>: je 0xd49ba0 <libiconv_open+320>
End of assembler dump.
(gdb) info all-registers
eax 0x0 0
ecx 0x16db848 23967816
edx 0x28eb2c 2681644
ebx 0x1 1
esp 0x28eb00 0x28eb00
ebp 0x28eb5f 0x28eb5f
esi 0x28eb28 2681640
edi 0x5 5
eip 0xd49d6f 0xd49d6f <libiconv_open+783>
eflags 0x10293 [ CF AF SF IF RF ]
cs 0x23 35
ss 0x2b 43
ds 0x2b 43
es 0x2b 43
fs 0x53 83
gs 0x2b 43
st0 0 (raw 0x00000000000000000000)
st1 0 (raw 0x00000000000000000000)
st2 0 (raw 0x00000000000000000000)
st3 0 (raw 0x00000000000000000000)
st4 0 (raw 0x00000000000000000000)
st5 0 (raw 0x00000000000000000000)
st6 0 (raw 0x00000000000000000000)
st7 -9.2233720368547758e+018 (raw 0xc03e8000000000000000)
fctrl 0x37f 895
fstat 0x0 0
ftag 0xffff 65535
fiseg 0x23 35
fioff 0x49716a 4813162
foseg 0x2b 43
fooff 0x27fd9a80 670931584
fop 0x0 0
xmm0 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0},
v16_int8 = {0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0, 0x0,
0x0, 0x0, 0x0,
0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v2_int64 = {0x0, 0x0},
uint128 = 0x00000000000000000000000000000000}
xmm1 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0},
v16_int8 = {0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0, 0x0,
0x0, 0x0, 0x0,
0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v2_int64 = {0x0, 0x0},
uint128 = 0x00000000000000000000000000000000}
xmm2 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0},
v16_int8 = {0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0, 0x0,
0x0, 0x0, 0x0,
0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v2_int64 = {0x0, 0x0},
uint128 = 0x00000000000000000000000000000000}
xmm3 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0},
v16_int8 = {0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0, 0x0,
0x0, 0x0, 0x0,
0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v2_int64 = {0x0, 0x0},
uint128 = 0x00000000000000000000000000000000}
xmm4 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0},
v16_int8 = {0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0, 0x0,
0x0, 0x0, 0x0,
0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v2_int64 = {0x0, 0x0},
uint128 = 0x00000000000000000000000000000000}
xmm5 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0},
v16_int8 = {0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0, 0x0,
0x0, 0x0, 0x0,
0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v2_int64 = {0x0, 0x0},
uint128 = 0x00000000000000000000000000000000}
xmm6 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0},
v16_int8 = {0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0, 0x0,
0x0, 0x0, 0x0,
0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v2_int64 = {0x0, 0x0},
uint128 = 0x00000000000000000000000000000000}
xmm7 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0},
v16_int8 = {0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0, 0x0,
0x0, 0x0, 0x0,
0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v2_int64 = {0x0, 0x0},
uint128 = 0x00000000000000000000000000000000}
mxcsr 0x9fc0 [ DAZ IM DM ZM OM UM PM FZ ]
mm0 {uint64 = 0x0, v2_int32 = {0x0, 0x0}, v4_int16 = {0x0,
0x0, 0x0, 0x0}, v8_int8 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}}
mm1 {uint64 = 0x0, v2_int32 = {0x0, 0x0}, v4_int16 = {0x0,
0x0, 0x0, 0x0}, v8_int8 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}}
mm2 {uint64 = 0x0, v2_int32 = {0x0, 0x0}, v4_int16 = {0x0,
0x0, 0x0, 0x0}, v8_int8 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}}
mm3 {uint64 = 0x0, v2_int32 = {0x0, 0x0}, v4_int16 = {0x0,
0x0, 0x0, 0x0}, v8_int8 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}}
mm4 {uint64 = 0x0, v2_int32 = {0x0, 0x0}, v4_int16 = {0x0,
0x0, 0x0, 0x0}, v8_int8 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}}
mm5 {uint64 = 0x0, v2_int32 = {0x0, 0x0}, v4_int16 = {0x0,
0x0, 0x0, 0x0}, v8_int8 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}}
mm6 {uint64 = 0x0, v2_int32 = {0x0, 0x0}, v4_int16 = {0x0,
0x0, 0x0, 0x0}, v8_int8 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}}
mm7 {uint64 = 0x8000000000000000, v2_int32 = {0x0,
0x80000000}, v4_int16 = {0x0, 0x0, 0x0, 0x8000}, v8_int8 = {0x0, 0x0,
0x0, 0x0, 0x0, 0x0, 0x0,
0x80}}
(gdb)
Reimar Döffinger
2016-02-22 14:55:39 UTC
Permalink
Seems to happen mainly with most MPG and all TS files I have, but I also tried some audio formats like flac and mp3 (normally not a problem to leave out -subcp for these on the command-line but some programs like SMPlayer pass the same commands to all files regardless if they can be used for a given file type).
I suspect that's the bug I fixed yesterday or so.
I don't know since when it is there though and if it ended up in the 1.3.0 release...
Workaround is probably to use e.g. -subcp enca:__:codepage
(replace codepage with the codepage you want to use)
Josh
2016-02-22 17:47:06 UTC
Permalink
Post by Reimar Döffinger
Seems to happen mainly with most MPG and all TS files I have, but I also tried some audio formats like flac and mp3 (normally not a problem to leave out -subcp for these on the command-line but some programs like SMPlayer pass the same commands to all files regardless if they can be used for a given file type).
I suspect that's the bug I fixed yesterday or so.
I don't know since when it is there though and if it ended up in the 1.3.0 release...
Workaround is probably to use e.g. -subcp enca:__:codepage
(replace codepage with the codepage you want to use)
_______________________________________________
MPlayer-users mailing list
https://lists.mplayerhq.hu/mailman/listinfo/mplayer-users
No it's not in 1.3.0. I'm sure it was 37744. Thanks.

Loading...