Vienna Symphonic Library Forum
Forum Statistics

189,119 users have contributed to 42,649 threads and 256,716 posts.

In the past 24 hours, we have 6 new thread(s), 16 new post(s) and 57 new user(s).

  • Hi William,

    You are sinking !

    Note of the author :

    I have simplify the whole thing not to make it too complicated so Willian could understand the difference of a programming language and a protocol.

    VSL SE is wrote in a programming language, the most use at this time C or C ++ but thers is also Java, Algol, Cobol, Basic, RPG II.......

    SE will receive Midi messages from your DAW (Logic Cubase...)

    A programming language will look like this (this is inside SE) ;

    define variables :
         type = 1 bit
         note = 1bit
        velocity = 1bit

    Begin:

    read message from midi else on error wait 1 ms then go to Begin

    MidiChannel = message [1,1]                          ;* I extract the midi channel, the type of message, the value of the note, and the velocity

    type = message [2,1]   

    note = message [3,1]

    velocity = message [4,1]

    If type = CTRL the gosub ctrl                                               ;* if it is not a note I will go to the subroutine that is taking care of controlers

    IF note >= c1  and  <= B1 then do                                    ;* i check if it is not an articulation change

           If note = c1 then

           read staccato sample from file

       else 

           if not is c#1 then read legato sample from file

       end

    else

    .........

    If I simplify the Midi protocol it looks like this ;

    midi01noteA066,midi01noteB044,midi01endnoteA0,midi01endnoteB0,

    Explication :

    on midi channel 1 I send the a0 with velocity = 66, I send B0 with velocity = 44, I send end note of A0, I send end note 0f 0

    So dont speak of things you dont know about !

    If my memory is good Midi is a very bad protocol language because the sender just send and the receiver just receive, it is not possible to say in midi "please resend message xxx I have not understand "

    With protocol like BSC it is much more complicate, it looks like this : 

    beggining of a xx bit message,......(my xx bits)....., end of message, control checksum

    so when the receiver read the message it extract the 64 bit , to the calculation of the checksum, compare with the checksum send by the sender.

    If the difference of the checksums is different than zero it sends a message back to the sender so it sends the block again !!!

    Best

    Cyril

    P.S. I have been programming for 30 years, made a lot of teletransmitions between small and VERY big computer, I have also created a language for talking between host and printers over Postscript


  • Hi William,

    You are sinking !

    Note of the author :

    I have simplify the whole thing not to make it too complicated so Willian could understand the difference of a programming language and a protocol.

    VSL SE is wrote in a programming language, the most use at this time C or C ++ but thers is also Java, Algol, Cobol, Basic, RPG II.......

    SE will receive Midi messages from your DAW (Logic Cubase...)

    A programming language will look like this (this is inside SE) ;

    define variables :
         midichannel = 1bit
         type = 1 bit
         note = 1bit
        velocity = 1bit

    Begin:

    read message from midi else on error wait 1 ms then go to Begin

    MidiChannel = message [1,1]                          ;* I extract the midi channel, the type of message, the value of the note, and the velocity

    type = message [2,1]   

    note = message [3,1]

    velocity = message [4,1]

    If type = CTRL the gosub ctrl                                               ;* if it is not a note I will go to the subroutine that is taking care of controlers

    IF note >= c1  and  <= B1 then do                                    ;* i check if it is not an articulation change

           If note = c1 then

           read staccato sample from file

       else 

           if not is c#1 then read legato sample from file

       end

    else

    .........

    If I simplify the Midi protocol it looks like this ;

    midi01noteA066,midi01noteB044,midi01endnoteA0,midi01endnoteB0,

    Explication :

    on midi channel 1 I send the a0 with velocity = 66, I send B0 with velocity = 44, I send end note of A0, I send end note 0f 0

    So dont speak of things you dont know about !

    If my memory is good Midi is a very bad protocol language because the sender just send and the receiver just receive, it is not possible to say in midi "please resend message xxx I have not understand "

    With protocol like BSC it is much more complicate, it looks like this : 

    beggining of a xx bit message,......(my xx bits)....., end of message, control checksum

    so when the receiver read the message it extract the 64 bit , to the calculation of the checksum, compare with the checksum send by the sender.

    If the difference of the checksums is different than zero it sends a message back to the sender so it sends the block again !!!

    Best

    Cyril

    P.S. I have been programming for 30 years, made a lot of teletransmitions between small and VERY big computer, I have also created a language for talking between host and printers over Postscript


  • .


  • last edited
    last edited

    @pat brooks said:

    sorry, midi is not a programming language, and that distinction is not splitting hairs. At least not to a programmer :)
     

    O.K., I stand corrected. 


  • I had better not post anything more here.  I'll leave it to Cyril and the experts.  What do I know?  I'm only a musician.  I know some scales. 


  • +1

    'Only' a musician? I'd put the skills it takes to make good music right up there with brain surgeon and nuclear physicist. But I sure as heck don't want to  -think- like a scientist. Being creative takes up all the brain space I got.

    So if you could listen to my demo (in the post on slurs) I'd hold ya in even -higher- esteem than I already do. [:D] (Until this forum allows me to send ya an e-drink, flattery's all I got for incentives.)

    ---JC


  • [quote=William]

    One other thing Cyril, that last post of yours is not impressive, it is simply stultifying.  I assume your purpose is to bore people so intensely that they simply give up arguing?  If so, you can congratulate yourself on a job well done. 

    William,

    I have spend a lot of time to write the previous mail to explain to you the difference between a programming language and a protocol so you don't die idiot, and instead of thanking me you are insulting me !!!

    Many thanks !

    Cyril


  •  Cyril,  maybe it is a language thing,  but you do come across rather egotistical, I think that is why you get a hard time sometimes.

     I have a notice up on the wall in  my studio, which many read and reconsider what they are about to say:-

    Those people who think they know everything
    Are annoying to those of us that do.

    [:D]


  • last edited
    last edited

    @andyjh said:

    Those people who think they know everything

    Are annoying to those of us that do.

    I keep my mouth shut on subject I dont know.

    I help only on subject I know.

    A lot of people are saying "thanks" for my help

    I have quite a few people speaking directly to me by mail or by phone, lately I have send a Logic template to help to understand Event edit and IAC !

    I was trying help William to understand !  Too bad ! I have spend my time for nothing !


  • Cyril I thought you were trying to be a smart aleck. I got rid of that post by the way but you put it back on.  Anyway I realize you are correct about the nomenclature.


  • last edited
    last edited

    @William said:

    Cyril I thought you were trying to be a smart aleck. I got rid of that post by the way but you put it back on.  Anyway I realize you are correct about the nomenclature.

    you deleted too late, so it was sent to everybody that have subscribe to this tread


  •  Well you could easily edit that out but you don't want to, which is fine with me.  It is all trivia.