aptx-encode aptx-decode のプログラムサンプル

aptx-decode のプログラムサンプルを探していましたが、
libopenaptx が公開れていました。

https://github.com/pali/libopenaptx

aptx,aptx-hd の Encode は公開されているようですが、Decode のほうは、
どうやら、LDAC と同じく 非公開で、研究のための使用に限定されるような記述も何処かで、見かけたので注意が必要ですが。

This is Open Source implementation of Audio Processing Technology codec (aptX)
derived from ffmpeg 4.0 project and licensed under LGPLv2.1+.
ともあるので、どちらが正しいのかわかりません。

仕方がないので、おんちゃんは勉強のつもりでダウンロードして、CentOS7 Eclipseでビルドしてみました。

適当なフォルダーで、
git clone https://github.com/pali/libopenaptx.git

中身を見てみると、
openaptx.c
openaptx.h
openaptxdec.c   --> Decode サンプルプログラム
openaptxenc.c  --> Encode サンプルプログラム
で、
早速、CentOS7 でビルドして試してみました。

使い方が、プログラムのヘルプとちょっと異なるので、メモしてみました。

Encode は、下記手順です。
1. RAW ファイルを用意
$sox xxxx.wav -t raw -r 44.1k -S -3 -c 2 -b 24 sample.raw
2. aptx-hd にEncode
$./openaptxenc  --hd < sample.raw > sample.aptxhd

3.確認のため aptx-hd を Decode して RAW に変換
$./openaptxdec  --hd < sample.aptxhd > sample-hd.raw
4. RAW -> WAV に変換
$sox -t raw -r 44.1k -c 2 -b 24 -L -e signed-integer sample-hd.raw sample-hd.wav
5. play で聴く
$play sample-hd.wav

一応、無事音は、再生されました。
すごい!
感激です。

因みに、openaptx.c のコンパイルでは、最新のeclipse oxygen (Version: 2018-09 (4.9.0)) では、エラーになります。



openaptx.c を下記のように変更すれば、OK になります。

このブログ記事について

このページは、おんちゃんが2018年12月13日 13:19に書いたブログ記事です。

ひとつ前のブログ記事は「ESP32 esp-idf Bluetooth I2s Audio Examples」です。

次のブログ記事は「ESP32 esp-idf eclipse CentOS7 build error」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。

カテゴリ

ウェブページ

サイトナビ