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
Omniscient Mozart, being able to transcribe everything in the music, including vocal, drum, chord, beat, instruments, and more.

OMNIZART Omnizart is a Python library that aims for democratizing automatic music transcription. Given polyphonic music, it is able to transcribe pitc

MCTLab 1.3k Jan 08, 2023
Datamoshing with FFmpeg

ffmosher Datamoshing with FFmpeg Drag and drop video onto mosh.bat to create a datamoshed video. To datamosh an image, please ensure the file is in a

18 Sep 11, 2022
voice assistant made with python that search for covid19 data(like total cases, deaths and etc) in a specific country

covid19-voice-assistant voice assistant made with python that search for covid19 data(like total cases, deaths and etc) in a specific country installi

Miguel 2 Dec 05, 2021
Suyash More 111 Jan 07, 2023
Telegram Bot to play music in VoiceChat with Channel Support and autostarts Radio.

VCPlayerBot Telegram bot to stream videos in telegram voicechat for both groups and channels. Supports live streams, YouTube videos and telegram media

Abdisamad Omar Mohamed 1 Oct 15, 2021
Python library for handling audio datasets.

AUDIOMATE Audiomate is a library for easy access to audio datasets. It provides the datastructures for accessing/loading different datasets in a gener

Matthias 121 Nov 27, 2022
Jarvis From Basic to Advance - make a voice assistant similar to JARVIS (in iron man movie)

JARVIS (Basic to Advance) This was my attempt to make a voice assistant similar to JARVIS (in iron man movie) Let's be honest, it's not as intelligent

codesempai 17 Dec 25, 2022
Simple discord bot by @merive 🤖

Parzibot Powerful and Useful Discord Bot on Python. The source code of the bot is available to everyone. Parzibot uses English language. This is free

merive_ 3 Dec 28, 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
A GUI-based audio player with support for a large variety of formats

Miza-Player A GUI-based audio player with support for a large variety of formats, able to play from web-hosted media platforms such as YouTube, includ

Thomas Xin 3 Dec 14, 2022
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
Full LAKH MIDI dataset converted to MuseNet MIDI output format (9 instruments + drums)

LAKH MuseNet MIDI Dataset Full LAKH MIDI dataset converted to MuseNet MIDI output format (9 instruments + drums) Bonus: Choir on Channel 10 Please CC

Alex 6 Nov 20, 2022
Converting UGG files from Rode Wireless Go II transmitters (unsompressed recordings) to WAV format

Rode_WirelessGoII_UGG2wav Converting UGG files from Rode Wireless Go II transmitters (uncompressed recordings) to WAV format Story I backuped the .ugg

Ján Mazanec 31 Dec 22, 2022
Deep learning transformer model that generates unique music sequences.

music-ai Deep learning transformer model that generates unique music sequences. Abstract In 2017, a new state-of-the-art was published for natural lan

xacer 6 Nov 19, 2022
LibXtract is a simple, portable, lightweight library of audio feature extraction functions.

LibXtract LibXtract is a simple, portable, lightweight library of audio feature extraction functions. The purpose of the library is to provide a relat

Jamie Bullock 215 Nov 16, 2022
A python package for calculating the PESQ.

PyPESQ (WIP) Pypesq is a python wrapper for the PESQ score calculation C routine. It only can be used in evaluation purpose. INSTALL pip install https

Jingdong Li 269 Dec 18, 2022
:speech_balloon: SpeechPy - A Library for Speech Processing and Recognition: http://speechpy.readthedocs.io/en/latest/

SpeechPy Official Project Documentation Table of Contents Documentation Which Python versions are supported Citation How to Install? Local Installatio

Amirsina Torfi 870 Dec 27, 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
:sound: Play and Record Sound with Python :snake:

Play and Record Sound with Python This Python module provides bindings for the PortAudio library and a few convenience functions to play and record Nu

spatialaudio.net 750 Dec 31, 2022
Real-time audio visualizations (spectrum, spectrogram, etc.)

Friture Friture is an application to visualize and analyze live audio data in real-time. Friture displays audio data in several widgets, such as a sco

Timothée Lecomte 700 Dec 31, 2022