Strongene has released a new HEVC directshow encoder as well as an updated version of their HEVC decoder and tools to mux hevc/audio into flv files for playback through any directshow media player. You can find their latest releases here:
The updated decoder filter has support for additional fourcc codes and will now natively decode hm10, HM10, hevc, and HEVC files which makes it much more convenient for viewing raw hevc video streams that you may have created with the HM11.0 reference encoder.
But the really interesting product they’ve now released is their HEVC encoder. I haven’t done any deep testing with it yet but here are the options it gives you right now:
Not much in the way of options – with the Lentoid HEVC encoder you won’t have to set up GOPs or anything like that. What we do have access to is the IDR period which defines a GOP. Seeking works flawlessly with the output files so we can assume this is using a closed GOP. You have two options for rate control: ABR or constant QP. ABR tries to hit a specific data rate while cQP simply encodes each frame with a static QP, much as my previous testing with the reference encoder has done. The Lentoid Encoder is multithreaded and its speed is much greater than the HM10.1 and HM11.0 reference encoders, but still far from speedy. I haven’t done any full tests yet but I’d hazard to guess it is 2-4 times faster than TAppEncoder right now. I’ll be testing for quality differences in the future.
We can’t see any of the other options that the encoder is using – the number of reference frames, whether it’s using P frames or B frames, what search range it uses for ME. It would be preferable to have these options to play with, but the encoder does seem to do a fair job with whatever presets it uses. However, it is a directshow filter so how do we go about encoding with it?
Graphedit, of course! Here’s a brief walkthrough:
To use the Lentoid HEVC encoder you’ll want to go and grab a copy of GraphStudio. Grab the Lentoid HEVC Encoder filter from the link above if you haven’t already.
From the main screen select ‘Graph’ and then ‘Insert Filter’. A list of available Directshow filters will pop up. First we need to open a source file so select ‘ File Source (async)’ and find the file you’d like to work with. I’d recommend it be a file format that can be easily played back by ffdshow or lavfilters.
Once you’ve added your source we first need to decode it. For myself, I like using LAV filters on my home system so first I selectLAV Splitter. Click on the ‘out’ pin from your source file and drag an arrow to the ‘input’ pin of LAV Splitter. If it worked correctly you’ll now see pins representing all of the media in your source file which LAV Splitter can recognize. Next add LAV Video Decoder. Click on the ‘video’ pin of LAV Splitter and drag the arrow to the ‘input’ pin of LAV Video Decoder. Next add Lentoid HEVC Encoder. Drag an arrow from the ‘output’ pin on LAV Video Decoder to the ‘XForm In’ pin of the Lentoid HEVC Encoder.
To set options for the encoder either double click on the Lentoid HEVC Encoder box or right click on it and select ‘properties’. Here is where you can set your intra period, bitrate/QP, and the number of threads you’d like to encode with
. Once that’s done we can set the output file and Graphedit will automatically fill in the muxer. So add ‘File writer’ with whatever output name you’d like as an .flv file. Click and drag the arrow from the ‘XForm Out’ pin of the Lentoid HEVC Encoder to the ‘in’ pin of your output file. The FLV muxer will automatically be added. Now go back to the LAV Splitter, click on the ‘audio’ pin and drag it to the ‘in 1’ pin of the Monogram FLV muxer.
That’s it! You’re ready to encode now. Your graph should look something like this:
To begin the encode click the green ‘play’ arrow along the top bar. The timecode will progress rapidly, but it isn’t accurate to show what percentage of the encode has actually been completed and will show the encode at 100% complete almost immediately. Nonetheless your computer will keep chugging along and in time it will give you a completed file.
Only one problem….
What a shame – this would have been a much easier workflow to use compared to the HM11.0 reference encoder and Strongene could have gained some traction with their solution before the big players enter the field, but with watermarking there’s no practical use for the software aside from testing. So as interesting as this new software is it still leaves me wanting something more robust. I’m itching to do some archiving.