Mousai is a simple application that can identify song like Shazam

Overview

Mousai
Mousai

Simple song identifier

Download on Flathub


Translation status CI status

Preview

Description

Mousai is a simple application that can identify song like Shazam. It saves the artist, album, and title of the identified song in a JSON file.

Note: This uses the API of audd.io, so it is necessary to login to their site to get more trials.

Building from source

GNOME Builder (Recommended)

GNOME Builder is the environment used for developing this application. It can use Flatpak manifests to create a consistent building and running environment cross-distro. Thus, it is highly recommended you use it.

  1. Download GNOME Builder.
  2. In Builder, click the "Clone Repository" button at the bottom, using https://github.com/SeaDve/Mousai.git as the URL.
  3. Click the build button at the top once the project is loaded.

Manual with meson

git clone https://github.com/SeaDve/Mousai.git
cd Mousai
meson builddir --prefix=/usr/local
ninja -C builddir install

AudD

You can check their Privacy Policy and Terms of Services for more informations about AudD.

Credits

Developed by Dave Patrick.

Comments
  • No audio detected

    No audio detected

    image

    Arch linux with most recent updates. I even installed a GNOME DE to see if Mousai can catch the sound there - still this issue. Maybe I need some kind of awkward sound mixer? I have those sound-related packages installed: alsa-utils, pulseaudio, pulseaudio-alsa and pavucontrol.

    opened by KpauMupa 30
  • Cant build

    Cant build

    I'm pretty sure this is related or even the same issue as #22 but I can't get it to build with meson :(

    Traceback (most recent call last):
      File "/usr/local/bin/mousai", line 30, in <module>
        from mousai import main
      File "/usr/local/share/mousai/mousai/main.py", line 18, in <module>
        class Application(Adw.Application):
      File "/usr/lib/python3.9/site-packages/gi/module.py", line 123, in __getattr__
        raise AttributeError("%r object has no attribute %r" % (
    AttributeError: 'gi.repository.Adw' object has no attribute 'Application
    
    opened by sheeepdev 26
  • Mousai not work with meson build

    Mousai not work with meson build

    I have already installed manually libadwaita 1.0.0alpha2 what happening here?

    [email protected]:~/Documents/Mousai-0.4.4/build$ mousai Traceback (most recent call last):

    File "/usr/local/bin/mousai", line 30, in

    from mousai import main
    

    File "/usr/local/share/mousai/mousai/main.py", line 9, in

    gi.require_version('Adw', '1')
    

    File "/usr/lib/python3/dist-packages/gi/init.py", line 126, in require_version

    raise ValueError('Namespace %s not available' % namespace)
    

    ValueError: Namespace Adw not available

    opened by carlosgonz0 26
  • Mousai says microphone is muted

    Mousai says microphone is muted

    OS: Manjaro XFCE Installation method: AUR Affected Version: 0.6.0 and 0.6.1

    image Afterwards, it says "No audio detected" and "Please check your audio device". I have a working microphone in my laptop (it works with other apps, e.g. skype), and I also tried an earphone.

    When I run from the command line, I get the error

    $ mousai
    Error: gst-resource-error-quark: Could not open file "/home/archisman/.cache/tmp/mousaitmp.ogg" for writing. (6) ../gstreamer/plugins/elements/gstfilesink.c(471): gst_file_sink_open_file (): /GstPipeline:pipeline0/GstFileSink:filesink0:
    system error: Bad file descriptor
    Error: gst-core-error-quark: GStreamer error: state change failed and some element failed to post a proper error message with the reason for the failure. (4) ../gstreamer/libs/gst/base/gstbasesink.c(5865): gst_base_sink_change_state (): /GstPipeline:pipeline0/GstFileSink:filesink0:
    Failed to start
    

    I cannot say when this issue appeared.

    Last time I used the app was in July, and then the issue was absent.

    opened by apandada1 13
  • UI glitch when clicking settings button

    UI glitch when clicking settings button

    Installed app as a flatpak, when I click on settings button, this weird ui thing happens.

    mousai

    Specs: OS: Linux Mint 20.3 x86_64 Kernel: 5.15.0-33-generic DE: Cinnamon

    Graphics:
    Device-1: AMD Picasso driver: amdgpu v: kernel bus ID: 07:00.0 chip ID: 1002:15d8 Display: x11 server: X.Org 1.20.13 driver: amdgpu,ati unloaded: fbdev,modesetting,vesa resolution: 1920x1080~60Hz OpenGL: renderer: AMD Radeon Vega 11 Graphics (RAVEN DRM 3.42.0 5.15.0-33-generic LLVM 12.0.0) v: 4.6 Mesa 21.2.6 direct render: Yes

    Flatpak version : 1.12.2 Mousai version : 0.6.6

    What worked : when launching the application with this command AMD_DEBUG=nodcc flatpak run io.github.seadve.Mousai , everything is working perfectly

    opened by akash-258 7
  • A simple message when trying to recognize songs without internet

    A simple message when trying to recognize songs without internet

    When trying to recognize a song without an internet connection, the program displays the complete exception and does not display easy-to-recognize information that is happening. If you do not realize if your Internet is not working well or you are disconnected, this can make you feel that the program is not working properly.

    Screenshot from 2021-11-16 16-58-06

    enhancement 
    opened by CharDSonDev 6
  • Error when building from AUR on aarch64

    Error when building from AUR on aarch64

    It would be really nice to be able to use this app on a Linux phone like the Pine phone but the AUR build lists this package as not available for aarch64. Could the aarch64 tag be added to the AUR if it was verified to build correctly?

    ==> ERROR: mousai is not available for the 'aarch64' architecture

    opened by CoderThomasB 4
  • Update GNOME Platform to master

    Update GNOME Platform to master

    I built it from source & it works with platform version master. Feel free to close this PR if Mousai doesn't work well with GNOME Platform master.

    Benefits of moving

    • No updating the platform version every release
    opened by turtlegarden 4
  • Respect dark theme

    Respect dark theme

    Hi and thanks for the great app. I'm using KDE Plasma and even though my gtk theme is breeze-dark , the app uses adwaita light. I understand if you don't want the UI to be messed up by themes, but could you make it support dark/light themes?

    enhancement Not Mousai 
    opened by aronkvh 3
  • AttributeError: 'Avatar' object has no attribute 'set_image_load_func'

    AttributeError: 'Avatar' object has no attribute 'set_image_load_func'

    After updating to libadwaita 1.0.0-alpha.1, I get

    Traceback (most recent call last):
      File "/nix/store/sy59jxn8ss9b913vz9pfp9r5r55hlzrp-mousai-0.4.1/share/mousai/mousai/main.py", line 60, in do_activate
        win = MainWindow(self.settings, application=self)
      File "/nix/store/sy59jxn8ss9b913vz9pfp9r5r55hlzrp-mousai-0.4.1/share/mousai/mousai/widgets/main_window.py", line 52, in __init__
        self.load_memory_list()
      File "/nix/store/sy59jxn8ss9b913vz9pfp9r5r55hlzrp-mousai-0.4.1/share/mousai/mousai/widgets/main_window.py", line 84, in load_memory_list
        self.new_song_row(song.values())
      File "/nix/store/sy59jxn8ss9b913vz9pfp9r5r55hlzrp-mousai-0.4.1/share/mousai/mousai/widgets/main_window.py", line 64, in new_song_row
        song_row = SongRow(*song)
      File "/nix/store/sy59jxn8ss9b913vz9pfp9r5r55hlzrp-mousai-0.4.1/share/mousai/mousai/widgets/song_row.py", line 40, in __init__
        self.song_icon.set_image_load_func(self.load_song_icon)
    AttributeError: 'Avatar' object has no attribute 'set_image_load_func'
    

    when running mousai.

    bug 
    opened by dotlambda 3
  • Export / Get list of found songs

    Export / Get list of found songs

    Is there an easy way to get access to the song history list outside of the UI? Perhaps via the filesystem (Like text or json stored in a data folder)? I've looked over the code but was unsuccessful in finding an answer since I'm unfamiliar with GTK/Rust. If I understand correctly, I'm trying to find where else I can access Application::default().settings().string("history") from outside of Mousai. Is that possible?

    Thanks so much! Mousai is a stellar app!

    opened by tristanvigar 2
  • Images on landing page not loading

    Images on landing page not loading

    On https://apps.gnome.org/app/io.github.seadve.Mousai/ it doesn't show up any images.

    For example: https://apps.gnome.org/assets/screenshots/io.github.seadve.Mousai/Mousai-screenshot2.png says: The image “https://apps.gnome.org/assets/screenshots/io.github.seadve.Mousai/Mousai-screenshot2.png” cannot be displayed because it contains errors.

    Using Firefox 91.7.0esr (64-bit)

    opened by PortStone 1
  • Add more information to the API section

    Add more information to the API section

    Currently the description of this is very shy and in my opinion you should add a couple of key points that users will want to know...

    On the website of the api:

    Music recognition API for both content analysis and in-app music recognition costs from $2 to $5 per 1000 requests. First 300 requests for free.

    I think that this sentence should be added in the collapsible menu below your first sentence like this rough example:

    More info After "number" recognitions, registration/login to the website is required. Music recognition API for both content analysis and in-app music recognition costs from $2 to $5 per 1000 requests. First 300 requests for free.
    opened by aha999 0
  • Landing page / Website request

    Landing page / Website request

    It would be useful to have this project's landing site / website, so any future news articles can link to it and the website would make a better visual representation of the project that could attract more users, developers and contributors.

    A simple and free option is via Github Pages, that a lot of github open source projects are using, which Github hosts for any repo on their website.

    Hosted directly from your GitHub repository. Just edit, push, and your changes are live. No databases are needed to be set up and no servers to configure

    Repositories that use github pages: Examples

    Interesting article: Link

    Consider Jekyll. You give it Liquid templates and Markdown content Free Jekyll templates: https://jekyllthemes.io/free

    enhancement 
    opened by aha999 1
  • Chinese translation not work on linux

    Chinese translation not work on linux

    The simplified Chinese translation not work, please use zh_CN language code instead of zh_Hans.

    View this for reference. Thank you.

    OS: Fedora Silverblue 35 DE: Gnome Shell 41

    opened by lumingzh 2
Releases(v0.6.6)
  • v0.6.6(Sep 8, 2021)

  • v0.6.5(Sep 8, 2021)

  • v0.6.4(Sep 2, 2021)

    This update contains new translations:

    • Updated Turkish translations
    • Updated Polish translations
    • Updated Chinese (Simplified) translations
    Source code(tar.gz)
    Source code(zip)
  • v0.6.3(Aug 27, 2021)

  • v0.6.2(Aug 24, 2021)

  • v0.6.1(Aug 24, 2021)

    This release contains bug fixes and translations updates:

    • Fixed missing icon on XFCE (thanks to @apandada1)
    • Updated Italian translations
    • Updated Spanish translations
    • Updated Japanese translations
    Source code(tar.gz)
    Source code(zip)
  • v0.6.0(Aug 22, 2021)

    This release contains UI and translation improvements:

    • Improved playing animation
    • Minor performance improvements
    • Updated Occitan translations
    • Updated Ukrainian translations
    • Updated Arabic translations
    • Updated German translations
    • Updated Filipino translations
    • Updated Dutch translations
    Source code(tar.gz)
    Source code(zip)
  • v0.5.2(Aug 9, 2021)

    This is a small update with miscellaneous improvements:

    • Added a beep sound when trying to do something
    • Added Finnish translations
    • Updated Turkish translations
    • Updated Portuguese (Brazil) translations
    • Updated Spanish translations
    • Updated Dutch translations
    • Updated Filipino translations
    Source code(tar.gz)
    Source code(zip)
  • v0.5.1(Aug 8, 2021)

    This is a small update with miscellaneous improvements:

    • More fine-tuned user interface
    • Added Japanese translations
    • Updated Occitan translations
    • Update Spanish translations
    Source code(tar.gz)
    Source code(zip)
  • v0.5.0(Aug 6, 2021)

    A semi-big release containing new features and major bug fixes:

    • Added the ability to select preferred audio source (Either microphone or from desktop audio)
    • Added animation when playing a song
    • Check if there is an audio detected before sending request
    • Fixed not responding issue when the internet is slow
    • Fix multiple songs playing at once
    • Added Czech translations
    • Updated Filipino translations
    • Updated Turkish translations
    • Updated Dutch translations
    Source code(tar.gz)
    Source code(zip)
  • v0.4.4(Aug 3, 2021)

    This update contains translations and minor UI fixes:

    • Minor user interface improvements
    • Updated Swedish translations
    • Updated Norwegian Bokmål translations
    Source code(tar.gz)
    Source code(zip)
  • v0.4.3(Jul 28, 2021)

    This update contains translations and minor fixes:

    • Better user experience with token dialog
    • Updated Dutch translations
    • Updated Italian translations
    • Updated Turkish translations
    • Updated Spanish translations
    • Updated Esperanto translations
    • Updated French translations
    Source code(tar.gz)
    Source code(zip)
  • v0.4.2(Jul 3, 2021)

  • v0.4.1(May 23, 2021)

    This contains some fixes for the last update:

    • Improved UI icons
    • Minor performance improvements
    • Added token checker
    • Fixed a bug when clearing history while listening
    Source code(tar.gz)
    Source code(zip)
  • v0.4.0(May 22, 2021)

    A release containing exciting new features and fixes!

    • New built-in player for the identified music
    • Much improved UI, especially with GTK4
    • Much improved recorder efficiency
    • It now saves the window size
    • Several minor bug fixes
    • Updated Dutch translations
    • Updated German translations
    • Updated Spanish translations
    • Updated Italian translations
    • Updated Filipino translations
    • Updated Turkish translations
    • Updated French translations
    • Updated Norwegian Bokmål translations
    • Updated Portuguese (Brazil) translations
    Source code(tar.gz)
    Source code(zip)
  • v0.3.2(May 5, 2021)

    Not a big release, but it has some notable changes:

    • Improved UI experience
    • Much improved performance and startup
    • Added shortcuts for clearing history and resetting token
    • Updated Portuguese translations
    • Updated Turkish translations
    • Updated Filipino translations
    • Updated Dutch translations
    • Updated Indonesian translations
    • Updated French translations
    • Updated Italian translations
    • Updated German translations
    • Updated Spanish translations
    • Updated Chinese (Simplified) translations
    • Updated Portuguese (Brazil) translations
    Source code(tar.gz)
    Source code(zip)
  • v0.3.1(Apr 9, 2021)

  • v0.3.0(Apr 8, 2021)

    New features and performance improvements:

    • Added a play button to preview songs
    • Song history would not output redundant songs now
    • Code cleaning
    • Added Dutch translations
    • Added Norweigan translations
    Source code(tar.gz)
    Source code(zip)
  • v0.2.0(Mar 31, 2021)

    This update brings a couple of bug fixes:

    • Fixed a bug when there are two similar named songs
    • Fixed an error when the song was not recognized
    • Added an error when the token has run out
    • Added Filipino translations
    • Added Turkish translations
    • Added Portuguese translations
    Source code(tar.gz)
    Source code(zip)
Owner
Dave Patrick
FOSS. GTK. Python.
Dave Patrick
A Python wrapper around the Soundcloud API

soundcloud-python A friendly wrapper around the Soundcloud API. Installation To install soundcloud-python, simply: pip install soundcloud Or if you'r

SoundCloud 84 Dec 31, 2022
Speech recognition module for Python, supporting several engines and APIs, online and offline.

SpeechRecognition Library for performing speech recognition, with support for several engines and APIs, online and offline. Speech recognition engine/

Anthony Zhang 6.7k Jan 08, 2023
Music generation using ml / dl

Data analysis Document here the project: deep_music Description: Project Description Data Source: Type of analysis: Please document the project the be

0 Jul 03, 2022
DaisyXmusic ❤ A bot that can play music on Telegram Group and Channel Voice Chats

DaisyXmusic ❤ is the best and only Telegram VC player with playlists, Multi Playback, Channel play and more

TeamOfDaisyX 34 Oct 22, 2022
A Music Player Bot for Discord Servers

A Music Player Bot for Discord Servers

Halil Acar 2 Oct 25, 2021
Python tools for the corpus analysis of popular music.

CATCHY Corpus Analysis Tools for Computational Hook discovery Python tools for the corpus analysis of popular music recordings. The tools can be used

Jan VB 20 Aug 20, 2022
?️ Open Source Audio Matching and Mastering

Matching + Mastering = ❤️ Matchering 2.0 is a novel Containerized Web Application and Python Library for audio matching and mastering. It follows a si

Sergey Grishakov 781 Jan 05, 2023
Dataset and baseline code for the VocalSound dataset (ICASSP2022).

VocalSound: A Dataset for Improving Human Vocal Sounds Recognition Introduction Citing Download VocalSound Dataset Details Baseline Experiment Contact

Yuan Gong 58 Jan 03, 2023
ianZiPu is a way to write notation for Guqin (古琴) music.

PyBetween Wrapper for Between - 비트윈을 위한 파이썬 라이브러리 Legal Disclaimer 오직 교육적 목적으로만 사용할수 있으며, 비트윈은 VCNC의 자산입니다. 악의적 공격에 이용할시 처벌 받을수 있습니다. 사용에 따른 책임은 사용자가

Nancy Yi Liang 8 Nov 25, 2022
Python audio and music signal processing library

madmom Madmom is an audio signal processing library written in Python with a strong focus on music information retrieval (MIR) tasks. The library is i

Institute of Computational Perception 1k Dec 26, 2022
MUSIC-AVQA, CVPR2022 (ORAL)

Audio-Visual Question Answering (AVQA) PyTorch code accompanies our CVPR 2022 paper: Learning to Answer Questions in Dynamic Audio-Visual Scenarios (O

44 Dec 23, 2022
User-friendly Voice Cloning Application

Multi-Language-RTVC stands for Multi-Language Real Time Voice Cloning and is a Voice Cloning Tool capable of transfering speaker-specific audio featur

Sven Eschlbeck 19 Dec 30, 2022
An audio digital processing toolbox based on a workflow/pipeline principle

AudioTK Audio ToolKit is a set of audio filters. It helps assembling workflows for specific audio processing workloads. The audio workflow is split in

Matthieu Brucher 238 Oct 18, 2022
Convert complex chord names to midi notes

ezchord Simple python script that can convert complex chord names to midi notes Prerequisites pip install midiutil Usage ./ezchord.py Dmin7 G7 C timi

Alex Zhang 2 Dec 20, 2022
A telegram bot for which is help to play songs in vc 🥰 give 🌟 and fork this repo before use 😏

TamilVcMusic 🌟 TamilVCMusicBot 🌟 Give your 💙 Before clicking on deploy to heroku just click on fork and star just below How to deploy Click the bel

TamilBots 150 Dec 13, 2022
Tune in is a Collaborative Music Playing Systems where multiple guests can join a room and enjoy the song being played

✨A collaborative music playing systems🎶 where multiple guests can join a room ➡🚪 and enjoy the song🎧 being played.

Vedansh Vijaywargiya 8 Nov 05, 2022
Synthesia but open source, made in python and free

PyPiano Synthesia but open source, made in python and free Requirements are in requirements.txt If you struggle with installation of pyaudio, run : pi

DaCapo 11 Nov 06, 2022
Xbot-Music - Bot Play Music and Video in Voice Chat Group Telegram

XBOT-MUSIC A Telegram Music+video Bot written in Python using Pyrogram and Py-Tg

Fariz 2 Jan 20, 2022
[Singing Log] Let your program learn to sing!

[Singing Log] Let your program learn to sing! You must have thought this was changelog when you saw the English title, but it's not, it's chànggēlog. What it does is allow your program to print logs

黄巍 22 Sep 03, 2022
An audio guide for destroying oracles in Destiny's Vault of Glass raid

prophet An audio guide for destroying oracles in Destiny's Vault of Glass raid. This project allows you to make any encounter with oracles without hav

24 Sep 15, 2022