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
1
3rd Party Plugins - (fb2k) / Re: JSplitter (splitter + SMP x64 alternative)
Last post by regor -
A panel may be processing on background, but not painting. I differentiate both because some particular scripts delay processing during painting (seekbars for ex.).

You can check if a panel is visible with:
https://theqwertiest.github.io/foo_spider_monkey_panel/assets/generated_files/docs/html/window.html#.IsVisible

How to implement that on an actual script, obviously varies a lot. There is no callback to check when the panel visibility changes, so you either use an interval on the background or some clever trick.

As an example, for my timeline script which displays charts... I could add a check for window.IsVisible, so whenever it's false, there is no processing. Then at on_paint callback, I could check if there is data already calculated, otherwise calculate it. That would account to what happens when the panel was initially hidden and I open it at a later point, there would be no data but I force it at that point. Obviously that implies a performance penalty when switching visibility, but you gain performance when it's hidden. (library tree for ex is always being processed on the background even if not used)


Code: [Select]
const myData = [];

function calcData() {
     myData.length = 0;
     myData.push('this is data')
     .... // data code
}

function on_item_focus_change() {
     if (window.IsVisible) {
          calcData();
     } else {
          myData.length = 0;
     }
}

function on_paint() {
     if (!myData.length) {calcData()}
     .... // Paint code
}
2
CD Hardware/Software / Re: Figuring out an DISC's offset ?
Last post by Feilakas -
Interesting tool, it archives subchannel too?
Indeed it does: https://github.com/superg/redumper

Quote
Subchannel data is stored uncorrected RAW (multiplexed). Both TOC based and Subchannel Q based splits are supported, subchannel Q is corrected in memory and never stored on disk.

If you're feeling super paranoid you can even retain the "raw" dump file "scram" which contains 99% of the disc's information (the rest being stored in MUCH smaller files which is always a good idea to preserve).
Normally, the scram file is used as the base for "splitting" the image files (bins & cue).

However, it is a command-line tool so I use it together with "MPF", a front-end tool, designed for archiving optical-based games but works for audio-cds just fine.
5
CD Hardware/Software / Re: Figuring out an DISC's offset ?
Last post by Feilakas -
"Redumper" is indeed an archival-grade tool, created for optical media preservation, and my aim from the get-go was indeed to preserve my collection as best as I could.
By design it creates as close to a bit-perfect copy as possible (there are some rare outlier cases but these are very few and far between).

However, at the same time I just plain didn't feel like adding an extra step.

Redumper dumps images in bin/cue form.

Switching to flac would add an extra conversion step. The total size is about 500GB which by today's standards isn't terribly large and for everyday use I batch-converted them to MP3 (simple, small, universal and "good-enough" for most everyday applications).

Plus, I noticed that cuetools does all kinds of weird things with the images and the cues it produces have significant differences from the original ones, meaning that I wouldn't be able to "go-back" if I wanted to for whatever reason.
7
3rd Party Plugins - (fb2k) / Re: foo_vis_vumeter
Last post by oops -
Let me re-check why my 2.1 VU is showing lower value compared with my 2.0 VU. Hmm....
Check your set up. Turn off all active DSP (Digital Signal Processing) in the foobar2000 preferences.
Reset VU meter tune and select your desired level mode. Using peak is easiest.
Check your test tones or create your own so you know exactly what is on each channel. Using a single-frequency sinusoidal tone is easiest. You can use Audacity.

If you know the amplitude of the signal on each channel going in, based on the mode you select for the VU meter and the mix factors. You should be able to predict where the needle will appear.

Mathematics aside: linear multiplication in a logarithmic scale is simple addition. So, a signal at 0dB with a mix factor of -3dB will appear at -3dB. The samples in foobar2000 64-bit are float64 in the linear scale range of -1.0 to +1.0, and we assume it to be a voltage ratio. To convert to linear scale from logarithmic scale use x=10^(y/20) and in the reverse y=20*log10(x).
9
Lossless / Other Codecs / Re: Monkey's Audio 11.00 (MULTI-THREADED ENCODING / DECODING)
Last post by Defender -
Just uploaded again with a seeking fix and an increase to the number of simultaneous files possible. Thanks again for testing.
Encoding 44 wav files

Old: FFDP 1096 08.73sec extra high - 1238.84 MB.ape - LIMITED to 16 simultaneous files
Old: FFDP 1100a 09.45sec extra high - 1238.84 MB.ape - LIMITED to 16 simultaneous files
New: FFDP 1100b 08.14sec extra high - 1238.84 MB.ape - All 24 Threads I have.

Big gain again :-)