⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mdform.cpp

📁 海康威视视频采集卡linux开发包4.22版
💻 CPP
📖 第 1 页 / 共 2 页
字号:
{	w_full_area->IPChange(w_set_serverip->text());}void mdForm::ServerChanSet(){	QString Qstemp;	int chan;	bool ok = FALSE;		Qstemp = w_set_serverchan->text();	chan = Qstemp.toInt(&ok, 10);	if ( (!ok) || chan < 0 || chan > 36 )	{		OutputErrorString("Wrong ServerChan, %d\n", chan);		w_full_area->ServerChanSet(0);		w_set_serverchan->setText("0");		return;	}	w_full_area -> ServerChanSet(chan);}void mdForm::StatusChanged(int status){	QString Qs;	disconnect(w_decodefile, 0, 0, 0);	disconnect(w_decodestream, 0, 0, 0);	if (status == 1)	{		w_decodefile->setChecked(TRUE);		w_decodefile->setEnabled(TRUE);		w_fileposition->setEnabled(TRUE);		w_fileposition->setText(w_full_area->RetFilePosition());		w_decodestream->setChecked(FALSE);		w_decodestream->setEnabled(FALSE);		w_set_serverip->setEnabled(FALSE);		w_set_serverchan->setEnabled(FALSE);		w_sound->setEnabled(TRUE);	}	else if (status == 2)	{		w_decodefile->setChecked(FALSE);		w_decodefile->setEnabled(FALSE);		w_fileposition->setEnabled(FALSE);		w_fileposition->clear();		w_decodestream->setChecked(TRUE);		w_decodestream->setEnabled(TRUE);		w_set_serverip->setEnabled(TRUE);		w_set_serverip->setText(w_full_area->RetIP());		w_set_serverchan->setEnabled(TRUE);		w_set_serverchan->setText(Qs.sprintf("%d",w_full_area->RetChan()));		w_sound->setEnabled(TRUE);	}	else if (status == 0)	{		w_decodefile->setChecked(FALSE);		w_decodefile->setEnabled(TRUE);		w_fileposition->setEnabled(TRUE);		w_fileposition->clear();		w_decodestream->setChecked(FALSE);		w_decodestream->setEnabled(TRUE);		w_set_serverip->setEnabled(TRUE);		w_set_serverchan->setEnabled(TRUE);		w_full_area->ServerChanSet(0);		w_set_serverchan->setText("0");		w_sound->setChecked(FALSE);		w_sound->setEnabled(FALSE);	}		connect(w_decodefile, SIGNAL(clicked()), this, SLOT(OpenFile()));	connect(w_decodestream, SIGNAL(clicked()), this, SLOT(OpenStream()));}void mdForm::AreaChanged(int port){	QString qS;	OutputDebugString("now it's turn to channel number\n");	w_channel->setText(qS.sprintf("%d", port));		disconnect(w_sound, 0, 0, 0);	if(port != w_full_area->RetSoundPort())		w_sound->setChecked(FALSE);	else		w_sound->setChecked(TRUE);	connect(w_sound, SIGNAL(clicked()), this, SLOT(SoundSet()));}void mdForm::OpenFile(){	if( w_decodefile->isChecked() == FALSE)	{		OutputDebugString("Close Decode File\n");		w_decodestream->setEnabled(TRUE);		w_videoout->setChecked(FALSE);				w_videoout->setEnabled(FALSE);		w_full_area->FileStreamClose(DECODEFILE);		w_fileposition->clear();		w_set_serverchan->setEnabled(TRUE);		w_set_serverip->setEnabled(TRUE);		w_full_area->erase();				return;	}				QString SelectFile;	OutputDebugString("OpenFile for decode\n");	QFileDialog* fd = new QFileDialog( this );	fd->setMode( QFileDialog::ExistingFile);	fd->setFilter( "HikVision Files(*.mp4 *.264)" );	connect(fd, SIGNAL(fileSelected(const QString &)), w_full_area, SLOT(FileOpen(const QString &)));		    if ( fd->exec() == QDialog::Accepted )    {    	OutputDebugString("Open File for decode\n");		w_decodestream->setEnabled(FALSE);		w_fileposition->setText(fd->selectedFile());		w_set_serverchan->setEnabled(FALSE);		w_set_serverip->setEnabled(FALSE);		w_videoout->setEnabled(TRUE);    }	else	{		disconnect(w_decodefile, 0, 0, 0);		w_decodefile->setChecked(FALSE);		connect(w_decodefile, SIGNAL(clicked()), this, SLOT(OpenFile()));	}	delete fd;}void mdForm::OpenStream(){	if ( w_decodestream->isChecked() == FALSE )	{		OutputDebugString("Close Decode Stream\n");		w_decodefile->setEnabled(TRUE);		w_videoout->setChecked(FALSE);				w_videoout->setEnabled(FALSE);		w_full_area->FileStreamClose(DECODESTREAM);		w_full_area->erase();		w_fileposition->setEnabled(TRUE);		return;	}	OutputDebugString("-------------------------\n");	if( w_full_area->OpenStream() == -1 )	{		OutputDebugString("here initial the net error\n");		disconnect(w_decodestream, 0, 0, 0);		w_decodestream->setChecked(FALSE);		w_fileposition->setEnabled(TRUE);		connect(w_decodestream, SIGNAL(clicked()), this, SLOT(OpenStream()));	}	else	{		w_decodefile->setEnabled(FALSE);		w_videoout->setEnabled(TRUE);	}}void mdForm::OpenVideoOut(){	if ( w_videoout -> isChecked() == FALSE )	{		OutputDebugString("Close Video Out\n");		w_full_area->CloseVideoOut();		return;	}	w_full_area->OpenVideoOut();}void mdForm::changeEdit(){	char savepath[10]=".";	char tmp = '%';	int freespace;		struct statfs bbuf;		QDateTime Dtchange = QDateTime::currentDateTime();	QString Qschange;	DateEdit->setText(Dtchange.date().toString("yyyy-MM-dd"));	TimeEdit->setText(Dtchange.time().toString("hh:mm:ss"));		if(statfs(savepath, &bbuf) < 0)	{		OutputErrorString("statsfs() faied, error: %d\n",  errno);			}	else	{		freespace = (100*bbuf.f_bavail)/bbuf.f_blocks;		Qschange.sprintf(" %3d%c", freespace, tmp);	}	FreespaceEdit->setText(Qschange);}void mdForm::BitRateSet(int Select, int data){	QString qS;	if (Select == atoi(w_channel -> text()))		w_bit_rate->setText(qS.sprintf("%d", data));}void mdForm::FrameRateSet(int Select, unsigned long data){	QString qS;	if (Select == atoi(w_channel -> text()))		w_decode_framerate->setText(qS.sprintf("%ld", data));	}void mdForm::FrameSet(int Select, unsigned long data){	QString qS;	if (Select == atoi(w_channel -> text()))		w_totalframe->setText(qS.sprintf("%ld", data));	}/* *  Sets the strings of the subwidgets using the current *  language. */void mdForm::languageChange(){    setCaption( tr( "mdForm" ) );    groupBoxGSI->setTitle( tr( "Status Information" ) );    DateLabel->setText( tr( "  Date" ) );    TimeLabel->setText( tr( "  Time" ) );    FreeSpaceLabel->setText( tr( "Free Space" ) );    groupBoxCInfo->setTitle( tr( "Channel Info" ) );    TotalFramesLabel->setText( tr( "Total Frames" ) );    FrameRateLabel->setText( tr( "FrameRate" ) );    BitRateLabel->setText( tr( "BitRate(bps)" ) );    ServerChanLabel->setText( tr( "Server Chan" ) );    ServerIpLabel->setText( tr( "Server Ip" ) );    ChannelNumLabel->setText( tr( "Channel Num" ) );		FilePositionLabel->setText( tr( "Decode File" ) );    groupBoxDecode->setTitle( tr( "Decode On MD" ) );    AllSetCheckButton->setText( tr( "    ALL" ) );    w_decodefile->setText( tr( "    Decode Files" ) );    w_decodestream->setText( tr( "    Decode Stream" ) );    w_videoout->setText( tr( "    Video Audio Out" ) );		w_sound->setText( tr( "  Audio Preview"  ) );    ButtonExit->setText( tr( "Exit" ) );}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -