mirror of https://github.com/FFmpeg/FFmpeg.git
The ID3v2 "unsynchronization scheme" requires replacing any 0xFF 0x00
sequences with 0xFF. This has to be done on every byte of the source
data, while the current code skipped a byte after a replacement. This
meant 0xFF 0x00 0xFF 00 was translated to 0xFF 0xFF 0x00 instead of 0xFF
0xFF. It feels a bit messy to do this correctly with the avio use. But
fortunately, this translation can be done in-place, so we can just do it
in memory.
Inspired by what taglib does.
Also see 9ae80e6a9c
. (The sample file for
that commit is gone, so it could not be retested.)
pull/277/head
parent
ff46124b0d
commit
48bc9fffd1
1 changed files with 14 additions and 12 deletions
Loading…
Reference in new issue