IPB

Welcome Guest ( Log In | Register )

TAK 2.2.0
TBeck
post Jul 10 2011, 23:46
Post #1


TAK Developer


Group: Developer
Posts: 1098
Joined: 1-April 06
Member No.: 29051



Final release of TAK 2.2.0 ((T)om's lossless (A)udio (K)ompressor)

This release brings support for multi-channel audio and speed optimizations for encoder and decoder.

It consists of:
  • TAK Applications 2.2.0.
  • TAK Winamp plugin 2.2.0.
  • TAK SDK 1.1.1.
  • TAK Decoding library 2.2.0.

Download

Attached File  TAK_2.2.0.zip ( 919.37K ) Number of downloads: 40731

Go to the top of the page
+Quote Post
 
Start new topic
Replies
TBeck
post Aug 11 2011, 01:07
Post #2


TAK Developer


Group: Developer
Posts: 1098
Joined: 1-April 06
Member No.: 29051



QUOTE (TBeck @ Jul 15 2011, 20:32) *
QUOTE (_mē_ @ Jul 15 2011, 18:11) *
Got the samples. Took some time...I didn't take into account als slowness.

Thank you! The analysis will take some time and i can not guarantee, that i will find an (compatible) optimization.

Finally i tried it. I manually selected some of TAK's filters (statically) for each (whole) file and got at least about 0.40 percent better compression for your sample files. A bit more of improvement might be possible, if the filters would be conditionally selected per frame.

Currently i regard those files as special cases, although i have to take into account, that i dont know nearly as much about the compression relevant properties (and their frequency) of-multi channel audio as i possibly know about CD-audio. For now i have added the files to my special cases folder which affects future tunings. Thank you for the files!

Currently i have no idea how to tune the encoder for such files without loosing a lot of encoding speed. I could implement a brute force approach which simply would encode all files with the mentioned filters switched on or off and then would choose the best result. But that's not the way TAK achieves it's high encoding speed. If it would fully calculate all possible combinations of it's many filter variations, it could be easily 1000 times (or more!) slower. Sometimes i read, TAK's encoding is so fast because of it's assembler optimizations. No, that's misleading. It's speed-efficient design and the assembler optimizations may speed up encoding by a factor of about 2 to 3 (for -p4m), but the most important factor are it's heuristics, which base all the filter deceisions on relatively simple estimations. That's where most of the encoder development time has gone.

But sometimes those heuristics fail, as can be seen with m2's files.

A side note: Your (m2) files have wasted bits (low significant bits are zero), this may explain the really bad performance of TTA, which -to my knowledge- doesn't check for this case.

QUOTE (Steve Forte Rio @ Aug 1 2011, 12:31) *
TBeck, do you plan to add a CUDA support for further versions of TAK encoder?
IMHO, such progressive codec as TAK must have a support of such useful feature as CUDA. Maybe it is even possible to increase the compression level this way, isn't it?

I don't want to loose decoding speed, because i still think about possible hardware implementations. Therefore i don't want to significantly increase the complexity of TAK's filters. Then only encoder optimizations are possible. With a lot more of processing power available i could possible replace some of TAK's fast heuristics with brute force approaches. This could for instance help special files like those m2 has sent me, but i doubt, it would significantly increase the average compression ratio for a large corpus of files. Anectdotally: i spend the last two days implementing a brute force approach for one case, where TAK versions earlier than 2.0 could achieve 0.05 percent better compression. This was the most significant advantage i ever found for the brute force way of a filter selection! But with the better design and heuristics of TAK 2.x, the advantage shrinked to about 0.01 percent.

I don't think, the investment of maybe 20 or even 50 times more processing power (which probably would require a quite potent GPU) would result in more than about 0.05 to 0.10 percent better compression on average. But it could help some special files.

And then there is also my personal fun factor: I really like to beat brute force approaches whith more or less clever algorithms... Well, indeed it's often less cleverness but a bit of intuition and a lot of trial and error and collecting and evaluating a lot of relevant data.

Conclusion: Too little to gain for me by CUDA yet, but may be, if i have some new ideas...

It's not that i don't think about opportunities for compression improvements. But it's getting really hard to find some within my efficiency/speed constraints.
Go to the top of the page
+Quote Post

Posts in this topic
- TBeck   TAK 2.2.0   Jul 10 2011, 23:46
- - TBeck   What's new New features: Support for multi-ch...   Jul 10 2011, 23:47
- - TBeck   I took the freedom to compile an excerpt of the ex...   Jul 13 2011, 02:34
|- - _mē_   QUOTE (TBeck @ Jul 13 2011, 03:34) Would ...   Jul 13 2011, 08:24
|- - _mē_   QUOTE (_mē_ @ Jul 13 2011, 09:24) QUOTE (...   Jul 13 2011, 11:05
|- - TBeck   QUOTE (_mē_ @ Jul 13 2011, 12:05) BTW by ...   Jul 13 2011, 17:53
- - _mē_   Got the samples. Took some time...I didn't tak...   Jul 15 2011, 17:11
|- - TBeck   QUOTE (_mē_ @ Jul 15 2011, 18:11) Got the...   Jul 15 2011, 19:32
- - Corpulencio   This is really awesome. Thanks!   Jul 26 2011, 17:07
- - Steve Forte Rio   TBeck, do you plan to add a CUDA support for furth...   Aug 1 2011, 11:31
- - zerowalker   Is there plans to make it playable on any player? ...   Aug 6 2011, 22:52
- - CoRoNe   Unlike WinAMP and Foobar, Zoom Player is a DirectS...   Aug 7 2011, 15:54
|- - zerowalker   QUOTE (CoRoNe @ Aug 7 2011, 16:54) Unlike...   Aug 8 2011, 05:03
- - CoRoNe   Of course it does. That's the point of lossles...   Aug 8 2011, 09:07
|- - zerowalker   QUOTE (CoRoNe @ Aug 8 2011, 10:07) Of cou...   Aug 8 2011, 10:25
- - TBeck   QUOTE (TBeck @ Jul 15 2011, 20:32) QUOTE ...   Aug 11 2011, 01:07
- - Steve Forte Rio   Thanks for reply. Seem like now takc works fine w...   Aug 12 2011, 12:08
- - jaro1   request: Mr. Beckers own fb2k decoder, i'll be...   Sep 24 2011, 15:04
|- - lvqcl   But you can always update tak_deco_lib.dll yoursel...   Sep 24 2011, 16:23
|- - jaro1   QUOTE (lvqcl @ Sep 24 2011, 17:23) But yo...   Sep 24 2011, 18:46
- - boombaard   QUOTE (TBeck @ Jul 10 2011, 23:46) Final ...   Sep 25 2011, 17:54
- - Xire   Have you tried to compile it with 64bit Delphi or ...   Sep 25 2011, 19:35
|- - TBeck   QUOTE (Xire @ Sep 25 2011, 20:35) Have yo...   Sep 27 2011, 22:45
- - boombaard   It appears as though the encoder refuses to encode...   Sep 25 2011, 20:09
|- - boombaard   QUOTE (boombaard @ Sep 25 2011, 20:09) It...   Sep 26 2011, 09:34
- - boombaard   (PS. Is it normal that I get different RG numbers ...   Sep 26 2011, 07:39
|- - anishbenji   If you used a recent version of foobar2000 (v1.1.6...   Sep 26 2011, 08:17
|- - boombaard   QUOTE (anishbenji @ Sep 26 2011, 08:17) I...   Sep 26 2011, 09:00
- - TBeck   QUOTE (Steve Forte Rio @ Aug 12 2011, 13...   Sep 27 2011, 22:31
- - boombaard   Yes, the fact that piping worked got me confused. ...   Sep 29 2011, 13:23
- - boombaard   Just a heads-up: I haven't kept any statistics...   Oct 3 2011, 11:49
- - tuxman   Just out of curiousity: How far is Linux support f...   Oct 25 2011, 22:49
- - lvqcl   Win32 binaries + WINE.   Oct 26 2011, 04:25
- - tuxman   Hmm, that would add quite some overhead ...   Oct 26 2011, 09:44
- - Destroid   Linux platform was touched on numerous times and t...   Oct 26 2011, 11:43
- - tuxman   Linux does not require its software to be open.   Oct 26 2011, 11:55
|- - viktor   QUOTE (tuxman @ Oct 26 2011, 12:55) Linux...   Oct 26 2011, 12:52
|- - _mē_   QUOTE (viktor @ Oct 26 2011, 13:52) QUOTE...   Oct 26 2011, 13:44
- - tuxman   My preferred Android media player is not open sour...   Oct 26 2011, 13:06
- - Anakunda   Is there a Linux player support yet? Banshee or Am...   Oct 26 2011, 13:11
- - PPeti66x   Hi! It is possible to decode multiple TAK file...   Dec 14 2011, 23:28
- - Anakunda   Any chance to get decoding support for Banshee or ...   Dec 17 2011, 20:13
- - pikashi   I set my command-line options of EAC like this and...   Feb 3 2012, 12:35
- - temp1   any news about new version?   Mar 16 2012, 16:52
- - TBeck   Sorry for the lack of active participation. I have...   Mar 20 2012, 01:27
- - Dario   Tom, could you please document the function that ...   Mar 25 2012, 10:15
- - lvqcl   About TAK and foobar2000... From http://www.foobar...   Mar 25 2012, 10:38
- - CoRoNe   Could someone who has access to TAK's Wiki pag...   Apr 30 2012, 11:42
- - Dario   Are there any updates regarding TAK?   May 7 2012, 10:49
- - Mr.Duck   How do you use the md5 data? It gets written into ...   May 11 2012, 06:23
|- - lvqcl   QUOTE (Mr.Duck @ May 11 2012, 09:23) The ...   May 11 2012, 16:01
|- - Mr.Duck   QUOTE (lvqcl @ May 11 2012, 16:01) QUOTE ...   May 12 2012, 21:55
- - marc2003   you are using -d to decode, right?   May 12 2012, 22:25
|- - Mr.Duck   QUOTE (marc2003 @ May 12 2012, 22:25) you...   May 14 2012, 02:04
- - Destroid   Yes, I could find no internal conversion either (i...   May 14 2012, 06:39
- - 06_taro   CODED:\Program Files\Media\Foob...   May 14 2012, 08:54
- - Destroid   @06_taro - Ok, it works for me too, now. Can't...   May 14 2012, 16:56
- - Mr.Duck   Ah that's helpful, thanks. But all the tags g...   May 15 2012, 01:18
- - marc2003   using foobar2000 would preserve tags (except embed...   May 15 2012, 01:30
- - Mr.Duck   If anyone knows of a (command line) tool that can ...   May 20 2012, 15:40
- - CoRoNe   Tool: Mp3tag Command line tool: Tag 2.0.52 (with -...   May 20 2012, 16:27
- - e354412   TAK is really a great codec which compresses much ...   Jun 21 2012, 01:59
- - Mr.Duck   So I finally got round to writing this batch file ...   Nov 11 2012, 23:54
- - hmasterwang   This version doesn't support wav file exceeded...   Jun 11 2013, 13:48
- - lvqcl   CODEtakc.exe -e -p2 -ihs - outfile.tak < infil...   Jun 11 2013, 14:49
|- - hmasterwang   QUOTE (lvqcl @ Jun 11 2013, 07:49) CODEta...   Jun 12 2013, 15:13
- - naturfreak   According to the official specifications the size ...   Jun 12 2013, 15:20
- - db1989   All signs point to that being a problem with WAV, ...   Jun 12 2013, 15:25
|- - hmasterwang   QUOTE (db1989 @ Jun 12 2013, 08:25) All s...   Jun 12 2013, 15:41
- - lvqcl   Unfortunately TAK itself doesn't support RIFF6...   Jun 12 2013, 15:43
- - hmasterwang   QUOTE (lvqcl @ Jun 12 2013, 08:43) Unfort...   Jun 12 2013, 16:01


Reply to this topicStart new topic
1 User(s) are reading this topic (1 Guests and 0 Anonymous Users)
0 Members:

 



RSS Lo-Fi Version Time is now: 17th September 2014 - 16:10