#include "widget.h"
#include "ui_widget.h"
#include <QDebug>
Widget::Widget(QWidget *parent)
: QWidget(parent)
, ui(new Ui::Widget)
{
ui->setupUi(this);
process=new QProcess(this);
QObject::connect(process,SIGNAL(readyReadStandardOutput()),this, SLOT(slot_readyRead()));
process->setProcessChannelMode(QProcess::MergedChannels);
}
Widget::~Widget()
{
delete ui;
}
/*
工程: untitled1
日期: 2021-07-28
作者: DS小龙哥
环境: win10 QT5.12.6 MinGW32
功能: 启动转码
*/
void Widget::on_pushButton_start_clicked()
{
//process->start("C:/FFMPEG/ffmpeg_x86_4.2.2/bin/ffmpeg.exe -i \"D:/test1080.flv\" -y -qscale 0 -vcodec libx264 -acodec aac -ac 1 -ar 22050 -b:v 0 -s 1280x720 -r 25 \"D:/linux-share-dir/video_file/test/out.mp4\"");
process->start(ui->lineEdit_start->text());
}
/*
工程: untitled1
日期: 2021-07-28
作者: DS小龙哥
环境: win10 QT5.12.6 MinGW32
功能: 有数据可读
*/
void Widget::slot_readyRead()
{
QByteArray qba = process->readAllStandardOutput();
QTextCodec* pTextCodec = QTextCodec::codecForName("System");
assert(pTextCodec != nullptr);
QString str = pTextCodec->toUnicode(qba);
ui->plainTextEdit->insertPlainText(str);
}
/*
工程: untitled1
日期: 2021-07-28
作者: DS小龙哥
环境: win10 QT5.12.6 MinGW32
功能: 写数据
*/
void Widget::on_pushButton_stop_clicked()
{
process->write(ui->lineEdit_write->text().toLocal8Bit());
}
/*
工程: untitled1
日期: 2021-07-28
作者: DS小龙哥
环境: win10 QT5.12.6 MinGW32
功能: 停止命令
*/
void Widget::on_pushButton_exit_clicked()
{
process->close();
process->waitForFinished();
}
评论0
最新资源