Edit sound with Python NumPy: Improve code performance 1000x
What you'll learn
- Code optimization in Python using the NumPy library
- Sound processing in Python using the MoviePy library
- Fundamentals of digital images
- Applying code optimization to binarize digital images
- Basic level in Python: loops, conditions
Programming is one of the most flexible fields I know of. You can create a program that achieves a certain task in so many ways. However, that does not mean that all ways are equal. Some are better than others.
That is especially visible when your program has to work with big data. Working with big data means working with gigantic arrays and matrices.
You can create a program that achieves the same task like the other one, but it does so 1000 times faster. It all depends on how you code and which coding practices you use.
And this is what you will learn here. You will learn the good and the bad coding practices, so that you would learn to code the right way when dealing with big data.
In this 100% project based course, we will use Python, the Numpy and the Moviepy library to create a fully functional sound processing program.
This program will import your videos in sequence, extract their audio, automatically identify the silent intervals in that audio, and then cut them out while still keeping some silence on the edges to preserve a bit of pause in between sentences.
Sound processing naturally deals with millions and millions array elements and so it really matters how we write that program. We will do it in a bad way and in a good way, because I want you to see both sides of the coin.
In the end, you will see that the last version of your Python Numpy code will be more than 1000 times faster than the first version, and so, you will see how to code and how definitely not to code.
Finally, I really want you to see that this knowledge is universal and can be applied in other fields as well, not only audio processing. And therefore, in the last section, there will be an assignment in computer vision.
Digital images are in fact, gigantic matrices, and so, it really matters how you handle them in the code. We will build a small program that can binarize these images and we will also do it in a good and in a bad way.
We will use the Python image processing library called Pillow to process all this big data inside the image matrices.
After this course, you will know how to approach programming in the right way from the beginning. Take a look at some of my free preview videos and if you like what you see, then, ENROLL NOW and let's get started! I'll see you inside.
Who this course is for:
- Engineering students
- Engineering professionals
- Data Scientists
- Engineering & Programming hobbyists
The Mission: to elevate humanity's knowledge, skills and love for science & engineering
I think that online education is the future because of one single fact - it is easily scalable. One course of a single great teacher can reach millions of people and potentially transform their lives. If education is more scalable, it will be more affordable. More affordable and accessible education will give more people an opportunity to stay out of poverty and create a great life for themselves.
I am here to contribute to this movement.