0

ユーザーがShockwave Flashムービーをサーバーにアップロードできるようにするwinformプログラムがあります。videoDuration を取得するには、「ShockwaveFlashObjects」-activeX のインスタンスを作成し、ムービーをロードしてから、videoDuration を「0.0」から他の値に変化するまで読み取ります。GetVariable("videoDuration") を読み取ることでそれを取得します。

多くの場合は機能しますが、以前にロードされた Flash ムービーの情報がロックされたり、表示されたりすることがあります。

また、ShockWaveFlashObject-activeX の配布にも問題がありました。私は本当にそれをスキップして、フラッシュファイルを読んで映画の再生時間を調べたいと思っています.

アップロードされたすべての映画はビデオであるため、特定の再生時間があります。

この質問は、回答の助けにはなりませんでした。

私はwotsitでswf 形式をチェックアウトしましたが、フレームレートとフレームカウントを読み取って持続時間を計算できるはずですが、flv ファイルについては何も見つかりませんでした。たぶん、誰かがすでにこれを行っていて、仕様を理解するのに多くの時間を節約できる素敵なコードを教えてくれるでしょうか?

4

1 に答える 1

0

可能性の 1 つは、ffmpeg を使用してビデオ/オーディオ ビットレートを読み取ることです。これらの詳細を取得したら、合計ファイル サイズをビデオ/オーディオ ビットレートの合計で割ることができます。これにより、推定秒数(+/-数秒)が得られます。

于 2009-06-18T00:07:20.913 に答える