This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
gsoc:2024-gsoc-sound-open-firmware [2024/01/22 11:32] IulianaProdan [Sound Open Firmware Community] |
gsoc:2024-gsoc-sound-open-firmware [2024/02/07 19:47] (current) IulianaProdan [Project #1 Implement a GUI to control data for SOF components] |
||
---|---|---|---|
Line 11: | Line 11: | ||
==== Sound Open Firmware Community ==== | ==== Sound Open Firmware Community ==== | ||
- | Website: https://www.sofproject.org/ | + | Website - https://www.sofproject.org/ |
- | Git: https://github.com/thesofproject/ | + | Git - https://github.com/thesofproject/ |
- | Documentation: https://thesofproject.github.io/latest/index.html | + | Documentation - https://thesofproject.github.io/latest/index.html |
- | Discord: https://discord.gg/CRqvJWs7 (see #sof channel) | + | Discord - https://discord.com/invite/Ck7jw53nU2 (see #sof channel) |
- | New to SOF? | + | Watch this if you are new to SOF - [[https://www.youtube.com/watch?v=vwDoEumA1Mo | Sound Open Firmware introduction]] |
- | Watch this [[https://www.youtube.com/watch?v=vwDoEumA1Mo | Sound Open Firmware introduction]] | + | |
+ | Code Licenses - BSD/MIT | ||
===== Project Proposals ===== | ===== Project Proposals ===== | ||
- | **To be updated** | ||
- | |||
- | *To be updated* | ||
- | |||
- | ==== Proposal 1: Add serial console driver support in SOF for i.MX8 boards ==== | ||
- | |||
- | The goal is to create a driver for i.MX8 serial console, then add support inside the logging system so that logs could be read via serial console. | ||
- | |||
- | Code license: GPL-2.0 OR BSD-3-Clause | ||
- | |||
- | The project is considered successful if the code is accepted into SOF github tree. | ||
- | |||
- | Mentor: Daniel Baluta <daniel.baluta@nxp.com> | ||
- | |||
- | |||
- | ==== Proposal 2: Loopback implementation using demux component ==== | ||
- | |||
- | The general idea would be to have an ALSA device where playback stream would be looped back into a capture stream. This can be useful for echo reference or for audio decoding libraries that could offload the decoding part to the DSP. | ||
- | Github issue: https://github.com/thesofproject/sof/issues/3818 | ||
- | Code license: GPL-2.0 OR BSD-3-Clause | + | ==== Project #1 Implement a GUI to control data for SOF components ==== |
- | The project is considered successful if the code is accepted into SOF github tree. | + | 1 contributor medium-size (175 hours) |
- | Mentor: Daniel Baluta <daniel.baluta@nxp.com> | + | Level of difficulty: Intermediate |
- | ==== How do I get started? ==== | + | [[https://www.sofproject.org/|Sound Open Firmware (SOF)]] is an open source audio digital signal processing (DSP) firmware and an SDK that together provide infrastructure and development tools for developers working on audio or signal processing. |
+ | More on this, you can find here: https://thesofproject.github.io/latest/introduction/index.html | ||
- | One good way to get started is to build the code for SOF firmware and SOF Linux driver. Follow | + | SOF has support for NXP, Intel, AMD and Mediatek targets. |
- | [[https://thesofproject.github.io/latest/getting_started/build-guide/build-from-scratch.html|Build SOF from sources]] and [[ https://thesofproject.github.io/latest/getting_started/build-guide/build-with-zephyr.html| Build SOF with Zephyr ]] guides. | + | |
- | Log your results in a file and send an email to daniel.baluta@nxp.com. If you need help ask on [[ https://discord.gg/CRqvJWs7 | SOF Discord channel ]]. | + | SOF comes with a set of runtime tools - command line applications that can be used to exchange data with running firmware. |
+ | An example is sof-ctl, available in SOF repository in directory tools/ctl (https://github.com/thesofproject/sof/tree/main/tools/ctl). | ||
+ | This tool is used to configure various SOF components (e.g capability to change equalizer response in runtime is useful for transducer tuning and for scenario of having equalizers under control of user space service). | ||
+ | The scope of this project is to create a GUI front end for it. | ||
+ | This will be used to configure SOF audio components. From simple commands like increase/decrease volume to more complex like changing filters for equalizer. | ||
+ | GUIs enable even novice users to quickly get started with programs. Easy-to-understand symbols and explanatory text provide a high degree of user-friendliness. | ||
+ | This will make SOF easy to demonstrate its useful capabilities. Will make SOF even more powerful and straightforward. | ||
+ | To achieve that, the contributor must: | ||
+ | * Contribute any necessary improvements back to the SOF. | ||
+ | Technologies used: | ||
+ | * C, Python GTK. | ||
+ | Mentor: | ||
+ | * Iuliana Prodan - iuliana.prodan@nxp.com |