問題タブ [libav]
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.
linux - VLC libx264 ビルド エラー - 「'x264_encoder_open_128' への未定義の参照」
主な問題
このエラーを繰り返すための手順。
- 最新の git (git://git.videolan.org/x264.git) をダウンロードします。
- 実行
./configure
- 任意のオプションを使用できます。エラーはすべてに存在します。 - 実行
sudo make
- すべてのコードをコンパイルしますが、コードをリンクするときにエラーが発生します/usr/local/lib/libavcodec.a(libx264.o): 関数 'X264_init' 内:
/.../libx264.c:418: 'x264_encoder_open_128' への未定義の参照
追加情報
このエラーは、avconvのビルド時にも表示されます。リンク時にも同じエラーで失敗します。したがって、そのディレクトリまたはソースに問題はないと想定できます。
c++ - 非圧縮オーディオで録音すると、ビデオが高速化されます
私は、さまざまなフォーマットに対してかなり長い間、(マルチプレクサの例に基づいて) レコーダーを十分に使用してきました。ここで、MJPEG ビデオに対応するために非圧縮オーディオを使用する必要があり、記録されたファイルでビデオの速度が大幅に (10 倍程度) 向上することに気付きました。オーディオは問題ありません。圧縮されたオーディオ形式 (mp3 など) を使用すれば、ビデオはいつものように問題ありません。非圧縮オーディオ (CODEC_ID_PCM_S16LE) を使用すると、ビデオの速度が上がる理由を知っている人はいますか?
ffmpeg - ffmpeg または libav を使用してオーディオ録音 webapp を作成しますか?
ffmpeg または libav を使用して音声またはビデオを記録できる Web アプリケーションを作成することは可能ですか?
それとも、これらはオーディオ/ビデオのエンコード、デコード、記録用のデスクトップ アプリケーションを作成するためだけのものですか?
ffmpeg - avformat_write_header が無効なヘッダーを生成する (MPG が壊れる)
実行時に 3D エンジンからの入力画像からビデオ ファイルをレンダリングしています (実際の画像ファイルは渡さず、RGB メモリのみを渡します)。これは、ビデオ コーデックとして CODEC_ID_H264 を使用して MP4 を出力する場合に完全に機能します。
しかし、CODEC_ID_MPEG2VIDEO を使用して MPG ファイルを作成したい場合、結果のファイルは単に壊れています。ビデオを正しく再生できるプレーヤーはなく、その MPG を別の MPG ファイルと連結し、結果の MP4 を別のステップで変換したい場合、結果の .mp4 ファイルには両方のビデオが含まれますが、元の MPG ビデオからの多くのフレーム (およびビデオ! サウンドは問題なく動作します) は単純にスキップされます。
最初は MPG -> MP4 変換が問題だと思っていましたが、ビデオ レンダリング エンジンからの最初の MPG が既に壊れていることに気付きました。ただし、壊れているのがシステム ヘッダーなのかシーケンス ヘッダーなのかはわかりません。または、それがまったく異なるものである可能性がある場合。
ご覧になりたい場合は、次のファイルをご覧ください: http://www.file-upload.net/download-7093306/broken.mpg.html
ここでも、ビデオ レンダリング エンジンから MP4 を直接作成する場合、まったく同じ多重化コードが問題なく機能するため、入力データ、swscale() などは正しいと確信しています。唯一の違いは、CODEC_ID_H264 が使用され、いくつかの追加変数 (qmin、qmax など) が設定されていることです。これらはすべて H264 に固有であるため、影響はありません。
また、avformat_write_header も av_write_trailer もエラーを報告しません。
追加情報として、VLC プレーヤーで MPG のコーデック データを表示する場合、FPS、解像度、およびフォーマットを表示できません (640x360、30 fps および 4:2:0 YUV を表示する必要があります)。
MinGW を使用してソースからコンパイルした、かなり新しい (おそらく 2 ~ 3 か月前の) FFmpeg バージョンを使用しています。
これを解決する方法についてのアイデアは大歓迎です。現在、私はそれらから外れています:)
c - libav、ffmpeg などの最新のチュートリアルはどこにありますか?
ビデオを開き、各フレームを ppm として保存し、モーション ベクトルをダンプする C で簡単なプログラムを作成したいと考えています。私が見つけることができるすべてのチュートリアルは、ほぼ 10 年前のものであり、非推奨または存在しない関数を呼び出します。
この種のことを行うための最新のアプローチをカバーする優れたオンライン リソース、Web サイト、ビデオ、または教科書はありますか?
ffmpeg - AVFrameから長方形の領域をコピーします-ffmpeg
AVFrameの長方形の領域を引き出そうとしていますが、その機能を開始しました。PIX_FMT_RGB24形式のAVFrameの使用にのみ興味があります。私もここで車輪の再発明をしているかもしれませんので、これを行う機能がすでにある場合は、ジャンプしてください。これまでのところ、私の関数は次のようになっています。
この関数は、(0,0)から開始すると機能するように見えますが(私は思う)、画像内の別の場所に移動すると、本来あるべき色と似た色が出力されますが、正しくありません。私はここにとても近いと思います、誰かがガイダンスを提供できますか?
rgb - libav を使用して rgb を yuv420p にエンコードします
libav を使用して、RGB 画像データ (.png 画像から派生) のベクトルを YUV420p 形式に変換しようとしています。
libav サンプル コードでは、以下を使用してダミー イメージを作成します。
ここでいくつかのことについて明確ではありません:
まず、入力ベクトルの RGB データを再配置して、YUV420p としてのエンコードに適したものにする必要がありますか?
次に、すべてのピクセルに Y 値があり、Cb 値と Cr 値が 4 つの (2x2) ピクセルに使用されることを理解しています。私が理解していないのは、RGB データが Cb 値と Cr 値に「縮小」される方法です。これを行う方法の例はどこにありますか?
android-ndk - サンプルレートをAV_SAMPLE_FMT_FLTPからAV_SAMPLE_FMT_S16に変換する方法は?
私はavcodec_decode_audio3でffmpegを使ってaacをpcmにデコードしています。ただし、AV_SAMPLE_FMT_FLTPサンプル形式(PCM 32ビット浮動小数点平面)にデコードされるため、AV_SAMPLE_FMT_S16(PCM 16ビット符号付き-S16LE)が必要です。
私はffmpegが-sample_fmtでこれを簡単に行うことができることを知っています。コードでも同じことをしたいのですが、それでも理解できませんでした。
audio_resampleが機能しませんでした:エラーメッセージで失敗します:....変換に失敗しました。
logging - libav はファイルにログを記録します
libav ログ メッセージをファイルにリダイレクトしたいと考えています。FFmpeg には、ログ メッセージをダンプするファイル パスを指定するための環境変数 "FFREPORT" があります。LIBAV にログ ファイルのパスを指定する変数はありますか?
c++ - AVFrame または IplImage にキリル文字を追加する方法
ラテン語のテキストは cvPutText() を使って簡単に追加できますが、キリル文字のテキストを IpImage (または AVFrame、どちらでもかまいません) に追加する必要があります。手伝っていただけませんか?ありがとうございました!