Skip to content

Commit

Permalink
Merge pull request #14 from umjammer/1.0.5
Browse files Browse the repository at this point in the history
1.0.5
  • Loading branch information
umjammer authored Oct 22, 2022
2 parents 31b278a + 80fae4e commit 82c4ad6
Show file tree
Hide file tree
Showing 123 changed files with 1,954 additions and 2,543 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/maven.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ jobs:
steps:
- uses: actions/checkout@v2
- name: Set up JDK 8
uses: actions/setup-java@v1
uses: actions/setup-java@v2
with:
java-version: '8'
distribution: 'adopt'
Expand Down
9 changes: 9 additions & 0 deletions .github/workflows/settings.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
<settings>
<servers>
<server>
<id>github</id>
<username>umjammer</username>
<password>__PASSWORD__</password>
</server>
</servers>
</settings>
86 changes: 49 additions & 37 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,53 +1,64 @@
[![Maven Package](https://github.com/umjammer/vavi-sound-sandbox/actions/workflows/maven-publish.yml/badge.svg)](https://github.com/umjammer/vavi-sound-sandbox/actions/workflows/maven-publish.yml)
[![Java CI](https://github.com/umjammer/vavi-sound-sandbox/actions/workflows/maven.yml/badge.svg)](https://github.com/umjammer/vavi-sound-sandbox/actions/workflows/maven.yml)
[![CodeQL](https://github.com/umjammer/vavi-sound-sandbox/actions/workflows/codeql-analysis.yml/badge.svg)](https://github.com/umjammer/vavi-sound-sandbox/actions/workflows/codeql-analysis.yml)
![Java](https://img.shields.io/badge/Java-8-b07219)

# vavi-sound-sandbox

🌏 play the world ♪

## Status

| **SPI** | **Codec** | **IN Status** | **OUT Status** | **SPI Status** | **project** | **Description** | **Comment** |
|:--------|:-----------|:--------------|:---------------|:---------------|:------------|:----------------|:------------|
| midi | unknown | 🚫 | 🚫 | - | this | MFi by [unknown]() | |
| midi | ittake | 🚫 | 🚫 | - | this | MFi by [ittake](https://web.archive.org/web/20090515001654/http://tokyo.cool.ne.jp/ittake/java/MIDIToMLDv013/MIDIToMLD.html) | |
| sampled | ilbc | 🚫 | 🚫 | - | this | [c](http://www.ilbcfreeware.org/) | |
| sampled | ldcelp | 🚫 | 🚫 | - | this | [c](ftp://svr-ftp.eng.cam.ac.uk/pub/comp.speech/coding/ldcelp-2.0.tar.gz) | |
| sampled | mp3 | 🚫 | - | - | this | [mp3](https://github.com/umjammer/vavi-sound-sandbox/tree/master/src/main/java/vavi/sound/mp3) | need to deal tags |
| sampled | sse | 🚫 | - | 🚫 | this | [sse](http://shibatch.sourceforge.net/download/) | |
| sampled | resampling || - | - | this | [laoe](http://www.oli4.ch/laoe/home.html) | |
| sampled | resampling || - | - | this | [rohm](https://en.wikipedia.org/wiki/Rohm) | |
| sampled | polyphase || - | 🚧 | this | [sox](http://sox.sourceforge.net/) resampling | |
| sampled | resampler || - | - | this | [sox](http://sox.sourceforge.net/) resampling | |
| sampled | perfect | 🚧 | - | - | this | [sox](http://sox.sourceforge.net/) resampling | |
| sampled | monauralize || - || [tritonus-remaining](https://github.com/umjammer/tritonus-remaining) | `PCM2PCMConversionProvider` | works but not suitable for resampling |
| sampled | alac || - || [Apple Lossless Audio Decoder](https://github.com/umjammer/Java-Apple-Lossless-decoder) | | |
| ~~sampled~~ | ~~QTKit~~ | ~~~~ | - | ? | ~~this~~ | ~~[rococoa](https://github.com/umjammer/rococoa)~~ | deprecated |
| sampled | AVFoundation | 🚧 | - | 🚧 | this | [rococoa](https://github.com/umjammer/rococoa) | use `AVAudioConverter` how to return objc value in callback? |
| sampled | twinvq | 🚫 | 🚫 | - | this | | TODO use ffmpeg |
| midi | vsq | 🚧 | - | 🚧 | this | | YAMAHA Vocaloid |
| sampled | opus || 🚫 || this | [concentus](https://github.com/lostromb/concentus) | |
| midi | AudioUnit || - || this | [rococoa](https://github.com/umjammer/rococoa) | use `AVAudioUnitMIDIInstrument/kAudioUnitSubType_DLSSynth` |
| midi | AudioUnit || - | 🚫 | this | [rococoa](https://github.com/umjammer/rococoa) | use `AVAudioUnitSampler`, how to adjust sf2 patch? |
| midi | JSyn || - || this | [JSyn](https://github.com/philburk/jsyn) | looking for good drums |
| midi | OPL3 || - || this | [adplug](https://github.com/adplug/adplug) | [opl3-player](http://opl3.cozendey.com/) |
| midi | ? | - | - | - | this | | opl, ma |
| midi | CoreMIDI || ? || [osxmidi4j](https://github.com/locurasoft/osxmidi4j) | rococoa | iac ✓, network ✓, bluetooth ? |
| midi | CoreMIDI || ? || [CoreMidi4J](https://github.com/DerekCook/CoreMidi4J) | jni | iac ✓, network ✓, bluetooth ? |
| sampled | speex || - || [jspeex](http://jspeex.sourceforge.net/) | | sample rate is limited to convert |
| sampled | flac || - || [jFLAC](http://jflac.sourceforge.net/) | | |
| sampled | aac | - | - || [JAADec](https://github.com/umjammer/JAADec) | | |
| sampled | vorbis | - | - || [tritonus-jorbis](https://github.com/umjammer/tritonus-jorbis) | | |

## Others

* [iTunes Library (rococoa)](https://github.com/umjammer/vavi-sound-sandbox/tree/master/src/main/java/vavix/rococoa/ituneslibrary)
| **SPI** | **Codec** | **IN Status** | **OUT Status** | **SPI Status** | **project** | **Description** | **Comment** |
|:--------|:-------------|:--------------|:---------------|:---------------|:---------------------------------------------------------------------|:-----------------------------------------------------------------------------------------------------------------------------|:------------|
| midi | unknown | 🚫 | 🚫 | - | this | MFi by [unknown]() | |
| midi | ittake | 🚫 | 🚫 | - | this | MFi by [ittake](https://web.archive.org/web/20090515001654/http://tokyo.cool.ne.jp/ittake/java/MIDIToMLDv013/MIDIToMLD.html) | |
| sampled | ilbc | 🚫 | 🚫 | - | this | [c](http://www.ilbcfreeware.org/) | |
| sampled | ldcelp | 🚫 | 🚫 | - | this | [c](ftp://svr-ftp.eng.cam.ac.uk/pub/comp.speech/coding/ldcelp-2.0.tar.gz) | |
| sampled | mp3 | 🚫 | - | - | this | [mp3](https://github.com/umjammer/vavi-sound-sandbox/tree/master/src/main/java/vavi/sound/mp3) | need to deal tags |
| sampled | mp3 || - || [mp3spi](https://github.com/umjammer/mp3spi) | [jlayer](https://github.com/umjammer/jlayer) | |
| sampled | sse | 🚫 | - | 🚫 | this | [sse](http://shibatch.sourceforge.net/download/) | |
| sampled | resampling || - | - | this | [laoe](http://www.oli4.ch/laoe/home.html) | |
| sampled | resampling || - | - | this | [rohm](https://en.wikipedia.org/wiki/Rohm) | |
| sampled | polyphase || - | 🚧 | this | [sox](http://sox.sourceforge.net/) resampling | |
| sampled | resampler || - | - | this | [sox](http://sox.sourceforge.net/) resampling | |
| sampled | perfect | 🚧 | - | - | this | [sox](http://sox.sourceforge.net/) resampling | |
| sampled | monauralize || - || [tritonus-remaining](https://github.com/umjammer/tritonus-remaining) | `PCM2PCMConversionProvider` | works but not suitable for resampling |
| sampled | alac || - || [vavi-sound-alac](https://github.com/umjammer/vavi-sound-alac) | | |
| ~~sampled~~ | ~~QTKit~~ | ~~~~ | - | ? | ~~this~~ | ~~[rococoa](https://github.com/umjammer/rococoa)~~ | deprecated |
| sampled | AVFoundation | 🚧 | - | 🚧 | this | [rococoa](https://github.com/umjammer/rococoa) | use `AVAudioConverter` how to return objc value in callback? |
| sampled | twinvq | 🚫 | 🚫 | - | this | | TODO use ffmpeg |
| midi | vsq | 🚧 | - | 🚧 | this | | YAMAHA Vocaloid |
| sampled | opus || 🚫 || this | [concentus](https://github.com/lostromb/concentus) | |
| midi | AudioUnit || - || this | [rococoa](https://github.com/umjammer/rococoa) | use `AVAudioUnitMIDIInstrument/kAudioUnitSubType_DLSSynth` |
| midi | AudioUnit || - | 🚫 | this | [rococoa](https://github.com/umjammer/rococoa) | use `AVAudioUnitSampler`, how to adjust sf2 patch? |
| midi | JSyn || - || this | [JSyn](https://github.com/philburk/jsyn) | looking for good drums |
| midi | OPL3 || - || this | [adplug](https://github.com/adplug/adplug) | [opl3-player](http://opl3.cozendey.com/) |
| midi | ? | - | - | - | this | | opl, ma |
| midi | CoreMIDI || ? || [osxmidi4j](https://github.com/umjammer/osxmidi4j) | rococoa | iac ✓, network ✓, bluetooth ? |
| midi | CoreMIDI || ? || [CoreMidi4J](https://github.com/DerekCook/CoreMidi4J) | jni | iac ✓, network ✓, bluetooth ? |
| sampled | speex || - || [jspeex](http://jspeex.sourceforge.net/) | | sample rate is limited to convert |
| sampled | flac || - || [JustFLAC](https://github.com/umjammer/JustFLAC) | | |
| sampled | flac || - || [jFLAC](http://jflac.sourceforge.net/) | | |
| sampled | aac | - | - || [JAADec](https://github.com/umjammer/JAADec) | | |
| sampled | vorbis | - | - || [tritonus-jorbis](https://github.com/umjammer/tritonus-jorbis) | | |

## Features

* ~~ALAC Java sound SPI~~ ... ([graduated incubation](https://github.com/umjammer/vavi-sound-alac))
* OPAS Java sound SPI ... (candidate to graduate)
* sox polyphase resampler Java sound SPI ... (candidate to graduate)
* sox perfect resampler Java sound SPI ... (wip)
* Mac AudioUnit synthesizer Java MIDI SPI ... (candidate to graduate)
* JSyn synthesizer Java MIDI SPI ... (wip)
* OPL3 synthesizer Java MIDI SPI ... (wip)
* [iTunes Library (rococoa) ... Music.app Music Database](https://github.com/umjammer/vavi-sound-sandbox/tree/master/src/main/java/vavix/rococoa/ituneslibrary)

## Install

* [jitpack](https://jitpack.io/#umjammer/vavi-sound-sandbox)
* plain JitPack cannot retrieve GitHub Packages, please choose green marked version made by JitCI like `f49ed0f0`
* https://github.com/umjammer/vavi-sound-sandbox/packages/1298964
* this project uses github packages. add a personal access token to `~/.m2/settings.xml`
* see https://docs.github.com/en/packages/working-with-a-github-packages-registry/working-with-the-apache-maven-registry

## Tech Know

Expand Down Expand Up @@ -113,5 +124,6 @@
## References

* [Gervill](https://github.com/bluenote10/gervill)
* https://github.com/HectorRicardo/final-gervill


41 changes: 23 additions & 18 deletions pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@

<groupId>vavi</groupId>
<artifactId>vavi-sound-sandbox</artifactId>
<version>1.0.4</version>
<version>1.0.5</version>

<name>Vavi Sound API (Sandbox)</name>
<url>https://github.com/umjammer/vavi-sound-sandbox</url>
Expand All @@ -26,15 +26,13 @@
</issueManagement>

<properties>
<tritonus.groupId>org.tritonus</tritonus.groupId>
<tritonus.version>0.3.11</tritonus.version>
<rococoa.version>0.8.4</rococoa.version>
</properties>

<distributionManagement>
<repository>
<id>github</id>
<name>GitHub umjammer Apache Maven Packages</name>
<url>https://maven.pkg.github.com/umjammer/vavi-sound-sandbox</url>
</repository>
</distributionManagement>
Expand Down Expand Up @@ -75,8 +73,9 @@
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<version>2.10</version>
<version>3.3.0</version>
<executions>
<execution>
<id>copy</id>
Expand Down Expand Up @@ -107,23 +106,25 @@
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.10.1</version>
<configuration>
<source>8</source>
<target>8</target>
<encoding>UTF-8</encoding>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>3.0.0-M5</version>
<version>3.0.0-M7</version>
<configuration>
<argLine>
-Dvavi.util.logging.VaviFormatter.extraClassMethod="org\.tritonus\.share\.TDebug#out"
-Djava.util.logging.config.file=${project.build.testOutputDirectory}/logging.properties
-Dgdrive.home="/Volumes/Google Drive/My Drive"
-Dgdrive.home="/Volumes/GoogleDrive/My Drive"
-Dvavi.test.dev.null=${dev.null}
-Dvavi.test=true
</argLine>
<trimStackTrace>false</trimStackTrace>
<forkMode>always</forkMode>
Expand All @@ -139,7 +140,6 @@
</repository>
<repository>
<id>github</id>
<name>GitHub umjammer Apache Maven Packages</name>
<url>https://maven.pkg.github.com/umjammer/*</url>
</repository>
</repositories>
Expand All @@ -149,7 +149,7 @@
<dependency>
<groupId>org.junit</groupId>
<artifactId>junit-bom</artifactId>
<version>5.8.1</version>
<version>5.9.0</version>
<type>pom</type>
<scope>import</scope>
</dependency>
Expand All @@ -160,12 +160,12 @@
<dependency>
<groupId>com.github.umjammer</groupId>
<artifactId>vavi-commons</artifactId>
<version>1.1.6</version>
<version>1.1.7</version>
</dependency>
<dependency>
<groupId>com.github.umjammer</groupId>
<groupId>com.github.umjammer</groupId> <!-- com.github.umjammer -->
<artifactId>vavi-sound</artifactId>
<version>1.0.12</version>
<version>1.0.13</version>
<exclusions>
<exclusion>
<groupId>com.github.umjammer</groupId>
Expand All @@ -176,7 +176,7 @@
<dependency>
<groupId>com.github.umjammer</groupId>
<artifactId>vavi-sound-alac</artifactId>
<version>0.3.1</version>
<version>0.3.2</version>
</dependency>

<dependency>
Expand All @@ -190,7 +190,7 @@
<version>${rococoa.version}</version>
</dependency>
<dependency>
<groupId>${tritonus.groupId}</groupId>
<groupId>org.tritonus</groupId>
<artifactId>tritonus-remaining</artifactId>
<version>${tritonus.version}</version>
</dependency>
Expand Down Expand Up @@ -229,6 +229,11 @@
<artifactId>junit-jupiter-engine</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.junit.platform</groupId>
<artifactId>junit-platform-commons</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter-params</artifactId>
Expand Down Expand Up @@ -256,21 +261,21 @@
</dependency>

<dependency>
<groupId>${tritonus.groupId}</groupId>
<groupId>org.tritonus</groupId>
<artifactId>tritonus-dsp</artifactId>
<version>${tritonus.version}</version>
<scope>test</scope>
</dependency>

<dependency>
<groupId>${tritonus.groupId}</groupId>
<groupId>org.tritonus</groupId>
<artifactId>tritonus-cdda</artifactId>
<version>${tritonus.version}</version>
<scope>test</scope>
</dependency>

<dependency>
<groupId>${tritonus.groupId}</groupId>
<groupId>org.tritonus</groupId>
<artifactId>tritonus-jorbis</artifactId>
<version>${tritonus.version}</version>
<scope>test</scope>
Expand Down Expand Up @@ -329,7 +334,7 @@
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-jdk14</artifactId>
<version>1.7.5</version>
<version>1.7.36</version>
<scope>test</scope>
</dependency>
<!--
Expand Down
1 change: 0 additions & 1 deletion src/main/java/unknown/sound/ChunkInputStream.java
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,6 @@ public void readMessageBytes(byte[] dataBytes)
if (readLength != dataBytes.length) {
throw new InvalidMidiDataException("format");
} else {
return;
}
}

Expand Down
Loading

0 comments on commit 82c4ad6

Please sign in to comment.