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
3
Other Lossy Codecs / Re: lossyWAV 1.4.2 Development (was 1.5.0)
Last post by Hakan Abbas -
Lossywav support was added to HALAC. In version 0.2.9, it will be shared with other arrangements. The Lossywav format is detected from the "fact" keyword in Header. And in this case a different mode is switched. If the "-fast" parameter is used, it is disabled.
However, I am currently sharing Encoder and Decoder, which is available for test. The results are not bad for starting in terms of speed/compression ratio. Encode speed is considered the same as HALAC Normal. However, the decode speed is much more (prediction process was not used)! Rice coding has not been used yet and the block size is 2048.
All other codecs are at the highest compression level in the default settings. And single thread results...
Code: [Select]
İskender Paydaş - Zamansız Şarkılar (2011)
10 Tracks, 469.385.056 bytes, i7 3770k, 16 gb ram, 240 gb ssd.
Wma      :  19.06,  11.26, 174,956,882
Flac     :  18.76,   4.73, 175,805,836
Halac    :   2.37,   1.81, 191,318,610
Tak      :  20.27,   7.18, 193,906,253
Wavpack  :  29.40,  16.38, 230,017,269
OptimFrog: 184.12, 111.69, 254,001,399
Monkeys  :  59.42,  63.83, 325,501,439
Alac     :  18.83,   8.87, 340,827,308
4
3rd Party Plugins - (fb2k) / Re: JScript Panel script discussion/help
Last post by Defender -
@marc2k3

Lately I started experimenting a bit with external outputdevices like bluetooth headphones/jbl charge, which I can select with a (modified) JS3 output button.
Works fine.

When output is set to such a device and the external bluetooth output device is switched off the JS3 panel with the output device button did crash. So I wrote some extra lines to prevent the crashing by automatically setting the output device to the second found output (first one being Null Output).
This kinda works since the JS3 panel does not crash anymore, but upon such an event (switching off current output) foobar responds with stopping playback and opening it's preferences page to Preferences/Playback/Output already preset to the second output (as intended), but I still have to click OK and start playback manually.

Code: [Select]
buttons.update = function () {
...
var str = fb.GetOutputDevices();
var arr = JSON.parse(str);
var active = -1;
for (var i = 0; i < arr.length; i++) {
if (arr[i].active) active = i;
if (arr[i].name.indexOf("[exclusive]") > 0) last_exclusive = i;
}
if (active == -1) { // OutputDevice has been switched OFF
active = 1;
fb.RunMainMenuCommand('Playback/Device/' + arr[1].name); // Force second OutputDevice
}
switch (true) {
case active == 0:
var img_odev_normal = utils.LoadImage(imgPath + 'OutputDevice-NULL-normal.png');
var img_odev_hover = utils.LoadImage(imgPath + 'OutputDevice-NULL-hover.png');
break;
case active == 1:
var img_odev_normal = utils.LoadImage(imgPath + 'OutputDevice-Default-normal.png');
var img_odev_hover = utils.LoadImage(imgPath + 'OutputDevice-Default-hover.png');
break;
case arr[active].name.indexOf("[exclusive]") > 0:
var img_odev_normal = utils.LoadImage(imgPath + 'OutputDevice-Exclusive-normal.png');
var img_odev_hover = utils.LoadImage(imgPath + 'OutputDevice-Exclusive-hover.png');
break;
case active > last_exclusive:
var img_odev_normal = utils.LoadImage(imgPath + 'OutputDevice-External-normal.png');
var img_odev_hover = utils.LoadImage(imgPath + 'OutputDevice-External-hover.png');
break;
default:
var img_odev_normal = utils.LoadImage(imgPath + 'OutputDevice-Other-active.png');
var img_odev_hover = utils.LoadImage(imgPath + 'OutputDevice-Other-hover.png');
}
...
}

function on_output_device_changed() {
var str = fb.GetOutputDevices();
var arr = JSON.parse(str);
var active = -1;
var last_exclusive = -1;
for (var i = 0; i < arr.length; i++) {
if (arr[i].active) active = i;
if (arr[i].name.indexOf("[exclusive]") > 0) last_exclusive = i;
}
if (active == -1) {
active = 1;
fb.RunMainMenuCommand('Playback/Device/' + arr[1].name);
}

buttons.update();
window.Repaint();
}

I even copied this bit of code to the on_output_device_changed() function itself, but same behavior.

Is there a way to prevent opening of the preferences page when current output device is switched off?

NB. Preferably I'd like to detect the output not being available anymore, switching to second outputdevice and continue playing
7
3rd Party Plugins - (fb2k) / Re: foo_truepeak True Peak Scanner
Last post by Case -
The failure txt call stack shows activity from several components, but mostly and right before errors from foo_input_dvda. No True Peak Scanner activity visible at all. Loading the minidump in debugger doesn't show TPS involvement either. Looks like a problem in DVDA input.
9
3rd Party Plugins - (fb2k) / Re: foo_truepeak True Peak Scanner
Last post by Defender -
@Case

There's a small bug I'd detected earlier (some 6 versions ago) and is still there.

Starting foobar and first action is TPS on a DVDA-iso, foobar rarely (!) crashes to the desktop. No crashdump is written.
Happened this morning again.

While testing a bit more (first action TPS on DVDA-iso after starting foobar), when I hit abort on the scan scan foobar and the TPS progress window froze. Had to kill via taskmanager. Foobar wrote empty crashfiles.

Did the same test again and this time hitting abort crashed foobar to the desktop. Crashdump was written and hereby attached.

So there is definitely something fishy between the combination of foobar, dvda plugin and tps plugin.
I'm using latest x86 beta with  currently TPS 0.6.11, foo_input_dvda 0.7.3.

Not a big deal of course this bug(s) since I don't scan DVDA-iso that much, but if you have the time you might take a look at it.