Csound Csound-dev Csound-tekno Search About

[Csnd-dev] questions/discussions about the csound~ and csound6~ objects...

Date2021-09-22 17:16
FromIain Duncan
Subject[Csnd-dev] questions/discussions about the csound~ and csound6~ objects...
Hi folks, I'm hoping to start a conversation about the csound~ object and what can be done. 

I took a gander through the code, and was surprised to see how big it is. Maybe I'm grossly underestimating how much should be there to embed csound, but it seems to have a lot more code than I was expecting, and perhaps a lot that is of questionable necessity. (entire shell object, etc), thus making it harder to maintain (or to find a maintainer for)  I would like to help with csound in Max, but I don't know if taking on maintaining something so large is practical with my work on Scheme for Max and Pd and doing me thesis.

I'm wondering if Victor or Steven could share thoughts here. I haven't had a chance to dig into csound6~ for Pd, but is it more minimal? Would it perhaps instead make more sense to port csound6~ to Max? 

It would be great to understand the differences between the csoundapi~/csound6~ objects and csound~ for Max. Personally, it would be useful to me to have something very similar in both Pd and Max as I'm supporting both with s4m/s4mp, and for own needs I need very little in the way of i/o ability: just messages, audio, and channels in and out of csound.

thanks
iain



Date2021-09-22 17:48
FromVictor Lazzarini
SubjectRe: [Csnd-dev] [EXTERNAL] [Csnd-dev] questions/discussions about the csound~ and csound6~ objects...
I don't know anything about csound~ but csound6~ is fairly compact as far as I'm concerned.

Prof. Victor Lazzarini
Maynooth University
Ireland

On 22 Sep 2021, at 17:16, Iain Duncan <iainduncanlists@gmail.com> wrote:



*Warning*

This email originated from outside of Maynooth University's Mail System. Do not reply, click links or open attachments unless you recognise the sender and know the content is safe.

Hi folks, I'm hoping to start a conversation about the csound~ object and what can be done. 

I took a gander through the code, and was surprised to see how big it is. Maybe I'm grossly underestimating how much should be there to embed csound, but it seems to have a lot more code than I was expecting, and perhaps a lot that is of questionable necessity. (entire shell object, etc), thus making it harder to maintain (or to find a maintainer for)  I would like to help with csound in Max, but I don't know if taking on maintaining something so large is practical with my work on Scheme for Max and Pd and doing me thesis.

I'm wondering if Victor or Steven could share thoughts here. I haven't had a chance to dig into csound6~ for Pd, but is it more minimal? Would it perhaps instead make more sense to port csound6~ to Max? 

It would be great to understand the differences between the csoundapi~/csound6~ objects and csound~ for Max. Personally, it would be useful to me to have something very similar in both Pd and Max as I'm supporting both with s4m/s4mp, and for own needs I need very little in the way of i/o ability: just messages, audio, and channels in and out of csound.

thanks
iain



Date2021-09-22 21:46
FromRory Walsh
SubjectRe: [Csnd-dev] [EXTERNAL] [Csnd-dev] questions/discussions about the csound~ and csound6~ objects...
I think porting the current Pd object to Max would be a great idea. I was close to doing this some years ago due to problems I was having building the Csound Max object myself on Windows. In the end I managed to get the Max object to build, so I stuck a flag in it and walked away. The Csound Max object does provide a lot of Max-esque features, but at a cost. I think a simpler alternative would be every bit as useful. Sounds like you've volunteered for the job Iain! 

On Wed, 22 Sept 2021 at 17:48, Victor Lazzarini <Victor.Lazzarini@mu.ie> wrote:
I don't know anything about csound~ but csound6~ is fairly compact as far as I'm concerned.

Prof. Victor Lazzarini
Maynooth University
Ireland

On 22 Sep 2021, at 17:16, Iain Duncan <iainduncanlists@gmail.com> wrote:



*Warning*

This email originated from outside of Maynooth University's Mail System. Do not reply, click links or open attachments unless you recognise the sender and know the content is safe.

Hi folks, I'm hoping to start a conversation about the csound~ object and what can be done. 

I took a gander through the code, and was surprised to see how big it is. Maybe I'm grossly underestimating how much should be there to embed csound, but it seems to have a lot more code than I was expecting, and perhaps a lot that is of questionable necessity. (entire shell object, etc), thus making it harder to maintain (or to find a maintainer for)  I would like to help with csound in Max, but I don't know if taking on maintaining something so large is practical with my work on Scheme for Max and Pd and doing me thesis.

I'm wondering if Victor or Steven could share thoughts here. I haven't had a chance to dig into csound6~ for Pd, but is it more minimal? Would it perhaps instead make more sense to port csound6~ to Max? 

It would be great to understand the differences between the csoundapi~/csound6~ objects and csound~ for Max. Personally, it would be useful to me to have something very similar in both Pd and Max as I'm supporting both with s4m/s4mp, and for own needs I need very little in the way of i/o ability: just messages, audio, and channels in and out of csound.

thanks
iain



Date2021-09-22 23:28
FromIain Duncan
SubjectRe: [Csnd-dev] [EXTERNAL] [Csnd-dev] questions/discussions about the csound~ and csound6~ objects...
Well I can certainly take a look and see if it's practical... Is the csound_pd repo the correct one for that? (last update in Oct 2019)

iain

On Wed, Sep 22, 2021 at 1:46 PM Rory Walsh <rorywalsh@ear.ie> wrote:
I think porting the current Pd object to Max would be a great idea. I was close to doing this some years ago due to problems I was having building the Csound Max object myself on Windows. In the end I managed to get the Max object to build, so I stuck a flag in it and walked away. The Csound Max object does provide a lot of Max-esque features, but at a cost. I think a simpler alternative would be every bit as useful. Sounds like you've volunteered for the job Iain! 

On Wed, 22 Sept 2021 at 17:48, Victor Lazzarini <Victor.Lazzarini@mu.ie> wrote:
I don't know anything about csound~ but csound6~ is fairly compact as far as I'm concerned.

Prof. Victor Lazzarini
Maynooth University
Ireland

On 22 Sep 2021, at 17:16, Iain Duncan <iainduncanlists@gmail.com> wrote:



*Warning*

This email originated from outside of Maynooth University's Mail System. Do not reply, click links or open attachments unless you recognise the sender and know the content is safe.

Hi folks, I'm hoping to start a conversation about the csound~ object and what can be done. 

I took a gander through the code, and was surprised to see how big it is. Maybe I'm grossly underestimating how much should be there to embed csound, but it seems to have a lot more code than I was expecting, and perhaps a lot that is of questionable necessity. (entire shell object, etc), thus making it harder to maintain (or to find a maintainer for)  I would like to help with csound in Max, but I don't know if taking on maintaining something so large is practical with my work on Scheme for Max and Pd and doing me thesis.

I'm wondering if Victor or Steven could share thoughts here. I haven't had a chance to dig into csound6~ for Pd, but is it more minimal? Would it perhaps instead make more sense to port csound6~ to Max? 

It would be great to understand the differences between the csoundapi~/csound6~ objects and csound~ for Max. Personally, it would be useful to me to have something very similar in both Pd and Max as I'm supporting both with s4m/s4mp, and for own needs I need very little in the way of i/o ability: just messages, audio, and channels in and out of csound.

thanks
iain



Date2021-09-23 01:46
FromIain Duncan
SubjectRe: [Csnd-dev] [EXTERNAL] [Csnd-dev] questions/discussions about the csound~ and csound6~ objects...
So assuming I'm right that everything needed is in csound_pd, Victor's csound6~ object's code compared to csound~ for Max is ..... TEN times smaller! 28k instead of 280k.

This is way more in line with what I was expecting to see, and having glanced at the code, is much more in line with what I was expecting to see. A Max port will no doubt introduce some extra complexity because we have to deal with the possibility of events and audio being in separate threads, and the Max SDK is not as clean and minimal as Pd's but even if it means twice as much, that is totally manageable. 

So question: is there anything we need to do or discuss, or I need to know, for me to port csound6~ to Max? I've not done anything before that was a port of someone else's work, or contributed to csound, so I'm happy to be told the protocols and expectations, etc.

Second question: any windows devs interested in helping at least on Windows builds? I know just enough to turn on my virtual machine and run the vscode project that Alex Harker helped me with for s4m... :-)

iain


On Wed, Sep 22, 2021 at 3:28 PM Iain Duncan <iainduncanlists@gmail.com> wrote:
Well I can certainly take a look and see if it's practical... Is the csound_pd repo the correct one for that? (last update in Oct 2019)

iain

On Wed, Sep 22, 2021 at 1:46 PM Rory Walsh <rorywalsh@ear.ie> wrote:
I think porting the current Pd object to Max would be a great idea. I was close to doing this some years ago due to problems I was having building the Csound Max object myself on Windows. In the end I managed to get the Max object to build, so I stuck a flag in it and walked away. The Csound Max object does provide a lot of Max-esque features, but at a cost. I think a simpler alternative would be every bit as useful. Sounds like you've volunteered for the job Iain! 

On Wed, 22 Sept 2021 at 17:48, Victor Lazzarini <Victor.Lazzarini@mu.ie> wrote:
I don't know anything about csound~ but csound6~ is fairly compact as far as I'm concerned.

Prof. Victor Lazzarini
Maynooth University
Ireland

On 22 Sep 2021, at 17:16, Iain Duncan <iainduncanlists@gmail.com> wrote:



*Warning*

This email originated from outside of Maynooth University's Mail System. Do not reply, click links or open attachments unless you recognise the sender and know the content is safe.

Hi folks, I'm hoping to start a conversation about the csound~ object and what can be done. 

I took a gander through the code, and was surprised to see how big it is. Maybe I'm grossly underestimating how much should be there to embed csound, but it seems to have a lot more code than I was expecting, and perhaps a lot that is of questionable necessity. (entire shell object, etc), thus making it harder to maintain (or to find a maintainer for)  I would like to help with csound in Max, but I don't know if taking on maintaining something so large is practical with my work on Scheme for Max and Pd and doing me thesis.

I'm wondering if Victor or Steven could share thoughts here. I haven't had a chance to dig into csound6~ for Pd, but is it more minimal? Would it perhaps instead make more sense to port csound6~ to Max? 

It would be great to understand the differences between the csoundapi~/csound6~ objects and csound~ for Max. Personally, it would be useful to me to have something very similar in both Pd and Max as I'm supporting both with s4m/s4mp, and for own needs I need very little in the way of i/o ability: just messages, audio, and channels in and out of csound.

thanks
iain



Date2021-09-23 07:42
FromVictor Lazzarini
SubjectRe: [Csnd-dev] [EXTERNAL] [Csnd-dev] questions/discussions about the csound~ and csound6~ objects...
Thanks for this, I'm happy to support your efforts doing the port. It will be good to have the two aligned.

I think csound~ has a long convoluted history, it started life almost 20 years ago, before Csound 5, and it was not reentrant then. Then it was picked (not sure if freshly or reusing) by another developer and that's basically the code you see. I think all Steven did was update it to the Csound 6 API.

Prof. Victor Lazzarini
Maynooth University
Ireland

On 23 Sep 2021, at 01:46, Iain Duncan <iainduncanlists@gmail.com> wrote:


So assuming I'm right that everything needed is in csound_pd, Victor's csound6~ object's code compared to csound~ for Max is ..... TEN times smaller! 28k instead of 280k.

This is way more in line with what I was expecting to see, and having glanced at the code, is much more in line with what I was expecting to see. A Max port will no doubt introduce some extra complexity because we have to deal with the possibility of events and audio being in separate threads, and the Max SDK is not as clean and minimal as Pd's but even if it means twice as much, that is totally manageable. 

So question: is there anything we need to do or discuss, or I need to know, for me to port csound6~ to Max? I've not done anything before that was a port of someone else's work, or contributed to csound, so I'm happy to be told the protocols and expectations, etc.

Second question: any windows devs interested in helping at least on Windows builds? I know just enough to turn on my virtual machine and run the vscode project that Alex Harker helped me with for s4m... :-)

iain


On Wed, Sep 22, 2021 at 3:28 PM Iain Duncan <iainduncanlists@gmail.com> wrote:
Well I can certainly take a look and see if it's practical... Is the csound_pd repo the correct one for that? (last update in Oct 2019)

iain

On Wed, Sep 22, 2021 at 1:46 PM Rory Walsh <rorywalsh@ear.ie> wrote:
I think porting the current Pd object to Max would be a great idea. I was close to doing this some years ago due to problems I was having building the Csound Max object myself on Windows. In the end I managed to get the Max object to build, so I stuck a flag in it and walked away. The Csound Max object does provide a lot of Max-esque features, but at a cost. I think a simpler alternative would be every bit as useful. Sounds like you've volunteered for the job Iain! 

On Wed, 22 Sept 2021 at 17:48, Victor Lazzarini <Victor.Lazzarini@mu.ie> wrote:
I don't know anything about csound~ but csound6~ is fairly compact as far as I'm concerned.

Prof. Victor Lazzarini
Maynooth University
Ireland

On 22 Sep 2021, at 17:16, Iain Duncan <iainduncanlists@gmail.com> wrote:



*Warning*

This email originated from outside of Maynooth University's Mail System. Do not reply, click links or open attachments unless you recognise the sender and know the content is safe.

Hi folks, I'm hoping to start a conversation about the csound~ object and what can be done. 

I took a gander through the code, and was surprised to see how big it is. Maybe I'm grossly underestimating how much should be there to embed csound, but it seems to have a lot more code than I was expecting, and perhaps a lot that is of questionable necessity. (entire shell object, etc), thus making it harder to maintain (or to find a maintainer for)  I would like to help with csound in Max, but I don't know if taking on maintaining something so large is practical with my work on Scheme for Max and Pd and doing me thesis.

I'm wondering if Victor or Steven could share thoughts here. I haven't had a chance to dig into csound6~ for Pd, but is it more minimal? Would it perhaps instead make more sense to port csound6~ to Max? 

It would be great to understand the differences between the csoundapi~/csound6~ objects and csound~ for Max. Personally, it would be useful to me to have something very similar in both Pd and Max as I'm supporting both with s4m/s4mp, and for own needs I need very little in the way of i/o ability: just messages, audio, and channels in and out of csound.

thanks
iain



Date2021-09-23 15:19
FromIain Duncan
SubjectRe: [Csnd-dev] [EXTERNAL] [Csnd-dev] questions/discussions about the csound~ and csound6~ objects...
Great, that would be wonderful! A major goal of Scheme for Max / Pd is to have as much portability between the two, so it would be excellent if they can reliably use csound in a similar way.

Re your comment on the history, that makes sense. It looks like the csound object was a herculean effort to make it work in Max prior to the API and reentrancy, and that a lot (most?) of that code is still there. It has large sections devoted to multi-platform threading that aren't necessary anymore. Heck I remember it from 4.X days. 

I briefly played with the csound API many years ago and most of my Max and Pd external experience is in the event domain, so I will just slowly reassemble it bit by bit into a Max object to ensure I'm properly understanding every part. It will probably take a few months as I'm juggling other projects, but I gave it a good read last night and it's definitely doable for me. Is this the best place to post questions?

iain

On Wed, Sep 22, 2021 at 11:42 PM Victor Lazzarini <Victor.Lazzarini@mu.ie> wrote:
Thanks for this, I'm happy to support your efforts doing the port. It will be good to have the two aligned.

I think csound~ has a long convoluted history, it started life almost 20 years ago, before Csound 5, and it was not reentrant then. Then it was picked (not sure if freshly or reusing) by another developer and that's basically the code you see. I think all Steven did was update it to the Csound 6 API.

Prof. Victor Lazzarini
Maynooth University
Ireland

On 23 Sep 2021, at 01:46, Iain Duncan <iainduncanlists@gmail.com> wrote:


So assuming I'm right that everything needed is in csound_pd, Victor's csound6~ object's code compared to csound~ for Max is ..... TEN times smaller! 28k instead of 280k.

This is way more in line with what I was expecting to see, and having glanced at the code, is much more in line with what I was expecting to see. A Max port will no doubt introduce some extra complexity because we have to deal with the possibility of events and audio being in separate threads, and the Max SDK is not as clean and minimal as Pd's but even if it means twice as much, that is totally manageable. 

So question: is there anything we need to do or discuss, or I need to know, for me to port csound6~ to Max? I've not done anything before that was a port of someone else's work, or contributed to csound, so I'm happy to be told the protocols and expectations, etc.

Second question: any windows devs interested in helping at least on Windows builds? I know just enough to turn on my virtual machine and run the vscode project that Alex Harker helped me with for s4m... :-)

iain


On Wed, Sep 22, 2021 at 3:28 PM Iain Duncan <iainduncanlists@gmail.com> wrote:
Well I can certainly take a look and see if it's practical... Is the csound_pd repo the correct one for that? (last update in Oct 2019)

iain

On Wed, Sep 22, 2021 at 1:46 PM Rory Walsh <rorywalsh@ear.ie> wrote:
I think porting the current Pd object to Max would be a great idea. I was close to doing this some years ago due to problems I was having building the Csound Max object myself on Windows. In the end I managed to get the Max object to build, so I stuck a flag in it and walked away. The Csound Max object does provide a lot of Max-esque features, but at a cost. I think a simpler alternative would be every bit as useful. Sounds like you've volunteered for the job Iain! 

On Wed, 22 Sept 2021 at 17:48, Victor Lazzarini <Victor.Lazzarini@mu.ie> wrote:
I don't know anything about csound~ but csound6~ is fairly compact as far as I'm concerned.

Prof. Victor Lazzarini
Maynooth University
Ireland

On 22 Sep 2021, at 17:16, Iain Duncan <iainduncanlists@gmail.com> wrote:



*Warning*

This email originated from outside of Maynooth University's Mail System. Do not reply, click links or open attachments unless you recognise the sender and know the content is safe.

Hi folks, I'm hoping to start a conversation about the csound~ object and what can be done. 

I took a gander through the code, and was surprised to see how big it is. Maybe I'm grossly underestimating how much should be there to embed csound, but it seems to have a lot more code than I was expecting, and perhaps a lot that is of questionable necessity. (entire shell object, etc), thus making it harder to maintain (or to find a maintainer for)  I would like to help with csound in Max, but I don't know if taking on maintaining something so large is practical with my work on Scheme for Max and Pd and doing me thesis.

I'm wondering if Victor or Steven could share thoughts here. I haven't had a chance to dig into csound6~ for Pd, but is it more minimal? Would it perhaps instead make more sense to port csound6~ to Max? 

It would be great to understand the differences between the csoundapi~/csound6~ objects and csound~ for Max. Personally, it would be useful to me to have something very similar in both Pd and Max as I'm supporting both with s4m/s4mp, and for own needs I need very little in the way of i/o ability: just messages, audio, and channels in and out of csound.

thanks
iain



Date2021-09-23 15:34
FromVictor Lazzarini
SubjectRe: [Csnd-dev] [EXTERNAL] [Csnd-dev] questions/discussions about the csound~ and csound6~ objects...
yes, that’s the best place as there are others with API experience here.
========================
Prof. Victor Lazzarini
Maynooth University
Ireland

> On 23 Sep 2021, at 15:19, Iain Duncan  wrote:
> 
> Great, that would be wonderful! A major goal of Scheme for Max / Pd is to have as much portability between the two, so it would be excellent if they can reliably use csound in a similar way.
> 
> Re your comment on the history, that makes sense. It looks like the csound object was a herculean effort to make it work in Max prior to the API and reentrancy, and that a lot (most?) of that code is still there. It has large sections devoted to multi-platform threading that aren't necessary anymore. Heck I remember it from 4.X days. 
> 
> I briefly played with the csound API many years ago and most of my Max and Pd external experience is in the event domain, so I will just slowly reassemble it bit by bit into a Max object to ensure I'm properly understanding every part. It will probably take a few months as I'm juggling other projects, but I gave it a good read last night and it's definitely doable for me. Is this the best place to post questions?
> 
> iain
> 
> On Wed, Sep 22, 2021 at 11:42 PM Victor Lazzarini  wrote:
> Thanks for this, I'm happy to support your efforts doing the port. It will be good to have the two aligned.
> 
> I think csound~ has a long convoluted history, it started life almost 20 years ago, before Csound 5, and it was not reentrant then. Then it was picked (not sure if freshly or reusing) by another developer and that's basically the code you see. I think all Steven did was update it to the Csound 6 API.
> 
> Prof. Victor Lazzarini
> Maynooth University
> Ireland
> 
>> On 23 Sep 2021, at 01:46, Iain Duncan  wrote:
>> 
>> 
>> So assuming I'm right that everything needed is in csound_pd, Victor's csound6~ object's code compared to csound~ for Max is ..... TEN times smaller! 28k instead of 280k.
>> 
>> This is way more in line with what I was expecting to see, and having glanced at the code, is much more in line with what I was expecting to see. A Max port will no doubt introduce some extra complexity because we have to deal with the possibility of events and audio being in separate threads, and the Max SDK is not as clean and minimal as Pd's but even if it means twice as much, that is totally manageable. 
>> 
>> So question: is there anything we need to do or discuss, or I need to know, for me to port csound6~ to Max? I've not done anything before that was a port of someone else's work, or contributed to csound, so I'm happy to be told the protocols and expectations, etc.
>> 
>> Second question: any windows devs interested in helping at least on Windows builds? I know just enough to turn on my virtual machine and run the vscode project that Alex Harker helped me with for s4m... :-)
>> 
>> iain
>> 
>> 
>> On Wed, Sep 22, 2021 at 3:28 PM Iain Duncan  wrote:
>> Well I can certainly take a look and see if it's practical... Is the csound_pd repo the correct one for that? (last update in Oct 2019)
>> 
>> iain
>> 
>> On Wed, Sep 22, 2021 at 1:46 PM Rory Walsh  wrote:
>> I think porting the current Pd object to Max would be a great idea. I was close to doing this some years ago due to problems I was having building the Csound Max object myself on Windows. In the end I managed to get the Max object to build, so I stuck a flag in it and walked away. The Csound Max object does provide a lot of Max-esque features, but at a cost. I think a simpler alternative would be every bit as useful. Sounds like you've volunteered for the job Iain! 
>> 
>> On Wed, 22 Sept 2021 at 17:48, Victor Lazzarini  wrote:
>> I don't know anything about csound~ but csound6~ is fairly compact as far as I'm concerned.
>> 
>> Prof. Victor Lazzarini
>> Maynooth University
>> Ireland
>> 
>>> On 22 Sep 2021, at 17:16, Iain Duncan  wrote:
>>> 
>>> 
>>> WARNINGThis email originated from outside of Maynooth University's Mail System. Do not reply, click links or open attachments unless you recognise the sender and know the content is safe.
>>> Hi folks, I'm hoping to start a conversation about the csound~ object and what can be done. 
>>> 
>>> I took a gander through the code, and was surprised to see how big it is. Maybe I'm grossly underestimating how much should be there to embed csound, but it seems to have a lot more code than I was expecting, and perhaps a lot that is of questionable necessity. (entire shell object, etc), thus making it harder to maintain (or to find a maintainer for)  I would like to help with csound in Max, but I don't know if taking on maintaining something so large is practical with my work on Scheme for Max and Pd and doing me thesis.
>>> 
>>> I'm wondering if Victor or Steven could share thoughts here. I haven't had a chance to dig into csound6~ for Pd, but is it more minimal? Would it perhaps instead make more sense to port csound6~ to Max? 
>>> 
>>> It would be great to understand the differences between the csoundapi~/csound6~ objects and csound~ for Max. Personally, it would be useful to me to have something very similar in both Pd and Max as I'm supporting both with s4m/s4mp, and for own needs I need very little in the way of i/o ability: just messages, audio, and channels in and out of csound.
>>> 
>>> thanks
>>> iain
>>> 
>>> 


Date2021-09-23 15:48
FromIain Duncan
SubjectRe: [Csnd-dev] [EXTERNAL] [Csnd-dev] questions/discussions about the csound~ and csound6~ objects...
sounds good, thanks Victor.

iain

On Thu, Sep 23, 2021 at 7:34 AM Victor Lazzarini <Victor.Lazzarini@mu.ie> wrote:
yes, that’s the best place as there are others with API experience here.
========================
Prof. Victor Lazzarini
Maynooth University
Ireland

> On 23 Sep 2021, at 15:19, Iain Duncan <iainduncanlists@GMAIL.COM> wrote:
>
> Great, that would be wonderful! A major goal of Scheme for Max / Pd is to have as much portability between the two, so it would be excellent if they can reliably use csound in a similar way.
>
> Re your comment on the history, that makes sense. It looks like the csound object was a herculean effort to make it work in Max prior to the API and reentrancy, and that a lot (most?) of that code is still there. It has large sections devoted to multi-platform threading that aren't necessary anymore. Heck I remember it from 4.X days.
>
> I briefly played with the csound API many years ago and most of my Max and Pd external experience is in the event domain, so I will just slowly reassemble it bit by bit into a Max object to ensure I'm properly understanding every part. It will probably take a few months as I'm juggling other projects, but I gave it a good read last night and it's definitely doable for me. Is this the best place to post questions?
>
> iain
>
> On Wed, Sep 22, 2021 at 11:42 PM Victor Lazzarini <Victor.Lazzarini@mu.ie> wrote:
> Thanks for this, I'm happy to support your efforts doing the port. It will be good to have the two aligned.
>
> I think csound~ has a long convoluted history, it started life almost 20 years ago, before Csound 5, and it was not reentrant then. Then it was picked (not sure if freshly or reusing) by another developer and that's basically the code you see. I think all Steven did was update it to the Csound 6 API.
>
> Prof. Victor Lazzarini
> Maynooth University
> Ireland
>
>> On 23 Sep 2021, at 01:46, Iain Duncan <iainduncanlists@gmail.com> wrote:
>>
>> 
>> So assuming I'm right that everything needed is in csound_pd, Victor's csound6~ object's code compared to csound~ for Max is ..... TEN times smaller! 28k instead of 280k.
>>
>> This is way more in line with what I was expecting to see, and having glanced at the code, is much more in line with what I was expecting to see. A Max port will no doubt introduce some extra complexity because we have to deal with the possibility of events and audio being in separate threads, and the Max SDK is not as clean and minimal as Pd's but even if it means twice as much, that is totally manageable.
>>
>> So question: is there anything we need to do or discuss, or I need to know, for me to port csound6~ to Max? I've not done anything before that was a port of someone else's work, or contributed to csound, so I'm happy to be told the protocols and expectations, etc.
>>
>> Second question: any windows devs interested in helping at least on Windows builds? I know just enough to turn on my virtual machine and run the vscode project that Alex Harker helped me with for s4m... :-)
>>
>> iain
>>
>>
>> On Wed, Sep 22, 2021 at 3:28 PM Iain Duncan <iainduncanlists@gmail.com> wrote:
>> Well I can certainly take a look and see if it's practical... Is the csound_pd repo the correct one for that? (last update in Oct 2019)
>>
>> iain
>>
>> On Wed, Sep 22, 2021 at 1:46 PM Rory Walsh <rorywalsh@ear.ie> wrote:
>> I think porting the current Pd object to Max would be a great idea. I was close to doing this some years ago due to problems I was having building the Csound Max object myself on Windows. In the end I managed to get the Max object to build, so I stuck a flag in it and walked away. The Csound Max object does provide a lot of Max-esque features, but at a cost. I think a simpler alternative would be every bit as useful. Sounds like you've volunteered for the job Iain!
>>
>> On Wed, 22 Sept 2021 at 17:48, Victor Lazzarini <Victor.Lazzarini@mu.ie> wrote:
>> I don't know anything about csound~ but csound6~ is fairly compact as far as I'm concerned.
>>
>> Prof. Victor Lazzarini
>> Maynooth University
>> Ireland
>>
>>> On 22 Sep 2021, at 17:16, Iain Duncan <iainduncanlists@gmail.com> wrote:
>>>
>>> 
>>> WARNINGThis email originated from outside of Maynooth University's Mail System. Do not reply, click links or open attachments unless you recognise the sender and know the content is safe.
>>> Hi folks, I'm hoping to start a conversation about the csound~ object and what can be done.
>>>
>>> I took a gander through the code, and was surprised to see how big it is. Maybe I'm grossly underestimating how much should be there to embed csound, but it seems to have a lot more code than I was expecting, and perhaps a lot that is of questionable necessity. (entire shell object, etc), thus making it harder to maintain (or to find a maintainer for)  I would like to help with csound in Max, but I don't know if taking on maintaining something so large is practical with my work on Scheme for Max and Pd and doing me thesis.
>>>
>>> I'm wondering if Victor or Steven could share thoughts here. I haven't had a chance to dig into csound6~ for Pd, but is it more minimal? Would it perhaps instead make more sense to port csound6~ to Max?
>>>
>>> It would be great to understand the differences between the csoundapi~/csound6~ objects and csound~ for Max. Personally, it would be useful to me to have something very similar in both Pd and Max as I'm supporting both with s4m/s4mp, and for own needs I need very little in the way of i/o ability: just messages, audio, and channels in and out of csound.
>>>
>>> thanks
>>> iain
>>>
>>>