Russian Qt Forum
Ноябрь 23, 2024, 02:30 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Видео из ресурса -> QTemporyFile -> Phonon. Не большой косяк  (Прочитано 1739 раз)
sandurlay
Гость
« : Май 02, 2011, 12:36 »

А косяк в том, что иногда видео играет как надо, а иногда не играет. А иногда играет вертикальная полоска по центру и сама форма соответствующих размеров. Если играть напрямую из файла, то все стабильно работает. Я задержку делал (ну типа не успевает записаться или еще что-то) - не помогает.
Код:
SplashScreen::SplashScreen() : QDialog() {
    this->setWindowFlags(Qt::SplashScreen);
    this->setCursor(Qt::BlankCursor);

    m_pmedia = new Phonon::MediaObject(this);
    m_pao    = new Phonon::AudioOutput(Phonon::VideoCategory, this);

    Phonon::VideoWidget* pvw = new Phonon::VideoWidget;
    Phonon::createPath(m_pmedia, m_pao);
    Phonon::createPath(m_pmedia, pvw);

    QVBoxLayout* pvbxLayout = new QVBoxLayout;
    pvbxLayout->addWidget(pvw);
    setLayout(pvbxLayout);

    QTemporaryFile f;
    f.open();
    QResource res(":/nuclearfailure.avi");
    f.write((char*)res.data(), res.size());
    f.flush();
    f.setAutoRemove(true);

    QFile F(f.fileName());


    m_pmedia->setCurrentSource(Phonon::MediaSource(F.fileName()));
    m_pmedia->play();

    F.close();
    f.close();

    connect (m_pmedia, SIGNAL(finished()), SLOT(close()));
}
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.087 секунд. Запросов: 20.