ogg files become corrupted/unplayable

Bug #1833190 reported by Igor
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Mixxx
Critical
Uwe Klotz

Bug Description

i'm using a build of the `master` branch of mixxx built with `faad=1` on ubuntu 19.04

here's an example of a before file:
https://igor.moomers.org/public/linger-before.ogg
here is the output of `ogginfo` on that file:

Processing file "the cranberries/the cranberries - linger.ogg"...

New logical stream (#1, serial: 00006612): type vorbis
Vorbis headers parsed for stream 1, information follows...
Version: 0
Vendor: Xiph.Org libVorbis I 20050304 (1.1.1)
Channels: 2
Rate: 44100

Nominal bitrate: 128.000000 kb/s
Upper bitrate not set
Lower bitrate not set
User comments section follows...
 ACOUSTID_FINGERPRINT=
 ACOUSTID_ID=
 ALBUM=Everybody Else Is Doing It, So Why Can`t We
 ALBUM ARTIST=The Cranberries
 ALBUMARTIST=The Cranberries
 ALBUMARTIST_CREDIT=
 ALBUMARTISTSORT=
 MUSICBRAINZ_ALBUMCOMMENT=
 MUSICBRAINZ_ALBUMSTATUS=
 MUSICBRAINZ_ALBUMTYPE=
 ARTIST=The Cranberries
 ARTIST_CREDIT=
 ARTISTSORT=
 ASIN=
 BPM=0
 CATALOGNUMBER=
 DESCRIPTION=
 COMMENT=
 COMPILATION=0
 COMPOSER=
 RELEASECOUNTRY=
 DATE=0000
 YEAR=0
 DISC=0
 DISCNUMBER=0
 DISCSUBTITLE=
 DISCTOTAL=0
 DISCC=0
 TOTALDISCS=0
 ENCODEDBY=
 ENCODER=
 GENRE=
 GROUPING=
 LABEL=
 PUBLISHER=
 LANGUAGE=
 LYRICS=
 MUSICBRAINZ_ALBUMARTISTID=
 MUSICBRAINZ_ALBUMID=
 MUSICBRAINZ_ARTISTID=
 MUSICBRAINZ_RELEASEGROUPID=
 MUSICBRAINZ_TRACKID=
 MEDIA=
 ORIGINALDATE=0000
 SCRIPT=
 TITLE=Linger
 TRACK=0
 TRACKNUMBER=0
 TRACKTOTAL=0
 TRACKC=0
 TOTALTRACKS=0
Vorbis stream 1:
 Total data length: 4430771 bytes
 Playback length: 4m:34.809s
 Average bitrate: 128.984635 kb/s
Logical stream 1 ended

i open mixxx -- note that "track metadata synchronization" is enabled.
i then load the file onto a deck.
i then press play. i let it play long enough that the `played` counter increments
i then stop the track and exit mixxx

the resulting file is here:
https://igor.moomers.org/public/linger-after.ogg
the output of ogginfo on the updated file:
WARNING: Could not decode Vorbis header packet 1 - invalid Vorbis stream (1)
WARNING: Could not decode Vorbis header packet 1 - invalid Vorbis stream (1)
Vorbis stream 1:
 Total data length: 0 bytes
 Playback length: 0m:00.000s
 Average bitrate: -nan kb/s
Logical stream 1 ended

re-opening mixxx and trying to play the file again says "the file could not be loaded", with the following log output:
Warning [CachingReaderWorker 1]: SoundSourceOggVorbis - Failed to initialize decoder for "file:///home/igor47/Music/music/the cranberries/the cranberries - linger.ogg"
Warning [CachingReaderWorker 1]: SoundSourceProxy - Unable to open file "file:///home/igor47/Music/music/the cranberries/the cranberries - linger.ogg" with provider "Xiph.org OggVorbis" using mode Strict
Warning [CachingReaderWorker 1]: SoundSourceSndFile - Error opening libsndfile file: "file:///home/igor47/Music/music/the cranberries/the cranberries - linger.ogg" "Supported file format but file is malformed."
Warning [CachingReaderWorker 1]: SoundSourceProxy - Unable to open file "file:///home/igor47/Music/music/the cranberries/the cranberries - linger.ogg" with provider "libsndfile" using mode Strict
Warning [CachingReaderWorker 1]: SoundSourceOggVorbis - Failed to initialize decoder for "file:///home/igor47/Music/music/the cranberries/the cranberries - linger.ogg"
Warning [CachingReaderWorker 1]: SoundSourceProxy - Failed to open file "file:///home/igor47/Music/music/the cranberries/the cranberries - linger.ogg" with provider "Xiph.org OggVorbis"
Warning [CachingReaderWorker 1]: CachingReaderWorker - Failed to open file: "/home/igor47/Music/music/the cranberries/the cranberries - linger.ogg"

this doesn't seem to happen with *all* ogg files, but a good number of them.

as a workaround, disabling metadata synchronization works well.

i'm glad i had backups of my ogg files, i haven't found a way to fix them once they're corrupted.

Revision history for this message
Uwe Klotz (uklotzde) wrote :

This is supposed to be caused by a severe bug in TagLib 1.11.1 and will affect all platforms:

https://github.com/taglib/taglib/issues/864

Unfortunately TagLib haven't released a bug fix version yet.

Changed in mixxx:
status: New → Confirmed
importance: Undecided → Critical
Revision history for this message
Uwe Klotz (uklotzde) wrote :

Our only option to prevent any further damage is to disable metadata export for OGG files until fixed versions are available for ALL platforms!

Changed in mixxx:
milestone: none → 2.2.1
milestone: 2.2.1 → 2.2.2
assignee: nobody → Uwe Klotz (uklotzde)
Revision history for this message
Uwe Klotz (uklotzde) wrote :
Changed in mixxx:
status: Confirmed → In Progress
Uwe Klotz (uklotzde)
Changed in mixxx:
status: In Progress → Fix Committed
Uwe Klotz (uklotzde)
Changed in mixxx:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.