Support and General Use > Audio Playback, Database and Playlists

Decoding performance on iPOD

<< < (2/4) > >>

Buschel:
Hello,

thanks for the answers. I will have a look at the codec benchmark -- I guess it is activated via compile switch.
Two ideas:
1. Why not create / use reference files for each codec. For decoding performance we could simply use white noise encoded at e.g. 192kbps target bitrate -- most codecs should support this bitrate or can be tweaked via commandline to use up to this rate. No rights issues with white noise :o)
2. Do we have a possiblity to decode files to disc/flash? This would a good point to check whether the performance optimization lead to same or comparable results. Especially when tweaking the synthesis filters one could get hints about possible failures and the bug-location.

Lear:
You can certainly hack the codec, or write a test plugin (that uses the decode library) to write to a file. And you can run this in the simulator, which is convenient for verification purposes.

There's also a profiler in Rockbox, enabled by selecting (A)dvanced, (P)rofiling during configuration. (It's not used that much, so you might need to do some hacking to get it to build.) See the Wiki page SourceProfiling for some more information about this, including on how to get useful information from it.

Buschel:
Ok, so the PC-simulator will do real decoding? I thought it would just simluate the HMI-behaviour. Nevertheless I cannot test for performance only for for validation of decoding results. But that's better than nothing :)

linuxstb:

--- Quote from: Buschel on May 09, 2007, 03:15:10 PM ---Hello,

thanks for the answers. I will have a look at the codec benchmark -- I guess it is activated via compile switch.

--- End quote ---

To enable the "test_codec" plugin, add the line "test_codec.c" to apps/plugins/SOURCES and also add the line "wav,viewers/test_codec,-" to apps/plugins/viewers.config and recompile Rockbox.

You can then test decoding any audio file by choosing test_codec from the "Open With..." context menu option.


--- Quote ---Two ideas:
1. Why not create / use reference files for each codec. For decoding performance we could simply use white noise encoded at e.g. 192kbps target bitrate -- most codecs should support this bitrate or can be tweaked via commandline to use up to this rate. No rights issues with white noise :o)

--- End quote ---

This has been discussed for years, but no-one has got round to creating such a set of test files.  The closest is rasher's collection here:

http://www.rasher.dk/rockbox/soundfiles/

But that's out of date as far as file formats supported by Rockbox.

No need to go for white noise - there are many freely distributable audio files available, for example those at www.archive.org.

Bagder has offered to host such a set of files at http://download.rockbox.org


--- Quote ---2. Do we have a possiblity to decode files to disc/flash? This would a good point to check whether the performance optimization lead to same or comparable results. Especially when tweaking the synthesis filters one could get hints about possible failures and the bug-location.

--- End quote ---

I'm working on adding a wav-writing option to test_codec, but it's not done yet.

Buschel:
Hi all,

first the good news:
Installing cygwin and everything around worked fine. I am able build the software for iPOD-Video and get it running on my hardware! Thanks to your good how-to's :o)
Also the test-codec feature works fine.

the bad news:
From what I saw in the source I was sure there were several double-calculations within the synthesis filterbank. I removed these calculations with direct int32 / int64-multiplications. Decoder now becoms (slight) slower?
In general the signal workflow in fixed point is hard to follow compared to the float-signals I am coped to...

Navigation

[0] Message Index

[#] Next page

[*] Previous page

Go to full version