No.1ベストアンサー
- 回答日時:
テレビや映画等は1枚1枚の微妙に異なる画像を高速で表示することで動きを表示していることはご存知だと思います。
(いわゆるパラパラマンガのイメージですね)MPEGでも基本的には同じなのですが、いくつかの特長があります。
・キーフレームには1枚の静止画の全画面イメージが保存されている
・キーフレーム以外の各フレームには差分しか保存されていない
・差分以外の部分(キーフレームから変化無し)はムービー再生時には全く処理されない。
つまり、MPEGではキーフレーム以外では差分(画面上でキーフレームから変更のあった部分)のみの画像情報しか保存しないことで高い圧縮率を実現しています。
画像そのものを圧縮したりもしていますが、まぁ上の考え方でも問題無いです。
またテレビや映画、アニメなどはMPEG風に言えば全てがキーフレームで構成されているということになります。
これらを踏まえた上で、MPEGの問題点をあげてみると…
1.キーフレームの出現頻度を上げるとファイルサイズが極端に大きくなってしまうことがある
2.動きの速い場面(特に画面全体がスクロールするような)ではキーフレーム間の各フレームの差分情報が大きくなってしまう
3.画面全体に及ぶような差分による書き換えは処理が重く再生時のフレームレートが上がらずカクカクした動きになってしまう
これに関してはPCの高速化によりほとんど関係無くなってしまってますね。(^^;
前振りが長くなりました。m(_._)m
結局、キーフレームがあると3の時に非常に重い処理である「画面全体に及ぶような一部書き換え処理」ではなく、キーフレームが持つ画面情報を無条件で一括転送することで表示することが出来るため、滑らかに画面表示することが出来るようになります。
なぜ画像の一部書き換え処理が重いかについては詳細は省きますが、簡単に言えばある画像(キーフレーム)と別の画像(差分)を合成することは大変な計算量が必要と思っていただければいいです。
このため全画面に及ぶような差分があるとそのために処理する計算量が膨大になるために1画面を表示するために時間がかかる、結果、フレームレートが落ち、カクカクした動きになるというわけです。
また画面の動きが速いと差分情報も非常に大きくなってしまいますが、キーフレームをある程度の頻度でいれてやると、差分自体の情報量は相対的に減ります。
ですので、動きの速い場面が多いムービーの場合はキーフレームを少し多めに入れてやることで、逆にファイルサイズが小さくなることもあります。
また固定された背景の画面上を小さな物体が移動するだけといったアニメーションであれば、キーフレームは最初の1枚だけでも大丈夫です。
上の例はちょっと極端ですが、適切なキーフレームの量(何秒に1回とか)というのはそのムービーの内容次第なのでなんとも言えません。
こんなところでおわかりいただけたでしょうか?
大変わかりやすい説明、ありがとうございました。mpeg4で試行錯誤しているのですが、どうやら自動的にキーフレームを入れてくれる機能があるようで、あまり悩まなくて済みそうです。手持ちのムービーの場合、10~2秒おきくらいまでは大きさが変わらず、1秒以下にすると途端に大きくなるのでこれくらいが適正値ということなんでしょうね。今度はできるだけノイズを減らして効率の良い圧縮ができるように研究してみます。
・・・mpeg4のデータレート指定がかなりいい加減なので困ってはいますが。(笑)
では、ありがとうございました。
No.2
- 回答日時:
普通は1~2秒、長くても3秒くらでしょうか。
何パターンか実際に試してみて、画質、動きなどを実際に体験してみるのが一番です。長い間キーフレームがないと、「少し戻って見直す」ような時に、キーフレームが遠すぎて、再生開始までに時間がかかります。
プレーヤでシークしたときのあの変な動きはキーフレームを捜していたのですね。確かに、減らしすぎると再生が追いつかずに崩れてしまうことがありました。今は2秒くらいで落ち着いています。あまり悩まずに、品質を少しでも上げられるように研究してみます。ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- 画像編集・動画編集・音楽編集 動画ファイルの圧縮方法についてはIフレームだのPフレームだの使って圧縮するらしいのですが、音声データ 1 2022/08/26 18:28
- 画像編集・動画編集・音楽編集 動画をディスク作成すると画像が乱れる。 4 2022/06/24 07:49
- マウス・キーボード キーボードのCaps Lockキーと変換キーの挙動がおかしくなりました。 4 2022/09/04 22:44
- ノートパソコン ノートパソコンの起動が極端に遅いのはどうしたら良いでしょうか 19 2023/04/08 16:54
- 工学 冷凍機 凝縮器 凝縮温度について 2 2022/09/29 23:06
- 物理学 波動方程式のようなもの 1 2023/05/13 07:23
- その他(ファッション) スポーツメガネでフレームの色は白などはあり? 2 2022/11/30 07:26
- Photoshop(フォトショップ) 【Photoshop】画像拡大時に急激に画面外まで拡大してしまうのを制御したい 1 2023/08/25 03:04
- スポーツサイクル ポスターフレームについて 1 2022/12/24 16:50
- マウス・キーボード パソコンのspaceキーの下にあるマウスコントロールできるキーが昔から動かないので、ブルートゥースの 5 2022/07/18 02:08
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
【C++】IDirect3DSurfaceのディ...
-
2Dゲーム作成する際、アニメー...
-
エクセルVBA フレーム内のイベ...
-
Directshowを使って動画を画像...
-
フレーム内に移動したい
-
B2ポスターフレームの自作
-
flashでモーフィング
-
車の運転時のメガネ 縁なし(...
-
可愛い無料写メフレームサイト
-
タイムラインを5倍の長さにしたい
-
word 目次フレームの作成
-
Excel VBA SetFocus
-
【C#】wavファイルの複数同時再生
-
XMLを利用したFLASH画像ギャラ...
-
外部ファイルからのデータの読...
-
Flash・携帯の待受時計Flashを...
-
SharedObjectが効かない
-
サウンドの同期(スクリプトで...
-
AS3.0で子MCから他の子MCの...
-
WAVEファイルが音飛びする?
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
フレーム内に移動したい
-
Access2010でサブフォームのフ...
-
#1009: null のオブジェクト参...
-
車の運転時のメガネ 縁なし(...
-
VBで動的に作成したパネルの上...
-
キーフレームとはなんですか?
-
【C++】IDirect3DSurfaceのディ...
-
VBAでIE操作時のLocationURLとURL
-
フレーム内のオプションボタン...
-
iframeはSEO的に不利になる?
-
2倍速を等速動画に(車載動画)
-
トグルボタンの排他制御でご教...
-
チェックボックスを横並びに表...
-
フレーム間の処理2
-
MacBook Airで作成するトレス動...
-
ソーラーパネルのアルミフレー...
-
ドロップフレームの計算をエク...
-
Directshowを使って動画を画像...
-
フレーム内でのリダイレクトに...
-
英語で「フレームの右上」
おすすめ情報