0

安全なビデオ プレーヤーを作成するプロジェクトに取り組んでいます。QMediaPlayer class を使用しているときに、その場でビデオの暗号化を実現したいと考えています。誰かがこれを達成するのを手伝ってくれますか? 復号化されたデータを QIOdevice に書き込み、QIODevice から読み取るのは正しい方法ですか? もしそうなら、実装例を入手できますか?

前もって感謝します

4

1 に答える 1

1

はい、これは可能な方法の 1 つです。例は次のとおりです。

  • QIODevice をサブクラス化し、readData() を再実装する
  • 再実装では、暗号化されたデータを読み取り、復号化して返します
  • QIODevice ベースのオブジェクトを QMediaPlayer に渡します。

プレイヤーがシークできるようにするには、QIODevice::IsSequential() (false を返す) を実装し、seek/pos を実装する必要があります。暗号化がバイト ツー バイトである場合 (つまり、コンテンツをパッキング/パディングしない場合)、これはかなり単純な実装になるはずです。

別のアプローチは、QAudioDecoder + QAudioOutput を使用することです。これにより、生の PCM を最初に暗号化してからエンコードするなどのトリックを実行できます。

于 2016-01-13T03:52:53.137 に答える