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.
Topic: REACT 2 Released (Read 1265245 times) previous topic - next topic
0 Members and 2 Guests are viewing this topic.

REACT 2 Released

Reply #1775
Few quick tips to try out (I don't have time to do "full" debug/helping ATM, moving still takes time.. and it's almost Christmas):

- Install EAC (and possibly REACT) somewhere else than "program files", e.g. root C:\eac (related to EAC & Win7(&/64bit)).
- Using 64bit OS; copy "CHCP.com" file from your OS "system32" folder to "SysWOW64" folder.
- Read the mod note about restricted user rights in newer Windows'.

HTH.

EDIT: There's a newer b04 version available (EAC 0.99pb5 works only with b04 version!, don't use the EAC 1.0beta, it's not supported, yet).

REACT 2 Released

Reply #1776
Great! Thanks for the very quick reply! I'll try out your tips.

Merry Christmas

REACT 2 Released

Reply #1777
First of all, thanks a lot for REACT and the mods. I was using the akku.b03 mod for all of my CDs and was very happy with it until ...

... I bought a new computer using win7/64.

Until it comes to compression everything works out fine (Album Art XUI starts and saves the chosen file correctly, EAC reads the CD and saves the .wav files, the folders get created), but when compression starts, I end up with empty folders - no files. I uninstalled, and re-installed, following the list in post 1668, but the result is still the same. Any ideas?


I've been using ract2 Win7 x64 for over a year...  Below is what I had to do to get it to work.

I had to mod my react.ini as follows
Code: [Select]
EAC=C:\Program Files (x86)\Exact Audio Copy\EAC.exe
Tools=C:\Program Files (x86)\REACT2\tools

Additionally on the react2 shortcut on the compatibility tab I had to select "run this program as an administrator"

REACT 2 Released

Reply #1778
First of all, thanks a lot for REACT and the mods. I was using the akku.b03 mod for all of my CDs and was very happy with it until ...

... I bought a new computer using win7/64.

Until it comes to compression everything works out fine (Album Art XUI starts and saves the chosen file correctly, EAC reads the CD and saves the .wav files, the folders get created), but when compression starts, I end up with empty folders - no files. I uninstalled, and re-installed, following the list in post 1668, but the result is still the same. Any ideas?

I had the same problem - empty folders. Try to start the acdir.exe from the tools-folder of your react-installation. I got the error, that msvcr71.dll was missing. I downloaded and copied it to C:\Windows\SysWOW64 and everything is fine now.

REACT 2 Released

Reply #1779
Hello,

I am a newbie to REACT. However I was searching in the last days through this forum for a solution of a problem. I´ve found multiple hints and tried them all but without success.

I am running REACT on Win 7 64 bit. The REACT.INI is listed below. Whenever I am pressing the F4 key, I am getting every time a message "Unable to move cuesheet. File does not exist...."
I´ve already done the following:
  • Changed permissions on involved directories
  • Installed msvcrt71.dll
  • run EAC as admin
  • disabled beginners mode in EAC
The debugging.txt shows the following

Code: [Select]
2011-01-03 15:14:40  CoverDownloader command: "C:\Program Files\AlbumArtDownloader\AlbumArt.exe"
 /artist "The Best Of" /album "1" /path "C:\Users\uli\Music\1.%extension%" /autoclose
2011-01-03 15:14:48  Creating a cuesheet to glean information
2011-01-03 15:14:54  Waiting for the Gap Detection 'Analyzing' window to disappear
2011-01-03 15:14:55  Waiting for the Gap Detection 'Analyzing' window to disappear
2011-01-03 15:14:56  Waiting for the Indices Detection 'Analyzing' window to disappear
2011-01-03 15:14:59  Waiting for the UPC/ISRC Detection 'Analyzing' window to disappear
2011-01-03 15:15:00  Waiting for the UPC/ISRC Detection 'Analyzing' window to disappear
2011-01-03 15:15:05  Waiting for the cuefile to appear
2011-01-03 15:15:05  Unable to move 'C:\Users\uli\Music\1.CUE'. File does not exist
2011-01-03 15:15:08  Aborting (cuefile doesn't exist)...
2011-01-03 15:15:08  Tried to delete all other cuefiles from 'C:\Users\uli\Music\' directory

2011-01-03 15:15:08  - END - MoveCuesheet -
When looking for a cuesheet, I can see that it generates one, but the name is containing artist, album name, etc.. However the debugging seems to say, that it looks for a file named 1.cue.

Code: [Select]
[Settings]
Version=2.0.akku.b04
ImageExt=flac
ImageNaming=$artist$ - [$year$] $album$
ImageHotKey={F10}
TracksHotKey={F4}
TracksHotVal=+{F5}
VA=Various Artists
CreateCuesheet=
RunCoverDownloader=1
CoverDownloader=C:\Program Files\AlbumArtDownloader\AlbumArt.exe
CoverDownloaderXUI=1
CoverDownloaderLocalPath=
OpenAddMetaDataDiag=0
EAC=C:\Program Files (x86)\Exact Audio Copy\EAC.exe
Tools=C:\Program Files (x86)\REACT2\tools
MinimizeCompressionWindow=1
ProcessPriority=1
Sla_Bks_Col_Qst_Bar_Quo_Ast_Lt_Gt=-|-|-||!|'|#|[|]
Test=0

[UserTrackFormats]
Flac=1
Wavpack=0
LameMP3=1
NeroAac=0
iTunesAac=0
OggEnc2=0
Tak=0

[UserOutputNames]
OutRoot=@mymusic@\EAC\
ImageDir_Flac=@OutRoot@\FLAC-images\$cdartist$
ImageDir_Wavpack=@OutRoot@\WV-images\$cdartist$
ImageDir_MP3=@OutRoot@\MP3-images\$cdartist$
ImageDir_Tak=@OutRoot@\TAK-images\$cdartist$
TrackDir_Flac=@OutRoot@\FLAC\$cdartist$\[$year$]$album$
TrackDir_Wavpack=@OutRoot@\WV\$cdartist$\[$year$]$album$
TrackDir_MP3=@OutRoot@\MP3\$cdartist$\[$year$]$album$
TrackDir_AAC=@OutRoot@\AAC\$cdartist$\[$year$]$album$
TrackDir_OGG=@OutRoot@\OGG\$cdartist$\[$year$]$album$
TrackDir_Tak=@OutRoot@\TAK\$cdartist$\[$year$]$album$
TrackName_SA=$track$-$title$
TrackName_VA=$track$-$title$[$artist$]
TrackName_SA_acdir=$n-$~t
TrackName_VA_acdir=$n-$~t [$~a]

[UserSettings]
DebugMode=1
Debug=1
Comment=Created with EAC/@reactversion@,@curdate@
EmbedCover=1
ReplayGain=1
ApplyAlbumGain=1
AdjustAlbumGain_dB=+3.0
AddCuesheetAG=0
UseWaveGainAG=0
Opt_Flac=-5 -f
Opt_Wavpack=-hmy
Opt_LameMP3=-V2 --noreplaygain --nohist
Opt_NeroAac=-lc -q 0.21
Opt_iTunesAac=-d -s 2000
Opt_OggEnc2=-q 3.0
Opt_Tak=-pN -overwrite
Ver_Flac=1.2.1b
Ver_Wavpack=4.60
Ver_LameMP3=3.98.2
Ver_NeroAac=1.0.0.2
Ver_OggEnc2=2.83 Lancer aoTuV b5
Ver_Tak=1.0.1

[DefaultMetaData]
discnumber=1
totaldiscs=1
discname=
Any ideas what is going wrong??

Thanks in advance for recommendation.

REACT 2 Released

Reply #1780
message "Unable to move cuesheet. File does not exist...."

Accidentally I was working on the same problem yesterday. There are several threads mentioning this problem again and again. And I worked it out ...     

If you are able to recompile the au3-script, then you can amend it yourself (but be sure to use the right version of AutoIt v3.2.12.1)
The problem is a faulty reference to textboxes of the EAC-window, where the information about album, artist, ... is coming from.

You have to do the following steps:
* Open 'src\REACT 2.0.akku.b04.au3'
* Search and replace every occurence of 'myedit1', 'myedit2' and 'myedit3' with 'MYEdit1', 'MYEdit2', 'MYEdit3', most important in the following code section:

Code: [Select]
605   	$gui_album = ControlGetText($g_eacTitle, $g_eacText, "MYEdit1")
606  $gui_artist = ControlGetText($g_eacTitle, $g_eacText, "MYEdit2")
607  $gui_year = ControlGetText($g_eacTitle, $g_eacText, "MYEdit3")
* Now you have to recompile the file with AutoIt v3.2.12.1 and put it back in the REACT program directory.
That's all.

If you are not able to perform the above steps, then you should ask AKKURAT to make a bug fix.

@AKKURAT: I am using EAC v0.99prebeta5/REACT v2.0.akku.b04 on Windows Vista. All configuration has been properly set. The debugging file specifies, that REACT tries to move a file with no name (Unable to move 'C:\Windows\Temp\EAC\.CUE'. File does not exist). I checked the outcomes of ControlGetText in lines 605-607 and they were all empty. Renaming the text box refs with case sensitivity solved the problem rightaway.

Good luck, Tanguero

REACT 2 Released

Reply #1781
Firstly, I would like to say how great it is to see a user being so pro-active. 

However, users should note that in XP the controls appear (using Window Info) to have the class names "myedit1", "myedit2" and "myedit3", so flatly changing those lines may cause issues.  Whether there would be a class name case issue on XP, or whether Window Info is reporting correctly, is another question...

It's possible that @OSVersion needs to be used to detect the Windows version, and act accordingly.  Alternatively - and probably better - ControlGetText could use an alternative method of referring to the controls, e.g.: ID.  NB: MY controls have the IDs 992, 993 and 995.

Did you use AutoIt's Window Info to retrieve the class names?  Maybe someone on Windows 7 should try the same.
I'm on a horse.

REACT 2 Released

Reply #1782
I am running REACT on Win 7 64 bit. The REACT.INI is listed below. Whenever I am pressing the F4 key, I am getting every time a message "Unable to move cuesheet. File does not exist...."

Any ideas what is going wrong??

It is an issue with the new EAC 1.0b1, in two ways. First, it now stores all its registry entries under a different key. Second, some UI element class names have changed. On top of that it also now uses Unicode format for its log file. I ran into this a two days ago when trying to setup REACT and EAC after not having had it installed for a year or so.

I have solved this issue on my Win7 64bit PC by patching the REACT 2.0.akku.b04.au3 file and regenerating a new REACT.exe file. I also downloaded WavPack 4.60.2a to be able to embed the new Unicode enabled log files into my .wv images.

The only other issues that I have found so far that I don't have a solution for is that ACDIR doesn't honor the Sla_Bks_Col_Qst_Bar_Quo_Ast_Lt_Gt setting when generating track files in image mode and that EAC and REACT are also mismatched in this area in terms of naming the cue sheets (leading to "Cuesheet not found" errors if there are illegal characters in the album title). For now I have set EAC's (new?) character replacement settings to all spaces (to match REACT's current internals) and I'm manually renaming the affected track files after encoding has completed. It seems to be working so far. If I have time I'll see about adding an extra command line option to ACDIR to be able to specify the character replacement settings.

The changes made to the .au3 file were to:
* change references to the VA checkbox from "mybutton16" to "mybutton18"
* change references to the Album, Artist and Year text fields from "myedit1", "myedit2" and "myedit3" to "myedit2", "myedit3" and "myedit4"
* change any registry activity on keys containing "AWSoftware\EAC" to "AWSoftware\EACU"
* change any "REG_BINARY" registry writes (and reads) of strings like "FF" to Char(255, 1) and strings like "14000000" to Char(20, 1) & Char(0, 1) & Char(0, 1) & Char(0, 1). There's probably a more elegant way to do this but I haven't done a whole lot of AutoIt work to date. The reason for the need for this is that the new EAC seems to now write e.g. 0xFF to the registry instead of 0x46 0x46, like the old EAC did when encountering "FF".

If you download and install AutoIt you'll be able to make these same changes and get by until there's a new officially released version. Please also note that these changes could break REACT for non Win 7 PCs and/or older versions of EAC.

@Tanguero: I was able to compile with the latest AutoIt on my Win 7 64bit PC without any other modifications than those described above. It's been working well so far.


REACT 2 Released

Reply #1784
If you download and install AutoIt you'll be able to make these same changes and get by until there's a new officially released version. Please also note that these changes could break REACT for non Win 7 PCs and/or older versions of EAC.
There no reason why you could not upload your EXE either to the Uploads forum or some other webspace.  It may be useful to get others testing with the latest EAC.  Change the version string though, in a similar way that Akkurat and I did, to stop any confusion.

Yes, Au3Info was the tool to retrieve the information.
Thanks for the info.  I guess hanning's findings mean that perhaps the next REACT version will have to make changes in this area anyway, if control class names have changed.
I'm on a horse.


REACT 2 Released

Reply #1786
message "Unable to move cuesheet. File does not exist...."

There are several threads mentioning this problem again and again.

Where? Any recent? AFAIK, I've dealt every cuesheet generation problem (in my mod) raised here in HA, and I can't even remember when was the last time.

I am using EAC v0.99prebeta5/REACT v2.0.akku.b04 on Windows Vista. All configuration has been properly set. The debugging file specifies, that REACT tries to move a file with no name (Unable to move 'C:\Windows\Temp\EAC\.CUE'. File does not exist). I checked the outcomes of ControlGetText in lines 605-607 and they were all empty. Renaming the text box refs with case sensitivity solved the problem rightaway.

I've to say that I'm really surprised, and as far as I understand, there are other Vista users happily(?) REACTing, i.e. this is the first time anything like this has come up. I wonder if this is again related to the "Sony Ericsson PC suite" causing mysterious problems to AutoIt compiled programs. If you have that running, try closing it from the systray and try REACT again.

 

REACT 2 Released

Reply #1787
It is an issue with the new EAC 1.0b1, in two ways. First, it now stores all its registry entries under a different key. Second, some UI element class names have changed. On top of that it also now uses Unicode format for its log file.

I believe that there are more things that break REACT (can't remember exactly, but wasn't there at least new log/cue filenaming convention.. and I don't have my desktop PC set up yet where all my info is stored.. would you believe it, it seems that I've "lost" something during the house move, almost all computer cables are lost.. at least for now, still have boxes to unpack (and sh#%load of other things to do, like putting the kitchen up to a working condition so I don't have to eat microwave stuff every day), though I've checked "every" one already.)

The only other issues that I have found so far that I don't have a solution for is that ACDIR doesn't honor the Sla_Bks_Col_Qst_Bar_Quo_Ast_Lt_Gt setting when generating track files in image mode

ACDIR has its own replacement system, IIRC, it gleans the data from cuesheet. At some point I thought of a bubblegum system to use REACT replacement chars (and IIRC, it was partly (or mainly) about getting "filename corrected cuesheet references" for image mode tracks too), but it never materialized.. maybe because it was in the pseudo-code state and there were few big problems attached to it. This is one of the major reasons why I don't like the image mode in REACT.

* change any "REG_BINARY" registry writes (and reads) of strings

Script breaking change after 3.2.12.x version:
[blockquote]
Quote
RegRead() and RegWrite() no longer use hex strings for REG_BINARY types - native binary datatypes are enforced.
[/blockquote]

@Tanguero: I was able to compile with the latest AutoIt on my Win 7 64bit PC without any other modifications than those described above. It's been working well so far.

A really quick glance over the Script breaking changes page tells me that the following things might also do havoc:
[blockquote]
Quote
  • ProcessWait() now returns a PID instead of 1 on success.
  • WinWait(), WinWaitActive(), WinActivate(), WinActive() and WinMove() now return an HWND instead of 1 on success.
[/blockquote]
I think that I wouldn't update AutoIt at the same time when doing other changes to the code. There was this one problem that took my and one user's time testing it out; it was some odd change (I still don't know what it is) in one AutoIt version (version between AutoIt version Synthetic Soul used and the version I used/use) that, IIRC, made reading OR was it writing strings to some EAC window controls fail. There's nothing in the changelogs/script breaking changes documentation that would have explained it. This is one of the reason why I like to do a small change and test it properly before doing another one (when it's possible). I've witnessed that this method produces less-buggy code.

REACT 2 Released

Reply #1788
Hi,

I still got problems with the VA naming in imaging mode.

This is the entry in my react.ini:

TrackName_VA_acdir=$A - $~t ($T - $r{DATE} - Track $n)

But it is always beeing named "Various Artists - blahsong.flac (blahcd - 28.01.2011 - Track 03)" instead of "blahartist - blahsong.flac (blahcd - 28.01.2011 - Track 03)".

And somehow it seems like the cuesheet ist not beeing generated properly. This is what I've got. Is ist normal that most of the songs have "INDEX 01 00:00:00"? Shouldn't there be gap informations?

Code: [Select]
REM DISCNUMBER 1
REM TOTALDISCS 1
REM GENRE Metal
REM DATE 2008
REM DISCID AD0C1D0D
REM COMMENT "ExactAudioCopy v0.99pb5"
PERFORMER "Legion Of The Damned"
TITLE "Feel the Blade"
FILE "Legion Of The Damned - Feel the Blade - 01 - Nuclear Torment.wav" WAVE
  TRACK 01 AUDIO
    TITLE "Nuclear Torment"
    PERFORMER "Legion Of The Damned"
    INDEX 01 00:00:00
FILE "Legion Of The Damned - Feel the Blade - 02 - Nocturnal Predator.wav" WAVE
  TRACK 02 AUDIO
    TITLE "Nocturnal Predator"
    PERFORMER "Legion Of The Damned"
    INDEX 01 00:00:00
FILE "Legion Of The Damned - Feel the Blade - 03 - Slaughtering The Pigs.wav" WAVE
  TRACK 03 AUDIO
    TITLE "Slaughtering The Pigs"
    PERFORMER "Legion Of The Damned"
    INDEX 01 00:00:00
FILE "Legion Of The Damned - Feel the Blade - 04 - Slut Of Sodom.wav" WAVE
  TRACK 04 AUDIO
    TITLE "Slut Of Sodom"
    PERFORMER "Legion Of The Damned"
    INDEX 01 00:00:00
FILE "Legion Of The Damned - Feel the Blade - 05 - Feel The Blade.wav" WAVE
  TRACK 05 AUDIO
    TITLE "Feel The Blade"
    PERFORMER "Legion Of The Damned"
    INDEX 01 00:00:00
  TRACK 06 AUDIO
    TITLE "Expire"
    PERFORMER "Legion Of The Damned"
    INDEX 00 04:18:52
FILE "Legion Of The Damned - Feel the Blade - 06 - Expire.wav" WAVE
    INDEX 01 00:00:00
FILE "Legion Of The Damned - Feel the Blade - 07 - Warbeast.wav" WAVE
  TRACK 07 AUDIO
    TITLE "Warbeast"
    PERFORMER "Legion Of The Damned"
    INDEX 01 00:00:00
FILE "Legion Of The Damned - Feel the Blade - 08 - Disturbing The Dead.wav" WAVE
  TRACK 08 AUDIO
    TITLE "Disturbing The Dead"
    PERFORMER "Legion Of The Damned"
    INDEX 01 00:00:00
FILE "Legion Of The Damned - Feel the Blade - 09 - Obsessed By The Grave.wav" WAVE
  TRACK 09 AUDIO
    TITLE "Obsessed By The Grave"
    PERFORMER "Legion Of The Damned"
    INDEX 01 00:00:00
FILE "Legion Of The Damned - Feel the Blade - 10 - Reapers Call.wav" WAVE
  TRACK 10 AUDIO
    TITLE "Reapers Call"
    PERFORMER "Legion Of The Damned"
    INDEX 01 00:00:00
FILE "Legion Of The Damned - Feel the Blade - 11 - Last Command.wav" WAVE
  TRACK 11 AUDIO
    TITLE "Last Command"
    PERFORMER "Legion Of The Damned"
    INDEX 01 00:00:00
FILE "Legion Of The Damned - Feel the Blade - 12 - Mask Of Terror.wav" WAVE
  TRACK 12 AUDIO
    TITLE "Mask Of Terror"
    PERFORMER "Legion Of The Damned"
    INDEX 01 00:00:00
FILE "Legion Of The Damned - Feel the Blade - 13 - Chronic Infection.wav" WAVE
  TRACK 13 AUDIO
    TITLE "Chronic Infection"
    PERFORMER "Legion Of The Damned"
    INDEX 01 00:00:00

Here's my react-image.cfg

Code: [Select]
@ECHO OFF
CHCP 1252 | PROMPT
TITLE "@album@"

REM Copyright © Tycho, 2006
REM
REM ** Ripping to .wav image.
REM **
REM ** To archive a CD as one large "image", you must SET
REM ** ImageExt=... in the REACT.ini file (Press Alt-F2).
REM ** This will set the @ImageExt@ variable. Extensions
REM ** currently supported:  flac, wv, mp3. Set to 'wav'
REM ** for no image archiving (default).
REM **
REM ** Also creates tracks by encoding directly to tracks, using ACDIR.
REM **
REM ** Flac requires flac.exe/metaflac.exe (v1.1.3)
REM ** NeroAac requires NeroAacEnc.exe/NeroAacTag.exe/AacGain.exe.
REM ** OggEnc2 requires OggEnc2.exe/VorbisGain.exe.
REM **
REM ** I prefer applying album gain 92dB to get a reasonable
REM ** volume for my DAP. The RG tags are still relative
REM ** to 89dB SPL, i.e. album gain will be about -3.0dB.

REM ============== Begin Main Script ==================


IF @Debug@==1 ECHO ON

IF @various@==0 SET TrackName=@TrackName_SA_acdir@
IF @various@==1 SET TrackName=@TrackName_VA_acdir@

SET add_rg=@ReplayGain@
SET have_cover=0
SET embed_cover=0

IF NOT @ReplayGain@==1 GOTO end_RG
    SET RG_Flac=--replay-gain
    SET RG_MetaFlac=--add-replay-gain
    SET RG_MetaMP3=--replay-gain
:end_RG

IF NOT @ApplyAlbumGain@==1 GOTO end_apply_AG
    SET ApplyAG_MetaMP3=--apply-gain album@AdjustAlbumGain_dB@
    SET ApplyAG_AacGain=/a /o /c /d @AdjustAlbumGain_dB@
    SET add_rg=1
:end_apply_AG

IF EXIST "@cover@" (
    SET have_cover=1
    SET embed_cover=@EmbedCover@
)

IF @various@==0 (
SET ArtistField=artist
SET MP3Artist=--artist "@artist@"
) else (
SET ArtistField=album artist
SET MP3Artist=--frame "TXXX[album artist]:@VA@" --frame "TPE2:@VA@"
)


REM ** Create Disc-related tags if we have a set

SET discNumberInPath=0

REM ** Ensure that we have numeric values
SET /A discNumber = @discnumber@ + 0
SET /A totalDiscs = @totaldiscs@ + 0

REM ** If a valid disc number and total number of discs has been provided
IF %totalDiscs% LEQ 1 GOTO :end_discnumber
IF %discNumber% LEQ 0 GOTO :end_discnumber

    REM ** Set tagging switches
    SET Disc_Flac=-T "discnumber=@discnumber@" -T "totaldiscs=@totaldiscs@"
    SET Disc_Wavpack=-w "discnumber=@discnumber@" -w "totaldiscs=@totaldiscs@"
    SET Disc_MP3=--frame TPOS:"@discnumber@/@totaldiscs@"
    SET Disc_NeroAac=--disk "@discnumber@/@totaldiscs@"
    SET Disc_OggEnc2=-c "discnumber=@discnumber@" -c "totaldiscs=@totaldiscs@"
    SET Disc_Tak=-t "discnumber=@discnumber@" -t "totaldiscs=@totaldiscs@"
    SET Disc_Flac_acdir=-T $qdiscnumber=@discnumber@$q -T $qtotaldiscs=@totaldiscs@$q
    SET Disc_Wavpack_acdir=-w $qdiscnumber=@discnumber@$q -w $qtotaldiscs=@totaldiscs@$q
    SET Disc_MP3_acdir=--frame TPOS:$q@discnumber@/@totaldiscs@$q
    SET Disc_NeroAac_acdir=--disk $q@discnumber@/@totaldiscs@$q
    SET Disc_OggEnc2_acdir=-c $qdiscnumber=@discnumber@$q -c $qtotaldiscs=@totaldiscs@$q
    SET Disc_Tak_acdir=-t $qdiscnumber=@discnumber@$q -t $qtotaldiscs=@totaldiscs@$q

    REM ** Add disc number to image and track folder paths
    SET imageDir=%imageDir%\Disc @discnumber@
    SET trackDir=%trackDir%\Disc @discnumber@
SET discNumberInPath=1

:end_discnumber

REM ** If a disc name has been provided
IF "@discname@" EQU "" GOTO end_discname
SET discName=discname
SET discName=@%discname%@
IF "@discname@" EQU "%discName%" GOTO end_discname

    REM ** Set tagging switches
    SET Disc_Flac=%Disc_Flac% -T "discname=@discname@"
    SET Disc_Wavpack=%Disc_Wavpack% -w "discname=@discname@"
    SET Disc_MP3=%Disc_MP3% --frame "TXXX[setsubtitle]:@discname@"
    SET Disc_OggEnc2=%Disc_OggEnc2% -c "discname=@discname@"
    SET Disc_Tak=%Disc_Tak% -t "discname=@discname@"
    SET Disc_Flac_acdir=%Disc_Flac_acdir% -T $qdiscname=@discname@$q
    SET Disc_Wavpack_acdir=%Disc_Wavpack_acdir% -w $qdiscname=@discname@$q
    SET Disc_MP3_acdir=%Disc_MP3_acdir% --frame $qTXXX[setsubtitle]:@discname@$q
    SET Disc_OggEnc2_acdir=%Disc_OggEnc2_acdir% -c $qdiscname=@discname@$q
    SET Disc_Tak_acdir=%Disc_Tak_acdir% -t $qdiscname=@discname@$q

    REM ** Add disc name to image and track folder paths
    IF %discNumberInPath%==0 SET imageDir=%imageDir%\$discname$
    IF %discNumberInPath%==0 SET trackDir=%trackDir%\$discname$

IF %discNumberInPath%==1 SET imageDir=%imageDir% ($discname$)
IF %discNumberInPath%==1 SET trackDir=%trackDir% ($discname$)

:end_discname


SET run_wavegain=@UseWaveGainAG@
IF @AddCuesheetAG@==1 SET run_wavegain=1

IF %run_wavegain%==0 GOTO end_wavegain
    SET wg_tmp=wg_%RANDOM%
    @tools@\WaveGain.exe --album "@source@" --exec ECHO '%%ALBUM_GAIN%%'%%ALBUM_PEAK%%'%%ALBUM_NEW_PEAK%%'%%ALBUM_SCALE%%'> %wg_tmp%.txt
    FOR /F "usebackq tokens=1-6 delims='" %%a IN (%wg_tmp%.txt) DO (
        SET album_gain=%%b
        SET album_peak=%%c
        SET album_new_peak=%%d
        SET album_scale=%%e
    )
    ECHO REM REPLAYGAIN_ALBUM_GAIN %album_gain% dB> %wg_tmp%.cue
    ECHO REM REPLAYGAIN_ALBUM_PEAK %album_peak%>> %wg_tmp%.cue
    ECHO REM REPLAYGAIN_ALBUM_SCALE %album_scale%>> %wg_tmp%.cue
    DEL %wg_tmp%.txt
    TYPE "@cuesheet@" >> %wg_tmp%.cue
    MOVE /Y %wg_tmp%.cue "@cuesheet@"
:end_wavegain


REM ** Transfer RG values from Wavgain calculations, instead of recalculation.
IF @UseWaveGainAG@==1 IF %add_rg%==1 (
    SET RG_Flac=-T "replaygain_album_gain=%album_gain% dB" -T "replaygain_album_peak=%album_peak%"
    SET RG_MetaFlac=--set-tag="replaygain_album_gain=%album_gain% dB" --set-tag="replaygain_album_peak=%album_peak%"
    SET RG_Wavpack=-w "replaygain_album_gain=%album_gain% dB" -w "replaygain_album_peak=%album_peak%"
    SET RG_Wavpack_acdir=-w $qreplaygain_album_gain=%album_gain% dB$q -w $qreplaygain_album_peak=%album_peak%$q
    SET RG_Tak=-t "replaygain_album_gain=%album_gain% dB" -t "replaygain_album_peak=%album_peak%"
    SET RG_Tak_acdir=-t $qreplaygain_album_gain=%album_gain% dB$q -t $qreplaygain_album_peak=%album_peak%$q
    SET RG_MetaMP3=--frame "TXXX[replaygain_album_gain]:%album_gain% dB" --frame "TXXX[replaygain_album_peak]:%album_peak%"
    SET RG_OggEnc2_acdir=-c $qreplaygain_album_gain=%album_gain% dB$q -c $qreplaygain_album_peak=%album_peak%$q
)

REM ** Apply AlbumGain by using --scale <factor> computed from WaveGain. Only for MP3 and OGG.
IF @UseWaveGainAG@==1 IF @ApplyAlbumGain@==1 (
    SET ApplyAG_Lame=--scale %album_scale%
    SET ApplyAG_MetaMP3=--apply-gain @AdjustAlbumGain_dB@
    SET RG_MetaMP3=--frame "TXXX[replaygain_album_gain]:0.0 dB" --frame "TXXX[replaygain_album_peak]:%album_new_peak%"
    SET RG_OggEnc2_acdir=--scale %album_scale% -c $qreplaygain_album_gain=0.0 dB$q -c $qreplaygain_album_peak=%album_new_peak%$q
)


REM ---- Image ----


REM ** Ensure that the EAC log is available
:CheckForLog
IF NOT EXIST "@eaclog@" GOTO Pause


IF NOT @ImageExt@==flac GOTO end_flac_image
    SET dest="@ImageDir_Flac@%imageDir%"
    IF NOT EXIST %dest% MKDIR %dest%
    IF %embed_cover%==1 SET Cover_tag=--picture="|image/jpeg|||@cover@"
    @tools@\flac.exe @Opt_Flac@ %RG_Flac% %Cover_tag% %Disc_Flac% -T "%ArtistField%=@cdartist@" -T album="@album@" -T totaltracks="@numtracks@" -T date="@year@" -T genre="@genre@" -T comment="@comment@" -T encoded-by="%USERNAME%" -T encoding="Flac @Ver_Flac@ @Opt_Flac@" --tag-from-file="cuesheet=@cuesheet@" --tag-from-file="eaclog=@eaclog@" "@source@" -o "@image@"
    MOVE /Y "@image@" %dest%
    MOVE /Y "@cuesheet@" %dest%
    IF %have_cover%==1 COPY /Y "@cover@" %dest%\"@basename@.jpg"
:end_flac_image


IF NOT @ImageExt@==wv GOTO end_wavpack_image
    SET dest="@ImageDir_Wavpack@%imageDir%"
    IF NOT EXIST %dest% MKDIR %dest%
    @tools@\wavpack.exe @Opt_Wavpack@ %RG_Wavpack% %Disc_Wavpack% -w "%ArtistField%=@cdartist@" -w album="@album@" -w totaltracks="@numtracks@" -w year="@year@" -w genre="@genre@" -w comment="@comment@" -w encodedby="%USERNAME%" -w encodersettings="Wavpack @Ver_Wavpack@ @Opt_Wavpack@" -w cuesheet="@@cuesheet@" -w eaclog="@@eaclog@" "@source@" "@image@"
    IF @ReplayGain@==1 IF @UseWaveGainAG@==0 @tools@\wvgain.exe -a "@image@"
    TITLE "@album@"
    MOVE /Y "@image@" %dest%
    MOVE /Y "@cuesheet@" %dest%
    IF %have_cover%==1 COPY /Y "@cover@" %dest%\"@basename@.jpg"
:end_wavpack_image


IF NOT @ImageExt@==tak GOTO end_tak_image
    SET dest="@ImageDir_Tak@%imageDir%"
    IF NOT EXIST %dest% MKDIR %dest%
    @tools@\takc.exe -e @Opt_Tak@ "@source@" "@image@"
    @tools@\tag.exe %RG_Tak% %Disc_Tak% -t "%ArtistField%=@cdartist@" -t album="@album@" -t totaltracks="@numtracks@" -t year="@year@" -t genre="@genre@" -t comment="@comment@" -t encodedby="%USERNAME%" -t encodersettings="TAK @Ver_Tak@ @Opt_Tak@" -f cuesheet="@cuesheet@" -f eaclog="@eaclog@" "@image@"
    MOVE /Y "@image@" %dest%
    MOVE /Y "@cuesheet@" %dest%
    IF %have_cover%==1 COPY /Y "@cover@" %dest%\"@basename@.jpg"
:end_tak_image


IF NOT @ImageExt@==mp3 GOTO end_lame_image
    SET dest="@ImageDir_MP3@%imageDir%"
    IF NOT EXIST %dest% MKDIR %dest%
    IF %embed_cover%==1 SET Cover_tag=--frame "APIC{3}:@cover@"
    @tools@\lame.exe @Opt_LameMP3@ %ApplyAG_Lame% "@source@" "@image@"
    @tools@\metamp3.exe %RG_MetaMP3% %Cover_tag% %Disc_MP3% %MP3Artist% --album "@album@" --track @numtracks@ --year "@year@" --genre "@genre@" --comment "@comment@" --frame TENC:"%USERNAME%" --frame TSSE:"LAME @Ver_LameMP3@ @Opt_LameMP3@" "@image@"
    IF @ApplyAlbumGain@==1 @tools@\metamp3.exe %ApplyAG_MetaMP3% "@image@"
    MOVE /Y "@image@" %dest%
    MOVE /Y "@cuesheet@" %dest%
    IF %have_cover%==1 COPY /Y "@cover@" %dest%\"@basename@.jpg"
:end_lame_image


REM ---- Tracks ----


IF NOT @Flac@==1 GOTO end_flac_tracks
IF @various@==0 SET dest="@TrackDir_Flac_SA@%trackDir%"
IF @various@==1 SET dest="@TrackDir_Flac_VA@%trackDir%"
    IF NOT EXIST %dest% MKDIR %dest%
    PUSHD %dest%
IF @various@==1 SET VA_tag=-T $qalbum artist=@VA@$q
        IF %embed_cover%==1 SET Cover_tag=--picture=$#x
        @tools@\acdir.exe --overwrite --output "%TrackName%.flac" --extra-opt "|image/jpeg|||@cover@" --pipe "TITLE $n/$N flac $#T & @tools@\flac.exe @Opt_Flac@ %Cover_tag% %VA_tag% %Disc_Flac_acdir% -T artist=$#a -T album=$#T -T title=$#t -T tracknumber=$n/$N -T date=$q@year@$q -T genre=$q@genre@$q -T comment=$q@comment@$q -T encoded-by=$q%USERNAME%$q -T encoding=$qFlac @Ver_Flac@ @Opt_Flac@$q - -o $#o" "@sourcecuesheet@"
        IF %add_rg%==1 @tools@\Glob.exe -v -c @tools@\metaflac.exe %RG_MetaFlac% *.flac
        COPY /Y "@eaclog@" "EAClog.txt"
        IF %have_cover%==1 COPY /Y "@cover@" "folder.jpg"
        IF EXIST "@albumfile@.[*].cue" COPY /Y "@albumfile@.[*].cue" .
@tools@\Tag.exe --playlist --sort track --a-artist "@cdartist@" --a-title "@album@" --plname temp.m3u *.flac
REM ** Workaround for %-chars disappearing from the playlist filename when using tag.exe.
REN temp.m3u "000. $cdartist$ - $album$.m3u"
    POPD
:end_flac_tracks


IF NOT @Wavpack@==1 GOTO end_wavpack_tracks
    SET dest="@TrackDir_Wavpack@%trackDir%"
    IF NOT EXIST %dest% MKDIR %dest%
    PUSHD %dest%
        IF @various@==1 SET VA_tag=-w $qalbum artist=@VA@$q
        @tools@\acdir.exe --overwrite --output "%TrackName%.wv" --pipe "@tools@\wavpack.exe @Opt_Wavpack@ %RG_Wavpack_acdir% %VA_tag% %Disc_Wavpack_acdir% -w artist=$#a -w album=$#T -w title=$#t -w track=$n/$N -w year=$q@year@$q -w genre=$q@genre@$q -w comment=$q@comment@$q -w encodedby=$q%USERNAME%$q -w encodersettings=$qWavpack @Ver_Wavpack@ @Opt_Wavpack@$q - $#o" "@sourcecuesheet@"
        IF @ReplayGain@==1 IF @UseWaveGainAG@==0 @tools@\wvgain.exe -a *.wv
        COPY /Y "@eaclog@" "EAClog.txt"
        IF %have_cover%==1 COPY /Y "@cover@" "folder.jpg"
        IF EXIST "@albumfile@.[*].cue" COPY /Y "@albumfile@.[*].cue" .
    POPD
    TITLE "@album@"
:end_wavpack_tracks


IF NOT @Tak@==1 GOTO end_tak_tracks
    SET dest="@TrackDir_Tak@%trackDir%"
    IF NOT EXIST %dest% MKDIR %dest%
    PUSHD %dest%
        IF @various@==1 SET VA_tag=-t $qalbum artist=@VA@$q
        @tools@\acdir.exe --overwrite --output "%TrackName%.wav" --extract "@sourcecuesheet@"
        @tools@\acdir.exe --exec "@tools@\takc.exe -e -overwrite @Opt_Tak@ $q%TrackName%.wav$q $q%TrackName%.tak$q && @tools@\tag.exe %RG_Tak_acdir% %VA_tag% %Disc_Tak_acdir% -t artist=$#a -t album=$#T -t title=$#t -t track=$n/$N -t year=$q@year@$q -t genre=$q@genre@$q -t comment=$q@comment@$q -t encodedby=$q%USERNAME%$q -t encodersettings=$qTAK @Ver_Tak@ @Opt_Tak@$q $q%TrackName%.tak$q && DEL $q%TrackName%.wav$q" "@sourcecuesheet@"
        COPY /Y "@eaclog@" "EAClog.txt"
        IF %have_cover%==1 COPY /Y "@cover@" "folder.jpg"
        IF EXIST "@albumfile@.[*].cue" COPY /Y "@albumfile@.[*].cue" .
    POPD
:end_tak_tracks


IF NOT @LameMP3@==1 GOTO end_lame_tracks
IF @various@==0 SET dest="@TrackDir_MP3_SA@%trackDir%"
IF @various@==1 SET dest="@TrackDir_MP3_VA@%trackDir%"
    IF NOT EXIST %dest% MKDIR %dest%
    PUSHD %dest%
        IF @various@==1 SET VA_tag=--frame $qTXXX[album artist]:@VA@$q --frame $qTPE2:@VA@$q
        IF %embed_cover%==1 SET Cover_tag=--frame $#x
        @tools@\acdir.exe --overwrite --output "%TrackName%.mp3" --extra-opt "APIC{3}:@cover@" --pipe "TITLE $n/$N mp3 $#T & @tools@\lame.exe @Opt_LameMP3@ %ApplyAG_Lame% - $#o & @tools@\metamp3.exe %Cover_tag% %VA_tag% %Disc_MP3_acdir% --artist $#a --album $#T --title $#t --track $n/$N --year $q@year@$q --genre $q@genre@$q --comment $q@comment@$q --frame TENC:$q%USERNAME%$q --frame TSSE:$qLAME @Ver_LameMP3@ @Opt_LameMP3@$q $#o" "@sourcecuesheet@"
        IF %add_rg%==1 @tools@\Glob.exe -v -c @tools@\metamp3.exe %RG_MetaMP3% *.mp3
        IF @ApplyAlbumGain@==1 @tools@\Glob.exe -v -c @tools@\metamp3.exe %ApplyAG_MetaMP3% *.mp3
        REM COPY /Y "@eaclog@" "EAClog.txt"
        IF %have_cover%==1 COPY /Y "@cover@" "folder.jpg"
@tools@\tag.exe --playlist --onlyfiles --sort track --plname "000. $cdartist$ - $album$.m3u" *.mp3
    POPD
:end_lame_tracks


IF NOT @NeroAac@==1 GOTO end_nero_aac_tracks
    SET dest="@TrackDir_AAC@%trackDir%"
    IF NOT EXIST %dest% MKDIR %dest%
    PUSHD %dest%
        IF @various@==1 SET VA_tag=--albumArtist $q@VA@$q --compilation true
        IF %embed_cover%==1 SET Cover_tag=--artwork $#x
        @tools@\acdir.exe --overwrite --output "%TrackName%.m4a" --extra-opt "@cover@" --pipe "TITLE $n/$N aac $#T & @tools@\neroAacEnc.exe @Opt_NeroAac@ -ignorelength -if - -of $#o & @tools@\AtomicParsley.exe $#o -o REACT_tmp.m4a %Cover_tag% %VA_tag% %Disc_NeroAac_acdir% --artist $#a --album $#T --tracknum $n/$N --title $#t --year $q@year@$q --genre $q@genre@$q --comment $q@comment@$q --encodingTool $qneroAacEnc @Ver_NeroAac@ @Opt_NeroAac@$q & MOVE /Y REACT_tmp.m4a $#o" "@sourcecuesheet@"
        IF @ApplyAlbumGain@==1 @tools@\aacgain.exe %ApplyAG_AacGain% *.m4a > gainlog.txt
        REM COPY /Y "@eaclog@" "EAClog.txt"
        IF %have_cover%==1 COPY /Y "@cover@" "folder.jpg"
    POPD
:end_nero_aac_tracks


IF NOT @OggEnc2@==1 GOTO end_oggenc_tracks
    SET dest="@TrackDir_OGG@%trackDir%"
    IF NOT EXIST %dest% MKDIR %dest%
    PUSHD %dest%
        IF @various@==1 SET VA_tag=-c $qalbum artist=@VA@$q
        @tools@\acdir.exe --overwrite --output "%TrackName%.ogg" --pipe "TITLE $n/$N ogg $#T & @tools@\oggenc2.exe @Opt_OggEnc2@ %RG_OggEnc2_acdir% %VA_tag% %Disc_OggEnc2_acdir% -c artist=$#a -c album=$#T -c title=$#t -c tracknumber=$n/$N -c date=$q@year@$q -c genre=$q@genre@$q -c comment=$q@comment@$q -c encoded-by=$q%USERNAME%$q -c encoding=$qOggEnc @Ver_OggEnc2@ @Opt_OggEnc2@$q - -o $#o" "@sourcecuesheet@"
        IF @ReplayGain@==1 IF @UseWaveGainAG@==0 @tools@\vorbisgain.exe -a *.ogg
        REM COPY /Y "@eaclog@" "EAClog.txt"
        IF %have_cover%==1 COPY /Y "@cover@" "folder.jpg"
    POPD
:end_oggenc_tracks


REM ================ End Main Script ===================


IF @Debug@==1 (
    PAUSE
    EXIT
)

REM ** Cleanup

DEL "@source@"
DEL "@eaclog@"
DEL "@cuesheet@"
DEL "@albumfile@.[*].cue"
DEL "@cover@"

REM ** Delete this .bat file:
DEL %0 &EXIT


GOTO :EOF

REM ** Pause for 2000 milliseconds and return to :CheckForLog
:Pause
@ECHO Waiting for EAC log file...
PING 1.1.1.1 -n 1 -w 2000 >NUL
GOTO CheckForLog

Any ideas?

I want to use Track Mode anyway - like suggested by Akkurat. But there I run in many more problems.

It seems like React tries to do the actions in the wrong directory. No .m3u is created, no cuesheet is created , no replaygain (metamp3 + metaflac).

Here's my react.ini

Code: [Select]
[Settings]
Version=2.0.akku.b04
ImageExt=wav
ImageNaming=$artist$ - $album$
ImageHotKey={F10}
TracksHotKey={F4}
TracksHotVal=+{F5}
CreateCuesheet=mg
VA=Various Artists
RunCoverDownloader=0
CoverDownloader=C:\Program Files\REACT2\coverdownloader\albumart.exe
CoverDownloaderXUI=0
CoverDownloaderLocalPath=
OpenAddMetaDataDiag=0
EAC=C:\Program Files\Exact Audio Copy\EAC.exe
Tools=C:\Program Files\REACT2\tools
MinimizeCompressionWindow=1
ProcessPriority=1
Sla_Bks_Col_Qst_Bar_Quo_Ast_Lt_Gt=-|-|-||!|'|#|[|]
Test=0

[UserTrackFormats]
Flac=1
Wavpack=0
LameMP3=1
NeroAac=0
iTunesAac=0
iTunesAac=0
OggEnc2=0
Tak=0

[UserOutputNames]
OutRoot=D:\Audio\Ripped\EAC
ImageDir_Flac=@OutRoot@\FLAC-images\$cdartist$
ImageDir_Wavpack=@OutRoot@\WV-images\$cdartist$
ImageDir_MP3=@OutRoot@\MP3-images\$cdartist$
ImageDir_Tak=@OutRoot@\TAK-images\$cdartist$
TrackDir_Flac_SA=@OutRoot@\FLAC\Alben\$cdartist$\$year$ - $album$
TrackDir_Flac_VA=@OutRoot@\FLAC\VA
TrackDir_Flac=@OutRoot@\FLAC\$cdartist$\$year$ - $album$
TrackDir_Wavpack=@OutRoot@\WV\$cdartist$\$year$ - $album$
TrackDir_MP3_SA=@OutRoot@\MP3\Alben\$cdartist$\$year$ - $album$
TrackDir_MP3_VA=@OutRoot@\MP3\VA
TrackDir_MP3=@OutRoot@\MP3\$cdartist$\$year$ - $album$
TrackDir_AAC=@OutRoot@\AAC\$cdartist$\$year$ - $album$
TrackDir_OGG=@OutRoot@\OGG\$cdartist$\$year$ - $album$
TrackDir_Tak=@OutRoot@\TAK\$cdartist$\$year$ - $album$
TrackName_SA=$track$. $title$ - $cdartist$
TrackName_VA=$artist$ - $title$ ($album$ - $year$ - Track $track$)
TrackName_SA_acdir=$n. $~t - $A
TrackName_VA_acdir=$A - $~t ($T - $r{DATE} - Track $n)

[UserSettings]
DebugMode=0
Debug=0
Comment=Created with EAC/@reactversion@, @curdate@
EmbedCover=1
ReplayGain=1
ApplyAlbumGain=1
AdjustAlbumGain_dB=+0.0
AddCuesheetAG=0
UseWaveGainAG=0
Opt_Flac=-8 -f
Opt_Wavpack=-hmy
Opt_LameMP3=-V2 --noreplaygain --nohist
Opt_NeroAac=-lc -q 0.21
Opt_iTunesAac=-d -s 2000
Opt_OggEnc2=-q 3.0
Opt_Tak=-pN -overwrite
Ver_Flac=1.2.1b
Ver_Wavpack=4.40
Ver_LameMP3=3.98.4
Ver_NeroAac=1.0.0.2
Ver_OggEnc2=2.83 Lancer aoTuV b5
Ver_Tak=1.0.1

[DefaultMetaData]
discnumber=1
totaldiscs=1
discname=

Here's my react-track.cfg

Code: [Select]
@ECHO OFF
CHCP 1252 | PROMPT
TITLE @track@/@numtracks@ - "@album@"

REM Copyright © Tycho, 2006
REM
REM ** Create compressed audio tracks from ripped .wav tracks.
REM **
REM ** You may consider using image mode (F10)
REM ** as it supports creating tracks via acdir.exe,
REM ** and post-processing will always work (see below).
REM **
REM ** Flac requires flac.exe/metaflac.exe (v1.1.3)
REM ** NeroAac requires NeroAacEnc.exe/NeroAacTag.exe/AacGain.exe.
REM ** OggEnc2 requires OggEnc2.exe/VorbisGain.exe.
REM **
REM ** I prefer applying album gain 92dB to get a reasonable
REM ** volume for my DAP. The RG tags are still relative
REM ** to 89dB SPL, i.e. album gain will be about -3.0dB.


REM ============== Begin Main Script ==================


IF @Debug@==1 ECHO ON

REM ** Workaround for multi-processing, added by nago.
ECHO > processing[@track@].tmp

REM ** Create Disc-related tags if we have a set

SET discNumberInPath=0

REM ** Ensure that we have numeric values
SET /A discNumber = @discnumber@ + 0
SET /A totalDiscs = @totaldiscs@ + 0

REM ** If a valid disc number and total number of discs has been provided
IF %totalDiscs% LEQ 1 GOTO :end_discnumber
IF %discNumber% LEQ 0 GOTO :end_discnumber

    REM ** Set tagging switches
    SET Disc_Flac=-T "discnumber=@discnumber@" -T "totaldiscs=@totaldiscs@"
    SET Disc_Wavpack=-w "discnumber=@discnumber@" -w "totaldiscs=@totaldiscs@"
    SET Disc_MP3=--frame TPOS:"@discnumber@/@totaldiscs@"
    SET Disc_NeroAac=--disk "@discnumber@/@totaldiscs@"
    SET Disc_OggEnc2=-c "discnumber=@discnumber@" -c "totaldiscs=@totaldiscs@"
    SET Disc_Tak=-t "discnumber=@discnumber@" -t "totaldiscs=@totaldiscs@"

    REM ** Add disc number to folder path
    SET trackDir=%trackDir%\Disc @discnumber@
SET discNumberInPath=1

:end_discnumber

REM ** If a disc name has been provided
IF "@discname@" EQU "" GOTO end_discname
SET discName=discname
SET discName=@%discname%@
IF "@discname@" EQU "%discName%" GOTO end_discname

    REM ** Set tagging switches
    SET Disc_Flac=%Disc_Flac% -T "discname=@discname@"
    SET Disc_Wavpack=%Disc_Wavpack% -w "discname=@discname@"
    SET Disc_MP3=%Disc_MP3% --frame "TXXX[setsubtitle]:@discname@"
    SET Disc_OggEnc2=%Disc_OggEnc2% -c "discname=@discname@"
    SET Disc_Tak=%Disc_Tak% -t "discname=@discname@"

    REM ** Add disc name to folder path
IF %discNumberInPath%==0 SET trackDir=%trackDir%\$discname$
IF %discNumberInPath%==1 SET trackDir=%trackDir% ($discname$)

:end_discname


SET TrackDir_Flac="@TrackDir_Flac@%trackDir%"
SET TrackDir_Flac_SA="@TrackDir_Flac_SA@%trackDir%"
SET TrackDir_Flac_VA="@TrackDir_Flac_VA@%trackDir%"
SET TrackDir_Wavpack="@TrackDir_Wavpack@%trackDir%"
SET TrackDir_MP3="@TrackDir_MP3@%trackDir%"
SET TrackDir_MP3_SA="@TrackDir_MP3_SA@%trackDir%"
SET TrackDir_MP3_VA="@TrackDir_MP3_VA@%trackDir%"
SET TrackDir_AAC="@TrackDir_AAC@%trackDir%"
SET TrackDir_OGG="@TrackDir_OGG@%trackDir%"
SET TrackDir_Tak="@TrackDir_Tak@%trackDir%"


SET TrackName=@trackname@

SET have_cover=0
SET embed_cover=0

IF EXIST "@cover@" (
    SET have_cover=1
    SET embed_cover=@EmbedCover@
)



REM ---- Track ----


IF NOT @Flac@==1 GOTO end_flac_tracks
    IF @various@==0 SET dest="@TrackDir_Flac_SA@%trackDir%"
IF @various@==1 SET dest="@TrackDir_Flac_VA@%trackDir%"
    IF NOT EXIST %dest% MKDIR %dest%
    PUSHD %dest%
        IF @various@==1 SET VA_tag=-T "album artist=@VA@"
        IF %embed_cover%==1 SET Cover_tag=--picture="|image/jpeg|||@cover@"
        ECHO ON
        @tools@\flac.exe @Opt_Flac@ %Cover_tag% %VA_tag% %Disc_Flac% -T artist="@artist@" -T album="@album@" -T tracknumber="@track@/@numtracks@" -T title="@title@" -T date="@year@" -T genre="@genre@" -T comment="@comment@" -T encoded-by="%USERNAME%" -T encoding="Flac @Ver_Flac@ @Opt_Flac@" "@source@" -o "%TrackName%.flac"
        @ECHO OFF
IF @Debug@==1 ECHO ON
REM SET trackCueFile="$cdartist$ - $album$.cue"
REM IF NOT EXIST %trackCueFile% (
REM COPY "@albumfile@.[mg].cue" %trackCueFile%
REM ECHO CHCP 1252 ^| PROMPT>>update-cuesheet.bat
REM )
REM ECHO @tools@\gsar.EXE "-s@basename@.wav" "-r%TrackName%.flac" -o %trackCueFile%>>update-cuesheet.bat
        IF %have_cover%==1 IF NOT EXIST folder.jpg COPY "@cover@" folder.jpg
    POPD
:end_flac_tracks


IF NOT @Wavpack@==1 GOTO end_wavpack_tracks
    IF NOT EXIST %TrackDir_Wavpack% MKDIR %TrackDir_Wavpack%
    PUSHD %TrackDir_Wavpack%
        IF @various@==1 SET VA_tag=-w "album artist=@VA@"
        ECHO ON
        @tools@\wavpack.exe @Opt_Wavpack@ %VA_tag% %Disc_Wavpack% -w artist="@artist@" -w album="@album@" -w track="@track@/@numtracks@" -w title="@title@" -w year="@year@" -w genre="@genre@" -w comment="@comment@" -w encodedby="%USERNAME%" -w encodersettings="Wavpack @Ver_Wavpack@ @Opt_Wavpack@" "@source@" "%TrackName%.wv"
        @ECHO OFF
IF @Debug@==1 ECHO ON
        IF %have_cover%==1 IF NOT EXIST folder.jpg COPY "@cover@" folder.jpg
        TITLE @track@/@numtracks@ - "@album@"
    POPD
:end_wavpack_tracks


IF NOT @Tak@==1 GOTO end_tak_tracks
    IF NOT EXIST %TrackDir_Tak% MKDIR %TrackDir_Tak%
    PUSHD %TrackDir_Tak%
        IF @various@==1 SET VA_tag=-t "album artist=@VA@"
        ECHO ON
        @tools@\takc.exe -e -overwrite @Opt_Tak@ "@source@" "%TrackName%.tak"
        @tools@\tag.exe %VA_tag% %Disc_Tak% -t artist="@artist@" -t album="@album@" -t track="@track@/@numtracks@" -t title="@title@" -t year="@year@" -t genre="@genre@" -t comment="@comment@" -t encodedby="%USERNAME%" -t encodersettings="TAK @Ver_Tak@ @Opt_Tak@" "%TrackName%.tak"
        @ECHO OFF
IF @Debug@==1 ECHO ON
        IF %have_cover%==1 IF NOT EXIST folder.jpg COPY "@cover@" folder.jpg
        TITLE @track@/@numtracks@ - "@album@"
    POPD
:end_tak_tracks


IF NOT @LameMP3@==1 GOTO end_lame_tracks
    IF @various@==0 SET dest="@TrackDir_MP3_SA@%trackDir%"
IF @various@==1 SET dest="@TrackDir_MP3_VA@%trackDir%"
    IF NOT EXIST %dest% MKDIR %dest%
    PUSHD %dest%
        IF @various@==1 SET VA_tag=--frame "TXXX[album artist]:@VA@" --frame "TPE2:@VA@"
        IF %embed_cover%==1 SET Cover_tag=--frame "APIC{3}:@cover@"
        ECHO ON
        @tools@\lame.exe @Opt_LameMP3@ "@source@" "%TrackName%.mp3"
        @tools@\metamp3.exe %Cover_tag% %VA_tag% %Disc_MP3% --artist "@artist@" --album "@album@" --track @track@/@numtracks@ --title "@title@" --year "@year@" --genre "@genre@" --comment "@comment@" --frame TENC:"%USERNAME%" --frame TSSE:"LAME @Ver_LameMP3@ @Opt_LameMP3@" "%TrackName%.mp3"
        @ECHO OFF
IF @Debug@==1 ECHO ON
        IF %have_cover%==1 IF NOT EXIST folder.jpg COPY "@cover@" folder.jpg
    POPD
:end_lame_tracks


IF NOT @iTunesAac@==1 GOTO end_itunes_aac_tracks
    IF NOT EXIST %TrackDir_AAC% MKDIR %TrackDir_AAC%
    PUSHD %TrackDir_AAC%
        IF %embed_cover%==1 SET Cover_tag=-r "@cover@"
        ECHO ON
        @tools@\iTunesEncode.exe @Opt_iTunesAac@ -e "AAC Encoder" %Cover_tag% -x @various@ -a "@artist@" -l "@album@" -n "@track@" -m "@numtracks@" -t "@title@" -y "@year@" -g "@genre@" -c "@comment@" -i "@source@" -o "%TrackName%.m4a"
        @ECHO OFF
IF @Debug@==1 ECHO ON
        IF %have_cover%==1 IF NOT EXIST folder.jpg COPY "@cover@" folder.jpg
    POPD
    GOTO end_nero_aac_tracks
:end_itunes_aac_tracks


IF NOT @NeroAac@==1 GOTO end_nero_aac_tracks
    IF NOT EXIST %TrackDir_AAC% MKDIR %TrackDir_AAC%
    PUSHD %TrackDir_AAC%
        IF @various@==1 SET VA_tag=--albumArtist "@VA@" --compilation true
        IF %embed_cover%==1 SET Cover_tag=--artwork "@cover@"
        ECHO ON
        @tools@\neroAacEnc.exe @Opt_NeroAac@ -if "@source@" -of "%TrackName%.m4a"
        @tools@\AtomicParsley.exe "%TrackName%.m4a" -o REACT_tmp.m4a %Cover_tag% %VA_tag% %Disc_NeroAac% --artist "@artist@" --album "@album@" --tracknum "@track@/@numtracks@" --title "@title@" --year "@year@" --genre "@genre@" --comment "@comment@" --encodingTool "neroAacEnc @Ver_NeroAac@ @Opt_NeroAac@"
        @ECHO OFF
IF @Debug@==1 ECHO ON
        MOVE /Y REACT_tmp.m4a "%TrackName%.m4a"
        IF %have_cover%==1 IF NOT EXIST folder.jpg COPY "@cover@" folder.jpg
    POPD
:end_nero_aac_tracks


IF NOT @OggEnc2@==1 GOTO end_oggenc_tracks
    IF NOT EXIST %TrackDir_OGG% MKDIR %TrackDir_OGG%
    PUSHD %TrackDir_OGG%
        IF @various@==1 SET VA_tag=-c "album artist=@VA@"
        ECHO ON
        @tools@\oggenc2.exe @Opt_OggEnc2@ %VA_tag% %Disc_OggEnc2% -c artist="@artist@" -c album="@album@" -c tracknumber="@track@/@numtracks@" -c title="@title@" -c date="@year@" -c genre="@genre@" -c comment="@comment@" -c encoded-by="%USERNAME%" -c encoding="OggEnc @Ver_OggEnc2@ @Opt_OggEnc2@" "@source@" -o "%TrackName%.ogg"
        @ECHO OFF
IF @Debug@==1 ECHO ON
        IF %have_cover%==1 IF NOT EXIST folder.jpg COPY "@cover@" folder.jpg
    POPD
:end_oggenc_tracks

REM ** Delete the source .wav
DEL "@source@"

REM ** More multiprocessing workaround --nago
DEL processing[@track@].tmp


REM ---- Post-processing ----


REM ** Scan and compute ReplayGain and add cover picture for supported formats.
REM ** NB: The following will only work if at least the last track is selected.

IF NOT @track@==@numtracks@ GOTO end_post_process

    REM ** More multiprocessing. Last edit. --nago
    :checktmp
    IF NOT EXIST processing[*].tmp GOTO allProcsClear
      ECHO Waiting for all other processes to clear...
      ECHO If REACT hangs here and there are no other tracks being encoded,
      ECHO please delete all processing[#].tmp files in
      ECHO "@sourcedir@"
      PING 1.1.1.1 -n 1 -w 10000 >NUL
    GOTO checktmp
    :allProcsClear

REM ** Ensure that the EAC log is available
:CheckForLog
IF NOT EXIST "@eaclog@" GOTO Pause

    SET add_rg=@ReplayGain@
    SET aac_enc=@NeroAac@
    IF @iTunesAac@==1 SET aac_enc=1

    IF NOT @ReplayGain@==1 GOTO end_RG
        SET RG_MetaFlac=--add-replay-gain
        SET RG_MetaMP3=--replay-gain
    :end_RG

    IF NOT @ApplyAlbumGain@==1 GOTO end_apply_AG
        SET RG_MetaMP3=--apply-gain album@AdjustAlbumGain_dB@
        SET RG_AacGain=/a /o /c /d @AdjustAlbumGain_dB@
        SET add_rg=1
    :end_apply_AG


    REM ** Audio Formats:

    IF @Flac@==1 (
        IF @various@==0 SET dest=%TrackDir_Flac_SA%
IF @various@==1 SET dest=%TrackDir_Flac_VA%
PUSHD %dest%
            IF %add_rg%==1 @tools@\Glob.exe -v -c @tools@\metaflac.exe %RG_MetaFlac% *.flac
REM @tools@\gsar.exe -s%% -r%%%% -o update-cuesheet.bat
REM CALL update-cuesheet.bat
REM DEL update-cuesheet.bat
@tools@\Tag.exe --playlist --sort track --a-artist "@cdartist@" --a-title "@album@" --plname temp.m3u *.flac
REM ** Workaround for %-chars disappearing from the playlist filename when using tag.exe.
REN temp.m3u "000. $cdartist$ - $album$.m3u"
if exist "@albumfile@.[*].cue" copy "@albumfile@.[*].cue" .
            COPY /Y "@eaclog@" "EAClog.txt"
        POPD
    )

    IF @Wavpack@==1 (
        PUSHD %TrackDir_Wavpack%
            IF %add_rg%==1 @tools@\wvgain.exe -a *.wv
            REM COPY /Y "@eaclog@" "EAClog.txt"
        POPD
    )

    IF @LameMP3@==1 (
IF @various@==0 SET dest=%TrackDir_MP3_SA%
IF @various@==1 SET dest=%TrackDir_MP3_VA%
PUSHD %dest%
            IF %add_rg%==1 @tools@\Glob.exe -v -c @tools@\metamp3.exe %RG_MetaMP3% *.mp3
tools@\tag.exe --playlist --onlyfiles --sort track --plname "000. $cdartist$ - $album$.m3u" *.mp3
            COPY /Y "@eaclog@" "EAClog.txt"
        POPD
    )

    IF %aac_enc%==1 (
        PUSHD %TrackDir_AAC%
            IF %add_rg%==1 @tools@\aacgain.exe %RG_AacGain% *.m4a > "gainlog.txt"
            REM COPY /Y "@eaclog@" "EAClog.txt"
        POPD
    )

    IF @OggEnc2@==1 (
        PUSHD %TrackDir_OGG%
            IF %add_rg%==1 @tools@\vorbisgain.exe -a *.ogg
            REM COPY /Y "@eaclog@" "EAClog.txt"
        POPD
    )


    REM ** Cleanup

    DEL "@eaclog@"
    DEL "@albumfile@.[*].cue"
    DEL "@cover@"

:end_post_process


REM ================ End Main Script ===================


IF @Debug@==1 (
    PAUSE
    EXIT
)

REM ** Delete this .bat file:
DEL %0 &EXIT


GOTO :EOF

REM ** Pause for 2000 milliseconds and return to :CheckForLog
:Pause
@ECHO Waiting for EAC log file...
PING 1.1.1.1 -n 1 -w 2000 >NUL
GOTO CheckForLog

Thank you for taking the time to help other people :-)
Have a nice weekend!
Vhagar

REACT 2 Released

Reply #1789
Summary on empty folders under Win7/64 - EAC 99.b5 - akku.b04

Finally, I found my mistake: a typo in the path to the tools folder in react.ini 


All of the following might be a good idea in other cases (after checking the paths in react.ini  ), but was not necessary in my case:

* Running REACT and/or flac.exe/lame.exe with administrator rights,
* look for "msvcrt71.dll" and "CHCP.com" in the "SysWOW64" folder,
* change permissions on involved directories,
* disable beginners mode in EAC,
* install EAC to a folder without spaces (e.g. C:\eac).
* etc.

Thanks for all advices anyway!

REACT 2 Released

Reply #1790
TrackName_VA_acdir=$A - $~t ($T - $r{DATE} - Track $n)

Shouldn't that be: TrackName_VA_acdir=$~a - $~t ($~T - $r{DATE} - Track $n)

And somehow it seems like the cuesheet ist not beeing generated properly.

I don't know enough about this stuff.. and anyways, it's a bit off-topic.

I want to use Track Mode anyway - like suggested by Akkurat. But there I run in many more problems.

It seems like React tries to do the actions in the wrong directory. No .m3u is created, no cuesheet is created , no replaygain (metamp3 + metaflac).

In wrong folder? Your customization might have something to do with that.. AND, remember that "Post-processing" section stuff is only ran if the last track has been ripped (=REACT is designed to work only with whole album extraction/ripping). P.S. you have cuesheet stuff REMmed in the track config.

HTH

REACT 2 Released

Reply #1791
How difficult would it be to get dBpoweramp to launch REACT2 (using either the Run external DSP or creating a DSP itself through the open DSP architecture), getting the meta-data from dBpoweramp and creating a CUE sheet with EAC?

REACT 2 Released

Reply #1792
Impossible (at least with a tool called REACT2). This is a bit off-topic, but, I've said it before, if you're finicky about getting metadata to your liking, get it from whatever source AND check/amend it yourself. I know, major drag when starting ripping your collection (I've done it), but not after it when you do few CD's per month (or something like that). You get metadata just the way you like it, no need to correct anything later.

REACT 2 Released

Reply #1793
Its not so much about the meta-data. I am very happy with the meta-data from perfectmeta. The problem is trying to automate the process of creating CUE sheets with EAC after ripping with dBpoweramp. The problem is getting the CUE sheet to the correct location and having it have the correct track file names. This would be prohibitive with anything more then a couple of discs at a time. Hopefully spoon has cue sheet support soon, but after years of waiting I doubt anyone is holding their breath.

REACT 2 Released

Reply #1794
Ok. My point was that for the oddballs, like me, even "perfectmeta" (perfect?) is not enough.. -> one could use EAC/REACT and get cuesheets automatically.

REACT 2 Released

Reply #1795
perfect is certainly not perfect when it comes to perfectmeta (though it is the best automatic system available) - I usually manually review - but thats off topic.

The problem is getting REACT/EAC to get the info on rip to location and file names in order to create a CUE sheet without having to enter the meta-data from dbpoweramp into EAC or edit the CUE sheet later.

REACT 2 Released

Reply #1796
Is it possible to get REACT2 to apply Replaygain to Soundcheck conversion on creation of the lossy formats such as MP3 and AAC?

At the moment I am having to use MP3Tag to convert the Replaygain to Soundcheck conversion - which adds "COMMENT ITUNNORM" to MP3s and "ITUNNORM" values for AAC

I wish to rip CDs to FLAC with Replaygain tags, and then have AAC versions for my iPod with converted values from the Replaygain applied to the FLACs

REACT 2 Released

Reply #1797
Is it possible to configure REACT to automatically save the EAC-Log in the output-dir of my disc - as possible without having this EAC prompt if and where to save the log? This is somewhat annoying when ripping several discs.

REACT 2 Released

Reply #1798
Is it possible to get REACT2 to apply Replaygain to Soundcheck conversion on creation of the lossy formats such as MP3 and AAC?


I dont`t know. But: I am using foobar whith the ipod-manager-extension to sync my ipod. It automatically converts the replaygain-values and also does transcoding to aac or mp3, if necessary. So there is no need to have two versions of my audio-files on my hdd.

REACT 2 Released

Reply #1799
Is it possible to configure REACT to automatically save the EAC-Log in the output-dir of my disc - as possible without having this EAC prompt if and where to save the log? This is somewhat annoying when ripping several discs.

Have you ever configured REACT with Ctrl+F2? Or have you changed EAC settings ("use this directory" to "ask every time") after that? Just re-configure REACT and EAC won't ask you to save the file.

Additionally, I'm guessing that you rip in track mode (F4), you have to edit the REACT-track.cfg file in REACT install folder. Go to the end of the file and remove the REM text from REM COPY /Y "@eaclog@" "EAClog.txt" line for your choice of encoder (e.g. under "IF @Flac@==1") or all of them.

HTH.