1

私は、非常に多くのビデオ トランスコーディングと非常に少量のビデオ ファイルの結合を行うバックエンド エンコーダ サービスに取り組んでいます。

トランスコーディングは、Windows 用の On2 Flix エンジンを使用して行われます。これは非常にうまく機能しますが、残念ながら、ファイルを結合することはできません (少なくとも私が確認できる限り、ヘルプもサポートもあまり有益ではありません)。今のところこれで満足しています。

参加は、現時点では、率直で恐ろしいLEADTOOLS Multimediaソフトウェアを使用して行われています。これはシングル スレッドで、サーバー アプリケーションには望ましくないメッセージ ポンプを使用するため、STA が必要です。さらに、インストールにより、動作中のすべてのコーデックが独自の eval コーデックで上書きされます。これを回避する方法はありません。

理想的には、3GP および/または MP4 ファイルに参加できる LEADTOOLs Multimedia を置き換える API を探しています。コストはさほど問題ではありません。誰かお勧めはありますか?

ここで独自のツールを作成することが理想的な解決策であることはわかっていますが、WMF でこれを行うつもりであり、まだ Win2008 に完全に移行していないため、数か月間の一時的な解決策が必要です。

アップデート:

エンコーディングは決して私の専門分野ではないことを指摘しておく必要があります。また、業界では比較的新しい (7 年) アンマネージ コードを扱ったことはありません。また、私の本業は、私ともう 1 人だけで構成されるサービス層/エンコーダー チームの開発リーダーであるため、あまり時間がありません。 .

基本的な複雑さの多くが既に処理されている Flix エンジンのようなものは、入力/出力ファイルの種類などに応じて異なる方法で呼び出さなければならない低レベル API よりも、私が探しているものです。

推奨事項がある場合は、それらの使用方法などについていくつかのドキュメントを教えていただければ非常に役立ちます.

4

2 に答える 2

2

FFMPEG の libavcodec と libavformat はあなたの味方です。それらは非常に用途が広く、基本的に他の何よりもサポートしており、事実上、マルチメディアのサポートと操作のクロスプラットフォーム標準です。

また、MP4box のライブラリである GPAC を試すこともできます。これは、FFMPEG の API よりもはるかに強力な MP4 固有のライブラリですが、(名前からして) MP4 および 3GP ファイルの処理にのみ役立ちます。

また、トランスコーディングに Flix を使用している場合、より最新のものへのアップグレードを検討したことはありますか? FLV1 と VP6 は、Flash ビデオの形式としてはあまり良くありません。Flash が H.264 をサポートするようになった今、そのような時代遅れの (そして VP6 の場合は高価な) フォーマットを使い続ける理由はまったくありません。

于 2008-10-16T10:00:41.933 に答える
0

x264 の場合: 単純に実行可能ファイル自体を呼び出すか、ライブラリ自体を含めてその API (encoder_open など) を介して呼び出すことができます。.NET では、おそらくより困難です。C プログラムであるため、その API は C を中心に構築されていますが、Windows と Linux で API を呼び出す C と C++ プログラムの両方が構築されていることは知っています。

単純なプログラムでは、どちらが優れているということはありません。どちらにしても、x264 は単一タイプの入力 (生の YV12 ビデオ) のみを受け取り、単一タイプの出力 (H.264 エレメンタリー ストリーム、またはMP4 と Matroska を多重化することもできます)。

オールインワン ソリューションが必要な場合は、ffmpeg が自動的にデコードを処理し、エンコーディングを libx264 に渡すことができるため、その役割を果たします。より具体的な支援が必要な場合は、Freenode IRC の #x264 に立ち寄ってください。

于 2008-10-17T04:37:04.303 に答える