it would seem that you do need those Params to keep the gui engine happy. so just set them to .hidden = kPrTrue;
if its not that its because you have HasVideo and HasAudio == false. one has to be true to draw the tabs.
also the example throws you off a bit - you have to create the heirachy in Gen'DefaultP() but populate their values inc strings in PostProcess'()
one thing missing in the example is that you need to do a GetParam() on every element in PostProcess'() to get the last-session preset - otherwise it'll use the default values. this matters big time coz when you do an Export you need that PostProcess step to fill in the presets set by the user vs the defaults.
Thanks for your answear, Rally
The problem is, I've already done all the above.
When I create a new sequence and export it, the gui is fine. But after exporting, if i export it again, all the tab and group name (except for audio and video tab) are gone. So I think there is some thing done to the sequence when the exporter works. If I switch the format to something (like mp3, flv or whatever), and switch back, the gui is fine again.
It makes me mad for several days since.
I've noticed that if you open the same thing again (eg Ctrl-M on the same sequence or in AME right-click RESET STATUS) that the gui is cached and doesn't call PostProcessParams() again. if you're mistakingly setting up the tabs in there that would explain why you don't get your gui.
Delete the epr file as outlined in the docs on caching to experiment. Note that the current settings are not saved to this epr file until AME is closed... so if you hit STOP in the debugger instead of closing the program your epr will not get updated and you'll see the same preset corruption over and over again.
I set up all my tabs and groups and params in GenDefaultPam(), only the group and tabs name are wrong, and only for second export onward.
Curently trying the caching, but as far as i increased the ParamVersion, nothing has changed.
And I noticed some other thing: Even the params are displayed normally in second export, its value range is mesed up too. For example, if "MyAwesomeParam" has min value of 10 and max value of 20, at first export if I enter 0, it jumps to 10 because the entered value is smaller than the min value. But in second export, if I enter 0, it stays 0.
It is getting more and more confusing really.