I uploaded a tarball (bad_aspect_mov.tar.zg) with 3 .mov It tracked down from the mov demuxer which read a size of 240x180. But the h263 decoder read a CIF format at 352x288 and set the vo driver width and height with this. But there is no rescale of the frames to fit the window. Unfortunatly it takes time to understand what's going on when you don't know the code and I not really have time to go further. If someone can have a look at it/fix it, it will be cool. Please let me know what was the bug, thanks. Bertrand
On Saturday 27 July 2002 12:40 am, Bertrand Baudet wrote:
I uploaded a tarball (bad_aspect_mov.tar.zg) with 3 .mov It tracked down from the mov demuxer which read a size of 240x180. But the h263 decoder read a CIF format at 352x288 and set the vo driver width and height with this. But there is no rescale of the frames to fit the window. Unfortunatly it takes time to understand what's going on when you don't know the code and I not really have time to go further. If someone can have a look at it/fix it, it will be cool. Please let me know what was the bug, thanks.
Would be better with an output... Here it goes: BTW I just update my local CVS copy over the one I got 2 days ago and now it just crash in decode_video. Anyway here is the output that show the scale output issue. I will send another bug report for the crash. MPlayer CVS-020726-20:11-3.0.4 (C) 2000-2002 Arpad Gereoffy (see DOCS!) CPU: Intel Celeron 2/Pentium III Tualatin (Family: 6, Stepping: 1) CPUflags: MMX: 1 MMX2: 1 3DNow: 0 3DNow2: 0 SSE: 1 SSE2: 0 Compiled for x86 CPU with extensions: MMX MMX2 SSE Reading /home/bertrand/.mplayer/codecs.conf: 36 audio & 103 video codecs Font /home/bertrand/.mplayer/font/font.desc loaded successfully! (206 chars) Linux RTC init error: Permission denied Using usleep() timing Input config file /home/bertrand/.mplayer/input.conf parsed : 50 binds Playing tt.mov Detected QuickTime/MOV file format! -------------- MOV track #0: 629 chunks, 1897 samples Image size: 240 x 180 (24 bpp) Display size: 240 x 180 Fourcc: h263 Codec: 'H.263' -------------- MOV track #1: 319 chunks, 0 samples Audio bits: 16 chans: 2 rate: 22050 Fourcc: QDM2 -------------- Can't find codec for audio format 0x324D4451 ! *** Try to upgrade /home/bertrand/.mplayer/codecs.conf from etc/codecs.conf *** If it's still not OK, then read DOCS/codecs.html! vo: X11 running at 1600x1200 with depth 24 and 32 bpp (":0.0" => local display) ========================================================================== Opening video decoder: [ffmpeg] FFmpeg's libavcodec codec family libavcodec: CPU flags: mmx mmxext sse Detected video codec: [ffh263] vfm:5 (FFmpeg H263+ decoder) ========================================================================== Audio: no sound!!! Start playing... VDec: vo config request - 352 x 288 (preferred csp: Planar YV12) Movie-Aspect is undefined - no prescaling applied. VO: [xv] 352x288 => 352x288 Planar YV12 Disabling DPMS
Hi,
On Saturday 27 July 2002 12:40 am, Bertrand Baudet wrote:
I uploaded a tarball (bad_aspect_mov.tar.zg) with 3 .mov It tracked down from the mov demuxer which read a size of 240x180. But the h263 decoder read a CIF format at 352x288 and set the vo driver width and height with this. But there is no rescale of the frames to fit the window. Unfortunatly it takes time to understand what's going on when you don't know the code and I not really have time to go further. If someone can have a look at it/fix it, it will be cool. Please let me know what was the bug, thanks.
Would be better with an output... with -v output...
anyway no way to fix it - at leats no clean way use -vop crop/scale to change its size - it's a silly feature of .mov files that coded and header w/h may be different, read ffmpeg-devel list for details, there is a big thread about this nowdays A'rpi / Astral & ESP-team -- Developer of MPlayer, the Movie Player for Linux - http://www.MPlayerHQ.hu
On Thursday 01 January 1970 01:00, Arpi wrote:
Hi,
On Saturday 27 July 2002 12:40 am, Bertrand Baudet wrote:
I uploaded a tarball (bad_aspect_mov.tar.zg) with 3 .mov It tracked down from the mov demuxer which read a size of 240x180. But the h263 decoder read a CIF format at 352x288 and set the vo driver width and height with this. But there is no rescale of the frames to fit the window. Unfortunatly it takes time to understand what's going on when you don't know the code and I not really have time to go further. If someone can have a look at it/fix it, it will be cool. Please let me know what was the bug, thanks.
Would be better with an output...
with -v output...
anyway no way to fix it - at leats no clean way use -vop crop/scale to change its size - it's a silly feature of .mov files that coded and header w/h may be different, read ffmpeg-devel list for details, there is a big thread about this nowdays what about setting prescale (dwidth/dheight) to the size from the mov header, of course this will only work when scaling is needed, not for cropping, and has some limits (eg. no downscale of some xv drivers).
A'rpi / Astral & ESP-team
-- Best Regards, Atmos ____________________________________________ - MPlayer Developer - http://mplayerhq.hu/ - ____________________________________________
On Saturday 27 July 2002 12:40 am, Bertrand Baudet wrote:
I uploaded a tarball (bad_aspect_mov.tar.zg) with 3 .mov It tracked down from the mov demuxer which read a size of 240x180. But the h263 decoder read a CIF format at 352x288 and set the vo driver width and height with this. But there is no rescale of the frames to fit the window. Unfortunatly it takes time to understand what's going on when you don't know the code and I not really have time to go further. If someone can have a look at it/fix it, it will be cool. Please let me know what was the bug, thanks.
Ok, with CVS of today, the files chris.mov and sarah.mov shows the rescale problem. And tt.mov actually crash: Starting program: /home/bertrand/projects/mplayer/./mplayer tt.mov [New Thread 1024 (LWP 18995)] MPlayer CVS-020726-20:11-3.0.4 (C) 2000-2002 Arpad Gereoffy (see DOCS!) CPU: Intel Celeron 2/Pentium III Tualatin (Family: 6, Stepping: 1) CPUflags: MMX: 1 MMX2: 1 3DNow: 0 3DNow2: 0 SSE: 1 SSE2: 0 Compiled for x86 CPU with extensions: MMX MMX2 SSE /home/bertrand/.mplayer/config(3): option: ao /home/bertrand/.mplayer/config(3): parameter: arts /home/bertrand/.mplayer/config(4): option: aop /home/bertrand/.mplayer/config(4): parameter: list=volume Reading /home/bertrand/.mplayer/codecs.conf: 36 audio & 103 video codecs Font /home/bertrand/.mplayer/font/font.desc loaded successfully! (206 chars) Linux RTC init error: Permission denied Using usleep() timing Input config file /home/bertrand/.mplayer/input.conf parsed : 50 binds Playing tt.mov Detected QuickTime/MOV file format! -------------- MOV track #0: 629 chunks, 1897 samples Image size: 240 x 180 (24 bpp) Display size: 240 x 180 Fourcc: h263 Codec: 'H.263' -------------- MOV track #1: 319 chunks, 0 samples Audio bits: 16 chans: 2 rate: 22050 Fourcc: QDM2 -------------- Can't find codec for audio format 0x324D4451 ! *** Try to upgrade /home/bertrand/.mplayer/codecs.conf from etc/codecs.conf *** If it's still not OK, then read DOCS/codecs.html! vo: X11 running at 1600x1200 with depth 24 and 32 bpp (":0.0" => local display) [x11] Detected wm is of class NetWM. ========================================================================== Opening video decoder: [ffmpeg] FFmpeg's libavcodec codec family libavcodec: CPU flags: mmx mmxext sse Detected video codec: [ffh263] vfm:5 (FFmpeg H263+ decoder) ========================================================================== Audio: no sound!!! Start playing... VDec: vo config request - 352 x 288 (preferred csp: Planar YV12) Movie-Aspect is undefined - no prescaling applied. VO: [xv] 352x288 => 352x288 Planar YV12 Program received signal SIGSEGV, Segmentation fault. [Switching to Thread 1024 (LWP 18995)] 0x08130628 in put_pixels_mmx (block=0x40c3a040 "", pixels=0x0, line_size=352, h=16) at i386/dsputil_mmx.c:348 348 __asm __volatile( (gdb) bt #0 0x08130628 in put_pixels_mmx (block=0x40c3a040 "", pixels=0x0, line_size=352, h=16) at i386/dsputil_mmx.c:348 #1 0x080f1824 in MPV_motion (s=0x40bea008, dest_y=0x40c3a040 "", dest_cb=0x40c58f40 '\200' <repeats 200 times>..., dest_cr=0x40c52c40 '\200' <repeats 200 times>..., dir=0, ref_picture=0x40bea1fc, pix_op=0x8271d60, qpix_op=0x8271d80) at mpegvideo.c:1053 #2 0x080ec1ab in MPV_decode_mb (s=0x40bea008, block=0x40c13958) at mpegvideo.c:1501 #3 0x081213d1 in h263_decode_frame (avctx=0x8338000, data=0xbfffe3a0, data_size=0xbfffe39c, buf=0x83c8720 "", buf_size=3668) at h263dec.c:320 #4 0x080e94c5 in avcodec_decode_video (avctx=0x8338000, picture=0xbfffe3a0, got_picture_ptr=0xbfffe39c, buf=0x83c8720 "", buf_size=3668) at utils.c:102 #5 0x080a9f34 in decode (sh=0x833ef20, data=0x83c8720, len=3668, flags=0) at vd_ffmpeg.c:381 #6 0x080a8aae in decode_video (sh_video=0x833ef20, start=0x83c8720 "", in_size=3668, drop_frame=0) at dec_video.c:182 #7 0x0807161e in main (argc=2, argv=0xbffff6f4, envp=0xbffff700) at mplayer.c:1570 #8 0x40596280 in __libc_start_main () from /lib/libc.so.6 (gdb) disass $eip-32 $eip+32 Dump of assembler code from 0x8130608 to 0x8130648: 0x8130608 <add_pixels_clamped_mmx+104>: mov $0x5b,%bh 0x813060a <add_pixels_clamped_mmx+106>: pop %esi 0x813060b <add_pixels_clamped_mmx+107>: pop %ebp 0x813060c <add_pixels_clamped_mmx+108>: ret 0x813060d <add_pixels_clamped_mmx+109>: lea 0x0(%esi),%esi 0x8130610 <put_pixels_mmx>: push %ebp 0x8130611 <put_pixels_mmx+1>: mov %esp,%ebp 0x8130613 <put_pixels_mmx+3>: push %esi 0x8130614 <put_pixels_mmx+4>: mov 0x10(%ebp),%ecx 0x8130617 <put_pixels_mmx+7>: push %ebx 0x8130618 <put_pixels_mmx+8>: mov 0x8(%ebp),%esi 0x813061b <put_pixels_mmx+11>: mov 0xc(%ebp),%ebx 0x813061e <put_pixels_mmx+14>: mov 0x14(%ebp),%edx 0x8130621 <put_pixels_mmx+17>: lea (%ecx,%ecx,1),%eax 0x8130624 <put_pixels_mmx+20>: lea 0x0(%esi,1),%esi 0x8130628 <put_pixels_mmx+24>: movq (%ebx),%mm0 0x813062b <put_pixels_mmx+27>: movq (%ebx,%ecx,1),%mm1 0x813062f <put_pixels_mmx+31>: movq %mm0,(%esi) 0x8130632 <put_pixels_mmx+34>: movq %mm1,(%esi,%ecx,1) 0x8130636 <put_pixels_mmx+38>: add %eax,%ebx 0x8130638 <put_pixels_mmx+40>: add %eax,%esi 0x813063a <put_pixels_mmx+42>: movq (%ebx),%mm0 0x813063d <put_pixels_mmx+45>: movq (%ebx,%ecx,1),%mm1 0x8130641 <put_pixels_mmx+49>: movq %mm0,(%esi) 0x8130644 <put_pixels_mmx+52>: movq %mm1,(%esi,%ecx,1) End of assembler dump.
participants (3)
-
Arpi -
Bertrand Baudet -
Felix Buenemann