JImpulse

A Java port of the impulse library https://launchpad.net/impulse.bzr. For Linux only, requires libpulse and libfftw-3. Captures output from PulseAudio system and delivers transformed snapshots optionally using Fast Fourier Transforms. The data collected may then be used to create visual effects based on sound levels of various frequencies.

Лицензия

Лицензия

Группа

Группа

uk.co.bithatch
Идентификатор

Идентификатор

jimpulse
Последняя версия

Последняя версия

1.2
Дата

Дата

Тип

Тип

jar
Описание

Описание

JImpulse
A Java port of the impulse library https://launchpad.net/impulse.bzr. For Linux only, requires libpulse and libfftw-3. Captures output from PulseAudio system and delivers transformed snapshots optionally using Fast Fourier Transforms. The data collected may then be used to create visual effects based on sound levels of various frequencies.
Ссылка на сайт

Ссылка на сайт

https://github.com/bithatch/jimpulse
Организация-разработчик

Организация-разработчик

Bithatch
Система контроля версий

Система контроля версий

https://github.com/bithatch/jimpulse

Скачать jimpulse

Как подключить последнюю версию

<!-- https://jarcasting.com/artifacts/uk.co.bithatch/jimpulse/ -->
<dependency>
    <groupId>uk.co.bithatch</groupId>
    <artifactId>jimpulse</artifactId>
    <version>1.2</version>
</dependency>
// https://jarcasting.com/artifacts/uk.co.bithatch/jimpulse/
implementation 'uk.co.bithatch:jimpulse:1.2'
// https://jarcasting.com/artifacts/uk.co.bithatch/jimpulse/
implementation ("uk.co.bithatch:jimpulse:1.2")
'uk.co.bithatch:jimpulse:jar:1.2'
<dependency org="uk.co.bithatch" name="jimpulse" rev="1.2">
  <artifact name="jimpulse" type="jar" />
</dependency>
@Grapes(
@Grab(group='uk.co.bithatch', module='jimpulse', version='1.2')
)
libraryDependencies += "uk.co.bithatch" % "jimpulse" % "1.2"
[uk.co.bithatch/jimpulse "1.2"]

Зависимости

Библиотека не имеет зависимостей. Это самодостаточное приложение, которое не зависит ни от каких других библиотек.

Модули Проекта

Данный проект не имеет модулей.

JImpulse

Java port of impulse, a small library for analysing sound output captured from Pulse Audio on Linux.

Dependencies

You will need a couple of libraries, but both should be available on your Linux system.

  • libpulse0
  • libfftw-3

If you are building this project from source, you will also need the -dev packages for these too.

Configuring your project

The Java Bit

The library is available in Maven Central.

Maven

	<dependency>
		<groupId>uk.co.bithatch</groupId>
		<artifactId>jimpulse</artifactId>
		<version>1.0</version>
	</dependency>

Development versions (when available), will be the next version number, suffixed with -SNAPSHOT).

	<dependency>
		<groupId>uk.co.bithatch</groupId>
		<artifactId>jimpulse</artifactId>
		<version>1.1-SNAPSHOT</version>
	</dependency>

The Native Bit

The native part of JImpulse is written using C and JNI, which itself uses the https://launchpad.net/impulse.bzr library by Ian Halpern.

The jars distributed by Bithatch only currently contain x86_64 binaries. These are automatically extracted when needed.

For other platforms you will need build yourself. The native components are built using [http://maven-nar.github.io/index.html](Maven NAR plugin). If you want to add support for other platforms, you'll need to edit the POM and build on appropriate hardware. NOTE: I do not use NAR Native ARchives, due to some problems with modularity.

Try It

You can run the test application from the command line (requires Maven).

mvn compile exec:java

If all is well, it will simple dump out a never ending stream of floating point numbers.

Usage

Integration with your own project is very simple.

The Monitor test application does the following :-

	Impulse lib = new Impulse();
	
	lib.initImpulse();
	
	// You can set a different pulse device by it's index
	//	lib.setSourceIndex(0);
	
	// Set to true to turn on fast fourier transform
	boolean fft = false;
	
	while(true) {
		/* This is 256 bytes */
		double[] data = lib.getSnapshot(fft);
		
		for(double d : data) {
			System.out.print(d + " ");
		}
		System.out.println();
	}
uk.co.bithatch

Bithatch

Open source libraries and applications

Версии библиотеки

Версия
1.2
1.1
1.0