summaryrefslogtreecommitdiffstats
path: root/video
diff options
context:
space:
mode:
authorwm4 <wm4@nowhere>2016-05-21 16:39:44 +0200
committerwm4 <wm4@nowhere>2016-05-21 16:39:44 +0200
commit035297212a22f219cdc7bcf4341a154fd2516c28 (patch)
tree9628927266e1c3970d8b4cde6ba282be2d344bed /video
parent79afa347cc8eb0a52e3acc11598eb6d497b938d5 (diff)
downloadmpv-035297212a22f219cdc7bcf4341a154fd2516c28.tar.bz2
mpv-035297212a22f219cdc7bcf4341a154fd2516c28.tar.xz
demux_mkv: better resync behavior for broken google-created webms
I've got a broken webm that fails to seek correctly with "--start=0". The problem is that every index entry points to 1 byte before cluster start (!!!). demux_mkv tries to resync to the next cluster, but since it already has read 2 bytes with ebml_read_id(), it doesn't get the first cluster, but the following one. Actually, it can be any amount of bytes from 1-4, whatever happens to look valid at this essentially random byte position. Improve this by resyncing from the original position, instead of the one after the EBML element ID has been attempted to be read. The file shows the following headers: | + Muxing application: google at 177 | + Writing application: google at 186 Indeed, the file was downloaded with youtube-dl. I can only guess that Google got it completely wrong.
Diffstat (limited to 'video')
0 files changed, 0 insertions, 0 deletions