All right. Hi. Well, my name is Rostislav. I go by the alias Adam Newker. I work for Mozilla on video compression and I am an FFMPEG developer. What are we talking about today is is something which is kind of unusual for me because I usually go for technical talks. I confuse everyone in the audience.  What I'll be talking about this time is is more of a history on what has happened with with codecs which have tried to to push the boundaries of what is possible with video compression and how a video codec is developed and how old codecs might also be of some use. So the title of this talk or the whole talk might have been a bit influenced by a post which was recently posted by the MPEG head of the chairman of MPEG and he said how the development model of AV1 is killing innovation and it's killing research done on video codecs. And I'm just here to tell, well, that is completely wrong. And I'll start by doing the exact opposite of proving he's wrong by saying well, how did we get to this point and what codecs did not help us to get to this point? So we're at this point now where we have a standard set of coding tools which are used by pretty much all video compression codecs everywhere. And so we have a motion vector search. You'll get a Q index for the frame which is part of the break control system so it's not really needed to get this right. You do an audio search for each block. This is the scalar quantization, loop filter, some entropy coding and most of these tools were present in, well, all of them were actually present in MPEG codecs since the 90s. So you might say, well, MPEG has completely changed revolutionized video coding and that's partly true. They've shown us a way that we can do things which is guaranteed to pretty much work. So if you implement this, you can just badge a new codec and it will work just as well as any other MPEG codec. But I'm here to talk about the codecs which came from left field, so to speak. One of these codecs was Jirak. Jirak was an attempt at making an X-generation codec by the BBC. They were planning to use this in their broadcast networks. They were planning to have hardware support. They had vendors lined up. They had all sorts of advanced coding techniques but it was all let down by the very thing it tried to implement which was wavelets. See, wavelets came more or less from around the 90s and people were convinced that they were the future of video encoding. What they didn't realize was that wavelets were impractical in the way that wavelets were not very practical for video encoding instead of image coding. They worked very well for image coding but they didn't work well for video coding where you constantly have to copy parts of an image to another part of an image and wavelets didn't really perfect that. Another codec which tried to revolutionize image coding this time was JPEG 2000. It's newer than JPEG so we would expect this to be far better than JPEG but it isn't. It uses all kinds of new techniques to try to compress images better but it doesn't do a much better job than JPEG and it's such a shame that nowadays it's being used in the cinema industry and VLC are complaining that they cannot decode DCPs fast enough. Another codec which also tried to revolutionize video encoding was SVQ 3. The reason why they failed was their business model. They didn't publish anything and people had to reverse engineer the codec from their tools and if they have to reverse engineer it then they're probably not going to border writing and encoders so the codec itself won't develop in the open source scheme and it won't develop in the commercial scheme as well because there's no support for it really. Another one was DALA which tried to do things completely differently in order to evade software patents and at the end it caught up to HBC and was considered to actually surpass it in terms of image and video quality. Unfortunately, it was well, deprioritized in order to work on AV1 which was kind of a success actually because the outcome was that two major coding tools were reported to AV1 and one was rewritten. Finally, you might think that I'm biased and that MPEG itself had no negative codecs and were always perfect in everything they did. Well, that's not always true but in MPEG 4 they completely messed up. It was an insanely complicated and massive codec which required people to actually write a good software implementation in order to actually popularize it and that is part of the reason why it became popular because of encoders like Xvid and Dvex but it brought something to the table as well, global motion. So all of these codecs didn't realize they didn't have potential or they didn't have the wrong business model or were deprioritized and so on but what does it take to develop a new codec? Well, you need to balance... Did I miss a slide? No, I didn't. You need to balance all of these three things so you need to satisfy hardware complexity you need to satisfy software complexity and you need to satisfy compression as well and finally, you also need to satisfy the actual licensing as well as any patents as well and if you don't do that then you suffer the fate of the previous codecs which I talked about. So, well, the two are inherently incompatible so what is easy in software is kind of difficult in hardware usually and what is easy in hardware so stuff like conditions and branches are a pain to work for in software because hardware has no predictors and misbranches and things like that which reduce performance quite a lot and if you reduce performance you generally increase complexity as well because you have to either try to make it simpler or you just leave it as is and suffer the penalty but eventually from the components which I listed in my first slide which are the essential parts of writing which are the standard way you write a video compression codec nowadays one of them or most of them are going to bottleneck so you can constantly improve it you can reduce software complexity you can increase compression but at the end one of these tools is going to give up it's going to bottleneck you in terms of compression so you have to replace it and where exactly do you get ideas from where to replace it from well, you pick them up from old codecs so like I said, Dalek contributed some tools to AV1 MPEG4 had a little bit of contribution as well B-frames didn't make an appearance because they were unneeded because you could do more flexible things with the way that VP9 had its invisible frames so there was no need for B-frame support so at the end you need to know where to change things from you need research and since none of them want to have compromises on compression or on any other coding tools then really you need to pick ideas either from research papers or from old codecs so if you want to see what's going to be an AV2 or AV1 plus 9000 or something you need to look into what older codecs did and what research has been going on because while the codecs themselves didn't make it in terms of popularity they did leave research behind which might still be developed, you never know wavelets are still being researched and they have found a bit of application in terms of error resilience because wavelets are very resilient errors AV1 does not include wavelets but who knows maybe AV2 will so I finish a bit early and you might think that I should just end it but I don't because I have a small encore see I've been working on Vulkan recently Vulkan if you don't know is a new API for accessing the GPU and what it allows you to do is completely control the GPU in order to have perfect in order to know what it will do predictably and in order to have consistent performance on all vendors and drivers so the reason why Vulkan has never been used the reason why other APIs like Direct 3D and OpenGL have never been used in video encoding was that they were quite a lot limited in what they allowed you to do and they were extended infinite number of times like with OpenGL's frame buffers which kind of allowed you to render off-screen but Vulkan completely re-does the way that that you access the GPU and it allows you to do interior things which were impossible to do with conventional APIs so one of the issues with using Vulkan or GPU to do video encoding is getting the data there in the first place so with OpenGL you had to create a texture and then you had to upload it in some way and this was CPU bound so even though you could have a hybrid kind of encoder you still had to have a dedicated thread to upload images to the GPU and download information back and having another thread usually it scares people who work with OpenGL because OpenGL has a global portrait state which is hard to work around with thankfully Vulkan gives you many, many ways in which you could upload data to the GPU in the first place one of the ways is the traditional way of doing it so you have a linear image which is lying around on your host ram what you could do is you could create a Vulkan linear image you could map the memory which packs that image and you could memory copy your image there you don't need any global thread states you don't need to mess around with anything you just map it, upload it, it's there you still use the CPU however so you still need a separate thread another way is the traditional way of doing it because using a linear image which is to say that the data is laid out as it is on your host ram and GPUs hate that because of cache currents is you could have a device local optimally tiled image you create a host visible linear buffer you map it, you upload it and then you use the command queues to actually copy copies what you could do instead is what Vulkan allows you to do finally using an extension still is you could create a host visible image like exactly like one but instead of using this image to do your calculation zone you could instead copy it via an asynchronous queue to another image which is optimally tiled and the best part is you can actually import file descriptors or CPU host memory and then the driver or depending on how well it's implemented can do the copying for you so you don't have to have a separate thread in order to copy things to the GPU you could just send it right away it will create a temporary image but in theory this will be much faster than anything has allowed so this Vulkan allows us to solve one issue another issue that comes with using the GPU 22 encoding is that it's not very practical in terms of what it offers so video encoding is usually very sequential you have a bunch of coefficients you need to quantize them, you need to encode them and you have a very large amount of predictions so each coefficient depends on the previous one and each bit inside the bit stream depends on the previous one so things like doing entropy coding on the GPU is simply practical and infeasible with any API or with any GPU but what you could do instead is you could have an algorithm which does things like searching for block sizes and psychovisual weights on each bit of the image so you could export that to the GPU and since you do the uploads for free if you have a look ahead which is sufficiently large so a few frames then there's no problem of actually just exporting this whole process to the GPU so you could have CPU which will instead do things like search more block sizes and motion vectors and quantization indices for each block so what you could also do is you could search for motion vectors this will also save you a large amount of time if you were to do this on the GPU as well there's quite a lot of research that went into using the GPU for motion vector search there's quite a lot of algorithms there's a lot of research papers but unfortunately there's very little actual code and most of the research involves CUDA which is the standard way you use the GPU for anything right now and it's vendor locked and it's horrible and you need proprietary drivers to actually use it so it's a no-go for most people but thankfully Volcan allows you to have a generic path for all GPUs and for all real operating systems not this one, not on the Mac because it's not available on Mac it's only available on Linux and anything which will implement it Mac doesn't because they want to have their own metal thing which if you have looked at it it's exactly like Volcan in absolutely every way they even call things the same way as Volcan does so you could potentially just do a string substitution and end up with something working in metal but that would mean actually having to template every single bit of code you make so it's unclear why they haven't allowed it but thankfully there is an open source alternative which allows you to interrupt metal with a Volcan API so this solves the second issue you could still use the GPU for something for video encoding now there's a third issue when using the GPU to encode and it has to do with memory management you see allocating memory on the GPU is kind of expensive because you have to go to the driver and then the driver has to do all the management has to find memory, has to set it to be yours and let's not forget that GPUs are quite a lot like just CPUs with quite a lot of threads so it still has a memory management unit which maps physical addresses to virtual addresses and back and forth so one of the things you could do with Volcan is it allows you to lazily allocate memory on the GPU which is to say that you don't have to allocate all of your memory at startup instead you could let the GPU handle things like temporary buffers or temporary images for in-between pipeline image transfer or information transfer where you don't waste memory unless it's actually needed so lazy images allow you to also completely eliminate the need to do any kind of image copying or buffer copying as well because the GPU or the driver itself is usually smart enough to know when it's safe to just reuse that bit of memory without actually having to copy it so potentially lazy allocated memory could save your memory and time actually doing a GPU's GPU mem copy if the compiler is smart enough and if you manage your buffers well enough another issue is that if you don't reuse images so for instance if you're the coder running coder can support any number of pixel format changes or width changes or height changes then you may end up in a situation where you constantly destroy your buffer pool and then you reallocate it with this new pixel format but thankfully using Volcan and its new multiplane extension you could allocate many multiplane images at once and the driver should internally pool with resources and decide which one needs allocation by checking which one of the previous images it can reuse and finally the final issue with using the GPU to do encoding is that you need to get the data back in somehow and thankfully Volcan like everything it does allows you to do many ways to actually get the information back so you could put it in a host visible buffer, map it you could even export memory via a file descriptor and then seek into it and read it like a standard file descriptor and the driver will do the copying or any management for you if it has to or it could just do it in place so this is my work in progress tree right now it doesn't use the CPU less uploading but it's all work in progress it does do arbitrary filtering and it is able to import DRM frames it cannot do anything useful with them because of an underside with the spec but it's all there, you can test it and hopefully it will get merged in the fmp3 soon so you would give it a test you could run arbitrary shaders and so on so any questions? sorry? the hack the hack? oh did I have to hack anything? no actually there's an external handle you can use to import memory in Volcan and this happens within your extension which is just posted and it does work however the image you get is styled so if you try to read it like a tile image and copy it to another image it will end up scrambled because the driver doesn't yet support detailing using DRM images as a source but I've contacted meso developers and they're planning to put a new extension up which will allow you to do that there's also another extension on the development which will allow you to also use the same part for DRM importing to do importing of OpenCL sparse I know and VA API images so you could potentially do processing right on VA API decoded images without any overhead to the CPU great team another question I think somewhere there no? well it makes sense because I went quite a lot of off topic because I found out at a later stage that my original topic was a bit too small to actually fit in 25 minutes but thankfully this is better, much better yeah it is, isn't it? last chance for a question since ffmpeg involves much more than mpeg do you think of renaming the project at some point? no thankfully because look it's now going to be cool once mpeg goes down so it's going to be cool in a retro sort of way thank you memory off sorry? memory off memory off oh last question perhaps yes? you mentioned CUDA but proposed using Vulkan instead yep but as I understand it OpenCL is the open equivalent to CUDA isn't it? so why are you using Vulkan instead of OpenCL? well because Vulkan is newer no actually because Vulkan allows you to do all things which you aren't allowed to do with OpenCL granted OpenCL is more comfortable to work with than Vulkan's pervy format which means you need a separate compiler in order to actually compile Vulkan kernels into pervy and then upload that somehow using the API to the GPO but Vulkan does allow you to do more things with the GPO than OpenCL and it's newer which is better okay thank you Atom Nuka alright thanks


Tom here for more systems we're gonna talk about privacy problems of zoom and what can be done about it and why open source It's just a better way to go If you want to learn more about me or my company head over to launch systems comm if you'd like to hire short project There's a hires button up at the top if you want to support the channel in other ways There's some affiliate links down below to get you deals and discounts on products and services that we talk about on This channel and zoom I've used him quit a few times I have been at the mercy many times of the tools that are available That work really well and had to use it because I was invited on a podcast or a YouTube channel And this is what they were using. I've used it myself for a while. It works really well But when you can't figure out a business model or even when there is payment going in frequently selling your data is a way They monetize all the things of the internet that you get for free or even pay What seems like a really reasonable price for zoom is no exception to that. They've had a lot of problems They've really I was happy and I didn't report that they stepped up their game and are offering a lot of free services during the pandemic here But that comes with the challenges of what are they doing in the background? It's all closer, so you can't see it and they say research groups say they're using shady techniques News likes to grab on to things that can you know are very headline grabbing zoom being in the headlines Well, it's very headline grabbing and that's all I can really say about they're not really offering a solution to the problem And I will point out the EFF has some good information on zoom now first thing is zoom is not as end-to-end encrypted as people Think it is and this is the first challenge the privacy implications There's an assumption of privacy that your conversations private well technically zoom has access to it So if I start a video conference with you zoom also becomes that third party So is it an end not in a traditional sense of a very strong and an encrypted product where only me and the person I'm talking to are involved zoom actually has the connection as well zoom has not been forthcoming about what they do with the data This is where some of the problems come in But their popularity simply because it works so well. I will go a step further and say You know I think zoom is probably still one of the good ones out there in terms of ease of use ease of setup easy for people to present And get data around but never you should assume that you should share very personal information now this gets even more convoluted because they relax some of the HIPAA requirements for telemedicine and Zoom is on the authorized list, but technically you are not just sharing it with you and the medical professional It may be conferencing with you if zoom depending on what they do with their privacy Well, they can have someone watching it there. That's definitely an issue that is not really easy to address So I still think zoom is a pretty good product, but I will admit is there something better Yes, there is and it's been a while since I really dove into Jitsie I remember when it was a small project and it's become quite the big project and quite reliable and we're gonna start with Is Jitsie free? Yes, but Tom doesn't have just mean they're selling my data again and no So I want to start there before we dive into what Jitsie is here So Jitsie is a set of open source projects that allow you to easily build deploy secure video conferencing solutions We are best known for our Jitsie meet video conferencing platform meet dot Jitsie Where most a where you can host a Jitsie meet instance for the community and the user can totally have free video conferencing with the Jitsie video bridge it provides multi-party video compatibilities is Jitsie free Yes, it is Jitsie is a hundred percent open source freely available and develop We also run Jitsie dot means a free service and of course this means how does they get paid? You can't just run things for free if you know how the internet works servers cost money Especially things like this here. So how to what funds all this and I'll highlight this right here We are fortunate that our friends at 8 by 8 8 by it is another phone company uses Jitsie technology for products like their virtual office So they actually bundle this into a commercial product over at 8 by 8 by doing so This is the free version that you can use on their website So you can go here start a video conference and you're gonna notice There's not even a sign-in option at the top So actually there's a little bit of confusion some people have about Jitsie of well How does it work if I don't sign in that they're not stealing my privacy? And we're gonna show you exactly how to start a Jitsie call.   All right. I did it You please note They don't have any information on me You can actually see behind the scenes in the studio what it looks like behind me too. So that's kind of cool That quickly I can start it I have I can add a password because if I don't add a password by the way Anyone who has this link up at the top here is going to be able to go meet that Jitsie a stupid name for your meeting And they can join but if I put a password on it not everyone can join so Jitsie works perfectly fine for this It's probably weird seeing a delay for how that works, but let's talk about feature-wise view full screen start a live stream They support live streaming via YouTube you can tie your YouTube account to this Please note. I've tied nothing to this so it's just gonna ask me. Hey, would you like to do this once again? No privacy problems. What about screen sharing? Well, let's do that So go over here and we can go to share your screen. We'll choose an application window and Let's see We'll just choose what we can that would be weird. Let's see happens. We share this Now that's fun So yes, you can and I can move the mouse and make it have fun. Yes, you can share your screen I just had too many other things open so I can do this without having to load any plugins Please note. I loaded no software. I shared no information with Jitsie I didn't do anything but turn it on create a stupid meeting name and join then you can share it out to other people So there's a lot more features that maybe I'll do a more in-depth video on Jitsie But it's pretty easy to get started pretty easy to start with the features The fact is you don't have to load anything the only thing that you didn't see me do because I've used it before Was it asked to allow to use my webcam and microphone which I said yes to get this meeting started So it's a free product, but it's funded therefore is not built on selling your data It is also open source and one of the things you see has is the ability to build your own Jitsie server If you're familiar with how to set up Server images they have a lot of instructions how to do this and you can build this within your own company within your own Hosting platforms and host it online and say you know what I don't trust Jitsie even though they're open source But the source code is available. I don't trust them to host it. I wanted to host it all myself. Well They give you that ability now you've eliminated I think more corporate companies should probably look into things like that if they always have questions about these third parties And maybe what they're doing with it and they want to host it themselves because they have infrastructure They you know have the ability to spin up a cloud server on this is something even when we've thought about doing is having our own Jitsie because then I can set up a Jitsie instance just for my company and I know it's well trusted easy to do requires No plugins and easy to Get people started and I'm without those weird privacy concerns and sign-ins and everything else So I'm gonna say Jitsie is probably one of my favorite alternatives to zoom It still doesn't have as many features as zoom I you know that's a little bit of a challenge one of them that I really like is the way zoom splits out and manages all The audio but Jitsie does have the ability to record they just happen to save it to Dropbox But if you host your own instance more options can become available So it does require some Dropbox I believe is the only way you can save the meeting directly versus zoom natively will save it to your computer So there's always privacy concerns with any of these places I always just keep an open mind on them and very much read all the details I know no one really wants to read those terms and conditions But no one should really be surprised at a private company that gives away a product for very low prices or even free in Many platforms has a bunch of privacy implications where they sell your data because monetizing the fact that you exist And what you do with your existence is pretty much a common business model with the internet right now So always keep an open mind about that, but go ahead and check out Jitsie. I'll leave a link to it It's a great product and you know if you're just too concerned about zoom do it also when you're transporting things on the internet And you're not as clear on the encryption Just use caution when you're doing it if you're if you're really unclear I just bring it up a lot because people think hey look it says it's encrypted I see the padlock I see the lock on there always double-check think about the platforms you're using It's more about awareness than anything else be careful what you share only if you really really trust the platform and the encryption methods on there All right, thanks, and thank you for making it to the end of the video If you liked this video, please give it a thumbs up if you'd like to see more content from the channel Hit the subscribe button and hit the bell icon if you like YouTube to notify you when new videos come out If you'd like to hire us head over to laurancesystems.com fill out our contact page And let us know what we can help you with and what projects you'd like us to work together on If you want to carry on the discussion head over to forums.laurancesystems.com Or we can carry on the discussion about this video other videos or other tech topics in general even suggestions for new videos They're accepted right there on our forums, which are free Also, if you like to help the channel in other ways head over to our affiliate page We have a lot of great tech offers for you and once again, thanks for watching and see you next time


You know, there have been many fan theories concerning the subscribe button for the Grand Line Review. Some have said that it is the final road pornaglyph, whilst others claim that it is Luffy's biological mother, which explains his tendency to smash things. However, the most outlandish theory by far is that pressing it will deliver regular One Piece content uploaded straight into your YouTube feed, which is so absurd that I probably shouldn't even have mentioned it. Try it anyway, though. Hello and welcome to the Grand Line Review, your source for everything One Piece, and today we are doing something unusual by diving deep into the realm of theories. Not something I generally do outside of chapter reviews. However, there is a twist to this here topic because I'm not necessarily looking for reasonable sounding thoughts or predictions now, that's boring. And in fact, I am far more interested in the realm of obscurity. So I put up a community post on the channel asking you amazing people for some of the more strange and left field One Piece theories that you have heard because there are many theories out there that are well thought out and put together, but pretty much every other One Piece channel on YouTube caters towards that kind of content. So internet, hit me with your weirdness. Sanji is a devil fruit, that's why his eyebrow is swirly. All right, well, I guess I did ask for it. So I think I have actually heard this one before, although I don't think it's ever been in a serious context, it's a bit meamy. But you know, sure, why not? It would be something of a twisted irony, you know? The talented world-class chef who is himself a food. And not only that, but an incredibly poor tasting food as well. Plus, swells are pretty damn compelling evidence. In fact, with that in mind, I think that we here today can quite comfortably confirm that every member of the Vince Moke family is indeed a devil fruit, all of whom taste horrendous, Rageau included, yeah, come at me, Rageau stands. Also, FYI, in the manga, Vivi's breasts in particular are also devil fruits. Not in the anime version though, because they remove the swirls. So yaza, that's gonna come back to Hontoe when Oda makes that revelation. But you know what bothers me most about this whole Sanji as a devil fruit theory? It's because nobody tends to take it further and state exactly what kind of devil fruit Mr. Sanji would be. And my personal speculation would be a mythical Zoan model pervert. Kinda late add-on, but there's a theory that the reason Luffy has zero interest in girls is because NL hit Luffy in the balls. All right, I'm going to be very honest with you, Blazer the Dazer. I think you're 100% right. Because if we recall the events of Alabaster, Luffy was, he was keen to see the display put on by Nami in the women's bath. But after that, he never displayed such an inkling again, as demonstrated by yet another bath scene featuring Boa Hancock. So yeah, as I think we're onto something, not really obviously, but yeah, let's go with that. Dragon is somehow the first to have two D.F. winlogia and mythical dragon Zoan, plus he's Uranus. Or Uranus, I suppose, to make it sound less like Anus.  And personally, I think it's just incredibly greedy for the user of not just one winlogia, but two winlogias, according to this comment, as well as a mythical dragon type on top of that. And I know that's not what this guy is saying, but that's what I prefer to think. And it's probably just as likely. Dragon is a prime candidate for speculation as quite possibly the most mysterious character in the series. And as such, anything and everything will be attributed to him. Not just the obvious, but as we see here, dragon is also an ancient weapon. Then again, dragon is also often cited as a former Marine Admiral. And there's also the obscure train of thought that dragon is himself the one piece. But of course, my favorite piece of dragon-related speculation is that he is Luffy's mother. That's right, not just the father, but mother as well. Speaking of, does Croco-Mom count? Croco-Mom absolutely counts. And I'm sure this is something that each and every one of you has stumbled across. But due to that little conversation between Evenkov and Crocodile in Impel Down, where Evenkov claimed to know Crocodile's secret, it is not only fannin' now that Crocodile was once a woman, but this lot has been taken further to very dangerous places. And now whether you like it or not, Crocodile is indeed Luffy's mother. That really was the danger of releasing Evenkov into the swallow, because now literally any character can be Luffy's biological mother, with just a bit of hormonal assistance.  The potential is rather unfortunately endless. Blackbeard is three little men in a coat. Ha, I love this. Of all of the explanations surrounding his ability to consume multiple fruits and frequent ties to the number three, this is certainly my favorite. And how could anybody even come close to being disappointed with a twist like that? I mean, just imagine that beautiful chorus of Zepahas echoing all across the ground line. That Zoro's natural sense of direction is actually pointed to Laugh Tale. All right, so I think this one forms part of a collective of cracks or thoughts. One of which is that he has been to Laugh Tale during the two year time skip. Here's the thing though, I would actually be quite keen for Zoro to be the first straw hat to step foot on Laugh Tale after accidentally discovering it somehow, while the rest of the crew are in the general vicinity. Kind of like how he was the first to arrive on Saabidi, although that was largely thanks to Perona. Still, just imagine the comic potential of Zoro being able to say that he, the man with the worst sense of direction in the world, was the person to discover Laugh Tale after all of this time. But that's not the end of this because we still have some more Zoro to come. That Zoro will open his eye and have some kind of sharring gun. Now we need to be careful about how I say this because I've certainly done it myself, but many have their tendency to latch on to hidden features and claim that they will always have a profound purpose. In fact, I, for one kind of live by the idea that if a primary character is given a mask, then it is for the sake of having a reveal down the line. And for the most part, I think that's proved pretty accurate with one piece, but with all of that said, I do want to stop hearing about Zoro's eye. And there's all sorts of thoughts and deviations on the sharring gun idea, like the idea that he has contained the demon of a cursed blade in that eye and all sorts of things that point to similarities with Zoro's relief. Sometimes though, a design element is just a design element, but I am fully prepared to eat my words one day if he does open that eye to reveal a squishy ball similar to those owned by a certain Mihawk.  Geen is every mystery character. That's right. Ever since the conclusion of Baratiae, a certain segment of fans have been rather desperately anticipating the return of Geen, a man who almost certainly died not too long after we last saw him. He is one of the very, and I mean very few characters, who has never appeared in the series again. And even in 2020, as we prepared to take on two of the four emperors in mono, speculation is still rife with one of the more recent ideas being that Geen was now a member of the Tobiropo or maybe even CP0 or Sword or actually anything. If it exists, it is Geen. And given that this train of thought has been running strong since 1999, I don't think it's going to slow down anytime soon. Strangest theory I came across in one piece is Bonnie is pregnant with Asa's child and she is hiding it with her devil fruit abilities. Something like that. I don't remember the whole theory, video or the guy who made. I watched that video really long time ago. And I, yeah, once again, I think I brought this on myself by asking for these theories. No comment. At Sanji Learned newcomer Tempo and that he can use Deathwink with his hidden eye and TBH, I would love to see it. All right, so I'm assuming you mean Kenpo. And this is kind of like a variation on the Zoro Shoringan theory, you know, because one eye is hidden so it clearly must have a hidden purpose. Just like Sanji's initial hidden eye, which had mountains of speculation regarding it. And then the post-time skip came and went and it was, well, it was nothing. I do find the thought of Sanji using Deathwink quite funny though, a technique that he would only invoke in the most desperate of situations, brushing his head to the side to reveal eyelash extensions and combat mascara. And in fact, maybe he even has to put on the dress in order to use it to full effect. This could be Sanji's own personal soccer king here, an alter ego disguise, Sanjina perhaps, princess of the German kingdom. Meadows is Kaido. So I'm starting to see a trend here. A lot of the theories tend to center around this person is actually this person as well as this person gave birth to that person and this person bones down with this other person. Still, this whole Meadows is Kaido train of thought was one of the craziest niche ideas that I have ever experienced because I quite vividly remember this one circulating through the fan base specifically on AP forums. And if you're not familiar with it, basically Meadows was this dude who was in the card of Colosseum and he appeared in the Battle Royale. But then unlike most other competitors, he wasn't seen again. So people latched onto this and thought that there was some purpose behind keeping this particular character shrouded from the story. But then of course he did appear again randomly and that put a halt to any sort of thinking along those lines. Once again, signaling that sometimes there definitely is no grander plan. Roger's base had a theory that Randolph the rabbit homie had me hawks soul. I think I very vaguely remember hearing something along those lines. And this is one of those situations where we really should not judge characters purely based on the hats they wear.  And that is almost certainly conveying a connection there. But that is a bit different seeing a rabbit in cosplay. And while we're here though, let me just say that Randolph was probably one of my favorite characters introduced on Hawkeye Island. And I always thought it was a bit of a shame that we didn't get much more of him. And again, you could probably say that for most characters in that arc or indeed the entire post-time skip section of the series. Roger had the jacket jacket fruit, but never used it. All right. So I actually really liked this one. The idea that the pirate king had one of the most useless double fruits in existence and became king despite that. However, and this is a big however, in Roger's hands, the jacket jacket me is actually pretty damn perfect because this is the very rare circumstance that will grant this fruit some good use because imagine a situation where say Roger unzips and then tells Garp to get inside him in a completely platonic way of course, but thus going on to become one of the most powerful beings that this world has ever seen. I once saw a man say that Kaido is a road pornographic but YouTubers sometimes make fake theories for views. Maybe that is why. And look, I need to own up to this one. I mean, I certainly did not create this theory but actually did quite enjoy it. And I would have been completely on board with the idea that Kaido was a pornographic that was given a mythical zone or something which was why he's completely unkillable because the pornographers themselves are effectively indestructible. So I may just may have let this idea slip out in a couple of chapter reviews and you know what? At the time of this recording, Roger still has not provided an explanation for Kaido's godlike toughness. So meh. Akainu is in love with Kuzan. Excellent. So what we're implying here is that punk hazard was either a lover's quarrel or 10 consecutive days of Loki users banging. I see. And I mean, it certainly gives new meaning to the term fleet admiral position. Alkeji can freeze time. Ah, okay. That's actually a kind of funky abstract take on the fruit. And before one, I would have said that that was completely ridiculous because Oda never messes around with time but look, we have Tokyo now. So all of that is out the window. So sure, why not? The awakening of the here here to me allows one to use the world. Sure. Heracles is green bull and I kind of support it. I mean, everyone believes that GB can control plants and Heracles never removed the armor. Then GB has been away for years. I don't understand the last sentence there but why does quote unquote, everyone believe that green bull can control plants? Is it just because he has green in his name? He could control any green thing. I mean, he could be an avocado logia for a wino but that doesn't even properly delve into the discussion at hand here. So we're positing that this man is actually this man. Yeah, okay. Why not? Seems legit. Sanji is stronger than Zoro. Ha, ha, ha, oh dear. This one takes the award for the most outlandish theory of the day. I probably don't even need to go into this one and we're definitely not going to top it. So this does seem like a solid place to end. Although in all seriousness, Sanji fans don't come at me. I honestly do not care who is strong. But what do you guys think? Please do leave your thoughts in the comments below or even join my discord server. And if you'd like to see more videos like this then please do go and check out some of my other content or even subscribe to the channel for more glorious One Piece business uploaded straight into your YouTube feeds. But for now, this has been the ground line review and I'll see you next time.


The show, it's me, John Park, and here we are at John Park's workshop. I have so many cool things that I'm excited to show you today in the workshop. First of all, there's Lars back there spinning around. I don't even need that on right now, but I was just excited and started turning all the fun things on. Lots of cool projects and updates and things to show you today. A new project in the works, too, that we'll launch today. I've got a CircuitPython parsec I'm going to do. I have, what, a recap of the JP's product pick of the week show I'm going to do. Take a look at the jobs board, some plants, succulents and such. I don't know much about plants, but I got one back there. And it's not just because I'm a hipster modular synthesis, but because I actually needed to show you the plant today. If you don't know that, that's sort of a meme in the modular synth world, where people producing ambient, particularly music with their modular synths usually have a succulent or two or 10 in their videos. So what else? What are we going to do? First of all, this is distracting. Come on, Lars. Let's turn that off. Interesting fun fact about this TV. This is an old Westinghouse. And I just a couple of times now have realized if I turn this on, let's see if this happens again. OK, now it's cool and happy. Sometimes when I try turning this on, because I am powering this, which is the Game Bueno Dazzler. Is that his name? Yeah, the Dazzler here running off of Feather M4. This is essentially a graphic card for HDMI. And I'm powering it off the TV. This TV is old enough that the USB port on here is labeled as service. And I think they were expecting service technicians to use that for something, not for me to power up my device. OK, now it's working fine. A lot of time it seems to stall and just show the Westinghouse logo when it boots up. And I'm suspicious the only time I've seen that happen is when I'm trying to leech some 5 volt off the USB port there. I don't think they wanted that port used that way. Let's see. Second of all, very important. So a quick quiz. What do these records have in common? We've got Run DMC King of Rock, Houdini Escape, Elvis Golden Records Volume 4, LL Cool J Radio, UTFO debut album. The thing that all these have in common is that I bought them at Record World in the South Hills Mall in Poughkeepsie, New York, back in 1981-ish or so, late 70s, early to mid-80s. And I just got a T-shirt from Record World. Can you believe this? Anyone here in the chat remember Record World? It was on the East Coast, mostly, I think, New York, Tri-State Area, New York, New Jersey, Connecticut, maybe? Maybe Massachusetts. I don't know how far they went. But I just was so excited to get this logo, because look, it's the greatest. And now I have a T-shirt for it, and I'm highly, highly excited about it. This is not an official plug, but the brand is here. I bought it myself. I didn't get it for free. But local vintage, if you're from that area of the world and you want to get nostalgic for some old logos, mostly from the 80s, check out, what are these guys? Local vintage with a Y, because that's the best shirt. They can stop making shirts, because I have the best one now. There's no cooler shirt now. In the chat, over here in our Discord chat, Abadis is also correct. They are all being held by JP. Definitely understood the assignment. That is exactly the other thing those records had in common. I was just holding them right then. Very good. What else? I see a Winamp player on there. Thanks, Yinescu. We got a Winamp player running. And yes, Todd also correct. The round end about 12 inches in diameter. They typically run at 33 and a third revolutions per minute to play accurately. What else? We've got a help wanted sign up. This is the Adafruit job board. And if you head over to jobs.adafruit.com, you can take a look at open positions, as well as people who are looking for work. I'm just realizing, do I need to bring that up? I'll bring it up in this tab. I forgot my new special trick with all my Chrome apps. Let's see. Let me find this Chrome window here and bring up jobs. Stand by. My previous session didn't save properly, so I had to go back a little further in time. So here's jobs.adafruit.com. How about that? I ought to show it right there, yeah. So if you go to this available for hire thing, you've got to be logged in. With just your Adafruit account, your Adafruit email. And then you can search through people who are looking for work. So there are hardware designers, electronics design engineer, 3D and CAD, robotics engineer, and Dijon France. Are you looking for that person? Because they're here. Lots and lots of people posting their skills and looking for work. So if you're looking to have someone help you out with a project maybe for hire, then take a look at the jobs.adafruit.com job board. That's what I recommend. All right. Next thing up, I have a show on Tuesdays, right at this time, but on Tuesdays, so not this day. That is called JP's product pick of the week. There's the logo right there. And during the show, I show a new or old. In fact, this week it was one of the oldest, pretty much the oldest product that we sell, product ID 14. And it is this Minty Boost kit. It is the version three of this venerable kit. And during the show, I do some demos. I also did a little time lapse of the build. I'm actually going to show you that as a picture and picture of my recap here in one minute. And it'll be one minute long. But during the show, which lasts about 15, 20 minutes, I like to show off a cool product and give you a humongous discount on it. So 50% off this week. You could get this one for, I think, fewer than 10 US dollars. Get a Minty Boost kit and then add yourself a Mint 10 or a deck of cards or something like that to contain it. And build yourself a great little USB 5-volt charger that takes very common AA batteries. So here's a little recap I did. Get ready for it because here it is. My product pick of the week this week is the Minty Boost kit, version three. So this is a USB 5-volt source that you can use to charge things like your phone or an iPod or your Zoom player or who knows what, using just some common AA batteries. You get the custom PCB. You get the Boost converter that takes your battery power, whatever it is, two, three volts and boosts it up to five volts. We have some capacitors, a inductor coil, a couple small caps and some resistors and a diode. These resistors are used to let an Apple device in particular know that it's okay to charge. Plug this in and you watch the charge up there at the top. When I plug that in, you can see it is now charging. So even though this is a super modern device, it is able to charge from the Minty Boost no problem. It is the Minty Boost kit, version three. Yes, it is. Next up, great time for CircuitPython Parsec. All right, for the CircuitPython Parsec today, I want to talk to you about a new to me, at least, serial program that allows you to communicate with your devices and read out debugging and send information to your microcontrollers, which is super, super useful. So I'm on a Mac and usually I use screen. Works really well, except for one major problem, which is anytime I disconnect, which is every time you reset or unplug and replug the board, you've got to rerun the screen command. So what I'm using now is called TO. And this was a tip from Todd Bot, thank you Todd. Let me get the URL for you here. It is at github.com slash TO, slash T-O-T-I-O. And here's how it works. I have a feather, no, I have a, what is this guy? I have a NeoTrails M4 plugged in here and I'm plugged in over USB. You can see I'm actually sending it some info that's causing these lights to blink. That's coming from another program. And let's say I'm debugging and I want to spy on that info. So if I have print statements in my program, which I do here, you can see there's various print statements, where those print out is a serial debugger port, a serial port of some kind. So what I'm going to do is run this command, which is TO, and then the port it's on. In this case, dev, TTY, USB modem, and I'll just double click that with tab completion, double check that, yeah, so there it is. When I hit enter here, you can see TO connected. It gave me some little messages to say it connected. And now it's printing out info. This happens to be one of my MIDI to LED types of programs that I have running. Now, here's the really cool part. Unlike screen, if I go ahead and reset this board or unplug it and re-plug it, I'm just going to hit the reset button on there. It is going to disconnect the board, but now it tries to and succeeds at reconnecting. Same thing happens if I pull power. So let's say we pull power for some reason. We go and noodle around with a circuit, connect it to a board, let's say, plug it back in. When that reconnects, we're up in business again. So really excited about this. I think there are also some other advanced features that I can check out. But this is TO, I can quit it by hitting, I believe it's control Q followed by a T or control T followed by a Q, that is it. That'll quit the program, control T followed by a Q. And then we can reconnect as we did before. So really cool, very helpful for any of your debugging on your microcontrollers. That is my circuit Python Parsec. It is TO, the serial, what is it called? The serial something or other. That's my circuit Python Parsec for the week. Try that one more time. That's my circuit Python Parsec for the week. It is TO. Whew! That's circuit Python Parsec. Like I said before, thank you again, Todd, for that tip. I know so many of you watched me over the years on here, particularly in circuit Python Parsec moments, dealing with screen, which is kind of a pain in the neck with that need to reconnect a lot when you're developing, especially if you're very iterative like I tend to be. So let me actually bring up the site for that. I'm gonna go back over to my browser here for a moment. And there you can see, so there's TO. TO, a simple serial device IO tool. Those were the words I was searching for when I closed that. It says it's a simple serial device tool which features a straightforward command line and configuration file interface to easily connect to serial TTY devices for basic IO operations. And you can see there actually in this little GIF that's running, there's a bunch of different commands that you can check out even while it's running. You can use this control T, which is essentially invoke TO commands and then another letter. So you get help about those and a whole bunch of other settings for that. On Mac, I just installed it with brew. So brew install TO, with spaces between those words is all it takes. And once it installs, invoke it with just TO and the path to your device. Super cool, very helpful tip. Thank you Todd for that one. All right, let's see. What else have we got going on here? Zarnlin over in our chat, let me bring up our chat here says, you discovered TO, now you're ready for the powerful world of Minicom. Am I, am I ready for that? I don't know if I'm ready for that. Okay, so next up, actually I wanted to do a little update on the Walkman person project. I'm not gonna, I mentioned this last night on show and tell. I'm not going to work on that this week because I'm waiting for Lady Aida to take a look at some issues I was having running the amplifier under here over three volts. And I had switched to using a little five volt boost converter, which unfortunately is unavailable right now due to chip shortages. First of all, a shout out to Brent Rubel, our own Brent who recommended me these great little storage cubes from Hey. A little home good store called Hey. They've got these great little collapsible storage cubes. So that that you see in there is the two iterations of my Walkperson project. And I wanna show you the state of things here. First of all, I picked up some very inexpensive, new Walkman style headphones that are probably not that great, but they look the part. So I'm excited about those. Those were like $8. I couldn't find any of mine. I'm sure they're somewhere, but I couldn't find them. So I showed last night on show and tell the circuit on breadboard, which I can just place under here for a second. And let's do that little view there. Widen that view out a little bit. So there is screen, Neo Keys, the Feather M4, the amplifier, a little stereo out 3.5 out jack. And then I've got that little boost converter and a battery on here. So what I've been doing is working on putting all of that together into a Walkman-like package. And I showed that all put together last night. I just wanna show you the pieces of it as I'm working on it. So this design right now is just to figure out some of the spacing things.  There are the connections off of this two inch TFT screen. And what I'm using, what I like about this is it's essentially point-to-point soldering to a board that then the Feather will plug into and since there's a whole bunch of these Feather pins that are tied to a second pin, makes it really easy to plug and play with your wiring. So that'll go like that. I'm gonna get a little extra space in here so this'll fit that width, maybe about three more millimeters of width there. But I've got a slot there for the SD card, which is actually in that other one right now, but you can use this extender, which is on a little spring release to pop that in and out and take the SD card in and out for different sets of songs. And I've got the little port there for USB on the Feather. Pull this back out. I just used some, in order to not have a bunch of screw holes, I just used some little, I modeled some little standoffs there. Let me bump up my exposure. There we go. Some little standoffs there that these just press fit onto with a little bit of a fillet there, little skirt type of shape to strengthen that base of those because they're kind of skinny. So that just snaps right onto there. Same with the screen, which has a couple of mounting holes there that snaps onto. There's nothing back here, so I may try to put something back there as the Reese Brothers, what they think about that.  And then right now these don't really have a snap fit thing. I'm gonna probably leave that to Reese Brothers, but right now that just kind of holds together but I don't have any snaps or anything. And then this fits into it. And I could possibly just reverse the way this works and have a slimmer extension on the two halves and then this top just caps that, might work pretty well. But that is where, let me flip that around, that is where I have my Neo-Key. I've got the cable for Stem-AQT to connect that up to the board and to the rotary encoder over here, push encoder. There will be a little slide switch. I don't think I have one right here, but a little slide switch going to the enable pin, which allows me to turn the whole project on and off. There'll be a LiPo battery in there, fitting right about down there. And then like I said, right now this somewhat silly idea of mine was this fits in between the two halves, whereas it should be the other way around where those fit up into there and it holds it. This actually kind of holds together right now just for testing purposes and it is deliberately designed similarly to the Sony, the original Sony Walkman, this little separation line here. There is a bulge on the original, but it made it really hard to print flat, so I'm not sure if that'll survive the designer, if it'll be an extra part or something like that. And the piece that I think is really cool is submerging this little button row down low enough that we don't get the big full height button because those look kind of goofy sometimes. But you can see I built like a little shelf that these press against so that whole board kind of slips in there, but then can't move down. Right now it can slide a little bit side to side, it didn't put a stop in there or anything, but this just made it easier to get something that works and then can be refined. So I've been modeling all that in Rhino using Grasshopper as the sort of procedural flow graph of how things are built, which makes it easy to adjust things after the fact sort of like a proper parametric CAD program. So that's the progress on the little cute MP3 person player Walkman thing, click, click, click. And this one's not fully wired and therefore not functional right now, but that's where we're headed with that. It takes a little bucket of parts and move those over there. And let's see. So next up, let's get into the new project. So, oh no, wait, but first I have, I told you this show is packed today. Let me get some water here. Before I move on to the project, I just noticed sitting onto the camera over there under my record albums is my favorite laptop I ever got there. My IBM was this the X23, I think, ThinkPad. I got it back in like 2001 or something. And I've always loved this and I've always loved the design. And so I was cruising around on the free section of Craigslist and found this beauty. This is a 17 inch IBM LCD VGA monitor. Sorry, that display is kind of dark today. Let me see if I can boost that just in here. Yeah, it's not gonna look that great. So this is, in fact, let me head over there. Let me get behind the bench there. So, slide that over a bit. So this is what it says on the tin. This is a 17 inch LCD panel. And I just love that IBM late 90s early 2000s styling. I worked at IBM around that time. And so I've always had a fondness for this style. I propped it up on some aluminum stand there, but look at that. I love these diagonal vent lines, very hard-edged cyber kind of look IBM had going back then. This, if I can switch cameras real quick. Hold on, let me plug in my camera switcher. So you can see here, this has a kind of unusual, I haven't seen this type of a tilt design before, where it just pivots right from the bottom, which allows it to lay down a kind of a nice angle for seeing over. I'm not sure if they had some intended market for this. You can also see it's got this great wavy line made out of the buttons here, super cool. Reminds me a little bit of that, I think late 80s, early 90s phone from Radio Shack, the black one that's that artist pallet one. And also the next computer style, they all kind of have a similar design language. This one does have a cover that pops off the back that allows you to access the Vesa mount. So you could mount this onto, I won't pop it off now, mount this onto an arm of some kind, monitor arm. And what I'm gonna do with it, I don't know, but one thing I can do with it, let's see if this is gonna power on right now. Is, let me switch cameras again here. I'm just running an iPad to it. I have one of these iPad lightening to VGA connectors. This has a VGA cable coming off the back.  But look at that, it looks pretty nice, even just as a little informational display. And you can see that's just connected right up to my iPad so I can still use that as control. But VGA is pretty interesting because you can, it's an analog signal, not digital if I'm not mistaken. And you can send out from, I think ESP32, some flavor of ESP32, there's some projects out there for sending out to VGA, also the RP2040. And so while I have some monitors, including that big one over there that do have VGA, this one's nice and small so it was easier to grab and develop for. And this could make a really cool little cyber terminal of some kind, a really simple computer running just right off of a microcontroller where this is the display. So very happy about that. Thank you Craigslist Free. If you don't know about Craigslist Free, check it out. As long as you don't get murdered, picking up your stuff is a good deal. All right, so that brings us to our project this week. So I'm gonna unplug this like so. This is by the way the little dongle that I have. So I've got one of these that works with lightning. I have one of these that works with like a Thunderbolt connection mini display port, one of those on older Macs. And then there are a lot of converter, little converter boxes. In fact, if you look on Adafruit, there's some boxes that'll take various things to VGA, which is nice. And it's a, I think 1280 by 1024 image. And this goes without saying, I love the sort of square, nearly square aspect ratio on that thing. How cool is that? So let me get this out of the way. And actually I'll go real quick and confirm that I'm not making that up when I say that we've got some VGA outs. I know I at one point got a little box that allowed my Dreamcast to run out to VGA. I think over whatever proprietary AV port that the Dreamcast had. So this could make a cool retro gaming monitor for that era of stuff that wasn't quite CRT era of retro things. You can see how my place gets so cluttered because I can't resist getting cool stuff. So bring up the browser again here and let's go to Adafruit VGA. Okay, so we have HDMI to VGA video adapter. So that one is a little converter box in there that is presumably powered by the HDMI signal and converts it out to VGA which is kind of neat. Here's another one with a different audio cable I guess or it's internal to it. And is that all we have? We just have those two converters. Yeah, and so I'm curious actually if you look at, let me look at the chat real quick. If anyone mentioned some of the projects, play Doom on it, says Andy Calaway, good idea. Yeah, in fact, let me look real quick in my browser window here and then I'll open it up. RP2040 VGA. When I was looking into doing composite video, I was running into way more projects that did VGA. I think it's a friendlier standard to deal with and particularly if you look at video synthesis, all the video synth projects out there and some of the video mixer projects and things tended to be VGA based. So I'm thinking that could be a fun way to go. Yeah, so here's a PIO assembly VGA driver for RP2040. So that means that one of the sort of PO threads or cores is running the VGA protocol here to send out your video. So lots of neat stuff about VGA, looking forward to digging into it. Yeah, you can see here's a nice diagram. We have of the little DIN plug there, we have a ground and then there's separate red, green and blue channels as well as a vertical sync and a horizontal sync. So those are the ones you're using and that's why the color is so much better than a composite signal because we have three separate channels instead of just two wires where all that color data is being crammed in. So yeah, let me know if you have any favorite projects to check out doing microcontroller things over VGA, be interested to find out. All right. So let's get into our main project. This is something that Phil PT, Phil Tarone, Mr. Lady Aida, suggested to me just yesterday and he and Lamor and I talked about it. They'd seen a video of someone doing a pretty neat house plant as input device for a synthesizer and this uses typically capacitive touch. So we wanna use a microcontroller that can do capacitive touch and then run some alligator clips from the microcontroller's touch pads to the plant and then when you start the microcontroller, if it recalibrates capacitance based on what it's connected to, it won't start playing immediately but when you grab leaves, you'll get some different effects. Now you can do sort of an analog version of that which is my intention is to base the capacitance value or rather base what I hear on capacitance value. Right now I'm just doing a simple, the simplest sort of touch IO thing in circuit Python which is either touch or not touch. However, one of the neat things about using the plant is that you can get places on a plant leaf that you touch that are just on the cusp of pinging that true value on the capacitive touch and you can get sort of really cool noise as it pings on and off the synthesis method that you're doing. When it comes to synthesis methods, that is not easy to say, a couple of things that come to mind with this sort of project are using a microcontroller that can do MIDI output. So touch a leaf, send some MIDI signal, could be CC values like a knob, could be send a note, could be send some kind of an arpeggio. And you can do that over Bluetooth or over USB so a lot of our microcontrollers that use the NRF 52.840 chip are great for this sort of thing. And in fact, that's why I've picked a blue fruit, one of these, not this exact one, but circuit playground blue fruit. This one's in the cool little case there. This is the NRF 52.840 and it has, I think six or seven capacitive touch pads on here among all these pads here. You can clip an alligator clip or just touch them directly, use some foil tape, maybe conductive paints, a few different ways you can do that and record whether you're doing a reaching a threshold essentially of capacitive value. Another method instead of using MIDI, which is super great, but I kind of was interested in making a little more self-contained than that is to actually do sound generation on the microcontroller itself. In fact, let me bring up the project I'm using for the core of the code here. One second, I'll bring this up. This is Kevin Walters, where'd you go, Kevin? This one right here, circuit playground express USB MIDI controller and synthesizer. So it's the and synthesizer part of this that's what I'm using. If you take a look at this guide, this shows how to use a circuit playground express, but I'm gonna use the blue fruit as a MIDI controller and or a basic synthesizer. And so in this basic synth code, there is code to generate a waveform at different pitches as well as modulate sort of AM amplitude modulation of that waveform, changing some of its, I think it might be its pulse width modulation using the velocity of a MIDI press and then there's a pitch wheel and mod wheel as well.  Right now, like I said, I'm just gonna do note on, note off, but I'm essentially not using the MIDI portion of this code. Instead, I'm gonna, and I'll show you the code in a minute, just trigger the waveform here. And here's a Sawtooth waveform bit of code right here. So I'm just playing these waveforms at some three different set pitches using CapTouch. We could go up to I think the six or seven that are on here, but for now I'm just gonna use three. So let's head over to the workbench. I'll show you how this is put together and we can do a little demo of it. And I just noticed in the chat, a nice comment from Todd Baugh, USB-C to USB-2 to HDMI to DVIA to VGA to Ethernet to PCMCIA to RJ45, perfect. Is that a cable we sell? So what you can see here I've got is my circuit playground, blue fruit. Whoa, let's make a noise and let me switch cameras here. Make that the big one. And then I have connected, I'm sorry, plant. That's probably not nice for it to get tugged like that. Forgive me. So what I have going on here are three of the capacitive touch pads are going to three of these leaves that are mostly separate from each other. There's sort of three sections of the plant here. And that helps because if you just connect to different leaves on the same sort of plant base, then you will tend to trigger the capacitive touch on all of them just because there's so much water in the plant. If it's a healthy plant. So what I've got is not only the alligator clips running to these leaves to measure my capacitive touch triggering, but I also am running a great little cable that we have, little Adafruit cable here that goes from two alligator clips to a mono three and a half millimeter jack, which is great. This is what we tend to use for different control voltage and gate signals in Eurorack modular. So it's a really convenient one to be able to send out a mono signal can be audio can be control voltage, whatever you want. So what I'm doing is just running. I have a cable here that goes out to a quarter inch patch cable, which is sort of what you're used to from a guitar type of interface.  And thank you C Grover for this. He was clearing out the studio by the way and gave me this gig of delay pedal. So what I'm doing is generating a PWM audio output, but instead of just going over the tiny little speaker that's built into here, I'm going to be going through this effects unit so that we get a nicer sound. So let's see if we hear something here. So there you can see, even though I had set this up just to play three notes, we have sort of these six different sounds we can do. So we have the, especially if I just touch the alligator clip, just plays the solid note. Same if I touch the plant and really hold it, I'm not hurting it, but hold it pretty strongly near to the probe. So anywhere near there and I'm getting pretty much the solid sound. But as I grab it lightly and further away, I'm triggering really fast that on off value. And that's what gives me that super high pitch screen, which is pretty cool. It's sort of almost like getting a sort of harmonic out of a guitar string by just lightly touching it. It's not working under the same principle, but as far as how you're playing it, it almost feels like the same sort of thing where there's the real note and then there's this sort of harmonic type of, on leaf is getting sad. I'm gonna unplug from that. So thanks for coming to my performance here of the plant. I know so little about plants. I actually don't even know what this plant's name is. I'm sorry. So if there's a plant person in there and also don't tell my wife that that one's sagging, it is not broken, but you know what, there was this cute little butterfly steak thing in here, which maybe was there for a reason to hold that one up from drooping. So let's take a look. I can unclip. No, let's leave the clips on the board, but I'm gonna remove that from the plant. And I probably should put a little copper tape over these just so they're not as pokey because you don't want to cut into the plant and that should still act as the capacitive antenna that we want it to act as. So you can grab just a little bit of, probably aluminum foil would work. I've got this little adhesive copper tape and just line the inside of the alligator clip so it's still making nice contact but not chewing into the plant. I don't actually even see teeth marks. That might be wishful thinking, but I don't actually seem to see any damage. So don't tell my wife. Hope she doesn't watch this episode. So let's bring this over. Actually, I'll show you one of the reasons I loved both this addition to the performance being able to play the kind of two modes on the leaves as well as the guitar pedal, which guitar pedals are the best or effects units are the best for making these little simple waveform based synths sound amazing. So just always slather in the reverb, the echo and the delay and you can really take things up a whole bunch. Snake plant. Oh, that's a common name for this is snake plant. Oh yeah, I've heard my wife and daughter talking about that. That sounds right. So if I unplug my little guitar pedal from here, in fact, I'll unplug the alligator clips from that. Now we will, let me reset it. So one thing you can do is reset the board and that gives you a recalibration essentially of the capacitive touch. So now I can use, I can just use these, right? So nowhere near as compelling as A, some cool delay effects pedal and B, having the plants involved. And it really, I think it really elevates it from something very simple to something more interesting. And of course, you get the visual aspect of the plant which you can't lose with that. Also, you could use a battery for this. You could power this off of battery and then nestle it neatly somewhere over in here, especially using that nice little plastic case that we have. But what I'll do now is let's grab this and just go over what I have happening in code so far. This is like I said, a fairly simple first stab at this. And oh gosh, before I do that, plant talk over in our discord, Dexter says the Dracaena Trifasciata is a species of flowering plant, the family Asperagackenye, native to tropical West Africa from Nigeria, East to Congo. Commonly known snake plant, say Georgia's sword, mother-in-law's tongue, vipers boasting hemp, among others, thank you. Or just just baby Groot, one of those, one of those too. So let me plug this in. And by the way, if we've still got Adam going here, notice I unplugged my Trellis M4 and there's a chance this'll reconnect when I plug in here if it grabs the same USB port. It did. So I don't know if it, three, yeah, it must have just grabbed the same port. I don't think that would work if we had a different port shown. Oh, by the way, over the YouTube chat, thanks Jason Edelman for the snake plant icons. I just had to, the moderation software made me agree to show those, those are great. So yeah, you can see this is reconnected here. I don't think I'm sending out any print statements, but it is connected. So let me open up the code.py running on here. And what I'll do with this is actually, I'll probably show a version running in Circuit Python as well as in Arduino. So this can be a leaping off point guide for a few different projects. So some of this code in here is not necessary only because I started with Kevin's USB based code and haven't commented some stuff or gotten rid of some stuff yet, but main thing, main change from his guide is we no longer are using audio IO. We're using audio PWM IO and I'm adding touch, touch IO. And then I've just set up these four. So like I said, we have I think six on here, maybe seven touch pads we can use. Then ignore this MIDI stuff, it's not being used. We turn on the speaker, we use the DAC output which is the board speaker, but that does also go out over a zero which is what I'm connecting up to to go to the guitar pedal. And here is the code for creating the pitch and the waveform. So we have a reference frequency and then math that happens to that based on the MIDI note that was coming in or I'm actually leveraging some of that just to make it easy. So I don't have to know frequencies. I just can send out like MIDI note 46 and that'll work. The wave form here is this sawtooth wave that's created based on the pitch that you send it and there's a function to convert the MIDI note to that pitch frequency and Hertz. Generate the sawtooth and I don't have the neopixel code hooked up now, but I might hook that up. That would be kind of nice to do a little visualization. This is the conversion of a note to an LED being turned on or off and the note frequency based on MIDI note to feed into that sawtooth wave generation. I'm not using pitch bend right now. I may try to use the, one of the control channel CC continuous controller values or velocity based on an analog read on the plant. I haven't tried that yet. And then I created this little function here that just takes the note frequency based on a hard-coded instead of a MIDI note, a hard-coded note per plant leaf and then generates the proper wave form and plays it. So it makes the wave form plays it almost instantaneously as I touch the different leaves. When I let go, the option is to run this function in the stop the DAC mode. That's what cuts off the note. And then I create a little state variable for each of those four leaves. Again, this could be optimized for right now. I just have it very explicit. And then in the main loop, this is all that's happening is these essentially three things. I have if A4 is being touched and it hasn't been touched. So just a sort of state change. So we don't sort of like debouncing it. If I touch A4, then we're gonna use that play touch note function with note 46. When I release it, it turns that off. When I touch A5, I have note 49 and when I touch A6, I have note 52. So I was just grabbing some notes that I thought sounded good together and slightly minor triad kind of sound. The rest of this, I've commented it out for now because we're not using it. And that's what is playing those ever or echo pedals, like $50 ones out there used or even new ones sometimes. Oh, buffering. Andy Callaway says we're buffering. Let me see if my stream health sounds okay. The bit rate got a little slow. Hopefully we're not. Yeah, it's buffering. Oh no. All right, hopefully that's better. I just kicked the software. Hopefully it restarts. Let me know if we've got smooth happening yet. Buffering, buffering. Healthy on YouTube now, yay. Thank you for the note, Andy. We're back. Back just in time for me to finish up, I think. So that's what I have having with this. I'm gonna look at that main adjustment, which is gonna be analog, so that instead of just true false for a touch event with cap touch, we can have a variable value which we can then convert into a range to use to sort of adjust the sound instead of pinging it on and off the way I am currently. But I kind of like that, so who knows? That could be the happy accident that stays in it. All right, let me see. Any other thoughts or questions over in the chats? If not, I'll say tune in tomorrow for a deep dive with Tim. He's been working on some really cool stuff. If you saw any of his cap touch screen show and tell, last night, and there's also gonna be a giveaway of some old conference room touch screens. I remember those from the Disney buildings. We had those things all over the place. What are they called? Crestron, yeah, the Crestron remotes for scheduling meetings. They've got those running with Circuit Python right now. Looking really cool. So that is gonna do it for me for today. Thanks for tuning in, everyone, for Adafruit Industries. I'm John Park, and this has been John Park's Workshop. Bye-bye.


Hey, this is Brett and today I am super excited to show you this brand new 2022 Ram 1500 crew cab 5 foot 7 inch short box This is a limited level 1, but it has the 10th anniversary package on it I'm gonna go all the way around in this video We're gonna check out the interior which is amazing. This one is fully loaded up It has just about every option you could ask for so we're gonna go through all those options including the rambox the split tailgate the LED light group all that good stuff and We're just gonna go over this truck really thoroughly just to start off This one has the 5.7 liter V8 Hemi engine with the e-torque assist It puts out 395 horsepower 410 foot pounds of torque and this one has a max payload of a 1049 pounds and can tow up to 7,849 pounds with the configuration on this one. I found that on Ram's tow guide website You just put in a vin. It's really cool. I'll link that in the description below So we're gonna get right to it here. We're gonna take a look under the hood. This one's also And I'll show you the engine and e-torque and everything in just a second here Under the hood we have the 5.7 liter V8 Hemi engine So this one does have the MDS where it shuts off for the cylinders on the highway to get you better fuel economy But it also has the e-torque electric motor With start-stop assist so you always know if it has the e-torque if it's got this big silver box here That's the electric motor and it says e-torque on the top. I think that might be new But anyways 410 foot pounds of torque 395 horsepower on this vehicle It's going to get you 22 miles per gallon on the highway 18 city with an average of 19 Miles per gallon and you can you know when they have the e-torque assist that City and highway gets a lot closer together When you have that height or that e-torque assist So that's pretty cool. Anyways Take a look at the emissions sticker here there's that and we'll check out the Original window sticker right now and get you all the pricing on that This is the original window sticker for this truck and you can see it is a 2022 Ram 1500 limited crew cab diamond black is the color indigo and sea salt are the interior color Combination for this one and premium quilted leather bucket seats and we're going to check those out in just a second 57 hemi with the MDS and e-torque engine eight-speed automatic transmission everything on your left here is your standard equipment Feel free to pause this. I'm not going to go through everything. I'm going to go through all the optional equipment though diamond black crystal pearl is the $100 option on here body color bumper group is 195 and the limited 10th anniversary edition is a $2145 option You can see you do get that premium quilted leather bucket seats jeweled rotary shifter Which is pretty cool. I'll show you that in a second to a suede headliner instrument cluster center-mounted deployables bed step by Mopar 19 speaker Harman Kardon premium sound for adjustable cargo tie-downs multiple multi-function tailgate mented rear seats Limited level one group is 3495 gives you heads-up display digital rear view mirror Which is pretty cool pedestrian emergency braking adaptive cruise control lane keep assist parallel and perpendicular park assist with stop Surround view camera system. This one also has the factory trifold tonneau cover Which is 550 anti-spin rear differential for 95 This one also has the dual pane panoramic Sunroof Sunroof, which is 1495 33 gallon fuel tank and The 22 by 9 inch polished and painted wheels with inserts Those are 2095 bucks Ram box cargo management system is 995 and the trailer brake controllers 295 total MSRP on this truck is 80,000 85 bucks and if you want to get your summit price in the upper right hand part of the screen is a link to this vehicle on our website if available with all the pricing and Incentives on this one three or 36 bumper to bumper five year 60 There's your fuel economy ratings and then the safety ratings five and four stars up and down the board Rams are super safe vehicles definitely Feel safe Hauling your family around in this truck. Let's take a look at those rims and then we'll get to the options with the box ram box and split tailgate So you can see that these are the 22 inch they're actually polished aluminum and then these inserts are painted granite crystal and Really good-looking rims. It has Pirelli scorpion Verde tires. These are 285 45 R 22s And you can get a good idea for the tread type on there and depth Diamond black it's got just a little bit of metal flake to it really a cool color In the sunlight the the gold metal flake really pops. It's really a cool color. Let's go take a look at that RAM box so here is the RAM box and To get this open just press that button. It opens up really easy There's a couple torsion bars right in there that kind of help lift it up There's also lights that turn on right there. You can turn those off with the button Right that's right there and then these have plugs in them and you can see my foot down there So that actually opens up so you can put ice in here and just kind of let it drain out as it melts a lot of people use These as coolers and stuff so that's pretty cool And then if you don't want that you just put the plug back in there a lot of space in here these lock when you lock the doors on the truck Limited package has the fender flares on it. You get the plastic wheel well liners as well Which helps keep your underbody looking good the LED lights so the LED light group which is probably standard on limited We're gonna check that out lights are super bright We'll do it at the end of the walk around is There's a button at the top and that comes down like the soul. You can see it does have the shock down assist Inside you get the spray and bed liner. It has the cargo management system It's also a bed extender so it can like make the bed longer Which is pretty cool, and then you have your LED lights back here and that cargo management Fits into those slots so that you can put a partition in there So that's pretty sweet and of course the very nice spray and bed liner So once that is closed you can open up the door So that goes like so That opens up 90 degrees and then there's a handle right here That one opens up 90 degrees as well And now what that does is it lets you get all the way to the bumper of the truck So that you can reach farther into the bed of the truck Which is really nice because you don't always want to be jumping up into the truck And then it also makes it easier just to step right into the vehicle. So Very nice system there now the when you close these You definitely want to close this door first if you do not Close that door first you are going to have problems So that shuts like so and then you can bring it back down and it's connected. So Just like that, let's go check out that amazing interior that the 10th anniversary Offers So before we check out the interior, I think this is probably the coolest thing on this truck when I press The ignition button you get the limited 10th anniversary Animation there. That's really cool 2012 to 2022 Let's check out this in the interior All right, here it is the 10th anniversary Indigo and sea salt interior you get the Indigo blue and sea salt gray leather cloth And the quilted leather on the back there Really a cool combo The seats are ultra comfortable The headrest is all leather Both these seats are heated and cooled And memory driver seat lumbar you get the limited indigo all-weather floor mats You get the indigo trim Dash the wood grain trim on there auto headlamps power pedals You get the quilted leather on the door on the bolster there the wood grain trim memory driver seat power windows power locks power mirrors I love the Harman Kardon Metal finished speaker covers look really good.  There's a little storage container. There's in-floor storage on each side still Um Back of the seats are trimmed out nice as well. Just a ton of room in the rams one of the best in-class Interiors for room you get a quilted armrest back here cup holders and a little storage tray back there all right, let's take a look at the radio and the instrument cluster And we'll start it up and take a look at all those led lights So you do get the seven inch lcd display nothing has really changed with that if you've seen my other videos Seven inch display you get digital spin out or you can change all the corners to read whatever you want Has the leather wrapped and wood grain trim steering wheel information center controls and bluetooth on the left You get your adaptive cruise and normal cruise controls your gear selector Still has the eight speed automatic transmission push button for a wheel drive your start stop capabilities You can turn those off and on And uh, here is your uconnect 12 inch 5 uconnect 5 12 inch radio Get See if I can brighten this up here So you get the home screen You have am fm and serious this one has the factory navigation system Now the uconnect 5 system is way faster than the old uconnect 4 Um, this one also has lane departure perpendicular park perpendicular and parallel park assist and uh Yeah, you can just do a ton of stuff.  You can turn the mirror dimmer power side step off You have your vehicle cameras. So you have your surround view camera. I think I can Turn that on with the ignition there So there is your surround view camera You have your backup cam your wide view cam your wide view front cam narrow view front And then you have your normal backup cam you can zoom into your receiver hitch To get hooked up to your boat camper trailer the first time and take note These cameras are all hd now. So they are Very crisp very clear So it's easy to get Close to what you want to or not close to what you don't want to and you can hook up an auxiliary trailer cam If you'd like as well, uh, you also have your mirror cams, which Go right down the side of the truck, which are pretty cool as well and then If I click off of that I can go back to my apps You have all your different apps in here. You can do android auto um Hook it up. You can put your cell phone up there has the mirror dimmer Speaking of the mirror dimmer this one has the rear view mirror video camera So that is an actual video display of what's going on behind you. You can make that a normal mirror um, and then you can change You know the brightness of it or you can change the height of it, which is pretty cool as well sos and assist buttons Home link buttons for your garage door security systems and lighting systems and then of course the suede headliner again that panoramic Vista roof really a nice option and then you get the ram quilted leather Uh center council with the 10th anniversary badge on there that looks really good Really cool. That's actual Metal or maybe it's plastic.  It's kind of got that bronze ish finish to the chrome there And uh, yeah, you get the sliding cup holders There is coin holders in here the wood grain trim And uh factory brake controller stability control that you can raise or lower the truck tow haul front of your parking sensors And uh, you get the limited dash trim And that's pretty much it. Um Really a sweet truck a lot of stuff to go over obviously. Sorry for making the video so long But we are going to start it up and turn on all those led lights so you can get a good idea of how this thing looks Love that animation. That is so cool Um, but yeah, we're going to turn on all the lights here so that you can See it all lit up I would personally like to thank you for checking out the video today And hopefully from this hd video you have gotten a really good idea of the overall looks styling options on this amazing truck Get the led tail lamps the led license plate lights as well And uh, thank you so much for checking out the video hit the like subscribe button On our youtube channel, which is youtube.com slash summit auto There'll be a link in just a second here There are all those led lights all lit up Diamond black tenth anniversary I don't think you'll find a nicer truck than this one And I would highly recommend it from a Looks styling optioned out interior standpoint Really a sweet truck and to see more pictures of this truck or one of our other 550 new and used cars trucks suvs minivans wranglers half tons We quarter tons one tons you name it We got to go to that website right there is summit auto.com Full pictures and descriptions of every single vehicle from two locations all at summit auto.com And if you'd like to check out more hd videos you can go to youtube.com slash summit auto Click the bell notifications. You'll get updates on the videos I do each and every day here at summit automotive In fact in a second you will see a link to subscribe my youtube channel in the upper left Link to more ram 1500 truck videos like this one the upper right link to this vehicle on our website in the lower left And a link to one of our latest youtube videos in the lower right click those check us out And we're super excited to be offering the 2022 ram limited 10th anniversary edition in diamond black metallic. Thanks again for checking out the video. I really appreciate it Remember to like subscribe and share on the youtube channel. Thanks again Thank you