123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129 |
- //---------------------------------------------------------------------------
- #include <vcl.h>
- #include "AppGlobalF.h"
- #pragma hdrstop
- #include "FrmCameraFullScreenF.h"
- //---------------------------------------------------------------------------
- #pragma package(smart_init)
- #pragma link "FFBaseComponent"
- #pragma link "FFBasePlay"
- #pragma link "FFPlay"
- #pragma resource "*.dfm"
- TFrmCameraFullScreen *FrmCameraFullScreen = NULL;
- #define LICENSE_KEY "FSXXXXXX-XXXXXXXX-XXXXXXXX-XXXXXXXX-XXXXXXXX"
- //---------------------------------------------------------------------------
- __fastcall TFrmCameraFullScreen::TFrmCameraFullScreen(TComponent* Owner)
- : TForm(Owner)
- {
- this->Color = clBlack;
- PnlStream->ParentColor = false;
- PnlStream->Color = clBlack;
- FFPlayer->SetLicenseKey(LICENSE_KEY);
- FFPlayer->DisableFPUExceptions();
- String sAVILibDir = g_sAppDir + "LibAV";
- if (!FFPlayer->AVLibLoaded())
- {
- if (!FFPlayer->LoadAVLib(sAVILibDir))
- {
- //PnlTitle->Caption = FCtlrNm + ": 영상표출 라이브러리를 로드 실패!!";
- }
- }
- }
- //---------------------------------------------------------------------------
- void __fastcall TFrmCameraFullScreen::PnlStreamDblClick(TObject *Sender)
- {
- Close();
- }
- //---------------------------------------------------------------------------
- void __fastcall TFrmCameraFullScreen::FormClose(TObject *Sender, TCloseAction &Action)
- {
- Disconnect();
- FrmCameraFullScreen = NULL;
- }
- //---------------------------------------------------------------------------
- void __fastcall TFrmCameraFullScreen::FormDblClick(TObject *Sender)
- {
- Close();
- }
- //---------------------------------------------------------------------------
- void __fastcall TFrmCameraFullScreen::FormShow(TObject *Sender)
- {
- Refresh();
- Application->ProcessMessages();
- this->Color = clBlack;
- PnlStream->ParentColor = false;
- PnlStream->Color = clBlack;
- Connect();
- }
- //---------------------------------------------------------------------------
- void __fastcall TFrmCameraFullScreen::Connect()
- {
- Disconnect();
- PnlStream->Caption = "Try connect...";
- try
- {
- FFPlayer->AspectRatio = -1;
- FFPlayer->TryOpen(RTSP_ADDR, PnlStream->Handle);
- FConHandle = (long)FFPlayer->ScreenHandle;
- Application->ProcessMessages();
- }
- catch(Exception &e)
- {
- }
- FPlay = true;
- }
- //---------------------------------------------------------------------------
- void __fastcall TFrmCameraFullScreen::Disconnect()
- {
- if (!FPlay) return;
- FPlay = false;
- PnlStream->Caption = "Try disconnect";
- try
- {
- if (FFPlayer->ScreenHandle != NULL)
- {
- FFPlayer->Stop(true);
- PostMessage(FFPlayer->ScreenHandle, CM_INVALIDATE, 0, 0);
- UpdateWindow(FFPlayer->ScreenHandle);
- }
- Application->ProcessMessages();
- FConHandle = 0;
- }
- catch(Exception &e)
- {
- }
- PnlStream->Caption = "Disconnected";
- FConHandle = 0;
- FPlay = false;
- }
- //---------------------------------------------------------------------------
- void __fastcall TFrmCameraFullScreen::TmrCloseTimer(TObject *Sender)
- {
- TmrClose->Enabled = false;
- Close();
- }
- //---------------------------------------------------------------------------
- void __fastcall TFrmCameraFullScreen::FormKeyPress(TObject *Sender, wchar_t &Key)
- {
- if (Key == VK_ESCAPE) {
- Close();
- }
- }
- //---------------------------------------------------------------------------
|