Timur's CppCon presentation


#1

Great talk Timur! It was really exciting to see a talk about the audio world in C++. You never really see anything about it and you did a great job with this one. There was a lot of things discussed that I had no idea about, mostly due to the lack of resources for audio programming. I just wanted to express my appreciation for this talk, and for everything the JUCE team does in general. Thanks guys!

By the way, if you haven't seen this video yet, here's the link. Also, Timur mentions a talk that Jules have on the ProJucer. Will there be a video on that one too?

https://youtu.be/boPEO2auJj4

Also, maybe we can have some discussion about the topics in this talk on this thread? My first question would be, what alternatives to things like std::sin() should we be using for audio? 


#2

I dunno how std::sin works, but i assume it does a calculation. For audio, you can get very clean sine waves by reading a preMade table. I just cloned pure data’s osc object, and it’s just 2 point linear interpolated lookup of a 1024sample table containing a sine wave.


#3

Great talk ! I would love to see tutorials about how to do all this stuff with Juce


#4

Great, I've been waiting for Timur's talk!

An efficient lookup table should be faster than std:sin(). But I did some profiling on my Mac Book Pro and a naive lookup table implementation isn't necessarily faster if you just don't bother to wrap the phase when using std:sin() (which is unnessary for synth voices unless they are really long). I'll check out the pd osc~ implementation an compare at some point..


#5

great talk!

at 53:50 : there's an implementation of lock free queue in juce?


#6

Really happy you guys liked the talk. I am looking forward to do more of these in the future. And of course there is the JUCE Summit coming up here in London in November :-)

(Are there any particular topics you would like to hear about?) 

The lock-free queue question: Have a look at the AbstractFifo class.


#7

Yeah thanks Timur!  Very informative, and your speaking style is good - i usually doze off watching these sort of vids, but was fine with yours :)  


#8

Thank you Timur . Ive learned a lot from this talk. You have covered few important topics there .

Im still puzzling with the pagging memory issue, for example in conjunction to audio sample memory read. What did you mean with reserving memory regarding sample playback scenario ? Can you ellaborate more on that regarding juce usage (AudioBuffer etc) ?


#9

very nice talk thanks!


#10

Very nice talk indeed. Thanks.


#11

Great talk! I wish it had been available 5 years ago when I started :-)


#12

I'd like to echo the comments of others on this thread. Very interesting talk. There definitely isn't enough of these type sof talks available to people in the field. Any chance we'll see Jule's talk too?

I really hope that talks from the JUCE summit will be made available at some stage.  


#13

Great talk!

Why not use std::atomic<> in the JuceDemoPlugin then, and teach some good practise?

A note about std::atomic<> in the documentation of the AudioProcessorParameter would also be quite helpful, I guess.


#14

Because not all our users are on C++11 yet. When they are, we'll certainly start using the newer classes.


#15

+1 this was a really informative talk. Thanks Timur 


#16

Cool! I just noticed an episode of CppCast (a podcast about C++) with the title "JUCE with Julian Storer". It's great to see JUCE doing these kinds of things. Now we just need you to record the summit. :)


#17

Hey Jordan,

Thanks to a sponsorship from Google, we can confirm that all the talks and workshops at the JUCE Summit will be recorded! We expect to release them online in December. 


#18

I'm very grateful for this achievement, thank you, jb!


#19

I'm glad this presentation is online to stream! I know what I'll be listening to on the drive home today. Thanks Timur, and the JUCE community for bringing it to my attention that this presentation is online. Cheers!


#20

It will be great also for people who will be there but can't see all the workshops happening at the same time !