Can FLEXDDMD also display other video files than wmv ?
If I start for example FlexDMDUI.exe and use the following code, it shows nicely the video in the flex screen.
Dim scene1
Set scene1 = FlexDMD.NewGroup("Scene 1")
scene1.AddActor FlexDMD.NewVideo("Video1","c:\temp\Filename.wmv")
FlexDMD.RenderMode = 2
FlexDMD.LockRenderThread
FlexDMD.Stage.RemoveAll
FlexDMD.Stage.AddActor Scene1
FlexDMD.UnlockRenderThread
If I do the same with an AVI or MP4 , the FLEX screen stays black.
Checking the flexDMD log is see the following errors :
[5] 2022/12/05 07:12:27.764 ERROR | Failed to setup video decoder for file 'C:\temp\filename.avi' System.Runtime.InteropServices.COMException (0xC00D5212): No suitable transform was found to encode or decode the content. (Exception from HRESULT: 0xC00D5212)
at NAudio.MediaFoundation.IMFSourceReader.SetCurrentMediaType(Int32 dwStreamIndex, IntPtr pdwReserved, IMFMediaType pMediaType)
at FlexDMD.Video.SetupVideoDecoder(IMFSourceReader reader)
[5] 2022/12/05 07:12:27.764 ERROR | ReadNextFrame failed, video discarded System.InvalidCastException: Unable to cast COM object of type 'System.__ComObject' to interface type 'IMF2DBuffer'. This operation failed because the QueryInterface call on the COM component for the interface with IID '{7DC9D5F9-9ED9-44EC-9BBF-0600BB589FBB}' failed due to the following error: No such interface supported (Exception from HRESULT: 0x80004002 (E_NOINTERFACE)).
at FlexDMD.Video.ReadNextFrame()
[5] 2022/12/05 07:12:27.764 INFO | Video opened: C:\temp\filename.avi size=128x32 length=21.45477s (1 videos are currently opened)
[5] 2022/12/05 07:12:36.327 INFO | Video closed: C:\temp\filename.avi size=128x32 length=21.45477s (0 remaining videos are currently opened)
[5] 2022/12/05 07:12:36.327 ERROR | Failed to setup video decoder for file 'C:\temp\filename.mp4' System.Runtime.InteropServices.COMException (0xC00D36B4): The data specified for the media type is invalid, inconsistent, or not supported by this object. (Exception from HRESULT: 0xC00D36B4)
at NAudio.MediaFoundation.IMFSourceReader.SetCurrentMediaType(Int32 dwStreamIndex, IntPtr pdwReserved, IMFMediaType pMediaType)
at FlexDMD.Video.SetupVideoDecoder(IMFSourceReader reader)
[5] 2022/12/05 07:12:36.344 ERROR | ReadNextFrame failed, video discarded System.InvalidCastException: Unable to cast COM object of type 'System.__ComObject' to interface type 'IMF2DBuffer'. This operation failed because the QueryInterface call on the COM component for the interface with IID '{7DC9D5F9-9ED9-44EC-9BBF-0600BB589FBB}' failed due to the following error: No such interface supported (Exception from HRESULT: 0x80004002 (E_NOINTERFACE)).
at FlexDMD.Video.ReadNextFrame()
[5] 2022/12/05 07:12:36.344 INFO | Video opened: C:\temp\filename.mp4 size=128x32 length=15.467s (1 videos are currently opened)
[5] 2022/12/05 07:12:38.961 INFO | Video closed: C:\temp\filename.mp4 size=128x32 length=15.467s (0 remaining videos are currently opened)
LAV codecs are installed on the system and videos plays fine in WMP
I also tried to use "K-Lite_Codec_Pack_1730_Full.exe", but same error.
The 2 test files are attached.
I'm I doing something wrong, are the video files wrong format (the Mp4 file I Just create with FFMpeg). or is there something in FleDMD that needs to be adjusted ?
Edited by Mike DA Spike, 05 December 2022 - 06:20 AM.