In my case, I will be using it to capture all the system calls executed by the WO MIC client. Strace is a powerful command-line tool for debugging and troubleshooting programs in Linux.
In this section, I will be verifying what we discussed using the tool strace. In the Architecture section, I presented my thoughts on how the WO MIC system works. You will see the message connected on the phone when the two machines are linked. Make sure the snd-aloop module is loaded by typing the following command in your terminal:Įnter fullscreen mode Exit fullscreen mode This IP address will be used by the WO MIC client for connection. An IP address is assigned and shown on the screen. Select Wi-fi in the settings and click on start. When this module is loaded into the kernel, it adds a virtual device called Loopback card in which other application can read from or write to.Īfter installing the android app from the Playstore, make sure that you are connected to your Wi-fi access point then open WO MIC. Snd-aloop is a Linux kernel module that brings a loopback feature for audio I/O. Besides the Android app, the laptop contains a WO MIC client program responsible for receiving the streams through the router and writing it to the snd-aloop module. The above image shows the architecture of the WO MIC system for sharing a phone's mic with a laptop. Moreover, I go through the process of analyzing WO MIC client using strace: I document its pitfalls and explain a couple of concepts like threads from the Linux kernel's point of view. In this article, I cover the architecture of the WO MIC system.
Also, checking my assumptions about the system implementation will solidify my design skills. Understanding how it works underneath and seeing how exactly it uses the mentioned technologies will certainly provide a lot of insight when I am designing my app. Wo MIC serves as a good case of study for my project. For example, WO MIC -an android app- enables computers to use the mic of a mobile phone by forwarding the audio input via Wi-Fi, Wi-Fi Direct, USB, or Bluetooth. In fact, the Playstore is rich with such apps. Using a phone to extend the capability of your machine isn't new.
The idea is to develop a system capable of forwarding my phone's camera stream to my laptop and expose it to other applications. Recently, I decided to solve the issue of my broken camera without buying a new one.