Opened 19 years ago
Last modified 19 years ago
#289 new defect
reimar's patch breaks dvb @720p
Reported by: | Owned by: | reimar | |
---|---|---|---|
Priority: | normal | Component: | core |
Version: | HEAD | Severity: | normal |
Keywords: | Cc: | ||
Blocked By: | Blocking: | ||
Reproduced by developer: | no | Analyzed by developer: | no |
Description
reimar's patch from April 23rd in mplayer.c causes a bug for me with dvb://.
The bug causes the video to lag to a halt within seconds, showing the "system
too SLOW" banner. With Apr. 22nd's nightly tarball, this does not happen.
To be more specific, the bug only happens with live dvb:// content and only with
ATSC channels of the 720p [59.94fps] format. 1080i works 100% fine. If I record
the stream and play it with "mplayer foo.ts" everyhing is fine again, so this is
only in the capture portion of the code. Also if I add -nosound the bug does not
occur either, however i have no sound =)
There is virtaully no meaningful output but I'll post it anyway:
ben9:~/tmp$ mplayer dvb://WFXT -quiet -framedrop -cache 8192 -vo xvmc -vc
ffmpeg12mc
MPlayer dev-CVS-050426-00:00-3.4.3 (C) 2000-2005 MPlayer Team
CPU: Advanced Micro Devices Athlon MP/XP Thoroughbred (Family: 6, Stepping: 1)
Detected cache-line size is 64 bytes
CPUflags: MMX: 1 MMX2: 1 3DNow: 1 3DNow2: 1 SSE: 1 SSE2: 0
Compiled for x86 CPU with extensions: MMX MMX2 3DNow 3DNowEx SSE
Playing dvb://WFXT.
code taken from dvbstream for mplayer v0.4pre1 - (C) Dave Chapman 2001
Released under the GPL.
Latest version available from http://www.linuxstb.org/
dvb_tune Freq: 575000000
Cache fill: 0.00% (0 bytes) Win32 LoadLibrary failed to load: avisynth.dll,
/usr/lib/win32/avisynth.dll, /usr/local/lib/win32/avisynth.dll
TS file format detected.
DEMUX OPEN, AUDIO_ID: -1, VIDEO_ID: -1, SUBTITLE_ID: -1,
PROBING UP TO 2000000, PROG: 3
VIDEO MPEG2(pid=49)AUDIO A52(pid=52) NO SUBS (yet)! PROGRAM N. 3
Opened TS demuxer, audio: 2000(pid 52), video: 10000002(pid 49)...POS=43616
VIDEO: MPEG2 1280x720 (aspect 3) 59.940 fps 19000.0 kbps (2375.0 kbyte/s)
==========================================================================
Opening audio decoder: [liba52] AC3 decoding with liba52
Using SSE optimized IMDCT transform
AC3: 2.0 (stereo) 48000 Hz 384.0 kbit/s
Using MMX optimized resampler
AUDIO: 48000 Hz, 2 ch, s16le, 384.0 kbit/25.00% (ratio: 48000->192000)
Selected audio codec: [a52] afm:liba52 (AC3-liba52)
==========================================================================
vo: X11 running at 1680x1050 with depth 24 and 32 bpp (":0.0" => local display)
vo_xvmc: X-Video extension 2.2
vo_xvmc: X-Video MotionCompensation Extension version 1.0
==========================================================================
Forced video codec: ffmpeg12mc
Opening video decoder: [ffmpeg] FFmpeg's libavcodec codec family
vd_ffmpeg: XVMC accelerated codec
Selected video codec: [ffmpeg12mc] vfm:ffmpeg (FFmpeg MPEG-1/2 (XvMC))
==========================================================================
Checking audio filter chain for 48000Hz/2ch/s16le -> 48000Hz/2ch/s16le...
AF_pre: 48000Hz/4ch/floatle
alsa-init: 1 soundcard found, using: plug:surround40
alsa: 48000 Hz/4 channels/16 bpf/262144 bytes buffer/Float 32 bit Little Endian
AO: [alsa] 48000Hz 4ch floatle (4 bps)
Building audio filter chain for 48000Hz/2ch/s16le -> 48000Hz/4ch/floatle...
Starting playback...
vd_ffmpeg: XVMC accelerated MPEG2
trying pixfmt=0
VDec: vo config request - 1280 x 720 (preferred csp: MPEG1/2 Motion Compensation
and IDCT)
VDec: using MPEG1/2 Motion Compensation and IDCT as output csp (no 0)
Movie-Aspect is 1.78:1 - prescaling to correct movie aspect.
VO: [xvmc] 1280x720 => 1280x720 MPEG1/2 Motion Compensation and IDCT
vo_xvmc: Port 177 grabed
vo_xvmc: Found matching surface with id=54434449 on 177 port at 0 adapter
vo_xvmc: Allocated Direct Context
vo_xvmc: data_blocks allocated
vo_xvmc: mv_blocks allocated
vo_xvmc: Motion Compensation context allocated - 8 surfaces
vo_xvmc: idct=1 unsigned_intra=0
vo_xvmc: looking for OSD support
Subpicture id 0x34344149
vo_xvmc: OSD support by additional frontend rendering
Your system is too SLOW to play this!
Possible reasons, problems, workarounds:
- Most common: broken/buggy _audio_ driver
- Try -ao sdl or use the OSS emulation of ALSA.
- Experiment with different values for -autosync, 30 is a good start.
- Slow video output
- Try a different -vo driver (-vo help for a list) or try -framedrop!
- Slow CPU
- Don't try to play a big DVD/DivX on a slow CPU! Try -hardframedrop.
- Broken file
- Try various combinations of -nobps -ni -forceidx -mc 0.
- Slow media (NFS/SMB mounts, DVD, VCD etc)
- Try -cache 8192.
- Are you using -cache to play a non-interleaved AVI file?
- Try -nocache.
Read DOCS/HTML/en/video.html for tuning/speedup tips.
If none of this helps you, read DOCS/HTML/en/bugreports.html.
alsa-uninit: pcm closed
Exiting... (Quit)
After some help from nicodvb, he helped me narrow it down to reimar's patch.
Once I reverse it, everything works. Here is the patch:
diff -Naurb MPlayer-20050423/mplayer.c MPlayer-20050422/mplayer.c
--- MPlayer-20050423/mplayer.c 2005-04-22 20:28:10.000000000 +0200
+++ MPlayer-20050422/mplayer.c 2005-04-15 14:14:24.000000000 +0200
@@ -2143,9 +2143,9 @@
current_module="ao2_init";
if(!(audio_out=init_best_audio_out(audio_driver_list,
0, plugin flag
- ao_data.samplerate,
- ao_data.channels,
- ao_data.format,0))){
+ force_srate?force_srate:ao_data.samplerate,
+ audio_output_channels?audio_output_channels:ao_data.channels,
+ audio_output_format?audio_output_format:ao_data.format,0))){
FAILED:
mp_msg(MSGT_CPLAYER,MSGL_ERR,MSGTR_CannotInitAO);
uninit_player(INITED_ACODEC); close codec
Attachments (2)
Change History (10)
comment:1 by , 19 years ago
comment:2 by , 19 years ago
There are several things you should do:
1) Give the output of mplayer when you add the -v switch, and also the output
for the case where it works (using diff on both might be interesting as well,
but I can do that myself *g*)
2) try without af=volnorm
3) try -ao oss
comment:3 by , 19 years ago
comment:4 by , 19 years ago
attachments.filename: | mplayer_normal.log → wrong.log |
---|
comment:5 by , 19 years ago
attachments.description: | volnorm disabled, using vo=alsa → bad test, ignore this.., 1 |
---|
comment:6 by , 19 years ago
comment:7 by , 19 years ago
Please try again with latest CVS, and also see if adding channels=2 to the end
of the filter chain helps.
comment:8 by , 19 years ago
Owner: | changed from | to
---|
Reimar, you should assign bugs that you are handling to yourself (and accept the
bug).
Another important note.. here is my .mplayer/config:
vo=xv
ao=alsa
dvd-device=/dev/hdd
af="volnorm"
subfont-text-scale=3
subfont-osd-scale=5
monitoraspect=16:10
and I noticed that this doesn't happen with ao=oss, or at least doesn't happen
right away. (I couldn't get it to happen at all, but nicodvb thinks it will
happen eventually)