From: <vo...@ct...> - 2010-06-21 22:05:14
|
Hi Pete, Today I downloaded Jazz++ and built it as instructed in sourceforge. It all looked to compile clean. It worked well. I am running a quad core AMD64 (HP) machine with Fedora 12. I use a Yamaha keyboard with a UX16 midi-to-usb cable as both input and output. There was a minor hang when I clicked on the instrument column. (Assert Failed while clicking on trackname.) Here is the backtrace it produced: ASSERT INFO: ../wxWidgets-2.8/src/gtk/listbox.cpp(859): assert "IsValid(n)" failed in DoSetSelection(): invalid index in wxListBox::SetSelection BACKTRACE: [1] wxListBox::DoSetSelection(int, bool) [2] wxListBoxBase::SetSelection(int) [3] JZTrackDialog::TransferDataToWindow() /home/vogelrl/OutsideSource/JazzBuild/src/../../jazz/src/Dialogs/TrackDialog.cpp:172 [4] wxWindowBase::OnInitDialog(wxInitDialogEvent&) [5] wxAppConsole::HandleEvent(wxEvtHandler*, void (wxEvtHandler::*)(wxEvent&), wxEvent&) cons) [6] wxEvtHandler::ProcessEventIfMatches(wxEventTableEntryBase const&, wxEvtHandler*, wxEvent&) [7] wxEventHashTable::HandleEvent(wxEvent&, wxEvtHandler*) [8] wxEvtHandler::ProcessEvent(wxEvent&) [9] wxWindowBase::InitDialog() [10] wxDialog::Show(bool) [11] wxDialog::ShowModal() [12] JZTrack::Dialog(JZTrackWindow*) /home/vogelrl/OutsideSource/JazzBuild/src/../../jazz/src/Track.cpp:1908 [13] JZTrackWindow::OnLeftButtonUp(wxMouseEvent&) /home/vogelrl/OutsideSource/JazzBuild/src/../../jazz/src/TrackWindow.cpp:394 [14] wxAppConsole::HandleEvent(wxEvtHandler*, void (wxEvtHandler::*)(wxEvent&), wxEvent&) cons) [15] wxEvtHandler::ProcessEventIfMatches(wxEventTableEntryBase const&, wxEvtHandler*, wxEvent&) [16] wxEventHashTable::HandleEvent(wxEvent&, wxEvtHandler*) [17] wxEvtHandler::ProcessEvent(wxEvent&) [18] wxWindow::GTKProcessEvent(wxEvent&) cons) [19] g_closure_invoke() [20] g_signal_emit_valist() [21] g_signal_emit() [22] gtk_propagate_event() [23] gtk_main_do_event() [24] g_main_context_dispatch() [25] g_main_loop_run() [26] gtk_main() I have suggestions for enhancement that you could consider... * I have a somewhat complete routine that accepts midi input, takes the difference between the notes, and then normalizes the intervals to mod(12). It turns out that doing this gives each chord a fairly unique signature, and it outputs the kind of chord that is being played (Em7,C7, C7b9b13...for example.) It's called Midi2Chord. Possibly this could be incorporated so that chords are identified as they are played. That could be a data entry tool. Alternatively, it might be used to identify chords from imported midi files. If you are interested in this, I could send you code. It shouldn't be too tough to code a Chord2Midi routine that would do the opposite. That way, given a lead sheet, it would be possible to generate midi notes. (Are you familiar with Band-in-a-box ?) I'm tinkering with 'gmorgan' (which is no longer supported by anyone. Take a look.) to do something similar. * There is a wave2midi converter called WAON that will take a wave file and convert it to midi. Perhaps that could be placed on the menu as an import for audio files. (?) * It would be good to elaborate the dialog box that controls voicing so that there could be volume, midi channel, device (or synth), pan, reverb, chorus.... I didn't find the mixing facility, so maybe that is the answer. Anyway, I'd like to be able to use the Yamaha for some voices, or mix Linux voices in also with the Yamaha, use Hydrogen as a midi driven instrument (I like its sounds.), use Qsynth...and so on. * Would it be a good idea to use Jack ? How about Lash ? Anyway, Jazz++ looks very good. I hope you find this constructive...With some guidance from you, maybe I could help out some. Bob Vogel |
From: Pete S. <pst...@gm...> - 2010-07-02 14:35:59
|
On 6/21/2010 2:49 PM, BV = Bob Vogel BV> Hi Pete, BV> BV> Today I downloaded Jazz++ and built it as instructed BV> in sourceforge. It all looked to compile clean. BV> BV> It worked well. I am running a quad core AMD64 (HP) BV> machine with Fedora 12. I have built the code on Fedora 13 with old dual AMD Opteron processors dual quad core Xeons quad and dual core Intel Core2 processor machines, but I don't always test the resulting binary. BV> I use a Yamaha keyboard with a UX16 midi-to-usb BV> cable as both input and output. BV> BV> There was a minor hang when I clicked on the BV> instrument column. I'm not quite sure what you are referring to when you say "instrument column". Could you embellish? BV> (Assert Failed while clicking on trackname.) Here BV> is the backtrace it produced: I just got back from vacation and have some time this weekend. Were you working with a debug build to get the back trace? <backtrace> ASSERT INFO: ../wxWidgets-2.8/src/gtk/listbox.cpp(859): assert "IsValid(n)" failed in DoSetSelection(): invalid index in wxListBox::SetSelection BACKTRACE: [1] wxListBox::DoSetSelection(int, bool) [2] wxListBoxBase::SetSelection(int) [3] JZTrackDialog::TransferDataToWindow() /home/vogelrl/OutsideSource/JazzBuild/src/../../jazz/src/Dialogs/TrackDialog.cpp:172 [4] wxWindowBase::OnInitDialog(wxInitDialogEvent&) [5] wxAppConsole::HandleEvent(wxEvtHandler*, void (wxEvtHandler::*)(wxEvent&), wxEvent&) cons) [6] wxEvtHandler::ProcessEventIfMatches(wxEventTableEntryBase const&, wxEvtHandler*, wxEvent&) [7] wxEventHashTable::HandleEvent(wxEvent&, wxEvtHandler*) [8] wxEvtHandler::ProcessEvent(wxEvent&) [9] wxWindowBase::InitDialog() [10] wxDialog::Show(bool) [11] wxDialog::ShowModal() [12] JZTrack::Dialog(JZTrackWindow*) /home/vogelrl/OutsideSource/JazzBuild/src/../../jazz/src/Track.cpp:1908 [13] JZTrackWindow::OnLeftButtonUp(wxMouseEvent&) /home/vogelrl/OutsideSource/JazzBuild/src/../../jazz/src/TrackWindow.cpp:394 [14] wxAppConsole::HandleEvent(wxEvtHandler*, void (wxEvtHandler::*)(wxEvent&), wxEvent&) cons) [15] wxEvtHandler::ProcessEventIfMatches(wxEventTableEntryBase const&, wxEvtHandler*, wxEvent&) [16] wxEventHashTable::HandleEvent(wxEvent&, wxEvtHandler*) [17] wxEvtHandler::ProcessEvent(wxEvent&) [18] wxWindow::GTKProcessEvent(wxEvent&) cons) [19] g_closure_invoke() [20] g_signal_emit_valist() [21] g_signal_emit() [22] gtk_propagate_event() [23] gtk_main_do_event() [24] g_main_context_dispatch() [25] g_main_loop_run() [26] gtk_main() </backtrace> I'll reply to your enhancement suggestions in a separate thread. Thanks for the report, and it's good to hear from you, Pete |
From: Pete S. <pst...@gm...> - 2010-07-05 14:26:13
|
On 6/21/2010 2:49 PM, BV = Bob Vogel wrote: BV>> * There is a wave2midi converter called WAON BV>> that will take a wave file and convert it to midi. On 7/4/2010 2:56 PM, Pete Stieber wrote: PS> Now that is a difficult problem! I found PS> http://waon.sourceforge.net/ and checked PS> out the CVS repository. BV>> Perhaps that could be placed on the menu as an BV>> import for audio files. (?) PS> Sounds like an idea. Have you built this code? I managed to get this code built on a Linux box, and the code worked. This would take some work to incorporate into Jazz++. Jazz++ is a cross-platform program, while WAON is Linux specific. It would take some refactoring to replace some libraries used by WAON with those used by Jazz++, and some porting of other libraries to get everything working. I am interested in this. I'm an electrical engineer by trade and the use of fast Fourier transforms and a spectrogram to determine pitch is interesting to me. I would also like to attempt a sheet music display. I've look at a few code to get ideas, but haven't found anything that I could integrate quickly. Have you looked into this? Pete |
From: Pete S. <pst...@gm...> - 2010-07-04 21:57:14
|
On 6/21/2010 2:49 PM, BV = Bob Vogel wrote: BV> I have suggestions for enhancement that you BV> could consider... BV> BV> * I have a somewhat complete routine that BV> accepts midi input, takes the difference between BV> the notes, and then normalizes the intervals to BV> mod(12). It turns out that doing this gives each BV> chord a fairly unique signature, and it outputs BV> the kind of chord that is being played (Em7,C7, BV> C7b9b13...for example.) It's called Midi2Chord. BV> Possibly this could be incorporated so that chords BV> are identified as they are played. That could be BV> a data entry tool. Alternatively, it might be used BV> to identify chords from imported midi files. If BV> you are interested in this, I could send you code. Sounds good. Feel free to send it to me. BV> It shouldn't be too tough to code a Chord2Midi BV> routine that would do the opposite. That way, BV> given a lead sheet, it would be possible to generate BV> midi notes. (Are you familiar with Band-in-a-box?) No. Is this it (http://www.pgmusic.com/)? BV> I'm tinkering with 'gmorgan' (which is no longer BV> supported by anyone. Take a look.) to do BV> something similar. I'll give it a look. I'm looking at http://gmorgan.sourceforge.net/. I just checked out the CVS repository. Have you built this code? BV> * There is a wave2midi converter called WAON BV> that will take a wave file and convert it to midi. Now that is a difficult problem! I found http://waon.sourceforge.net/ and checked out the CVS repository. BV> Perhaps that could be placed on the menu as an BV> import for audio files. (?) Sounds like an idea. Have you built this code? BV> * It would be good to elaborate the dialog box BV> that controls voicing so that there could be volume, BV> midi channel, device (or synth), pan, reverb, BV> chorus.... I didn't find the mixing facility, so BV> maybe that is the answer. Anyway, I'd like to be BV> able to use the Yamaha for some voices, or mix Linux BV> voices in also with the Yamaha, use Hydrogen as a BV> midi driven instrument (I like its sounds.), use BV> Qsynth...and so on. BV> * Would it be a good idea to use Jack? I use Jazz++ with Jack with Qsynth on Linux. BV> How about Lash? Haven't ever tried it. BV> Anyway, Jazz++ looks very good. I hope you find BV> this constructive... I do. thanks. BV> With some guidance from you, maybe I could BV> help out some. Sounds good. I keep so busy with my day job, I could use the help. Pete |
From: <vo...@ct...> - 2010-07-06 01:13:13
|
----- Original Message ----- From: "Pete Stieber" <pst...@gm...> To: <jaz...@li...> Sent: Monday, July 05, 2010 10:25 AM Subject: Re: [jazzplusplus-devel] It works on Fedora 12 AMD64... > On 6/21/2010 2:49 PM, BV = Bob Vogel wrote: > BV>> * There is a wave2midi converter called WAON > BV>> that will take a wave file and convert it to midi. > > On 7/4/2010 2:56 PM, Pete Stieber wrote: > > PS> Now that is a difficult problem! I found > PS> http://waon.sourceforge.net/ and checked > PS> out the CVS repository. > > BV>> Perhaps that could be placed on the menu as an > BV>> import for audio files. (?) > > PS> Sounds like an idea. Have you built this code? > Hi Pete, I did build waon. Often when I hear music, I can pretty much tell what is being played and, if motivated, actually write a transcription. Sometimes I can't. Anyway, I clipped a few bars from a recording that were puzzling, produced a wave file, ran it through waon. The resulting midi file sounded pretty much like the original, so I think it was a good test. You're right, this is a real challenge. The midi output is hard to format for printing in a legible way. I tried a chain of programs to do it: Lilypond is an active project: http://www.lilypond.org/ See the description of Allegro at http://www.cs.cmu.edu/~music/music.software.html Fomus (http://fomus.sourceforge.net/) Since waon seemed to work pretty well, it occurred to me that a menu entry. a file chooser, and a little scripting could incorporate it. But I only work with Linux code because I am unwilling to purchase windows development software. > I managed to get this code built on a Linux box, and the code worked. > This would take some work to incorporate into Jazz++. Jazz++ is a > cross-platform program, while WAON is Linux specific. It would take > some refactoring to replace some libraries used by WAON with those used > by Jazz++, and some porting of other libraries to get everything working. > > I am interested in this. I'm an electrical engineer by trade and the > use of fast Fourier transforms and a spectrogram to determine pitch is > interesting to me. > > I would also like to attempt a sheet music display. I've look at a few > code to get ideas, but haven't found anything that I could integrate > quickly. Have you looked into this? > Lilypond, see above, I believe could print notation cross platform. > Pete > > ------------------------------------------------------------------------------ > This SF.net email is sponsored by Sprint > What will you do first with EVO, the first 4G phone? > Visit sprint.com/first -- http://p.sf.net/sfu/sprint-com-first > _______________________________________________ > jazzplusplus-devel mailing list > jaz...@li... > https://lists.sourceforge.net/lists/listinfo/jazzplusplus-devel |
From: Pete S. <pst...@gm...> - 2010-07-07 03:02:22
|
On 7/5/2010 6:09 PM, BV = Bob Vogel wrote: BV> The midi output is hard to format for printing BV> in a legible way. I tried a chain of programs BV> to do it: BV> BV> Lilypond is an active project: http://www.lilypond.org/ Did you try midi2ly? http://lilypond.org/doc/v2.1/Documentation/user/out-www/lilypond/Invoking-midi2ly.html BV> But I only work with Linux code because I am BV> unwilling to purchase windows development BV> software. Have you ever considered an Express version of Visual Studio (http://www.microsoft.com/express/)? Cygwin (http://www.cygwin.com/) also provides GCC. BV> Lilypond, see above, I believe could print BV> notation cross platform. It is, but it geared toward printing. I use it to create printed sheet music. I've looked at MuseScore (http://sourceforge.net/projects/mscore/) and some others. Pete |
From: <vo...@ct...> - 2010-07-06 03:49:50
|
----- Original Message ----- From: "Pete Stieber" <pst...@gm...> To: <jaz...@li...> Sent: Sunday, July 04, 2010 5:56 PM Subject: Re: [jazzplusplus-devel] It works on Fedora 12 AMD64... > On 6/21/2010 2:49 PM, BV = Bob Vogel wrote: > BV> I have suggestions for enhancement that you > BV> could consider... > BV> > BV> * I have a somewhat complete routine that > BV> accepts midi input, takes the difference between > BV> the notes, and then normalizes the intervals to > BV> mod(12). It turns out that doing this gives each > BV> chord a fairly unique signature, and it outputs > BV> the kind of chord that is being played (Em7,C7, > BV> C7b9b13...for example.) It's called Midi2Chord. > BV> Possibly this could be incorporated so that chords > BV> are identified as they are played. That could be > BV> a data entry tool. Alternatively, it might be used > BV> to identify chords from imported midi files. If > BV> you are interested in this, I could send you code. > > Sounds good. Feel free to send it to me. > > BV> It shouldn't be too tough to code a Chord2Midi > BV> routine that would do the opposite. That way, > BV> given a lead sheet, it would be possible to generate > BV> midi notes. (Are you familiar with Band-in-a-box?) > > No. Is this it (http://www.pgmusic.com/)? Yes. In my opinion they have done a really good job. > > BV> I'm tinkering with 'gmorgan' (which is no longer > BV> supported by anyone. Take a look.) to do > BV> something similar. > > I'll give it a look. I'm looking at http://gmorgan.sourceforge.net/. I > just checked out the CVS repository. Have you built this code? > Yes. The people who wrote this speak spanish and it flavors most of the code. They produced a little documentation, but the code is pretty much devoid of comments. Initially, it would not compile because the GUI (fluid) had a modification that required changing a data type to long...at least for 64 bit machines. I told them so...they might have fixed it with a version .27. Mostly it seems they abandoned it. There are a number of things I liked about it though. It uses the gettext facility for internationalization. (I didn't know about this.) It uses the alsa routines for midi operations, so it fits well with jack. I thought that I could enhance it for my taste. For example I mean to incorporate block chords into the mode switch. Given a valid chord symbol and a lead note, the block chord routine produces a five part harmonization and delivers it to the current midi voice. Should sound like a brass or reed section of a big band only using one finger. I haven't told the gmorgan mailing list that I have tinkered with it. It is licensed under the GPL2, so I have the right I think. Still, they may mind. The wx gui is nicer that fluid I think. I'll clean up my code a little before I send it to you. If I tar my directory and send it as an attachment to you personally. That ok ? > BV> * There is a wave2midi converter called WAON > BV> that will take a wave file and convert it to midi. > > Now that is a difficult problem! I found http://waon.sourceforge.net/ > and checked out the CVS repository. > > BV> Perhaps that could be placed on the menu as an > BV> import for audio files. (?) > > Sounds like an idea. Have you built this code? > > BV> * It would be good to elaborate the dialog box > BV> that controls voicing so that there could be volume, > BV> midi channel, device (or synth), pan, reverb, > BV> chorus.... I didn't find the mixing facility, so > BV> maybe that is the answer. Anyway, I'd like to be > BV> able to use the Yamaha for some voices, or mix Linux > BV> voices in also with the Yamaha, use Hydrogen as a > BV> midi driven instrument (I like its sounds.), use > BV> Qsynth...and so on. > > BV> * Would it be a good idea to use Jack? > > I use Jazz++ with Jack with Qsynth on Linux. > > BV> How about Lash? > > Haven't ever tried it. > > BV> Anyway, Jazz++ looks very good. I hope you find > BV> this constructive... > > I do. thanks. > > BV> With some guidance from you, maybe I could > BV> help out some. > > Sounds good. I keep so busy with my day job, I could use the help. > > Pete > > ------------------------------------------------------------------------------ > This SF.net email is sponsored by Sprint > What will you do first with EVO, the first 4G phone? > Visit sprint.com/first -- http://p.sf.net/sfu/sprint-com-first > _______________________________________________ > jazzplusplus-devel mailing list > jaz...@li... > https://lists.sourceforge.net/lists/listinfo/jazzplusplus-devel |
From: Pete S. <pst...@gm...> - 2010-07-07 03:08:48
|
On 7/5/2010 8:49 PM, BV = Bob Vogel wrote: BV> I'll clean up my code a little before I send it BV> to you. If I tar my directory and send it as BV> an attachment to you personally. That ok ? Yes. Pete |