7

簡単に変更できない古いビルドの FFmpeg があります。

FFmpeg を使用して、ビデオとサウンド ファイルの長さを確認します。これまでのところ、それは素晴らしく機能しています。

最近アップロードされたファイルで、FFmpeg は 30 秒のファイルの長さが 5 分 30 秒であると報告しました。

FFmpeg ではなく、ファイルに何か問題があるのでしょうか?

FFmpeg を使用して別のファイルに変換すると、期間が復元されます。

問題が発生した場合、 ffmpeg -i 'path to the file' は以下を生成します:

FFmpeg バージョン Sherpya-r15618、Copyright (c) 2000-2008 Fabrice Bellard, et al.
  libavutil 49.11. 0 / 49.11。0
  libavcodec 52.0.0 / 52.0.0
  libavformat 52.22. 1 / 52.22。1
  libavdevice 52.1.0 / 52.1.0
  libswscale 0.6.1 / 0.6.1
  libpostproc 51.2.0 / 51.2.0
  2008 年 10 月 14 日 23:43:47 にビルド、gcc: 4.2.5 20080919 (プレリリース) [Sherpya]
'H:\path\to\file.mov' から #0, mov,mp4,m4a,3gp,3g2,mj2 を入力:
  時間: 00:05:35.00、開始: 0.000000、ビットレート: 1223 kb/s
    ストリーム #0.0(eng): オーディオ: aac、44100 Hz、ステレオ、s16
    ストリーム #0.1(eng): ビデオ: h264、yuv420p、720x576、25.00 tb(r)
少なくとも 1 つの出力ファイルを指定する必要があります

それは、正規表現で期間を抽出するために使用するまさにそのコマンドです。

私が上で試していることを実行できる素晴らしいアプリケーションを持っている人はいますか?

4

5 に答える 5

3

新しいバージョンのffmpegで確認してください(ビルドを置き換える必要はありません)。同じ期間が得られる場合は、おそらくファイルのせいにすることができます。

于 2009-06-17T16:01:00.533 に答える
2

トランスコードパックの一部である tcprobe を試すことができます。

于 2009-06-17T15:53:10.020 に答える
0

ファイルに既知のチャネルと周波数を定義していることを確認してください。また、-f を使用してフォーマットを定義していることを確認してください。ffmpeg -formats利用可能なものをすべて表示するには、オンにします。

-acチャネルを定義するために使用します。-arオーディオのレートを定義するために使用します。ビットレートまたは周波数をデフォルトに設定している場合、持続時間は実際のものとは異なります。

于 2018-06-07T18:00:56.477 に答える