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.
Recent Posts
21
Lossless / Other Codecs / FrAD: Fourier Analogue-in-Digital (Analogue Audio Archive Codec)
Last post by forart.eu -
(@Admins: since has not been approved as news, this is the normal discussion version of the post)

Sounds more like a "wannabe" than a working project, but some (Archivist Licensed) source code seems available:
Quote
Fourier Analogue-in-Digital is an uncompressed codec like WAV or AIFF rather than FLAC or ALAC. Unlike WAV or AIFF, which store PCM, FrAD stores energy density per frequency.

FrAD is a codec that nobody owns, nobody patents, and is standardised in so much detail that anyone can easily implement it in any language, even if the original implementation is lost. It also supports tags, cover art, and sequential search, and the original implementation can be supported by any OS on any machine that supports Python.

The main difference between any other formats and FrAD is its resilience to corruption and robustness. For many audio files that are branched fron PCM, even a flip of a bit or two can result in popping noise, failure to play the corrupted frame, or even the loss of all subsequent audio information. FrAD, however, provides robust error recovery such that sporadic flipping of a few bytes is not even a concern.

Goals of FrAD (more)
  • Preserving analogue waveforms intact in digital file.
  • Ensuring the analogue waveform remains intact even if the file is corrupted
  • Making all data frames work independently

Website: https://mikhael-openworkspace.notion.site/Fourier-Analogue-in-Digital-d170c1760cbf4bb4aaea9b1f09b7fead
Format specs: https://mikhael-openworkspace.notion.site/Format-specs-727affae8db043f2b50372d91d534368
EN FAQ: https://mikhael-openworkspace.notion.site/FAQ-EN-51a2c395aafa46bf87febe615bad3a22
Git: https://github.com/h4n-ul/Fourier_Analogue-in-Digital

Dev's help request: https://github.com/h4n-ul/Fourier_Analogue-in-Digital/issues/1
25
3rd Party Plugins - (fb2k) / Re: Biography Discussion
Last post by Majestyk -
I've noticed that the plugin doesn't seem to handle certain special characters correctly.

For instance, i get the following error in my console when attempting to retrieve the album review for: https://www.allmusic.com/album/closure-continuation-mw0003617672

Quote
Biography Server: allmusic review: Closure/Continuation / Porcupine Tree: not found

Is there a workaround or is this a bug? I'd create a github issue, but there doesn't appear to be a way to do it.

I wasn't going to bring it up until the Allmusic bug was solved but now that you've brought it up, YES this is another Biography bug. I discovered it a couple weeks ago with the artist AC/DC and I actually got ChatGPT to fix it.

EDIT... I just checked my notes and it was the lyrics not loading that was the problem. So this is not your issue, BUT this is a separate issue that needs to be addressed.

You have to replace the function findFile in text.js to this...

Code: [Select]
	findFile(v, n) {
const type = /_\.(lrc|txt)$/.test(v.pth) ? 0 : /\.(lrc|txt)$/.test(v.pth) ? 1 : 2;
        let pth = '';
let item = n == 'bio' ? v.pth.replace(/%BIO_ARTIST%|%BIO_ALBUMARTIST%/gi, '%BIO_ARTIST%') : v.pth.replace(/%BIO_ALBUMARTIST%|%BIO_ARTIST%/gi, '%BIO_ALBUMARTIST%');

const a = $.tfEscape(name.artist(!v.lyrics ? panel.id.focus : false, !v.lyrics ? false : true).replace(/\//g, '_'));
const aa = $.tfEscape(name.albumArtist(!v.lyrics ? panel.id.focus : false, !v.lyrics ? false : true).replace(/\//g, '_'));
const l = $.tfEscape(name.album(!v.lyrics ? panel.id.focus : false, !v.lyrics ? false : true).replace(/\//g, '_'));
const tr = $.tfEscape(name.title(!v.lyrics ? panel.id.focus : false, !v.lyrics ? false : true).replace(/\//g, '_'));
item = item // substitue bio var + check advanced radio stream parser (tfBio & tfRev do lookUps not parser)
.replace(/((\$if|\$and|\$or|\$not|\$xor)(|\d)\(|\[)[^$%]*%bio_artist%/gi, a ? '$&#@!%path%#@!' : '$&').replace(/%bio_artist%/gi, a)
.replace(/((\$if|\$and|\$or|\$not|\$xor)(|\d)\(|\[)[^$%]*%bio_albumartist%/gi, aa ? '$&#@!%path%#@!' : '$&').replace(/%bio_albumartist%/gi, aa)
.replace(/((\$if|\$and|\$or|\$not|\$xor)(|\d)\(|\[)[^$%]*%bio_album%/gi, l ? '$&#@!%path%#@!' : '$&').replace(/%bio_album%/gi, l)
.replace(/((\$if|\$and|\$or|\$not|\$xor)(|\d)\(|\[)[^$%]*%bio_title%/gi, tr ? '$&#@!%path%#@!' : '$&').replace(/%bio_title%/gi, tr);

switch (type) {
case 0:
pth = item.replace(/_\.(lrc|txt)$/, '.$1');
break;
case 1:
pth = item.replace(/\.(lrc|txt)$/, '_.$1');
break;
}
let pths = !v.lyrics ? [item] : [item, pth];
return pths.some(w => {
const wildCard = /[*?]/.test(w);
if (!wildCard) {
this[n].readerItem = panel.cleanPth(w, !v.lyrics ? panel.id.focus : false, !v.lyrics ? '' : 'lyr').slice(0, -1).replace(/#@!.*?#@!/g, '');
return $.file(this[n].readerItem);
} else {
let p = panel.cleanPth(w.replace(/\*/g, '@!@').replace(/\?/g, '!@!'), !v.lyrics ? ppt.focus : false, !v.lyrics ? '' : 'lyr').slice(0, -1);
p = p.replace(/@!@/g, '*').replace(/!@!/g, '?').replace(/#@!.*?#@!/g, '');
const arr = utils.Glob(p);
if (!arr.length) return false;
this[n].readerItem = arr[0];
return $.file(this[n].readerItem);
}
});
}

I don't know if this is a proper fix or not but it works.
27
Lossless / Other Codecs / Re: HALAC (High Availability Lossless Audio Compression)
Last post by Hakan Abbas -
first link from your latest post gives out a 404 page (obvious reference to Star Wars IV scenery with github mascot cosplaying Obi-Wan Kenobi)
The text editor of the forum where the data was entered must have detected the link in this way by mistake. Corrected ¯\_(ツ)_/¯
https://github.com/Hakan-Abbas/HALAC-High-Availability-Lossless-Audio-Compression/releases
29
General - (fb2k) / Re: Old 1.x versions usage
Last post by zK -
I have been experiencing a problem playing files in foobar2000 for a long time and I thought it was some inadequacy on my part, which is why I stopped speaking out here.

However, I am almost convinced that this is not a personal mistake. Every time I access foobar2000 directly from File Explorer (Windows 10 x64) where a certain directory contains more than 15 songs, the player does not open to play the files. To do so, I open a directory and click on the "Play all" command in File Explorer. Any directory with up to 15 tracks this command works correctly.

Currently, I am using version 1.6.18, portable, and all audio file extensions on my system are configured to open with foobar2000.
30
3rd Party Plugins - (fb2k) / Re: Biography Discussion
Last post by marc2k3 -
The forward slash is not an issue at all.

Strangely, searching for the album artist + album combination yields no results but searching for album alone actually works. Why? Not got a clue... :P