問題タブ [vorbis]
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.
directshow - VP8 と vorbis ogg を使用してオーディオとビデオを avi コンテナーに圧縮する
映画を録画するプログラムを開発しています。ビデオは Web カメラから、オーディオはマイクから取得します。ビデオにはWebm VP8 DirectShow フィルターを使用し、オーディオ録音にはXiph Vorbis Ogg フィルターを使用したいと考えています。
私が理解している限り、これらのストリームを多重化する唯一の方法は、それを Webm Muxer コンテナーに入れて、出力として *.webm ファイルを取得することです。でもAVIコンテナも使いたい。
AVI が VBR オーディオで動作しないというのは本当ですか? すべてを AVI コンテナーに入れるには、VP8 と共にどのオーディオ コーデックを使用すればよいですか?
ありがとう!
macos - MAC OSX Intel LLVMアセンブラーのバグ(Vorbis OGGローダーがクラッシュする原因)
MacOSXにVorbisOggファイルをロードする際に不思議なバグがありました。最初のファイルは正しくロードされ、2番目のファイルはファイルが破損していることを示すコードでクラッシュします。同じ正確なファイルを2回ロードしても、同じことが起こります。
Vorbis内での長時間の詳細なデバッグの結果、バグの原因は、システム関数 "pow"(の2倍)が完全に有効な入力に対して(nan)を返すことであり、これは(ov_readの2回目の呼び出しでのみ発生する)ことがわかりました。 )、最初の呼び出しで、「pow」に渡された同じ正確な値が有効な結果を返します。
8時間後、Intelx87のドキュメントをたくさん読んで問題が見つかりました。簡単に言うと、このアセンブリコードを使用する関数「vorbis_ftoi」がvorbisの奥深くにあります。
これは、IntelFPUスタックをプッシュしてポップする必要があります。ただし、LLVMでは次のコードが生成されます。
これはスタックをプッシュしますが、FPUスタックオーバーフローを引き起こすことはありません。そしてそれは明らかにLLVMのバグです
GCCによって生成される適切なコードは次のようになります。
私はこれについていくつかのゴミ(x87命令セットとレジスター)を学ぶ私のブライアンの1日半と数バイトを無駄にしたので、私はそれを共有したいと思います。
オーデイ
c# - DirectShow用のMatroskaMuxerフィルター
グラフAudioCapture->VorbisEncoder-> Matroska Muxerを作成しようとしていますが、grapheditはMatroskaMuxerの前にVorbisDecoderを挿入します。このグラフをVorbisDecoderなしで機能させたい。これどうやってするの?
gstreamer - GStreamer で配列に保持された生の PCM を再生する
ogg/vorbis を使用して C++ で作業しています
vorbis ファイル (.ogg) からデコードされた生の PCM データを含む配列があります。.ogg ファイルは、vorbis_synthesis_pcmout を使用して libvorbis を使用してデコードされています。これにより、多次元配列が各チャネルの生の PCM で埋められます。
Gstreamer は純粋な PCM を読み取ることができると確信しています。プラグインを検索しましたが、役に立ちませんでした。ここで単純なものを見落としているだけだと確信しています。
java - ファイルの解凍サイズを見つけるVorbis
私は JNI と Android NDK バインディングを使用して、Vorbis の Tremor バージョンをラップしています。これまでのところ、ファイルからスピーカーへのサウンドのストリーミングに成功しています。
ただし、小さなサウンドをバイト配列に「キャッシュ」できるようにしたいので、これらのサウンドを頻繁に使用する場合に冗長な解凍はありません。
私の問題は、vorbis ファイル内のすべての PCM データを保持するために必要な配列の大きさがわからないことです。
これらの次の方法を試しましたが、100% うまくいくものはありません。
上記は一部のファイルで完全に機能し、必要なサイズを正確に釘付けにします。ただし、他の人にとってはそうではありません。必要なサイズを大幅に (通常は約 1 ~ 2kb) 過小評価するため、明らかに範囲外の例外が発生します。
以下は推奨される解決策ですが、まったく同じ問題があります。上記と同じ結果が得られます。
Ogg Vorbis ファイルを保持するために必要な実際のバイト サイズを調べるには、どの方法を使用すればよいですか?
編集;
ファイルの全長にわたって ov_reads を実行し、それらの読み取りの合計を解凍サイズとして取得できることはわかっています。ただし、私は Android で作業していて、そもそも CPU パワーが限られているため、2 重に解凍しないことを好みます。これはかなり醜い解決策です。これは回答に対する回答ではありません。できることはわかっていますが、やりたくないのです。
android - Is There a Way to Playback Raw Audio/Video Streams in Android API's?
I have a Vorbis stream that I can decode to PCM if necessary, and I have a raw h264 stream all three of which are supported by Android when in a container. Wondering if there is any way to manually feed video and audio samples into the android MediaPlayer without any container. I would imagine I would have to override methods within the MediaPlayer. Does anyone have experience with this or have an easier way to do this? I can't imagine its impossible...
audio - Xcode プロジェクトで ogg を再生する
ogg ファイルを再生するために ogg および vorbis フレームワークが必要な Xcode でアプリケーションを開発しています。これに関するいくつかの情報をグーグルで検索しましたが、どの時点にも到達しませんでした。このフレームワークを機能させる方法がわかりません。ライブラリをダウンロードしてプロジェクトに追加しましたが、ファイルが既に存在する場合でもコンパイルできません。ファイルが見つからないというエラーが表示されます。
誰かがこれを達成する方法についての良いマニュアルを教えてもらえますか?
どんな助けでも感謝します。
c# - Ogg Vorbis ファイルの分割/チャンキング
チャンクをトランスコードできるように、Ogg Vorbis ファイルをチャンクする簡単な方法はありますか? ドキュメンテーションは非常にまばらであり、libogg の継ぎ目は私にとってやり過ぎです。C# プロジェクトに組み込むのは面倒だからです。16進数でいくつかのセグメント区切り文字を探して、そのように分割する簡単な方法はありますか?
video - avconv mp4 から webm libvorbis へのバッファ オーバーフロー
多数の mp4 ファイルを webm に変換しようとしています。そこで、次のコマンドを実行します。同様のコマンドをffmpegで試しました。
結果:
素敵なエラーに注意してください。libvorbis でのバッファ オーバーフロー。
何か援助はありますか?代替変換コマンド?
アップデート
最初のパスは次のようになります。
ありがとう!
ogg - OggなしでVorbisを使用していますか?
なぜVorbisにコンテナが必要なのか疑問に思います。VorbisをOggコンテナまたはMatroskaコンテナに貼り付けることができることは知っていますが、ビデオやその他のマルチメディアとバンドルしない場合、Vorbisデータを独自のファイルにスタンドアロンにできないのはなぜですか?
誰かがこれをした経験がありますか?SOを検索する前にグーグルで検索したところ、oggvorbisメーリングリストで詳細が記載されていない言及が1つだけ見つかりました。