私は Qt でビデオ プレーヤーを作成しようとしていますが、そのために MediaPlayer QML タイプを使用しています。私の問題は、ビデオを提供するバックエンド サーバーがハンドシェイク用に追加のカスタム http ヘッダーを必要とすることです。私は非常に単純な例でテストしています:
import QtQuick 2.0
import QtMultimedia 5.0
Item {
MediaPlayer {
id: mediaplayer
source: "http://myserver.com/myvideo.mp4"
}
VideoOutput {
anchors.fill: parent
source: mediaplayer
}
MouseArea {
id: playArea
anchors.fill: parent
onPressed: mediaplayer.play();
}
}
QML アプリでリクエストを管理するために、リクエストを処理するカスタム NetworkAccessManagerFactory を作成するカスタム NetworkAccessManagerFactory を使用し、対応する HTTP ヘッダーを追加しています。
MyCustomNetworkAccessManagerFactory* namf= new MyCustomNetworkAccessManagerFactory();
engine.setNetworkAccessManagerFactory(namf);
これはバックエンドからの画像の読み込みには問題なく機能しますが、オーディオとビデオの両方がカスタム NetworkAccessManager をバイパスし、別のものを使用しているように見えるので、私の質問:
- MediaPlayer QML タイプから送信されたリクエストにカスタム HTTP ヘッダーを追加する方法はありますか?