+Andrew Davie Posted March 5, 2022 Share Posted March 5, 2022 2 minutes ago, Thomas Jentzsch said: I also wonder how to get the result similar to AtariVox. Festival sounds very different as far as I can tell. As I understand what I have read so far, @JetSetIlly has started with some "placeholder" phonemes. When more refined/correct phonemes are used, it will sound more like AtariVox. In any case, even as it stands it will be excellent for those who want to develop who don't want to have to plug in the hardware to do so. Quote Link to comment Share on other sites More sharing options...
JetSetIlly Posted March 5, 2022 Author Share Posted March 5, 2022 1 minute ago, Thomas Jentzsch said: I also wonder how to get the result similar to AtariVox. Festival sounds very different as far as I can tell. Indeed. But Festival is very flexible and I've not done anything beyond the bare basics yet. I'll work on that this week. However, even if it doesn't sound exactly like the AtariVox, it would serve as a convenient development tool for people without access to the hardware, which is my goal really. Quote Link to comment Share on other sites More sharing options...
Thomas Jentzsch Posted March 5, 2022 Share Posted March 5, 2022 1 minute ago, JetSetIlly said: However, even if it doesn't sound exactly like the AtariVox, it would serve as a convenient development tool for people without access to the hardware, which is my goal really. That makes perfect sense. Or maybe not, if the results differ too much. You often have to experiment a lot with AVox to get the sounds right. So an too much abstracted result will only help in the very beginning of development. Quote Link to comment Share on other sites More sharing options...
JetSetIlly Posted March 5, 2022 Author Share Posted March 5, 2022 1 minute ago, Thomas Jentzsch said: That makes perfect sense. Or maybe not, if the results differ too much. You often have to experiment a lot with AVox to get the sounds right. So an too much abstracted result will only help in the very beginning of development. Good point. I'll bear that in mind. The other thing missing from the Festival solution is the SpeakJet sound effects (codes 200 to 254). Not sure how to get around that. Probably a sample pack. Quote Link to comment Share on other sites More sharing options...
+Andrew Davie Posted March 5, 2022 Share Posted March 5, 2022 3 minutes ago, JetSetIlly said: Good point. I'll bear that in mind. The other thing missing from the Festival solution is the SpeakJet sound effects (codes 200 to 254). Not sure how to get around that. Probably a sample pack. You can produce your own phonemes, is that correct? In that case, high quality recordings from an actual AtariVox might be sufficient to produce these? Quote Link to comment Share on other sites More sharing options...
JetSetIlly Posted March 5, 2022 Author Share Posted March 5, 2022 Just now, Andrew Davie said: You can produce your own phonemes, is that correct? In that case, high quality recordings from an actual AtariVox might be sufficient to produce these? Yes. I think so. 1 Quote Link to comment Share on other sites More sharing options...
Thomas Jentzsch Posted March 5, 2022 Share Posted March 5, 2022 Then it would make much more sense. Quote Link to comment Share on other sites More sharing options...
JetSetIlly Posted March 5, 2022 Author Share Posted March 5, 2022 Just now, Thomas Jentzsch said: Then it would make much more sense. Just to be clear, I'm proposing to use samples for the sound effects only. The speech generation would require an awful lot of samples to cover all the possibilities. I think Festival is flexible enough to not require samples of the speech phonemes. But we'll see. I'll try to improve it this week. If it's still unsatisfactory then it was a worthwhile experiment. 1 Quote Link to comment Share on other sites More sharing options...
Tempest Posted March 5, 2022 Share Posted March 5, 2022 Did you ever release that version of Gopher with the comparison tool? You know, the one you showed off here: https://atariage.com/forums/topic/327474-pitfall-ii-beta/?do=findComment&comment=4953194 Quote Link to comment Share on other sites More sharing options...
JetSetIlly Posted March 5, 2022 Author Share Posted March 5, 2022 1 hour ago, Tempest said: Did you ever release that version of Gopher with the comparison tool? You know, the one you showed off here: https://atariage.com/forums/topic/327474-pitfall-ii-beta/?do=findComment&comment=4953194 Yes. I included it in v0.16.0 https://github.com/JetSetIlly/Gopher2600/releases/tag/v0.16.0 You need to run it from the command line though in order to specify the ROM which you want to compare against. For example. gopher2600 run -comparisonROM roms/prerelease/Solaris.bin roms/SOLARIS.BIN Will run "SOLARIS.BIN" in the main emulation and "prerelease/Solaris.bin" will be run in the comparison window. To keep things easy, the comparison will end the instant you switch to the debugger or rewind the emulation. I'm not sure how useful it is but it works pretty well I think. If you have any ideas for how to improve it then let me know. Quote Link to comment Share on other sites More sharing options...
Tempest Posted March 5, 2022 Share Posted March 5, 2022 17 minutes ago, JetSetIlly said: Yes. I included it in v0.16.0 https://github.com/JetSetIlly/Gopher2600/releases/tag/v0.16.0 You need to run it from the command line though in order to specify the ROM which you want to compare against. For example. gopher2600 run -comparisonROM roms/prerelease/Solaris.bin roms/SOLARIS.BIN Will run "SOLARIS.BIN" in the main emulation and "prerelease/Solaris.bin" will be run in the comparison window. To keep things easy, the comparison will end the instant you switch to the debugger or rewind the emulation. I'm not sure how useful it is but it works pretty well I think. If you have any ideas for how to improve it then let me know. Ah thank you. What version of Linux is your Linux for? I'm using Arch, does it work with that? Quote Link to comment Share on other sites More sharing options...
JetSetIlly Posted March 5, 2022 Author Share Posted March 5, 2022 7 minutes ago, Tempest said: Ah thank you. What version of Linux is your Linux for? I'm using Arch, does it work with that? Maybe. It's compiled for amd64 architecture on Debian so there's a good chance. The only thing which might not be installed by default for you is SDL2 If it doesn't work, let me know and I'll see what I can do. Quote Link to comment Share on other sites More sharing options...
alex_79 Posted March 5, 2022 Share Posted March 5, 2022 I'm using Arch linux too and Gopher2600 works just fine here. Quote Link to comment Share on other sites More sharing options...
Tempest Posted March 5, 2022 Share Posted March 5, 2022 33 minutes ago, alex_79 said: I'm using Arch linux too and Gopher2600 works just fine here. How are you running it? I downloaded the file but my system seems to want to open it in Notepad of all things. Quote Link to comment Share on other sites More sharing options...
JetSetIlly Posted March 5, 2022 Author Share Posted March 5, 2022 2 minutes ago, Tempest said: How are you running it? I downloaded the file but my system seems to want to open it in Notepad of all things. You'll need to set the execute bit. chmod u+x <file> in the command line. I should really zip the files up and distribute them like that. Quote Link to comment Share on other sites More sharing options...
Tempest Posted March 5, 2022 Share Posted March 5, 2022 12 minutes ago, JetSetIlly said: You'll need to set the execute bit. chmod u+x <file> in the command line. I should really zip the files up and distribute them like that. Thank you! I can't believe I didn't think of that... But I still have to run it from the command line to use the comparison feature right? Quote Link to comment Share on other sites More sharing options...
JetSetIlly Posted March 5, 2022 Author Share Posted March 5, 2022 4 minutes ago, Tempest said: Thank you! I can't believe I didn't think of that... But I still have to run it from the command line to use the comparison feature right? You do. For normal operation, it'll run from the desktop and open a file requester but for the comparison feature you'll need the command line. Quote Link to comment Share on other sites More sharing options...
Tempest Posted March 5, 2022 Share Posted March 5, 2022 5 minutes ago, JetSetIlly said: You do. For normal operation, it'll run from the desktop and open a file requester but for the comparison feature you'll need the command line. I can't get it to run from the command line. I can double click it and run the program, but when I try your syntax above I get: Quote >>gopher2600 run -comparisonROM roms/prerelease/Solaris.bin roms/SOLARIS.BIN bash: gopher2600: command not found Even though I've rename the executable to gopher2600 Quote Link to comment Share on other sites More sharing options...
JetSetIlly Posted March 5, 2022 Author Share Posted March 5, 2022 (edited) Because your working directory probably isn't in your PATH you need to specify it: ./gopher2600 run .... Edited March 5, 2022 by JetSetIlly Quote Link to comment Share on other sites More sharing options...
Tempest Posted March 5, 2022 Share Posted March 5, 2022 9 minutes ago, JetSetIlly said: Because your working directory probably isn't in your PATH you need to specify it: ./gopher2600 run .... Derp. Thank you Quote Link to comment Share on other sites More sharing options...
Tempest Posted March 5, 2022 Share Posted March 5, 2022 That works! Now I just need to figure out what I'm seeing. For example I noticed that the differences windows shows an 'outline' around the Millipede when I compare the proto and the released version. Does that mean that the Millipede is thicker in one version than the other? Millipede.bin Millipede_proto.bin Quote Link to comment Share on other sites More sharing options...
JetSetIlly Posted March 5, 2022 Author Share Posted March 5, 2022 1 minute ago, Tempest said: That works! Now I just need to figure out what I'm seeing. For example I noticed that the differences windows shows an 'outline' around the Millipede when I compare the proto and the released version. Does that mean that the Millipede is thicker in one version than the other? Millipede.bin 16 kB · 1 download Millipede_proto.bin 16 kB · 1 download Not necessarily. The diff image just shows those pixels that are different between the two emulations. A pixel is considered different if it is a different color. In the case of Millipede I think what you're seeing is the millipede being slightly ahead in one emulation than the other. Meaning that you see the outline of the millipede in the diff window. At the moment, I'm not sure the tool can tell you much other than that they are different. It's difficult to see how they are different. Quote Link to comment Share on other sites More sharing options...
+Al_Nafuur Posted March 5, 2022 Share Posted March 5, 2022 On 3/4/2022 at 6:27 PM, JetSetIlly said: In the emulator, the AtariVox/SpeakJet bitstream is decoded, translated into Festival instructions and piped to the Festival process. I very quickly converted the SpeakJet codes to phonemes that Festival can work with so the voice in the video is a little rough. I can definitely do a better job of this and I also need to support the codes that control volume, pitch, speed etc. But as a proof of concept I think this is promising. Do you have a table to translate the SpeakJet codes to Festival? This must have been a lot of work, or did you find an easy solution? I once thought of using an ESP32 and the talkie lib to make an open source variant of the AtariVox, which also would offer internet features similar to the PlusROM functions. But translating the SpeakJet codes to talkie code or back to text and then to talkie code seemed to be a lot of work and so I have postponed the project. 1 Quote Link to comment Share on other sites More sharing options...
JetSetIlly Posted March 5, 2022 Author Share Posted March 5, 2022 2 minutes ago, Al_Nafuur said: Do you have a table to translate the SpeakJet codes to Festival? This must have been a lot of work, or did you find an easy solution? It'll be a lot of work to do it correctly and satisfactorily I think. The SpeakJet codes came from page 16 of the Speakjet usermanual https://people.ece.cornell.edu/land/courses/ece4760/Speech/speakjetusermanual.pdf I converted those to the phonemes used by Festival's US phoneset http://festvox.org/festvox-1.2/festvox_18.html For example: I decided that code 164 is the 'ow' phoneme in that phoneset. This was a very quick sub-project done more or less in an afternoon so I've no doubt made mistakes and bad choices during the conversion. It can definitely be better. Ideally there would be a SpeakJet phoneset for Festival but I don't think it exists. 2 minutes ago, Al_Nafuur said: I once thought of using an ESP32 and the talkie lib to make an open source variant of the AtariVox, which also would offer internet features similar to the PlusROM functions. But translating the SpeakJet codes to talkie code or back to text and then to talkie code seemed to be a lot of work and so I have postponed the project. I'm not familiar with that library. Does the ESP32 work in a similar fashion to the SpeakJet? (ie. you stream bits at a given baud to indicate what phoneme to play next) Quote Link to comment Share on other sites More sharing options...
+Andrew Davie Posted March 9, 2022 Share Posted March 9, 2022 I've had a chance to test this on MacOS. Installation of festival was simple, and I'm now up and running playing with adding AtariVox speech to my game. It's not perfect, sure - but it's great to be able to develop without having to plug in hardware. Top job @JetSetIlly 3 Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.