Skip to content

Commit

Permalink
2003-07-03
Browse files Browse the repository at this point in the history
  • Loading branch information
makiuchi-d committed Sep 10, 2015
1 parent 35e50ff commit 9e2b8d0
Show file tree
Hide file tree
Showing 14 changed files with 576 additions and 311 deletions.
8 changes: 4 additions & 4 deletions delogo.rc
Original file line number Diff line number Diff line change
Expand Up @@ -74,7 +74,7 @@ FONT 9, "
// VERSION INFO
//
VS_VIRSION_INFO VERSIONINFO
FILEVERSION 0,0,6,0
FILEVERSION 0,0,6,1
PRODUCTVERSION 0,0,6
FILEFLAGSMASK 0x3FL
FILEFLAGS 0x0L
Expand All @@ -86,14 +86,14 @@ VS_VIRSION_INFO VERSIONINFO
{
BLOCK "041103A4"
{
VALUE "Comments", "���S�T���v���񋟎ҕ�W��\0"
// VALUE "Comments", "���S�T���v���񋟎ҕ�W��\0"
VALUE "FileDescription", "���ߐ����S �t�B���^ Plugin for AviUtl 0.98\0"
VALUE "FileVersion", "0.0.6.0\0"
VALUE "FileVersion", "0.0.6.1\0"
VALUE "InternalName", "deLogo\0"
VALUE "LegalCopyright", "(C) MakKi\0"
VALUE "OriginalFilename", "delogo.aup\0"
VALUE "ProductName", "���ߐ����S �t�B���^\0"
VALUE "ProductVersion", "0.0.6\0"
VALUE "ProductVersion", "0.06a\0"
}
}
BLOCK "VarFileInfo"
Expand Down
30 changes: 22 additions & 8 deletions editdlg.c
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ static int list_n;
// 関数プロトタイプ
//----------------------------
void on_wm_initdialog(HWND hdlg);
void on_IDOK(HWND hdlg);
BOOL on_IDOK(HWND hdlg);

/*====================================================================
* EditDlgProc() コールバックプロシージャ
Expand All @@ -34,8 +34,8 @@ BOOL CALLBACK EditDlgProc(HWND hdlg,UINT msg,WPARAM wParam,LPARAM lParam)
case WM_COMMAND:
switch(LOWORD(wParam)){
case IDOK:
on_IDOK(hdlg);
EndDialog(hdlg,LOWORD(wParam));
if(on_IDOK(hdlg))
EndDialog(hdlg,LOWORD(wParam));
break;

case IDCANCEL:
Expand Down Expand Up @@ -71,27 +71,41 @@ void on_wm_initdialog(HWND hdlg)
* on_IDOK() OKボタン動作
* ロゴ名の変更
*-------------------------------------------------------------------*/
void on_IDOK(HWND hdlg)
BOOL on_IDOK(HWND hdlg)
{
LOGO_HEADER *newdata;
LOGO_HEADER *olddata;

char newname[LOGO_MAX_NAME];
int num;

// 新ロゴ名前
GetDlgItemText(hdlg,ID_EDIT_NAME,newname,LOGO_MAX_NAME);
// リストボックスを検索
num = SendDlgItemMessage(owner,IDC_LIST,LB_FINDSTRING,-1,(WPARAM)newname);
if(num!=CB_ERR){ // 同名が見つかった
MessageBox(hdlg,"同名のロゴがあります\n別の名称を設定してください",filter_name,MB_OK|MB_ICONERROR);
return FALSE;
}

olddata = (LOGO_HEADER *)SendDlgItemMessage(owner,IDC_LIST,LB_GETITEMDATA,list_n,0);

// メモリ確保
newdata = (LOGO_HEADER *)malloc(LOGO_DATASIZE(olddata));
if(newdata==NULL){
MessageBox(hdlg,"メモリが足りません",filter_name,MB_OK|MB_ICONERROR);
return;
MessageBox(hdlg,"メモリが確保できませんでした",filter_name,MB_OK|MB_ICONERROR);
return TRUE;
}
// ロゴデータコピー
memcpy(newdata,olddata,LOGO_DATASIZE(olddata));

// ロゴ名変更
GetDlgItemText(hdlg,ID_EDIT_NAME,newdata->name,LOGO_MAX_NAME);
// ロゴ名設定
lstrcpy(newdata->name,newname);

// リストボックスを更新
DeleteItem(owner,list_n);
InsertItem(owner,list_n,newdata);

return TRUE;
}

30 changes: 16 additions & 14 deletions filter.c
Original file line number Diff line number Diff line change
Expand Up @@ -44,6 +44,8 @@
* 06/12: プレビューの背景色をRGBで指定できるように変更。
* 位置調整が4の倍数のときcreate_adj_exdata()を呼ばないようにした。(0.05)
* 06/30: フェードイン・アウトに対応。 (0.06)
* 07/02: ロゴデータを受信できない場合があったのを修正。
* 07/03: YCbCrの範囲チェックをするようにした。(しないと落ちることがある)(0.06a)
*
*********************************************************************/

Expand All @@ -63,7 +65,7 @@
* →実装完了
* ・ダイアログを表示したまま終了するとエラー吐く
* →親ウィンドウをAviUtl本体にすることで終了できなくした
* ・ロゴデータ構造少し変えようかな… 色差要素のビットを半分にするとか。ver0.10でやるか?
* ・ロゴデータ構造少し変えようかな… 色差要素のビットを半分にするとか。
*
* 新メモリ管理について:(2003/05/08)
* fp->ex_data_ptrにはロゴの名称のみを保存。(7FFDバイトしかプロファイルに保存されず、不具合が生じるため)
Expand Down Expand Up @@ -117,7 +119,7 @@ unsigned int logodata_n = 0;

char ex_data[LOGO_MAX_NAME]; // 拡張データ領域

static UINT WM_SEND_LOGO_DATA; // ロゴ受信メッセージ
static UINT WM_SEND_LOGO_DATA =0; // ロゴ受信メッセージ


//----------------------------
Expand Down Expand Up @@ -377,8 +379,8 @@ BOOL func_proc_eraze_logo(FILTER* fp,FILTER_PROC_INFO *fpip,LOGO_HEADER *lgh,int
y = lgp->y + fp->track[LOGO_PY]*16;
if(dp==LOGO_MAX_DP) dp--; // 0での除算回避
temp = ((double)ptr->y*LOGO_MAX_DP - y*dp) / (LOGO_MAX_DP - dp) +0.5; // 逆算
// if (temp>4096) temp = 4096; // 範囲チェック
// else if(temp<0) temp = 0;
if (temp>4096 +128) temp = 4096 +128; // 範囲チェック
else if(temp<0 -128) temp = 0 -128;
ptr->y = temp;

// 色差(青)
Expand All @@ -387,8 +389,8 @@ BOOL func_proc_eraze_logo(FILTER* fp,FILTER_PROC_INFO *fpip,LOGO_HEADER *lgh,int
cb = lgp->cb + fp->track[LOGO_CB]*16;
if(dp==LOGO_MAX_DP) dp--; // 0での除算回避
temp = ((double)ptr->cb*LOGO_MAX_DP - cb*dp) / (LOGO_MAX_DP - dp) +0.5;
// if (temp>2048) temp = 2048; // 範囲チェック
// else if(temp<-2048) temp = -2048;
if (temp> 2048+128) temp = 2048 +128; // 範囲チェック
else if(temp<-2048-128) temp = -2048 -128;
ptr->cb = temp;

// 色差(赤)
Expand All @@ -397,8 +399,8 @@ BOOL func_proc_eraze_logo(FILTER* fp,FILTER_PROC_INFO *fpip,LOGO_HEADER *lgh,int
cr = lgp->cr + fp->track[LOGO_CR]*16;
if(dp==LOGO_MAX_DP) dp--; // 0での除算回避
temp = ((double)ptr->cr*LOGO_MAX_DP - cr*dp) / (LOGO_MAX_DP - dp) +0.5;
// if (temp>2048) temp = 2048; // 範囲チェック
// else if(temp<-2048) temp = -2048;
if (temp> 2048+128) temp = 2048 +128; // 範囲チェック
else if(temp<-2048-128) temp = -2048 -128;
ptr->cr = temp;

} // if画面内
Expand Down Expand Up @@ -444,8 +446,8 @@ BOOL func_proc_add_logo(FILTER *fp,FILTER_PROC_INFO *fpip,LOGO_HEADER *lgh,int f
dp = dp * fade / LOGO_FADE_MAX; // フェード不透明度
y = lgp->y + fp->track[LOGO_PY]*16;
temp = ((double)ptr->y*(LOGO_MAX_DP-dp) + y*dp) / LOGO_MAX_DP +0.5; // ロゴ付加
// if (temp>4096) temp = 4096; // 範囲チェック
// else if(temp<0) temp = 0;
if (temp>4096 +128) temp = 4096 +128; // 範囲チェック
else if(temp<0 -128) temp = 0 -128;
ptr->y = temp;


Expand All @@ -454,17 +456,17 @@ BOOL func_proc_add_logo(FILTER *fp,FILTER_PROC_INFO *fpip,LOGO_HEADER *lgh,int f
dp = dp * fade / LOGO_FADE_MAX; // フェード不透明度
cb = lgp->cb + fp->track[LOGO_CB]*16;
temp = ((double)ptr->cb*(LOGO_MAX_DP-dp) + cb*dp) / LOGO_MAX_DP +0.5;
// if (temp> 2048) temp = 2048; // 範囲チェック
// else if(temp<-2048) temp = -2048;
if (temp> 2048+128) temp = 2048 +128; // 範囲チェック
else if(temp<-2048-128) temp = -2048 -128;
ptr->cb = temp;

// 色差(赤) //pow(2,(double)fp->track[LOGO_CRDP]/128);
dp = lgp->dp_cr * ((double)fp->track[LOGO_CRDP]/100);
dp = dp * fade / LOGO_FADE_MAX; // フェード不透明度
cr = lgp->cr + fp->track[LOGO_CR]*16;
temp = ((double)ptr->cr*(LOGO_MAX_DP-dp) + cr*dp) / LOGO_MAX_DP +0.5;
// if (temp> 2048) temp = 2048; // 範囲チェック
// else if(temp<-2048) temp = -2048;
if (temp> 2048+128) temp = 2048 +128; // 範囲チェック
else if(temp<-2048-128) temp = -2048 -128;
ptr->cr = temp;

} // if画面内
Expand Down
Loading

0 comments on commit 9e2b8d0

Please sign in to comment.