問題タブ [flac]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ruby - ruby - IO.popen が機能しない stdin と stdout のエンコーディングが不十分
私はパイプ、IO.popen
特にRubyで作業してきましたが、理解できない問題に遭遇しました。flac
プロセスからプロセスへのバイナリデータをファイルに書き込もうとしてlame
います。私が使用しているコード構造は以下のとおりです。
しかし、うまくいきません。の実行後flac
、スクリプトはハングし、lame
アイドル状態のままになります (プロセッサはまったく使用されません)。エラーや例外は発生しません。
Windows 7 で cygwin ruby パッケージ ( 1.9.3p429 (2013-05-15) [i386-cygwin] ) を使用して cygwin を使用しています。
私は何か間違ったことをしているに違いありません。どんな助けも大歓迎です。ありがとう!
エクストラ #1
オーディオファイルをトランスコードlame
するためにプラットフォームに依存しない(もちろんルビーのサポートは限定されています)を作成しようとしているため、プロセスからバイナリデータをパイプインおよびパイプアウトしたいと考えています.Windowsバイナリはlame
Windowsのパス名のみをサポートし、cygwinの.
編集#1
IO.popen
Windows でプロセスをブロックすることに関する既知の問題があり、これが当てはまる可能性があるいくつかの場所を読みました (URL を保存しなかったので、ブラウザーの履歴で検索してみます) 。
RubyOpen3.popen3
やを含む他のライブラリをいじってみOpen4
ましたが、上記のコード構造と非常によく似たコード構造に従っているため、lame
プロセスは依然としてハングし、応答しません。
編集#2
Windowsの制限と、ファイルから標準入力へのストリーミングデータの使用をどのように妨げるかについて説明しているこの記事を見つけました。cmd.exe
これをテストするために、コードを次のようにリファクタリングしましたが、lame
結局のところ、stdin 書き込みでフリーズします。その行を削除(コメントアウト)すると、lame
プロセスが実行されます(「サポートされていないオーディオ形式」の警告が表示されます)。おそらく、この記事で述べたことで、ここで私の問題を説明できるかもしれません。
編集#3
(最初の回答で)パイプの実装は信頼できないと述べたこのスタックオーバーフローを見つけました。cygwin
これはおそらく、実際には Windows に関連するものではなく (少なくとも直接的には)、cygwin とそのエミュレーションに関連している可能性があります。代わりに、 icyの回答に基づいて、次のコードを使用することを選択しました。
c# - C# で libFLAC を使用して WAV を FLAC に変換する
libFLAC エンコーディングの例を C# に移植しようとしたところ、次のコードが思いつきました。
ファイルは、test.pcm
WAV または RIFF ヘッダーのない生の PCM データであり、指定された形式 (2 チャネル、16 bps、および 44.1 kHz) です。
コードは動作し、FLAC は正常に再生されますが、作成されたファイルは元の wav とほぼ同じ大きさ (WAV: 47MB --> FLAC: 45MB) であり、最後に 200ms のノイズがあります。同じ設定で FLAC フロントエンド GUI を介して送信すると、35MB のファイルが得られるので、WAV は問題ないはずです。
また、有効にするFLAC__stream_encoder_set_verify
と、プログラムはすぐに失敗しFLAC__stream_encoder_process_interleaved
ます
FLAC__StreamEncoderState = 4
(VERIFY_MISMATCH_IN_AUDIO_DATA -ベリファイ デコーダーは、元のオーディオ信号とデコードされたオーディオ信号の間の不一致を検出しました。 ) およびFLAC__StreamDecoderState = 3
(READ_FRAME -デコーダーはフレームを読み取る準備ができているか、読み取り中です。 )
意味がないのはどれですか?
何かを見逃したり、変換を間違えたりしましたか?
java - Java オーディオ変換に失敗しました。サポートされていない変換: MPEG2L3 22050.0 Hz からの FLAC
AudioInputStream があり、FLAC AudioInputStream が必要です。
jflac ライブラリの FlacEncoding.FLAC を使用しています。
mp3 を処理するために mp3plugin.jar をクラスパスに追加しました。
しかし、それはエラーを出します:
更新:
私が電話するとき
エンコーディングが 1 つだけの配列を取得します。
ios - MonoTouch iOS FLAC ファイル音声認識
MonoTouch で人間のユーザーの音声を認識する iOS 用アプリをプログラミングしています。FLAC
Google Speech API に送信するには、マイクを使用して Voice-File をフォーマットに変換する必要があります。ライブラリ/コードの例はありますか、または使用するアプリを構築することは可能ですSpeech-Recognition
か? または、オーディオ出力 (.caf ファイル) を .flac ファイルに変換することは可能ですか?iOS
MonoTouch
Google Speech API
raspberry-pi - SPI、Raspberry PIによるオーディオ録音
音声で制御できるシステムを作りたいと考えており、音声処理はラズベリーパイで行う予定です。
すでにソフトウェアを稼働させていますが、ハードウェアと統合する必要があります。私のシステムは、アクティブ フィルターを介して ADC に接続されたエレクトレット コンデンサーです。次に、デジタル信号を SPI 経由で pi に送信します。pi 上の私のソフトウェアのため、オーディオを FLAC 形式にする必要があります。
私の質問は、録音中に FLAC に直接エンコードする方法はありますか?
recursion - フォルダー内のすべての flac ファイルを再帰的にテストする
フォルダーとそのサブフォルダー内のすべての flac ファイルに対して flac のテスト機能を実行するコマンドまたはスクリプトが必要です。(例: $ flac -t music_file.flac)
使ってみました
それは機能しますが、flac テスト機能は、各ファイルをテストする前に著作権/保証の出力も書き込むため、「ok」の結果を明確に確認することは困難です。
私も使ってみました
これははるかにうまく機能しますが(保証/著作権ステートメントを最初に1回だけ書き込みます)、サブフォルダーに対して再帰的に作用しません.
これを改善するための助けを求めることはできますか?