Skip to main content

Notice

Please note that most of the software linked on this forum is likely to be safe to use. If you are unsure, feel free to ask in the relevant topics, or send a private message to an administrator or moderator. To help curb the problems of false positives, or in the event that you do find actual malware, you can contribute through the article linked here.
Topic: Is there a problem with winamp/vlc or is every other program wrong? (Read 9441 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

Is there a problem with winamp/vlc or is every other program wrong?

I've converted a 6.1 channel WAV file to WAVPACK and I'm getting inconsistent playback between players. I've compressed my audio as follows:

wavpack --channel-order=sl,sr,fc,lfe,bc,fl,fr --raw-pcm=48000,24,7 "P:\!temp\part1.pcm" part1.wv

It sounds to me, while using my stereo headphones, that the front center channel went missing. Everything else seems fine. This seems to only happen when playing in Winamp using the official plugin, and with VLC Media Player 2.0.1. I can't seem to figure out what version of Winamp I have, but it's a subversion of 5 anyhow.

When playing the same file in Media Player Classic 1.6.0, everything sounds fine, as well as when I play it through Windows Media Player using the Shark007 codec pack, and in XBMC 11.0.  With these, I can hear the center channel very clear (though not necessarily very loud) through both headphones.

I just downloaded WAVPACK for the first time today, so I'm using the most up to date version. I believe it's 4.60

EDIT: Also, I don't know if it's just me, but the audio (even in WMP or MPC) sounds a bit echo-ey. Also, while I was playing around to see what might have been wrong, when I ran the command above but using --channel-order=FL,FR,FC,LFE, everything sounded a-ok in both Winamp and VLC. MediaInfo still says that there are 7 channels though...

Is there a problem with winamp/vlc or is every other program wrong?

Reply #1
I'm assuming that this is the soundtrack to some movie, and that is in a matroska. If this is the case, use mkvextract (a part of mkvtoolnix) to extract the wavpack to it's native container. Then post "mediainfo part1.wv" and "wvunpack -ss part1.wv". Could you also post where it's from, if you're not too embarrassed?


As for the center channel and the echo, it's been my experience that mediaplayers incorrectly downmix oddball (non-5.1) multichannel audio.

Is there a problem with winamp/vlc or is every other program wrong?

Reply #2
I'm assuming that this is the soundtrack to some movie, and that is in a matroska. If this is the case, use mkvextract (a part of mkvtoolnix) to extract the wavpack to it's native container. Then post "mediainfo part1.wv" and "wvunpack -ss part1.wv". Could you also post where it's from, if you're not too embarrassed?


As for the center channel and the echo, it's been my experience that mediaplayers incorrectly downmix oddball (non-5.1) multichannel audio.


General
Complete name                            : P:\!temp\part1.wv
Format                                  : WavPack
File size                                : 2.82 GiB
Duration                                : 1h 46mn
Overall bit rate mode                    : Variable
Overall bit rate                        : 3 785 Kbps

Audio
Format                                  : WavPack
Format profile                          : 4.07
Duration                                : 1h 46mn
Bit rate mode                            : Variable
Bit rate                                : 3 785 Kbps
Channel(s)                              : 7 channels
Channel positions                        : Front: L C R, Side: L R, Back: C, LFE
Sampling rate                            : 48.0 KHz
Bit depth                                : 24 bits
Compression ratio                        : 0.609
Stream size                              : 2.82 GiB (100%)
Encoding settings                        : -h -hh

It's from the Lord of the Rings Two Towers Extended Bluray. Converted first with eac3to from dts-ma to mono wavs, then altered slightly so I could remove any gaps between the two movies, and re-muxed into a raw PCM using avisynth. From there I encoded it with wavpack.exe. Originally wanted to use FLAC, but I couldn't find a way to set the WAVEFORMEXTENSIBLE channel mask.

Interesting point though: While the PCM file plays the same in VLC as the wv file when converted to a WAV file, the same audio unpacked from wv and then converted to FLAC plays differently. Not correctly mind you, but different. Center channel comes out of the right ear only. Channels are in the same order, and the channel mask is set from using eac3to to convert the wav after it had been converted to wv. I think it's an issue with VLC not playing the audio properly. Plays fine in XBMC though, and that's what matters most to me. Just wondering if XBMC is reading the spec correctly or if it's patching something that's broken.

Is there a problem with winamp/vlc or is every other program wrong?

Reply #3
lol, I knew it was LOTR

www.hydrogenaudio.org/forums/index.php?&showtopic=93873

On the Extended Edition DVDs, there are 3 (excluding commentary) audio tracks

1) 6.1 DTS-ES (original mix)
2) 5.1 Dolby (theatrical, downmix)
3) stereo Dolby (downmix)

I know that the stereo downmix suffers from "echoes" at certain places.

From what I can tell, you're doing everything just fine (but taking the long way with seperate wav's IMO).

Quote
Originally wanted to use FLAC, but I couldn't find a way to set the WAVEFORMEXTENSIBLE channel mask.

FLAC cannot do 6.1 though it supports 7 channels. Wavpack will do any channel order.

Is there a problem with winamp/vlc or is every other program wrong?

Reply #4
I don't know why everybody tells me that FLAC won't work. FLAC does indeed use WAVEFORMEXTENSIBLE. It's not properly documented, but in one of the changelogs it says that it'll take a WFE WAVE file and use the same channel mask. The channel mask is stored in the VORBIS_COMMENT metadata block in the header of FLAC.

Quote
Encoder can now take WAVEFORMATEXTENSIBLE WAVE files as input; decoder will output WAVEFORMATEXTENSIBLE WAVE files when necessary to conform to the latest Microsoft specifications.


Nonetheless, I do agree that WAVEPACK may be a better choice given that it supports more than 8 channels total, FLAC should work just fine, and any player that doesn't support it clearly doesn't realize that it works.

Is there a problem with winamp/vlc or is every other program wrong?

Reply #5
Quote
I don't know why everybody tells me that FLAC won't work. FLAC does indeed use WAVEFORMEXTENSIBLE.

https://en.wikipedia.org/wiki/WAV#Description
Quote
Beginning with Windows 2000, a WAVE_FORMAT_EXTENSIBLE header was defined which specifies multiple audio channel data along with speaker positions, eliminates ambiguity regarding sample types and container sizes in the standard WAV format and supports defining custom extensions to the format chunk.

All the changelog says is that flac (the reference encoder) respects the WAVE_FORMAT_EXTENSIBLE header instead of just guessing the channel order. This doesn't change the fact that FLAC (the format) only supports a very limited number of channel orders. Also, the changelog for that is over 5 years old.

This is what happens when you try to encode a WAV with a WAVE_FORMAT_EXTENSIBLE header that FLAC doesn't support

Code: [Select]
$ flac a.wav 

flac 1.2.1, Copyright (C) 2000,2001,2002,2003,2004,2005,2006,2007  Josh Coalson
flac comes with ABSOLUTELY NO WARRANTY.  This is free software, and you are
welcome to redistribute it under certain conditions.  Type `flac' for details.

a.wav: ERROR: WAVEFORMATEXTENSIBLE chunk with unsupported channel mask=0x070F

Code: [Select]
General
Complete name                    : a.wav
Format                           : Wave
File size                        : 288 MiB
Duration                         : 5mn 0s
Overall bit rate                 : 8 064 Kbps

Audio
ID                               : 0
Format                           : PCM
Format settings, Endianness      : Little
Format settings, Sign            : Signed
Codec ID                         : 00001000-0000-0100-8000-00AA00389B71
Codec ID/Hint                    : Microsoft
Duration                         : 5mn 0s
Bit rate mode                    : Constant
Bit rate                         : 8 064 Kbps
Channel(s)                       : 7 channels
Channel positions                : Front: L C R, Side: L R, Back: C, LFE
Sampling rate                    : 48.0 KHz
Bit depth                        : 24 bits
Stream size                      : 288 MiB (100%)

Is there a problem with winamp/vlc or is every other program wrong?

Reply #6
Quote
This is what happens when you try to encode a WAV with a WAVE_FORMAT_EXTENSIBLE header that FLAC doesn't support

Just add --channel-map=none switch.

 

Is there a problem with winamp/vlc or is every other program wrong?

Reply #7
Quote
Just add --channel-map=none switch.

My point wasn't that the file can't be encoded. My point was that FLAC has no defined channel order for 7 channels.