VLC always skips the first 80 milliseconds of Opus files
I noticed the start of tracks being cut off on my Android phone. I reproduced it with desktop VLC on Linux and confirmed that VLC's output did not match opusdec's when compared side-by-side in an audio editor. After reading through the code a bit, I found that this is done on purpose.
The line responsible: http://git.videolan.org/?p=vlc.git;a=blob;f=modules/demux/ogg.c;h=ed658ebcdc7fdd935db8f3d094616b1a0c48d903;hb=HEAD#l2834
Even after removing this override, I discovered that sub-packet-size skips are not correctly applied because the adjustment to the block i_nb_samples is later overwritten here:
Removing both lines gives me correct playback, but I'm not sure what else might break as a side-effect.
I'm using Opus files encoded by opusenc, which seems to produce pre-skip values of 312 samples.