Воспроизведение видео с помощью QMediaplayer из буфера и добавления буфера во время воспроизведения видео
Я попытался воспроизвести видео из буфера и добавить буфер во время воспроизведения, чтобы два или более видео воспроизводились друг за другом без каких-либо задержек, поскольку это одно видео, я пытался использовать QMediaPlaylist и добавлять список во время выполнения, это работало, но Есть заметная задержка между видео, я использую этот код в кнопке воспроизведения
void MainWindow::on_pushButton_2_clicked()
{
player = new QMediaPlayer(this);
QFile file("D:/video/first.mp4");
file.open(QIODevice::ReadOnly);
arr = new QByteArray();
arr->append(file.readAll());
file.close();
buffer = new QBuffer(arr);
buffer->open(QIODevice::ReadWrite);
player->setVideoOutput(ui->widget);
player->setMedia(QMediaContent(), buffer);
player->play();
}
и кнопка для добавления второго видео во время выполнения, которое здесь я делаю много разных попыток
void MainWindow::on_pushButton_3_clicked()
{
QFile file("D:/video/second.mp4");
file.open(QIODevice::ReadOnly);
QByteArray temp = file.readAll();
//arr->append(temp, temp.size()); //first to append the QByteArray did not work
buffer->write(temp.data(), temp.size()); //second write to the buffer but not work
file.close();
qDebug() << "Appeneded";
}
первый, который добавляет массив, но он не работает, так же, как когда я установил для буфера значение ReadWrite flage и тот же результат, в результате проигрывается только первое видео, и оно останавливается, так что вы можете помочь мне сделать эта работа? то, что я сделал неправильно в своем коде, позволило второму видео не работать гладко после первого, и это результат, который я хочу.