Alternate Renderer

TheBoss wrote on 11/12/2006, 9:56 AM
I am wondering if there is a way to use an alternate MPEG1 / 2 renderer in VMS? Albeit the MainConcept renderer does a good job, it is just another software based renderer which takes hours to render an MPEG2. I know the AVIVO based ATI cards (x1000 family) have alleged hardware based transcoding/encoding, and so does some Hauppauge cards. I've seen the ATI card and it's codec in action and it is the fastest transcoder I've ever seen. The ATI codec
is somewhere in the range of 5-6X faster than MainConcepts and other software based transcoders renderers. If anyone is interested Google for "ATI AVIVO" and it's variants. It would very nice to have a lightning fast renderer in VMS. Most of my video work is very simple and involves simple scene cuts with no FX. Even if I cut a couple of sections out of an MPEG4 AVI using VMS, and try to resave it again as a MPEG4 AVI, it takes hours to render the darn thing. I can transcode a 2-hour MPEG4 AVI (720x480 6-Mbps) into MPEG2 in under 30-minutes using ATI's AVIVO codec.

Comments

IanG wrote on 11/14/2006, 3:52 AM
Disclaimer - this is all based on what I've read on the web, I haven't tried it. You have been warned!

So far as I can tell, you need to have the Catalyst Control Centre and the Video Converter codec installed along with an X1000 series graphics card. The GPU is used to run the conversion.

It looks as if you just go into the Catalyst Control Centre, select the file you want to convert and hit the go button. BUT, that presupposes you've got a file to be converted! In your case, you've still got to render your MPEG4 source to get to the point where you can convert it - you haven't gained anything!

Ian G.
TheBoss wrote on 11/14/2006, 8:11 AM
Ian, you are correct with regards to the steps and ATI applications needed to use their transcoder. My basic point was how to replace the MainConcept MPG encoder with something like ATI's, and have ATI's encoder do the rendering work WITHIN VMS, and not as an external utility as it is now. Rumor has it that ATI's SUPER FAST encoder does not need the X1000 series hardware to function. I mention that with prudence and with empirical results. There is a version of the ATI encoder that transcodes / re-renders from most media formats, to most media formats at blinding speed. I've never seen anything like it. This special non-hardware dependant version of the ATI codec has been floating around since last year. Chances are it bends the rules on licensing, but it proves there is software based transcoding technology out there which turns the others on their ear. I'm not even sure if ATI's codec exposes the correct internal interfaces for other applications like VMS to use. It goes without saying that having a transcoder in VMS which cuts the render time down by 5-6X is almost miraculous.
IanG wrote on 11/14/2006, 11:15 AM
Interesting! I've found postings saying it does use the GPU, others saying it doesn't but it checks that there's an X1000 series card installed. If it can be done at all, it probably needs a frameserver between VMS and the encoder, but I've never used one. Right now I'm thinking TANSTAAFL ;-)

Ian G.
TheBoss wrote on 11/14/2006, 12:35 PM
Ian, I can say with absolute certainty the "SPECIAL" AVIVO / ATI codec+utility does not need a X1000+ card, for that matter it does not need an ATI card at all. If you Google around for "AVIVO 1.12", you'll see what I mean. I've never coded for multimedia apps or multimedia drivers, but I may play with this one. All I can say is it would be great to wrap VMS around this incredible codec. "TANSTAAFL" ? you got me there...
IanG wrote on 11/14/2006, 2:30 PM
I'm showing my age! TANSTAAFL = there aint no such thing as a free lunch - it may be quick, but what's the quality like? I'll see if I can demonstrate it for myself!

Ian G.

IanG wrote on 11/14/2006, 3:40 PM
It can be done!
1/ Download the frameserver here
2/ Install it, selecting the Vegas plugin
3/ Start VMS and try rendering something with "Debugmode Frameserver" as the format. (I used the frameserver defaults)
4/ Start the video converter and use the output file name from 3 as the input.

That's about it!

I've tried 1 test so far and the MainConcept encoder took exactly 3 minutes, while the ATI Video Converter took exactly 2 minutes!! Unfortunately I picked about the worst possible avi clip for my test, so I can only say the quality appears equally bad in each of them. I'd love to play some more, but I'm tired and I want my bed!

Ian G.

TheBoss wrote on 11/15/2006, 10:30 AM
Ian, nice work with Frameserver! I'll give that a shot tonight. I did a simple performance test. I recorded a 2-minute MPEG4 AVI (720x480), then rendered it in VMS with their DVD template. It took 2-minutes and 40-seconds to create the MPEG2 (720x480 8-mbps). Took the same AVI and ran it through ATI to produce a MPEG2
(720x480 9-mbps) and it took 42-seconds. Also the VMS MPEG2 output did not have audio (ATI's had MPEG-1 audio), so all it rendered was video. The visual output quality seems verbatim. I also used G-Spot on both of the output MPEG's and it showed the ATI had a bit rate of close to 10, and the VMS MPEG had a bit rate of 8. According to G-Spots information screen, the two MPEG's were close to identical with the exceptions being the VMS MPEG did not have any rendered audio and the bit rate was lower than ATI's by almost 2-mbps. I'm beginning to like this codec a whole lot ;)
IanG wrote on 11/15/2006, 11:26 AM
>I'm beginning to like this codec a whole lot

Sadly, I'm not - it doesn't recognise that I'm working with PAL - it's converting my avis to NTSC!! It's quick, but if it can't produce the right format....

Ian G.
TheBoss wrote on 11/15/2006, 2:36 PM
Hmm...that is a problem. I'll hunt around in the EXE/DLL and registry for any steering variables. There's a registry entry under
(HKCU \ Software \ ATI Technologies \ Setings) named : 'EncodingStandard' but that seems to be holding the present output conversion mode relatiive to the pulldown menu.
I'll dig around and see if anything comes up.
IanG wrote on 11/16/2006, 2:18 AM
>I'll hunt around in the EXE/DLL and registry for any steering variables

Thanks for that! I'd already played around with the 'EcodingStandard' - setting it to 0 looked promising since it kept the frame rate correct, but that was the best I could get. There are some interesting results if you go past 11, but I haven't worked out what they are - they don't seem to be useful to me!

Ian G.