FLAC decoder testbench: Difference between revisions
Porcuswiki (talk | contribs) (Spotify on the 60 to 63.) |
(Add Sony BDP-1700) |
||
Line 287: | Line 287: | ||
| - | | - | ||
| class="mw-collapsible mw-collapsed" | Tested with Rockbox 3.15 (latest stable) on Sansa Fuze with testbench revision 5 | | class="mw-collapsible mw-collapsed" | Tested with Rockbox 3.15 (latest stable) on Sansa Fuze with testbench revision 5 | ||
|- | |||
! Sony BDP-1700 | |||
| style="background: red;" | {{tooltip|Freezes|Freezes on non-standard blocksizes (254, 725, 1000 and 1937)}} | |||
| style="background: orange;" | {{tooltip|Fails|Garbled audio when playing file with LPC with qlp precision of 2}} | |||
| style="background: orange;" | {{tooltip|Fails|Stretches non-standard samplerates to 44.1kHz}} | |||
| style="background: lime;" | Plays | |||
| style="background: red;" | {{tooltip|Freezes|Freezes on variable blocksize files with non-standard blocksizes, stutters on variable blocksize files with standard blocksizes}} | |||
| style="background: lime;" | Plays | |||
| style="background: red;" | {{tooltip|Freezes|Freezes on non-standard blocksize (13456)}} | |||
| style="background: orange;" | {{tooltip|Fails|Incorrect decoding (clicks) of RICE2 partitions with escape codes}} | |||
| style="background: orange;" | {{tooltip|Fails|Stretches non-standard samplerates to 44.1kHz. Stutters on 192kHz with 32th order predictors}} | |||
| style="background: lime;" | Plays | |||
| style="background: red;" colspan="2" | {{tooltip|Freezes|Freezes on files with more than 6 channels}} | |||
| style="background: yellow;" | {{tooltip|Skips|Skips file with an unknown number of total samples}} | |||
| style="background: lime;" | Plays | |||
| style="background: lime;" | Plays | |||
| style="background: lime;" | Plays | |||
| style="background: orange;" | {{tooltip|Fails|Plays but skips parts of 24-bit file}} | |||
| class="mw-collapsible mw-collapsed" | Firmware m30.R.0527, testbench revision 6 | |||
|- | |- | ||
! colspan="16" | Software players | ! colspan="16" | Software players |
Revision as of 18:45, 23 May 2022
To further the use and development of FLAC, a testbench containing files with different parameters was constructed. The testbench consists of 63 FLAC files, each one having a different combination of characteristics (like samplerate, bitdepth and number of channels) and FLAC features (like blocksize, maximum partition order, maximum predictor order, maximum predictor precision etc.) However, all combinations fall within the so called subset: a limited set of FLAC parameters that fit in the frame header and are supposed to be 'streamable'. Please be aware that certain tested features (such as blocksize 16 or a samplerate of 38457Hz) are pretty much useless in day-to-day usage, and that failure to properly decode such a file is mostly of interest to developers than to users.
The testbench can be downloaded here (revision 6) and is maintained here. It is licensed under CC0 1.0.
Revision 6 adds four new files (60 to 63); files 1 through 59 are the same as in revision 5. For more information on which file tests what characteristics and features, please refer to the readme.txt file.
CDDA (44.1kHz/16-bit and less) | High-res (96kHz/24-bit and more) | Multichannel | Metadata | Various | ||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Decoder | Blocksizes | Features | Samplerates | Bitdepths | Var. bl.size | General | Blocksize | Features | Samplerates | Bitdepths | General | Features | Missing | Extreme | MIME | Mono | Overfl. | Remarks |
Files in test set | 1-10 | 11-18 | 19-21 | 22-23 | 24-27 | 28 | 29-30 | 31-32, 34 | 33-36 | 37 | 38-43 | 44 | 45-47 | 48-55 | 56-59 | 60 | 61-63 | |
Android | Fails | Plays | Plays | Plays | Skips | Plays | Plays | Plays | Plays | Fails | Fails | Skips | Plays | Plays | Plays | - | - | |
Citroën DS5 | Plays | Plays | Skips | Fails | Plays | Skips | Plays | Hangs | Plays | - | - | |||||||
Chromecast | Fails | Plays | Fails | Plays | Fails | Plays | Fails | Fails | Fails | Plays | Rejects | Plays | Reboots | Rejects | - | - | ||
Cowon iAudio 7 | Fails | Plays | Fails | Rejects | Rejects | Rejects | Rejects | Rejects | Rejects | Rejects | Freezes | - | - | - | - | - | ||
Ford SYNC | Plays | Plays | Plays | Skips | Plays | Plays | Plays | Plays | Plays | Skips | Plays | Plays | Plays | Skips | Plays | - | - | |
JVC KD-R871BT | Fails | Plays | Fails | Plays | Rejects | Plays | Freezes | Reboots | Fails | Rejects | Rejects | Rejects | Reboots | Rejects | - | - | ||
Kenwood KMM-BT304 | Fails | Plays | Rejects | Plays | Rejects | Plays | Rejects | Rejects | Rejects | Plays | Rejects | Rejects | Plays | Reboots | Plays | - | - | |
Lenco Xemio-240 | Plays | Plays | Freezes | Plays | Rejects | Plays | Plays | Plays | Plays | Fails | ||||||||
Onkyo TX-NR686 | Fails | Plays | Rejects | Plays | Rejects | Plays | Plays | Plays | Rejects | Plays | Rejects | Plays | Reboots | Plays | Plays | Plays | ||
Panasonic TX-60CX750E | Plays | Plays | Fails | Plays | Plays | Plays | Plays | Plays | Fails | Plays | Plays | Fails | Plays | Fails | Plays | Plays | Plays | |
Pioneer BDP-150 | Freezes | Fails | Fails | Plays | Freezes | Plays | Freezes | Fails | Fails | Plays | Freezes | Freezes | Freezes | Plays | Plays | Fails | ||
Pioneer DEH-1900UB | Skips | Plays | Skips | Skips | Skips | Skips | Plays | Other | Plays | - | - | |||||||
Rockbox | Plays | Plays | Plays | Plays | Plays | Plays | Skips | Skips | Plays | Plays | Freezes | Freezes | Fails | Plays | - | - | ||
Sony BDP-1700 | Freezes | Fails | Fails | Plays | Freezes | Plays | Freezes | Fails | Fails | Plays | Freezes | Skips | Plays | Plays | Plays | Fails | ||
Software players | ||||||||||||||||||
Foobar 2000 | Plays | Plays | Plays | Plays | Plays | Plays | Plays | Plays | Plays | Plays | Plays | Plays | Plays | Plays | Plays | Plays | Plays | |
VLC | Plays | Plays | Plays | Plays | Fails | Plays | Plays | Plays | Plays | Plays | Plays | Plays | Plays | Crashes | Plays | Plays | Plays | |
Winamp 5.8 | Plays | Plays | Plays | Freezes | Plays | Plays | Plays | Plays | Freezes | Plays | Freezes | Plays | Plays | Plays | - | - | ||
Windows Media Player | Plays | Plays | Plays | Rejects | Plays | Plays | Plays | Plays | Plays | Rejects | Plays | Plays | Plays | Rejects | Plays | - | - | |
mpv | Plays | Plays | Plays | Plays | Plays | Plays | Plays | Plays | Plays | Plays | Plays | Plays | Plays | Hangs | Plays | Plays | Fails | |
Mediamonkey 5 | Plays | Plays | Plays | Crashes | Plays | Plays | Plays | Plays | Plays | Silence | Breaks | Plays | Plays | Unresp. | Plays | - | - | |
Mplayer (Windows) | Plays | Plays | Plays | Plays | Plays | Plays | Plays | Plays | Plays | Fails | Plays | Plays | Plays | Unresp. | Plays | Plays | Fails | |
ffplay (Windows) | Fails | Plays | Plays | Plays | Plays | Plays | Plays | Plays | Plays | Plays | Plays | Plays | Plays | Unresp. | Plays | - | - | |
Spotify (Windows) | Plays | Plays | Plays | Skips | Plays | Plays | Plays | Plays | Skips | Skips | Skips (?) | Skips (?) | Plays | Rejects | Plays | Plays | Plays | |
JRiver Media Center | Plays | Plays | Plays | Plays | Plays | Plays | Plays | Plays | Plays | Plays | Plays | Plays | Plays | Rejects | Plays | - | - | |
Amarok (Windows) | Fails | Plays | Plays | Crashes | Plays | Plays | Fails | Plays | Skips | Fails | Plays | Plays | Plays | Plays | Plays | Plays | Fails | |
Exaile (Windows) | Plays | Plays | Plays | Plays | Fails | Plays | Plays | Plays | Plays | Plays | Plays | Plays | Plays | Plays | Plays | Plays | Plays | |
Quod Libet (Windows) | Plays | Plays | Plays | Plays | Fails | Plays | Plays | Plays | Skips | Plays | Plays | Plays | Plays | Plays | Plays | Plays | Plays | |
Cog | Plays | Plays | Plays | Plays | Plays | Plays | Plays | Plays | Plays | Plays | Plays | Plays | Plays | Plays | Plays | Plays | Plays | |
GoneMAD (Android) | Plays | Plays | Plays | Plays | Plays | Plays | Plays | Plays | Plays | Plays | Plays | Crashes | Plays | Hangs | Plays | - | - | |
VUPlayer | Plays | Plays | Plays | Plays | Plays | Plays | Plays | Plays | Plays | Plays | Plays | Plays | Plays | Plays | Plays | Plays | Plays |
Table legend | |
---|---|
Plays | all files in this category are played as intended, without glitches, changes etc. |
Rejects | One or more files are rejected by the player, either by skipping the file or mentioning a message like: "file not supported" |
Fails | One or more files are not played back as intended, for example by stuttering, garbling or playing at incorrect speed, or by never starting playing (though not skipping, freezing or rebooting) |
Freezes | On one or more files, the player crashes on decoding, leaving the unit inoperable until reboot, or the unit reboots by itself |
The order of precedence is from bottom to top, so if one file freezes the player, one file is rejected and the other play fine, the table reads 'Freezes' for that category. | |
For the metadata tests, the (absence of) rendering of the metadata is not a criterium, simply whether its presence is an obstacle to playing |