I've implemented a standalone EVR that receives YUV video via RTP packets.
After setting the correct media type (and its accepted by the Media Sink, it returns MF_E_TRANSFORM_NEED_MORE_INPUT. I have double checked and the Media Sink is receiving a full frame of data.
The trace log (shown below) shows that its receiving the sample on IMFMediaSink->ProcessSample
but then it requests more input.
Have I set the media type incorrectly? (The MF calculate image size function returns the amount of data that I'm feeding the renderer). I think the trace log is showing an error with the transform?
Trace Log:
PID, TID Time (UTC) TraceMessage
32164,22A0 23:40:01.01327 TraceOSVersion @ OS version (BuildLabEx): 19041.1.amd64fre.vb_release.191206-1406
32164,22A0 23:40:01.01327 TraceMFDetoursVersion @ MFDetours version 1.1.0.1
32164,22A0 23:40:01.01331 TraceEnabledKeywords @ Keywords and levels: Default 4, Detours 4, MFDebugHlp 4, Kernel32Export 4, MFExport 4, MFPlatExport 4, MFPlayExport 4, MFReadWriteExport 4, Ole32Export 4, wmvCoreExport 4, MFPublic 4, IMFActivate 4, IMFAsyncCallback 4, IMFAttributes 4, IMFClock 4, IMFClockStateSink 4, IMFMediaEventGenerator 4, IMFMediaSession 4, IMFMediaSink 4, IMFMediaSource 4, IMFMediaStream 4, IMFPMediaPlayer 4, IMFPMediaItem 4
32164,22A0 23:40:01.01338 TraceEnabledKeywords @ Keywords and levels: IMFPMediaPlayerCallback 4, IMFPresentationClock 4, IMFQualityAdvise 4, IMFQualityAdvise2 4, IMFQualityManager 4, IMFRateControl 4, IMFSample 4, IMFSinkWriter 4, IMFSourceReader 4, IMFSourceReaderCallback 4, IMFSourceResolver 4, IMFStreamSink 4, IMFTopology 4, IMFTopologyNode 4, IMFTopoLoader 4, IMFTransform 4, IMediaObject 4, IMFSchemeHandler 4, IMFByteStream 4, IMFByteStreamHandler 4
32164,22A0 23:40:01.01339 TraceEnabledKeywords @ Keywords and levels: IMFReadWriteClassFactory 4, IFilterGraph 4, IGraphBuilder 4, IMediaControl 4, IMemInputPin 4, IWMReader 4, IWMReaderCallback 4
32164,22A0 23:40:01.01810 CMFMediaSessionDetours::Attach @015A4798 Presentation clock @015AA2B0
32164,22A0 23:40:01.01814 CMFMediaSessionDetours::Attach @015A4798 Rate control @015A47A0
32164,22A0 23:40:01.09810 CMFPlatExportDetours::MFStartup @ Version=0x00020070, dwFlags=0x00000000
32164,22A0 23:40:01.10004 COle32ExportDetours::CoCreateInstance @ New MFT @03147E58, VIDEO_ZOOM_RECT=00 00 00 00 00 00 00 00 00 00 80 3f 00 00 80 3f
32164,22A0 23:40:01.10007 COle32ExportDetours::CoCreateInstance @ Created {E474E05A-AB65-4F6A-827C-218B1BAAF31F} MF Video Mixer (C:\Windows\SysWOW64\evr.dll) @03147E58 - traced interfaces: IMFTransform @03147E58,
32164,22A0 23:40:01.12388 COle32ExportDetours::CoCreateInstance @ Created {A0A7A57B-59B2-4919-A694-ADD0A526C373} Tearless Window Presenter (C:\Windows\SysWOW64\evr.dll) @0314C1CC - traced interfaces:
32164,22A0 23:40:01.12392 COle32ExportDetours::CoCreateInstance @ Created {98455561-5136-4D28-AB08-4CEE40EA2781} MF Video Presenter (C:\Windows\SysWOW64\evr.dll) @0314AB00 - traced interfaces:
32164,22A0 23:40:01.12396 CMFTransformDetours::ProcessMessage @03147E58 Message type=0x00000002 MFT_MESSAGE_SET_D3D_MANAGER, param=0314B330
32164,22A0 23:40:01.18003 COle32ExportDetours::CoCreateInstance @ Created {A0A7A57B-59B2-4919-A694-ADD0A526C373} Tearless Window Presenter (C:\Windows\SysWOW64\evr.dll) @0314F49C - traced interfaces:
32164,22A0 23:40:01.18006 COle32ExportDetours::CoCreateInstance @ Created {98455561-5136-4D28-AB08-4CEE40EA2781} MF Video Presenter (C:\Windows\SysWOW64\evr.dll) @0314E2A0 - traced interfaces:
32164,22A0 23:40:01.18025 COle32ExportDetours::CoCreateInstance @ New MFT @0314FA00, VIDEO_ZOOM_RECT=00 00 00 00 00 00 00 00 00 00 80 3f 00 00 80 3f
32164,22A0 23:40:01.18025 COle32ExportDetours::CoCreateInstance @ Created {E474E05A-AB65-4F6A-827C-218B1BAAF31F} MF Video Mixer (C:\Windows\SysWOW64\evr.dll) @0314FA00 - traced interfaces: IMFTransform @0314FA00,
32164,22A0 23:40:01.18026 CMFTransformDetours::ProcessMessage @03147E58 Message type=0x00000002 MFT_MESSAGE_SET_D3D_MANAGER, param=00000000
32164,22A0 23:40:01.18027 CMFTransformDetours::ProcessMessage @0314FA00 Message type=0x00000002 MFT_MESSAGE_SET_D3D_MANAGER, param=0314EAD0
32164,22A0 23:40:01.23257 CMFTransformDetours::SetInputType @0314FA00 Succeeded MT: MF_MT_FRAME_SIZE=5497558139600 (1280,720);MF_MT_MAJOR_TYPE=MEDIATYPE_Video;MF_MT_DEFAULT_STRIDE=5120;MF_MT_FIXED_SIZE_SAMPLES=1;MF_MT_FRAME_RATE=128849018881 (30,1);MF_MT_PIXEL_ASPECT_RATIO=4294967297 (1,1);MF_MT_ALL_SAMPLES_INDEPENDENT=1;MF_MT_SAMPLE_SIZE=3686400;MF_MT_INTERLACE_MODE=2;MF_MT_SUBTYPE=MFVideoFormat_Y210
32164,22A0 23:40:01.23266 CMFTransformDetours::SetInputType @0314FA00 Succeeded MT: MF_MT_FRAME_SIZE=5497558139600 (1280,720);MF_MT_MAJOR_TYPE=MEDIATYPE_Video;MF_MT_DEFAULT_STRIDE=5120;MF_MT_FIXED_SIZE_SAMPLES=1;MF_MT_FRAME_RATE=128849018881 (30,1);MF_MT_PIXEL_ASPECT_RATIO=4294967297 (1,1);MF_MT_ALL_SAMPLES_INDEPENDENT=1;MF_MT_SAMPLE_SIZE=3686400;MF_MT_INTERLACE_MODE=2;MF_MT_SUBTYPE=MFVideoFormat_Y210
32164,22A0 23:40:01.23282 CMFTransformDetours::SetOutputType @0314FA00 Succeeded MT: MF_MT_FRAME_SIZE=5497558139600 (1280,720);MF_MT_MAJOR_TYPE=MEDIATYPE_Video;MF_MT_DEFAULT_STRIDE=5120;MF_MT_GEOMETRIC_APERTURE=00 00 00 00 00 00 00 00 00 05 00 00 d0 02 00 00 ;MF_MT_PAN_SCAN_APERTURE=00 00 00 00 00 00 00 00 00 05 00 00 d0 02 00 00 ;MF_MT_FIXED_SIZE_SAMPLES=1;MF_MT_FRAME_RATE=128849018881 (30,1);MF_MT_PIXEL_ASPECT_RATIO=8906044187059200 (2073600,2073600);MF_MT_ALL_SAMPLES_INDEPENDENT=1;MF_MT_MINIMUM_DISPLAY_APERTURE=00 00 00 00 00 00 00 00 00 05 00 00 d0 02 00 00 ;MF_MT_SAMPLE_SIZE=3686400;MF_MT_VIDEO_PRIMARIES=2;MF_MT_INTERLACE_MODE=2;MF_MT_SUBTYPE=MFVideoFormat_ARGB32
32164,22A0 23:40:01.23508 CMFTransformDetours::SetOutputType @0314FA00 Succeeded MT: MF_MT_FRAME_SIZE=5497558139600 (1280,720);MF_MT_MAJOR_TYPE=MEDIATYPE_Video;MF_MT_DEFAULT_STRIDE=5120;MF_MT_GEOMETRIC_APERTURE=00 00 00 00 00 00 00 00 00 05 00 00 d0 02 00 00 ;MF_MT_PAN_SCAN_APERTURE=00 00 00 00 00 00 00 00 00 05 00 00 d0 02 00 00 ;MF_MT_FIXED_SIZE_SAMPLES=1;MF_MT_FRAME_RATE=128849018881 (30,1);MF_MT_PIXEL_ASPECT_RATIO=8906044187059200 (2073600,2073600);MF_MT_ALL_SAMPLES_INDEPENDENT=1;MF_MT_MINIMUM_DISPLAY_APERTURE=00 00 00 00 00 00 00 00 00 05 00 00 d0 02 00 00 ;MF_MT_SAMPLE_SIZE=3686400;MF_MT_VIDEO_PRIMARIES=2;MF_MT_INTERLACE_MODE=2;MF_MT_SUBTYPE=MFVideoFormat_ARGB32
32164,22A0 23:40:01.23851 CMFTransformDetours::ProcessMessage @0314FA00 Message type=0x00000002 MFT_MESSAGE_SET_D3D_MANAGER, param=00000000
32164,22A0 23:40:01.23852 CMFTransformDetours::ProcessMessage @0314FA00 Message type=0x00000002 MFT_MESSAGE_SET_D3D_MANAGER, param=0314EAD0
32164,22A0 23:40:01.23867 CMFTransformDetours::SetOutputType @0314FA00 Succeeded MT: MF_MT_FRAME_SIZE=5497558139600 (1280,720);MF_MT_MAJOR_TYPE=MEDIATYPE_Video;MF_MT_DEFAULT_STRIDE=5120;MF_MT_GEOMETRIC_APERTURE=00 00 00 00 00 00 00 00 00 05 00 00 d0 02 00 00 ;MF_MT_PAN_SCAN_APERTURE=00 00 00 00 00 00 00 00 00 05 00 00 d0 02 00 00 ;MF_MT_FIXED_SIZE_SAMPLES=1;MF_MT_FRAME_RATE=128849018881 (30,1);MF_MT_PIXEL_ASPECT_RATIO=8906044187059200 (2073600,2073600);MF_MT_ALL_SAMPLES_INDEPENDENT=1;MF_MT_MINIMUM_DISPLAY_APERTURE=00 00 00 00 00 00 00 00 00 05 00 00 d0 02 00 00 ;MF_MT_SAMPLE_SIZE=3686400;MF_MT_VIDEO_PRIMARIES=2;MF_MT_INTERLACE_MODE=2;MF_MT_SUBTYPE=MFVideoFormat_ARGB32
32164,22A0 23:40:01.24257 CMFTransformDetours::SetOutputType @0314FA00 Succeeded MT: MF_MT_FRAME_SIZE=5497558139600 (1280,720);MF_MT_MAJOR_TYPE=MEDIATYPE_Video;MF_MT_DEFAULT_STRIDE=5120;MF_MT_GEOMETRIC_APERTURE=00 00 00 00 00 00 00 00 00 05 00 00 d0 02 00 00 ;MF_MT_PAN_SCAN_APERTURE=00 00 00 00 00 00 00 00 00 05 00 00 d0 02 00 00 ;MF_MT_FIXED_SIZE_SAMPLES=1;MF_MT_FRAME_RATE=128849018881 (30,1);MF_MT_PIXEL_ASPECT_RATIO=8906044187059200 (2073600,2073600);MF_MT_ALL_SAMPLES_INDEPENDENT=1;MF_MT_MINIMUM_DISPLAY_APERTURE=00 00 00 00 00 00 00 00 00 05 00 00 d0 02 00 00 ;MF_MT_SAMPLE_SIZE=3686400;MF_MT_VIDEO_PRIMARIES=2;MF_MT_INTERLACE_MODE=2;MF_MT_SUBTYPE=MFVideoFormat_ARGB32
32164,7B4 23:40:01.24385 CMFTransformDetours::ProcessMessage @0314FA00 Message type=0x10000000 MFT_MESSAGE_NOTIFY_BEGIN_STREAMING, param=00000000
32164,22A0 23:40:01.42742 CMFTransformDetours::ProcessMessage @0314FA00 Message type=0x10000003 MFT_MESSAGE_NOTIFY_START_OF_STREAM, param=00000000
32164,22A0 23:40:01.42744 CMFTransformDetours::ProcessInput @0314FA00 Stream ID 0, Sample @0314DE20, Time 0ms, Duration 33ms, Buffers 1, Size 3686400B,
32164,22A0 23:40:01.42993 CMFTransformDetours::ProcessOutput @0314FA00 Stream ID 0, Sample @03155CE0, Time 0ms, Duration 33ms, Buffers 1, Size 921600B,
32164,22A0 23:40:01.43026 CMFTransformDetours::ProcessOutput @0314FA00 failed hr=0xC00D6D72 MF_E_TRANSFORM_NEED_MORE_INPUT