I am developing an avstream upper filter driver. Now using my avstream upper filter driver, I can change the stream data in control application before it is transfered to video player.
But I do not know how to get the format and video rectangle width and length eg. 640*480, my control application need these data.
I found much KSPROPERTY_PIN_DATAINTERSECTION and KSPROPERTY_PIN_DATARANGES command when i change the video format from 640*480 to 320*240. But these commands are KSPROPERTY_TYPE_GET commands,not SET commands. I can not capture any set commands in this procedure.
some documents said the player use KSPROPERTY_CONNECTION_DATAFORMAT and KSPROPERTY_CONNECTION_PROPOSEDATAFORMAT command to set the video format . BUT i can not capture this two commands.
Anyone can tell me how to get the current video format and rectange width and length?
thank you very much.
The following is my captured KSPROPERTY_PIN_DATAINTERSECTION data.
KsPinProperty(18): KsProperty->Id:KSPROPERTY_PIN_DATAINTERSECTION(0x4)
: _KsPinProperty(32): UserBuffer is 00914A78
: _KsPinProperty(33): OutputBufferLength is 98
: _KsPinProperty(34): InputBufferLength is 150
: _KsPinProperty(35): FormatSize is 0
: _KsPinProperty(36): Flags are 0
: _KsPinProperty(37): SampleSize is 25800
: _KsPinProperty(40): MajorFormat:KSDATAFORMAT_TYPE_VIDEO
: _KsPinProperty(48): SubFormat:MEDIASUBTYPE_YUY2
: _KsPinProperty(71): Specifier is KSDATAFORMAT_SPECIFIER_VIDEOINFO
: _KsPinProperty(72): VideoStandard is 0
: _KsPinProperty(73): InputSize (X, Y) are (0, 0)
: _KsPinProperty(74): MinCroppingSize (X, Y) are (0, 0)
: _KsPinProperty(75): MaxCroppingSize (X, Y) are (0, 0)
: _KsPinProperty(76): CropGranularity (X, Y) are (0, 36864000)
: _KsPinProperty(77): CropAlign (X, Y) are (0, 333333)
: _KsPinProperty(78): MinOutputSize (X, Y) are (0, 40)
: _KsPinProperty(79): MaxOutputSize (X, Y) are (320, 240)
: _KsPinProperty(80): OutputGranularity (X, Y) are (1048577, 844715353)
: _KsPinProperty(81): StretchTaps (X, Y) are (153600, 0)
: _KsPinProperty(82): ShrinkTaps (X, Y) are (0, 0)
: _KsPinProperty(83): FrameInterval (min, max) are (1310723, 17432852)
: _KsPinProperty(84): BitsPerSecond (min, max) are (7798895, 16777216)
: _KsPinProperty(94): Alignment is 8c134960
: _KsPinProperty(95): PinID is 0