HydrogenAudio

Lossless Audio Compression => FLAC => Topic started by: ktf on 2013-03-06 22:32:02

Title: New FLAC frontend beta
Post by: ktf on 2013-03-06 22:32:02
Hi everyone,

Because of the recent activity surrounding the FLAC project, the number of bugs in the FLAC sourceforge tracker regarding the frontend (which actually has never been part of the FLAC project at all) and the observation that the last version of this frontend was released 10 years ago (2003-01-26 according to W. Speek's homepage), I thought it was a good idea to remake it to make FLAC accessible to Windows-users not used to a command line as well.

It's very similar to the original, the only feature that I skipped was the tagging because I think it's a little complicated for such a 'low-level tool' and there are plenty FLAC-supporting tagging tools that perform much better these days. edit: one improvement, this tool has drag-and-drop support so it can replace FLACtester as well.

The first beta is available here. After thorough testing (Windows 7 32-bit), I couldn't find any bugs left.
https://sourceforge.net/projects/flacfronte...ad?source=files (https://sourceforge.net/projects/flacfrontend/files/latest/download?source=files)

Comments regarding the usefulness of this tool (regarding there are a lot more FLAC tools than there were at the time of the release of FLAC 1.2.1), bugs, features etc. are appreciated.

Thanks in advance!

(https://sourceforge.net/p/flacfrontend/screenshot/flacfrontend-screen.png)

P.S.: I'm not really sure what to do with the copyleft stuff. Making this frontend was no rocket science, so I thought it would be easiest if I released the code and binaries in public domain (Creative Commons CC0 1.0 Universal Public Domain Dedication) but is that even possible, because the binaries include linked Visual Studio stuff I guess. (But then again, FLAC itself is using this MSVC stuff too, so it should be at least GPL compatible?) The bundled flac.exe and metaflac.exe are GPL'd of course. Feedback on this would be most welcome.
Title: New FLAC frontend beta
Post by: saratoga on 2013-03-07 00:04:16
P.S.: I'm not really sure what to do with the copyleft stuff. Making this frontend was no rocket science, so I thought it would be easiest if I released the code and binaries in public domain (Creative Commons CC0 1.0 Universal Public Domain Dedication) but is that even possible, because the binaries include linked Visual Studio stuff I guess. (But then again, FLAC itself is using this MSVC stuff too, so it should be at least GPL compatible?)


The GPL makes an exception for any libraries that are part of the compiler or target operating system, so stuff added by VS doesn't have to be open source.  You should be fine just open sourcing your code itself.
Title: New FLAC frontend beta
Post by: testyou on 2013-03-07 02:31:02
Appreciated!  Working fine for me.
Title: New FLAC frontend beta
Post by: Wombat on 2013-03-07 02:39:27
Nice! After so many people complaining about the old frontend not working i like your new version.
This way even unexperienced users should be able to easily do with flac what flac is meant to do with a kind of starter package. Like you already mentioned if someone wants to dig deeper there are several other tools.
No bug found on w7 x64 here. We may argue about keeping the encoder window open when no error occured.
Title: New FLAC frontend beta
Post by: ktf on 2013-03-07 08:01:49
We may argue about keeping the encoder window open when no error occured.

Indeed. I think it should remain open to check for issues like found foreign metadata (which are no error, just a warning) or just to view the statistics.
Title: New FLAC frontend beta
Post by: Wombat on 2013-03-07 16:17:52
Indeed. I think it should remain open to check for issues like found foreign metadata (which are no error, just a warning) or just to view the statistics.

Ok. What about "Please press any key to close" ?
Title: New FLAC frontend beta
Post by: eahm on 2013-03-07 16:34:13
(http://upload.wikimedia.org/wikipedia/commons/2/2a/Keyboard-anykey.jpg)
Title: New FLAC frontend beta
Post by: korth on 2013-03-07 17:16:35
"FLAC frontend.exe is not a valid Win32 application." (XP 32-bit and 64-bit)
Title: New FLAC frontend beta
Post by: ktf on 2013-03-07 17:43:06
Ok. What about "Please press any key to close" ?
It's supposed to do that... The program just creates a BAT-file with a FLAC command and a PAUSE command, so it should display something like press any key to exit. Mine says "Druk op een toets om door te gaan...", which is the same phrase in Dutch. I don't know how it is possible you don't get one? :S


"FLAC frontend.exe is not a valid Win32 application." (XP 32-bit and 64-bit)
I was afraid that might happen. It's compiled on Windows 7 with Visual Studio 2012, and sadly I don't have a Windows XP installation. I'll try to find a solution soon. I found that I need an update of MSVC 2012. I'll release a new beta as soon as it's fixed.
Title: New FLAC frontend beta
Post by: ktf on 2013-03-07 18:57:49
I've upgraded MSVCe 2012 to update 1 which has Windows XP targeting. Besides that, drag-and-drop support has improved, a README is included and the executable is a few kB lighter.

You can download it here: http://sourceforge.net/projects/flacfronte...a2.zip/download (http://sourceforge.net/projects/flacfrontend/files/FLAC%20frontend%202013%20beta2.zip/download)

Title: New FLAC frontend beta
Post by: Wombat on 2013-03-07 20:21:25
It's supposed to do that... The program just creates a BAT-file with a FLAC command and a PAUSE command, so it should display something like press any key to exit. Mine says "Druk op een toets om door te gaan...", which is the same phrase in Dutch. I don't know how it is possible you don't get one? :S

Indeed the "Any" key works but i don´t see the message. Only a blinking cursor below the last stats.
Title: New FLAC frontend beta
Post by: korth on 2013-03-07 20:28:43
Well it starts in both versions of XP now. .NET 4.0 required (you may have been able to target an earlier version?).
I'm going to have to play with my firewall rules to allow for the changing flacfrontend.bat file before I can run it again.
Title: New FLAC frontend beta
Post by: ktf on 2013-03-07 20:40:58
Indeed the "Any" key works but i don´t see the message. Only a blinking cursor below the last stats.

That's weird. I'll investigate.

Well it starts in both versions of XP now. .NET 4.0 required (you may have been able to target an earlier version?).
I'm going to have to play with my firewall rules to allow for the changing flacfrontend.bat file before I can run it again.

Firewall? But that .bat file is supposed to be generated locally (in the temporary-files folder of the user, usually %TEMP%) so why would a firewall would have anything to do with that?
Title: New FLAC frontend beta
Post by: Wombat on 2013-03-07 21:09:17
Indeed the "Any" key works but i don´t see the message. Only a blinking cursor below the last stats.

That's weird. I'll investigate.

As soon "chcp 65001" is in the batch i don´t see the message with PAUSE. German W7 here.
Title: New FLAC frontend beta
Post by: korth on 2013-03-07 21:21:36
Firewall?
OK, antivirus/security/firewall rules.  My settings, not you.
Settings wouldn't allow the .bat to call an .exe if the hash didn't match the rule. If I allow flacfrontend.bat to be sandboxed, the .exe is called. I'll try testing from there.
Quote from: Wombat link=msg=0 date=
"chcp 65001" is in the batch
'chcp' is not recognized as an internal or external command, operable program or batch file, but skips over it.
Title: New FLAC frontend beta
Post by: ktf on 2013-03-07 22:02:58
Well it starts in both versions of XP now. .NET 4.0 required (you may have been able to target an earlier version?).

I rolled back to Visual Studio 2005 instead of 2012. Works just as nice for a project this small and it requires .NET 3 instead of 4.

As soon "chcp 65001" is in the batch i don´t see the message with PAUSE. German W7 here.


'chcp' is not recognized as an internal or external command, operable program or batch file, but skips over it.

Kind of fixed for both. Not the nice way, but it should work.

New download link:
http://sourceforge.net/projects/flacfronte....2.zip/download (http://sourceforge.net/projects/flacfrontend/files/FLAC%20frontend%202013%20beta2.2.zip/download)
Title: New FLAC frontend beta
Post by: Wombat on 2013-03-07 22:10:32
Weird trick but works
Title: New FLAC frontend beta
Post by: korth on 2013-03-08 00:46:50
Unfortunately the batch file terminates immediately with the line chcp 65001 or chcp 65001 >nul in XP (both 32-bit and 64-bit). If I delete chcp.com, I get the error but the rest of the batch runs.
Title: New FLAC frontend beta
Post by: korth on 2013-03-08 17:34:53
These do work on XP though

Code: [Select]
@ECHO OFF
(
chcp 65001 >nul
[i]<flac.exe or metaflac.exe command> [/i]
ECHO Press any key to continue...
PAUSE >nul
)

[b]AND[/b]

@ECHO OFF
chcp 65001 >nul && [i]<flac.exe or metaflac.exe command>[/i] && ECHO Press any key to continue... && PAUSE >nul
Title: New FLAC frontend beta
Post by: korth on 2013-03-09 21:48:10
ktf,
I've built a local copy of FLAC frontend.exe, adding the appropriate batch->WriteLine("("); or batch->WriteLine(")"); to Form1.h per my previous post so I could do some testing. FLAC frontend working fine now in XP32 and XP64 so far. Still working fine in WIN7 64.

A note on XP64: On the two systems I checked, chcp.com was not in the SYSWOW64 folder. Copying chcp.com from the SYSTEM32 folder over to SYSWOW64 seems to work OK for the batch file. See also link (http://bug-eyed.blogspot.com/).
Title: New FLAC frontend beta
Post by: ktf on 2013-03-12 10:35:58
ktf,
I've built a local copy of FLAC frontend.exe, adding the appropriate batch->WriteLine("("); or batch->WriteLine(")"); to Form1.h per my previous post so I could do some testing. FLAC frontend working fine now in XP32 and XP64 so far. Still working fine in WIN7 64.

I've been looking for an explanation of why this works and what these parentheses are doing exactly, but I can't find anything on the matter. Can you explain it to me?
Title: New FLAC frontend beta
Post by: ktf on 2013-03-12 11:24:34
I still don't understand what these parentheses to exactly, but using them defeats the purpose of adding chcp. I added that command to make FLAC able to handle characters like è, é, ë etc. which is doesn't handle without chcp 65001 yet, but when using these parentheses it behaves the same way as not using chcp.
Title: New FLAC frontend beta
Post by: korth on 2013-03-12 13:53:04
The parentheses just group or nest multiple commands, same as using '&' when commands are grouped in a single line.
With fingerprint command on testfile_1.flac and testfile_2èéë.flac (>nul removed) in XP I get:[blockquote]Active code page: 65001
O:\Test\testfile_1.flac:669e60dc1a3cb33866da78f026b5dec6
O:\Test\testfile_2dTF.flac: ERROR: reading metadata, status = "FLAC__METADATA_CHAIN_STATUS_ERROR_OPENING_FILE"

The FLAC file could not be opened.  Most likely the file does not exist
or is not readable.
Press any key to continue...[/blockquote]So it isn't exactly working in XP. To keep support for XP though, the chcp command can't be on a line by itself or the batch file just terminates immediately. Maybe making chcp an option (or an option to disable it) with a note in the readme that this feature doesn't work on XP?
Title: New FLAC frontend beta
Post by: agentk7 on 2013-03-15 20:20:45
Wow, I was wondering if anyone would ever take up the mantle to improve/revamp Flac Frontend.  I wanted to pass along my initial observations:

- The only issue I have with the old Flac Frontend is with files that have apostrophes in them.  It skips converting those files and I have to go back and rename them.  New Flac Frontend does not have this problem.  (I always assumed this was a scripting issue, didn't have this come up very often but I'm always aware of it).

- When configuring the frontend I checked the box for "Keep foreign metadata".  My first test was to decode some flac files and was immediately greeted with the command prompt error "ERROR reading foreign metadata: no foreign metadata found (017)".  Perhaps this is a flac.exe issue and is fixed with the new version? 

- One favorite feature of the old Flac Frontend was the fact that it preserved the file date of the input files.  This version does not preserve the original file date.

- Will the new Flac Frontend eventually have a config or ini file to save the settings?
Title: New FLAC frontend beta
Post by: agentk7 on 2013-03-15 23:24:41
- The only issue I have with the old Flac Frontend is with files that have apostrophes in them.  It skips converting those files and I have to go back and rename them.  New Flac Frontend does not have this problem.  (I always assumed this was a scripting issue, didn't have this come up very often but I'm always aware of it).

Disregard this bit, every now and then I've noticed the old Flac Frontend not encoding certain files and I recently fixed a file by removing the apostrophe and reencoding but I just noticed a couple other recent encodes with a bunch of files having apostrophes in the name that I didn't have trouble with.  It must be some other special character issue, possibly as mentioned earlier in this thread.
Title: New FLAC frontend beta
Post by: ktf on 2013-03-17 22:06:10
Maybe making chcp an option (or an option to disable it) with a note in the readme that this feature doesn't work on XP?

I'll use some code that removes chcp from the batch file if running on XP. Really, this chcp-stuff is giving me lots of headache.


Wow, I was wondering if anyone would ever take up the mantle to improve/revamp Flac Frontend.  I wanted to pass along my initial observations:

- When configuring the frontend I checked the box for "Keep foreign metadata".  My first test was to decode some flac files and was immediately greeted with the command prompt error "ERROR reading foreign metadata: no foreign metadata found (017)".  Perhaps this is a flac.exe issue and is fixed with the new version?

That's not a bug, it's a feature. Keep foreign metadata is an 'advanced' feature and should only be used if you know what you're doing, so enabling it for decoding while there's no foreign metadata indeed returns an error, that's by design.

Quote
One favorite feature of the old Flac Frontend was the fact that it preserved the file date of the input files.  This version does not preserve the original file date

Weird, flac does this on linux by default as well. I'll take a look why this doesn't work on windows.

Quote
- Will the new Flac Frontend eventually have a config or ini file to save the settings?

I don't think so.
Title: New FLAC frontend beta
Post by: robert on 2013-03-18 07:29:27
Just curious, why does it need to write a batch file, instead of just running the executables with unicode command line?
Title: New FLAC frontend beta
Post by: ktf on 2013-03-18 08:08:33
Just curious, why does it need to write a batch file, instead of just running the executables with unicode command line?


The easiest way to feed back the output of the FLAC command is with the console. I tried to feed it back over the listbox but that didn't work very well. The problem is the status line that overwrites itself. Of course I could use a single command, but if a lot of files are given (>50) it has to be split into several commands because Windows has a certain maximum command length. If I would execute this without a batch file, several console windows would pop up to confuse the user.

I could try another way to display the output via the GUI though, with a textbox instead of a listbox. Maybe that would work.
Title: New FLAC frontend beta
Post by: robert on 2013-03-18 08:48:55
I've to admit to never having tested it myself, but can't you just allocate a console for your gui program and execute processes using it?

edit: here is some test code
Code: [Select]
#include <qtgui/qtgui>
#include <windows.h>
#pragma comment( lib, "shell32.lib" )

void showConsole( HWND parent ) {
  FreeConsole();
  AllocConsole();
  if ( HWND console = GetConsoleWindow() ) {
    RECT r;
    GetWindowRect( console, &r );
    SetParent( console, parent );
    MoveWindow( console, 48, 48, r.right, r.bottom, TRUE );
    SetConsoleOutputCP(CP_UTF8); // assuming "Lucida console" font was selected already
  }
}

void run( wchar_t app[], wchar_t * cmd ) {
  STARTUPINFOW si;
  ZeroMemory( & si, sizeof( si ) );
  si.cb = sizeof( si );
  PROCESS_INFORMATION pi;
  ZeroMemory( & pi, sizeof( pi ) );
  if ( CreateProcessW( app, cmd, 0, 0, 0, 0, 0, 0, & si, & pi ) ) {
    DWORD exit_code = 0;
    do {
      QCoreApplication::processEvents( QEventLoop::ExcludeUserInputEvents );
      GetExitCodeProcess( pi.hProcess, &exit_code );
    } while( exit_code == STILL_ACTIVE );
    CloseHandle( pi.hProcess );
    CloseHandle( pi.hThread );
  }
}
void run( wchar_t app[], QString const& cmd ) {
  run( app, (wchar_t*)cmd.utf16() );
}

char utf16_test[] = { 0x22, 0x04, 0x40, 0x04, 0x30, 0x04, 0x32, 0x04, 0x43, 0x04, 0x48, 0x04, 0x3a, 0x04, 0x30, 0x04, 0x2e, 0x00, 0x77, 0x00, 0x61, 0x00, 0x76, 0x00, 0x00, 0x00 };
QString const file = QString("E:\\dev-privat\\testsongs\\%1").arg(QString::fromUtf16((ushort*)utf16_test).trimmed());

int main(int argc, char** args) {
  QApplication app( argc, args );
  QMainWindow win;
  win.show();
  showConsole( win.effectiveWinId() );
  QString const cmd( "LAME.EXE --nohist -V0 --out-dir . \"%1\"" );
  run( L"LAME.EXE", cmd.arg(file) );
  run( L"LAME.EXE", cmd.arg("testcase.wav") );
  run( L"LAME.EXE", cmd.arg("W:\\CD\\Duffy\\2008-Rockferry\\07 Mercy.wav") );
  app.exec();
  return 0;
}

and the snapshot:
[attachment=7435:console_test.png]
Title: New FLAC frontend beta
Post by: robert on 2013-03-20 08:42:50
This little exercise showed me, there is a bug in LAME displaying the input file name, if it contains non ansi chars. So it was worth it. (look into above screenshot to see what this means)
Title: New FLAC frontend beta
Post by: ktf on 2013-03-20 17:24:54
Nice stuff! Thanks for trying! I'll definitely check that out, looks promising.
Title: New FLAC frontend beta
Post by: ktf on 2013-03-26 17:46:16
It took a while (some bumps on the way) but it's fixed. Now FLAC frontend uses it's own console to process files instead of using a batch-file. Furthermore, I've created an installer that checks whether .NET Framework 2.0 is present and the program itself checks whether flac.exe and metaflac.exe are in it's path. This release uses the FLAC 1.3.0pre2 patched by Case for Unicode support, so it's not recommended to encode/decode anything critical with this.

The (MSI) installer can be downloaded from here:
http://sourceforge.net/projects/flacfronte...03.msi/download (http://sourceforge.net/projects/flacfrontend/files/FLAC%20frontend%20v2.0%20beta%203.msi/download)

I still have a zip for those who like it.
http://sourceforge.net/projects/flacfronte...03.zip/download (http://sourceforge.net/projects/flacfrontend/files/FLAC%20frontend%20v2.0%20beta%203.zip/download)

Please report any bugs found. The installer and program have been checked on Windows XP SP3 and Windows 7.
Title: New FLAC frontend beta
Post by: korth on 2013-03-26 23:19:25
Nice.
Not a big deal but text not clearing completely on file names with special characters. This is a FLAC 1.3.0pre2 problem though, not the frontend. Just mentioning it.

Code: [Select]
flac 1.3.0pre2, Copyright © 2000,2001,2002,2003,2004,2005,2006,2007,2008,2009  Josh Coalson
flac comes with ABSOLUTELY NO WARRANTY.  This is free software, and you are
welcome to redistribute it under certain conditions.  Type `flac' for details.

test èéë.flac: ok                    [b]te[/b]
test.flac: ok
test èéëèéë.flac: ok                    [b]plete[/b]
Press any key to continue . . .
I don't see this when this frontend is using FLAC 1.2.1
Title: New FLAC frontend beta
Post by: Wombat on 2013-03-27 00:43:30
Thanks! Works fine here.
One thing i noticed is the replaygain values are the same for higher samplingrate material as the corresponding downsampled 44.1kHz version of it, nice. The value seems to be the same as the good old metaflac has calculated. I know this is not related to the frontend itself but maybe someone wonders.
Title: New FLAC frontend beta
Post by: ktf on 2013-03-27 07:38:38
Not a big deal but text not clearing completely on file names with special characters.

I know, but that's a work in progress. As the patch has not been merged yet (and I guess this is a part that the patch "forgot", while it is already a very large patch), I'll wait with reporting it until it is merged. Otherwise, it makes merging only more difficult I guess.
Title: New FLAC frontend beta
Post by: robert on 2013-03-27 07:42:27
Am I right, you are not setting the console output to code page to utf-8?

SetConsoleOutputCP(CP_UTF8);
Title: New FLAC frontend beta
Post by: ktf on 2013-03-27 07:48:04
Indeed, I didn't set a codepage because chcp 65001 (which is the same but for use in batch files) gave me so much trouble, and now it seems to work well without setting a codepage.
Title: New FLAC frontend beta
Post by: Case on 2013-03-27 12:02:54
Good find, korth. It seems I still had missed places where file name is printed, those need to call new printf function that converts internal UTF-8 to wide chars.

Robert, UTF-8 is not a valid codepage for console output. The function you mentioned will return error 0x32.
Title: New FLAC frontend beta
Post by: robert on 2013-03-27 12:13:11
I'll have to check my test code again later, from what I remember, not calling that function resulted in using code page 850 on my windows 7 machine, instead of CP_UTF8.

windows error code 32: "The process cannot access the file because it is being used by another process."

From the error code, it looks like some process is using the newly created console already, likely the frontend itself.

Anyway, if the console uses CP_UTF8 already, then there is no need to change code page.

Title: New FLAC frontend beta
Post by: Case on 2013-03-27 12:31:36
Codepage doesn't matter, it's doing the printing in unicode. The error was not 32 but 0x32, hex. It translates to "not supported". If you look at the registry key HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Nls\CodePage you'll see that there are no UTF codepages there.
Title: New FLAC frontend beta
Post by: robert on 2013-03-27 13:01:28
Ok, I've just looked again at my test program. The SetConsoleOutputCP(UTF_8) function call returns TRUE. Without this call, cyrillic text doesn't  display correctly anymore. Btw, LAME doesn't use wide character printing functions, it uses normal printf and friends.
Title: New FLAC frontend beta
Post by: Case on 2013-03-27 13:40:22
This is curious. I had made a silly mistake in my test program where I assumed error when SetConsoleOutputCP returned non-zero. It returns success code here too yet GetLastError returns "not supported" right afterwards. Also printing with WriteConsole gives UTF-8 garbage codes instead of translating them to anything intelligible. If this is supposed to work it certainly requires extra magic to take place.
Title: New FLAC frontend beta
Post by: ktf on 2013-04-08 18:58:03
I have just uploaded a new version, beta 4. It is available for download here: https://sourceforge.net/projects/flacfronte...ad?source=files (https://sourceforge.net/projects/flacfrontend/files/latest/download?source=files)

Changes in beta 4:
- Uses new compiles of flac 1.3.0pre3 + a few git fixes by Case. Known bugs: not correctly displaying non-latin chars in filenames
- Installer shrunk from 1MB to 635kb
- .NET 4.0 and 4.5 are supported. The installer simply packs two executables, one for .NET 2.0, 3.0 and 3.5 and one for .NET 4.0 and 4.5, and chooses which one should be installed. The .NET 4.0 version is preferred by the installer
- Fixes a few minor bugs

Bug reports are very welcome
Title: New FLAC frontend beta
Post by: ktf on 2013-04-17 11:16:08
Once more a new version, beta 5. Download here: https://sourceforge.net/projects/flacfronte...ad?source=files (https://sourceforge.net/projects/flacfrontend/files/latest/download?source=files) If you have an old beta installed with .msi, you don't have to remove it first, upgrading works.

Changes in beta 5
- Uses new compiles for flac 1.3.0pre3 + UTF-8 and line break patches by Case. Now non-latin characters should be supported fully, at least as much as your version of Windows has the right console fonts.
- Upgrading (from beta 3 or higher) was already possible, now downgrading (only to beta 4 now) is supported
- Fixes line breaks in COPYING.GPL.txt and README.txt fixed, should now be readable with Notepad.
- Now uses more explicit paths to make sure this won't happen (http://www.hydrogenaudio.org/forums/index.php?showtopic=100391)
- Uses smaller console because wide consoles are no longer necessary because of Case's line break patch
- Added w64, raw and aiff to accepted input formats
- Several small fixes (see git)

Comments are welcome
Title: New FLAC frontend beta
Post by: Case on 2013-04-17 14:50:18
I noticed that Ctrl+C or closing the encoding window with other means kills the entire frontend. I don't think that's good behavior.
Title: New FLAC frontend beta
Post by: ktf on 2013-04-17 16:48:52
Why not? Ctrl+C or closing the window are usually ways to close an application, aren't they?

The problem is that encoding window is not a showing a child process, it's the main thread now. That is necessary to circumvent the UTF-8 problems with batchfiles. AFAIK it's either using a batch-file (and having lot's of problem with getting that to work) or this behaviour.
Title: New FLAC frontend beta
Post by: Case on 2013-04-17 17:04:17
The scenario where I noticed the problem was that I had multiple files in the queue and I was working on a huge file that needed a long time to finish. I wanted to skip it and encode the rest but the program closed entirely. I think any alternate behavior would be better, like spawn new flac.exe process and continue encoding the next file or just remain open with the queue and let user reclick appropriate buttons.
Title: New FLAC frontend beta
Post by: ktf on 2013-04-17 21:14:44
I think this will get a little tricky. Now the output it sent to the console of the FLAC Frontend process itself. As the console is tied to the GUI, closing the console will close the GUI, they are just two different ways of input/output for the same process.

To get around this, I'll have to spawn separate processes. The problem is the communication between the processes: when calling a new process, there's a limit to the number of characters you can pass (little over 32000) which is just not enough if I were to test my whole library with FLAC frontend, which I think is not an unlikely case. I really don't like those artificial limits in programs. Communicating things to a new process with files is even more ugly (and might introduce problems like I had with using a batchfile or pose problems if the users tries to start a second thread) and I don't know of another way to pass information to another process.
Title: New FLAC frontend beta
Post by: robert on 2013-04-17 21:50:16
You can set a console control handler to react on ctr-c and close signals.

http://msdn.microsoft.com/en-us/library/wi...6(v=vs.85).aspx (http://msdn.microsoft.com/en-us/library/windows/desktop/ms686016(v=vs.85).aspx)
Title: New FLAC frontend beta
Post by: ktf on 2013-04-18 05:23:08
That's just what I've come up with before I fell asleep last night, I'll try it soon. Thanks for the link!
Title: New FLAC frontend beta
Post by: ktf on 2013-04-19 10:39:24
The scenario where I noticed the problem was that I had multiple files in the queue and I was working on a huge file that needed a long time to finish. I wanted to skip it and encode the rest but the program closed entirely. I think any alternate behavior would be better, like spawn new flac.exe process and continue encoding the next file or just remain open with the queue and let user reclick appropriate buttons.


I just found out I can't get it to work like this. First, I can't let it skip a single file because I pass files in batches of 50 files at a time to flac.exe. If I wouldn't do that, the console window gets full of
Code: [Select]
flac 1.2.1, Copyright (C) 2000,2001,2002,2003,2004,2005,2006,2007  Josh Coalson
flac comes with ABSOLUTELY NO WARRANTY.  This is free software, and you are
welcome to redistribute it under certain conditions.  Type `flac' for details.

which I really don't want. Second, trying to 'catch' clicking the close button on the command line is not possible when using Windows Forms. The link provided by robert only works for C(++) console applications, when using Windows Forms I can only use http://msdn.microsoft.com/en-us/library/sy...enthandler.aspx (http://msdn.microsoft.com/en-us/library/system.consolecanceleventhandler.aspx)
Title: New FLAC frontend beta
Post by: ktf on 2013-04-30 22:03:29
Once more a new release, beta 6. It can be downloaded from here: https://sourceforge.net/projects/flacfronte...ad?source=files (https://sourceforge.net/projects/flacfrontend/files/latest/download?source=files)

Fixes in this release:
- Upgrading and downgrading is broken! Please remove any previous beta before trying this one! This is because of the next fix
- Installer now installs for all users instead of just one, which was necessary because if more than one user would try to install this it breaks.
- Binaries are compiled from FLAC 1.3.0pre4 without any other fixes.
- Checks for a v1 of the Frontend and asks the user to remove it before installing this one, to avoid any confusion.
- One path was not updated last time when the binaries moved to have a semi-absolute path, which is fixed now.

I hope this is the last release before releasing the first stable. This first stable will not be released before a stable release of FLAC 1.3.0 is made.
Title: New FLAC frontend beta
Post by: ktf on 2013-05-28 08:29:06
Finally, the first stable. You can download it here: https://sourceforge.net/projects/flacfronte...latest/download (https://sourceforge.net/projects/flacfrontend/files/latest/download)

This stable packs a checked and tested Visual Studio 2012 compile of FLAC 1.3.0. It has been tested on Windows 7 (with .NET 4.5), Windows XP SP3 (with .NET 2.0 and .NET 4.0 client profile) For those who don't want an installer, there is a portable installation as well. https://sourceforge.net/projects/flacfrontend/files/ (https://sourceforge.net/projects/flacfrontend/files/) Both the installer as well as the portable install require .NET 2.0 or higher.

For more information, take a look at the new project homepage: http://flacfrontend.sf.net/ (http://flacfrontend.sf.net/)

edit: By the way, any feedback is still appreciated. Thanks in advance.
Title: New FLAC frontend beta
Post by: dissnite on 2013-07-12 12:26:15
Finally, the first stable. You can download it here: https://sourceforge.net/projects/flacfronte...latest/download (https://sourceforge.net/projects/flacfrontend/files/latest/download)

This stable packs a checked and tested Visual Studio 2012 compile of FLAC 1.3.0. It has been tested on Windows 7 (with .NET 4.5), Windows XP SP3 (with .NET 2.0 and .NET 4.0 client profile) For those who don't want an installer, there is a portable installation as well. https://sourceforge.net/projects/flacfrontend/files/ (https://sourceforge.net/projects/flacfrontend/files/) Both the installer as well as the portable install require .NET 2.0 or higher.

For more information, take a look at the new project homepage: http://flacfrontend.sf.net/ (http://flacfrontend.sf.net/)

edit: By the way, any feedback is still appreciated. Thanks in advance.


Hello . The new frontend is very bad :
1. It not keep the compression setting (i set to 8 and is coming back at 5 when i restart it) and is not keeping any setting at all
2. The window can't be maximized like the old one
Is it possible to make the frontend interface to be like the old one ? To remember the settings . Please !
I use it in Win XP SP3 .
Title: New FLAC frontend beta
Post by: ktf on 2013-07-12 12:36:44
Hello . The new frontend is very bad :

Yeah, sure, two little things that are not to your liking make it 'very bad'. You're welcome 

Quote
1. It not keep the compression setting (i set to 8 and is coming back at 5 when i restart it) and is not keeping any setting at all

That is by design, to keep the behavior consistent. If I would make the front-end such that is remembers the settings of the main screen, it should also remember the setting of the advanced screen. I don't think that is not a good idea, because there are a few advanced settings that are not for daily use, like ignoring the chunk length or using a specified cuesheet. Furthermore, I think remembering for example the setting "Delete input files" is not a good idea.

So no, I won't introduce this feature because it causes confusion, setting the slider to 8 isn't that hard, right?

Quote
2. The window can't be maximized like the old one

The frontend features mostly buttons and little dynamic content, why would you want to maximize it? To have larger buttons? The lay-out would screw up. Would a larger file listbox suffice?
Title: New FLAC frontend beta
Post by: Daffy on 2013-07-13 07:12:36
Hello . The new frontend is very bad :

Yeah, sure, two little things that are not to your liking make it 'very bad'. You're welcome 

Quote
1. It not keep the compression setting (i set to 8 and is coming back at 5 when i restart it) and is not keeping any setting at all

That is by design, to keep the behavior consistent. If I would make the front-end such that is remembers the settings of the main screen, it should also remember the setting of the advanced screen. I don't think that is not a good idea, because there are a few advanced settings that are not for daily use, like ignoring the chunk length or using a specified cuesheet. Furthermore, I think remembering for example the setting "Delete input files" is not a good idea.

So no, I won't introduce this feature because it causes confusion, setting the slider to 8 isn't that hard, right?


The settings we choose should be our choice and responsibility, not yours.  Why should you dictate this?  I agree with dissnite that this behavior is backwards and not correct.  If I set it to 8, it should stay at 8.  If I screw up and delete a source file because I checked that box, then that is my fault.  Lesson learned if I didn't want that result/behavior.  Defaulting to your preferred settings makes this front-end useless.  No need to treat your entire user base as if we're incompetent children.  The legacy front-end saved settings, so does Foobar, so does, well everything else....so why not yours?
Title: New FLAC frontend beta
Post by: ktf on 2013-07-13 08:25:45
Why should you dictate this? [...] Defaulting to your preferred settings makes this front-end useless.

Really, is it that hard to tick a few boxes? It makes the entire frontend useless? You can download the source code and fork your own if you don't like it.

The thing is, if I save settings, I should save either all of them or none of them. FLAC strives to be a lossless codec in all aspects, but it has a few not really lossless options (--delete-input-file, --ignore-chunk-length --(no-)keep-foreign-metadata), -F, -f) and I don't want to save those, because I know I would forget about them someday and regret it. If I'd set -f in the advanced options window I would certainly overwrite something that I didn't intend. I'm not treating anyone like a child, because people just forget these things or hastely skip over them. I could only save safe settings like compression level, but there's no real point in them (as they're few) and it's confusing.

If you don't like it you can still download the old one. It works, you only have to move it from Program Files to an user folder.
Title: New FLAC frontend beta
Post by: Daffy on 2013-07-13 10:45:19
ktf....my apologies.  Apparently you take feedback, whether it be constructive or critical, personally and defensive.  Sorry I didn't pick up on that before posting my thoughts on something as trivial as saving the most common level setting.  You are right....there are other programs out there that do what the majority of us are seeking out of a FLAC front-end, so I'll just move along.  Good luck.

P.S.  If you were open to just saving the level setting I would think that 95% of us would be content.  I agree with the advance stuff....no need to mess with that.  But a ton of people encode a ton of stuff, so yea having to change the level setting every single time is a nuisance.  Just sayin'.  If you had an open mind to just that one setting you'd have a comparable and useful tool to the legacy original.  Otherwise, as others are saying it's not the same and we're somewhat disappointed.  That's all.
Title: New FLAC frontend beta
Post by: skamp on 2013-07-13 11:08:40
The thing is, if I save settings, I should save either all of them or none of them.


Not that I can speak with any authority, but IMHO it's mostly about "sensible defaults", not just for default values, but also for default behavior. There are some settings that users will likely always use, like the compression setting, or the amount of padding. I agree that such settings should be remembered.

I do not agree that it's either all or nothing, though. Some parameters are definitely a one-off thing, like you said yourself. Your role as the author is to make sensible choices that are most likely to suit your users best (because you're supposed to know better), and make their life a tiny bit easier. And yes, it would bug the hell out of me if I had to check the same boxes every single time I use a piece of software.

Another solution would be to implement user-defined "profiles", where users would save one or more configurations to a file, which they could later load with a single click (i.e. your front-end would list all available profiles directly in a combo box or whatever).
Title: New FLAC frontend beta
Post by: ktf on 2013-07-13 13:31:27
Apparently you take feedback, whether it be constructive or critical, personally and defensive.

This feedback has been in no way constructive. What would you do when people tell you your work is 'very bad' or even 'useless' because they have to click two times more than they would if a certain feature was implemented? I thought this over and was under the impression this might be confusing, saving certain settings but not others.

Quote
If you were open to just saving the level setting I would think that 95% of us would be content.

I have explained why I chose to do it this way, that's all. If this feature requested was posted with, I don't know, a 'thank you' maybe, I might reconsider it, but instead the effort is trivialized and the program is called unusable. As I said before, you're welcome. 

There are some settings that users will likely always use, like the compression setting, or the amount of padding. I agree that such settings should be remembered.

The only settings that I can think of are compression level and using verify. Compression level is the main problem apparently, but that's one point-click-drag and you're done. The verify setting is on by default and it's so fast you won't even know it's on. ReplayGain shouldn't be on by default because of album ReplayGain issues, neither is delete-input-files, ogg-flac, keep-foreign-metadata or decode-through-errors. There are no other non-advanced settings.

So apparently it's only about the compression level. The problem is that someone new to FLAC (and FLAC frontend is made for people new to FLAC) might play with the compression level slider to experiment and forget which setting was default. Because of the big difference between -0 and -5 I think it's a good idea to not remember the setting.

Yes, you can call me overprotective or treating users as infants, but I remember having similar issues myself when I started using FLAC. Compression level 5 is a very sensible default.

Quote
Another solution would be to implement user-defined "profiles"

Which would defeat its purpose, because while it might save you one or two clicks it makes the program much more complicated.
Title: New FLAC frontend beta
Post by: skamp on 2013-07-13 14:22:29
I find it strange that you resist a very old and very common aspect of software usability: the ability to store settings, preferences. But the question has been asked, and answered.
Title: New FLAC frontend beta
Post by: bilbo on 2013-07-13 14:25:46
Thank you ktf for your program! You have laid out clearly your design goals and they are reasonable. There are plenty of programs out there geared to more advanced audio geeks. No one is forced to use any one program.

Bottom line, it is YOUR program, and you should make it what you want it to be. While it may not fit the needs of some, it will for many others.

Thank you again for your efforts!
Title: New FLAC frontend beta
Post by: Elbart on 2013-12-26 18:14:42
I think I found two bugs
1.) When clicking "Add", the "File Name"-field is prepopulated with "dlgAddFile".
2.) When trying to encode the selected single WAV-file and also let the frontend embed a cuesheet, the CLI-window shows an error:
"ERROR: --cuesheet cannot be used when encoding multiple files"
Title: New FLAC frontend beta
Post by: ktf on 2013-12-26 21:41:42
I think I found two bugs

Thanks for reporting! I've uploaded a new version to SourceForge (https://sourceforge.net/projects/flacfrontend/files/) that should fix both issues.

Beside that, I've once again looked into the issue of saving settings/preferences. I'm sorry guys, but I really think that having a program that reverts to default (like the command line FLAC-program that it wraps) is better in this case. I think the issue of having to point-click-drag every time you use the program (is it really that anoying?) is less important than avoiding any confusion like I said before.
Title: New FLAC frontend beta
Post by: andrew_berge on 2013-12-26 22:42:31
Ooh! About time the old frontend was updated/replaced.
I found a bug, sort of. I think it's because of my system.
I have the DPI set to 125%, and so the buttons in the Advanced window are cut off.

(http://i.imgur.com/ZSN9sUW.png)
Title: New FLAC frontend beta
Post by: JJZolx on 2013-12-27 03:51:04
It's kind of a shame that the old FLACTester.exe was removed from the Windows GUI apps. I realize that it's replicated here, but the tester was the only FLAC GUI application that I ever used. Installed as an Windows Explorer context menu item, it could be easily run directly from Windows Explorer on a directory of files.
Title: New FLAC frontend beta
Post by: ktf on 2013-12-27 08:19:01
I found a bug, sort of. I think it's because of my system.
I have the DPI set to 125%, and so the buttons in the Advanced window are cut off.

I'll look into that some time soon.

It's kind of a shame that the old FLACTester.exe was removed from the Windows GUI apps.

You can still download it from the website it originated from, here (http://www.vuplayer.com/other.php), the AudioTester. I don't know about the Explorer context menu though, did the installer do that for you or did you assign that yourself?
Title: New FLAC frontend beta
Post by: JJZolx on 2013-12-27 10:31:46
No, I created the Explorer integration myself. What I'm saying is that it really did serve a purpose and was perhaps dismissed too soon as a standalone application. It would be nice to see it updated to use the latest version of libflac.
Title: New FLAC frontend beta
Post by: Elbart on 2013-12-27 17:32:21
Thanks for reporting! I've uploaded a new version to SourceForge (https://sourceforge.net/projects/flacfrontend/files/) that should fix both issues.

Thank you very much, both issues are indeed fixed for me.
Title: New FLAC frontend beta
Post by: StanVanDam on 2014-01-26 04:11:23
The original FLAC Front End 1.7 from 2003 used a .ini file to keep the settings. In the newest portable .NET 2.0 and .NET 4.0 versions, no .ini file is used and settings are reset every time.

It would be nice to have the Output Directory and window position/size stored in a .ini file for the portable editions. Version 1.7 did this. I only upgraded to this new version because 1.7 crashed with certain accented characters in the directory pathname and/or filename.

Thanks for keeping this project alive!
Title: New FLAC frontend beta
Post by: knarf on 2014-03-25 05:10:37
If it matters, add me to the list who would love to see the ability to save the compression level and directory settings from session to session.
Title: New FLAC frontend beta
Post by: Porcus on 2015-12-22 12:40:30
Seems to be the most recent thread.  The frontend is still bundled with FLAC 1.3.0, I cannot see any reason not to replace flac.exe and metaflac.exe ... ?
Title: New FLAC frontend beta
Post by: Fairy on 2015-12-22 12:57:28
Also, wouldn't it be nice to support LossyFLAC?

Would be beneficial to people who don't know how to set the right blocksize. I think most normal (not tech savvy) people would use the wrong blocksize and other suboptimal settings...
Title: New FLAC frontend beta
Post by: ktf on 2015-12-22 13:10:34
Seems to be the most recent thread.  The frontend is still bundled with FLAC 1.3.0, I cannot see any reason not to replace flac.exe and metaflac.exe ... ?

I just didn't take the time to bundle it with the new executables, partly because I'm still at a loss which compiler I should use. You can just replace the flac.exe and metaflac.exe, it is as easy as that.
Title: New FLAC frontend beta
Post by: Porcus on 2015-12-22 22:40:17
Not sure if this is an outright bug, but it appears quite a bit dramaqueen-esque to report "FAILURE" when it recompresses to a ratio of 1,000? (Wasn't there a longer version/vendor identification string or something, that could trigger this behaviour?)
Edit: hm. Seems like 1.3.1 does not improve for all files anyway.  Maybe the build ...?
Title: New FLAC frontend beta
Post by: ktf on 2015-12-23 11:57:38
Not sure if this is an outright bug, but it appears quite a bit dramaqueen-esque to report "FAILURE" when it recompresses to a ratio of 1,000? (Wasn't there a longer version/vendor identification string or something, that could trigger this behaviour?)
Edit: hm. Seems like 1.3.1 does not improve for all files anyway.  Maybe the build ...?

No, it is intended behaviour. Technically it is right: FLAC failed to make the file smaller. IIRC the code was altered slightly to trigger later with 1.3.1. You can always submit a patch to the FLAC codebase if you have a suggestion for improving this.
Title: New FLAC frontend beta
Post by: Rollin on 2015-12-23 14:33:12
Seems like 1.3.1 does not improve for all files anyway.  Maybe the build ...?

Try build from this post - https://www.hydrogenaud.io/forums/index.php...st&p=899662 (https://www.hydrogenaud.io/forums/index.php?showtopic=107611&view=findpost&p=899662)
Title: New FLAC frontend beta
Post by: Porcus on 2015-12-23 22:24:59
it is intended behaviour. Technically it is right: FLAC failed to make the file smaller.


Actually, I made a mistake here: I thought the message was triggered even when files were identical, but it it turned out that I had compared outputs from different builds (of 1.3.1).
Title: Re: New FLAC frontend beta
Post by: Porcus on 2016-05-09 07:32:56
The application is not safe to use, not even with the verify option. 

I used it to recompress a larger number of files, and upon bitcomparing afterwards, I found a couple to be truncated by a few minutes; the new files were technically valid FLAC files though.
Fresh copies from the backup then recompressed just fine, and I was never able to reproduce the error as such.

However, I then tried to fill a drive completely and put the recompression at work. The application would then overwrite the old FLAC files with "empty" ones, destroying the music.

In addition, a few files were not successfully renamed. I found them by searching up the temporary files and fixing the file suffix, and then they were bit-identical.

Suggestion: "verify" by comparing new and old. (If one chooses to compare new and old MD5, then beware of a possibly fake MD5 in the old file).
Title: Re: New FLAC frontend beta
Post by: box55 on 2020-11-17 17:20:31
The application is not safe to use, not even with the verify option. 

I used it to recompress a larger number of files, and upon bitcomparing afterwards, I found a couple to be truncated by a few minutes; the new files were technically valid FLAC files though.
Fresh copies from the backup then recompressed just fine, and I was never able to reproduce the error as such.

However, I then tried to fill a drive completely and put the recompression at work. The application would then overwrite the old FLAC files with "empty" ones, destroying the music.

In addition, a few files were not successfully renamed. I found them by searching up the temporary files and fixing the file suffix, and then they were bit-identical.

Suggestion: "verify" by comparing new and old. (If one chooses to compare new and old MD5, then beware of a possibly fake MD5 in the old file).
Shit, I had a lot of .ape albums that I transfered to flac, using first Monkey's Audio 5.59 to convert ape to wav, and then I used flac_frontend to convert the wav to flac.

I have the original wav md5 (the ripper ripped the Cd to wav and then converted it to ape, so I have both md5).

The best way -and only?- to check if the flac are 100% correct is uncompressing the flac I have now to wav and compare the md5 of the wav I get with the md5 of the original wav (I have it on a .txt). Right?

I used the newest flac_frontend, so maybe this problem you had only happened with the beat/early versions of the program and doesn't happen with the new one??
Title: Re: New FLAC frontend beta
Post by: Porcus on 2020-11-17 18:17:28
The best way -and only?- to check if the flac are 100% correct is uncompressing the flac I have now to wav and compare the md5 of the wav I get with the md5 of the original wav (I have it on a .txt).
Much easier: use a utility that decodes (not converts), like foobar2000 with the foo_bitcompare  component.

Except: The "problem" is, you have to know that you have precisely the same files in precisely the correct order. If you have five pairs of identical and shuffle them, foo_bitcompare cannot know.

Note, the checksum of the .wav file and the audio checksum are not the same. I don't know what you have stored. 
Also, FLAC is a checksummed format, which stores audio md5. If a FLAC file verifies, then the audio matches its md5 - but the problem about the front-end is that it created legal FLAC files, they were just cut short.
Title: Re: New FLAC frontend beta
Post by: box55 on 2020-11-17 19:31:19
Example of the wav's original md5.

https://ibb.co/TwPdxYZ

Title: Re: New FLAC frontend beta
Post by: box55 on 2020-11-17 19:35:27
I have installed it, but dont understand what I have to do.

I meant I have the original wav md5, not the original wav. So which 2 files I have to compare? I can only compare the md5, right?

Also, I have the flac's embeded with the cuesheet, so I have to select all tracks for check? :S
Title: Re: New FLAC frontend beta
Post by: Porcus on 2020-11-17 19:58:46
Also, I have the flac's embeded with the cuesheet, so I have to select all tracks for check? :S

You ripped CDs with cuesheets, using e.g. EAC? Then there is a fairly good way to verify at least the most common ones: CUETools and verify with accuraterip / CueTools' own database.

Title: Re: New FLAC frontend beta
Post by: box55 on 2020-11-17 20:09:54
Also, I have the flac's embeded with the cuesheet, so I have to select all tracks for check? :S

You ripped CDs with cuesheets, using e.g. EAC? Then there is a fairly good way to verify at least the most common ones: CUETools and verify with accuraterip / CueTools' own database.



I did not rip them, but yes, the CDs were ripped with EAC into wav. I have the md5 of that original (wav). Then the wav was converted to wv/ape, but I don't want wv/ape so I transformed the wv/ape to flac, (using monkey's audio or wavpack frontend to get new wav, and after that I used flac frontend to get the flac, which is the only format I have now of the audio). So I want something quick to verify if the flac I got is 100% true to the very original wav.
Title: Re: New FLAC frontend beta
Post by: korth on 2020-11-17 23:51:55
Quote
I have the md5 of that original (wav).
You have the md5 of the audio data within the wav or of the whole wav file?
example:
07 First Time.flac
5bef68f9db6657ea27a6997ae4d7693e (from original wav (audio only))
48599E01D1BDB41628900A8C604F4A68 (from original whole wav file including header)
5bef68f9db6657ea27a6997ae4d7693e (flac fingerprint from frontend (md5 of audio))

Title: Re: New FLAC frontend beta
Post by: box55 on 2020-11-18 01:24:59
Example of the wav's original md5.

https://ibb.co/TwPdxYZ



This is what I have. I dont have the wav file, just a .txt with that info, dont know what is exactly?
Title: Re: New FLAC frontend beta
Post by: korth on 2020-11-18 04:00:30
It was a rhetorical question to present the information in the example. Drag one of the flac images into the flac frontend window, press the "fingerprint" button and see if the result matches the md5 you have.
Title: Re: New FLAC frontend beta
Post by: Porcus on 2020-11-18 10:05:34
I did not rip them, but yes, the CDs were ripped with EAC into wav.

Although the terms of service do not forbid discussion of tools useful for verifying files from sources like these, there is always the option to just shrug it off, and think that if you ever by listening encounter a file that stops short ...
Title: Re: New FLAC frontend beta
Post by: box55 on 2020-11-18 23:40:23
Quote
I have the md5 of that original (wav).
You have the md5 of the audio data within the wav or of the whole wav file?
example:
07 First Time.flac
5bef68f9db6657ea27a6997ae4d7693e (from original wav (audio only))
48599E01D1BDB41628900A8C604F4A68 (from original whole wav file including header)
5bef68f9db6657ea27a6997ae4d7693e (flac fingerprint from frontend (md5 of audio))

Okey, I unpacked the flac into wav with flac_frontend, checked the md5 (with the program HashTab I can see the md5 of the wav, but I have to go one by one), and the md5 I got with that program is the same on the wav's md5 that I have in the .txt info file (I uploaded the image earlier) Dont know what md5 are those 2 that match of the options you told me). I can't compare the md5's flac because I only have the flac I created (plus it has a different tag now because I embeded a cuesheet), right?
Title: Re: New FLAC frontend beta
Post by: A_Man_Eating_Duck on 2020-11-19 00:11:03
Can you not just load all your FLAC files in to Foobar2000 and use the File Integrity Verifier plugin? (https://www.foobar2000.org/components/view/foo_verifier)

Title: Re: New FLAC frontend beta
Post by: Porcus on 2020-11-19 00:22:54
Can you not just load all your FLAC files in to Foobar2000 and use the File Integrity Verifier plugin? (https://www.foobar2000.org/components/view/foo_verifier)

The application generated "technically valid" FLAC files with truncated signal:

I used it to recompress a larger number of files, and upon bitcomparing afterwards, I found a couple to be truncated by a few minutes; the new files were technically valid FLAC files though.
Title: Re: New FLAC frontend beta
Post by: Chibisteven on 2020-11-19 01:42:45
@Porcus Keep the original wave file until it is no longer needed.  Simply run Bit comparator in foobar2000 (https://www.foobar2000.org/components/view/foo_bitcompare).  If no differences are found, it's safe to delete the original wave file.  If differences are found, then delete the FLAC and re-compress the original Wave file again and then check it again, until either you have a FLAC that is the same as the original Wave file or ready to write a bug report if one track or song is persistently not compressing correctly.  Either way, there's solutions to these of kind of problems that are simple and straight forward enough.
Title: Re: New FLAC frontend beta
Post by: box55 on 2020-11-19 02:32:30
The problem is I already deleted the wav :S
@Porcus Keep the original wave file until it is no longer needed.  Simply run Bit comparator in foobar2000 (https://www.foobar2000.org/components/view/foo_bitcompare).  If no differences are found, it's safe to delete the original wave file.  If differences are found, then delete the FLAC and re-compress the original Wave file again and then check it again, until either you have a FLAC that is the same as the original Wave file or ready to write a bug report if one track or song is persistently not compressing correctly.  Either way, there's solutions to these of kind of problems that are simple and straight forward enough.

That's good but I did not have the wav's :(
Title: Re: New FLAC frontend beta
Post by: Porcus on 2020-11-19 12:22:52
@Porcus Keep the original wave file until it is no longer needed. 

Yes, and that is what I advocate, rather than deleting/overwriting.

My situation was that I used the FLAC frontend to recompress FLAC files - immediately overwriting the old ones, replacing some of them with technically valid but destroyed audio. Luckily - (don't) trust, but verify - I compared to my backups.