[MPlayer-users] [BUG] audio distortion in quicktime/mov videos

Andrew Savchenko Bircoph at list.ru
Mon Nov 5 13:19:35 CET 2007


Hello,

I experienced a strange behavior while playing video in 
quicktime/mov format. After several minutes of start of the file 
sound become stutter and choppy, i.e. small fragment of audio is 
played twice, so this distortion sounds rather similar to echo.

In the mplayer's output the following messages occasionally occurs 
in random order:
*************
mpg123: Can't rewind stream by 66 bits!4 1062/1062  8%  1%  1.0% 3 
0
big_values too large!
mpg123: Can't rewind stream by 118 bits!
Blocktype == 0 and window-switching == 1 not allowed.
***********
Verbose output is at the end of this mail.

I use MPlayer dev-SVN-r24969-4.2.2, but this problem is also 
present in earlier relises; though I havn't made regression check 
yet.

I tried to play with different combinations of -autosync and -mc, 
but without any success. When I tried to cut a part of a movie in 
order to upload it to server, things became even more weird (-ovc 
copy -oac copy was used):

1) А lot of mencoder error messages, exactly one message for 
each(!) frame:
***********
ODML: Aspect information not (yet?) available or unspecified, not 
writing vprp header.
Writing header... ( 0%) 781.12fps Trem:   0min   0mb  A-V:0.067 
[0:0]
***********
2) minimal size of resulting movie is about 82 MB, even for 1 
second of playback (-endpos 0:01);
2) video is absent/unplayable in the resulting file;
3) if cut was taken from the beginning of the original file,
there is a white noise instead of sound;
4) the same as 3), but with *any* offset from the beginning of file 
(e.g -ss <positive value>) leads to no video and the same choppy 
sound as in original file.
Once again, these behavior was seen only for quicktime/mov movies 
which I have.

Original filesize is about 180 MB, so I wasn't brave enough to 
upload it to server, 82 MB sample seems to be overmatch too.

Any ideas? (Meanwhile I'll try to make regression test, but 
requirement to downgrade libav* and libpostproc each time 
separately of the main tree makes this procedure rather 
troublesome.)

Here is verbose output of mplayer:
**********************************************************
$ ./mplayer /home/andrew/media/video/anime/_.hack.roots/hack\ 
Roots\ -\ 20.mp4 -v
MPlayer dev-SVN-r24969-4.2.2 (C) 2000-2007 MPlayer Team
CPU: AMD Athlon(tm) XP 3200+ (Family: 6, Model: 10, Stepping: 0)
CPUflags:  MMX: 1 MMX2: 1 3DNow: 1 3DNow2: 1 SSE: 1 SSE2: 0
Compiled for x86 CPU with extensions: MMX MMX2 3DNow 3DNowEx SSE
get_path('codecs.conf') -> '/home/andrew/.mplayer/codecs.conf'
Reading /home/andrew/.mplayer/codecs.conf: Can't open 
'/home/andrew/.mplayer/codecs.conf': No such file or directory
Reading /usr/local/etc/mplayer/codecs.conf: 116 audio & 237 video 
codecs
Configuration: --language=en --enable-menu --enable-xmms 
--enable-largefiles --enable-fbdev --disable-tv --disable-dvbhead 
--disable-lirc --enable-xvmc --cc=ccache gcc --host-cc=ccache gcc
CommandLine: '/home/andrew/media/video/anime/_.hack.roots/hack 
Roots - 20.mp4' '-v'
init_freetype
get_path('font/font.desc') -> 
'/home/andrew/.mplayer/font/font.desc'
font: can't open file: /home/andrew/.mplayer/font/font.desc
font: can't open file: /usr/local/share/mplayer/font/font.desc
Using MMX (with tiny bit MMX2) Optimized OnScreenDisplay
get_path('fonts') -> '/home/andrew/.mplayer/fonts'
Using nanosleep() timing
get_path('input.conf') -> '/home/andrew/.mplayer/input.conf'
Parsing input config file /home/andrew/.mplayer/input.conf
Input config file /home/andrew/.mplayer/input.conf parsed: 70 binds
get_path('hack Roots - 20.mp4.conf') -> '/home/andrew/.mplayer/hack 
Roots - 20.mp4.conf'

Playing /home/andrew/media/video/anime/_.hack.roots/hack Roots - 
20.mp4.
get_path('sub/') -> '/home/andrew/.mplayer/sub/'
[file] File size is 184598422 bytes
STREAM: [file] /home/andrew/media/video/anime/_.hack.roots/hack 
Roots - 20.mp4
STREAM: Description: File
STREAM: Author: Albeu
STREAM: Comment: based on the code from ??? (probably Arpi)
LAVF_check: QuickTime/MPEG4/Motion JPEG 2000 format
Checking for YUV4MPEG2
ASF_check: not ASF guid!
Checking for NuppelVideo
Checking for REAL
Checking for SMJPEG
Searching demuxer type for 
filename /home/andrew/media/video/anime/_.hack.roots/hack Roots - 
20.mp4 ext: .mp4
Trying demuxer 7 based on filename extension
Checking for MOV
ISO: File Type Major Brand: ISO Base Media
ISO: File Type Minor Version: 1
ISO: File Type Compatible Brand #0: isom
MOV: Movie header found!
MOV: Movie DATA found!
Quicktime/MOV file format detected.
MOV: Movie header (100 bytes): tscale=600  dur=890966
MOV: unknown chunk: iods 13
--------------
MOV: Track #0:
MOV:  Track header!
tkhd len=84 ver=0 flags=0x0 id=1 dur=890966 lay=0 vol=0
MOV:  Media stream!
MOV:   Media header!
MOV:   Handler header: /vide () PAC ISO Video Handler
MOV: unknown handler class: 0x0 ()
MOV:   Media info!
MOV:    Video header!
MOV: unknown chunk: dinf 28
MOV:    Sample info!
MOV:     Description list! (cnt:1)
MOV:      desc #0: avc1  (136 bytes)
MOV:     Sample duration table! (1 blocks)
MOV: unknown chunk: ctts 275120
MOV:     Syncing samples (keyframes) table! (229 entries) 
(ver:0,flags:0)
MOV:     Sample->Chunk mapping table!  (3 blocks) (ver:0,flags:0)
MOV:     Sample size table! (entries=35603 ss=0) (ver:0,flags:0)
MOV:     Chunk offset table! (3237 chunks)
MOV track #0: 3237 chunks, 35603 samples
pts=-582606883  scale=2500000  time=1484.944
==> Found video stream: 0
[mov] Video stream found, -vid 0
MOV: AVC decoder configuration record atom (46)!
MOV: avcC version: 1
MOV: avcC profile: 77
MOV: avcC profile compatibility: 64
MOV: avcC level: 51
MOV: avcC nal length size: 4
MOV: avcC number of sequence param sets: 1
MOV: avcC sps 0 have length 23
MOV: avcC number of picture param sets: 1
MOV: avcC pps 0 have length 4
MOV: Found unknown movie atom btrt (20)!
Image size: 704 x 396 (24 bpp)
Display size: 704 x 396
Fourcc: avc1  Codec: ''
--------------
MOV: Track #1:
MOV:  Track header!
tkhd len=84 ver=0 flags=0x0 id=2 dur=890942 lay=0 vol=256
MOV:  Media stream!
MOV:   Media header!
MOV:   Handler header: /soun () PAC ISO Audio Handler
MOV: unknown handler class: 0x0 ()
MOV:   Media info!
MOV:    Sound header!
MOV: unknown chunk: dinf 28
MOV:    Sample info!
MOV:     Description list! (cnt:1)
MOV:      desc #0: mp4a  (55 bytes)
MOV:     Sample duration table! (1 blocks)
MOV:     Sample->Chunk mapping table!  (755 blocks) (ver:0,flags:0)
MOV:     Sample size table! (entries=61871 ss=576) (ver:0,flags:0)
MOV:     Chunk offset table! (3237 chunks)
MOV track #1: 3237 chunks, 0 samples
pts=71275392  scale=48000  time=1484.904
==> Found audio stream: 1
[mov] Audio stream found, -aid 1
Audio bits: 16  chans: 2  rate: 48000
MOV: Found MPEG4 audio Elementary Stream Descriptor atom (35)!
ESDS MPEG4 version: 0  flags: 0x000000
ESDS MPEG4 ES Descriptor (21Bytes):
 -> ESId: 0
 -> streamPriority: 0
ESDS MPEG4 Decoder Config Descriptor (13Bytes):
 -> objectTypeId: 107
 -> streamType: 0x15
 -> bufferSizeDB: 0x000240
 -> maxBitrate: 198.144kbit/s
 -> avgBitrate: 192.000kbit/s
Fourcc: mp4a
--------------
MOV: longest streams: A: #1 (3237 samples)  V: #0 (35603 samples)
VIDEO:  [avc1]  704x396  24bpp  23.976 fps    0.0 kbps ( 0.0 
kbyte/s)
[V] filefmt:7  fourcc:0x31637661  size:704x396  fps:23.98  
ftime:=0.0417
get_path('sub/') -> '/home/andrew/.mplayer/sub/'
X11 opening display: :0.0
vo: X11 color mask:  FFFFFF  (R:FF0000 G:FF00 B:FF)
vo: X11 running at 1440x900 with depth 24 and 32 bpp (":0.0" => 
local display)
[x11] Detected wm supports layers.
[x11] Using workaround for Metacity bugs.
[x11] Detected wm supports NetWM.
[x11] Detected wm supports ABOVE state.
[x11] Detected wm supports BELOW state.
[x11] Detected wm supports FULLSCREEN state.
[x11] Current fstype setting honours FULLSCREEN ABOVE BELOW X atoms
[xv common] Drawing no colorkey.
[xv common] Maximum source image dimensions: 2046x2046
==========================================================================
Opening video decoder: [ffmpeg] FFmpeg's libavcodec codec family
INFO: libavcodec init OK!
Selected video codec: [ffh264] vfm: ffmpeg (FFmpeg H.264)
==========================================================================
==========================================================================
Opening audio decoder: [mp3lib] MPEG layer-2, layer-3
dec_audio: Allocating 4608 + 65536 = 70144 bytes for output buffer.
mp3lib: using 3DNow!Ex optimized decore!
MP3lib: init layer2&3 finished, tables done
MPEG 1.0, Layer III, 48000 Hz 192 kbit Stereo, BPF: 576
Channels: 2, copyright: No, original: Yes, CRC: No, emphasis: 0
AUDIO: 48000 Hz, 2 ch, s16le, 192.0 kbit/12.50% (ratio: 
24000->192000)
Selected audio codec: [mp3] afm: mp3lib (mp3lib MPEG layer-2, 
layer-3)
==========================================================================
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
ao2: 48000 Hz  2 chans  s16le
audio_setup: using '/dev/dsp' dsp device
audio_setup: using '/dev/mixer' mixer device
audio_setup: using 'pcm' mixer device
[AO OSS] audio_setup: Can't open audio device /dev/dsp: Device or 
resource busy
alsa-init: requested format: 48000 Hz, 2 channels, 9
alsa-init: using ALSA 1.0.10
alsa-init: setup for 1/2 channel(s)
alsa-init: using device default
alsa-init: pcm opened in blocking mode
alsa-init: chunksize set to 1024
alsa-init: fragcount=16
alsa-init: got buffersize=65536
alsa-init: got period size 1024
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/2ch/s16le
[dummy] Was reinitialized: 48000Hz/2ch/s16le
Starting playback...
Increasing filtered audio buffer size from 0 to 65536
[ffmpeg] aspect_ratio: 0.000000
VDec: vo config request - 704 x 396 (preferred colorspace: Planar 
YV12)
Trying filter chain: vo
VDec: using Planar YV12 as output csp (no 0)
Movie-Aspect is undefined - no prescaling applied.
VO Config (704x396->704x396,flags=0,'MPlayer',0x32315659)
VO: [xv] 704x396 => 704x396 Planar YV12
VO: Description: X11/Xv
VO: Author: Gerd Knorr <kraxel at goldbach.in-berlin.de> and others
Xvideo image format: 0x32595559 (YUY2) packed
Xvideo image format: 0x32315659 (YV12) planar
Xvideo image format: 0x59565955 (UYVY) packed
Xvideo image format: 0x30323449 (I420) planar
using Xvideo port 271 for hw scaling
[xv] dx: 0 dy: 0 dw: 704 dh: 396
*** [vo] Exporting mp_image_t, 704x396x12bpp YUV planar, 418176 
bytes
get_path('subfont.ttf') -> '/home/andrew/.mplayer/subfont.ttf'
New_Face failed. Maybe the font path is wrong.
Please supply the text font file (~/.mplayer/subfont.ttf).
subtitle font: load_sub_face failed.
[xv] dx: 4 dy: 19 dw: 704 dh: 396
big_values too large!:-10.937 ct: -0.226 3370/3370 10%  1%  0.8% 0 
0
Blocktype == 0 and window-switching == 1 not allowed.
mpg123: Can't rewind stream by 35 bits!8 3392/3392 10%  1%  0.8% 0 
0
big_values too large!:-15.230 ct: -4.460 4385/4385 10%  1%  0.8% 0 
0
mpg123: Can't rewind stream by 212 bits!
Uninit audio filters...13.532 ct: -5.586 4655/4655  9%  1%  0.8% 0 
0
[libaf] Removing filter dummy
Uninit audio: mp3lib
Uninit video: ffmpeg
alsa-uninit: pcm closed
vo: uninit ...

Exiting... (Quit)
**********************************************************
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 191 bytes
Desc: not available
URL: <http://lists.mplayerhq.hu/pipermail/mplayer-users/attachments/20071105/efff95d6/attachment.pgp>


More information about the MPlayer-users mailing list