Help - Search - Members - Calendar
Full Version: REACT 2 Released
Hydrogenaudio Forums > Hydrogenaudio Forum > Validated News
Pages: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28
Akkurat
QUOTE(Synthetic Soul @ Nov 30 2007, 13:29) *

QUOTE(Akkurat @ Nov 30 2007, 10:48) *
But I don't understand why the post count should matter? Although isn't 36 pages or 896 replies (and counting) enough for one thread?? I say it's more than enough.
There is a difference between using more than one thread, and suggesting a dedicated forum with subforums.

I think a "REACT Wishlist" thread makes sense. A "REACT development" thread makes sense, if more than one person is developing. FAQs, guides and help are far better suited to a wiki. We have one of those, and I'm the only one who has written any supplimentary guides thus far (IIRC).

Sounds fine, except I think that for support/helping with problems there should be a place where users could create new topics per one problem/user. That way problems would be easier to handle.. to helpers and helpees & help searchers (if people write good topic descriptions).

What if you take control of the forum, wikis and such and rest of us (me, Nago, ?) would take care of other aspects of REACT.. mainly development and main support? Or do you want to ditch all responsibilities?
Synthetic Soul
HA is all the forum I need for now, thank you.
Akkurat
QUOTE(Synthetic Soul @ Nov 30 2007, 14:24) *

HA is all the forum I need for now, thank you.

I meant that in this HA forum.

EDIT: maybe we all should take a little break and think about the role we would like to take in the future.
Synthetic Soul
QUOTE(Akkurat @ Nov 30 2007, 12:12) *
What if you take control of the forum, wikis and such and rest of us (me, Nago, ?) would take care of other aspects of REACT.. mainly development and main support? Or do you want to ditch all responsibilities?
QUOTE(Akkurat @ Nov 30 2007, 12:30) *
I meant that in this HA forum.
I don't wish to 'take control' of anything. I post to this thread, as I do to many others, to help our members. This thread and the wiki are community property, and should remain so. Anyone can post to this thread, and proven members can write in the wiki. That's the way it should be. The benefit of both a forum and a wiki is (supposed to be) that multiple people can contribute. It would be wrong for me to claim responsibility for this thread or the wiki artticles, and I wouldn't want to.

QUOTE(Akkurat @ Nov 30 2007, 12:12) *
EDIT: maybe we all should take a little break and think about the role we would like to take in the future.
This all does seem to be getting a little confused.

I wonder whether a short-term resolve would be for me to add your amends (which look fine to me) and nago's amends to b16m and release it as b16n. Depending what is decided , this could then be my final release. This would give everyone some time to take stock.
nago
to SyntheticSoul, Akkurat: my take on developing react any further is that I am "working on it" and am working on something at the moment. I'm still familiarizing myself with AU3 and I'm trying to work out all the kinks, I have yet to look over the changes in 16m, I have a little project I'm working on first.

Still, the project belongs to Tycho. I am still not clear what his current position on React is; if he intends to develop it any further, or if he is done for now.

Would I like to maintain react (or a mod)? to a point, yes. I'm very interested in the project and I'd like to see all the kinks hammered out, though I'm not a very experienced coder (I manage to get by alright, but at a much slower pace than SS) and at this point I don't feel confident just jumping in and taking over what Synthetic Soul has done. I'd feel a lot better assisting SyntheticSoul, though he's made it very abundantly clear that he's through with this for now.

Synthetic Soul has announced a great difficulty in taking over a project that was written by someone else in a different mindset, imagine how difficult it must be to take over THAT project and have to deal with two trains of thought that aren't yours?

I think the best solution would be to patch up 2.0+ssb16m as best as we can, but then focus on a ground-up rewrite of a new version if we wish to add any significant features, though this should probably be handled by tycho if HE'S interested.

I don't know. Why don't we just chill out for a while? It's time for the holiday season. Get some eggnog... Have a blast.... =)
Martin H
I really do not hope that Synthetic Soul decides to leave REACT development for good, as it would be a terrible waste for all the REACT users, to loose such a great asset sad.gif I myself would much rather preffer to have nago and Akkurat just make there own mods if they wan't to and just add them to there own section of the REACT mods wiki page. This way, then Synthetic Soul could focus on the things that he finds important/interresting and then others could take REACT into whatever direction they feel is best in their mindset.

@Synthetic Soul

If you decide to quit, then i just wanted to say thank you so much for all your great work on keeping REACT up-to-date in Tycho's absence, and i personally really hope that you will reconsider, but just please know that if you do decide to quit, then you will surely be missed sad.gif
Synthetic Soul
QUOTE(nago @ Nov 26 2007, 20:48) *
Hello! It's time for more REACT questions! Answer Riddles, Win fabulous prizes!
Completely missed this post.

QUOTE(nago @ Nov 26 2007, 20:48) *
1) Why does the ACDIR track split section of images.cfg have its own ini settings? ($n $~t [$~a]) -- My take is that these are used internally by ACDIR and not replaced by REACT. Do they offer some significant benefit over using something like $track$ - $title$ [$artist$]?
Good question. As you say ACDIR does use its own token system, but I can't think of any reason why you couldn't just use REACT tokens, which would give you the added benefit of using REACT's illegal character substitution. Remember that you would have to use $q@artist@$q in place of $#a.

However, remember this would only work for album-level values. ACDIR is parsing a whole album, and therefore $~t will refer to the title of the track currently being processed. With this is mind, you cannot escape using ACDIR tokens for track-level values.

QUOTE(nago @ Nov 26 2007, 20:48) *
2) Does TAK not support ReplayGain? Is there a reason TAK RG is absent from the tracks.cfg in ssb16l?
You can write RG tags to TAK, but TAK does not have its own gain calculator, unlike FLAC and WavPack - or metamp3 for the MP3 files.

QUOTE(nago @ Nov 26 2007, 20:48) *
3) What does the DebugMode setting in the .ini do? Why's it separate from the regular 'Debug' setting?
I added DebugMode, and it's really a dev setting, to see what the REACT application is doing in certain situations, rather than the config. It's only really useful for bug reporting REACT, rather than debugging your config. Setting DebugMode to 1 will result in various text being written to a file called debuggng.txt in the REACT directory. It will not affect the batch file like Debug.

QUOTE(nago @ Nov 30 2007, 20:50) *
Still, the project belongs to Tycho. I am still not clear what his current position on React is; if he intends to develop it any further, or if he is done for now.
Me either, and I'm very concerned about cutting him even further out of the loop. I rather fell into the role of REACT maintainer, after adding the Additional Meta Data dialogue, and then further with EAC 0.99 and the new log file naming. I have always been concerned about my position, and certainly never intended to be seen as the sole developer.

QUOTE(nago @ Nov 30 2007, 20:50) *
I'd feel a lot better assisting SyntheticSoul, though he's made it very abundantly clear that he's through with this for now.
I'm certainly uncomfortable hacking REACT any further to resolve some minor issues that don't appear to affect the majority of REACT users.

QUOTE(nago @ Nov 30 2007, 20:50) *
Synthetic Soul has announced a great difficulty in taking over a project that was written by someone else in a different mindset, imagine how difficult it must be to take over THAT project and have to deal with two trains of thought that aren't yours?
I have never meant to say that. What I have said is that some of the unresolved (or recently resolved) issues would be easier if the core REACT methodology was different. I think tycho's methodology has proved very successful thus far, and I've always found the code to be well thought out. On the other hand, some of the fixes I've made - certainly more recently - are probably not very pretty.

QUOTE(nago @ Nov 30 2007, 20:50) *
I don't know. Why don't we just chill out for a while? It's time for the holiday season. Get some eggnog... Have a blast.... =)
Indeed. Hopefully we will be better occupied over the festive season. biggrin.gif

QUOTE(Martin H @ Nov 30 2007, 23:36) *
If you decide to quit, then i just wanted to say thank you so much for all your great work on keeping REACT up-to-date in Tycho's absence, and i personally really hope that you will reconsider, but just please know that if you do decide to quit, then you will surely be missed
Thanks for the kind words Martin. smile.gif

The crux of the biscuit is that I have no real interest in progressing REACT 2. IMHO it works fine as it is, 99.5% of the time. I have actively fixed bugs like the log file naming, as these are issues that would affect all users.

Whatever the outcome I will certainly still play an active role in this thread, just as I try to be active in other threads on HA that interest me. So, if you are more worried about my support being dropped then please don't worry. With regard to my discussions with Akkurat: what I am not prepared to do is stand up and say that I will be "forum and wiki God" and will control all support. I will support where I can, when I choose, just as you have done, and many, many others. I realise that I have been one of the most active in this thread, but we should not forget - or dissuade - the valuable input of others, like yourself.
Akkurat
QUOTE(Synthetic Soul @ Nov 30 2007, 15:30) *
QUOTE(Akkurat @ Nov 30 2007, 12:12) *
What if you take control of the forum, wikis and such and rest of us (me, Nago, ?) would take care of other aspects of REACT.. mainly development and main support? Or do you want to ditch all responsibilities?
QUOTE(Akkurat @ Nov 30 2007, 12:30) *
I meant that in this HA forum.
I don't wish to 'take control' of anything. I post to this thread, as I do to many others, to help our members. This thread and the wiki are community property, and should remain so. Anyone can post to this thread, and proven members can write in the wiki. That's the way it should be. The benefit of both a forum and a wiki is (supposed to be) that multiple people can contribute. It would be wrong for me to claim responsibility for this thread or the wiki artticles, and I wouldn't want to.

First I must apologize for my bad choice of words, I had 3 hours of sleep behind me. But your response was uncalled-for as I see it as a indirect attack towards me. There's clearly tension between us, which I don't understand at all. I didn't come here to fight, but I've got to mention that you must have understood what I meant and you shouldn't speak that we're on the same line and "..take on the mantle" & "successor can deal.." at the same time. I'm done with this subject. No harm intended.

QUOTE(Synthetic Soul @ Nov 30 2007, 15:30) *
I wonder whether a short-term resolve would be for me to add your amends (which look fine to me) and nago's amends to b16m and release it as b16n. Depending what is decided , this could then be my final release. This would give everyone some time to take stock.

Fine by me.

QUOTE(nago @ Nov 30 2007, 22:50) *
I think the best solution would be to patch up 2.0+ssb16m as best as we can, but then focus on a ground-up rewrite of a new version if we wish to add any significant features

Sounds good. Initially I had thoughts to add some additional features without rewrite but I ditched that idea. Currently I'm thinking of building a GUI settings based react "imitation" with no ini/cfg user editing possibilities. But it's still on the thinking state.

QUOTE(Synthetic Soul @ Dec 1 2007, 11:31) *
QUOTE(nago @ Nov 30 2007, 20:50) *
Still, the project belongs to Tycho. I am still not clear what his current position on React is; if he intends to develop it any further, or if he is done for now.
Me either, and I'm very concerned about cutting him even further out of the loop. I rather fell into the role of REACT maintainer, after adding the Additional Meta Data dialogue, and then further with EAC 0.99 and the new log file naming. I have always been concerned about my position, and certainly never intended to be seen as the sole developer.

I really don't understand why you're so cautious. If I remember correctly, his last post to this thread is from 1 year ago.. anyways, he's been away for very long time. Which although doesn't mean anything; everyone is free to fork his original REACT as long as you follow his restrictions of "any purpose permission". Do what you want, acknowledge his input and stop the unnecessary bowing to the king.. I bet that Tycho also would like to see REACT/mods grow, if not, he should have restricted the code. I'm not trying to be rude or anything (although some of you may think that I'm rude without even trying smile.gif), this is just how I see the situation.
nago
QUOTE(Synthetic Soul @ Dec 1 2007, 04:31) *
Completely missed this post.

Thanks for the answers. smile.gif

QUOTE(Synthetic Soul @ Dec 1 2007, 04:31) *
Me either, and I'm very concerned about cutting him even further out of the loop.

Couldn't have said it better myself. I don't want to offend, as he's done a fantastic job. I don't mind tinkering with your code, since I've at least talked to you. I've never even 'met' tycho... It seems rude to try to maintain a project of someone you've never met!

However, if he were to give us his blessing, I'd feel a lot better monkeying around with his code.

QUOTE(Synthetic Soul @ Dec 1 2007, 04:31) *
I have never meant to say that. What I have said is that some of the unresolved (or recently resolved) issues would be easier if the core REACT methodology was different. I think tycho's methodology has proved very successful thus far, and I've always found the code to be well thought out. On the other hand, some of the fixes I've made - certainly more recently - are probably not very pretty.

I didn't mean to insult tycho's coding, It's just a matter of fact that it's hard to adapt to someone else's style, especially if you're not particularly experienced. It can't have been easy for you, and I doubt it'd be easier for anyone else to inherit this at this point. All I meant was that for efficiency's sake, it would just likely be easier to start over. As Tycho's program stands, however, it works 99.9% of the time for the features it advertises, so certainly no complaints against Tycho.

QUOTE(Synthetic Soul @ Dec 1 2007, 04:31) *
Indeed. Hopefully we will be better occupied over the festive season. biggrin.gif

Cheers!



QUOTE(Synthetic Soul @ Dec 1 2007, 04:31) *

The crux of the biscuit is that I have no real interest in progressing REACT 2. IMHO it works fine as it is, 99.5% of the time. I have actively fixed bugs like the log file naming, as these are issues that would affect all users.

This is where I think I fit in. I'm very interested in developing the tracks mode much, much further. I know that you and Tycho don't have much interest in it, so that's why I figure I could help out. I've been modifying my version to accommodate a track ripper quite a bit more, and I've just been polishing and bug testing mostly. If you're interested, I'll post what I've done under the mods section of the wiki; except I did already try but it said it was locked. Who do I need to contact about that, again?




Akkurat: You mentioned you made some fixes since 22b16m? What changes did you make, and what do they fix? could I see the source?
Synthetic Soul
QUOTE(Akkurat @ Dec 1 2007, 14:01) *
First I must apologize for my bad choice of words, I had 3 hours of sleep behind me. But your response was uncalled-for as I see it as a indirect attack towards me. There's clearly tension between us, which I don't understand at all. I didn't come here to fight, but I've got to mention that you must have understood what I meant and you shouldn't speak that we're on the same line and "..take on the mantle" & "successor can deal.." at the same time. I'm done with this subject. No harm intended.
I feel that I have to respond to this... but I really do not know what to say. I can't see how my post was an attack of any sort. I don't really understand the bit about "the same line".

QUOTE(Akkurat @ Dec 1 2007, 14:01) *
I really don't understand why you're so cautious. If I remember correctly, his last post to this thread is from 1 year ago.. anyways, he's been away for very long time. Which although doesn't mean anything; everyone is free to fork his original REACT as long as you follow his restrictions of "any purpose permission". Do what you want, acknowledge his input and stop the unnecessary bowing to the king.. I bet that Tycho also would like to see REACT/mods grow, if not, he should have restricted the code. I'm not trying to be rude or anything (although some of you may think that I'm rude without even trying smile.gif), this is just how I see the situation.
I do see what you're saying, in part, but I also think that it is only right to acknowledge the creator of a piece of software. It's easy to disect software and suggest improvements; it's not so easy to conceptualise and create something fresh. Given that tycho is the brains behind REACT I would not like to see him excluded in any way.

QUOTE(nago @ Dec 1 2007, 18:16) *
I didn't mean to insult tycho's coding, It's just a matter of fact that it's hard to adapt to someone else's style, especially if you're not particularly experienced. It can't have been easy for you, and I doubt it'd be easier for anyone else to inherit this at this point.
No, I do know that, I just wanted to clarify that I have never meant to complain about the state of the REACT code.

QUOTE(nago @ Dec 1 2007, 18:16) *
This is where I think I fit in. I'm very interested in developing the tracks mode much, much further. I know that you and Tycho don't have much interest in it, so that's why I figure I could help out. I've been modifying my version to accommodate a track ripper quite a bit more, and I've just been polishing and bug testing mostly. If you're interested, I'll post what I've done under the mods section of the wiki
I am very intrigued to hear what plans there are for expanding REACT in general. If you have some ideas and have implemented some updates already I'd be very interested to hear.

QUOTE(nago @ Dec 1 2007, 18:16) *
If you're interested, I'll post what I've done under the mods section of the wiki; except I did already try but it said it was locked. Who do I need to contact about that, again?
The wiki was open to all members, but a little while back was locked down due to continued vandalism. Just PM Jan S. and ask him for access.

QUOTE(nago @ Dec 1 2007, 18:16) *
Akkurat: You mentioned you made some fixes since 22b16m? What changes did you make, and what do they fix? could I see the source?
Akkurat made some nice improvements to the CreateAllCuesheets code. I would post 2.0.ssb16n but I seem to be locked out of my website.
nago
QUOTE(Synthetic Soul @ Dec 1 2007, 17:12) *

I am very intrigued to hear what plans there are for expanding REACT in general. If you have some ideas and have implemented some updates already I'd be very interested to hear.

It'll be a present for Christmas. emot-toot.gif It's not all THAT much yet, but it takes me a while to learn the ropes of a new scripting language. I'm finding that AU3 is needlessly picky about conditional statement syntax... tongue.gif I'm hammering out quite a few things yet, but when I feel it's ready for a testing phase, I'll be sure to at least let this thread know about it.
QUOTE(Synthetic Soul @ Dec 1 2007, 17:12) *
Akkurat made some nice improvements to the CreateAllCuesheets code. I would post 2.0.ssb16n but I seem to be locked out of my website.

I'm eager with shiny eyes. biggrin.gif
Synthetic Soul
QUOTE(Synthetic Soul @ Nov 28 2007, 15:50) *
QUOTE(Akkurat @ Nov 28 2007, 15:09) *
EDIT: Actually I'm not quite sure (haven't checked) that the Global $gui_album and $gui_artist variables contains true values all the way thru the code. The variables maybe changed in the source after they've been read initially. Bad design, create new FINAL varibles and use them if $gui_album and $gui_artist are not suited for this task.
The processing instance of REACT has no knowledge of $gui_album and $gui_artist. I don't think that it could extract the values from the EAC main dialogue, because at the time it runs EAC should be focussing the ripping dialogue instead.
I have just realised that this is definately not a good option. The processing instance cannot rely on the information displayed in the GUI, as it may not reflect the disc currently being processed.

This is definately true if the Compression Queue is being used.

I actually realised this today, while documenting what I feel to be "interesting" information that needs to be considered when updating REACT 2, or writing a replacement. It could really been seen as a merging of some of the crucial points that have been discussed in the thread (and possibly the REACT 1 thread). I haven't worked out the best way to post this information, in case anyone finds it of use, but I certainly intend to.
singaiya
Just trying out REACT 2, and I've run into these problems:
  1. When in track mode (F4), why does the Nero encoder need the user to "press any key to continue" after each track is encoded?
  2. If I use F10 and then split the tracks, the tak image is not deleted.
  3. In either mode, Nero AAC tracks don't get tagged.

Any tips appreciated, especially the AAC tagging issue. I have NeroAacTag.exe in the tools directory, but don't have a clue how to configure REACT to use it instead of Atomic Parsley.
nago
1) Just tried it out, I don't get any such message. Did you leave "Debug" mode on? Because that's what it does.

2) I believe this is because in image mode, it is assumed that you want to keep the image, otherwise you'd rip to tracks mode, no? I could be mistaken, but I think this is a "Feature" and not a bug.

3) Huh. I just tried with the latest Nero AAC codec and I see this too. Maybe the flags have changed since Tycho coded for NeroAac? I'll look into it...
Synthetic Soul
QUOTE(singaiya @ Dec 5 2007, 06:15) *
Just trying out REACT 2, and I've run into these problems:
  1. When in track mode (F4), why does the Nero encoder need the user to "press any key to continue" after each track is encoded?
  2. If I use F10 and then split the tracks, the tak image is not deleted.
  3. In either mode, Nero AAC tracks don't get tagged.
Any tips appreciated, especially the AAC tagging issue. I have NeroAacTag.exe in the tools directory, but don't have a clue how to configure REACT to use it instead of Atomic Parsley.
2. nago hit this one on the head really. Why use TAK in image mode and then not want the image? If you want to use image mode but not keep the image (which I know has some benefits) use set ImageExt=wav in your INI

3. Check this post. If that doesn't help try searching this thread for neroaactag (search box, bottom left of thread page) or setting Debug=1 and posting here what command you are using.
nago
QUOTE(Synthetic Soul @ Dec 5 2007, 04:22) *

3. Check this post. If that doesn't help try searching this thread for neroaactag (search box, bottom left of thread page) or setting Debug=1 and posting here what command you are using.


This solution works very well. Make sure to copy the entire block of code over the existing Nero AAC block to get VA and embedded cover support.

One thing it is missing is support for Synthetic Soul's additional metadata, though.
...Which leads me to a question of my own. Looking over the metadata code in tracks.cfg, how does it add the additional user-added stuff to the track? Or is it just there simply for users to be able to add that sort of thing?
Synthetic Soul
QUOTE(nago @ Dec 5 2007, 19:54) *
Looking over the metadata code in tracks.cfg, how does it add the additional user-added stuff to the track? Or is it just there simply for users to be able to add that sort of thing?
Yes, it's up to the user to amend the config accordingly. The dialogue is merely an easy way for the user to deal with additional tokens in their config. The user must edit their config to deal with any new tokens they choose to add.
Dave_K
I've just installed REACT, but it seems to have stopped my installation of EAC from accessing freedb. It was working perfectly minutes earlier, and I can still access freedb in other applications. It isn't a firewall issue and I've tried different servers without any success. Even reinstalling EAC hasn't fixed it. Any ideas?

Also, I'm very confused about how to create a single album image using this tool. I can see how to create individual tracks in different formats, but what if I want all the tracks to be stored as a single file?

I've been looking for a way of quickly backing up my CDs to FLAC images with embedded cue sheets so I'd really like to get this utility working.

Thanks.
nago
QUOTE(Dave_K @ Dec 5 2007, 17:30) *

I've just installed REACT, but it seems to have stopped my installation of EAC from accessing freedb. It was working perfectly minutes earlier, and I can still access freedb in other applications. It isn't a firewall issue and I've tried different servers without any success. Even reinstalling EAC hasn't fixed it. Any ideas?

Also, I'm very confused about how to create a single album image using this tool. I can see how to create individual tracks in different formats, but what if I want all the tracks to be stored as a single file?

I've been looking for a way of quickly backing up my CDs to FLAC images with embedded cue sheets so I'd really like to get this utility working.

Thanks.


1) You need to enter your email to be able to use freedb, look under the File menu and click "Freedb configuration" (F12). If it isn't an issue with your email, you might need to switch the server you're using, click the "get active servers" button and pick a new one.

2) In the .ini file, set the "image extension" (ImgExt) to "flac" instead of "wav", and use F10 to invoke the images ripping process instead of using F4 to invoke the tracks ripping instance.
Also, make sure you start EAC by clicking the react exe every time you start it up, otherwise the hotkeys wont work.

Hope this settles it for you.
smile.gif
Dave_K
QUOTE(nago @ Dec 6 2007, 00:40) *

1) You need to enter your email to be able to use freedb, look under the File menu and click "Freedb configuration" (F12). If it isn't an issue with your email, you might need to switch the server you're using, click the "get active servers" button and pick a new one.


My working email address is still entered so I don't think that's the problem. I tried clicking "Get active freedb server list", but it comes up with "Error - Can't connect host". The same error message as when I try to get CD information.

QUOTE(nago @ Dec 6 2007, 00:40) *

2) In the .ini file, set the "image extension" (ImgExt) to "flac" instead of "wav", and use F10 to invoke the images ripping process instead of using F4 to invoke the tracks ripping instance.
Also, make sure you start EAC by clicking the react exe every time you start it up, otherwise the hotkeys wont work.


That was the first thing I tried but it doesn't seem to work. It creates the directory structure for the flac image, and places the cue sheet there, but doesn't open the encoder window at all. If I set it to create individual flac files then that works fine, so it isn't a problem with the flac encoder. I am starting EAC using REACT.exe and am using F10 to start the process. I was wondering if anything needed to be changed in the REACT-image.cfg before flac image ripping would work?
nago
In that case, I don't know why FreeDB would have stopped working, react doesn't modify anything to do with FreeDB apart from enabling the setting that fetches stuff from FreeDB manually...
Try starting eac without react and see if freedb works again. If not, try reinstalling EAC. not the most graceful solution, but I can't think of anything else.

For flac images... This should work by default. If the encoder window isn't opening (I assume it's just finishing so quickly that you don't catch it), the commands are probably getting passed incorrectly to ACDIR somehow, and it's erroring out.

Set "Debug=1" in your ini file, this will keep the encoder window open in case of an error, and will leave the .bat files behind after processing is done so you can go in and see what went wrong.
The encoding window should stay open for you to look at; if you see an error in there, can you let me know what it is?

singaiya
nago & Synthetic Soul, thank you for the help.

1. Indeed I did have debug=1 for some reason.
2. SS: I was ripping to tracks using F10 simply because in the readme.html it says in the examples for tracks to use F10, or alternately to use F4 with some shortcomings. Then when I found your wiki page on setting up Tak, I blindly copied the ImageExt=tak instructions without realizing that it meant it would leave the image. It makes sense, it's just that I followed the wiki instructions to the letter instead of thinking smile.gif
3. Thanks for the link. Last night I searched the thread for "nero tagging" instead of neroaactag and didn't find that post. I've copied the code and am just waiting for freedb to come back online to try the next disc out.

Thanks again!
nago
QUOTE
I've copied the code and am just waiting for freedb to come back online to try the next disc out.


Dave_K: This is probably your FreeDB problem, then...
bilbo
Someone on the EAC forum mentioned that freedb has changed their address to:

http://freedb2.org:80/~cddb/cddb.cgi

This now workes for me.
Dave_K
QUOTE(nago @ Dec 6 2007, 01:38) *

In that case, I don't know why FreeDB would have stopped working, react doesn't modify anything to do with FreeDB apart from enabling the setting that fetches stuff from FreeDB manually...
Try starting eac without react and see if freedb works again. If not, try reinstalling EAC. not the most graceful solution, but I can't think of anything else.


From the sound of it the occurence of the freedb problem is just a coincidence, not something related to the installation of REACT. I'll read the EAC forum and hopefully work out how to get it connecting to freedb again. Still, it's funny how Foobar's tagging still seems to work when it's a freedb problem, maybe Foobar updates automatically.

QUOTE(nago @ Dec 6 2007, 01:38) *

For flac images... This should work by default. If the encoder window isn't opening (I assume it's just finishing so quickly that you don't catch it), the commands are probably getting passed incorrectly to ACDIR somehow, and it's erroring out.

Set "Debug=1" in your ini file, this will keep the encoder window open in case of an error, and will leave the .bat files behind after processing is done so you can go in and see what went wrong.
The encoding window should stay open for you to look at; if you see an error in there, can you let me know what it is?


I think this is the relevant section of the encoder output:

CODE
D:\Rips>C:\PROGRA~1\REACT2\tools\flac.exe -5 -f --replay-gain -T "artist=Rema R
ema" -T album="Wheel in the Roses" -T totaltracks="4" -T date="1980" -T genre=""
-T comment="Created with EAC/REACT2, 2007-12-06" -T encoding="Flac 1.1.3 -5 -f"
--tag-from-file="cuesheet=D:\Rips\Rema Rema - [1980] Wheel in the Roses.cue" --
tag-from-file="eaclog=D:\Rips\Wheel in the Roses.log" "D:\Rips\Rtmp660-!.wav" -o
"D:\Rips\Rema Rema - [1980] Wheel in the Roses.flac"
ERROR: (--tag-from-file) can't open file for tag value
Type "flac" for a usage summary or "flac --help" for all options


D:\Rips>MOVE /Y "D:\Rips\Rema Rema - [1980] Wheel in the Roses.flac" "C:\Users\Dave\Music\EAC\images\Rema Rema"
The system cannot find the file specified.


D:\Rips>MOVE /Y "D:\Rips\Rema Rema - [1980] Wheel in the Roses.cue" "C:\Users\Dave\Music\EAC\images\Rema Rema"
1 file(s) moved.


The problem seems to be that it can't add tags from the cue sheet, but I can't work out why. As you can see, the cue sheet is being created in the correct location, and with the correct file name. It's the one file that's moved into the directory created for the files by REACT. Any idea what's going wrong?
Synthetic Soul
It's not the cuesheet, it's the log file.

I'm trying to work out why REACT is looking for "D:\Rips\Wheel in the Roses.log". Are you using EAC 0.99?

Edit: Doh! The correct question would have been: are you using my mod. To which your answer must be: no. smile.gif

The original REACT cannot cope with EAC 0.99 log file naming. Please download my mod and replace the original REACT.exe.


nago
Maybe we should make a new News Item for ssb16n and update the wiki links accordingly so that people don't assume 2.0 is the latest, It's the same mistake I made, too.

On the react wiki thread, we could probably say,
"Download react 2.0 from [here (react 2.0 download thread)], but an updated version exists [here (react mod wiki page)]."
"Support for both 2.0 and 2.0ssb16n is available [here (New support thread)]"

and link to the same thread from the react mod wiki page? I'll leave the decision up to you though, Synthetic Soul. I'll still frequent the thread and help out


Also, I've noticed you've posted b16n... thank you! smile.gif I look forward to tearing it apart testing it for you biggrin.gif
Synthetic Soul
It's a good point; it's happening too frequently now.

I have edited the download post with some nice red text. smile.gif

That should do it, but possibly we may need a wiki page or post (in that thread?) that explains the reasoning.
nago
Hello! Afraid it's time for my weekly REACT questions. I should probably start paying rent for this thread, since I'm in here so much..

I've recently been trying to fully replace AtomicParsley with NeroAacTag and in so doing I have started replacing the disc switches for the MetaData additions.

1) There are some illegal characters that can mess up the DiscName parts, at this line:
CODE
SET trackDir=%trackDir%\$discname$

I've gotten it to mess up quite a bit with Carets (^), where it appends the next line onto the command and does some funny things. I think things either need to be quoted (like "@discname@") or the $$ vars should replace the caret as well.

2) Is there a reason that you cannot have both Discname and Discnumber in your modified .cfg?

3) I assume that this part of the code:
CODE

IF "@discname@" EQU "" GOTO end_discname
SET discName=discname
SET discName=@%discname%@
IF "@discname@" EQU "%discName%" GOTO end_discname

Checks to see if (A) @discname@ is null or (B) @discname@ isn't getting substituted at all and is still literally "@discname@". Correct?
Synthetic Soul
  1. Hmm.. I can se how that would be a problem, the caret is an escape character in DOS. I suppose it could be treated as an illegal character by REACT. I'm not sure about quoting it though, as it needs to appended to a filename IIRC. That said, DOS may be happy doing things like "C:\Folder with a space\"filename.mp3. Don't know.
  2. Not as such, but I didn't think that there was any need to label a disc with a number and a name. I think artists probably give a disc a name so that it's neither simply "Disc 1" or "Disc 2". I'm sure the code could be quite easily changed to record both.
  3. Exactly. smile.gif
nago
QUOTE(Synthetic Soul @ Dec 9 2007, 15:32) *

Hmm.. I can se how that would be a problem, the caret is an escape character in DOS. I suppose it could be treated as an illegal character by REACT. I'm not sure about quoting it though, as it needs to appended to a filename IIRC. That said, DOS may be happy doing things like "C:\Folder with a space\"filename.mp3. Don't know.


Since you know your way around the replacement schemes of REACT better than anyone (possibly perhaps due to Akkurat and My constant pestering...) Could you draw up an example of the easiest way to do this? I don't want to dive in and make an incision and break something else...

Do we have to replace the Caret or is there a way to escape it? I don't know a whole lot about DOS, I feel a little bit lost working with it.
Dave_K
Thanks for your help with this utility. I've now got it ripping CDs just how I wanted.

The only thing that's still confusing me is the way it embeds album art into a FLAC image.

This works fine when using REACT to do the task, the album art shows up in Foobar and it's something I'd like with all my rips. Unfortunately around half of the albums I've tried don't have covers available on the sites searched by Cover Art Downloader, I'd like to add album covers manually when that's the case.

What I can't work out is how to manually replicate the embedding done by REACT using other software. I can see this section of the REACT-image.cfg:

IF %embed_cover%==1 SET Cover_tag=--picture="|image/jpeg|||@cover@"

Yet looking at the tags of a REACT ripped image with successfully embedded album art, it doesn't seem to have that Cover_tag.

The furthest I've got with this is creating a Cover_tag in Foobar and pasting that information into it. That doesn't seem to embed the art, it only displays it when the JPEG is in the same directory. What do I need to do?

Is there any way to have Cover Art Downloader search a local directory? That way I could always download the cover art first...
nago
Edit: To look for local album art, create a "CoverDownloaderLocalPath" in the Settings section of your .ini file, and set this to the path of your existing album art... For instance, you can set it to something like C:\Music\$album$\$artist$\folder.jpg and it'll use that picture if it finds it, but it will open the coverdownloader if it can't. One thing to note is that if you specify a directory here, it could mess stuff up a bit, so specify the exact filename to look for.

Now, this is just my take and I might be wrong. I'm sure Neil will correct me if I'm misleading you smile.gif


As for your question about manually embedding art, I don't think you'll be able to do it from Foobar. The "Cover_Tag" you are trying to set is actually the name of a variable, and the content you are setting this tag with is actually command line options.
So to manually add some cover art, run something like the following command in a prompt: (win+r "cmd")
"C:\Program Files\React\Tools\Flac.exe" --picture="|image/jpeg|||PUTTHEFILENAMEOFTHEJPGHERE" "Flac-Filename-goes-here"
Dave_K
QUOTE(nago @ Dec 10 2007, 23:23) *

Edit: To look for local album art, create a "CoverDownloaderLocalPath" in the Settings section of your .ini file, and set this to the path of your existing album art... For instance, you can set it to something like C:\Music\$album$\$artist$\folder.jpg and it'll use that picture if it finds it, but it will open the coverdownloader if it can't. One thing to note is that if you specify a directory here, it could mess stuff up a bit, so specify the exact filename to look for.


Thanks, that worked fine. A bit of a pain that it can't display everything in the directory, but still better than having to embed them afterwards.
Synthetic Soul
QUOTE(Dave_K @ Dec 11 2007, 00:14) *
QUOTE(nago @ Dec 10 2007, 23:23) *
Edit: To look for local album art, create a "CoverDownloaderLocalPath" in the Settings section of your .ini file, and set this to the path of your existing album art... For instance, you can set it to something like C:\Music\$album$\$artist$\folder.jpg and it'll use that picture if it finds it, but it will open the coverdownloader if it can't. One thing to note is that if you specify a directory here, it could mess stuff up a bit, so specify the exact filename to look for.
Thanks, that worked fine. A bit of a pain that it can't display everything in the directory, but still better than having to embed them afterwards.
Try using:

CODE
CoverDownloaderLocalPath=C:\Music\**\*.jpg

... instead. Take a look at this post for more info. Ensure that you are using Album Art XUI, and have all relevant variables set correctly.

Edit: Actually, in addition to that info, note that you will need to set CoverDownloaderXUI=1 to use XUI's /localImagesPath
nago
Edit: Post outdated, see post below instead!
Akkurat
QUOTE(nago @ Dec 13 2007, 04:18) *
I am sorry to say that I am still having problems with cuesheet generation with REACT.
...
Key point that this demonstration does address:
1) This demo will NEVER mistake one cuesheet for another. At the worst, it skips ones it cannot locate after a delay.

Problems still with ssb16n? The current n-version will not mistake cuesheets for another! + it asks user to try again/stop/ignore if something went wrong.

(This is my quick response.. I was just going to bed (it's 5 o'clock in the morning).. I'll check your post again tomorrow when I've (hopefully) rested brain and eyes.)
nago
Yeah, Akkurat. Sometimes the keysends fail and it has to retry several times, because while it might not mistake the final cuesheets for one another, sometimes it does generate extra cuesheets, or generally act weird... I am guessing it has to do with EAC writing to the .cue files directly and sometimes when the AU3 script runs across them, they are still being written to, so my demo here tries to wait until the files are released.

I didn't mean to insult your fixes! Get some sleep!
nago
I am sorry to say that I am still having problems with cuesheet generation with REACT.

In an effort to understand why this continually fails, I've drafted up a demonstration that works pretty well with a few notable exceptions. Here's the code:

CODE

Global $g_eacTitle = "Exact Audio Copy"
Global $g_eacText = "CD Artist"
Global $g_cueMenu = StringSplit("&Action|Create CUE &Sheet|Multiple WAV Files With Gaps...  (Noncompliant)", "|")
global $CueRetryWait = 10;Frequency in MS to check for Cuesheet or to attempt moving it again
global $CueRetryAttempts = 500;Total times to perform above waiting period, so resultant waiting time is 500*10=5000ms (5 seconds)
global $Cuesheet = "C:\Program Files\Exact Audio Copy\TMP\Indestructible Object.cue"

FileDelete("debug.txt")
fMakeCuesheet("Key","!m","(M)")
fMakeCuesheet("Key","!o","(MC)")
fMakeCuesheet("Key","!s","(S)")
fMakeCuesheet("Menu",$g_cueMenu,"(MG)")

Func fMakeCuesheet($action,$keypress,$suffix)
    FileDelete($cuesheet);Delete any cuesheet that matches the filename we're expecting to prevent renaming an existing cuesheet that may not be what we requested
    if $action = "Key" Then ControlSend($g_eacTitle,$g_eacText, "", $keypress);Send the keypress
    if $action = "Menu" Then WinMenuSelectItem($g_eacTitle,$g_eacText, $keypress[1], $keypress[2], $keypress[3]);Or the MenuSelection
    local $r = 0
    While WinExists("Analyzing","Detecting Track Indices")
        sleep(10)
        $r = $r + 1
    WEnd
    FileWrite("debug.txt",$suffix & "Waited for Index Analysis to Finish... (" & $r & ") repetitions, " & $r * 10 & "ms" & @CRLF)
    local $r = 0
    While WinExists("Analyzing","Detecting Pre-Track Gaps")
        sleep(1000)
        $r = $r + 1
    WEnd
    FileWrite("debug.txt",$suffix & "Waited for Gap Analysis to Finish... (" & $r & ") repetitions, " & $r * 1000 & "ms" & @CRLF)
    local $s = 0;Set the number of attempts to 0
    While Not FileExists($cuesheet);If the file isn't found...
        sleep($CueRetryWait);Sleep for a certain number of milliseconds. In my demo, this is 10ms.
        $s = $s + 1;Increment the number of attempts for looking for the cuesheet.
        if $s = $CueRetryAttempts Then ExitLoop;If the number of retry attempts has reached the maximum amount, give up on this cuesheet.
    WEnd
    FileWrite("debug.txt",$suffix & "Waited for cuefile to exist... (" & $s & ") repetitions, " & $CueRetryWait * $s & "ms" & @CRLF);Write to debug how long we've waited for file to appear.
    If FileExists($cuesheet) Then;If the file does indeed exist...
        local $s = 1
        While FileMove($cuesheet,"C:\Program Files\Exact Audio Copy\TMP\" & $suffix & ".cue",1) = 0;While MoveCuesheet Fails ... (In this case, the renamed file is simply ONLY the suffix, but it's sufficient for this demo)
            sleep($CueRetryWait);Sleep for a certain number of milliseconds again. In my demo, this is 10ms.
            $s = $s + 1;Increment the number of attempts for moving the cuesheet.
            if $s = $CueRetryAttempts Then ExitLoop;If the number of retry attempts has reached the maximum amount, give up on moving this cuesheet.
        WEnd
        FileWrite("debug.txt",$suffix & "Waited to move cuefile... Took (" & $s & ") attempts, " & $CueRetryWait * $s & "ms" & @CRLF);Write to debug how long we've waited for file to appear.
    ;FileWrite("debug.txt",$suffix & "Moving Cuesheet... took " & $s & " attempts." & @CRLF);Write to debug to let it know which condition fired.
    Else;If File didn't exist, most likely because the first loop timed out waiting for it to show up
        FileWrite("Debug.txt",$suffix & "Loop has ended, but file didn't exist... Presumably, ControlSend() failed." & @CRLF);Write to debug to let it know which condition fired.
    EndIf
EndFunc


What happens in the above code:

1) Declare Globals, Delete stagnant debug.txt (if any)
2) Call fMakeCuesheet function for the Multiple w/ Leftout Gaps cuesheet.
3) Delete stagnant cuefile if any
4) Send our Key Press.
5) Wait for Analyzing window to subside (Different loops used for Index detection and Gap detection, so we can stall differently for each.) Waits until Analyzing window goes away.
6) Stall until the cuesheet exists. At this point, since the Analyzing window has subsided, it usually exists at this point, but doesn't always. Waits a maximum of 5 seconds before giving up.
7) Stall until the cuesheet is MOVABLE. Sometimes moving fails the first time, so we loop until we are sure to be able to move it. Waits a maximum of 5 seconds before giving up.
8) Repeat steps 3-7 for remaining 3 cuesheets.


Some sample outputs from the debug.txt, which I feel are very telling about the different stages at which Cuesheet extraction has failed in the past:

Example debug.txt for a CD that has had gaps pre-detected:
QUOTE
(M)Waited for Index Analysis to Finish... (0) repetitions, 0ms
(M)Waited for Gap Analysis to Finish... (0) repetitions, 0ms
(M)Waited for cuefile to exist... (9) repetitions, 90ms
(M)Waited to move cuefile... Took (2) attempts, 20ms
(MC)Waited for Index Analysis to Finish... (1) repetitions, 10ms
(MC)Waited for Gap Analysis to Finish... (0) repetitions, 0ms
(MC)Waited for cuefile to exist... (0) repetitions, 0ms
(MC)Waited to move cuefile... Took (1) attempts, 10ms
(S)Waited for Index Analysis to Finish... (0) repetitions, 0ms
(S)Waited for Gap Analysis to Finish... (0) repetitions, 0ms
(S)Waited for cuefile to exist... (5) repetitions, 50ms
(S)Waited to move cuefile... Took (2) attempts, 20ms
(MG)Waited for Index Analysis to Finish... (0) repetitions, 0ms
(MG)Waited for Gap Analysis to Finish... (0) repetitions, 0ms
(MG)Waited for cuefile to exist... (9) repetitions, 90ms
(MG)Waited to move cuefile... Took (1) attempts, 10ms

Things to notice:
1) Sometimes the script required waiting for the "Index Analysis" window to go away (this is the window you see flicker sometimes when you go to extract cuesheets.) You can see this for the (MC) loop.
2) Sometimes the script required waiting to be able to move the cuesheet, you can see this on the (S) loop.
3) Usually the script needs to wait various periods of time for the cuefile to actually exist. (seen on M, S, and MG loops)

Example debug.txt for a CD that requires Gap Analysis:
QUOTE
(M)Waited for Index Analysis to Finish... (0) repetitions, 0ms
(M)Waited for Gap Analysis to Finish... (14) repetitions, 14000ms
(M)Waited for cuefile to exist... (0) repetitions, 0ms
(M)Waited to move cuefile... Took (1) attempts, 10ms
(MC)Waited for Index Analysis to Finish... (0) repetitions, 0ms
(MC)Waited for Gap Analysis to Finish... (0) repetitions, 0ms
(MC)Waited for cuefile to exist... (2) repetitions, 20ms
(MC)Waited to move cuefile... Took (1) attempts, 10ms
(S)Waited for Index Analysis to Finish... (1) repetitions, 10ms
(S)Waited for Gap Analysis to Finish... (0) repetitions, 0ms
(S)Waited for cuefile to exist... (1) repetitions, 10ms
(S)Waited to move cuefile... Took (2) attempts, 20ms
(MG)Waited for Index Analysis to Finish... (0) repetitions, 0ms
(MG)Waited for Gap Analysis to Finish... (0) repetitions, 0ms
(MG)Waited for cuefile to exist... (2) repetitions, 20ms
(MG)Waited to move cuefile... Took (2) attempts, 20ms

Things to notice:
1) Waits a long period of time only on the first Gap Analysis wait period for (M) loop (14s)
2) Never waits at Gap Analysis for any amount of time ever again.



Remaining Issues this Demonstration does not solve:
1) ControlSend() will fail if the EAC window is minimized, but NOT if the window is merely inactive.


Key Points:
1) It never mistakes cuefiles for the wrong type.
2) Won't fail because it works too fast. (e.g, doesn't get ahead of itself.)
3) Will finish quickly (with loops between 10, 100 and 1000ms) for different checks, potentially finishes even faster than the current CueSheet loop and without repercussion.
4) Good debug output! smile.gif
dd_wizard
Hello all, I love REACT, but I'm having a small problem with meta data. I'm using EAC v0.99pb3 and REACT v2.0.ssb16n, which are the latest for both I believe. I've tweaked my REACT.ini as follows:

[Settings]
...
Test=@testandcopy@
...
...
[UserSettings]
...
Opt_LameMP3=@lameoptions@
...
...
[DefaultMetaData]
...
extractmethod=Secure
testandcopy=0
lameoptions=-V1 --vbr-new --noreplaygain

extractmethod works correctly, both .cfg files put it into TSSE along with the lame settings by . Changing it between Secure, and Burst Test and Copy with Alt-F5 puts the correct string into TSSE. This lets me keep track of the extraction method for tracks in case I find artifacts. I'm still uncertain which is the best method. This meta data isn't accessed in REACT.ini, but the both .cfg files find it.

lameoptions works correctly. I can use Alt-F5 to change lameoptions to -V5 --vbr-new --noreplaygain, and the new settings are passed to lame. I checked the bitrate and encoder setting values in the .mp3 file with Mp3tag, and everything is as expected. The file was encoded with -V5 instead of -V1. This meta data is accessed only in REACT.ini, and the assignment to Opt_LameMP3 is working correctly.

When I change testandcopy to 1 however, EAC just does a copy without a test pass. I tried setting the default value of testandcopy to 1, but that didn't help. If I change Test=@testandcopy@ to Test=1 in the REACT.ini file and save it, EAC does a test and copy.

What in the world am I doing wrong?

EDIT: I know extractmethod is a kludge, but I haven't found a way for REACT to know whether Burst or Secure is selected in EAC. It would be very useful if there was a way to pass that information to REACT.

Thanks,
dd_wizard
nago
QUOTE(dd_wizard @ Dec 13 2007, 03:57) *

What in the world am I doing wrong?


the MetaData is replaced only after the Command Line encoder has been called (after extraction has finished), whereas the "Test" value is required before extraction even begins. I believe the same goes for all User* sections as well. "Test" is at the top for a reason, unfortunately; These settings are read by REACT prior to extraction.


Edit: If you want to know about Secure mode, take a look at HKCU\Software\AWSoftware\EAC\Drive Options\ and under Drive Options will rest a folder with your drive's name in it, and under that there is the key "Extraction Mode". This is the one you want. Burst is 00, Fast is 01..

Secure (+AS -Cache -C2) is 03.
Secure (-AS +Cache -C2) is 04.
Secure (+AS +Cache -C2) is 05.
Secure (+AS -Cache +C2) is 06.
Secure (+AS +Cache +C2) is 07.

You can read these values from the CFG file by using REG QUERY "HKCU\Software\AWSoftware\EAC\Drive Options\Optiarc DVD RW AD-7530A EX32" /v "ExtractionMode"

..filling in for your Drive in where needed, though how to convert this result into a usable variable all from within a .cfg I do not know.

Sorry for getting your hopes up, unless you're some sort of DOS wizard!
dd_wizard
QUOTE(nago @ Dec 13 2007, 01:02) *

Edit: If you want to know about Secure mode, take a look at HKCU\Software\AWSoftware\EAC\Drive Options\ and under Drive Options will rest a folder with your drive's name in it, and under that there is the key "Extraction Mode". This is the one you want. Burst is 00, Fast is 01..

Secure (+AS -Cache -C2) is 03.
Secure (-AS +Cache -C2) is 04.
Secure (+AS +Cache -C2) is 05.
Secure (+AS -Cache +C2) is 06.
Secure (+AS +Cache +C2) is 07.

Sorry for getting your hopes up, unless you're some sort of DOS wizard!


Is DOS unix? LOL That is interesting and worth looking at, so I probably will. I notice that a few variables are available in the [Settings] section, surrounded by $ instead of @. Are those described in this thread? Don't tell me where, I just don't want to wade through every post if it's a fruitless venture.

EDIT: Haha smile.gif. I was just going to edit my post to suggest HKCU instead of my user hive. That's definitely a better idea than the first one.

Thanks,
dd_wizard
nago
QUOTE(dd_wizard @ Dec 13 2007, 04:50) *

I notice that a few variables are available in the [Settings] section, surrounded by $ instead of @.


Variables surrounded by $ are "file-safe" versions. They replace illegal characters. I don't know if they work for all the variables, but I do know they work for all the key ones-- Artist, Album, Title, etc. The wiki only mentions it briefly at the beginning of the article. Look at the HA Wiki for a full list of user-available tokens.

As for UNIX, no, no. I'm just referencing the Registry, where EAC keeps all its settings. You can easily read the registry with "REG QUERY" in the .cfg script, but I don't know how to store the results of that query as a variable so you can convert your findings into a usable tag: I'll be honest, it'd be a lot easier to edit the .au3 sourcefile for react and recompile; using AutoIt's RegRead() function, but if that doesn't sound like a jolly good time to you, I would certainly advise against messing with the AU3 code biggrin.gif Don't be an idiot like me biggrin.gif

Edit: Yeah, it's late. I forgot about HKCU until I realized how ugly my Registry was... kept wondering why I never noticed it being that ugly. Realised I had pointed you to a static user key rolleyes.gif. I'll be going to sleep now happy.gif
dd_wizard
QUOTE(nago @ Dec 13 2007, 01:02) *

the MetaData is replaced only after the Command Line encoder has been called (after extraction has finished), whereas the "Test" value is required before extraction even begins. I believe the same goes for all User* sections as well. "Test" is at the top for a reason, unfortunately; These settings are read by REACT prior to extraction.

Since variables in the [Settitngs] section are replaced when F4 or F10 are pressed, i.e. before extraction begins, is there any chance a future release of REACT will replace MetaData in the same way?

QUOTE(nago @ Dec 13 2007, 01:02) *

Edit: If you want to know about Secure mode, take a look at HKCU\Software\AWSoftware\EAC\Drive Options\ and under Drive Options will rest a folder with your drive's name in it, and under that there is the key "Extraction Mode". This is the one you want. Burst is 00, Fast is 01...

Since it is possible to queue multiple encoding tasks, the registry could reflect the current extraction method rather than the extraction method EAC used for a queued encoding task. Wouldn't it be safer to parse the appropriate log file for "Read Mode :"?

Thanks,
dd_wizard
nago
1) Variables in the [Settings] section aren't replaced, unless you use them in the .cfg. REACT, when it is time to run a compression thread, (e.g, when it is called via command line by EAC) will take the .cfg files and replace the tokens contained within with the "current data" and then rename it as a .bat file, and run it.

So the variables in the .ini only get replaced when they are read in that .cfg script. Because [Settings] are read by REACT directly, they are not replaced, and I doubt this functionality would be implemented any time soon.

For instance, say you press F10 to start tracks mode... REACT issues an IniRead() command of sorts to obtain the value of Test= to see if it should test or not. The variable replacing part only occurs for the .cfg, so direct hits to the .ini don't see anything replaced.

Honestly, why not just use the standard test value?


2) I guess you have a point, but how often are you going to change the extraction method while you're still compressing things? But if you can parse the logfile, godspeed... that does sound a lot easier than murking with the registry, but I just always think of the hard way first smile.gif
dd_wizard
QUOTE(nago @ Dec 13 2007, 11:56) *

Honestly, why not just use the standard test value?


Elegance? smile.gif If I can define all my extraction and encoding settings with MetaData, there's no need to edit the .ini file. Looks like that's not an option for now. And thinking about how an ini file is read by the app, replacing tokens would require some special coding. With all the other enhancements/fixes going on, this would be a really low priority.

Thanks for the answers,
dd_wizard
Akkurat
Dear nago, you didn't insult me or my fixes, nonono. smile.gif Instead you lured me back to REACT... I was taking a vacation from it because I was frustrated.. back on the "stress train" I s'pose, thanks. wink.gif biggrin.gif

QUOTE(nago @ Dec 13 2007, 06:05) *

Remaining Issues this Demonstration does not solve:
1) ControlSend() will fail if the EAC window is minimized, but NOT if the window is merely inactive.

This is something we can't fix.

QUOTE(nago @ Dec 13 2007, 06:05) *

Key Points:
1) It never mistakes cuefiles for the wrong type.
2) Won't fail because it works too fast. (e.g, doesn't get ahead of itself.)
3) Will finish quickly (with loops between 10, 100 and 1000ms) for different checks, potentially finishes even faster than the current CueSheet loop and without repercussion.
4) Good debug output! smile.gif

I looked at your code and debug logs and I thought to test a bit... ended up with the following after many hours:
CODE
- Added your suggestion of "Indices Detection 'Analyzing' window" pause.
- Added your suggestion of "cuefile locked" pause.
    - Plus fixed/added enhancement to it: retry/abort option to user if file locked over 5 secs.
      (I guess REACT shouldn't continue if the file can't be moved (renamed)...?)
- Modified the pauses in the cuesheet generation.
- Modified the "Missing Cuesheet" dialog to only show Retry and Cancel buttons. (Ignore removed because it's foolish to ignore missing cuesheet! Especially if infocuesheet is missing in track mode.)
- Fixed a _very_ rare (if ever) occurring problem with locked cuefile.. anyways, it's covered. :)
- Fixed a problem in the fMoveCuesheet() function when there's a left behind cuesheet.
- + minor changes (debug messages, cuefile deletions, etc.)

PM me and give me your email so I can send you the code. I'd love to hear if these fixes work for you.

Here's my debug log:
CODE
2007-12-14 03:37:18 Creating a cuesheet to glean information
2007-12-14 03:37:20 Waiting for the Gap Detection 'Analyzing' window to disappear
2007-12-14 03:37:21 Waiting for the Gap Detection 'Analyzing' window to disappear
2007-12-14 03:37:22 Waiting for the Gap Detection 'Analyzing' window to disappear
2007-12-14 03:37:23 Waiting for the Gap Detection 'Analyzing' window to disappear
2007-12-14 03:37:24 Waiting for the Gap Detection 'Analyzing' window to disappear
2007-12-14 03:37:25 Waiting for the Gap Detection 'Analyzing' window to disappear
2007-12-14 03:37:27 Waiting for the Gap Detection 'Analyzing' window to disappear
2007-12-14 03:37:28 Waiting for the Gap Detection 'Analyzing' window to disappear
2007-12-14 03:37:30 Waiting for the Gap Detection 'Analyzing' window to disappear
2007-12-14 03:37:31 Waiting for the Gap Detection 'Analyzing' window to disappear
2007-12-14 03:37:32 Cuesheet 'D:\Music\RIPPED\EAC\te'stin g.CUE' moved to 'D:\Music\RIPPED\EAC\REACT.cue'
2007-12-14 03:37:32 Creating cuesheets
2007-12-14 03:37:32 Cuesheet 'D:\Music\RIPPED\EAC\te'stin g.CUE' moved to 'D:\Music\RIPPED\EAC\te'stin'g.[s].cue'
2007-12-14 03:37:33 Waiting for the Indices Detection 'Analyzing' window to disappear
2007-12-14 03:37:33 Cuesheet 'D:\Music\RIPPED\EAC\te'stin g.CUE' moved to 'D:\Music\RIPPED\EAC\te'stin'g.[mg].cue'
2007-12-14 03:37:33 Waiting for the Indices Detection 'Analyzing' window to disappear
2007-12-14 03:37:33 Cuesheet 'D:\Music\RIPPED\EAC\te'stin g.CUE' moved to 'D:\Music\RIPPED\EAC\te'stin'g.[m].cue'
2007-12-14 03:37:34 Cuesheet 'D:\Music\RIPPED\EAC\te'stin g.CUE' moved to 'D:\Music\RIPPED\EAC\te'stin'g.[mc].cue'
2007-12-14 03:37:34 Copy Tracks Beginning...

2007-12-14 03:37:34 - END -

2007-12-14 03:37:45 Creating a cuesheet to glean information
2007-12-14 03:37:45 Waiting for the Indices Detection 'Analyzing' window to disappear
2007-12-14 03:37:46 Cuesheet 'D:\Music\RIPPED\EAC\te'stin g.CUE' moved to 'D:\Music\RIPPED\EAC\REACT.cue'
2007-12-14 03:37:46 Creating cuesheets
2007-12-14 03:37:46 Cuesheet 'D:\Music\RIPPED\EAC\te'stin g.CUE' moved to 'D:\Music\RIPPED\EAC\te'stin'g.[s].cue'
2007-12-14 03:37:46 Waiting for the Indices Detection 'Analyzing' window to disappear
2007-12-14 03:37:46 Cuesheet 'D:\Music\RIPPED\EAC\te'stin g.CUE' moved to 'D:\Music\RIPPED\EAC\te'stin'g.[mg].cue'
2007-12-14 03:37:47 Waiting for the Indices Detection 'Analyzing' window to disappear
2007-12-14 03:37:47 Cuesheet 'D:\Music\RIPPED\EAC\te'stin g.CUE' moved to 'D:\Music\RIPPED\EAC\te'stin'g.[m].cue'
2007-12-14 03:37:47 Waiting for the Indices Detection 'Analyzing' window to disappear
2007-12-14 03:37:47 Cuesheet 'D:\Music\RIPPED\EAC\te'stin g.CUE' moved to 'D:\Music\RIPPED\EAC\te'stin'g.[mc].cue'
2007-12-14 03:37:47 Copy Tracks Beginning...

As you can see the first rip (no gaps detected yet) takes only 2-3 seconds after gaps have been detected to start the actual ripping. The 2nd rip (gaps known) takes only 2 seconds to start the actual rip. Too slow? Are we building a rocket here? wink.gif On the other hand, it's completely fine to trim the procedure if you're planning your fixes to completely new REACT mod.


Have you asked Jan S. for access to wiki? I'll contact him tomorrow.


I still would like to ask somebody if the new REACT forum could be started.. I just don't know who to ask.. Jan S.? It's really hard to communicate/develop/help others here in this one forum thread. Actually this is what is alienating me from REACT development.


And oh yes, almost forgot (hmm, why's that? Look above for explanation.), I'll look at the caret-escaping thing when I've more time. Ok?


And one thing more before I forget it: It would be nice to add the new (better looking) EAC icon to new REACT version.. if/when that happens.


@ Synthetic Soul:
About the last "clash" we had (I said that I was done with this subject.. not); I think we've very hard time understanding each other. That's normal, it happens between some people. I do apologize that I accused you of "attacking" me.
nago
I did get in touch with Jan S for wiki access, but I'm waiting to roll together a few things before I bother editing the wiki. When my edits are complete (or complete enough) I'll post them to this thread first and a few of my friends, do some bug testing, and then I'll post it to the wiki as a beta.

Slow and steady wins the race!
m_l
I would like to Thank everyone for putting in the effort to making REACT such great program. The Wiki helped a lot configuring REACT. I'm now able to rip to flac and mp3 simultaneously. biggrin.gif I'm going to keep an eye thread for updates and the such, would like to help but I'm newb ATM huh.gif


Thank You!!!
dd_wizard
QUOTE(nago @ Dec 13 2007, 11:56) *

1) Variables in the [Settings] section aren't replaced, unless you use them in the .cfg. REACT, when it is time to run a compression thread, (e.g, when it is called via command line by EAC) will take the .cfg files and replace the tokens contained within with the "current data" and then rename it as a .bat file, and run it.

Actually, variables in the [Settings] section are never replaced. If you reference @Test@ or @EAC@ in the .cfg, you get back @Test@ or @EAC@. So I had to use MetaData to pass the value of Test to the .cfg files. The following does what I wanted to do, but would be cleaner if @Test@ was available:
CODE

REM ============== Begin Gene's Mods ==================

REM Test is only performed for non-zero numbers in @Test@
set /A TestPerformed = @testandcopy@ + 0
set ExtractMethod=Copy
IF %TestPerformed% NEQ 0 set ExtractMethod=Test and %ExtractMethod%

REM Prepend EAC's read mode, grep would be a LOT more robust
REM There is one space between the : and Burst, and 15 between the : and Secure
find "Read mode : Burst" "@eaclog@" > NUL
IF NOT errorlevel 1 set ExtractMethod=Burst %ExtractMethod%
find "Read mode               : Secure" "@eaclog@" > NUL
IF NOT errorlevel 1 set ExtractMethod=Secure %ExtractMethod%

REM Add Verified by database to comment if it's set
set CommentField=@Comment@
IF "@verifiedby@" NEQ "" set CommentField=%CommentField%, verified by @verifiedby@
set CommentField=%CommentField%. @curdate@

REM =============== End Gene's Mods ===================

ExtractMethod goes into TSSE as $qEAC %ExtractMethod%; LAME ...$q. Replace LAME ... with the appropriate encoder info in aac, ogg, etc.

1. Is there any particular reason why the variables in the [Settings] section aren't tokenized? This slowed me down quite a bit while I figured out what was going on.

I put the mod in the Image section of image.cfg right after the wait for @eaclog@ is satisfied. I added a wait loop to track.cfg in the Track section ahead of my mod. While testing things, I noticed that REACT.cue gets generated when F4 is pressed to encode in track mode. I added a little code to clean it up and blew away all the files in my music directory, not many and none important. LOL

In track mode, @cuesheet@ is empty, so del "@cuesheet@" becomes del "". Apparantly del "" is the same as del * in unix. blink.gif I guess I'll find the appropriate path variable in the image.cfg and fix the cleanup code I put into track.cfg.

2. If REACT-track.cfg doesn't even know the path to REACT.cue, why is it created when F4 is pressed?

EDIT: That's what I get for testing track mode ripping on one track. @eaclog@ isn't created until the last track is ripped, so checking for the rip mode in the log file works great in image mode but forces all the tracks to queue up in track mode. Back to the drawing board.

Thanks,
dd_wizard
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Invision Power Board © 2001-2009 Invision Power Services, Inc.