Development / Summer of Code / 2020 / Picard
Picard concurrency re-write
Proposed Mentors: samj1912 / zas
Languages/skills: Python, PyQt5
Currently Picard uses threads to offload I/O tasks. Since threading is notoriously detrimental in Python at times, due to its GIL, we were looking for someone to re-write the Picard concurrency code and switch it to a multi-processing model or make use of the new py3.6 asyncio features. This will allow us to improve and cater to a much requested feature of allowing Picard to mass-tag files, something Picard is unable to do so currently without staying responsive.
For more info see: PICARD-975
Integrate the AcousticBrainz client into Picard
Proposed Mentors: samj1912 / zas / outsidecontext
Languages/skills: Python, C/C++, language bindings, software build experience
The AcousticBrainz project has a separate client application for analyzing and submitting the analyzed information to the AB server. We believe that our community would likely help in submitting tracks to AcousticBrainz while also submitting tracks to AcoustID, so adding this feature to Picard makes sense. This would also allow us to deprecate the standalone AB analyzer software.
This project would entail the following components:
- Add the necessary UI elements to allow users to use the AB analyzer.
- Add the necessary preferences/options needed to configure the AB analyzer.
- Write necessary layer to call the underlying AB analyzer binary.
- Possible migrate the AB analyzer binary to be part of the Picard build process.
Related ticket Add AcousticBrainz analyzer features
Picard Hindi translation
Proposed Mentors: samj1912 / zas / iliekcomputers
Languages/skills: English/Hindi, gettext, i18n
Currently Picard is translated to many languages, but it still lacks a full Hindi translation. It would be great to have one.