Log inRegister an accountBrowse CSDbHelp & documentationFacts & StatisticsThe forumsAvailable RSS-feeds on CSDbSupport CSDb Commodore 64 Scene Database
  You are not logged in 
Frodigi 6   [2015]

Frodigi 6 Released by :
Algotech

Release Date :
23 August 2015

Type :
C64 One-File Demo

AKA :
Assisted MP3

User rating:*********_  8.8/10 (14 votes)   See votestatistics

Credits :
Code .... Algorithm of Algotech, Onslaught, svenonacid
Graphics .... Algorithm of Algotech, Onslaught, svenonacid
Idea .... Algorithm of Algotech, Onslaught, svenonacid
Sampling .... Algorithm of Algotech, Onslaught, svenonacid

Download :
http://csdb.dk/getinternalfile.php/141106/frodigi6 - assisted mp3.prg (downloads: 916)

Look for downloads on external sites:
 Pokefinder.org


User Comment
Submitted by algorithm on 25 August 2015
Indeed I was considering mixing in higher bits then conversion to 8bits. Quality gain in comparison to cpu time however was a little bit too much. Using the NMI as a buffer player and the outside routine as the decoder was also considered, but I needed every piece of ram (infact I think there was only around 60 bytes free at the end) - and there would be duplication as the nmi would read the buffer which was written already previously. However this would have opened up more flexibility in particular for post processing of samples (interpolating between transitions) and more
User Comment
Submitted by Oswald on 25 August 2015
nice reading, btw using the c bit u can add stuff up to 9 bits, then ror a to get 8 bits.
User Comment
Submitted by algorithm on 25 August 2015
@oswald and Joe. indeed, the software approach gives more flexible control over the individual sines. One of the main issues with using the hardware oscillators of the sid was that the sustain was not fully controllable resulting in heavy clicking or having to adjust the encoder to only force higher sustain if required.

The result of this was that amplitudes were not as intended making some channels louder/quieter than others enhancing the warbling effect.

The same issue arises also if attempting to use adsr curves to approximate the sustain or fixed sustain per channel and changing the master volume.

Mixing a small amount of sines is also very much sensitive to the source audio. In nearly all complex audio cases there will be issues with warbling and the underwater syndrome when using this very small amount of sines to recreate the audio.

I still think it does a good job considering the low amount of sines. I have compared it to some specific vst based plugins (e.g pitchtech) that can convert to given amount of sines and this performs rather poorly in comparison although i am not sure if the "melody extractor" in the plugin performs the psychoaccoustic masking.

The frodigi method is really only aimed at extremely low bitrate audio. quality can be increased by more sine channels or more updates, but this would make it far less useful when
other more efficient and higher quality methods (at higher bitrates) can be used instead .

For speech only, there is less chance of artifacts. I have provided a link to an example below

https://www.dropbox.com/s/pkukeme7ex8h73x/fro6test.prg?dl=1

Adding drums, bassline, chords, synth together with synth makes it choke however (ideally would need minimum 16 sines) - working well with the amiga based decoder, but would be too much for the c64 to mix these channels at 8khz.

There are some improvements that can be made. In particular the mixing. would have probably been able to mix 6 sines in non badline mode (using this current full decode in nmi implementation)

Fastest method of mixing was to prescale the sines from 0-63 unsigned (using 16 amplitudes) and then merely to add these together to recreate the 8bit unsigned.

this does result in the lower bits being distorted using the 8bit playback method (as its more 6.5bits or so scaled out to 8bit) - the digimax mode in the demo will give higher playback quality

the low order byte is added using a 8 step pitch table which gives me the steps to match the fft encode (5hz increments) this ensures seamless looping, however amplitude changes can result in clicking (which would have been more easily rectified if i had used the nmi to play back a buffer and used the main loop to decode and interpolate between transitions.

Further experiments will also involve multiple waveforms such as noise, pulse etc. due to the software approach, the phase can also be used if required.
User Comment
Submitted by GeoAnas on 25 August 2015
Very impressive ! Well Done !
User Comment
Submitted by Joe on 24 August 2015
My first impression was as before in utter amaze.
Though not sounding better than the 2bit tape recorder
replay routs, I got tired. Though what I could wish
for is filtered stuff getting rid of those past #$ff stuff,
so I don't have to listen to glitter (you leave the
channels without filter, gosh you have to try that
one).

I still believe that you are on your headway to
crack something wonderful here and hence, as before
praised it with a 10. As with many other of your
sketches.
User Comment
Submitted by Oswald on 24 August 2015
the tech behind it is impressive, really good idea to take over the sound generation from the sid, probably this routine is the closest resemblance to mp3 so far :) but as I recall your other sound compression algorithms were better in quality (and probably not able to cover this much time). if you could eliminate the "drowning" hiccup this would rule.
User Comment
Submitted by Bitbreaker on 24 August 2015
sorry to say, but it still makes my ears bleed :-D But playing time is pretty enhanced, indeed.
User Comment
Submitted by Thierry on 23 August 2015
Exelent!
User Comment
Submitted by Dr.j on 23 August 2015
always impressive decode work from Algo
User Comment
Submitted by Groepaz on 23 August 2015
george michael is drowning.... how can you not like it? :o)
User Comment
Submitted by GeoAnas on 23 August 2015
Thanks for the Digimax support ;-)
User Comment
Submitted by celticdesign on 23 August 2015
Amazing, to be continued for sure! :-)
Search CSDb
Advanced
Navigate
Prev - Random - Next
Detailed Info
Summaries
User Comments (12)
Production Notes
Fun Stuff
Goofs
Hidden Parts
Trivia
Forum
Discuss this release
Sponsored links
Support CSDb
Help keep CSDb running:



Funding status:




About this site:
CSDb (Commodore 64 Scene Database) is a website which goal is to gather as much information and material about the scene around the commodore 64 computer - the worlds most popular home computer throughout time. Here you can find almost anything which was ever made for the commodore 64, and more is being added every day. As this website is scene related, you can mostly find demos, music and graphics made by the people who made the scene (the sceners), but you can also find a lot of the old classic games here. Try out the search box in the top right corner, or check out the CSDb main page for the latest additions.
Home - Disclaimer
Copyright © No Name 2001-2017
Page generated in: 0.43 sec.