5

ffmpegのマニュアルによると、設定-gは「I」フレーム間のスペースを定義する設定であり、-bf「B」フレームを使用する設定です。前者は取得しましたが、後者は取得しませんでした。

目標: GOP 3,12 (M= 3、N=12) のビデオを作成しようとしています。つまり、各「P」フレームを分離する 2 つの「B」フレームと、12 フレームの距離を持つ「I」フレームです。または単に「IBBPBBPPBBPBBI」

以下のコマンドを使用して、N=12 しか得られなかったと思います。

  1. ffmpeg -s cif -r 30 -b 64000 -bt 3200 -g 12 -y -i video.yuv -vcodec mpeg4 video.m4v
  2. MP4Box -hint -mtu 1460 -fps 30 -add video.m4v video.mp4
  3. ffmpeg -y -i video.mp4 video_ref.yuv
  4. ../cmd/psnr 352 288 420 video.yuv video_ref.yuv > psnr_ref.txt
  5. ../cmd/mp4trace -f -s 192.168.0.2 12346 video.mp4 > trace
  6. head -n 20 trace

結果:

[robert@10-2Fontes]$ head -n 20 trace
1   H   12002   9   0.000
2   P   11479   8   0.034
3   P   12021   9   0.066
4   P   11239   8   0.099
5   P   5407    4   0.134
6   P   2735    2   0.166
7   P   1014    1   0.199
8   P   850 1   0.232
9   P   619 1   0.265
10  P   979 1   0.298
11  P   813 1   0.331
12  P   806 1   0.364
13  H   5109    4   0.396

※注、ffmpegで一番重要なのはコマンドですが、-g 12全てのコマンドを書いています。私が使用しているビデオは、cif ページのビデオからの「ハイウェイ」です: http://www2.tkn.tu-berlin.de/research/evalvid/cif.html

結果トレースが「I」ではなく「H」を使用している理由がわかりません。

ffmpegコマンドを入れてみまし-bf 2たがうまくいきませんでした(結果に「B」の表示がなかったからだと思います)

リスト項目

ffmpeg -s cif -r 30 -b 64000 -bt 3200 -g 12 -bf 2 -y -i video.yuv -vcodec mpeg4 video.m4v

結果:

[robert@10-2Fontes]$ head -n 20 trace
1   H   12002   9   0.001
2   P   11479   8   0.034
3   P   12021   9   0.067
4   P   11239   8   0.100
5   P   5407    4   0.132
6   P   2735    2   0.166
7   P   1014    1   0.199
8   P   850 1   0.232
9   P   619 1   0.265
10  P   979 1   0.298
11  P   813 1   0.331
12  P   806 1   0.363
13  H   5109    4   0.400
4

1 に答える 1

6

解決済み:

LordNeckbeardが言ったように、ffmpegではオプションの配置が重要です。

基本的な順序は次のとおりです。

ffmpeg [global options] [input options] -i input [output options] output

以下のコマンドに変更し (-g 30 -bf 2 を入力)、動作します。

ffmpeg -s cif -r 30 -i video.yuv -vcodec mpeg4 -g 30 -bf 2 video.m4v

注:初めて変更した後でも機能しませんでした。プログラムからファイルを上書きするように求められたので、はいと言った。しかし、どうやら sth は削除されていませんでした。現時点では、すべてのファイルを削除して(ゼロから)再度実行しました。

結果は次のとおりです。

[robert@10-2Fontes]$ head -n 40 trace
1   H   12038   9   0.034
2   P   13204   10  0.132
3   B   5367    4   0.132
4   B   5553    4   0.132
5   P   12157   9   0.232
6   B   5069    4   0.232
7   B   5613    4   0.232
8   P   12739   9   0.334
9   B   5935    5   0.334
10  B   3921    3   0.334
11  P   4474    4   0.429
12  B   1247    1   0.429
13  B   784 1   0.429
14  P   1448    1   0.528
15  B   350 1   0.528
16  B   397 1   0.528
17  P   1023    1   0.627
18  B   299 1   0.633
19  B   265 1   0.634
20  P   829 1   0.727
21  B   209 1   0.733
22  B   340 1   0.733
23  P   867 1   0.826
24  B   343 1   0.833
25  B   378 1   0.833
26  P   865 1   0.925
27  B   282 1   0.925
28  B   461 1   0.925
29  H   5083    4   1.034
30  B   818 1   1.034
31  B   838 1   1.034
32  P   1171    1   1.122
33  B   443 1   1.133
34  B   409 1   1.133
35  P   1078    1   1.221
36  B   269 1   1.233
37  B   327 1   1.233
38  P   795 1   1.321
39  B   298 1   1.333
40  B   304 1   1.334
41  P   854 1   1.419
42  B   477 1   1.419
43  B   412 1   1.419
44  P   869 1   1.519
45  B   371 1   1.519
46  B   314 1   1.519
47  P   983 1   1.617
48  B   337 1   1.617
49  B   454 1   1.617
50  P   1118    1   1.717
51  B   286 1   1.717
52  B   275 1   1.717
53  P   1044    1   1.815
54  B   362 1   1.815
55  B   273 1   1.815
56  P   973 1   1.914
57  B   302 1   1.914
58  B   324 1   1.915
59  H   4525    4   2.033
于 2013-04-08T14:40:53.440 に答える