Yes, I definitely want to implement the "play" command soon. I think it
might require me to figure out how to use the SelectionToBuffer()
function. I imagine setting up to play an item should work similarly to
setting up to do "analyze-item" and "expand-item". So, once I figure
out one, the others will hopefully follow quickly.
I have some rudimentary code for the (produce) "templates",
"produce-all", and "analyze-item" commands now. However, none of them
are really usable yet. "produce-all" in particular never stops if the
grammar's language is infinite! That would be pretty bad if it was
running on a server. (I think BP2 has the same problem).
I didn't think I would have to support sound-object prototypes in BP
console for awhile because I was assuming there would be no reasonable
way to edit them. But I may need to rethink that. :) I'm amazed that
you've made so much progress on a new editor! How are you handling the
embedded Midi codes or Csound score lines? Will your editor be able to
change them in similar ways to BP2?
> Basically the call would be:
>
> ./bp play somepath/somedatafile
Yes, that's the idea. It shouldn't be too hard to get that working with
simple notes. Rewriting the code for loading an -mi file will take longer.
Anthony
On 7/18/20, 4:35 AM, Bernard Bel wrote:
> Dear Anthony,
>
> I notice that you created a vocabulary of "actions" such as 'produce',
> 'compile' etc. This is a very good idea. On the PHP interface I will
> create a template containing syntactic rules for creating correct line
> commands. Thus it will be eay to adapt the interface to modified/new
> rules without fiddling with PHP code.
>
> I am now half-way on the editor of sound-object prototypes. The editor
> is already able to interpret a ‘-mi’ file, identify soud-objects,
> display their properties and modify a few parameters. Displaying
> parameters requires lengthy programming because they are all stored as
> integer numbers and need to be handled with checkboxes, radiobuttons etc.
>
> Graphic display will be missing but I started thinking about a HTML
> display that might be as informative as the old display (see attached
> picture of the old display).
>
> On the interface we had buttons ‘Play object alone’ and ‘Play
> expression’. We'll keep them. To this effect we need a ‘play’ command.
>
> In BP2.9.8 all ‘play’ actions were handled by PlaySelection(). You can
> use this procedure, replacing the selection with the content of a data
> file. Basically the call would be:
>
> ./bp play somepath/somedatafile
|