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
Python Audio Analysis Library: Feature Extraction, Classification, Segmentation and Applications

A Python library for audio feature extraction, classification, segmentation and applications This doc contains general info. Click here for the comple

Theodoros Giannakopoulos 5.1k Jan 02, 2023
The project aims to develop a personal-assistant for Windows & Linux-based systems

The project aims to develop a personal-assistant for Windows & Linux-based systems. Samiksha draws its inspiration from virtual assistants like Cortana for Windows, and Siri for iOS. It has been desi

SHUBHANSHU RAI 1 Jan 16, 2022
Bot Music Pintar. Created by Rio

🎶 Rio Music 🎶 Kalo Fork Star Ya Bang Hehehe Requirements 📝 FFmpeg NodeJS nodesource.com Python 3.8+ or 3.7 PyTgCalls Generate String Using Replit ⤵

RioProjectX 7 Jun 15, 2022
Python CD-DA ripper preferring accuracy over speed

Whipper Whipper is a Python 3 (3.6+) CD-DA ripper based on the morituri project (CDDA ripper for *nix systems aiming for accuracy over speed). It star

671 Jan 04, 2023
Official implementation of A cappella: Audio-visual Singing VoiceSeparation, from BMVC21

Y-Net Official implementation of A cappella: Audio-visual Singing VoiceSeparation, British Machine Vision Conference 2021 Project page: ipcv.github.io

Juan F. Montesinos 12 Oct 22, 2022
A useful tool to generate chord progressions according to melody MIDIs

Auto chord generator, pure python package that generate chord progressions according to given melodies

Billy Yi 53 Dec 30, 2022
Simple, hackable offline speech to text - using the VOSK-API.

Nerd Dictation Offline Speech to Text for Desktop Linux. This is a utility that provides simple access speech to text for using in Linux without being

Campbell Barton 844 Jan 07, 2023
Reading list for research topics in sound event detection

Sound event detection aims at processing the continuous acoustic signal and converting it into symbolic descriptions of the corresponding sound events present at the auditory scene.

Soham 64 Jan 05, 2023
controls volume using hand gestures

controls volume using hand gestures

1 Oct 11, 2021
Linear Prediction Coefficients estimation from mel-spectrogram implemented in Python based on Levinson-Durbin algorithm.

LPC_for_TTS Linear Prediction Coefficients estimation from mel-spectrogram implemented in Python based on Levinson-Durbin algorithm. 基于Levinson-Durbin

Zewang ZHANG 58 Nov 17, 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
A2DP agent for promiscuous/permissive audio sinc.

Promiscuous Bluetooth audio sinc A2DP agent for promiscuous/permissive audio sinc for Linux. Once installed, a Bluetooth client, such as a smart phone

Jasper Aorangi 4 May 27, 2022
Audio pitch-shifting & re-sampling utility, based on the EMU SP-1200

Pitcher.py Free & OS emulation of the SP-12 & SP-1200 signal chain (now with GUI) Pitch shift / bitcrush / resample audio files Written and tested in

morgan 13 Oct 03, 2022
Musillow is a music recommender app that finds songs similar to your favourites.

MUSILLOW The music recommender app Check it out now!!! View Demo · Report Bug · Request Feature About The App Musillow is a music recommender app that

3 Feb 03, 2022
Sequencer: Deep LSTM for Image Classification

Sequencer: Deep LSTM for Image Classification Created by Yuki Tatsunami Masato Taki This repository contains implementation for Sequencer. Abstract In

Yuki Tatsunami 111 Dec 16, 2022
Synchronize a local directory of songs' (MP3, MP4) metadata (genre, ratings) and playlists with a Plex server.

PlexMusicSync Synchronize a local directory of songs' (MP3, MP4) metadata (genre, ratings) and playlists (m3u, m3u8) with a Plex server. The song file

Tom Goetz 9 Jul 07, 2022
ᴀ ʙᴏᴛ ᴛʜᴀᴛ ᴄᴀɴ ᴘʟᴀʏ ᴍᴜꜱɪᴄ ɪɴ ᴛᴇʟᴇɢʀᴀᴍ ɢʀᴏᴜᴘ ᴏɴ ᴠᴏɪᴄᴇ ᴄᴀʟʟ

GJ516 LOVER'S ııllıllı ♥️ ➤⃝Gᴊ516_ᴍᴜꜱɪᴄ_ʙᴏᴛ ♥️ ıllıllı ᴀ ʙᴏᴛ ᴛʜᴀᴛ ᴄᴀɴ ᴘʟᴀʏ ᴍᴜꜱɪᴄ ɪɴ ᴛᴇʟᴇɢʀᴀᴍ ɢʀᴏᴜᴘ ᴏɴ ᴠᴏɪᴄᴇ ᴄᴀʟʟ Requirements 📝 FFmpeg NodeJS nodesou

1 Nov 22, 2021
Audio features extraction

Yaafe Yet Another Audio Feature Extractor Build status Branch master : Branch dev : Anaconda : Install Conda Yaafe can be easily install with conda. T

Yaafe 231 Dec 26, 2022
A python script that can play .mp3 URLs upon the ringing or motion detection of a Ring doorbell. The sound plays through Sonos speakers.

Ring x Sonos A python script that plays .mp3 files whenever a doorbell is rung or a doorbell detects motion. Features Music! Authors @braden Running T

braden 0 Nov 12, 2021
Sync Toolbox - Python package with reference implementations for efficient, robust, and accurate music synchronization based on dynamic time warping (DTW)

Sync Toolbox - Python package with reference implementations for efficient, robust, and accurate music synchronization based on dynamic time warping (DTW)

Meinard Mueller 66 Jan 02, 2023