Comments on: Listen to your computer: lstn /2010/12/09/listen-to-your-computer-lstn/ Mon, 03 Jun 2024 12:54:19 +0000 hourly 1 https://wordpress.org/?v=6.5.7 By: robermann /2010/12/09/listen-to-your-computer-lstn/comment-page-1/#comment-27 Sun, 12 Dec 2010 16:30:28 +0000 http://fuckingsound.com/?p=194#comment-27 maybe for every call stack recursion you coud add a tremolo, or a glissando whose speed depends on the loops number… just ideas.

]]>
By: mike /2010/12/09/listen-to-your-computer-lstn/comment-page-1/#comment-26 Sat, 11 Dec 2010 18:42:21 +0000 http://fuckingsound.com/?p=194#comment-26 current opcode sonification creates an impulse in a game of life style buffer, where the opcode determines where in the buffer it lands. imo this is currently a weak part of the sonification. the effect it ends up having is making a ‘flickering’ noise when an (any) opcode is found.
also, unlike your java vm style sonification we are just sampling the process, not getting every opcode, so we can’t rely on having a regular number of opcodes per output sample – esp. when the threads are sleeping.
the real meat is loading memory pointed at by the edx register in the hopes that it is a pointer that will give us some active memory. this seems to work, because when using it on audacity with the right speed control you can get clips of the audio being analyzed.
also, i think the stack-depth based sonification will have a good result, but i’m still trying to figure out what to do. i want to do something nicer than just mapping to a frequency that takes some advantage of the tree/graph like structure that callstacks have over time.

]]>
By: robermann /2010/12/09/listen-to-your-computer-lstn/comment-page-1/#comment-24 Thu, 09 Dec 2010 23:54:59 +0000 http://fuckingsound.com/?p=194#comment-24 Could you briefly explain how you are going to sonify the opcodes? For example, the following lines (*) are quite obscure:

analysis->cursor = (float) (threadState.FUCKINGEIP-analysis->minpc)/analysis->maxpc;
analysis->phase = ((float)info->opcodebyte/256.0)*M_PI;
analysis->freq = 0.1+exp2cursor((float)info->opcodebyte/256.0)*5.0;

analysis->buflen =((float)info->opcodebyte/256.0)*kFFManAudioBufferSize*0.5+512;
FuckingFuckerMan::Instance()->GetOpcodeAnalysis()->bufstart = randint(kFFManAudioBufferSize-FuckingFuckerMan::Instance()->GetOpcodeAnalysis()->buflen);

It seems that the function “FuckingPortAudioCallback” uses in same way that buffer. Does in your purposes every opcode act like a sample number, conveniently trimmed between +1 and -1 values?

—————
(*) from FuckingFuckerMan.cpp, lines 886s

]]>
By: mike /2010/12/09/listen-to-your-computer-lstn/comment-page-1/#comment-23 Thu, 09 Dec 2010 18:40:36 +0000 http://fuckingsound.com/?p=194#comment-23 sorry for not mentioning it. It’s ‘FuckingFucker’ (I may do a release that lets you fiddle with the memory of the program being attached to as well).

]]>
By: robermann /2010/12/09/listen-to-your-computer-lstn/comment-page-1/#comment-22 Thu, 09 Dec 2010 08:44:17 +0000 http://fuckingsound.com/?p=194#comment-22 It sounds interesting. Which project is lstn, among those listed in http://algorhythmics.svn.sourceforge.net/viewvc/algorhythmics/ ?

]]>