Phonon::MediaController 中的 setCurrentAudioChannel 的作用是什么?

weixin_38058748 2019-09-19 06:44:31
猜想是设置声道的,但是好像又不起什么效果。哪位高手知道请讲一讲,谢谢!
...全文
19 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复
include "widget.h" #include "ui_widget.h" Widget::Widget(QWidget *parent) : QWidget(parent), ui(new Ui::Widget) { ui->setupUi(this); pathName = "/home/akaedu/akplayer/music/"; // getMusicList(); dir.setPath(pathName); musicList.append(dir.entryList()); musicList.removeFirst(); musicList.removeFirst(); musicNo = 0; musicCount = musicList.size(); mediaObject = new Phonon::MediaObject(this); audioOutput = new Phonon::AudioOutput(Phonon::MusicCategory,this); volumeSlider = new Phonon::VolumeSlider(this); seekslider = new Phonon::SeekSlider(this); timer = new QTimer(this); Phonon::createPath(mediaObject,audioOutput); ui->listWidget->addItems(musicList); ui->progressBar->setValue(0); connect(timer,SIGNAL(timeout()),this,SLOT(timeOutSlot())); connect(mediaObject,SIGNAL(finished()),this,SLOT(playNext())); play(musicNo); timer->start(400); volumeSlider->setAudioOutput(audioOutput); volumeSlider->setOrientation(Qt::Horizontal); volumeSlider->setGeometry(15,10,150, 30); seekslider->setMediaObject(mediaObject); seekslider->setGeometry(20,70,471,12); QPixmap pic; pic.load("/home/akaedu/akplayer/123.jpg"); pic = pic.scaled(QSize(611,521)); ui->label->setPixmap(pic); } Widget::~Widget() { delete ui; } void Widget::playNext() { on_pb_down_clicked(); } void Widget::timeOutSlot() { ui->progressBar->setValue(100*mediaObject->currentTime()/mediaObject->totalTime()+1); ui->lb_cu->setText(time.addMSecs(mediaObject->currentTime()).toString()); ui->lb_to->setText(time.addMSecs(mediaObject->totalTime()).toString()); time1 = QTime::currentTime(); QString text = time1.toString("hh:mm:ss"); ui->lcdNumber->display(text); } void Widget::play(int i) { QString ptr; ptr.append(pathName); ptr.append(musicList.at(i).toLocal8Bit().constData()); mediaObject->setCurrentSource(ptr); ui->textEdit->setReadOnly(true); ui->textEdit->clear(); ui->textEdit-> append(musicList.at(i)); ui->listWidget->item(i)->setSelected(true); ui->listWidget->setCurrentRow(i); } //int Widget::getMusicList() //{ // DIR *dir; // struct dirent *ptr; // dir = opendir(pathName); // if(!dir){ // qDebug()<< "open dir error!"; // return -1; // } // while((ptr = readdir(dir))) // { // if(ptr->d_name[0] == '.') continue; // musicList << ptr->d_name; // } // closedir(dir); //} void Widget::on_pB_play_clicked() { ui->pB_play->setDisabled(true); ui->pB_stop->setDisabled(false); mediaObject->play(); } void Widget::on_listWidget_doubleClicked(const QModelIndex &index) { ui->pB_play->setDisabled(true); ui->pB_stop->setDisabled(false); play(index.row()); musicNo = index.row(); mediaObject->play(); timer->start(400); } void Widget::on_pB_stop_clicked() { ui->pB_stop->setDisabled(true); ui->pB_play->setDisabled(false); mediaObject->pause(); } void Widget::on_pb_down_clicked() { ui->pB_play->setDisabled(true); ui->pB_stop->setDisabled(false); if(musicNo < musicCount - 1 && musicNo >= 0) { musicNo++ ; } else{ musicNo = 0; } play(musicNo); mediaObject->play(); } void Widget::on_pB_up_clicked() { ui->pB_play->setDisabled(true); ui->pB_stop->setDisabled(false); if(musicNo < musicCount && musicNo > 0) { musicNo--; } else{ musicNo =musicCount - 1; } play(musicNo); mediaObject->play(); } void Widget::on_pB_speed_clicked() { mediaObject->seek(mediaObject->currentTime()+10000); } void Widget::on_pB_back_clicked() { mediaObject->seek(mediaObject->currentTime()-10000); }

433

社区成员

发帖
与我相关
我的任务
社区描述
其他技术讨论专区
其他 技术论坛(原bbs)
社区管理员
  • 其他技术讨论专区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧