IPB

Welcome Guest ( Log In | Register )

New FLAC encoder
Nayru
post May 26 2006, 13:29
Post #1





Group: Members
Posts: 17
Joined: 6-November 05
Member No.: 25599



A new FLAC encoder has been developed, which is proposed for inclusion in ffmpeg. The author claims that in high-compression mode, it can compress certain files better than libFLAC.

http://mplayerhq.hu/pipermail/ffmpeg-devel...May/011385.html
Go to the top of the page
+Quote Post
 
Start new topic
Replies
ggf31416
post Jun 15 2006, 04:06
Post #2





Group: Members
Posts: 34
Joined: 1-June 06
Member No.: 31342



40.964.828 bytes 16-bit Stereo 44100Hz WAV 3:52 "La cosecha de mujeres"

CODE
FLAKE 0.4
Level | Ratio | Bitrate | Time
0 | 0.788 | 1112.6 kbps | 6.484
1 | 0.747 | 1054.7 kbps | 7.328
2 | 0.741 | 1045.1 kbps | 7.250
3 | 0.733 | 1034.5 kbps | 7.468
4 | 0.729 | 1029.2 kbps | 7.500
5 | 0.726 | 1024.1 kbps | 7.906
6 | 0.721 | 1017.5 kbps | 11.250
7 | 0.721 | 1017.5 kbps | 12.718
8 | 0.719 | 1015.0 kbps | 14.343
9 | 0.719 | 1014.8 kbps | 29.046
10 | 0.719 | 1015.2 kbps | 20.671
11 | 0.719 | 1014.3 kbps | 120.562
12 | 0.720 | 1016.7 kbps | 21.093
13 | 0.720 | 1016.1 kbps | 119.875
14 | 0.722 | 1019.5 kbps | 21.703
15 | 0.722 | 1019.1 kbps | 120.828

FLAC 1.1.2 CVS
Level | Ratio | Time
0 | 0,782 | 2.687
1 | 0,778 | 2.890
2 | 0,776 | 3.609
3 | 0,731 | 3.750
4 | 0,723 | 4.812
5 | 0,722 | 6.031
6 | 0,722 | 6.625
7 | 0,721 | 21.531
8 | 0,720 | 28.140


In some samples a large block size can reduce the compression ratio.
WAV 111.266.108 bytes 16-bit Stereo 44100Hz 10:30 "La navidad de los pobres"

CODE

Parameters | Ratio | Bitrate | Bytes | Time
FLAKE -8 -b 1152 | 0.645 | 909.7 kbps | 71722600 | 39.640
FLAKE -8 -b 2048 | 0.642 | 906.0 kbps | 71436942 | 40.031
FLAKE -8 -b 2304 | 0.642 | 906.2 kbps | 71446745 | 39.656
FLAKE -8 -b 4096 | 0.644 | 909.3 kbps | 71697454 | 39.609
FLAKE -8 -b 4608 | 0.645 | 910.6 kbps | 71796426 | 38.843
FLAKE -8 -b 8192 | 0.652 | 920.1 kbps | 72549094 | 37.812
FLAC CVS -8 | 0.647 | ~913 kbps | 71971927 | 78.421


I suggest testing several block sizes in the high levels, using a lower compression level. Then use the best value to compress the sample:
Example:

CODE
-b x,[n]

-b x Block size [16 - 65535] (default: 4608)
-b 1 Try -b 2048 and -b 4608
-b 2 Try -b 2048, -b 2304, -b 4096, -b 4608 and -b 8192.
-b 3 Try -b 192, -b 576, -b 1152, -b 2304, -b 4608, -b 256, -b 512, -b 1024, -b 2048, -b 4096, -b 8192 and -b 16384.

n Use compression level n for the tries. Default: 5 for -b 1, -b 2 or -b 3.

Compression Levels:
[1-9] Without changes
10 = -l 12 -o 4 -s 2 -b 1,5  Estimated Time: ~  45 (2* level 5 + level 9)
11 = -l 12 -o 4 -s 2 -b 2,5  Estimated Time: ~  69 (5*5+9)
12 = -l 32 -o 4 -s 2 -b 2,5  Estimated Time: ~ 160 (5*5+11)
13 = -l 32 -o 4 -s 2 -b 3,5  Estimated Time: ~ 215 (12*5+11)
14 = -l 32 -o 4 -s 2 -b 3,8  Estimated Time: ~ 293 (12*8+11)


All Times are Process Time (Timer 3.01). Celeron D325 2.53 Ghz under Windows XP SP2.
Estimates times are based on the first sample ("La cosecha de mujeres").


This post has been edited by ggf31416: Jun 15 2006, 04:20
Go to the top of the page
+Quote Post
Justin Ruggles
post Jun 15 2006, 07:43
Post #3





Group: Developer
Posts: 165
Joined: 3-June 06
From: Raleigh, NC
Member No.: 31393



QUOTE (ggf31416 @ Jun 14 2006, 21:06) *
I suggest testing several block sizes in the high levels, using a lower compression level. Then use the best value to compress the sample:
Example:

-b x Block size [16 - 65535] (default: 4608)
-b 1 Try -b 2048 and -b 4608
-b 2 Try -b 2048, -b 2304, -b 4096, -b 4608 and -b 8192.
-b 3 Try -b 192, -b 576, -b 1152, -b 2304, -b 4608, -b 256, -b 512, -b 1024, -b 2048, -b 4096, -b 8192 and -b 16384.

Along those same lines, I am working on implementing block switching. The resulting files would not be Subset compliant, but they would still decode with at least the reference decoder and with FFmpeg/MPlayer, which are the only decoders I have tested with at this point. I have found that 8192 only rarely increases compression and 16384 almost never does. I have now removed them as presets (pending pre-release 5) in favor of an 8-level order search.

The advantage of block switching would be with audio which compresses better at 2048 or 1024 blocksize. What you're suggesting seems like it could be accomplished with a 2-pass encoding, which I guess I could try to implement as another option.

Thanks,
Justin
Go to the top of the page
+Quote Post

Posts in this topic
- Nayru   New FLAC encoder   May 26 2006, 13:29
- - kurtnoise   For those who want to test it, I've made a com...   May 26 2006, 14:40
- - jcoalson   it seems like a nice clean interface. some notes:...   May 26 2006, 21:57
|- - Justin Ruggles   Hi, I am the person writing the encoder mentioned ...   Jun 3 2006, 06:14
|- - jcoalson   QUOTE (Justin Ruggles @ Jun 3 2006, 00:14...   Jun 14 2006, 19:46
|- - Justin Ruggles   QUOTE (jcoalson @ Jun 14 2006, 12:46) QUO...   Jun 14 2006, 20:33
- - kurtnoise   Hi Justin, Thank you very much for this work (for...   Jun 3 2006, 16:49
|- - Justin Ruggles   QUOTE (kurtnoise @ Jun 3 2006, 09:49) Tha...   Jun 4 2006, 04:00
|- - kurtnoise   QUOTE (Justin Ruggles @ Jun 4 2006, 05:00...   Jun 4 2006, 07:55
|- - Justin Ruggles   QUOTE (kurtnoise @ Jun 4 2006, 00:55) Thr...   Jun 4 2006, 08:27
- - Justin Ruggles   Hi, I have made a small webpage to post updated ve...   Jun 14 2006, 08:56
- - kurtnoise   Hi Justin, Great stuff...Now, flake 0.4 works fin...   Jun 14 2006, 09:39
- - krmathis   flake dont seem to work correctly on Mac OS X (Pow...   Jun 14 2006, 18:42
|- - Justin Ruggles   QUOTE (krmathis @ Jun 14 2006, 11:42) fla...   Jun 14 2006, 18:49
- - krmathis   Hope you nail this, cause this looks like an inter...   Jun 14 2006, 19:34
- - ggf31416   40.964.828 bytes 16-bit Stereo 44100Hz WAV 3:52 ...   Jun 15 2006, 04:06
|- - Justin Ruggles   QUOTE (ggf31416 @ Jun 14 2006, 21:06) I s...   Jun 15 2006, 07:43
- - Justin Ruggles   Hi, Pre-release 5 is now out. * I hope the PPC en...   Jun 15 2006, 09:47
|- - krmathis   QUOTE (Justin Ruggles @ Jun 15 2006, 10:4...   Jun 15 2006, 17:00
- - Justin Ruggles   Hi all, Sorry to keep posting updates so often. ...   Jun 17 2006, 03:31
- - krmathis   Album: Toto - Legend (in a single file) Playing ti...   Jun 17 2006, 08:45
|- - Justin Ruggles   QUOTE (krmathis @ Jun 17 2006, 01:45) Alb...   Jun 18 2006, 04:20
|- - krmathis   QUOTE (Justin Ruggles @ Jun 18 2006, 05:2...   Jun 18 2006, 07:39
|- - miros   Here are my results for four albums lying around. ...   Jun 18 2006, 08:13
|- - Justin Ruggles   QUOTE (miros @ Jun 18 2006, 01:13) Justin...   Jun 25 2006, 02:14
- - HbG   CODEPearl Jam - Ten (new european version...   Jun 28 2006, 00:58
|- - Justin Ruggles   QUOTE (HbG @ Jun 27 2006, 17:58) CODEPear...   Jun 28 2006, 04:26
- - surf   hello. does this new encoder supports unicode? i c...   Jun 28 2006, 07:56
- - sundance   Justin, I'd also like to join in saying ...   Jun 28 2006, 08:47
|- - Justin Ruggles   Hello, QUOTE (sundance @ Jun 28 2006, 01...   Jun 28 2006, 14:38
|- - HbG   QUOTE (Justin Ruggles @ Jun 28 2006, 05:3...   Jun 28 2006, 14:57
|- - sundance   QUOTE (HbG @ Jun 28 2006, 13:57) ...but i...   Jun 28 2006, 15:25
|- - Justin Ruggles   QUOTE (HbG @ Jun 28 2006, 07:57) QUOTE (J...   Jun 29 2006, 03:06
- - wisodev   Well I am propobly too late but I have builded som...   Jul 4 2006, 19:19
|- - Justin Ruggles   QUOTE (wisodev @ Jul 4 2006, 12:19) Well ...   Jul 4 2006, 23:12
||- - wisodev   QUOTE Thank you! Especially for the win32 bui...   Jul 5 2006, 06:59
|- - HbG   QUOTE (wisodev @ Jul 4 2006, 10:19) Well ...   Jul 7 2006, 21:36
|- - Justin Ruggles   QUOTE (HbG @ Jul 7 2006, 14:36) Oh, one m...   Jul 8 2006, 00:29
- - jcoalson   another thing I would suggest is a big fat warning...   Jul 8 2006, 00:51
|- - Justin Ruggles   QUOTE (jcoalson @ Jul 7 2006, 17:51) anot...   Jul 8 2006, 21:44
- - Justin Ruggles   Hello, I'm posting again here because the FFm...   Jul 17 2006, 02:36
|- - Garf   QUOTE (Justin Ruggles @ Jul 17 2006, 03:3...   Jul 17 2006, 09:43
||- - Justin Ruggles   QUOTE (Garf @ Jul 17 2006, 02:43) QUOTE (...   Jul 17 2006, 10:36
|- - SebastianG   QUOTE (Justin Ruggles @ Jul 17 2006, 03:3...   Jul 18 2006, 09:14
- - krmathis   Great work! Hope you plan to "back-port...   Jul 17 2006, 08:02
- - Garf   Okay, I understand the what and why What's t...   Jul 17 2006, 10:51
|- - Justin Ruggles   QUOTE (Garf @ Jul 17 2006, 03:51) Okay, I...   Jul 17 2006, 21:45
- - jcoalson   I have actually been doing experiments solving the...   Jul 24 2006, 07:04
|- - SebastianG   QUOTE (jcoalson @ Jul 24 2006, 08:04) I h...   Jul 24 2006, 08:27
||- - jcoalson   QUOTE (SebastianG @ Jul 24 2006, 02:27) Q...   Jul 25 2006, 04:49
|- - TBeck   QUOTE (jcoalson @ Jul 24 2006, 08:04) I h...   Jul 24 2006, 16:25
- - HbG   Only noticed this now, it's leaking memory lik...   Sep 9 2006, 21:08
|- - Justin Ruggles   QUOTE (HbG @ Sep 9 2006, 14:08) Only noti...   Sep 9 2006, 23:21
|- - Justin Ruggles   QUOTE (Justin Ruggles @ Sep 9 2006, 16:21...   Sep 10 2006, 00:29
- - HbG   Thanks in advance!   Sep 9 2006, 23:34
- - HbG   That fixed it, thanks. But the speed's now dr...   Sep 10 2006, 12:02
|- - Justin Ruggles   QUOTE (HbG @ Sep 10 2006, 05:02) That fix...   Sep 10 2006, 19:31
- - wisodev   I have build the binary for Win32 (version 07 of f...   Sep 10 2006, 18:35
- - wisodev   QUOTE (Justin Ruggles @ Sep 10 2006, 20:3...   Sep 10 2006, 19:46
- - HbG   Oh yeah, wisodev's .07 build clocks in at abou...   Sep 11 2006, 01:35
|- - Justin Ruggles   QUOTE (HbG @ Sep 10 2006, 18:35) Oh yeah,...   Sep 11 2006, 03:28
|- - wisodev   He, I have found too that 0.08 windows binarys are...   Sep 11 2006, 07:38
- - sundance   Justin, would you consider adding wisodev's ...   Sep 11 2006, 21:55
|- - Justin Ruggles   QUOTE (sundance @ Sep 11 2006, 14:55) wou...   Sep 11 2006, 22:03
- - sundance   Justin, that's really good news. Too bad that...   Sep 11 2006, 22:08
|- - Justin Ruggles   QUOTE (sundance @ Sep 11 2006, 15:08) Jus...   Sep 11 2006, 22:21
|- - Justin Ruggles   Whew...it was accepted. http://sourceforge.net/pro...   Sep 11 2006, 22:49
|- - Justin Ruggles   QUOTE (Justin Ruggles @ Sep 11 2006, 15:4...   Sep 12 2006, 03:27
|- - wisodev   QUOTE For now I have built binaries for Linux, opt...   Sep 12 2006, 07:19
- - jcoalson   "flache" (High-Efficiency? painful?) is ...   Sep 11 2006, 23:25
- - sundance   What do you think about adding some version inform...   Sep 12 2006, 14:03
- - krmathis   Justin. I pulled revision 2 from SVN, and tried to...   Sep 12 2006, 16:14
- - wisodev   FLAKE 0.10 Win32 Build and Sources Download binar...   Sep 12 2006, 17:28
- - lexor   CODE FILE SIZE t_FLAC.flac 321 356 528 t_i686...   Sep 12 2006, 20:19
|- - wisodev   QUOTE CODE FILE SIZE t_FLAC.flac 321 356 528 ...   Sep 13 2006, 06:48
|- - lexor   QUOTE (wisodev @ Sep 13 2006, 01:48) This...   Sep 13 2006, 14:43
|- - wisodev   QUOTE (lexor @ Sep 13 2006, 15:43) QUOTE ...   Sep 13 2006, 19:07
|- - Egor   QUOTE (wisodev @ Sep 14 2006, 01:07) Oh t...   Sep 14 2006, 08:46
|- - wisodev   QUOTE Digit grouping symbol depends on your locale...   Sep 14 2006, 09:18
- - HbG   My run went at 37.00x That's more than three t...   Sep 13 2006, 01:20
- - sundance   wisodev, still one mystery remains: CODEDECODE...   Sep 13 2006, 08:29
|- - wisodev   QUOTE wisodev, still one mystery remains: CODEDEC...   Sep 13 2006, 08:52
- - iGold   I want to write my notes on lack of some features ...   Sep 14 2006, 08:18
- - lexor   hi, I have a somewhat strange request a few pages...   Sep 14 2006, 19:27
- - Madman2003   Is this encoder (flake 0.10) trustworthy for ...   Sep 14 2006, 19:32
- - bukem   FYI: I have just encoded my favorite album of Mar...   Sep 14 2006, 23:17
|- - guruboolez   QUOTE (bukem @ Sep 15 2006, 00:17) I have...   Sep 15 2006, 00:10
|- - bukem   QUOTE (guruboolez @ Sep 14 2006, 15:10) Q...   Sep 15 2006, 12:20
- - Justin Ruggles   QUOTE (Madman2003 @ Sep 14 2006, 12:32) I...   Sep 15 2006, 00:07
- - jcoalson   yes, that level 0-2 limitation was from the early ...   Sep 15 2006, 16:32
- - HbG   I've encoded over a dozen cd's with flake ...   Sep 16 2006, 00:53
- - Synthetic Soul   I have tried running my scripts with wisodev's...   Sep 18 2006, 11:31
|- - wisodev   @Synthetic Soul Can you try running this scripts ...   Sep 18 2006, 13:00
- - sundance   I've been using wiso's flake 0.10 several ...   Sep 18 2006, 12:01
- - Synthetic Soul   I have run my scripts here at work using the i586,...   Sep 18 2006, 13:39
- - Synthetic Soul   OK, I have tested 37.wav with the i586, i686 and w...   Sep 18 2006, 13:53
- - Will Fisher   Hey, I work for Winamp, and I'm very impresse...   Sep 18 2006, 16:15
- - Synthetic Soul   It seems the problem is still evident even in the ...   Sep 18 2006, 16:58
- - HbG   I can encode that sample at -0 just fine, using wi...   Sep 18 2006, 22:59
- - bukem   @Synthetic Soul: Flake 0.10 has failed to compres...   Sep 18 2006, 23:45
4 Pages V   1 2 3 > » 


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: 19th April 2014 - 16:17