khalzam

Simple audio recognition library.

Github星跟蹤圖

Khalzam

This library is very poorly designed and was written purely as proof-of-concept.
I have rewritten it in Rust and the main development is going here.

About

Khalzam is a simple audio recognition library. Its algrorithm is based on
this article by Jovan Jovanovic

Dependencies

Fingerprint library uses mpg123 (thinking of switching to a native solution) so you need to install it:

macOS (Homebrew)

$ brew install mpg123

Debian

$ sudo apt-get install libmpg123-dev

Setup

You need to create and initialize database:

$ createdb -O user databasename
$ psql -f createdb.sql databasename

Usage

Shell mode

$ DBUSER=kisasexypantera94 DBNAME=khalzam go run shell.go
Initializing library...

MusicLibrary interactive shell
>>> help

Commands:
  clear             clear the screen
  delete            delete audio from database
  exit              exit the program
  help              display help
  index             index audiofile
  indexdir          index directory
  recognize         recognize audiofile
  recognizedir      recognize directory


>>> index resources/Modjo\ -\ Lady\ \(Hear\ Me\ Tonight\).mp3
Indexing 'resources/Modjo - Lady (Hear Me Tonight).mp3'...
>>> recognize samples/modjo_lady_sample.mp3
Recognizing 'samples/modjo_lady_sample.mp3'...
Best match: Modjo - Lady (Hear Me Tonight) (11% matched)

API

package main

import (
	"fmt"
	"github.com/kisasexypantera94/khalzam/musiclibrary"
	_ "github.com/lib/pq"
)

func main() {
	cfg := &musiclibrary.Config{
		User:     os.Getenv("DBUSER"),
		Password: os.Getenv("DBPASSWORD"),
		DBname:   os.Getenv("DBNAME"),
		Host:     os.Getenv("DBHOST"),
		Port:     os.Getenv("DBPORT"),
	}

	musicLib, _ := musiclibrary.Open(cfg)
	defer musicLib.Close()

	musicLib.Index("resources/Modjo - Lady (Hear Me Tonight).mp3")
	result := musicLib.Recognize("samples/modjo_lady_sample.mp3")
	fmt.Println(result)
}

主要指標

概覽
名稱與所有者kisasexypantera94/khalzam
主編程語言Go
編程語言Go (語言數: 1)
平台
許可證MIT License
所有者活动
創建於2018-12-24 03:55:34
推送於2019-08-18 14:02:12
最后一次提交2019-08-18 17:02:05
發布數0
用户参与
星數46
關注者數0
派生數1
提交數27
已啟用問題?
問題數0
打開的問題數0
拉請求數0
打開的拉請求數0
關閉的拉請求數0
项目设置
已啟用Wiki?
已存檔?
是復刻?
已鎖定?
是鏡像?
是私有?