1

ビデオファイルでtcprobe-iを実行すると、次の情報が返されます。

[tcprobe] RIFF data, AVI video
[avilib] V: 30.000 fps, codec=MJPG, frames=1599, width=640, height=480
[avilib] A: 8000 Hz, format=0x01, bits=8, channels=1, bitrate=64 kbps,
[avilib]    54 chunks, 427248 bytes, CBR
[tcprobe] summary for PICT1120.AVI, (*) = not default, 0 = not detected
import frame size: -g 640x480 [720x576] (*)
       frame rate: -f 30.000 [25.000] frc=0 (*)
      audio track: -a 0 [0] -e 8000,8,1 [48000,16,2] -n 0x1 [0x2000] (*)
                   bitrate=64 kbps
           length: 1599 frames, frame_time=33 msec, duration=0:00:53.299

正規表現を使用してフレームレートを抽出したいのですが(2行目)、これを行う方法について誰かにアドバイスしてください(フレームの数だけで、周囲のテキストはありません)。

PS。このスクリプトをさまざまなビデオファイルで使用するため、fpsは異なることに注意してください。

ありがとう

4

2 に答える 2

2

次のような式を使用できます。

([\d.]+) fps

FPSが最初のキャプチャグループに含まれています。

Perlの例:

perl -nE '/([\d.]+) fps/ && say $1'
于 2012-06-18T13:48:10.873 に答える
0

使用できるフレームのみ:

frames=(\d+)

fpsが必要な場合、これは機能します。

(\d+.\d+)\sfps
于 2012-06-18T13:56:28.217 に答える