4

私はこの問題を理解しようとするか、無駄に検索するために数週間の自由時間を費やしました.PythonまたはDjangoの問題であるかどうかはわかりません.誰かが私を正しい方向に導くことができるかどうか疑問に思っていました.

動画ファイルのアップロードとクエリについては理解していますが、Django で FFMPEG を使用する (具体的には動画を FLV に変換する) 経験はありません。Djangoビューでコマンドを呼び出してビデオを変換する方法と、送信ボタンがクリックされてからビデオがデータベースに保存されるまでの間にそのアクションを実行する方法を教えてください。

助けてくれてありがとう!私はこれに関する記事や文献を見つけることができず、それが私を殺しました!

4

1 に答える 1

11

ファイルがアップロードされたら、subprocess python モジュールを使用して ffmpeg を呼び出すことができます。

import subprocess
subprocess.call('ffmpeg -i video.mp4 video.flv') # check the ffmpeg command line :)

ffmpeg はかなり CPU を集中的に使用します。実際の Web アプリでは、この点に注意する必要があります。サブプロセス呼び出しは、変換が完了するまでアプリをブロックします (場合によっては長くなる可能性があります)。celeryは、非ブロッキング非同期タスクとして実行するためのソリューションになる可能性があります。

動画管理用のアプリはいくつかあります。私はそれらのいずれかを使用したことはありませんが、django-multimediaを確認する必要があると思います。それはあなたが探しているもののようです。

于 2012-11-21T05:44:56.167 に答える