Yalac - Comparisons
Reply #212 – 2006-07-12 03:16:27
Enough progress for V0.10? Much has be done, but there is even more left to do. I could easily spend another 2 month or more to implement all the things from my to do list. And it keeps growing... I am tempted to release V0.10 soon (to the testers), because it is always very motivating to receive some feedback and because there may be enogh new to be tested. Please read about the new features and tell me, if you would like to test them.File format You know that most of my latest work has gone into the file format: - Error detection and recovery of damaged files - Streaming support First thing to test would be the recovery of damaged files. You may have read, that i have built a tiny tool to damage files.Hardware profiles and presets We have talked about this earlier. First i wanted to implement the hardware profiles as additional presets. Some of you found this confusing (special thanks to Synthetic soul) and i guess you are right. Therefore V0.10 again will only provide the familar presets TURBO to EXTRA (i dropped INSANE, part of it went into EXTRA). But TURBO, FAST and NORMAL are now beeing called hardware profiles with restrictions for the encoder options. You will see that some of the encoder options are now disabled in the options dialog, if you select a restricted preset. For the restricted presets you can now choose the evaluation level: Normal, Extra or Max. A higher evaluation level means lower encoding speed but better compression. It's your choice! Regardless of the evaluation level you will always stay within the set of allowed options for the selected preset. Evaluation level Normal is the default and mostly equal to the old presets. Level Extra has been configured to provide you as much compression as possible at half the encoding speed of level Normal. Level Max sets all possible options to the maximum and compresses only slighttly better than Extra. Important: The evaluation level has nearly no effect on the decoding speed! The following table provides some results from my primary test file sets "rw" and "songs". Test system: P3-800. All tests performed without file output. | Compression | Encoding speed | Decoding speed | | Evaluation | Evaluation | Evaluation Max | Preset | Normal Extra Max | Normal Extra Max | MMX Pascal | --------+-------------------------+-------------------------+-----------------+ rw | | | | Turbo | 58.29 57.90 57.84 | 57.54 29.53 17.68 | 71.05 61.03 | Fast | 57.32 57.03 56.93 | 38.56 19.86 11.79 | 66.45 47.96 | Normal | 56.75 56.58 56.55 | 20.29 10.94 7.85 | 61.06 37.38 | N 0.09 | 56.66 56.45 56.41 | 18.03 7.94 5.67 | 54.86 32.59 | --------+-------------------------+-------------------------+-----------------+ songs | | | | Turbo | 49.47 49.16 49.11 | 54.69 29.87 17.97 | 72.85 62.20 | Fast | 48.49 48.19 48.09 | 39.24 19.82 11.77 | 67.73 47.20 | Normal | 47.79 47.67 47.63 | 19.68 10.78 7.72 | 60.31 33.19 | N 0.09 | 47.69 47.54 47.50 | 17.50 7.86 5.56 | 54.89 28.83 | --------+-------------------------+-------------------------+-----------------+ Preset Restricted presets of V0.10. "N 0.09" is preset Normal of V0.09.Evaluation Normal/Extra/Max determines the evaluation depth of the encoder. This should only affect encoding but not decoding speed.Compression Compression ratio in percent.Encoding / Decoding speed Multiple of real time. Because decoding speed should not depend on the Evaluation level, i only tested Max. MMX is the speed of the optimized assembler code, Pascal the speed of pure Pascal code. Two presets have been modified: Turbo now uses 12 instead of 8 predictors. You may remember our discussion about 8 vs. 16 predictors for preset Turbo. Well, 12 lies in between and FLAC -8 is using 12 predictors too, hence we may be able to perform some nice comparisons. Frame duration of Turbo has been increased from 63 to 94 ms to compensate for the compression penality caused by the space requirements of the new file format additions (sync codes, crc, streaming info). Normal now is using smaller frames and only 96 instead of 128 predictors. Compression is about 0.1 percent worse, but encoding speed is more than 10 percent higher on my system. Decoding speed is more than 15 percent higher which seems important for a (restricted) hardware profile. Final question to the testers: - Would you like to test it now? - Or wait for more new features? - Or quit testing? (Don't even think about it... please...)