안녕하세요.
SDL을 포팅해서 SDL fire란 프로그램으로 touch와 화면이 구동됩니다.
그런후에 mplayer를 포팅했습니다.
mplayer 포팅해서 fbdev를 통해서 동영상 플레이가 되는 것을 확인했습니다.
그래서 출력을 SDL으로 할려고 하는데 멈추거나 segmentation fault가 납니다.
SDL + mplayer를 먼저 해보신분들께 조언을 부탁드립니다.
버전은
SDL-1.2.13
MPlayer-1.0rc2
출력.
-----------------------------------
$ mplayer -vo help
MPlayer 1.0rc2-4.0.0 (C) 2000-2007 MPlayer Team
CPU: ARM
Available video output drivers:
sdl SDL YUV/RGB/BGR renderer (SDL v1.1.7+ only!)
fbdev Framebuffer Device
fbdev2 Framebuffer Device
directfb Direct Framebuffer Device
dfbmga DirectFB / Matrox G200/G400/G450/G550
null Null video output
mpegpes Mpeg-PES to DVB card
yuv4mpeg yuv4mpeg output for mjpegtools
png PNG file
jpeg JPEG file
115 audio & 237 video codecs
$ mplayer -v -vo sdl -xy 272 tell_me.avi
MPlayer 1.0rc2-4.0.0 (C) 2000-2007 MPlayer Team
CPU: ARM
get_path('codecs.conf') -> '/root/.mplayer/codecs.conf'
Reading /root/.mplayer/codecs.conf: 115 audio & 237 video codecs
Configuration: --cc=arm-linux-gcc --host-cc=gcc --as=arm-linux-as --ar=arm-linux-ar --target=arm-linux --codecsdir=/usr/local/lib/codecs --disable-mencoder --disable-tv --disable-dvdread --disable-tga --disable-pnm --disable-mmx --disable-mmxext --disable-armv5te --disable-armv6 --disable-sse --disable-sse2 --disable-iwmmxt --disable-fastmemcpy --enable-alsa --enable-mad --disable-md5sum --with-extralibdir=/opt/eldk/arm/usr/local/lib --with-extraincdir=/opt/eldk/arm/usr/local/include:/opt/eldk/arm/usr/local/include/directfb --with-sdl-config=/opt/eldk/arm/usr/local/bin/sdl-config
CommandLine: '-v' '-vo' 'sdl' '-xy' '272' 'tell_me.avi'
init_freetype
get_path('font/font.desc') -> '/root/.mplayer/font/font.desc'
font: can't open file: /root/.mplayer/font/font.desc
Bitmap font /usr/local/share/mplayer/font/font.desc loaded successfully! (8336 chars)
Using Unoptimized OnScreenDisplay
get_path('fonts') -> '/root/.mplayer/fonts'
Using nanosleep() timing
get_path('input.conf') -> '/root/.mplayer/input.conf'
Parsing input config file /root/.mplayer/input.conf
Input config file /root/.mplayer/input.conf parsed: 81 binds
get_path('tell_me.avi.conf') -> '/root/.mplayer/tell_me.avi.conf'
Playing tell_me.avi.
get_path('sub/') -> '/root/.mplayer/sub/'
[file] File size is 35540366 bytes
STREAM: [file] tell_me.avi
STREAM: Description: File
STREAM: Author: Albeu
STREAM: Comment: based on the code from ??? (probably Arpi)
CACHE_PRE_INIT: 0 [0] 122880 pre:1677721 eof:0
Cache fill: 1.46% (122880 bytes)
LAVF_check: avi format
AVI file format detected.
list_end=0x192
======= AVI Header =======
us/frame: 41666 (fps=24.000)
max bytes/sec: 0
padding: 0
MainAVIHeader.dwFlags: (2320) HAS_INDEX IS_INTERLEAVED TRUST_CKTYPE
frames total: 5871 initial: 0
streams: 2
Suggested BufferSize: 0
Size: 480 x 272
==========================
list_end=0x120
==> Found video stream: 0
[aviheader] Video stream found, -vid 0
====== STREAM Header =====
Type: vids FCC: XVID (44495658)
Flags: 0
Priority: 0 Language: 0
InitialFrames: 0
Rate: 24/1 = 24.000
Start: 0 Len: 5871
Suggested BufferSize: 29756
Quality 0
Sample size: 0
==========================
Found 'bih', 40 bytes of 40
======= VIDEO Format ======
biSize 40
biWidth 480
biHeight 272
biPlanes 1
biBitCount 12
biCompression 1145656920='XVID'
biSizeImage 195840
===========================
Regenerating keyframe table for MPEG-4 video.
======= Video Properties Header =======
Format: 0 VideoStandard: 0
VRefresh: 24 HTotal: 480 VTotal: 272
FrameAspect: 4:3 Framewidth: 480 Frameheight: 272
Fields: 1
== Field 0 description ==
CompressedBMHeight: 272 CompressedBMWidth: 480
ValidBMHeight: 272 ValidBMWidth: 480
ValidBMXOffset: 0 ValidBMYOffset: 0
VideoXOffsetInT: 0 VideoYValidStartLine: 0
=======================================
list_end=0x192
==> Found audio stream: 1
[aviheader] Audio stream found, -aid 1
====== STREAM Header =====
Type: auds FCC: U (55)
Flags: 0
Priority: 0 Language: 0
InitialFrames: 20
Rate: 16000/1 = 16000.000
Start: 0 Len: 3907918
Suggested BufferSize: 418
Quality 0
Sample size: 1
==========================
Found 'wf', 30 bytes of 18
======= WAVE Format =======
Format Tag: 85 (0x55)
Channels: 2
Samplerate: 44100
avg byte/sec: 16000
Block align: 1
bits/sample: 0
cbSize: 12
mp3.wID=1
mp3.fdwFlags=0x2
mp3.nBlockSize=418
mp3.nFramesPerBlock=1
mp3.nCodecDelay=0
==========================================================================
list_end=0x1B8
hdr=Software size=17
Software : Umile Encoder r2
list_end=0x21A9636
Found movie at 0x100C - 0x21A9636
Reading INDEX block, 15221 chunks for 5871 frames (fpos=35296830).
AVI index offset: 0x1008 (movi=0x100C idx0=0x4 idx1=0x1AE)
Auto-selected AVI audio ID = 1
Auto-selected AVI video ID = 0
AVI: Searching for audio stream (id:1)
AVI video size=31259708 (5871) audio size=3907918 (3907918)
VIDEO: [XVID] 480x272 12bpp 24.000 fps 1022.3 kbps (124.8 kbyte/s)
[V] filefmt:3 fourcc:0x44495658 size:480x272 fps:24.00 ftime:=0.0417
Clip info:
Software: Umile Encoder r2
get_path('sub/') -> '/root/.mplayer/sub/'
[VO_SDL] Using driver: fbcon.
==========================================================================
Opening video decoder: [ffmpeg] FFmpeg's libavcodec codec family
INFO: libavcodec init OK!
Selected video codec: [ffodivx] vfm: ffmpeg (FFmpeg MPEG-4)
==========================================================================
==========================================================================
Forced audio codec: mad
Opening audio decoder: [libmad] libmad mpeg audio decoder
dec_audio: Allocating 4096 bytes for input buffer.
dec_audio: Allocating 9216 + 65536 = 74752 bytes for output buffer.
AUDIO: 44100 Hz, 2 ch, s16le, 128.0 kbit/9.07% (ratio: 16000->176400)
Selected audio codec: [mad] afm: libmad (libMAD MPEG layer 1-2-3)
==========================================================================
Building audio filter chain for 44100Hz/2ch/s16le -> 0Hz/0ch/??...
[libaf] Adding filter dummy
[dummy] Was reinitialized: 44100Hz/2ch/s16le
[dummy] Was reinitialized: 44100Hz/2ch/s16le
Could not open/initialize audio device -> no sound.
Uninit audio filters...
[libaf] Removing filter dummy
Uninit audio: libmad
Audio: no sound
Freeing 10 unused audio chunks.
Starting playback...
[ffmpeg] aspect_ratio: 1.764706
VDec: vo config request - 480 x 272 (preferred colorspace: Planar YV12)
Trying filter chain: vo
VDec: using Planar YV12 as output csp (no 0)
Movie-Aspect is 1.33:1 - prescaling to correct movie aspect.
VO Config (480x272->272x204,flags=0,'MPlayer',0x32315659)
VO: [sdl] 480x272 => 272x204 Planar YV12
VO: Description: SDL YUV/RGB/BGR renderer (SDL v1.1.7+ only!)
VO: Author: Ryan C. Gordon <
[email protected]>, Felix Buenemann <
[email protected]>
SDL: Using 0x32315659 (Planar YV12) image format
SDL: using hardware-surface
SDL: setting zoomed fullscreen with modeswitching
SDL Mode: 0: 1600 x 1200
SDL Mode: 1: 1280 x 1024
SDL Mode: 2: 1024 x 1024
SDL Mode: 3: 1152 x 864
SDL Mode: 4: 10224 x 768
SDL Mode: 5: 1024 x 768
SDL Mode: 6: 1024 x 768
SDL Mode: 7: 800 x 600
SDL Mode: 8: 640 x 480
SDL Mode: 9: 480 x 272
SET SDL Mode: 9: 480 x 272
//멈추거나
--------------------------------------------------------------------------------
// fault가 남.
MPlayer interrupted by signal 11 in module: decode_video
- MPlayer crashed by bad usage of CPBacktrace: User Stack
Backtrace aborted due to bad frame pointer <00000078>
U/FPU/RAM.
Recompile MPlayer with --enable-debug and make a 'gdb' backtrace and
disassembly. Details in DOCS/HTML/en/bugreports_what.html#bugreports_crash.
- MPlayer crashed. This shouldn't happen.
It can be a bug in the MPlayer code _or_ in your drivers _or_ in your
gcc version. If you think it's MPlayer's fault, please read
DOCS/HTML/en/bugreports.html and follow the instructions there. We can't and
won't help unless you provide this information when reporting a possible bug.
Uninit video: ffmpeg
Segmentation fault
2440할때 fbdev말고 sdl로 했었던 기억이 납니다.