My company has developed a H.264 HD capture card and I would like to support it in Adobe Premiere Elements 8/9 (PE).
I have a few questions that I hope you can help answer :
1. Which SDK should I use for the plug-in ?
2. The card supports only compressed streams, meaning it has to be decoded in PE for preview. Is this type of use case supported ?
3. What type of plug-in/plug-ins will I need to develop ? Are there examples ?
Thanks for any guide.
Actually now that I think about it - if you make a device driver that exposes it as Video For Windows (VfW) (NOT DirectX or Media Foundation) any video editing tool should be able to decode it as a capture device.
Look at the capture chapter in the pdf (in the sdk) to better understand (I'm just shooting off the top of my head from memory - I'm at the other end in Export.)
For Premiere Elements to support capture using your hardware, you'll need to either provide a recorder plug-in built using the Premiere Pro SDK, or a WDM capture driver. If you provide a recorder plug-in, you will need to provide your own code to decode the video for display in the Capture panel.
Ideally, you would capture directly to files already supported by Premiere Elements. That way there would be no need to provide a separate importer plug-in.
I was wondering the same thing.
'was just looking around MSDN for you.
Basically you should build a WDM filter. It exposes itself as a DirectShow pin which the user can join to.
For capture that would be your "WDM Filter"-> FileOut Filter
For preview (sorry doesn't look like you can do it at the same time unless there is a "Duplicator filter".. Anyhow for preview you would join the "WDM Filter" -> "h264 Decode Filter" -> "Display Filter".
I also came across this:
it is a comment on how Microsoft has a free non-GPL h264 decoder shipped with Win7 and above.
Here is the MPEG2 & MPEG4/h264 Decoder Filter (NOTE it's 32bit only)
Zac, can you confirm that he should:
Step 1: make a WDM Filter
Step 2: use the generic Capture Recoder from Prem PE to attach to the now standard capture device.
Or... does he need to explicitly code for his filter connected to the Win7 h264 Decoder then into Prem PE.
I'm interested to understand how this works. Please keep us up to date with your progress.
Here is the MSDN page on the WDM Video Capture Filter...
Also if you go over to forum.doom9.org and/or forum.videohelp.com you may be able to get some excellent help there.
Basically, Premiere Elements has a recorder plug-in that acts as a host for WDM capture drivers. This looks to be the correct MSDN reference for developing a WDM video capture filter:
Looking at our WDM support code, it appears that for the video display in the capture window, the WDM host code creates a capture preview graph. Here's a reference:
Premiere doesn't provide generic libraries for decoding compressed frames - that's exactly what the plug-in architecture is for. The plug-in needs to provide the support for the hardware and video formats. Whether you support H.264 decompression directly, or through other 3rd party libraries, is your choice. As Rallymax pointed out, Windows 7 32-bit seems to already have that support built-in.