Jump to content
Video Files on Forum ×

shiihs

Members
  • Posts

    88
  • Joined

  • Last visited

Everything posted by shiihs

  1. Well... there are multiple aspects to your question. If you are talking about making a software front-end that is communicating directly with the Casio keyboard, that would potentially be a little simpler to make (but a ton more work!) because this can be done by sending sysex midi messages to the Casio keyboards, and then saving the configured tone on the keyboard itself. The key point here is that these sysex midi messages are documented, so there's a solid foundation to start from. I think this is exactly what @markonis is working on at the moment, and I don't want to duplicate his efforts (I've had a quick look at the sysex documentation, and it's a LOT of work to support everything that is documented). If you are talking about an editor that can change the contents of the binary file formats that Casio saves without having access to a keyboard (like .tn7 or .ac7 or whatever else they produce), then it is more difficult because trying to figure out the meaning of the information in the binary file formats is a pretty painful process (it's completely undocumented). The programming language in this case really is the least of the obstacles to overcome. My own motivation for working on the binary .ac7 files stems from a larger goal of mine, which (as a sub-task) involves being able to generate style files from computer code (as opposed to recording them by live playing on the keyboard). I'm not there yet, so for now I prefer to keep concentrating on proceeding with what I started.
  2. I think the ordering of the elements in my previous version was wrong and I've now tried to make a more educated guess at the correct ordering (especially var 3, fill-in 3, var 4, fill-in 4) It would be interesting of someone with access to a 4 variation machine could check if it's correct. Unfortunately I have no access to such keyboard. Linux: https://drive.google.com/file/d/1gosUhY9-dvldb35IH93vv5rG-A2cheZd/view?usp=sharing Windows: https://drive.google.com/file/d/1zDKr6UnoOAFzaTa6nNCpqs63xs_Uh31z/view?usp=sharing
  3. ReStyle at the moment only understands valid .ac7 files. It shouldn't matter if they were created from .ckf or .mid or .sty or something else. But ReStyle has no clue how to go back to .ckf - it can only write .ac7. So I think the question is if you can do something with that? I was wondering about the following: do you think the element reordering controls should be hidden by default, and shown only if the user presses some "Advanced >>>" button so as to keep the UI simpler by default? Or is the current complexity still acceptable? If you want to run from source code, I'd advise to follow all the instructions in https://github.com/shimpe/ac7renamer and also to use a decent python environment (I myself prefer the community edition of pycharm, which is free of charge, very powerful and user friendly).
  4. New version which also allows swapping elements. I have to admit testing on my side was a bit shallow, but what I tried worked for me... Be sure to backup your work before you experiment! Linux: https://drive.google.com/file/d/15NI3ZhGT9tVcFsym8eHOyC4jG0wG1f9E/view?usp=sharing Windows: https://drive.google.com/file/d/17sNkGz5rCSaIO-FXCSIIIehfnHeb-AbF/view?usp=sharing
  5. (also interesting to note that you can resize the tool, so it's easier to see all the information)
  6. Changing the name as it is shown after importing it on the keyboard is what the tool is all about, so I'm glad it starts to work for you In the mean time, here's a new version with the previous bugs fixed, and a proof-of-concept "rename multiple files" tab. Linux executable: https://drive.google.com/file/d/1BXBYV5lSTB9lEX2cT16oA7erw2GlXToQ/view?usp=sharing Windows executable: https://drive.google.com/file/d/16hy4FaH7LbUqqCCiHaX8FFwJOVaIGNQ6/view?usp=sharing
  7. hmm i just noticed I made a mistake... I tested only a subset of the styles I downloaded from the forum and of course as Murphy's law will have it, the remaining styles reveal some new problems. Still not ready for prime-time...
  8. Here's a new version that should get rid of the "weird" characters tacked onto the current display name, and that automatically adds the .AC7 extension if not typed by the user. Linux executable: https://drive.google.com/file/d/11Wnep3BsOosU4xxxWKFppQCTW8S8jH26/view?usp=sharing Windows executable: https://drive.google.com/file/d/1qsQc7rwRjGRbR8bIGe4PMdDyke0TUqrz/view?usp=sharing
  9. There's a new version where the unicode problem is fixed. The program is now autotested on 122 style files that I collected from the forum (and in doing so I found and fixed another bug). Linux executable: https://drive.google.com/file/d/1lvz_4cfrjElcdgbmQrEaUR9j2Q3c2_r3/view?usp=sharing Windows executable: https://drive.google.com/file/d/1589qmzQ74xfZjRHPDzxGFXHTllCDbu_5/view?usp=sharing
  10. It sounds like a challenge. I can definitely spend some time looking into it, but it's safe to assume it will take some time. With regards to the style reordering, I think generating a single customized reordering in the tool would make more sense than generating all permutations at once, as the number of permutations can get quite large. The point is this: I think there are multiple variations and multiple fill-ins. Some style files contain up to 12 elements (some of which are empty), but so far I think I've seen up to 4 variations => 24 permutations, but also 4 fill-ins => another 24 permutations. Then, if you consider all possibilities of rhythm variations combined with all possibilities of fill-ins I think you end up with 24*24 = 576 possibilities? And that potentially for every style file... would give a huge collection (but maybe the reording makes less sense for fill-ins as you typically wouldn't want to transition from fill-in to fill-in?). I am a little concerned about making the GUI overly complicated for an occasional user, but I guess I could add a second, third .. tab in the UI where each TAB is specialized in a certain task. e.g. first tab = change display name of single rhythm (as it is now); second tab = adaption of display names of a whole collection of rhythms (spreadsheet proposal); third tab = variation permutation generation wordliberationdominationabomination thing In related news, I probably can not look at the unicode decode problem until end of this week due to other obligations - it's not forgotten.
  11. Do you think we need the come up with a way to specify batch conversions? Just dreaming out loud here: how about something like a spreadsheet where first column lists all files found in a chosen directory on disk a second column can be used to type a new display name in the absence of a new name, the file in the first column on disk is not touched and the third column could then be used to specify a new filename in the absence of a new filename in the third column, the original file on disk could be backed up and then overwritten CKF may not be possible I'm afraid, since my keyboard automatically converts CKF to AC7 and this makes pretty much impossible to systematically investigate exactly how the CKF format works internally. Sorry if that's a big disappointment. On the other hand there was a yamaha style converter written in Excel which I think contains some description of the CKF format, so perhaps that could provide a starting point. I'd like to concentrate first on getting AC7 to perform reliably though.
  12. The unicodeDecodeError definitely is a bug in my program indeed. I will fix it as soon as possible. Too bad I never encountered it in my own testing so far. Thanks for the list of CT-X700 rhythms. I suspect they can reveal more interesting problems with the current code (like the unicode error and the unknown parameters they revealed before). I really need to work on setting up that automatic testing system I described a few posts ago because exhaustively trying out all these files by hand is painful If you were to compile a list of models and max lengths I could easily add a model selection and adapt the max length to the chosen model. Well that's kind of unexpected. The program is written in python, not in visual basic nor in C++. But I guess it comes with some redistributable visual studio runtime .dll that is also used by the packaged program. On my wife's windows pc i didn't need any special .dlls installed (although perhaps they were already installed in the past as part of another program's installation). Anyway, it's good to be aware of such hidden dependencies. Testing on someone else's system and with someone else's files is often a moment of truth
  13. @Jokeyman123 I'm not sure but maybe there's some confusion about the two names: what you type in the main screen is the "display name", i.e. the name that will be displayed on the keyboard after importing. This name is stored inside the binary AC7 file. What you type in the "explorer window" when you click save is the "file name", i.e. the name of the AC7 file on disk or memory card. It can be completely different from the display name. If you think this flexibility is overkill, it can easily be removed and the AC7 file name can be always made equal to the display name (except for some weird characters).
  14. @Jokeyman123 thanks for those. I believe I have this older collection myself, downloaded from the forum somehwere. So far I haven't found one that didn't work (but I probably didn't try the exact ones you posted here). My next step is to set up an testing system that automatically parses and writes out again all .AC7 files in a folder and then automatically checks that no parsing errors occur and that no differences exist between the loaded file and the recreated file, so after every modification to the software I can quickly try out the effect of changes on a large collection of .AC7 files. For this reason, having a bigger diversity in files is better, so if you happen to know about links to .AC7 collections, I'll be glad to learn about them. Thanks for helping!
  15. I'm somewhat excited to announce that I've been able to improve the underlying parser to make it much more robust in the presence of hitherto unknown parameters. In particular, now the AC7 file shared by @Jokeyman123 can be correctly renamed and reimported, even though it contains many parameters I hadn't seen before. I guess this means it's time for another test. Could you please also point me to the rest of the style files you were using? I'd like to examine them for more "weird" contents. New linux executable: https://drive.google.com/file/d/1_iIQsxUoI7W3M7xiOAX1_xXNKFumdUkz/view?usp=sharing New windows executable: https://drive.google.com/file/d/1C2CA8VrB8tCf2YfMZIAME4DuKoELAOZO/view?usp=sharing
  16. Thanks for testing - too bad the tests end a bit early (at least with that particular style file); Finding out about unknown parameters unfortunately is very much expected in the first phase of this project (nothing of the file format is publicly documented after all). The good news is the style file loads into wk7600... it will still take some time to update my code (and my understanding ) though - I will work on it in the coming weeks. I'll update this thread when progress has been made.
  17. @jokeyman123 it actually contains a parameter I haven't seen before (maybe something new in CTX keyboards). I'll try to see if I can load it on my wk7600 so I can try to work out what it stands for, but if that is not possible things might get difficult...
  18. @Jokeyman123 I've build an executable on a windows 7 version. Maybe that would start on your system? I've noticed that on my windows 7 system it takes a (very) long time before you actually see the UI after starting the program. I'm not sure why that is, as on Linux and Win10 it started practically immediately. Windows 7 executable download link: https://drive.google.com/file/d/1HXEVjXOxbys51vUxufpcjqrSFGgDMGeX/view?usp=sharing
  19. Also please include a screenshot of error dialogs or copy-paste complete error messages (even more so if they are not generated by the tool, but by windows). Usually every detail can help in understanding what goes wrong. Thanks!
  20. The standalone executables are a bit tricky. I generated it on a windows 10 system and it may be that it includes .dlls that are too "new" for windows 7. I definitely need to find a way to generate these executables more reliably. There's no need to install anything, just save the executable in a folder of your choice and run it from there. If all else fails, you can try to run from source code (but it requires you to install python and some packages first, these steps are documented at the github repository). If you have files that don't load, and you can share them, please file a bug report on github and attach the .ac7 file so I can investigate if there's something "special" about the file. Thanks for testing!
  21. Hi all, I'm breaking out this post from a previous thread about WK7600 file formats. A first version of the style file renamer as suggested by @Chandler Holloway is ready for beta testing. This allows for changing the name of the style as displayed by the keyboard (including changing the length of the name). I was hoping to find some people interested in helping me find problems with it. The GPLv3 license guarantees that the tool will always remain free to use, free to modify and free to copy. However, if you want to use any of its source code in your own projects (which is perfectly allowed), you are required to apply the same license to your complete software then (which includes making available the complete source code). Commercial companies don't necessarily like this license, but it's the best way to ensure that the software can be maintained over the long term. If I run under a bus tomorrow, or lose interest in the project, someone else can just take over and continue... Currently I have a standalone executable for windows operating systems (windows xp and older are not supported) and for linux 64bit systems. For other systems (like mac os) it should be possible to run the tool from source code, at least if you have some experience running software. If you have some software development background using mac OS, you could also help by creating and contributing a standalone executable for that platform. Here are the links to the standalone executable. Just download the link and save it in a folder of your choice. No further installation should be needed: the executable contains everything you need (which is the reason it's quite big). The very first time you run the software, it will display an about screen. Be sure to read it carefully. Linux: https://drive.google.com/file/d/1dS_bATl3K_bnFnsquuEDBcki-5dfLkAO/view?usp=sharing Windows: https://drive.google.com/file/d/1-jUWyaJ198u11KVd7IsYZW43DXjEGZGB/view?usp=sharing Mac: no executable available since I don't have access to a mac OS system - but if you aren't afraid of getting your hands a bit dirty you can run the tool from source code. If you have even more courage, please contribute a standalone executable Here's the link to the source code: https://github.com/shimpe/ac7renamer It depends on another project https://github.com/shimpe/ac7parser which needs to be installed as well. Contact me if you need more help with this step. Feel free to let me know if you run into trouble, or if you think some things could be improved.
  22. It's not completely clear to me what you want, but maybe experiment with the following: - for "echo": use a delay effect and add reverb - for "repeat rapidly": start from a continuous tone (like a flute) and add an extreme vibrato (both in intensity and speed) to it
  23. hi Da Ding, with MIDI files, do you mean sysex files? or do you mean music files? For sysex files, check out midi ox on windows, on linux use amidi. For music, on linux you can use any midi-enabled daw (ardour, rosegarden, qtractor, ...). I'm less familiar with windows, but there must be many options there as well.
  24. Hi Robbo, You can use any tone from MIDI if you find a way to send a "bank select message" followed by a "program change message" over midi. If you do not send a "bank select message", the bank number remains at 0, and this corresponds exactly to the generic GM tones. I would expect most midi-enabled DAWs to be capable of doing that (but don't take my word for it...). To know exactly which bank and which program to select, you can consult the documentation (more specifically, the WK-220 appendix in https://support.casio.com/pdf/008/Web_07M2APPEND-WL-1A.pdf which lists the bank and program number for each tone.)
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.