🎄teratailクリスマスプレゼントキャンペーン2024🎄』開催中!

\teratail特別グッズやAmazonギフトカード最大2,000円分が当たる!/

詳細はこちら
VLC

VLCは、クロスプラットフォーム対応の高機能メディアプレイヤーです。多くの動画・音声コーデックを内蔵。そのため、各種コーデックをインストールせずに様々なメディアファイルを再生することができます。

ファイル

ファイルとは、文字列に基づいた名前又はパスからアクセスすることができる、任意の情報のブロック又は情報を格納するためのリソースです。

Q&A

解決済

1回答

6260閲覧

VLC media playerで動画ファイルをH.264に変換すると、同条件なのにファイルに差異ができる

TOMO6181

総合スコア40

VLC

VLCは、クロスプラットフォーム対応の高機能メディアプレイヤーです。多くの動画・音声コーデックを内蔵。そのため、各種コーデックをインストールせずに様々なメディアファイルを再生することができます。

ファイル

ファイルとは、文字列に基づいた名前又はパスからアクセスすることができる、任意の情報のブロック又は情報を格納するためのリソースです。

0グッド

0クリップ

投稿2019/08/21 13:24

顔認証のツールで、キャプチャする動画のコーデックがMotion JpegのものからH.264に変更になったため、変更後のツールに対して性能評価を行おうとしています。

変更前のツールの性能評価用の動画ファイルとしてコーデックがMotion JpegのAVIファイルがありますが、ツールの修正に合わせてコーデックをH.264のMP4ファイルに変換して性能評価を行う必要があります。

変換用のツールとして、VLC media playerを使用しています。

ここで問題なのですが、以下の方法でAVIファイルをMP4ファイルに変換すると、同じ動画で条件も変えていないのに、変換を行うごとに、できたMP4ファイルの内容に差異が出てきます。

(1)VLC media playerで「メディア」→「変換/保存」で「メディアを開く」画面を開く。
(2)「メディアを開く」画面でファイルを追加し、変換/保存ボタンをクリック。
(3)変換画面のプロファイルで、「Video-H.264 + MP3(MP4)」を選択。
(4)プロファイルのエディション画面を開いて、ビットレートの設定を行い、保存ボタンをクリック。
(5)変換画面に戻って出力ファイルを設定し、開始ボタンをクリック。

出力されたMP4ファイル同士をWinMergeでマージすると、バイナリなので内容の詳細は分からないものの、差異があることが分かります。

同じ動画、同じ条件でH.264に変換しているのに変換するたびに差異が発生するのは何故でしょうか?
H.264にエンコーディングを行う際に、ファイル内容が変わってしまう等の要因があるのでしょうか?

変換のたびに動画ファイルに差異ができる原因、及び回避方法等、分かる方がおられましたら、宜しくお願い致します。

メディアを開く画面
変換画面
プロファイルのエディション画面

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

y_waiwai

2019/08/21 14:29

どこの場所にどういう差異が発生するんでしょうか
TOMO6181

2019/08/21 14:44

作成した動画をフレーム画像に変換して画像同士を比べてみたところ、肉眼では分からないですが、WinMergeでマージすると、画素値による差異が検出されます。
y_waiwai

2019/08/21 14:46

ファイルの差異ではなく、デコードした画像の差異なんですか? ちとはなしがかわってますが。。
TOMO6181

2019/08/21 14:55

どういう差異が発生するかというご質問でしたので、画素値による差異が検出された、と回答致しました。MP4ファイルはバイナリで、WinMergeでそのまま比較してもどこにどういう差異が発生しているかは分からないので。 H.264に変換後のMP4ファイルが同条件で作成されたもの同士なのに差異が発生するのが問題の本質という点は変わらないです。
guest

回答1

0

ベストアンサー

エンコードのアルゴリズムに乱数が使われているのではないでしょうか。
特に不思議には思いません。

投稿2019/08/22 01:27

ikadzuchi

総合スコア3047

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

TOMO6181

2019/08/22 14:52

御回答ありがとうございます。 確かにエンコードのアルゴリズムに乱数が使われているなら、同じ条件でも違う結果が出力されますね。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.36%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問