FS#33915 - [vlc] 2.0.5-3 doesn't play audio from .wmv correctly
Attached to Project:
Arch Linux
Opened by George Angelopoulos (l4than-d3vers) - Monday, 18 February 2013, 10:10 GMT
Last edited by Gaetan Bisson (vesath) - Tuesday, 02 April 2013, 02:52 GMT
Opened by George Angelopoulos (l4than-d3vers) - Monday, 18 February 2013, 10:10 GMT
Last edited by Gaetan Bisson (vesath) - Tuesday, 02 April 2013, 02:52 GMT
|
Details
Description:
When playing a .wmv on vlc-2.0.5-3 the video shows correctly but the audio is almost completely covered by noise. I'm not sure this is a vlc bug and if it is, it's probably upstream. Vlc plays other file types just fine and the same .wmv files that don't play correctly on vlc play correctly on mplayer. Downgrade workaround: this happens with the following packages installed: vlc-2.0.5-3 ffmpeg-1:1.1.2-2 x264-20130206-1 Downgrading the above packages restores the functionality. VLC reports the audio codec as: Windows Media Audio 2 (WMA2) |
This task depends upon
Closed by Gaetan Bisson (vesath)
Tuesday, 02 April 2013, 02:52 GMT
Reason for closing: Upstream
Additional comments about closing: https://trac.videolan.org/vlc/ticket/826 0 or other
Tuesday, 02 April 2013, 02:52 GMT
Reason for closing: Upstream
Additional comments about closing: https://trac.videolan.org/vlc/ticket/826 0 or other
Left channel is just white noise, the right channel contains a distorted version of the audio, out of sync by a second or two.
On some videos the following error pops up once. On others the error pops up each second, ocasionally pausing for anywhere between 1 second and several minutes (perhaps dynamic bitrate?).
[wmav2 @ 0x7fdcc8c4c420] output buffer size is too small for the current frame (192000 < 196608)
the final number changes each time, with all the others staying the same, i.e:
[wmav2 @ 0x7fdcc8c4c420] output buffer size is too small for the current frame (192000 < [different number])
The [different number] is always larger than 192000. Values seen: 196608, 212992, 229376, 245760. These numbers are the same across different videos.
Searching for these values it seems they're all multiples of 16384. Namely 12 (196608), 13 (212992), 14 (229376) and 15 (245760).
16384 seems to be a magic number with wma? https://social.msdn.microsoft.com/Forums/en-US/windowsdirectshowdevelopment/thread/35bdbf3a-24a4-49cf-ad83-c7c4882c2782
Might be barking up the wrong tree, but hope it helps.
Moreover it is impossible to downgrade due to the lack of qt package.
Output:
[wmv3 @ 0x7f06d4c0c340] warning: first frame is no keyframe
[wmav2 @ 0x7f06d4c4e2e0] output buffer size is too small for the current frame (192000 < 245760)
[wmav2 @ 0x7f06d4c4e2e0] output buffer size is too small for the current frame (192000 < 196608)
ffmpeg-1-1.1.3-1 -> noise
ffmpeg-1-1.1.2-3 -> noise
ffmpeg-1-1.1.2-2 -> noise
ffmpeg-1-1.0.1-1 -> vlc error message: [0xb6d07fc8] main decoder error: corrupt module: /usr/lib/vlc/plugins/codec/libavcodec_plugin.so
[0xb6d07fc8] main decoder error: no suitable decoder module for fourcc `WMA2'. VLC probably does not support this sound or video format.
[0xb6d07fc8] main decoder error: corrupt module: /usr/lib/vlc/plugins/codec/libavcodec_plugin.so
[0xb6d07fc8] main decoder error: no suitable decoder module for fourcc `VC-1'. VLC probably does not support this sound or video format.
Opening audio decoder: [ffmpeg] FFmpeg/libavcodec audio decoders
libavcodec version 54.92.100 (internal)
AUDIO: 48000 Hz, 2 ch, floatle, 128.0 kbit/4.17% (ratio: 16002->384000)
Selected audio codec: [ffwmav2] afm: ffmpeg (DivX audio v2 (FFmpeg))
Opening audio decoder: [ffmpeg] FFmpeg/libavcodec audio decoders
AUDIO: 44100 Hz, 2 ch, floatle, 96.0 kbit/3.40% (ratio: 12000->352800)
Selected audio codec: [ffwmav2] afm: ffmpeg (DivX audio v2 (FFmpeg))
http://ffmpeg.org/pipermail/ffmpeg-cvslog/2012-October/055714.html
ffplay works fine, mplayer too.
Regards
strace dump attached.
This happens only with the QT UI, ncurses starts OK, but there's a problem with wmv/asf files.
On another box I run a custom vlc built from git and it works fine with the current ffmpeg version- no issues at all.
https://aur.archlinux.org/packages/vlc-nightly
Here's the stream I tested:
http://www.arirang.co.kr/Player/Live_Radio.asx
Previously it sounded like the attachment in the following comment:
https://bugs.archlinux.org/task/33833#comment107355
I attached some audio of how it sounds now.
I tested the windows media file from here: http://archive.org/details/Windows7WildlifeSampleVideo
i'm not using vlc and i don't even know why i was assigned to this ticket.
this is a major issue for a major application which is know for about a month
"Changed 3 weeks ago by courmisch
Status changed from new to closed
Resolution set to notvlc
ELL_PART... works fine here with both VLC versions 2.0.5 and 2.1.0. Must be a problem with your system's libav or FFmpeg."
7ebfe5b44a55d7f2c510e6aaeaf767319c786b60 is the first bad commit
commit 7ebfe5b44a55d7f2c510e6aaeaf767319c786b60
Author: Justin Ruggles <justin.ruggles@gmail.com>
Date: Tue Aug 28 23:12:49 2012 -0400
wmadec: use float planar sample format output
:040000 040000 c828c1e7f0a8aa91eec2d01e37fb0e31f2592ca1 898f523b2f831eacdb3ec569178497cba474c309 M libavcodec
http://paste.lisp.org/display/136254
Link to the AUR PKGBUILD I spun-up: https://aur.archlinux.org/packages/vlc-stable-git
Link to discussion thread in the vlc forums: http://forum.videolan.org/viewtopic.php?f=13&t=109402
EDIT: It appears the building 2.1-git solves this problem for me. The PKGBUILD for vlc-git is jacked-up in the AUR. Here is a functional one: https://gist.github.com/graysky2/5072045
Can someone else please verify that this indeed solves the static problem?
First I tried the vlc-git AUR build without your PKGBUILD changes. The stream I played had a little bit of static.
Next I tried the same build but with your changes and there was no static at all. BTW, in the PKGBUILD it should be 'install=vlc-git.install' not 'install=vlc.install'.
Here's the stream I tried (Korean):
mms://mbclive.andong.com/am_live
confirming the problem is fixed with graysky's github PKGBUILD link and the .install file in either his vlc-stable-git or the existing vlc-git AUR packages (which have the same contents).
wmv audio is fine, and I also played some avi, mpeg, mp4 and mp3 files for a sanity check. all fine.
while playing wmv these messages are now seen:
[wmv3 @ 0x7fcf04c62040] Bits overconsumption: 61312 > 61304
[wmv3 @ 0x7fcf04c62040] concealing 764 DC, 764 AC, 764 MV errors in I frame
[wmv3 @ 0x7fcf04c62040] Bits overconsumption: 3256 > 3248
[wmv3 @ 0x7fcf04c62040] concealing 1296 DC, 1296 AC, 1296 MV errors in I frame
[wmv3 @ 0x7fcf04c62040] Bits overconsumption: 32 > 24
[wmv3 @ 0x7fcf04c62040] concealing 1296 DC, 1296 AC, 1296 MV errors in I frame
instead of the old lines:
[wmav2 @ 0x7f06d4c4e2e0] output buffer size is too small for the current frame (192000 < 245760)
[wmav2 @ 0x7f06d4c4e2e0] output buffer size is too small for the current frame (192000 < 196608)
so good to have vlc working fully again!
This one is from Dec 30, 2012 and fixes the terrible static sound:
http://git.videolan.org/?p=vlc.git&a=commit&h=99ab06c7ffe189e81118f6122b1661c6c7af033c
This one is from the Jan 10, 2013 and fixes the glitchy sound:
http://git.videolan.org/?p=vlc.git&a=commit&h=160e651e28805cfe4d1f2d4295a58e5c4e1b7370
In order to compile VLC at these commit points I had to use the following cherry picked commits:
git cherry-pick 6b2595e68890e5db1b7334098b6f722e2f41a6d8 dc647fe5d1a089adc5e54d04d6df2c60f8d4da35 a92d777d0b430070ebc6aff422aec622323a59bf 062b886122287d8ad3ec93b3faa59808d2b1e9c7 0babd21eadc353496df7a03d76063a4124539d5c cde81e52f2d6e17383aced57fe6312eafa79cacf adda59578c429e26d41e645a54aede1296f3bb46 620da47221e5bf30cbffb1a591268e6b1a5edea8 d9e90b4d925a09506407a6c0300213d3f7149658
Link to forum post: http://forum.videolan.org/viewtopic.php?f=13&t=109402
Link to upstream bug report: https://trac.videolan.org/vlc/ticket/8260