FFMPEGでRGBチャンネルを結合する


0

ビデオの赤、緑、青のチャンネルを表す3つのグレースケールビデオがあります。extractplanesフィルターを使用してそれらを抽出し、異なるパイプラインを介して送信しました。

今、私は再びそれらを結合したいと思います。しかし、extractplanes完璧に機能しmergeplanesていますが、そうではありません。私の最初の試みはこれでした:

[r][g][b] mergeplanes=0x001020 [output]

これは、RGBチャンネルをYUVとして解釈しますが、これは私が望んでいるものではありません。私の次の試みはこれでした:

[r][g][b] mergeplanes=0x001020:rgb24 [output]

しかし、エラーメッセージによると、Only planar formats with more than one component are supported.(私が試した他のすべてのRGBおよびRGBAピクセルフォーマットと同じです。)

これらのチャネルを元に戻す別の方法はありますか?またはmergeplanes、出力RGB を納得させる方法はありますか?

回答:


0

エラーメッセージに示されているように、mergeplanes出力できるのは平面形式のみです。つまり、すべての第1コンポーネントの値をまとめて、次にすべての第2コンポーネントの値をまとめて、というように。FFMPEGのRGB形式は非平面的です。つまり、コンポーネントごとではなくピクセルごとに値をグループ化します。だからmergeplanes彼らと一緒に働くことはできません。

ただし、FFMPEGはGBRP(Green-Blue-Red Planar)形式をサポートします。そのmergeplanesため、そこにエクスポートし、そこからRGBに変換できます。コンポーネントの順序を変更するだけです。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.