项目作者: lithium0003

项目描述 :
sound spectrum analyzer
高级语言: C++
项目地址: git://github.com/lithium0003/sound_split.git
创建时间: 2018-08-21T04:50:46Z
项目社区:https://github.com/lithium0003/sound_split

开源协议:

下载


sound_split

Build Status

sound spectrum analyzer

description

A linux cuda implementation of Fast recursive spectral analysis using variable window (H.Nakatsuji).

screenshot

screenshot

compile

  • prepare cuda environment
  1. sudo apt-get install build-essential
  2. wget https://developer.nvidia.com/compute/cuda/9.2/Prod2/local_installers/cuda_9.2.148_396.37_linux
  3. sudo bash cuda_9.2.148_396.37_linux
  4. wget https://developer.nvidia.com/compute/cuda/9.2/Prod2/patches/1/cuda_9.2.148.1_linux
  5. sudo bash cuda_9.2.148.1_linux

and add this to .bashrc

  1. export PATH=/usr/local/cuda/bin${PATH:+:${PATH}}
  2. export LD_LIBRARY_PATH=/usr/local/cuda/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
  • prepare libraries
  1. sudo apt install libgtk-3-dev
  2. sudo apt install libpulse-dev
  • clone source and compile
  1. git clone https://github.com/lithium0003/sound_split.git
  2. cd sound_split

edit cuda compute capability in Makefile

  1. NVCCFLAGS := -O3 -I ~/NVIDIA_CUDA-9.2_Samples/common/inc/ -gencode=arch=compute_61,code=sm_61

and run make

  1. make

how to use

  1. $ ./sound_split [optinos] input.wav
  2. options
  3. --mono: force load as mono
  4. --start [time]: skip first [time] samples in wav file
  5. --length [time]: analyze only [time] length
  6. --filter: filter mode
  7. time option
  8. 10.05 -> 10.05sec
  9. 1min20sec or 1h10m5.02sec will be ok

License

These codes are licensed under CC0.

CC0

reference

可変窓を用いた高速再帰的スペクトル解析 中辻 秀人 著