From Hydrogenaudio Knowledgebase
Revision as of 17:34, 16 November 2007 by Synthetic Soul (Talk | contribs)

Jump to: navigation, search

Synthetic Soul's Mod

Screenshot demonstrating the Additional Meta Data dialogue

Synthetic Soul maintains a mod of REACT 2.0.

Key Points

  • Additional Meta Data dialogue allows you to easily edit supplemental disc and track information.
  • Track-level tokens supported.
  • Additional meta data added to cuesheets, as REM statements.
  • Fixes issue in REACT with '%' in any field ( post ).
  • Fixes issue in REACT with '&' in the track name when using REACT-track.cfg ( post and post ).
  • Works with new- (EAC 0.99 prebeta 1) and old-style log files.
  • Will only rewrite INI file on major or minor version change, not a new build.
  • Use Test & Copy by adding Test=1 under the Settings section of REACT.ini.


The main purpose of this mod is to allow users to easily provide additional meta data to the REACT configs. This is achieved by the introduction of an Additional Meta Data dialogue, which allows users to easily create, amend and delete additional tokens, which can be used either to set tag values (e.g.: @discnumber@) , or as variables used in conditions within the config to alter the processing path (e.g.: @_disctype@).

The dialogue is opened using Alt+F5. The new dialogue is non-modal, but will stay on top of the EAC main window; if you minimise EAC the dialogue is minimised also. If you close the dialogue it is simply hidden from view, so your list items will stay intact. Therefore, if you need to set various meta data for each disc that you are ripping, you may choose to keep the dialogue open throughout the process; however, if you only need to use it to alter values infrequently, you can leave it hidden, but know that the values are still available to your config file.

The current list state is recorded in a new file called "meta.ini" in your REACT folder. The values in this INI are eventually used to replace tokens with values when your config runs. The INI is updated any time that you update or delete an item.

Setting Defaults

Default tokens and their values can be set in the REACT.ini file, under the newly created DefaultMetaData section. When REACT is initially opened, or the user changes a disc, the token values are reset to these defaults. The dialogue allows you to quickly and easily amend the token values on a per disc basic, rather than having to edit the INI manually (see 'A Basic Alternative').

A simple example would be the @discnumber@ and @totaldiscs@ tokens, which are initially set to a default of '1'. If you are ripping a multi-disc album you can alter these values as required, in the knowledge that they will revert to '1' when a new disc is inserted. The article 'REACT:Adding Support For Disc Information' details config changes that will use these tokens to add disc information to your files, and amend the folder structure, if @totaldiscs@ exceeds one.

Processing Tokens

Your additional tokens are inserted into any cuesheets created using REM statements, so are available to ACDIR, and any other application that can parse cuesheets with REM statements. Album-level tokens are added at the top of the cuesheet, with the other global values. Track-level tokens are added beneath the appropriate TRACK statement. Therefore, if you are ripping to an image, you can still use these values with any tracks you create, using ACDIR's $R{} and $r{} syntax, e.g.: $R{DISCNUMBER} and $r{COMPOSER}.

If you do not want certain tokens added to the cuesheet you can prefix the token name with an underscore, e.g.: @_disctype@. These are assumed to be temporary, or processing, tokens, used purely for conditionally executing sections of your config.

Track-Level Tokens

Most tokens are album-related. If you want to set track-level tokens you should use the format <token name>[<track number>], e.g.: composer[1] to set the composer token value for track one. Your config should refer to the token only by name, e.g.: @composer@. When processing track one, @composer@ will be replaced by the value of composer[1], when processing track two, @composer@ will be replaced by the value of composer[2], etc.

Using The Tokens

You can use both @ and $-style tokens in your config. When using $ tokens any integer value will be zero-padded ("4" -> "04") and any string values will be converted to a filename-friendly value, using the standard REACT character replacement. Therefore, if you create a token called discname you can use @discname@ when tagging, and $discname$ when creating a file or folder name.

A Basic Alternative

If you want to use additional tokens in your config but do not want to use this mod you can add additional variables to the existing UserTrackFormats, UserOutputNames, and, more pertinently, UserSettings sections of REACT.ini. You will need to update these variables by hand in a text editor if the value required for the disc you are ripping differs from the current value set.


2.0.ssb5, 03/05/07

  • First public release.

2.0.ssb6, 04/05/07

  • Additional Meta Data dialogue made child of EAC window.
  • Changed function prefix from fGUI to fDiag to save confusion.

2.0.ssb8, 14/05/07

  • Moved default values into REACT.ini.
  • Fixed the code that writes track-level meta data to the cuesheet.
  • Current token values now stored in "meta.ini", not "metadata.ini".
  • Moved a little more code from the main source file into the include.

2.0.ssb9, 14/05/07

  • Track cuesheets now supported.

2.0.ssb10, 30/05/07

  • Added underscore prefix to identify temporary tokens.
  • Fixed REACT issue with "%" in any field. ( post )
  • Fixed REACT issue with "&" in the track name when using REACT-track.cfg. ( post and post )

2.0.ssb11, 01/07/07

  • Works with new- (EAC 0.99 prebeta 1) and old-style (EAC 0.95 beta 4 and earlier) log files. ( post )
  • Will only rewrite INI file on major or minor version change, not a new build.

2.0.ssb12, 02/07/07

  • Log file handling now works correctly for track ripping.

2.0.ssb13, 04/07/07

  • Reverted cover filename to "<album>.jpg" irrespective of EAC version. ( post )

2.0.ssb15, 17/07/07

  • Reverted @albumfile@ to "<sourcedir>\<album>", irrespective of the EAC version. ( post )
  • Add Test=1 under the Settings section of REACT.ini to use Test and Copy mode.

2.0.ssb16, 29/07/07

  • Fixed issues with meta data changing mid-process. meta.ini is now only updated with the GUI values immediately before a rip begins.
  • Fixed bug with @ and $ values. @totaldiscs@ will now correctly return "3", while $totaldiscs$ will return "03".

2.0.ssb16b, 15/08/07

  • Fixed issue with log file name when ripping a VA album to tracks ( post ).

2.0.ssb16c, 21/08/07

  • Add CoverDownloaderXUI=1 to the [Settings] section of your REACT.ini when using Album Art XUI, and REACT will cope with JPEG, GIF, and PNG album art ( post ).

2.0.ssb16d, 21/08/07

  • Added BMP support to above.

2.0.ssb16e, 23/08/07

  • Fixed bug with above, where the artist and album did not change with the disc.

2.0.ssb16f, 11/09/07

  • Hitting Ctrl+F2 to reconfigure EAC will now ensure that the working directories used by EAC are in synch ( post and post ).

2.0.ssb16g, 17/09/07

  • You can now process an existing wav/cue/log(/jpg) file-set by passing the full cuesheet path to REACT as a single parameter. This will treat the files as if they had just been created by EAC as per normal execution.

2.0.ssb16h, 17/09/07

  • Set CoverDownloaderLocalPath, in the [Settings] section of your REACT.ini, to the path of your existing album art if you would rather chose those over any downloaded using the cover downloader. You may use $artist$ and $album$ tokens in the path, e.g.:
CoverDownloaderLocalPath=C:\Documents and Settings\My Name\My Documents\My Music\$artist$\$album$\folder.jpg

2.0.ssb16i, 12/11/07

  • Fixed a bug with CreateAllCuesheets when detecting gaps is required ( post ).
  • Reinstated TracksHotVal, after unwittingly removing the functionality.

2.0.ssb16j, 14/11/07

  • Artist and album names are now correctly escaped in the album art command lines ( post ).
  • Apostrophes in the log file name are now correctly replaced with a space (in track mode) ( post ).

2.0.ssb16k, 16/11/07

  • 2.0.ssb16j was a disaster! Apostrophes no longer wrongly replaced, and double quotes now simply removed from album art command line. ( post ).
  • UserOutputNames INI section no longer escaped, so you can again use Window's tokens, e.g.: %USERPROFILE% ( post ).
  • REACT now checks that EAC is the active window before sending the commands to create the four cuesheets.


REACT 2.0.ssb16k

Updated CFG files

The zip below includes updated REACT.ini, REACT-track.cfg and REACT-image.cfg files, utilising various aspects of this mod, including (but not restricted to) support for TAK, the ampersand fix, and disc-related tags.