Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
wine-cw
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
wine
wine-cw
Commits
75c43624
Commit
75c43624
authored
Feb 07, 2006
by
Dmitry Timoshkov
Committed by
Alexandre Julliard
Feb 07, 2006
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
msvideo: Add a codec to the compressors list only if it supports
specified input format. Return a compressor handle in COMPVARS structure.
parent
0df8b0a0
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
21 additions
and
6 deletions
+21
-6
msvideo_main.c
dlls/msvideo/msvideo_main.c
+21
-6
No files found.
dlls/msvideo/msvideo_main.c
View file @
75c43624
...
...
@@ -705,19 +705,21 @@ struct choose_compressor
COMPVARS
cv
;
};
static
BOOL
enum_compressors
(
HWND
list
)
static
BOOL
enum_compressors
(
HWND
list
,
COMPVARS
*
pcv
)
{
UINT
id
;
UINT
id
,
total
=
0
;
ICINFO
icinfo
;
id
=
0
;
while
(
ICInfo
(
ICTYPE_VIDEO
,
id
,
&
icinfo
))
while
(
ICInfo
(
pcv
->
fccType
,
id
,
&
icinfo
))
{
ICINFO
*
ic
;
DWORD
idx
;
HIC
hic
;
id
++
;
hic
=
ICOpen
(
icinfo
.
fccType
,
icinfo
.
fccHandler
,
ICMODE_COMPRESS
);
if
(
hic
)
...
...
@@ -727,6 +729,17 @@ static BOOL enum_compressors(HWND list)
*/
DWORD
fccHandler
=
icinfo
.
fccHandler
;
if
(
pcv
->
lpbiIn
)
{
if
(
ICCompressQuery
(
hic
,
pcv
->
lpbiIn
,
NULL
)
!=
ICERR_OK
)
{
TRACE
(
"fccHandler %s doesn't support input DIB format %ld
\n
"
,
wine_dbgstr_fcc
(
icinfo
.
fccHandler
),
pcv
->
lpbiIn
->
bmiHeader
.
biCompression
);
ICClose
(
hic
);
continue
;
}
}
ICGetInfo
(
hic
,
&
icinfo
,
sizeof
(
icinfo
));
icinfo
.
fccHandler
=
fccHandler
;
ICClose
(
hic
);
...
...
@@ -737,10 +750,10 @@ static BOOL enum_compressors(HWND list)
*
ic
=
icinfo
;
SendMessageW
(
list
,
CB_SETITEMDATA
,
idx
,
(
LPARAM
)
ic
);
}
id
++
;
total
++
;
}
return
id
!=
0
;
return
total
!=
0
;
}
static
INT_PTR
CALLBACK
icm_choose_compressor_dlgproc
(
HWND
hdlg
,
UINT
msg
,
WPARAM
wparam
,
LPARAM
lparam
)
...
...
@@ -764,7 +777,7 @@ static INT_PTR CALLBACK icm_choose_compressor_dlgproc(HWND hdlg, UINT msg, WPARA
ic
->
fccHandler
=
comptypeDIB
;
SendDlgItemMessageW
(
hdlg
,
IDC_COMP_LIST
,
CB_SETITEMDATA
,
0
,
(
LPARAM
)
ic
);
enum_compressors
(
GetDlgItem
(
hdlg
,
IDC_COMP_LIST
));
enum_compressors
(
GetDlgItem
(
hdlg
,
IDC_COMP_LIST
)
,
&
choose_comp
->
cv
);
SendDlgItemMessageW
(
hdlg
,
IDC_COMP_LIST
,
CB_SETCURSEL
,
0
,
0
);
SetFocus
(
GetDlgItem
(
hdlg
,
IDC_COMP_LIST
));
...
...
@@ -795,6 +808,7 @@ static INT_PTR CALLBACK icm_choose_compressor_dlgproc(HWND hdlg, UINT msg, WPARA
{
choose_comp
->
cv
.
fccType
=
ic
->
fccType
;
choose_comp
->
cv
.
fccHandler
=
ic
->
fccHandler
;
choose_comp
->
cv
.
hic
=
ICOpen
(
ic
->
fccType
,
ic
->
fccHandler
,
ICMODE_COMPRESS
);
/* FIXME: fill everything else */
}
}
...
...
@@ -860,6 +874,7 @@ BOOL VFWAPI ICCompressorChoose(HWND hwnd, UINT uiFlags, LPVOID pvIn,
if
(
pc
->
fccType
==
0
)
pc
->
fccType
=
ICTYPE_VIDEO
;
choose_comp
.
cv
=
*
pc
;
choose_comp
.
flags
=
uiFlags
;
choose_comp
.
title
=
lpszTitle
;
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment