Software DV Codec "Iris"

DirectShow Filter Interface Document

Copyright (c) 2002-2003 VSYNC All rights reserved.




@DirectShow AvP[VtB^𗘗pׂ CLSID  IID ́A
@̃wb_[t@C IDVIrisDS.h Œ`Ă܂B

@IDVIrisDS.h gpۂ́Ainitguid.h wb_KXgpĉB




EDV Codec "Iris" Decoder tB^

@DV Codec "Iris" Decoder tB^́ADV Xg[𖳈kfɃfR[hB


@- tB^C^[tFCX
@@IBaseFilter IDVIris IIPDVDec ISpecifyPropertyPages

@- ̓s fBA^Cv
@@^Cv MEDIATYPE_VideoAFORMAT_VideoInfo
@@^Cv MEDIATYPE_InterleavedAFORMAT_VideoInfo

@@̃Tu^CvL
@@@MEDIASUBTYPE_dvsd

@@Tu^Cvs̏ꍇłAFORMAT_VideoInfo ݂
@@VIDEOINFO \̂ bmiHeader.biCompression ̒lȉ̏ꍇ
@@ڑ󂯓B

@@@'dvsd' 'dvis'

@- ̓s C^[tFCX
@@@IMemInputPin
@@@IPin

@- o̓s fBA^Cv
@@^Cv MEDIATYPE_VideoAFORMAT_VideoInfo

@@̃Tu^CvL
@@@MEDIASUBTYPE_RGB24
@@@MEDIASUBTYPE_YUY2iuI RGB `gpvݒ薳j

@@o̓rfITCY̐͂ȂA͂ DV Xg[̌`ɂĒ܂
@@rfITCYi525-60 system Ȃ 720x480A625-50 system Ȃ 720x576j
@@ȊÕTCYw肷ƁAfR[h\ቺB

@@uI RGB `gpvݒ肪Lł鎞ARGB `ȊÕfBA
@@^Cv񋓂ȂB܂ARGB `ȊÕfBA^Cvł̃sڑۂB

@- o̓s C^[tFCX
@@@IMediaSeeking
@@@IMediaPosition
@@@IPin
      IQualityControl

@- tB^ CLSID
@@CLSID_DVIrisDSDecoder

@- vpeBy[W CLSID
@@CLSID_DVIrisDSPropertyPage
@@CLSID_DVIrisDSPropertyPage2

@- sW[
@@DVIrisDS.ax

@- bg
@@MERIT_DO_NOT_USE

@- JeS
@@CLSID_LegacyAmFilterCategory




EDV Codec "Iris" Encoder tB^

@DV Codec "Iris" Encoder tB^́Akf DV Xg[ɃGR[hB

@- tB^C^[tFCX
@@IBaseFilter IDVIris IDVEnc ISpecifyPropertyPages

@- ̓s fBA^Cv
@@^Cv MEDIATYPE_VideoAFORMAT_VideoInfo

@@̃Tu^CvL
@@@MEDIASUBTYPE_RGB24
@@@MEDIASUBTYPE_YUY2iuI RGB `gpvݒ薳j

@@̓rfITCÝA525-60 system Ȃ 720x480A625-50 system Ȃ
@@720x576 łBȊÕrfITCY̏ꍇAs̐ڑۂB
@@DV Codec "Iris" Encoder tB^́A̓rfITCYK؂ DV Xg[
@@̌`IB

@@uI RGB `gpvݒ肪Lł鎞ARGB `ȊÕfBA
@@^Cv񋓂ȂB܂ARGB `ȊÕfBA^Cvł̃sڑۂB

@- ̓s C^[tFCX
@@@IMemInputPin
@@@IPin

@- o̓s fBA^Cv
@@^Cv MEDIATYPE_VideoAMEDIASUBTYPE_dvsdAFORMAT_VideoInfo

@- o̓s C^[tFCX
@@@IMemInputPin
@@@IPin

@- tB^ CLSID
@@CLSID_DVIrisDSEncoder

@- vpeBy[W CLSID
@@CLSID_DVIrisDSPropertyPage
@@CLSID_DVIrisDSPropertyPage2

@- sW[
@@DVIrisDS.ax

@- bg
@@MERIT_DO_NOT_USE

@- JeS
@@CLSID_VideoCompressorCategory 




EIDVIris C^[tFCX

@̃C^[tFCX́ADV Codec "Iris" ̐ݒύXE擾ׂ
@\bhĂB

@- C^[tFCX CLSID
@@IID_IDVIris


@- vtable ̃\bh

@@QueryInterface
@@@T|[gĂC^[tFCXւ̃|C^擾

@@AddRef
@@@QƃJEgCNg

@@Release
@@@QƃJEgfNg


@- IDVIris \bh

@@get_InstructionSet
@@@Ɏgp閽߃Zbg擾

@@put_InstructionSet
@@@Ɏgp閽߃Zbgݒ肷

@@get_Quality
@@@i擾

@@put_Quality
@@@iݒ肷

@@get_ForceRGB
@@@I RGB `gp邩̃tO擾

@@put_ForceRGB
@@@I RGB `gp邩̃tOݒ肷

@@get_WideMode
@@@GR[hɃCh[hݒ邩̃tO擾

@@put_WideMode
@@@GR[hɃCh[hݒ邩̃tOݒ肷

@@get_YCStraight
@@@FԕϊɃXg[gϊsǂ̃tO擾

@@put_YCStraight
@@@FԕϊɃXg[gϊsǂ̃tOݒ肷

@@get_ErrorConcealment
@@@fR[hɃG[sǂ̃tO擾

@@put_ErrorConcealment
@@@fR[hɃG[sǂ̃tOݒ肷

@@get_DetectRedBlock
@@@GR[hɐԃubNosǂ̃tO擾

@@put_DetectRedBlock
@@@GR[hɐԃubNosǂ̃tOݒ肷

@@get_EsteemSNRatio
@@@GR[hS/Nd邩ǂ̃tO擾

@@put_EsteemSNRatio
@@@GR[hS/Nd邩ǂ̃tOݒ肷

@@get_DropYCbCrAccuracy
@@@GR[hYCbCrx𗎂Ƃǂ̃tO擾B

@@put_DropYCbCrAccuracy
@@@GR[hYCbCrx𗎂Ƃǂ̃tOݒ肷B

@@get_ThreadCount
@@@ɎgpXbh擾

@@put_ThreadCount
@@@ɎgpXbhݒ肷


@@get_DisregardDecodeSize
@@@fR[hɃfR[hTCY𖳎邩ǂ̃tO擾B

@@put_DisregardDecodeSize
@@@fR[hɃfR[hTCY𖳎邩ǂ̃tO擾B




@@IDVIris::get_InstructionSet

@@@Ɏgp閽߃Zbg擾B

@@@\
@@@@HRESULT get_InstructionSet(
@@@@@@DWORD *pdwFlag
@@@@);

@@@p[^
@@@@pdwFlag
@@@@@[out] Ɏgp閽߃Zbg擾 DWORD ^ϐւ
@@@@@@@@|C^B̒l̂̈ԂB

@@@@@DVIRIS_X86
@@@@@@x86 {߃Zbĝ݂gp

@@@@@DVIRIS_MMX
@@@@@@Intel MMX ߃Zbggp

@@@@@DVIRIS_SSE
@@@@@@Intel Streaming SIMD (SSE) ߃Zbggp

@@@@@DVIRIS_SSE2
@@@@@@Intel Streaming SIMD2 (SSE2) ߃Zbggp

@@@߂l
@@@@HRESULT
@@@@@S_OK@
@@@@@E_FAIL@s

@@@ӎ
@@@@DV Codec "Iris" DirectShow tB^́ACX^Xꂽ_
@@@@vZbT̗p\Ȗ߃Zbgȉ̏ŌAŏɗp\
@@@@łƔfꂽ߃ZbgftHg̖߃ZbgƂB

@@@@@SSE2 -> SSE -> MMX -> x86




@@IDVIris::put_InstructionSet

@@@Ɏgp閽߃Zbgݒ肷B
@@@̕ύX́AɃtB^󂯎郁fBATvLƂȂB

@@@\
@@@@HRESULT put_InstructionSet(
@@@@@@DWORD dwFlag
@@@@);

@@@p[^
@@@@dwMode
@@@@@[in] Ɏgp閽߃ZbgB̒l̂̈w肷B

@@@@@DVIRIS_X86
@@@@@@x86 {߃Zbĝ݂gp

@@@@@DVIRIS_MMX
@@@@@@Intel MMX ߃Zbggp

@@@@@DVIRIS_SSE
@@@@@@Intel Streaming SIMD (SSE) ߃Zbggp
@@@@@@݂̃o[Wł̓T|[gĂȂ

@@@@@DVIRIS_SSE2
@@@@@@Intel Streaming SIMD2 (SSE2) ߃Zbggp
@@@@@@݂̃o[Wł̓T|[gĂȂ

@@@߂l
@@@@HRESULT
@@@@@S_OK@
@@@@@E_FAIL@s

@@@ӎ
@@@@ps\Ɣf閽߃Zbgw肵ꍇAvZbT̗p\
@@@@߃Zbgȉ̏ŌAŏɗp\łƔfꂽ
@@@@߃ZbgftHg̖߃ZbgƂB

@@@@@SSE2 -> SSE -> MMX -> x86




@@IDVIris::get_Quality

@@@i擾B

@@@\
@@@@HRESULT get_Quality(
@@@@@@DWORD *pdwFlag
@@@@);

@@@p[^
@@@@pdwFlag
@@@@@[out] i擾 DWORD ^ϐւ
@@@@@@@@|C^B̒l̂̈ԂB

@@@@@DVIRIS_NORMAL
@@@@@@ʏigp

@@@@@DVIRIS_HIQUALITY
@@@@@@igp

@@@@@DVIRIS_HISPEED
@@@@@@gp

@@@@@DVIRIS_DRAFT
@@@@@@htgigp

@@@߂l
@@@@HRESULT
@@@@@S_OK@
@@@@@E_FAIL@s

@@@ӎ




@@IDVIris::put_Quality

@@@iݒ肷B
@@@̕ύX́AɃtB^󂯎郁fBATvLƂȂB

@@@\
@@@@HRESULT put_Quality(
@@@@@@DWORD dwFlag
@@@@);

@@@p[^
@@@@dwMode
@@@@@[in] i[hB̒l̂̈w肷B

@@@@@DVIRIS_NORMAL
@@@@@@ʏigp

@@@@@DVIRIS_HIQUALITY
@@@@@@igp

@@@@@DVIRIS_HISPEED
@@@@@@gp

@@@@@DVIRIS_DRAFT
@@@@@@htgigp

@@@߂l
@@@@HRESULT
@@@@@S_OK@
@@@@@E_FAIL@s

@@@ӎ




@@IDVIris::get_ForceRGB

@@@I RGB `gp邩̃tO擾B

@@@\
@@@@HRESULT get_ForceRGB(
@@@@@@BOOL *pbFlag
@@@@);

@@@p[^
@@@@pbFlag
@@@@@[out] I RGB `gp邩̃tO擾 BOOL ^ϐ
@@@@@@@@̃|C^B

@@@߂l
@@@@HRESULT
@@@@@S_OK@
@@@@@E_FAIL@s
@@@@@E_POINTER@nꂽ|C^s




@@IDVIris::put_ForceRGB

@@@I RGB `gp邩̃tOݒ肷B
@@@̕ύX́Aɑ̃tB^Ɠo̓s̍Đڑs鎞L
@@@ȂB

@@@\
@@@@HRESULT put_ForceRGB(
@@@@@@BOOL bFlag
@@@@);

@@@p[^
@@@@bFlag
@@@@@[in] I RGB `gp邩̃tO

@@@߂l
@@@@HRESULT
@@@@@S_OK@
@@@@@E_FAIL@s




@@IDVIris::get_WideMode

@@@GR[hɃCh[hݒ邩̃tO擾B

@@@\
@@@@HRESULT get_WideMode(
@@@@@@BOOL *pbFlag
@@@@);

@@@p[^
@@@@pbFlag
@@@@@[out] GR[hɃCh[hݒ邩̃tO擾
@@@@@@@@BOOL ^ϐւ̃|C^B

@@@߂l
@@@@HRESULT
@@@@@S_OK@
@@@@@E_FAIL@s
@@@@@E_POINTER@nꂽ|C^s




@@IDVIris::put_WideMode

@@@GR[hɃCh[hݒ邩̃tOݒ肷B
@@@̕ύX́AɃtB^󂯎郁fBATvLƂȂB

@@@\
@@@@HRESULT put_WideMode(
@@@@@@BOOL bFlag
@@@@);

@@@p[^
@@@@bFlag
@@@@@[in] GR[hɃCh[hݒ邩̃tO

@@@߂l
@@@@HRESULT
@@@@@S_OK@
@@@@@E_FAIL@s




@@IDVIris::get_YCStraight

@@@FԕϊɃXg[gϊsǂ̃tO擾B

@@@\
@@@@HRESULT get_YCStraight(
@@@@@@BOOL *pbFlag
@@@@);

@@@p[^
@@@@pbFlag
@@@@@[out] FԕϊɃXg[gϊsǂ̃tO
@@@@@@@@擾 BOOL ^ϐւ̃|C^B

@@@߂l
@@@@HRESULT
@@@@@S_OK@
@@@@@E_FAIL@s
@@@@@E_POINTER@nꂽ|C^s




@@IDVIris::put_YCStraight

@@@FԕϊɃXg[gϊsǂ̃tOݒ肷B
@@@̕ύX́AɃtB^󂯎郁fBATvLƂȂB

@@@\
@@@@HRESULT put_YCStraight(
@@@@@@BOOL bFlag
@@@@);

@@@p[^
@@@@bFlag
@@@@@[in] FԕϊɃXg[gϊsǂ̃tO

@@@߂l
@@@@HRESULT
@@@@@S_OK@
@@@@@E_FAIL@s




@@IDVIris::get_ErrorConcealment

@@@fR[hɃG[sǂ̃tO擾B

@@@\
@@@@HRESULT get_ErrorConcealment(
@@@@@@BOOL *pbFlag
@@@@);

@@@p[^
@@@@pbFlag
@@@@@[out] fR[hɃG[sǂ̃tO
@@@@@@@@擾 BOOL ^ϐւ̃|C^B

@@@߂l
@@@@HRESULT
@@@@@S_OK@
@@@@@E_FAIL@s
@@@@@E_POINTER@nꂽ|C^s




@@IDVIris::put_ErrorConcealment

@@@fR[hɃG[sǂ̃tOݒ肷B
@@@̕ύX́AɃtB^󂯎郁fBATvLƂȂB

@@@\
@@@@HRESULT put_ErrorConcealment(
@@@@@@BOOL bFlag
@@@@);

@@@p[^
@@@@bFlag
@@@@@[in] fR[hɃG[sǂ̃tO

@@@߂l
@@@@HRESULT
@@@@@S_OK@
@@@@@E_FAIL@s




@@IDVIris::get_DetectRedBlock

@@@GR[hɐԃubNosǂ̃tO擾B

@@@\
@@@@HRESULT get_DetectRedBlock(
@@@@@@BOOL *pbFlag
@@@@);

@@@p[^
@@@@pbFlag
@@@@@[out] GR[hɐԃubNosǂ̃tO
@@@@@@@@擾 BOOL ^ϐւ̃|C^B

@@@߂l
@@@@HRESULT
@@@@@S_OK@
@@@@@E_FAIL@s
@@@@@E_POINTER@nꂽ|C^s




@@IDVIris::put_DetectRedBlock

@@@GR[hɐԃubNosǂ̃tOݒ肷B
@@@̕ύX́AɃtB^󂯎郁fBATvLƂȂB

@@@\
@@@@HRESULT put_DetectRedBlock(
@@@@@@BOOL bFlag
@@@@);

@@@p[^
@@@@bFlag
@@@@@[in] GR[hɐԃubNosǂ̃tO

@@@߂l
@@@@HRESULT
@@@@@S_OK@
@@@@@E_FAIL@s




@@IDVIris::get_EsteemSNRatio

@@@GR[hS/Nd邩ǂ̃tO擾B

@@@\
@@@@HRESULT get_EsteemSNRatio(
@@@@@@BOOL *pbFlag
@@@@);

@@@p[^
@@@@pbFlag
@@@@@[out] GR[hS/Nd邩ǂ̃tO
@@@@@@@@擾 BOOL ^ϐւ̃|C^B

@@@߂l
@@@@HRESULT
@@@@@S_OK@
@@@@@E_FAIL@s
@@@@@E_POINTER@nꂽ|C^s




@@IDVIris::put_EsteemSNRatio

@@@GR[hS/Nd邩ǂ̃tOݒ肷B
@@@̕ύX́AɃtB^󂯎郁fBATvLƂȂB

@@@\
@@@@HRESULT put_EsteemSNRatio(
@@@@@@BOOL bFlag
@@@@);

@@@p[^
@@@@bFlag
@@@@@[in] GR[hS/Nd邩ǂ̃tO

@@@߂l
@@@@HRESULT
@@@@@S_OK@
@@@@@E_FAIL@s




@@IDVIris::get_DropYCbCrAccuracy

@@@GR[hYCbCrx𗎂Ƃǂ̃tO擾B

@@@\
@@@@HRESULT get_DropYCbCrAccuracy(
@@@@@@BOOL *pbFlag
@@@@);

@@@p[^
@@@@pbFlag
@@@@@[out] GR[hYCbCrx𗎂Ƃǂ̃tO
@@@@@@@@擾 BOOL ^ϐւ̃|C^B

@@@߂l
@@@@HRESULT
@@@@@S_OK@
@@@@@E_FAIL@s
@@@@@E_POINTER@nꂽ|C^s




@@IDVIris::put_DropYCbCrAccuracy

@@@GR[hYCbCrx𗎂Ƃǂ̃tOݒ肷B
@@@̕ύX́AɃtB^󂯎郁fBATvLƂȂB

@@@\
@@@@HRESULT put_DropYCbCrAccuracy(
@@@@@@BOOL bFlag
@@@@);

@@@p[^
@@@@bFlag
@@@@@[in] GR[hYCbCrx𗎂Ƃǂ̃tO

@@@߂l
@@@@HRESULT
@@@@@S_OK@
@@@@@E_FAIL@s




@@IDVIris::get_ThreadCount

@@@ɃXbh擾B

@@@\
@@@@HRESULT get_ThreadCount(
@@@@@@DWORD *pdwCount
@@@@);

@@@p[^
@@@@pdwCount
@@@@@[out] ɎgpXbh擾 DWORD ^ϐւ
@@@@@@@@|C^B

@@@߂l
@@@@HRESULT
@@@@@S_OK@
@@@@@E_FAIL@s

@@@ӎ




@@IDVIris::put_ThreadCount

@@@ɎgpXbhݒ肷B
@@@̕ύX́AɃtB^󂯎郁fBATvLƂȂB

@@@\
@@@@HRESULT put_ThreadCount(
@@@@@@DWORD dwCount
@@@@);

@@@p[^
@@@@dwCount
@@@@@[in] ɎgpXbhB

@@@߂l
@@@@HRESULT
@@@@@S_OK@
@@@@@E_FAIL@s

@@@ӎ
@@@@݂̃vZbTzXbh͐ݒłȂB




@@IDVIris::get_DisregardDecodeSize

@@@fR[hɃfR[hTCY𖳎邩ǂ̃tO擾B

@@@\
@@@@HRESULT get_DisregardDecodeSize(
@@@@@@BOOL *pbFlag
@@@@);

@@@p[^
@@@@pbFlag
@@@@@[out] fR[hɃfR[hTCY𖳎邩ǂ̃tO
@@@@@@@@擾 BOOL ^ϐւ̃|C^B

@@@߂l
@@@@HRESULT
@@@@@S_OK@
@@@@@E_FAIL@s
@@@@@E_POINTER@nꂽ|C^s




@@IDVIris::put_DisregardDecodeSize

@@@fR[hɃfR[hTCY𖳎邩ǂ̃tO擾B
@@@̕ύX́AɃtB^̏o̓sĐڑĂLƂȂB

@@@\
@@@@HRESULT put_DisregardDecodeSize(
@@@@@@BOOL bFlag
@@@@);

@@@p[^
@@@@bFlag
@@@@@[in] fR[hɃfR[hTCY𖳎邩ǂ̃tO

@@@߂l
@@@@HRESULT
@@@@@S_OK@
@@@@@E_FAIL@s






E

@version 1.00 (2002/06/08)
@@o[W


@version 1.01 (2002/10/19)
@@get_EsteemSNRatio \bh
@@put_EsteemSNRatio \bh
@@get_DropYCbCrAccuracy \bh
@@put_DropYCbCrAccuracy \bh
@@ǉ


@version 1.02 (2002/11/24)
@@get_Quality \bh
@@put_Quality \bh
@@get_ThreadCount \bh
@@put_ThreadCount \bh
@@ǉ


@version 1.03 (2003/02/23)
@@get_DisregardDecodeSize \bh
@@put_DisregardDecodeSize \bh
@@ǉ
@@get_Quality \bh put_Quality \bh̐Ă̂C

DVIrisDS.txt
Copyright (c) 2002-2003 VSYNC All rights reserved.
