• 4188阅读
  • 0回复

用qt phonon视频放大问题 [复制链接]

上一主题 下一主题
离线lzpmail
 
只看楼主 倒序阅读 楼主  发表于: 2012-06-04
各位大虾好, 我用qt phonon写了个测试视频播放的例子, 视频文件格式是MPG格式的, 分辨率是512*384的, 我的虚拟机是1024*768的, 在虚拟机上跑没问题, 视频可在全屏, 但我放到嵌入板子上就不会放大了, 还是原来那么大(即512*384),不是1024*768。
下面是全部代码:
  1. #include <QApplication>
  2. #include <QWidget>
  3. #include <phonon>
  4. /*
  5. #include <phonon/VideoWidget>
  6. #include <phonon/MediaObject>
  7. #include <phonon/VideoPlayer>
  8. #include <phonon/BackendCapabilities>
  9. #include <phonon/AudioOutput>
  10. #include <phonon/VolumeSlider>
  11. #include <phonon/SeekSlider>
  12. */
  13. #include <QUrl>
  14. #include <QObject>
  15. #include <QVBoxLayout>
  16. #include <QHBoxLayout>
  17. #include <QLabel>
  18. int main(int argc, char *argv[])
  19. {
  20.       QApplication app(argc, argv);
  21.       app.setApplicationName("video player");
  22. /*
  23.       QWidget *mainWidget = new QWidget;
  24.       mainWidget->setWindowTitle("Media Player");
  25.       mainWidget->resize(1024, 768);
  26.       mainWidget->setAutoFillBackground(true);
  27.       mainWidget->setWindowFlags(Qt::FramelessWindowHint | Qt::Dialog);
  28. */
  29.       Phonon::MediaObject *mediaObject= new Phonon::MediaObject;
  30.       mediaObject->setCurrentSource(Phonon::MediaSource("/home/ljTest/video2/aa.MPG"));
  31.       Phonon::VideoWidget *videoWidget = new Phonon::VideoWidget;
  32.       Phonon::createPath(mediaObject, videoWidget);
  33.       videoWidget->setAspectRatio(Phonon::VideoWidget::AspectRatioAuto);
  34. //      videoWidget->setScaleMode(Phonon::VideoWidget::ScaleAndCrop);
  35.       videoWidget->setFullScreen(true);
  36.       videoWidget->setGeometry(0, 0, 320, 240);
  37.       QSize videoSize = videoWidget->sizeHint();
  38.       printf("%d   %d\n", videoSize.width(), videoSize.height());
  39.       Phonon::AudioOutput *audioOutput = new Phonon::AudioOutput(Phonon::VideoCategory);
  40.       Phonon::createPath(mediaObject, audioOutput);
  41. /*
  42.       QLabel *label = new QLabel("Volume: ");
  43.       Phonon::VolumeSlider *volumeSlider = new Phonon::VolumeSlider;
  44.       volumeSlider->setAudioOutput(audioOutput);
  45.       volumeSlider->setSizePolicy(QSizePolicy::Maximum, QSizePolicy::Maximum);
  46.       Phonon::SeekSlider *seekSlider = new Phonon::SeekSlider;
  47.       seekSlider->setMediaObject(mediaObject);
  48. */
  49. //     QHBoxLayout *hLayout = new QHBoxLayout;
  50. //     hLayout->addWidget(label);
  51. //     hLayout->addWidget(volumeSlider);
  52. //     hLayout->addStretch();
  53. //    QVBoxLayout *vLayout = new QVBoxLayout;
  54. //    vLayout->addWidget(videoWidget);
  55. //     vLayout->addWidget(seekSlider);
  56. //     vLayout->addLayout(hLayout);
  57. //     mainWidget->setLayout(vLayout);
  58. //    mainWidget->show();
  59.      mediaObject->play();
  60.      return app.exec();
  61. }
  62. 请各位帮帮忙


快速回复
限100 字节
 
上一个 下一个