Opened 9 years ago

Closed 8 years ago

#2219 closed defect (fixed)

MPlayer DVD input not properly analysed on analysis (-vo null -ao null)

Reported by: 4Selur@… Owned by: beastd
Priority: normal Component: undetermined
Version: unspecified Severity: major
Keywords: identify dvd no sound Cc: reimar
Blocked By: Blocking:
Reproduced by developer: no Analyzed by developer: no

Description (last modified by beastd)

Summary of the bug:
When analyzing a DVD analysis is broken.
Audio information is skipped with "Audio: no sound".

How to reproduce:
Call

"G:\Hybrid\mplayer.exe" -v -msglevel identify=6 -vo null -ao null -frames 0 dvd://1 -dvd-device "F:\TESTCL~1\DVDs\ELEPHA~1\VIDEO_TS"

on DVD (Elephants Dream; https://drive.google.com/folderview?id=0B_WxUS1XGCPASUZibG5XZkRfeTg&usp=sharing).

Workarounds I found:

  1. adding '-novideo' to the call, I get audio, but like suspected now the video info si skipped.
  2. removing '-ao null', but like suspected this will init the audio playback (which I do not want)

=> please bring back the old behaviour where the analysis of a DVD was possible without having to disable audio or video.

Thanks

Change History (26)

comment:1 by 4Selur@…, 9 years ago

typo:
{{{ "G:\Hybrid\mplayer.exe" -v -msglevel identify=6 -novideo -vo null -ao null -frames 0 dvd://1 -dvd-device "F:\TESTCL~1\DVDs\ELEPHA~1\VIDEO_TS"}}

comment:2 by 4Selur@…, 9 years ago

"G:\Hybrid\mplayer.exe" -v -msglevel identify=6 -novideo -vo null -ao null -frames 0 dvd://1 -dvd-device "F:\TESTCL~1\DVDs\ELEPHA~1\VIDEO_TS"

comment:3 by 4Selur@…, 9 years ago

Resolution: fixed
Status: newclosed

seems to be fixed again now (r37342), r37338 was broken
thanks

comment:4 by 4Selur@…, 9 years ago

Resolution: fixed
Status: closedreopened

Sorry, my bad, not fixed, accidentally copied the wrong command line to check if the problem was fixed or not.

"G:\Hybrid\mplayer.exe" -v -msglevel identify=6 -vo null -ao null -frames 0 dvd://1 -dvd-device "F:\TESTCL~1\DVDs\ELEPHA~1\VIDEO_TS"

still shows no audio infos.

comment:5 by beastd, 9 years ago

Description: modified (diff)

comment:6 by beastd, 9 years ago

Description: modified (diff)

comment:7 by 4Selur@…, 9 years ago

Did some additional testing and on normal files the output is even more messed up:

"G:\Hybrid\mplayer.exe" -v -msglevel identify=6 -novideo -vo null -ao null -frames 0 "F:\TESTCL~1\test.avi"

MPlayer SVN-r37343-4.9.2 (C) 2000-2014 MPlayer Team
CPU vendor name: GenuineIntel  max cpuid level: 13
CPU: Intel(R) Core(TM) i7-4770K CPU @ 3.50GHz (Family: 6, Model: 60, Stepping: 3)
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 S
SE4: 1 SSE4.2: 1 AVX: 1
Compiled with runtime CPU detection.
Setting PATH to G:\Hybrid\codecs
get_path('codecs.conf') -> 'G:/Hybrid/mplayer/codecs.conf'
Reading optional codecs config file G:/Hybrid/mplayer/codecs.conf: No such file or directory
Reading optional codecs config file /local32/etc/mplayer/codecs.conf: No such file or directory
Using built-in default codecs.conf.
get_path('font/font.desc') -> 'G:/Hybrid/mplayer/font/font.desc'
font: can't open file: G:/Hybrid/mplayer/font/font.desc
font: can't open file: /local32/share/mplayer/font/font.desc
Using MMX (with tiny bit MMX2) Optimized OnScreenDisplay
Configuration: --prefix=/local32 --bindir=/local32/bin-video --cc=gcc --extra-cflags=-DPTW32_STATIC_LIB -O3 -std=gnu99 -DLIBTWOLAME_STATIC -DMODPLUG_STATIC --extra-libs=-lxml2 -llzma -lfreetype -lz -lbz2 -liconv -lws2_32 -lpthread -lwinpthread -lpng -lwinmm --extra-ldflags=-Wl,--allow-multiple-definition --enable-static --enable-runtime-cpudetection --enable-ass-internal --enable-bluray --disable-gif --disable-faac --disable-faac-lavc
CommandLine: '-v' '-msglevel' 'identify=6' '-novideo' '-vo' 'null' '-ao' 'null''-frames' '0' 'F:\TESTCL~1\test.avi'
Using Windows native timing
get_path('input.conf') -> 'G:/Hybrid/mplayer/input.conf'
Reading optional input config file G:/Hybrid/mplayer/input.conf: No such file or directory
Reading optional input config file /local32/etc/mplayer/input.conf: No such file or directory
Falling back on default (hardcoded) input config
get_path('test.avi.conf') -> 'G:/Hybrid/mplayer/test.avi.conf'

Playing F:\TESTCL~1\test.avi.
get_path('sub/') -> 'G:/Hybrid/mplayer/sub/'
WINSOCK2 init: 0
WINSOCK2 init: 0
[file] File size is 1846430 bytes
STREAM: [file] F:\TESTCL~1\test.avi
STREAM: Description: File
STREAM: Author: Albeu
STREAM: Comment: based on the code from ??? (probably Arpi)
libavformat version 56.16.101 (internal)
Configuration: --enable-gpl --enable-postproc
LAVF_check: AVI (Audio Video Interleaved)
AVI file format detected.
list_end=0x252
======= AVI Header =======
us/frame: 40000  (fps=25.000)
max bytes/sec: 107585
padding: 0
MainAVIHeader.dwFlags: (272) HAS_INDEX IS_INTERLEAVED
frames  total: 429   initial: 0
streams: 2
Suggested BufferSize: 0
Size:  640 x 352
==========================
list_end=0xD4
==> Found video stream: 0
ID_VIDEO_ID=0
[aviheader] Video stream found, -vid 0
====== STREAM Header =====
Type: vids   FCC: xvid (64697678)
Flags: 0
Priority: 0   Language: 0
InitialFrames: 0
Rate: 25/1 = 25.000
Start: 0   Len: 429
Suggested BufferSize: 18713
Quality 10000
Sample size: 0
==========================
Found 'bih', 40 bytes of 40
======= VIDEO Format ======
  biSize 40
  biWidth 640
  biHeight 352
  biPlanes 1
  biBitCount 24
  biCompression 1145656920='XVID'
  biSizeImage 1351680
===========================
Regenerating keyframe table for MPEG-4 video.
list_end=0x146
==> Found audio stream: 1
ID_AUDIO_ID=1
[aviheader] Audio stream found, -aid 1
====== STREAM Header =====
Type: auds   FCC:  (0)
Flags: 0
Priority: 0   Language: 0
InitialFrames: 1
Rate: 48000/1152 = 41.667
Start: 0   Len: 715
Suggested BufferSize: 576
Quality -1
Sample size: 0
==========================
Found 'wf', 30 bytes of 18
======= WAVE Format =======
Format Tag: 85 (0x55)
Channels: 2
Samplerate: 48000
avg byte/sec: 15397
Block align: 1152
bits/sample: 0
cbSize: 12
mp3.wID=1
mp3.fdwFlags=0x2
mp3.nBlockSize=369
mp3.nFramesPerBlock=1
mp3.nCodecDelay=0
==========================================================================
list_end=0x252
AVI: dmlh found (size=248) (total_frames=429)
list_end=0x398
hdr=Title  size=18
Title     : Encoding TestClip
hdr=Artist  size=10
Artist    : AutorTest
hdr=Product  size=6
Product   : Movie
hdr=Creation Date  size=6
Creation Date: Heute
hdr=Genre  size=12
Genre     : Documentary
hdr=Subject  size=20
Subject   : downfall of Hitler
hdr=Copyright  size=14
Copyright : CopyrightTest
hdr=Keywords  size=8
Keywords  : Hitler
hdr=Comments  size=46
Comments  : Kleiner Testclip den ich zum Testen verwende
hdr=Software  size=46
Software  : VirtualDub build 29393/releaseNandub v1.0rc2
list_end=0x1BE3DC
Found movie at 0x280C - 0x1BE3DC
Reading INDEX block, 1144 chunks for 429 frames (fpos=1827812).
list_end=0x1C2C16
AVI index offset: 0x2808 (movi=0x280C idx0=0x4 idx1=0x18C)
Auto-selected AVI audio ID = 1
AVI_NI: No video stream found.
Checking for YUV4MPEG2
ASF_check: not ASF guid!
Checking for REAL
Checking for SMJPEG
Checking for Nullsoft Streaming Video
Checking for MOV
Checking for VIVO
header block 1 size: 73
AVS: avs_check_file - attempting to open file F:\TESTCL~1\test.avi
AVS: File is too big, aborting...
Checking for PVA
Checking for MPEG-TS...
TRIED UP TO POSITION 70957, FOUND 47, packet_size= 0, SEEMS A TS? 0
Checking for LMLM4 Stream Format
Invalid packet in LMLM4 stream: ch=21065 size=237771768
LMLM4 Stream Format not found
sync_mpeg_ps: seems to be MP3 stream...
MPEG Stream reached EOF
MPEG packet stats: p100: 4  p101: 0 p1B6: 14 p12x: 1 sli: 0 a: 0 b: 0 c: 0 idr: 0 sps: 0 pps: 0 PES: 0  MP3: 101, synced: 0
sync_mpeg_ps: seems to be MP3 stream...
MPEG Stream reached EOF
MPEG packet stats: p100: 4  p101: 0 p1B6: 14 p12x: 1 sli: 0 a: 0 b: 0 c: 0 idr: 0 sps: 0 pps: 0 PES: 0  MP3: 101, synced: 0
==> Found video stream: 0
ID_VIDEO_ID=0
ds_fill_buffer: EOF reached (stream: video)
LAVF_check: AVI (Audio Video Interleaved)
libavformat file format detected.
[avi @ 02598d00]use odml:1
st:1 removing common factor 384 from timebase
[avi @ 025b9020]Before avformat_find_stream_info() pos: 10252 bytes read:168316 seeks:5
[avi @ 025b9020]All info found
[avi @ 025b9020]After avformat_find_stream_info() pos: 35184 bytes read:201084 seeks:5 frames:22
==> Found video stream: 0
ID_VIDEO_ID=0
======= VIDEO Format ======
  biSize 81
  biWidth 640
  biHeight 352
  biPlanes 1
  biBitCount 24
  biCompression 1446269005='MP4V'
  biSizeImage 675840
Unknown extra header dump: [0] [0] [1] [b0] [f5] [0] [0] [1] [b5] [9] [0] [0] [1
] [0] [0] [0] [1] [20] [8] [86] [84] [0] [67] [c] [50] [10] [b0] [51] [8f] [0] [
0] [1] [b2] [58] [76] [69] [44] [30] [30] [34] [36]
===========================
[lavf] stream 0: video (mpeg4), -vid 0
==> Found audio stream: 1
ID_AUDIO_ID=0
======= WAVE Format =======
Format Tag: 85 (0x55)
Channels: 2
Samplerate: 48000
avg byte/sec: 15397
Block align: 1152
bits/sample: 0
cbSize: 12
mp3.wID=1
mp3.fdwFlags=0x2
mp3.nBlockSize=369
mp3.nFramesPerBlock=1
mp3.nCodecDelay=0
==========================================================================
[lavf] stream 1: audio (mp3), -aid 0
LAVF: 1 audio and 1 video streams found
LAVF: build 3674213
Clip info:
 ISGN: Drama
ID_CLIP_INFO_NAME0=ISGN
ID_CLIP_INFO_VALUE0=Drama
 language: Undefined
ID_CLIP_INFO_NAME1=language
ID_CLIP_INFO_VALUE1=Undefined
 IRTD: Unrated
ID_CLIP_INFO_NAME2=IRTD
ID_CLIP_INFO_VALUE2=Unrated
 title: Encoding TestClip
ID_CLIP_INFO_NAME3=title
ID_CLIP_INFO_VALUE3=Encoding TestClip
 artist: AutorTest
ID_CLIP_INFO_NAME4=artist
ID_CLIP_INFO_VALUE4=AutorTest
 album: Movie
ID_CLIP_INFO_NAME5=album
ID_CLIP_INFO_VALUE5=Movie
 date: Heute
ID_CLIP_INFO_NAME6=date
ID_CLIP_INFO_VALUE6=Heute
 genre: Documentary
ID_CLIP_INFO_NAME7=genre
ID_CLIP_INFO_VALUE7=Documentary
 ISBJ: downfall of Hitler
ID_CLIP_INFO_NAME8=ISBJ
ID_CLIP_INFO_VALUE8=downfall of Hitler
 copyright: CopyrightTest
ID_CLIP_INFO_NAME9=copyright
ID_CLIP_INFO_VALUE9=CopyrightTest
 IKEY: Hitler
ID_CLIP_INFO_NAME10=IKEY
ID_CLIP_INFO_VALUE10=Hitler
 comment: Kleiner Testclip den ich zum Testen verwende
ID_CLIP_INFO_NAME11=comment
ID_CLIP_INFO_VALUE11=Kleiner Testclip den ich zum Testen verwende
 encoder: VirtualDub build 29393/releaseNandub v1.0rc2
ID_CLIP_INFO_NAME12=encoder
ID_CLIP_INFO_VALUE12=VirtualDub build 29393/releaseNandub v1.0rc2
ID_CLIP_INFO_N=13
Load subtitles in F:\TESTCL~1\
get_path('sub/') -> 'G:/Hybrid/mplayer/sub/'
ID_FILENAME=F:\TESTCL~1\test.avi
ID_DEMUXER=lavf
ID_AUDIO_FORMAT=85
ID_AUDIO_BITRATE=123176
ID_AUDIO_RATE=48000
ID_AUDIO_NCH=2
ID_START_TIME=0.00
ID_LENGTH=17.16
ID_SEEKABLE=1
ID_CHAPTERS=0
==========================================================================
Opening audio decoder: [mpg123] MPEG 1.0/2.0/2.5 layers I, II, III
dec_audio: Allocating 8192 + 131072 = 139264 bytes for output buffer.
MPEG 1.0 layer III, 128 kbit/s, 48000 Hz joint-stereo
AUDIO: 48000 Hz, 2 ch, s16le, 128.0 kbit/8.33% (ratio: 16000->192000)
ID_AUDIO_BITRATE=128000
ID_AUDIO_RATE=48000
ID_AUDIO_NCH=2
Selected audio codec: [mpg123] afm: mpg123 (MPEG 1.0/2.0/2.5 layers I, II, III)
==========================================================================
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
Trying preferred audio driver 'null', options '[none]'
AO: [null] 48000Hz 2ch s16le (2 bytes per sample)
AO: Description: Null audio output
AO: Author: Tobias Diedrich <ranma+mplayer@tdiedrich.de>
Building audio filter chain for 48000Hz/2ch/s16le -> 48000Hz/2ch/s16le...
[dummy] Was reinitialized: 48000Hz/2ch/s16le
[dummy] Was reinitialized: 48000Hz/2ch/s16le
ID_AUDIO_CODEC=mpg123
Video: no video
Freeing 0 unused video chunks.
Starting playback...

Uninit audio filters...
[libaf] Removing filter dummy
Uninit audio: mpg123
WINSOCK2 uninit

Exiting... (End of file)
ID_EXIT=EOF

first it's:

==> Found audio stream: 1
ID_AUDIO_ID=1

then it's

==> Found audio stream: 1
ID_AUDIO_ID=0

-> this is seriously broken and not just a DVD input problem

comment:8 by 4Selur@…, 9 years ago

for files:
'-novideo -vo null -ao null' is broken
but '-vo null -ao null' on it's own works
would be nice to have one clear way this works.

comment:9 by beastd, 9 years ago

Cc: reimar added

Looks like a regression since r37335 .

comment:10 by reimar, 9 years ago

Note that r37335 does not affect AVI at all (I suspect that is a completely separate issue).
The problem with you MPEG file/DVDs is most likely that the audio simply starts later. For the one I tested, audio starts only 0.5 seconds in into the video.
The only reason this worked before was then likely that that revision fixed a bug that caused us to skip the first seconds of data.
I am not sure there is a truly reliable way except for decoding a bit more.
But what works for me is for example using -frames 1 together with -ss 5 to skip the first part.
Though using -frames 5 or so to decode at least a few video frames would be more reliable.
Admittedly it still prints "Audio: no sound" so there's probably something wrong indeed.
I'll look more later.

comment:11 by 4Selur@…, 9 years ago

Happy that someone will look into it.
using "-frames x" is a bad idea since this will cause mplayer to popup, which is really annoying when used in a batch or as a backround process. ;)

comment:12 by reimar, 9 years ago

What do you mean by "popup"? -vo null should already prevent a window opening, the only things -frames does is ensure it exits quickly.
And while there was a bug (fixed by r37347), what you need to do to get more information is to set -psprobe, to however many bytes you want MPlayer to parse in search for audio/video streams.

comment:13 by reimar, 9 years ago

As for your AVI file, I don't know yet why but it is first handled by our internal AVI demuxer, which then fails claiming there is no video stream.
The later mis-matching IDs are from the libavformat demuxer, which is kind of expected behaviour.

comment:14 by 4Selur@…, 9 years ago

You are right about the popup, forgot about "-vo null". :)

r37347 does seem to fix the problem for avi and DVD :)

-> Thanks!

comment:15 by reimar, 9 years ago

r37347 cannot fix AVI, that code will never be used for it.
I cannot reproduce the failure quite like this, so I think I'd need a sample file for it.
As an ugly workaround you could reset on "file format detected" printout (which would also discard the invalid ID_VIDEO_ID printout you got from the MPEG demuxer in addition), but that isn't ideal at all.

comment:16 by 4Selur@…, 9 years ago

Just found that the DVD input bug isn't fixed completely:

"G:\Hybrid\mplayer.exe" -v -msglevel identify=6 -ss 5 -vo null -ao null -frames 5 dvd://1 -dvd-device "F:\TESTCL~1\DVDs\ElephantsDream\VIDEO_TS"

produces:

MPlayer SVN-r37347-4.9.2 (C) 2000-2014 MPlayer Team
CPU vendor name: GenuineIntel  max cpuid level: 13
CPU: Intel(R) Core(TM) i7-4770K CPU @ 3.50GHz (Family: 6, Model: 60, Stepping: 3)
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 G:\Hybrid\codecs
get_path('codecs.conf') -> 'G:/Hybrid/mplayer/codecs.conf'
Reading optional codecs config file G:/Hybrid/mplayer/codecs.conf: No such file or directory
Reading optional codecs config file /local32/etc/mplayer/codecs.conf: No such file or directory
Using built-in default codecs.conf.
get_path('font/font.desc') -> 'G:/Hybrid/mplayer/font/font.desc'
font: can't open file: G:/Hybrid/mplayer/font/font.desc
font: can't open file: /local32/share/mplayer/font/font.desc
Using MMX (with tiny bit MMX2) Optimized OnScreenDisplay
Configuration: --prefix=/local32 --bindir=/local32/bin-video --cc=gcc --extra-cflags=-DPTW32_STATIC_LIB -O3 -std=gnu99 -DLIBTWOLAME_STATIC -DMODPLUG_STATIC --extra-libs=-lxml2 -llzma -lfreetype -lz -lbz2 -liconv -lws2_32 -lpthread -lwinpthread -lpng -lwinmm --extra-ldflags=-Wl,--allow-multiple-definition --enable-static --enable-runtime-cpudetection --enable-ass-internal --enable-bluray --disable-gif --disable-faac --disable-faac-lavc
CommandLine: '-v' '-msglevel' 'identify=6' '-ss' '5' '-vo' 'null' '-ao' 'null' '-frames' '5' 'dvd://1' '-dvd-device' 'F:\TESTCL~1\DVDs\ElephantsDream\VIDEO_TS'
Using Windows native timing
get_path('input.conf') -> 'G:/Hybrid/mplayer/input.conf'
Reading optional input config file G:/Hybrid/mplayer/input.conf: No such file or directory
Reading optional input config file /local32/etc/mplayer/input.conf: No such file or directory
Falling back on default (hardcoded) input config
get_path('1.conf') -> 'G:/Hybrid/mplayer/1.conf'

Playing dvd://1.
get_path('sub/') -> 'G:/Hybrid/mplayer/sub/'
WINSOCK2 init: 0
URL: dvd://1
libdvdread: Encrypted DVD support unavailable.
libdvdread: Could not open input: Permission denied
libdvdread: Can't open F:\TESTCL~1\DVDs\ElephantsDream\VIDEO_TS for reading
libdvdread: Device F:\TESTCL~1\DVDs\ElephantsDream\VIDEO_TS inaccessible, CSS authentication not available.
Reading disc structure, please wait...
ID_DVD_TITLES=1
ID_DVD_TITLE_1_CHAPTERS=8
ID_DVD_TITLE_1_ANGLES=1
ID_DVD_TITLE_1_LENGTH=636.560
ID_DVD_DISC_ID=0F0656880DBE109D6181CFC0E3243C6B
There are 1 titles on this DVD.

ID_DVD_CURRENT_TITLE=1
There are 1 angles in this DVD title.

DVD successfully opened.
audio stream: 0 format: ac3 (5.1) language: en aid: 128.

ID_AUDIO_ID=128
ID_AID_128_LANG=en
number of audio channels on disk: 1.
subtitle ( sid ): 0 language: en

ID_SUBTITLE_ID=0
ID_SID_0_LANG=en
subtitle ( sid ): 0 language: en

ID_SUBTITLE_ID=0
ID_SID_0_LANG=en
number of subtitles on disk: 2

DVD start cell: 0  pack: 0x0-0x2BA5
CHAPTERS: 00:00:00.000,00:00:26.560,00:01:06.880,00:02:25.840,00:03:34.960,00:04:40.960,00:06:12.160,00:09:02.560,
DVD start=0 end=266249
STREAM: [null] dvd://1
STREAM: Description: DVD stream
STREAM: Author:
STREAM: Comment:
system stream synced at 0xD (13)!
==> Found video stream: 0
ID_VIDEO_ID=0
DVD Seek! lba=0x0  cell=0  packs: 0x0-0x2BA5
Angle-seek synced by cell/vob IDN search!
MPEG-PS file format detected.
Searching for sequence header... OK!
VIDEO:  MPEG2  720x576  (aspect 3)  25.000 fps  8500.0 kbps (1062.5 kbyte/s)
[V] filefmt:2  fourcc:0x10000002  size:720x576  fps:25.000  ftime:=0.0400
get_path('sub/') -> 'G:/Hybrid/mplayer/sub/'
ID_FILENAME=dvd://1
ID_DEMUXER=mpegps
ID_VIDEO_FORMAT=0x10000002
ID_VIDEO_BITRATE=8500000
ID_VIDEO_WIDTH=720
ID_VIDEO_HEIGHT=576
ID_VIDEO_FPS=25.000
ID_VIDEO_ASPECT=0.0000
ID_START_TIME=unknown
ID_LENGTH=636.56
ID_SEEKABLE=1
ID_CHAPTERS=8
==========================================================================
Opening video decoder: [ffmpeg] FFmpeg's libavcodec codec family
libavcodec version 56.19.100 (internal)
Configuration: --enable-gpl --enable-postproc
INFO: libavcodec init OK!
Selected video codec: [ffmpeg2] vfm: ffmpeg (FFmpeg MPEG-2)
==========================================================================
ID_VIDEO_CODEC=ffmpeg2
Audio: no sound
Freeing 0 unused audio chunks.
Starting playback...
DVD Seek! lba=0x535  cell=0  packs: 0x0-0x2BA5
Angle-seek synced by cell/vob IDN search!
==> Found audio stream: 128
ID_AUDIO_ID=128
[ffmpeg] aspect_ratio: 1.777778
[ffmpeg] aspect_ratio: 1.777778
VDec: vo config request - 720 x 576 (preferred colorspace: Planar YV12)
Trying filter chain: vo
VDec: using Planar YV12 as output csp (no 0)
Movie-Aspect is 1.78:1 - prescaling to correct movie aspect.
ID_VIDEO_ASPECT=1.7778
VO Config (720x576->1024x576,flags=0,'MPlayer',0x32315659)
VO: [null] 720x576 => 1024x576 Planar YV12
VO: Description: Null video output
VO: Author: Aaron Holtzman <aholtzma@ess.engr.uvic.ca>
*** [vo] Allocating mp_image_t, 768x576x12bpp YUV planar, 663552 bytes
*** [vo] Allocating mp_image_t, 768x576x12bpp YUV planar, 663552 bytes
V:   6.0   4/  4 ??% ??% ??,?% 0 0
==========================================================================
Opening audio decoder: [ffmpeg] FFmpeg/libavcodec audio decoders
dec_audio: Allocating 1536000 + 131072 = 1667072 bytes for output buffer.
FFmpeg's libavcodec audio codec
INFO: libavcodec "ac3" init OK!
[ac3 @ 0210d300]frame sync error
lavc_audio: error
AUDIO: 48000 Hz, 2 ch, floatle, 448.0 kbit/14.58% (ratio: 56000->384000)
ID_AUDIO_BITRATE=448000
ID_AUDIO_RATE=48000
ID_AUDIO_NCH=2
Selected audio codec: [ffac3] afm: ffmpeg (FFmpeg AC-3)
==========================================================================
Building audio filter chain for 48000Hz/2ch/floatle -> 0Hz/0ch/??...
[libaf] Adding filter dummy
[dummy] Was reinitialized: 48000Hz/2ch/floatle
[dummy] Was reinitialized: 48000Hz/2ch/floatle
Trying preferred audio driver 'null', options '[none]'
AO: [null] 48000Hz 2ch floatle (4 bytes per sample)
AO: Description: Null audio output
AO: Author: Tobias Diedrich <ranma+mplayer@tdiedrich.de>
Building audio filter chain for 48000Hz/2ch/floatle -> 48000Hz/2ch/floatle...
[dummy] Was reinitialized: 48000Hz/2ch/floatle
[dummy] Was reinitialized: 48000Hz/2ch/floatle
Increasing filtered audio buffer size from 0 to 81920
*** [vo] Allocating mp_image_t, 768x576x12bpp YUV planar, 663552 bytes
A:   5.9 V:   6.1 A-V: -0.230 ct: -0.030   6/  6 ??% ??% ??,?% 0 0
[VD_FFMPEG] DRI failure.
*** [vo] Exporting mp_image_t, 720x576x12bpp YUV planar, 622080 bytes
A:   6.0 V:   6.2 A-V: -0.222 ct: -0.038   8/  8 ??% ??% ??,?% 0 0
EOF code: 1

Uninit audio filters...
[libaf] Removing filter dummy
Uninit audio: ffmpeg
Uninit video: ffmpeg
WINSOCK2 uninit

Exiting... (End of file)
ID_EXIT=EOF

-> The audio is analyzed, but the 'Audio: no sound' is still present. (and I used -ss 5 and -frames 5)

---
the avi I used is also present in my google drive share (test.avi)

comment:17 by reimar, 9 years ago

You misunderstood. For MPEG, streams are added as they appear, as the format has no list of available streams. -ss 5 and -frames 5 ensures they (usually) appear before MPlayer exits, and is a work-around.
What was fixed by r37347 is that you can again alternatively instruct MPlayer to search for streams within the first n bytes of the file using "-psprobe n".
This also works with -frames 0 and will not print "Audio: no sound".
The reason it "worked" originally was that the default of "-psprobe 0" was broken, and caused some data to be skipped and slower startup.
I am not sure the current behaviour is the idea final solution to this issue, but the behaviour seems reasonable.

comment:18 by reimar, 9 years ago

Ah, and the fallback to libavformat for AVI was caused by the -novideo you had in that command-line.
That is a fairly stupid bug, I'll see if there is a quick fix. I guess very few people care about -novideo working with AVI though.

comment:19 by 4Selur@…, 9 years ago

You are right I misunderstood that.

"G:\Hybrid\mplayer.exe" -v -msglevel identify=6 -vo null -ao null -psprobe 100000 -frames 0 dvd://1 -dvd-device "F:\TESTCL~1\DVDs\ElephantsDream\VIDEO_TS"

does helps.

Thanks!

Can '-psprobe ..' only be used with r37347+ or can it be used with older mplayer versions too?

comment:20 by reimar, 9 years ago

It should work just fine even with ancient MPlayer versions, it just might not help.

comment:21 by 4Selur@…, 9 years ago

Thanks for clearing that up. :)

comment:22 by 4Selur@…, 9 years ago

Another problem which seems to be related is that now, when calling:

"G:\Hybrid\mplayer.exe" -v -msglevel identify=6 -vo null -ao null -psprobe 100000 -frames 0 dvd://1 -dvd-device "F:\TESTCL~1\DVDs\ElephantsDream\VIDEO_TS"

I get:

{{{
MPlayer SVN-r37347-4.9.2 (C) 2000-2014 MPlayer Team
CPU vendor name: GenuineIntel  max cpuid level: 13
CPU: Intel(R) Core(TM) i7-4770K CPU @ 3.50GHz (Family: 6, Model: 60, Stepping: 3)
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 G:\Hybrid\codecs
get_path('codecs.conf') -> 'G:/Hybrid/mplayer/codecs.conf'
Reading optional codecs config file G:/Hybrid/mplayer/codecs.conf: No such file or directory
Reading optional codecs config file /local32/etc/mplayer/codecs.conf: No such file or directory
Using built-in default codecs.conf.
get_path('font/font.desc') -> 'G:/Hybrid/mplayer/font/font.desc'
font: can't open file: G:/Hybrid/mplayer/font/font.desc
font: can't open file: /local32/share/mplayer/font/font.desc
Using MMX (with tiny bit MMX2) Optimized OnScreenDisplay
Configuration: --prefix=/local32 --bindir=/local32/bin-video --cc=gcc --extra-cflags=-DPTW32_STATIC_LIB -O3 -std=gnu99 -DLIBTWOLAME_STATIC -DMODPLUG_STATIC --extra-libs=-lxml2 -llzma -lfreetype -lz -lbz2 -liconv -lws2_32 -lpthread -lwinpthread -lpng -lwinmm --extra-ldflags=-Wl,--allow-multiple-definition --enable-static --enable-runtime-cpudetection --enable-ass-internal --enable-bluray --disable-gif --disable-faac --disable-faac-lavc
CommandLine: '-v' '-msglevel' 'identify=6' '-vo' 'null' '-ao' 'null' '-psprobe' '100000' '-frames' '0' 'dvd://1' '-dvd-device' 'F:\TESTCL~1\DVDs\ElephantsDream\
VIDEO_TS'
Using Windows native timing
get_path('input.conf') -> 'G:/Hybrid/mplayer/input.conf'
Reading optional input config file G:/Hybrid/mplayer/input.conf: No such file or directory
Reading optional input config file /local32/etc/mplayer/input.conf: No such file or directory
Falling back on default (hardcoded) input config
get_path('1.conf') -> 'G:/Hybrid/mplayer/1.conf'

Playing dvd://1.
get_path('sub/') -> 'G:/Hybrid/mplayer/sub/'
WINSOCK2 init: 0
URL: dvd://1
libdvdread: Encrypted DVD support unavailable.
libdvdread: Could not open input: Permission denied
libdvdread: Can't open F:\TESTCL~1\DVDs\ElephantsDream\VIDEO_TS for reading
libdvdread: Device F:\TESTCL~1\DVDs\ElephantsDream\VIDEO_TS inaccessible, CSS authentication not available.
Reading disc structure, please wait...
ID_DVD_TITLES=1
ID_DVD_TITLE_1_CHAPTERS=8
ID_DVD_TITLE_1_ANGLES=1
ID_DVD_TITLE_1_LENGTH=636.560
ID_DVD_DISC_ID=0F0656880DBE109D6181CFC0E3243C6B
There are 1 titles on this DVD.

ID_DVD_CURRENT_TITLE=1
There are 1 angles in this DVD title.

DVD successfully opened.
audio stream: 0 format: ac3 (5.1) language: en aid: 128.

ID_AUDIO_ID=128
ID_AID_128_LANG=en
number of audio channels on disk: 1.
subtitle ( sid ): 0 language: en

ID_SUBTITLE_ID=0
ID_SID_0_LANG=en
subtitle ( sid ): 0 language: en

ID_SUBTITLE_ID=0
ID_SID_0_LANG=en
number of subtitles on disk: 2

DVD start cell: 0  pack: 0x0-0x2BA5
CHAPTERS: 00:00:00.000,00:00:26.560,00:01:06.880,00:02:25.840,00:03:34.960,00:04:40.960,00:06:12.160,00:09:02.560,
DVD start=0 end=266249
STREAM: [null] dvd://1
STREAM: Description: DVD stream
STREAM: Author:
STREAM: Comment:
system stream synced at 0xD (13)!
==> Found video stream: 0
ID_VIDEO_ID=0
DVD Seek! lba=0x0  cell=0  packs: 0x0-0x2BA5
Angle-seek synced by cell/vob IDN search!
MPEG-PS file format detected.
==> Found audio stream: 128
ID_AUDIO_ID=128
DVD Seek! lba=0x0  cell=0  packs: 0x0-0x2BA5
Angle-seek synced by cell/vob IDN search!
MPEG packet stats: p100: 17  p101: 17 p1B6: 0 p12x: 75 sli: 32 a: 32 b: 32 c: 31
 idr: 0 sps: 0 pps: 0
Searching for sequence header... system stream synced at 0x80D (2061)!
OK!
VIDEO:  MPEG2  720x576  (aspect 3)  25.000 fps  8500.0 kbps (1062.5 kbyte/s)
[V] filefmt:2  fourcc:0x10000002  size:720x576  fps:25.000  ftime:=0.0400
get_path('sub/') -> 'G:/Hybrid/mplayer/sub/'
ID_FILENAME=dvd://1
ID_DEMUXER=mpegps
ID_VIDEO_FORMAT=0x10000002
ID_VIDEO_BITRATE=8500000
ID_VIDEO_WIDTH=720
ID_VIDEO_HEIGHT=576
ID_VIDEO_FPS=25.000
ID_VIDEO_ASPECT=0.0000
ID_AUDIO_FORMAT=8192
ID_AUDIO_BITRATE=0
ID_AUDIO_RATE=0
ID_AUDIO_NCH=0
ID_START_TIME=0.28
ID_LENGTH=636.56
ID_SEEKABLE=1
ID_CHAPTERS=8
==========================================================================
Opening video decoder: [ffmpeg] FFmpeg's libavcodec codec family
libavcodec version 56.19.100 (internal)
Configuration: --enable-gpl --enable-postproc
INFO: libavcodec init OK!
Selected video codec: [ffmpeg2] vfm: ffmpeg (FFmpeg MPEG-2)
==========================================================================
ID_VIDEO_CODEC=ffmpeg2
==========================================================================
Opening audio decoder: [ffmpeg] FFmpeg/libavcodec audio decoders
dec_audio: Allocating 1536000 + 131072 = 1667072 bytes for output buffer.
FFmpeg's libavcodec audio codec
INFO: libavcodec "ac3" init OK!
AUDIO: 48000 Hz, 2 ch, floatle, 448.0 kbit/14.58% (ratio: 56000->384000)
ID_AUDIO_BITRATE=448000
ID_AUDIO_RATE=48000
ID_AUDIO_NCH=2
Selected audio codec: [ffac3] afm: ffmpeg (FFmpeg AC-3)
==========================================================================
Building audio filter chain for 48000Hz/2ch/floatle -> 0Hz/0ch/??...
[libaf] Adding filter dummy
[dummy] Was reinitialized: 48000Hz/2ch/floatle
[dummy] Was reinitialized: 48000Hz/2ch/floatle
Trying preferred audio driver 'null', options '[none]'
AO: [null] 48000Hz 2ch floatle (4 bytes per sample)
AO: Description: Null audio output
AO: Author: Tobias Diedrich <ranma+mplayer@tdiedrich.de>
Building audio filter chain for 48000Hz/2ch/floatle -> 48000Hz/2ch/floatle...
[dummy] Was reinitialized: 48000Hz/2ch/floatle
[dummy] Was reinitialized: 48000Hz/2ch/floatle
ID_AUDIO_CODEC=ffac3
Starting playback...

Uninit audio filters...
[libaf] Removing filter dummy
Uninit audio: ffmpeg
Uninit video: ffmpeg
WINSOCK2 uninit

Exiting... (End of file)
ID_EXIT=EOF
}}}

-> first the audio is correctly identified as 5.1,
{{{
audio stream: 0 format: ac3 (5.1) language: en aid: 128.
}}}
but then its identified as stereo
{{{
AUDIO: 48000 Hz, 2 ch, floatle, 448.0 kbit/14.58% (ratio: 56000->384000)
ID_AUDIO_BITRATE=448000
ID_AUDIO_RATE=48000
ID_AUDIO_NCH=2
}}}

comment:23 by 4Selur@…, 9 years ago

Doh, that's just the info from the decoder,..

comment:24 by reimar, 9 years ago

Yes, though the decoder might give you the right info as well if you use -channels 6 to ask it not to downmix.

comment:25 by reimar, 9 years ago

Also that "audio stream: ..." printout is from the DVD's VTS (provided by libdvdread), so it may or may not be correct.

comment:26 by beastd, 8 years ago

Resolution: fixed
Status: reopenedclosed

I think this problem has been cleared up.

The new behavior should be better even if it doesn't detect as many streams with -frames 0.
Detecting the streams should now be possible after Reimar fixed -psprobe option (r37347).

@4Selur: Should you still have problems please re-open or consider creating a new ticket.
@reimar: Are there issues left you uncovered while investigating this ticket? Should we track them in separate tickets?

Note: See TracTickets for help on using tickets.