Skip to main content

Notice

Please note that most of the software linked on this forum is likely to be safe to use. If you are unsure, feel free to ask in the relevant topics, or send a private message to an administrator or moderator. To help curb the problems of false positives, or in the event that you do find actual malware, you can contribute through the article linked here.
Topic: Ogg Vorbis or mp3 for portable use? (Read 17215 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

Ogg Vorbis or mp3 for portable use?

Reply #25
Quote
Interesting. It could be compared to the weird calculations made by oki, claiming that "ARM7 needs about 10MHz to decode MP3 and about 180Mhz for OGG
[a href="index.php?act=findpost&pid=330804"][{POST_SNAPBACK}][/a]


A look at the paper quickly shows that the number is dominated by the presence of LPC/LSP decoding. This technique is not used by any Vorbis file produced by release 1.0 of the encoder or later.

Keeping LPC/LSP in the Vorbis 1.0 spec was a mistake, but since it is not used for any practical file, I don't think you can take those worst case numbers as representative.

The paper was probably started before the release of Vorbis 1.0.

Edit: They refer to Vorbis RC2, so I am now pretty sure of the above.

Ogg Vorbis or mp3 for portable use?

Reply #26
Quote
Interesting. It could be compared to the weird calculations made by oki, claiming that "ARM7 needs about 10MHz to decode MP3 and about 180Mhz for OGG (for this purpose Rio Karma has 2 x ARM7 processors running at 90MHz) this is 18 times more power for ogg than for MP3!!! and which conclude with:

Quote
Concluding,
1st: Wogg ~= 18 x Waac;
2nd: Waac ~= Wmp3 in the newest implementations.

[a href="index.php?act=findpost&pid=330804"][{POST_SNAPBACK}][/a]
Not that weird, you just need to make some veeeery easy calculations. I will do them for you.

Let:
eq 1: E_t = total energy available from the battery
eq 2: T_mp3 = battery life for MP3
eq 3: T_ogg = battery life for OGG

The total power is the sum of decoding power and the rest of the power consumed by the rest of the modules in a DAP:

eq 4 (for MP3): E_t / T_mp3 = P_decoding_mp3 + P_rest
eq 5 (For OGG): E_t / T_ogg = P_decoding_ogg + P_rest

Let's create 3 variables which are going to help on reducing the equation system:

eq 6: Let a = T_ogg / T_mp3 (Known constant)
eq 7: Let c = P_decoding_ogg / (E_t / T_ogg)
eq 8: Let k = P_decoding_ogg / P_decoding_mp3

Build an equation system from Eq 4 to Eq 8 and remove E_t, T_mp3, T_ogg, P_rest, P_decoding_mp3 and P_decoding_ogg. Solve k(a,c). The method is:

eq 5 - eq 4 returns the following expression:

eq9: E_t / T_ogg - E_t / T_mp3 = P_decoding_ogg - P_decoding_mp3

Dividing both sides of Eq 9 by (E_t / T_ogg) and simplifying:

eq 10: 1 - T_ogg / T_mp3 = P_decoding_ogg / (E_t / T_ogg) -  P_decoding_mp3 / (E_t / T_ogg)

identifying from eq 6, eq 7 and eq 8, the eq 10 can be expressed as:

eq 11: 1 - a = c - c/k

Solving for k:

Eq 12: k = c / (c + a - 1)

And if we want to know the Power consumed only in ogg decoding:

Eq 13: P_decoding_ogg = c * E_t / T_ogg

These last equations are valid for all the devices in the market.



WARNING: from here and below it is ONLY applicable to the Rio Karma.

T_mp3 = 16 h and T_ogg = 11 h then a = T_ogg / T_mp3 and then:

eq 14: k = c / (c + 11/16 - 1)

c is the factor of power used only in decoding OGG: c = P_decoding_ogg / P_total.

Let's suppose that this power is only 33% of the total power consumed in the device. In this scenario and using eq 14 then:

k = 16.25

Remember that k was defined as P_decoding_ogg / P_decoding_mp3 so in this scenario:

P_decoding_ogg = 16.25 P_decoding_mp3

Not very far from x18 factor, isn't it?

[span style='font-size:8pt;line-height:100%']Edit: typo[/span]

Ogg Vorbis or mp3 for portable use?

Reply #27
Interesting indeed. Theory, common knowledge and early reports all indicate that decoding vorbis should consume a lot more power than decoding mp3, yet we have an experiment showing that the difference is minimal. Clearly, more data is needed. Does anyone have some more experimental results, so that we can confirm or falsify this?

Ogg Vorbis or mp3 for portable use?

Reply #28
Quote
Interesting indeed. Theory, common knowledge and early reports all indicate that decoding vorbis should consume a lot more power than decoding mp3, yet we have an experiment showing that the difference is minimal. Clearly, more data is needed. Does anyone have some more experimental results, so that we can confirm or falsify this?
[a href="index.php?act=findpost&pid=331701"][{POST_SNAPBACK}][/a]


On my Samsung Yepp, I get between 45 and 50 hours of playback time with Ogg Vorbis files, and the same with MP3.  I use a mix of low bitrates for audiobooks, ranging from 16-128k for MP3 and 48-96k for Ogg.
The Yepp has a nice feature that tracks total play time
It's built on a chipset that has the numbers 3500 in it (STMP 3500, don't know who makes it)

Ogg Vorbis or mp3 for portable use?

Reply #29
Quote
Interesting indeed. Theory, common knowledge and early reports all indicate that decoding vorbis should consume a lot more power than decoding mp3, yet we have an experiment showing that the difference is minimal. Clearly, more data is needed. Does anyone have some more experimental results, so that we can confirm or falsify this?[a href="index.php?act=findpost&pid=331701"][{POST_SNAPBACK}][/a]
It depends on the hardware implementation and the algorithms optimizations.

A good test could be playing 128Kbps PCM source (no decoding at all) and 128 CBR OGG, in this situation we could have real numbers to compare with.

Let:

eq 1: a_pcm = T_ogg / T_pcm
eq 2: c = P_decoding_ogg / (E_t / T_ogg)

The total power when playing PCM is:

eq 3: E_t / T_pcm = P_decoding_pcm + P_rest

P_decoding_pcm = 0 since it is not encoded and therefore:

eq 4: P_rest = E_t / T_pcm

then if For OGG decoding:

eq 5: E_t / T_ogg = P_decoding_ogg +  E_t / T_pcm

and dividing both sides of eq 3 by E_t / T_ogg:

eq 6: 1 =  P_decoding_ogg/(E_t / T_ogg) + T_ogg/T_pcm

identifying from eq 1 and eq 2, the eq 6 can be expressed as:

eq 7: 1= c + a_pcm

and solving for c:

eq 8: c = 1 - a_pcm

c is a very important factor, with this number we could see the REAL power used for ogg decoding and for mp3 decoding, and by doing the same for mp3 we could get the REAL factor between MP3 decoding and OGG decoding. We just need to know the battery life when playing PCM @ 128Kbps, MP3 @ 128Kbps and OGG  @ 128Kbps.

from my last post:

eq 9: a = T_ogg / T_mp3

eq 10: k = c / (c + a - 1)

identifying from eq 1, eq 8 and eq 9, the eq 10 can be expressed as:

[span style='font-size:14pt;line-height:100%']k = T_mp3/T_ogg * (T_pcm - T_ogg) / (T_pcm - T_mp3)[/span]

k will be the REAL factor between the power required by ogg and the power required by mp3.

This is a very easy test you can perform. You just need to take the time it takes to drain the whole battery when playing 128Kbps WAV only ,128Kbps MP3 only and 128Kbps OGG only.

Regards,
Oki

Ogg Vorbis or mp3 for portable use?

Reply #30
Quote
Interesting results.

I have an explanation other than reduced bitrates for ogg not using all that much battery compared to what's expected. There's also a non-xiph vorbis decoder on the market, focussing specifically on use with DSP's. It's mentioned in this thread.

I suppose for such a thing to be viable as a commercial product it has to outperform Tremor in the resources required to decode, which is usually linked to battery usage.

I did a little benchmark, i downloaded vov.exe (requires cygwin) from vinjey.com, and used OggDecT from rarewares.org.

I took a 1:07:35 podcast, which, at 128kbps nominally made for a file of 66.5MB, and started benchmarking. Here are the results:

Code: [Select]
D:\Download>timethis "start /realtime /b /wait oggdect.exe -o file.ogg > NUL:"

TimeThis :  Command Line :  start /realtime /b /wait oggdect.exe -o file.ogg > NUL:
TimeThis :    Start Time :  Wed Sep 28 18:41:37 2005

TimeThis :  Command Line :  start /realtime /b /wait oggdect.exe -o file.ogg > NUL:
TimeThis :    Start Time :  Wed Sep 28 18:41:37 2005
TimeThis :      End Time :  Wed Sep 28 18:42:49 2005
TimeThis :  Elapsed Time :  00:01:12.156

and
Code: [Select]
D:\Download>timethis "start /realtime /b /wait vov.exe file.ogg NUL:"

TimeThis :  Command Line :  start /realtime /b /wait vov.exe file.ogg NUL:
TimeThis :    Start Time :  Wed Sep 28 18:43:21 2005

VOV:: Got 0x201 while trying to get packet = 415631
VOV:: Time taken to decode is 96

TimeThis :  Command Line :  start /realtime /b /wait vov.exe file.ogg NUL:
TimeThis :    Start Time :  Wed Sep 28 18:43:21 2005
TimeThis :      End Time :  Wed Sep 28 18:44:57 2005
TimeThis :  Elapsed Time :  00:01:36.046


I ran each of these twice, but because of the realtime switch my system freezes and background apps cannot interfere, run times were identical for OggDecT, and the second vov run was 18ms slower. I consider these results highly accurate. There was no noticeable harddisk activity during the benchmarks. My system is an Athlon XP 2500+ with 1GB of PC2700 memory, slightly overclocked.

As you can see, tremor is 33% faster than vov, however this doesn't say much because vov isn't targeted for x86 systems, and i don't know the compiler and tunings that were used for it. It could still be god's gift for vorbis on DAPs
[a href="index.php?act=findpost&pid=330212"][{POST_SNAPBACK}][/a]


It is interesting to see the benchmarks. We would like to provide some background information with respect to how vov.exe was built. vov.exe is built from the code base that is targetted for a specific DSP device. For the assembly routines developed on the DSP a strict PC equivalant is developed to aid debug on the PC the DSP code during the development phase. Debugging on the target platforms are usually much slower compared to that. We provide the same a on the download section on our website.

Hence the performance of VOV is slower on the PC platforms, which is not our target platform as you have guessed.

Ogg Vorbis or mp3 for portable use?

Reply #31
Vinjey, thanks for the information. Considering it's background it is actually quite amazing it still performs within 33% of tremor.

Can you show any benchmarks of vov's performance on the actual DSP, the power used, and which products are currently using your software? The battery life of vorbis compared to mp3 has been subject of some discussion here, and it may help people decide which DAP to get.
Veni Vidi Vorbis.

 

Ogg Vorbis or mp3 for portable use?

Reply #32
Quote
I just bought a Samsung YP-MT6X and would like to convert my FLAC files for use with the portable. Keep in mind I will be using $20 KSC-75 clip-ons, not $1000 iems. According to Wikipedia:

"Many users feel that Vorbis reaches transparency (sound quality that is indistinguishable from the original source recording) at a quality setting of -q5, approximately 160 kbit/s. For comparison, it is commonly felt that MP3 reaches transparency at around 192 kbit/s, resulting in larger file sizes for the same sound quality."

Does that mean I should use Ogg q5 for the best compromise between space and quality?

Thanks,

-Jonathan.

EDIT: Sorry if my question parrots other threads, I didn't see any that explicitly answered my question.
[a href="index.php?act=findpost&pid=327842"][{POST_SNAPBACK}][/a]


I use quality -1 (that's negative 1, ie less than 0), and I can't really tell that critical of a difference.  I play it over my trucks speakers and bazooka.  There is some very slight bass loss, but I just turn up my subwoofer.  Ogg On!