// Generated by admPyClass.pl from binding/adm.admPyClass, DO NOT edit !
// addSegment -> int editor->addSegment(int double double)
static tp_obj zzpy_addSegment(TP)
{
  tp_obj self = tp_getraw(tp);
  IScriptEngine *engine = (IScriptEngine*)tp_get(tp, tp->builtins, tp_string("userdata")).data.val;
  IEditor *editor = engine->editor();
  TinyParams pm(tp);
  void *me = (void *)pm.asThis(&self, ADM_PYID_AVIDEMUX);

  int p0 = pm.asInt();
  double p1 = pm.asDouble();
  double p2 = pm.asDouble();
  int r = editor->addSegment(p0, p1, p2);
  return tp_number(r);
}
// addVideoFilter -> int editor->addVideoFilter(str couples)
static tp_obj zzpy_addVideoFilter(TP)
{
  tp_obj self = tp_getraw(tp);
  IScriptEngine *engine = (IScriptEngine*)tp_get(tp, tp->builtins, tp_string("userdata")).data.val;
  IEditor *editor = engine->editor();
  TinyParams pm(tp);
  void *me = (void *)pm.asThis(&self, ADM_PYID_AVIDEMUX);

  const char *p0 = pm.asString();
  CONFcouple *p1 = NULL;
  pm.makeCouples(&p1);
  int r = editor->addVideoFilter(p0, p1);
  return tp_number(r);
}
// appendVideo -> int editor->appendFile(str)
static tp_obj zzpy_appendVideo(TP)
{
  tp_obj self = tp_getraw(tp);
  IScriptEngine *engine = (IScriptEngine*)tp_get(tp, tp->builtins, tp_string("userdata")).data.val;
  IEditor *editor = engine->editor();
  TinyParams pm(tp);
  void *me = (void *)pm.asThis(&self, ADM_PYID_AVIDEMUX);

  const char *p0 = pm.asString();
  int r = editor->appendFile(p0);
  return tp_number(r);
}
// audioAddExternal -> int pyAddExternal(IEditor str)
static tp_obj zzpy_audioAddExternal(TP)
{
  tp_obj self = tp_getraw(tp);
  IScriptEngine *engine = (IScriptEngine*)tp_get(tp, tp->builtins, tp_string("userdata")).data.val;
  IEditor *editor = engine->editor();
  TinyParams pm(tp);
  void *me = (void *)pm.asThis(&self, ADM_PYID_AVIDEMUX);

  IEditor *p0 = editor;
  const char *p1 = pm.asString();
  int r = pyAddExternal(p0, p1);
  return tp_number(r);
}
// audioAddTrack -> int pyAddAudioTrack(IEditor int)
static tp_obj zzpy_audioAddTrack(TP)
{
  tp_obj self = tp_getraw(tp);
  IScriptEngine *engine = (IScriptEngine*)tp_get(tp, tp->builtins, tp_string("userdata")).data.val;
  IEditor *editor = engine->editor();
  TinyParams pm(tp);
  void *me = (void *)pm.asThis(&self, ADM_PYID_AVIDEMUX);

  IEditor *p0 = editor;
  int p1 = pm.asInt();
  int r = pyAddAudioTrack(p0, p1);
  return tp_number(r);
}
// audioBitrate -> int pyGetAudioBitrate(IEditor int)
static tp_obj zzpy_audioBitrate(TP)
{
  tp_obj self = tp_getraw(tp);
  IScriptEngine *engine = (IScriptEngine*)tp_get(tp, tp->builtins, tp_string("userdata")).data.val;
  IEditor *editor = engine->editor();
  TinyParams pm(tp);
  void *me = (void *)pm.asThis(&self, ADM_PYID_AVIDEMUX);

  IEditor *p0 = editor;
  int p1 = pm.asInt();
  int r = pyGetAudioBitrate(p0, p1);
  return tp_number(r);
}
// audioChannels -> int pyGetAudioChannels(IEditor int)
static tp_obj zzpy_audioChannels(TP)
{
  tp_obj self = tp_getraw(tp);
  IScriptEngine *engine = (IScriptEngine*)tp_get(tp, tp->builtins, tp_string("userdata")).data.val;
  IEditor *editor = engine->editor();
  TinyParams pm(tp);
  void *me = (void *)pm.asThis(&self, ADM_PYID_AVIDEMUX);

  IEditor *p0 = editor;
  int p1 = pm.asInt();
  int r = pyGetAudioChannels(p0, p1);
  return tp_number(r);
}
// audioClearTracks -> int pyClearAudioTracks(IEditor)
static tp_obj zzpy_audioClearTracks(TP)
{
  tp_obj self = tp_getraw(tp);
  IScriptEngine *engine = (IScriptEngine*)tp_get(tp, tp->builtins, tp_string("userdata")).data.val;
  IEditor *editor = engine->editor();
  TinyParams pm(tp);
  void *me = (void *)pm.asThis(&self, ADM_PYID_AVIDEMUX);

  IEditor *p0 = editor;
  int r = pyClearAudioTracks(p0);
  return tp_number(r);
}
// audioCodec -> int editor->setAudioCodec(int str couples)
static tp_obj zzpy_audioCodec(TP)
{
  tp_obj self = tp_getraw(tp);
  IScriptEngine *engine = (IScriptEngine*)tp_get(tp, tp->builtins, tp_string("userdata")).data.val;
  IEditor *editor = engine->editor();
  TinyParams pm(tp);
  void *me = (void *)pm.asThis(&self, ADM_PYID_AVIDEMUX);

  int p0 = pm.asInt();
  const char *p1 = pm.asString();
  CONFcouple *p2 = NULL;
  pm.makeCouples(&p2);
  int r = editor->setAudioCodec(p0, p1, p2);
  return tp_number(r);
}
// audioEncoding -> int pyGetAudioEncoding(IEditor int)
static tp_obj zzpy_audioEncoding(TP)
{
  tp_obj self = tp_getraw(tp);
  IScriptEngine *engine = (IScriptEngine*)tp_get(tp, tp->builtins, tp_string("userdata")).data.val;
  IEditor *editor = engine->editor();
  TinyParams pm(tp);
  void *me = (void *)pm.asThis(&self, ADM_PYID_AVIDEMUX);

  IEditor *p0 = editor;
  int p1 = pm.asInt();
  int r = pyGetAudioEncoding(p0, p1);
  return tp_number(r);
}
// audioFrequency -> int pyGetAudioFrequency(IEditor int)
static tp_obj zzpy_audioFrequency(TP)
{
  tp_obj self = tp_getraw(tp);
  IScriptEngine *engine = (IScriptEngine*)tp_get(tp, tp->builtins, tp_string("userdata")).data.val;
  IEditor *editor = engine->editor();
  TinyParams pm(tp);
  void *me = (void *)pm.asThis(&self, ADM_PYID_AVIDEMUX);

  IEditor *p0 = editor;
  int p1 = pm.asInt();
  int r = pyGetAudioFrequency(p0, p1);
  return tp_number(r);
}
// audioGetResample -> int pyGetResample(IEditor int)
static tp_obj zzpy_audioGetResample(TP)
{
  tp_obj self = tp_getraw(tp);
  IScriptEngine *engine = (IScriptEngine*)tp_get(tp, tp->builtins, tp_string("userdata")).data.val;
  IEditor *editor = engine->editor();
  TinyParams pm(tp);
  void *me = (void *)pm.asThis(&self, ADM_PYID_AVIDEMUX);

  IEditor *p0 = editor;
  int p1 = pm.asInt();
  int r = pyGetResample(p0, p1);
  return tp_number(r);
}
// audioResetFilter -> void editor->resetAudioFilter(int)
static tp_obj zzpy_audioResetFilter(TP)
{
  tp_obj self = tp_getraw(tp);
  IScriptEngine *engine = (IScriptEngine*)tp_get(tp, tp->builtins, tp_string("userdata")).data.val;
  IEditor *editor = engine->editor();
  TinyParams pm(tp);
  void *me = (void *)pm.asThis(&self, ADM_PYID_AVIDEMUX);

  int p0 = pm.asInt();
  editor->resetAudioFilter(p0);
  return tp_None;
}
// audioSetChannelDelays -> int pySetChDelays(IEditor int int int int int int int int int int)
static tp_obj zzpy_audioSetChannelDelays(TP)
{
  tp_obj self = tp_getraw(tp);
  IScriptEngine *engine = (IScriptEngine*)tp_get(tp, tp->builtins, tp_string("userdata")).data.val;
  IEditor *editor = engine->editor();
  TinyParams pm(tp);
  void *me = (void *)pm.asThis(&self, ADM_PYID_AVIDEMUX);

  IEditor *p0 = editor;
  int p1 = pm.asInt();
  int p2 = pm.asInt();
  int p3 = pm.asInt();
  int p4 = pm.asInt();
  int p5 = pm.asInt();
  int p6 = pm.asInt();
  int p7 = pm.asInt();
  int p8 = pm.asInt();
  int p9 = pm.asInt();
  int p10 = pm.asInt();
  int r = pySetChDelays(p0, p1, p2, p3, p4, p5, p6, p7, p8, p9, p10);
  return tp_number(r);
}
// audioSetChannelGains -> int pySetChGains(IEditor int double double double double double double double double double)
static tp_obj zzpy_audioSetChannelGains(TP)
{
  tp_obj self = tp_getraw(tp);
  IScriptEngine *engine = (IScriptEngine*)tp_get(tp, tp->builtins, tp_string("userdata")).data.val;
  IEditor *editor = engine->editor();
  TinyParams pm(tp);
  void *me = (void *)pm.asThis(&self, ADM_PYID_AVIDEMUX);

  IEditor *p0 = editor;
  int p1 = pm.asInt();
  double p2 = pm.asDouble();
  double p3 = pm.asDouble();
  double p4 = pm.asDouble();
  double p5 = pm.asDouble();
  double p6 = pm.asDouble();
  double p7 = pm.asDouble();
  double p8 = pm.asDouble();
  double p9 = pm.asDouble();
  double p10 = pm.asDouble();
  int r = pySetChGains(p0, p1, p2, p3, p4, p5, p6, p7, p8, p9, p10);
  return tp_number(r);
}
// audioSetChannelRemap -> int pySetChRemap(IEditor int int int int int int int int int int int)
static tp_obj zzpy_audioSetChannelRemap(TP)
{
  tp_obj self = tp_getraw(tp);
  IScriptEngine *engine = (IScriptEngine*)tp_get(tp, tp->builtins, tp_string("userdata")).data.val;
  IEditor *editor = engine->editor();
  TinyParams pm(tp);
  void *me = (void *)pm.asThis(&self, ADM_PYID_AVIDEMUX);

  IEditor *p0 = editor;
  int p1 = pm.asInt();
  int p2 = pm.asInt();
  int p3 = pm.asInt();
  int p4 = pm.asInt();
  int p5 = pm.asInt();
  int p6 = pm.asInt();
  int p7 = pm.asInt();
  int p8 = pm.asInt();
  int p9 = pm.asInt();
  int p10 = pm.asInt();
  int p11 = pm.asInt();
  int r = pySetChRemap(p0, p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11);
  return tp_number(r);
}
// audioSetCustomFrameRate -> int pySetCustomAudioFrameRate(IEditor int double double)
static tp_obj zzpy_audioSetCustomFrameRate(TP)
{
  tp_obj self = tp_getraw(tp);
  IScriptEngine *engine = (IScriptEngine*)tp_get(tp, tp->builtins, tp_string("userdata")).data.val;
  IEditor *editor = engine->editor();
  TinyParams pm(tp);
  void *me = (void *)pm.asThis(&self, ADM_PYID_AVIDEMUX);

  IEditor *p0 = editor;
  int p1 = pm.asInt();
  double p2 = pm.asDouble();
  double p3 = pm.asDouble();
  int r = pySetCustomAudioFrameRate(p0, p1, p2, p3);
  return tp_number(r);
}
// audioSetDrc -> int pySetDrc(IEditor int int)
static tp_obj zzpy_audioSetDrc(TP)
{
  tp_obj self = tp_getraw(tp);
  IScriptEngine *engine = (IScriptEngine*)tp_get(tp, tp->builtins, tp_string("userdata")).data.val;
  IEditor *editor = engine->editor();
  TinyParams pm(tp);
  void *me = (void *)pm.asThis(&self, ADM_PYID_AVIDEMUX);

  IEditor *p0 = editor;
  int p1 = pm.asInt();
  int p2 = pm.asInt();
  int r = pySetDrc(p0, p1, p2);
  return tp_number(r);
}
// audioSetDrc2 -> int pySetDrc2(IEditor int int int double double double double double)
static tp_obj zzpy_audioSetDrc2(TP)
{
  tp_obj self = tp_getraw(tp);
  IScriptEngine *engine = (IScriptEngine*)tp_get(tp, tp->builtins, tp_string("userdata")).data.val;
  IEditor *editor = engine->editor();
  TinyParams pm(tp);
  void *me = (void *)pm.asThis(&self, ADM_PYID_AVIDEMUX);

  IEditor *p0 = editor;
  int p1 = pm.asInt();
  int p2 = pm.asInt();
  int p3 = pm.asInt();
  double p4 = pm.asDouble();
  double p5 = pm.asDouble();
  double p6 = pm.asDouble();
  double p7 = pm.asDouble();
  double p8 = pm.asDouble();
  int r = pySetDrc2(p0, p1, p2, p3, p4, p5, p6, p7, p8);
  return tp_number(r);
}
// audioSetEq -> int pySetEq(IEditor int int double double double double double)
static tp_obj zzpy_audioSetEq(TP)
{
  tp_obj self = tp_getraw(tp);
  IScriptEngine *engine = (IScriptEngine*)tp_get(tp, tp->builtins, tp_string("userdata")).data.val;
  IEditor *editor = engine->editor();
  TinyParams pm(tp);
  void *me = (void *)pm.asThis(&self, ADM_PYID_AVIDEMUX);

  IEditor *p0 = editor;
  int p1 = pm.asInt();
  int p2 = pm.asInt();
  double p3 = pm.asDouble();
  double p4 = pm.asDouble();
  double p5 = pm.asDouble();
  double p6 = pm.asDouble();
  double p7 = pm.asDouble();
  int r = pySetEq(p0, p1, p2, p3, p4, p5, p6, p7);
  return tp_number(r);
}
// audioSetFilm2Pal -> int pySetFilm2Pal(IEditor int int)
static tp_obj zzpy_audioSetFilm2Pal(TP)
{
  tp_obj self = tp_getraw(tp);
  IScriptEngine *engine = (IScriptEngine*)tp_get(tp, tp->builtins, tp_string("userdata")).data.val;
  IEditor *editor = engine->editor();
  TinyParams pm(tp);
  void *me = (void *)pm.asThis(&self, ADM_PYID_AVIDEMUX);

  IEditor *p0 = editor;
  int p1 = pm.asInt();
  int p2 = pm.asInt();
  int r = pySetFilm2Pal(p0, p1, p2);
  return tp_number(r);
}
// audioSetMixer -> int editor->setAudioMixer(int str)
static tp_obj zzpy_audioSetMixer(TP)
{
  tp_obj self = tp_getraw(tp);
  IScriptEngine *engine = (IScriptEngine*)tp_get(tp, tp->builtins, tp_string("userdata")).data.val;
  IEditor *editor = engine->editor();
  TinyParams pm(tp);
  void *me = (void *)pm.asThis(&self, ADM_PYID_AVIDEMUX);

  int p0 = pm.asInt();
  const char *p1 = pm.asString();
  int r = editor->setAudioMixer(p0, p1);
  return tp_number(r);
}
// audioSetNormalize -> int pySetNormalize(IEditor int int int)
static tp_obj zzpy_audioSetNormalize(TP)
{
  tp_obj self = tp_getraw(tp);
  IScriptEngine *engine = (IScriptEngine*)tp_get(tp, tp->builtins, tp_string("userdata")).data.val;
  IEditor *editor = engine->editor();
  TinyParams pm(tp);
  void *me = (void *)pm.asThis(&self, ADM_PYID_AVIDEMUX);

  IEditor *p0 = editor;
  int p1 = pm.asInt();
  int p2 = pm.asInt();
  int p3 = pm.asInt();
  int r = pySetNormalize(p0, p1, p2, p3);
  return tp_number(r);
}
// audioSetNormalize2 -> int pySetNormalize2(IEditor int int int int)
static tp_obj zzpy_audioSetNormalize2(TP)
{
  tp_obj self = tp_getraw(tp);
  IScriptEngine *engine = (IScriptEngine*)tp_get(tp, tp->builtins, tp_string("userdata")).data.val;
  IEditor *editor = engine->editor();
  TinyParams pm(tp);
  void *me = (void *)pm.asThis(&self, ADM_PYID_AVIDEMUX);

  IEditor *p0 = editor;
  int p1 = pm.asInt();
  int p2 = pm.asInt();
  int p3 = pm.asInt();
  int p4 = pm.asInt();
  int r = pySetNormalize2(p0, p1, p2, p3, p4);
  return tp_number(r);
}
// audioSetPal2Film -> int pySetPal2Film(IEditor int int)
static tp_obj zzpy_audioSetPal2Film(TP)
{
  tp_obj self = tp_getraw(tp);
  IScriptEngine *engine = (IScriptEngine*)tp_get(tp, tp->builtins, tp_string("userdata")).data.val;
  IEditor *editor = engine->editor();
  TinyParams pm(tp);
  void *me = (void *)pm.asThis(&self, ADM_PYID_AVIDEMUX);

  IEditor *p0 = editor;
  int p1 = pm.asInt();
  int p2 = pm.asInt();
  int r = pySetPal2Film(p0, p1, p2);
  return tp_number(r);
}
// audioSetResample -> int pySetResample(IEditor int int)
static tp_obj zzpy_audioSetResample(TP)
{
  tp_obj self = tp_getraw(tp);
  IScriptEngine *engine = (IScriptEngine*)tp_get(tp, tp->builtins, tp_string("userdata")).data.val;
  IEditor *editor = engine->editor();
  TinyParams pm(tp);
  void *me = (void *)pm.asThis(&self, ADM_PYID_AVIDEMUX);

  IEditor *p0 = editor;
  int p1 = pm.asInt();
  int p2 = pm.asInt();
  int r = pySetResample(p0, p1, p2);
  return tp_number(r);
}
// audioSetShift -> int pySetAudioShift(IEditor int int int)
static tp_obj zzpy_audioSetShift(TP)
{
  tp_obj self = tp_getraw(tp);
  IScriptEngine *engine = (IScriptEngine*)tp_get(tp, tp->builtins, tp_string("userdata")).data.val;
  IEditor *editor = engine->editor();
  TinyParams pm(tp);
  void *me = (void *)pm.asThis(&self, ADM_PYID_AVIDEMUX);

  IEditor *p0 = editor;
  int p1 = pm.asInt();
  int p2 = pm.asInt();
  int p3 = pm.asInt();
  int r = pySetAudioShift(p0, p1, p2, p3);
  return tp_number(r);
}
// audioTotalTracksCount -> int pyGetNumberOfAvailableAudioTracks(IEditor)
static tp_obj zzpy_audioTotalTracksCount(TP)
{
  tp_obj self = tp_getraw(tp);
  IScriptEngine *engine = (IScriptEngine*)tp_get(tp, tp->builtins, tp_string("userdata")).data.val;
  IEditor *editor = engine->editor();
  TinyParams pm(tp);
  void *me = (void *)pm.asThis(&self, ADM_PYID_AVIDEMUX);

  IEditor *p0 = editor;
  int r = pyGetNumberOfAvailableAudioTracks(p0);
  return tp_number(r);
}
// audioTracksCount -> int pyGetNumberOfAudioTracks(IEditor)
static tp_obj zzpy_audioTracksCount(TP)
{
  tp_obj self = tp_getraw(tp);
  IScriptEngine *engine = (IScriptEngine*)tp_get(tp, tp->builtins, tp_string("userdata")).data.val;
  IEditor *editor = engine->editor();
  TinyParams pm(tp);
  void *me = (void *)pm.asThis(&self, ADM_PYID_AVIDEMUX);

  IEditor *p0 = editor;
  int r = pyGetNumberOfAudioTracks(p0);
  return tp_number(r);
}
// clearSegments -> int editor->clearSegment(void)
static tp_obj zzpy_clearSegments(TP)
{
  tp_obj self = tp_getraw(tp);
  IScriptEngine *engine = (IScriptEngine*)tp_get(tp, tp->builtins, tp_string("userdata")).data.val;
  IEditor *editor = engine->editor();
  TinyParams pm(tp);
  void *me = (void *)pm.asThis(&self, ADM_PYID_AVIDEMUX);

  int r = editor->clearSegment();
  return tp_number(r);
}
// clearVideoFilters -> void editor->clearFilters(void)
static tp_obj zzpy_clearVideoFilters(TP)
{
  tp_obj self = tp_getraw(tp);
  IScriptEngine *engine = (IScriptEngine*)tp_get(tp, tp->builtins, tp_string("userdata")).data.val;
  IEditor *editor = engine->editor();
  TinyParams pm(tp);
  void *me = (void *)pm.asThis(&self, ADM_PYID_AVIDEMUX);

  editor->clearFilters();
  return tp_None;
}
// closeVideo -> void editor->closeFile(void)
static tp_obj zzpy_closeVideo(TP)
{
  tp_obj self = tp_getraw(tp);
  IScriptEngine *engine = (IScriptEngine*)tp_get(tp, tp->builtins, tp_string("userdata")).data.val;
  IEditor *editor = engine->editor();
  TinyParams pm(tp);
  void *me = (void *)pm.asThis(&self, ADM_PYID_AVIDEMUX);

  editor->closeFile();
  return tp_None;
}
// getFps1000 -> int pyGetFps1000(IEditor)
static tp_obj zzpy_getFps1000(TP)
{
  tp_obj self = tp_getraw(tp);
  IScriptEngine *engine = (IScriptEngine*)tp_get(tp, tp->builtins, tp_string("userdata")).data.val;
  IEditor *editor = engine->editor();
  TinyParams pm(tp);
  void *me = (void *)pm.asThis(&self, ADM_PYID_AVIDEMUX);

  IEditor *p0 = editor;
  int r = pyGetFps1000(p0);
  return tp_number(r);
}
// getHeight -> int pyGetHeight(IEditor)
static tp_obj zzpy_getHeight(TP)
{
  tp_obj self = tp_getraw(tp);
  IScriptEngine *engine = (IScriptEngine*)tp_get(tp, tp->builtins, tp_string("userdata")).data.val;
  IEditor *editor = engine->editor();
  TinyParams pm(tp);
  void *me = (void *)pm.asThis(&self, ADM_PYID_AVIDEMUX);

  IEditor *p0 = editor;
  int r = pyGetHeight(p0);
  return tp_number(r);
}
// getOutputExtension -> str pyGetContainerEx(IEditor)
static tp_obj zzpy_getOutputExtension(TP)
{
  tp_obj self = tp_getraw(tp);
  IScriptEngine *engine = (IScriptEngine*)tp_get(tp, tp->builtins, tp_string("userdata")).data.val;
  IEditor *editor = engine->editor();
  TinyParams pm(tp);
  void *me = (void *)pm.asThis(&self, ADM_PYID_AVIDEMUX);

  IEditor *p0 = editor;
  char *r = pyGetContainerEx(p0);
  if(!r) return tp_None;

  tp_obj o = tp_string_copy(tp, r, strlen(r));
  ADM_dealloc(r);
  return o;
}
// getPARHeight -> int editor->getPARHeight(void)
static tp_obj zzpy_getPARHeight(TP)
{
  tp_obj self = tp_getraw(tp);
  IScriptEngine *engine = (IScriptEngine*)tp_get(tp, tp->builtins, tp_string("userdata")).data.val;
  IEditor *editor = engine->editor();
  TinyParams pm(tp);
  void *me = (void *)pm.asThis(&self, ADM_PYID_AVIDEMUX);

  int r = editor->getPARHeight();
  return tp_number(r);
}
// getPARWidth -> int editor->getPARWidth(void)
static tp_obj zzpy_getPARWidth(TP)
{
  tp_obj self = tp_getraw(tp);
  IScriptEngine *engine = (IScriptEngine*)tp_get(tp, tp->builtins, tp_string("userdata")).data.val;
  IEditor *editor = engine->editor();
  TinyParams pm(tp);
  void *me = (void *)pm.asThis(&self, ADM_PYID_AVIDEMUX);

  int r = editor->getPARWidth();
  return tp_number(r);
}
// getVideoCodec -> str editor->getVideoCodec(void)
static tp_obj zzpy_getVideoCodec(TP)
{
  tp_obj self = tp_getraw(tp);
  IScriptEngine *engine = (IScriptEngine*)tp_get(tp, tp->builtins, tp_string("userdata")).data.val;
  IEditor *editor = engine->editor();
  TinyParams pm(tp);
  void *me = (void *)pm.asThis(&self, ADM_PYID_AVIDEMUX);

  char *r = editor->getVideoCodec();
  if(!r) return tp_None;

  tp_obj o = tp_string_copy(tp, r, strlen(r));
  ADM_dealloc(r);
  return o;
}
// getWidth -> int pyGetWidth(IEditor)
static tp_obj zzpy_getWidth(TP)
{
  tp_obj self = tp_getraw(tp);
  IScriptEngine *engine = (IScriptEngine*)tp_get(tp, tp->builtins, tp_string("userdata")).data.val;
  IEditor *editor = engine->editor();
  TinyParams pm(tp);
  void *me = (void *)pm.asThis(&self, ADM_PYID_AVIDEMUX);

  IEditor *p0 = editor;
  int r = pyGetWidth(p0);
  return tp_number(r);
}
// isFileOpen -> int editor->isFileOpen(void)
static tp_obj zzpy_isFileOpen(TP)
{
  tp_obj self = tp_getraw(tp);
  IScriptEngine *engine = (IScriptEngine*)tp_get(tp, tp->builtins, tp_string("userdata")).data.val;
  IEditor *editor = engine->editor();
  TinyParams pm(tp);
  void *me = (void *)pm.asThis(&self, ADM_PYID_AVIDEMUX);

  int r = editor->isFileOpen();
  return tp_number(r);
}
// loadVideo -> int editor->openFile(str)
static tp_obj zzpy_loadVideo(TP)
{
  tp_obj self = tp_getraw(tp);
  IScriptEngine *engine = (IScriptEngine*)tp_get(tp, tp->builtins, tp_string("userdata")).data.val;
  IEditor *editor = engine->editor();
  TinyParams pm(tp);
  void *me = (void *)pm.asThis(&self, ADM_PYID_AVIDEMUX);

  const char *p0 = pm.asString();
  int r = editor->openFile(p0);
  return tp_number(r);
}
// pyVersion -> int pyVersion(IEditor)
static tp_obj zzpy_pyVersion(TP)
{
  tp_obj self = tp_getraw(tp);
  IScriptEngine *engine = (IScriptEngine*)tp_get(tp, tp->builtins, tp_string("userdata")).data.val;
  IEditor *editor = engine->editor();
  TinyParams pm(tp);
  void *me = (void *)pm.asThis(&self, ADM_PYID_AVIDEMUX);

  IEditor *p0 = editor;
  int r = pyVersion(p0);
  return tp_number(r);
}
// save -> int editor->saveFile(str)
static tp_obj zzpy_save(TP)
{
  tp_obj self = tp_getraw(tp);
  IScriptEngine *engine = (IScriptEngine*)tp_get(tp, tp->builtins, tp_string("userdata")).data.val;
  IEditor *editor = engine->editor();
  TinyParams pm(tp);
  void *me = (void *)pm.asThis(&self, ADM_PYID_AVIDEMUX);

  const char *p0 = pm.asString();
  int r = editor->saveFile(p0);
  return tp_number(r);
}
// saveAudio -> int editor->saveAudio(int str)
static tp_obj zzpy_saveAudio(TP)
{
  tp_obj self = tp_getraw(tp);
  IScriptEngine *engine = (IScriptEngine*)tp_get(tp, tp->builtins, tp_string("userdata")).data.val;
  IEditor *editor = engine->editor();
  TinyParams pm(tp);
  void *me = (void *)pm.asThis(&self, ADM_PYID_AVIDEMUX);

  int p0 = pm.asInt();
  const char *p1 = pm.asString();
  int r = editor->saveAudio(p0, p1);
  return tp_number(r);
}
// saveBmp -> int editor->saveImageBmp(str)
static tp_obj zzpy_saveBmp(TP)
{
  tp_obj self = tp_getraw(tp);
  IScriptEngine *engine = (IScriptEngine*)tp_get(tp, tp->builtins, tp_string("userdata")).data.val;
  IEditor *editor = engine->editor();
  TinyParams pm(tp);
  void *me = (void *)pm.asThis(&self, ADM_PYID_AVIDEMUX);

  const char *p0 = pm.asString();
  int r = editor->saveImageBmp(p0);
  return tp_number(r);
}
// saveJpeg -> int editor->saveImageJpg(str)
static tp_obj zzpy_saveJpeg(TP)
{
  tp_obj self = tp_getraw(tp);
  IScriptEngine *engine = (IScriptEngine*)tp_get(tp, tp->builtins, tp_string("userdata")).data.val;
  IEditor *editor = engine->editor();
  TinyParams pm(tp);
  void *me = (void *)pm.asThis(&self, ADM_PYID_AVIDEMUX);

  const char *p0 = pm.asString();
  int r = editor->saveImageJpg(p0);
  return tp_number(r);
}
// savePng -> int editor->saveImagePng(str)
static tp_obj zzpy_savePng(TP)
{
  tp_obj self = tp_getraw(tp);
  IScriptEngine *engine = (IScriptEngine*)tp_get(tp, tp->builtins, tp_string("userdata")).data.val;
  IEditor *editor = engine->editor();
  TinyParams pm(tp);
  void *me = (void *)pm.asThis(&self, ADM_PYID_AVIDEMUX);

  const char *p0 = pm.asString();
  int r = editor->saveImagePng(p0);
  return tp_number(r);
}
// seekBlackFrame -> void editor->seekBlackFrame(int)
static tp_obj zzpy_seekBlackFrame(TP)
{
  tp_obj self = tp_getraw(tp);
  IScriptEngine *engine = (IScriptEngine*)tp_get(tp, tp->builtins, tp_string("userdata")).data.val;
  IEditor *editor = engine->editor();
  TinyParams pm(tp);
  void *me = (void *)pm.asThis(&self, ADM_PYID_AVIDEMUX);

  int p0 = pm.asInt();
  editor->seekBlackFrame(p0);
  return tp_None;
}
// seekFrame -> int editor->seekFrame(int)
static tp_obj zzpy_seekFrame(TP)
{
  tp_obj self = tp_getraw(tp);
  IScriptEngine *engine = (IScriptEngine*)tp_get(tp, tp->builtins, tp_string("userdata")).data.val;
  IEditor *editor = engine->editor();
  TinyParams pm(tp);
  void *me = (void *)pm.asThis(&self, ADM_PYID_AVIDEMUX);

  int p0 = pm.asInt();
  int r = editor->seekFrame(p0);
  return tp_number(r);
}
// seekKeyFrame -> int editor->seekKeyFrame(int)
static tp_obj zzpy_seekKeyFrame(TP)
{
  tp_obj self = tp_getraw(tp);
  IScriptEngine *engine = (IScriptEngine*)tp_get(tp, tp->builtins, tp_string("userdata")).data.val;
  IEditor *editor = engine->editor();
  TinyParams pm(tp);
  void *me = (void *)pm.asThis(&self, ADM_PYID_AVIDEMUX);

  int p0 = pm.asInt();
  int r = editor->seekKeyFrame(p0);
  return tp_number(r);
}
// setContainer -> int editor->setContainer(str couples)
static tp_obj zzpy_setContainer(TP)
{
  tp_obj self = tp_getraw(tp);
  IScriptEngine *engine = (IScriptEngine*)tp_get(tp, tp->builtins, tp_string("userdata")).data.val;
  IEditor *editor = engine->editor();
  TinyParams pm(tp);
  void *me = (void *)pm.asThis(&self, ADM_PYID_AVIDEMUX);

  const char *p0 = pm.asString();
  CONFcouple *p1 = NULL;
  pm.makeCouples(&p1);
  int r = editor->setContainer(p0, p1);
  return tp_number(r);
}
// setCurrentPts -> int editor->setCurrentFramePts(double)
static tp_obj zzpy_setCurrentPts(TP)
{
  tp_obj self = tp_getraw(tp);
  IScriptEngine *engine = (IScriptEngine*)tp_get(tp, tp->builtins, tp_string("userdata")).data.val;
  IEditor *editor = engine->editor();
  TinyParams pm(tp);
  void *me = (void *)pm.asThis(&self, ADM_PYID_AVIDEMUX);

  double p0 = pm.asDouble();
  int r = editor->setCurrentFramePts(p0);
  return tp_number(r);
}
// setHDRConfig -> int editor->setHDRConfig(int double double int int)
static tp_obj zzpy_setHDRConfig(TP)
{
  tp_obj self = tp_getraw(tp);
  IScriptEngine *engine = (IScriptEngine*)tp_get(tp, tp->builtins, tp_string("userdata")).data.val;
  IEditor *editor = engine->editor();
  TinyParams pm(tp);
  void *me = (void *)pm.asThis(&self, ADM_PYID_AVIDEMUX);

  int p0 = pm.asInt();
  double p1 = pm.asDouble();
  double p2 = pm.asDouble();
  int p3 = pm.asInt();
  int p4 = pm.asInt();
  int r = editor->setHDRConfig(p0, p1, p2, p3, p4);
  return tp_number(r);
}
// setPostProc -> int editor->setPostProc(int int int)
static tp_obj zzpy_setPostProc(TP)
{
  tp_obj self = tp_getraw(tp);
  IScriptEngine *engine = (IScriptEngine*)tp_get(tp, tp->builtins, tp_string("userdata")).data.val;
  IEditor *editor = engine->editor();
  TinyParams pm(tp);
  void *me = (void *)pm.asThis(&self, ADM_PYID_AVIDEMUX);

  int p0 = pm.asInt();
  int p1 = pm.asInt();
  int p2 = pm.asInt();
  int r = editor->setPostProc(p0, p1, p2);
  return tp_number(r);
}
// setSourceTrackLanguage -> int editor->audioSetAudioPoolLanguage(int str)
static tp_obj zzpy_setSourceTrackLanguage(TP)
{
  tp_obj self = tp_getraw(tp);
  IScriptEngine *engine = (IScriptEngine*)tp_get(tp, tp->builtins, tp_string("userdata")).data.val;
  IEditor *editor = engine->editor();
  TinyParams pm(tp);
  void *me = (void *)pm.asThis(&self, ADM_PYID_AVIDEMUX);

  int p0 = pm.asInt();
  const char *p1 = pm.asString();
  int r = editor->audioSetAudioPoolLanguage(p0, p1);
  return tp_number(r);
}
// videoCodec -> int editor->setVideoCodec(str couples)
static tp_obj zzpy_videoCodec(TP)
{
  tp_obj self = tp_getraw(tp);
  IScriptEngine *engine = (IScriptEngine*)tp_get(tp, tp->builtins, tp_string("userdata")).data.val;
  IEditor *editor = engine->editor();
  TinyParams pm(tp);
  void *me = (void *)pm.asThis(&self, ADM_PYID_AVIDEMUX);

  const char *p0 = pm.asString();
  CONFcouple *p1 = NULL;
  pm.makeCouples(&p1);
  int r = editor->setVideoCodec(p0, p1);
  return tp_number(r);
}
// videoCodecChangeParam -> int editor->changeVideoParam(str couples)
static tp_obj zzpy_videoCodecChangeParam(TP)
{
  tp_obj self = tp_getraw(tp);
  IScriptEngine *engine = (IScriptEngine*)tp_get(tp, tp->builtins, tp_string("userdata")).data.val;
  IEditor *editor = engine->editor();
  TinyParams pm(tp);
  void *me = (void *)pm.asThis(&self, ADM_PYID_AVIDEMUX);

  const char *p0 = pm.asString();
  CONFcouple *p1 = NULL;
  pm.makeCouples(&p1);
  int r = editor->changeVideoParam(p0, p1);
  return tp_number(r);
}
// videoCodecSetProfile -> int editor->setVideoCodecProfile(str str)
static tp_obj zzpy_videoCodecSetProfile(TP)
{
  tp_obj self = tp_getraw(tp);
  IScriptEngine *engine = (IScriptEngine*)tp_get(tp, tp->builtins, tp_string("userdata")).data.val;
  IEditor *editor = engine->editor();
  TinyParams pm(tp);
  void *me = (void *)pm.asThis(&self, ADM_PYID_AVIDEMUX);

  const char *p0 = pm.asString();
  const char *p1 = pm.asString();
  int r = editor->setVideoCodecProfile(p0, p1);
  return tp_number(r);
}
tp_obj zzpy__pyAvidemux_get(tp_vm *vm)
{
  tp_obj self = tp_getraw(vm);
  IScriptEngine *engine = (IScriptEngine*)tp_get(vm, vm->builtins, tp_string("userdata")).data.val;
  IEditor *editor = engine->editor();
  TinyParams pm(vm);
  void *me = (void *)pm.asThis(&self, ADM_PYID_AVIDEMUX);
  char const *key = pm.asString();
  if (!strcmp(key, "markerA"))
  {
     return tp_number(editor->getMarkerAPts());
  }
  if (!strcmp(key, "markerB"))
  {
     return tp_number(editor->getMarkerBPts());
  }
  if (!strcmp(key, "addSegment"))
  {
    return tp_method(vm, self, zzpy_addSegment);
  }
  if (!strcmp(key, "addVideoFilter"))
  {
    return tp_method(vm, self, zzpy_addVideoFilter);
  }
  if (!strcmp(key, "appendVideo"))
  {
    return tp_method(vm, self, zzpy_appendVideo);
  }
  if (!strcmp(key, "audioAddExternal"))
  {
    return tp_method(vm, self, zzpy_audioAddExternal);
  }
  if (!strcmp(key, "audioAddTrack"))
  {
    return tp_method(vm, self, zzpy_audioAddTrack);
  }
  if (!strcmp(key, "audioBitrate"))
  {
    return tp_method(vm, self, zzpy_audioBitrate);
  }
  if (!strcmp(key, "audioChannels"))
  {
    return tp_method(vm, self, zzpy_audioChannels);
  }
  if (!strcmp(key, "audioClearTracks"))
  {
    return tp_method(vm, self, zzpy_audioClearTracks);
  }
  if (!strcmp(key, "audioCodec"))
  {
    return tp_method(vm, self, zzpy_audioCodec);
  }
  if (!strcmp(key, "audioEncoding"))
  {
    return tp_method(vm, self, zzpy_audioEncoding);
  }
  if (!strcmp(key, "audioFrequency"))
  {
    return tp_method(vm, self, zzpy_audioFrequency);
  }
  if (!strcmp(key, "audioGetResample"))
  {
    return tp_method(vm, self, zzpy_audioGetResample);
  }
  if (!strcmp(key, "audioResetFilter"))
  {
    return tp_method(vm, self, zzpy_audioResetFilter);
  }
  if (!strcmp(key, "audioSetChannelDelays"))
  {
    return tp_method(vm, self, zzpy_audioSetChannelDelays);
  }
  if (!strcmp(key, "audioSetChannelGains"))
  {
    return tp_method(vm, self, zzpy_audioSetChannelGains);
  }
  if (!strcmp(key, "audioSetChannelRemap"))
  {
    return tp_method(vm, self, zzpy_audioSetChannelRemap);
  }
  if (!strcmp(key, "audioSetCustomFrameRate"))
  {
    return tp_method(vm, self, zzpy_audioSetCustomFrameRate);
  }
  if (!strcmp(key, "audioSetDrc"))
  {
    return tp_method(vm, self, zzpy_audioSetDrc);
  }
  if (!strcmp(key, "audioSetDrc2"))
  {
    return tp_method(vm, self, zzpy_audioSetDrc2);
  }
  if (!strcmp(key, "audioSetEq"))
  {
    return tp_method(vm, self, zzpy_audioSetEq);
  }
  if (!strcmp(key, "audioSetFilm2Pal"))
  {
    return tp_method(vm, self, zzpy_audioSetFilm2Pal);
  }
  if (!strcmp(key, "audioSetMixer"))
  {
    return tp_method(vm, self, zzpy_audioSetMixer);
  }
  if (!strcmp(key, "audioSetNormalize"))
  {
    return tp_method(vm, self, zzpy_audioSetNormalize);
  }
  if (!strcmp(key, "audioSetNormalize2"))
  {
    return tp_method(vm, self, zzpy_audioSetNormalize2);
  }
  if (!strcmp(key, "audioSetPal2Film"))
  {
    return tp_method(vm, self, zzpy_audioSetPal2Film);
  }
  if (!strcmp(key, "audioSetResample"))
  {
    return tp_method(vm, self, zzpy_audioSetResample);
  }
  if (!strcmp(key, "audioSetShift"))
  {
    return tp_method(vm, self, zzpy_audioSetShift);
  }
  if (!strcmp(key, "audioTotalTracksCount"))
  {
    return tp_method(vm, self, zzpy_audioTotalTracksCount);
  }
  if (!strcmp(key, "audioTracksCount"))
  {
    return tp_method(vm, self, zzpy_audioTracksCount);
  }
  if (!strcmp(key, "clearSegments"))
  {
    return tp_method(vm, self, zzpy_clearSegments);
  }
  if (!strcmp(key, "clearVideoFilters"))
  {
    return tp_method(vm, self, zzpy_clearVideoFilters);
  }
  if (!strcmp(key, "closeVideo"))
  {
    return tp_method(vm, self, zzpy_closeVideo);
  }
  if (!strcmp(key, "getFps1000"))
  {
    return tp_method(vm, self, zzpy_getFps1000);
  }
  if (!strcmp(key, "getHeight"))
  {
    return tp_method(vm, self, zzpy_getHeight);
  }
  if (!strcmp(key, "getOutputExtension"))
  {
    return tp_method(vm, self, zzpy_getOutputExtension);
  }
  if (!strcmp(key, "getPARHeight"))
  {
    return tp_method(vm, self, zzpy_getPARHeight);
  }
  if (!strcmp(key, "getPARWidth"))
  {
    return tp_method(vm, self, zzpy_getPARWidth);
  }
  if (!strcmp(key, "getVideoCodec"))
  {
    return tp_method(vm, self, zzpy_getVideoCodec);
  }
  if (!strcmp(key, "getWidth"))
  {
    return tp_method(vm, self, zzpy_getWidth);
  }
  if (!strcmp(key, "isFileOpen"))
  {
    return tp_method(vm, self, zzpy_isFileOpen);
  }
  if (!strcmp(key, "loadVideo"))
  {
    return tp_method(vm, self, zzpy_loadVideo);
  }
  if (!strcmp(key, "pyVersion"))
  {
    return tp_method(vm, self, zzpy_pyVersion);
  }
  if (!strcmp(key, "save"))
  {
    return tp_method(vm, self, zzpy_save);
  }
  if (!strcmp(key, "saveAudio"))
  {
    return tp_method(vm, self, zzpy_saveAudio);
  }
  if (!strcmp(key, "saveBmp"))
  {
    return tp_method(vm, self, zzpy_saveBmp);
  }
  if (!strcmp(key, "saveJpeg"))
  {
    return tp_method(vm, self, zzpy_saveJpeg);
  }
  if (!strcmp(key, "savePng"))
  {
    return tp_method(vm, self, zzpy_savePng);
  }
  if (!strcmp(key, "seekBlackFrame"))
  {
    return tp_method(vm, self, zzpy_seekBlackFrame);
  }
  if (!strcmp(key, "seekFrame"))
  {
    return tp_method(vm, self, zzpy_seekFrame);
  }
  if (!strcmp(key, "seekKeyFrame"))
  {
    return tp_method(vm, self, zzpy_seekKeyFrame);
  }
  if (!strcmp(key, "setContainer"))
  {
    return tp_method(vm, self, zzpy_setContainer);
  }
  if (!strcmp(key, "setCurrentPts"))
  {
    return tp_method(vm, self, zzpy_setCurrentPts);
  }
  if (!strcmp(key, "setHDRConfig"))
  {
    return tp_method(vm, self, zzpy_setHDRConfig);
  }
  if (!strcmp(key, "setPostProc"))
  {
    return tp_method(vm, self, zzpy_setPostProc);
  }
  if (!strcmp(key, "setSourceTrackLanguage"))
  {
    return tp_method(vm, self, zzpy_setSourceTrackLanguage);
  }
  if (!strcmp(key, "videoCodec"))
  {
    return tp_method(vm, self, zzpy_videoCodec);
  }
  if (!strcmp(key, "videoCodecChangeParam"))
  {
    return tp_method(vm, self, zzpy_videoCodecChangeParam);
  }
  if (!strcmp(key, "videoCodecSetProfile"))
  {
    return tp_method(vm, self, zzpy_videoCodecSetProfile);
  }
  return tp_get(vm, self, tp_string(key));
}
tp_obj zzpy__pyAvidemux_set(tp_vm *vm)
{
  tp_obj self = tp_getraw(vm);
  IScriptEngine *engine = (IScriptEngine*)tp_get(vm, vm->builtins, tp_string("userdata")).data.val;
  IEditor *editor = engine->editor();
  TinyParams pm(vm);
  void *me = (void *)pm.asThis(&self, ADM_PYID_AVIDEMUX);
  char const *key = pm.asString();
  if (!strcmp(key, "markerA"))
  {
     double val = pm.asDouble();
     editor->setMarkerAPts(val);
     return tp_None;
  }
  if (!strcmp(key, "markerB"))
  {
     double val = pm.asDouble();
     editor->setMarkerBPts(val);
     return tp_None;
  }
  return tp_None;
}
// Dctor
static void myDtorpyAvidemux(tp_vm *vm,tp_obj self)
{
}
// Ctor ()
static tp_obj myCtorpyAvidemux(tp_vm *vm)
{
  tp_obj self = tp_getraw(vm);
  TinyParams pm(vm);
  void *me = NULL;
  tp_obj cdata = tp_data(vm, ADM_PYID_AVIDEMUX, me);
  cdata.data.info->xfree = myDtorpyAvidemux;
  tp_set(vm, self, tp_string("cdata"), cdata);
  return tp_None;
}
static tp_obj zzpy__pyAvidemux_help(TP)
{
  PythonEngine *engine = (PythonEngine*)tp_get(tp, tp->builtins, tp_string("userdata")).data.val;

  engine->callEventHandlers(IScriptEngine::Information, NULL, -1, "constructor:\n");
  engine->callEventHandlers(IScriptEngine::Information, NULL, -1, "obj	Avidemux()\n");
  engine->callEventHandlers(IScriptEngine::Information, NULL, -1, "methods:\n");
  engine->callEventHandlers(IScriptEngine::Information, NULL, -1, "int\t addSegment(int ref, double startRef, double duration)\n");
  engine->callEventHandlers(IScriptEngine::Information, NULL, -1, "int\t addVideoFilter(str filter, couples)\n");
  engine->callEventHandlers(IScriptEngine::Information, NULL, -1, "int\t appendVideo(str fileName)\n");
  engine->callEventHandlers(IScriptEngine::Information, NULL, -1, "int\t audioAddExternal(str fileName)\n");
  engine->callEventHandlers(IScriptEngine::Information, NULL, -1, "int\t audioAddTrack(int track)\n");
  engine->callEventHandlers(IScriptEngine::Information, NULL, -1, "int\t audioBitrate(int track)\n");
  engine->callEventHandlers(IScriptEngine::Information, NULL, -1, "int\t audioChannels(int track)\n");
  engine->callEventHandlers(IScriptEngine::Information, NULL, -1, "int\t audioClearTracks()\n");
  engine->callEventHandlers(IScriptEngine::Information, NULL, -1, "int\t audioCodec(int track, str codec, couples)\n");
  engine->callEventHandlers(IScriptEngine::Information, NULL, -1, "int\t audioEncoding(int track)\n");
  engine->callEventHandlers(IScriptEngine::Information, NULL, -1, "int\t audioFrequency(int track)\n");
  engine->callEventHandlers(IScriptEngine::Information, NULL, -1, "int\t audioGetResample(int track)\n");
  engine->callEventHandlers(IScriptEngine::Information, NULL, -1, "void\t audioResetFilter(int track)\n");
  engine->callEventHandlers(IScriptEngine::Information, NULL, -1, "int\t audioSetChannelDelays(int track, int frontLeft, int frontRight, int frontCenter, int sideLeft, int sideRight, int rearLeft, int rearRight, int rearCenter, int LFE)\n");
  engine->callEventHandlers(IScriptEngine::Information, NULL, -1, "int\t audioSetChannelGains(int track, double frontLeft, double frontRight, double frontCenter, double sideLeft, double sideRight, double rearLeft, double rearRight, double rearCenter, double LFE)\n");
  engine->callEventHandlers(IScriptEngine::Information, NULL, -1, "int\t audioSetChannelRemap(int track, int enable, int frontLeft, int frontRight, int frontCenter, int sideLeft, int sideRight, int rearLeft, int rearRight, int rearCenter, int LFE)\n");
  engine->callEventHandlers(IScriptEngine::Information, NULL, -1, "int\t audioSetCustomFrameRate(int track, double tempo, double pitch)\n");
  engine->callEventHandlers(IScriptEngine::Information, NULL, -1, "int\t audioSetDrc(int track, int enable)\n");
  engine->callEventHandlers(IScriptEngine::Information, NULL, -1, "int\t audioSetDrc2(int track, int enable, int normalize, double nFloor, double attTime, double decTime, double ratio, double thresDB)\n");
  engine->callEventHandlers(IScriptEngine::Information, NULL, -1, "int\t audioSetEq(int track, int enable, double low, double mid, double high, double lowMidCut, double midHighCut)\n");
  engine->callEventHandlers(IScriptEngine::Information, NULL, -1, "int\t audioSetFilm2Pal(int track, int enable)\n");
  engine->callEventHandlers(IScriptEngine::Information, NULL, -1, "int\t audioSetMixer(int track, str channelConfig)\n");
  engine->callEventHandlers(IScriptEngine::Information, NULL, -1, "int\t audioSetNormalize(int track, int mode, int value)\n");
  engine->callEventHandlers(IScriptEngine::Information, NULL, -1, "int\t audioSetNormalize2(int track, int mode, int value, int level)\n");
  engine->callEventHandlers(IScriptEngine::Information, NULL, -1, "int\t audioSetPal2Film(int track, int enable)\n");
  engine->callEventHandlers(IScriptEngine::Information, NULL, -1, "int\t audioSetResample(int track, int freq)\n");
  engine->callEventHandlers(IScriptEngine::Information, NULL, -1, "int\t audioSetShift(int track, int enable, int value)\n");
  engine->callEventHandlers(IScriptEngine::Information, NULL, -1, "int\t audioTotalTracksCount()\n");
  engine->callEventHandlers(IScriptEngine::Information, NULL, -1, "int\t audioTracksCount()\n");
  engine->callEventHandlers(IScriptEngine::Information, NULL, -1, "int\t clearSegments()\n");
  engine->callEventHandlers(IScriptEngine::Information, NULL, -1, "void\t clearVideoFilters()\n");
  engine->callEventHandlers(IScriptEngine::Information, NULL, -1, "void\t closeVideo()\n");
  engine->callEventHandlers(IScriptEngine::Information, NULL, -1, "int\t getFps1000()\n");
  engine->callEventHandlers(IScriptEngine::Information, NULL, -1, "int\t getHeight()\n");
  engine->callEventHandlers(IScriptEngine::Information, NULL, -1, "str\t getOutputExtension()\n");
  engine->callEventHandlers(IScriptEngine::Information, NULL, -1, "int\t getPARHeight()\n");
  engine->callEventHandlers(IScriptEngine::Information, NULL, -1, "int\t getPARWidth()\n");
  engine->callEventHandlers(IScriptEngine::Information, NULL, -1, "str\t getVideoCodec()\n");
  engine->callEventHandlers(IScriptEngine::Information, NULL, -1, "int\t getWidth()\n");
  engine->callEventHandlers(IScriptEngine::Information, NULL, -1, "int\t isFileOpen()\n");
  engine->callEventHandlers(IScriptEngine::Information, NULL, -1, "int\t loadVideo(str fileName)\n");
  engine->callEventHandlers(IScriptEngine::Information, NULL, -1, "int\t pyVersion()\n");
  engine->callEventHandlers(IScriptEngine::Information, NULL, -1, "int\t save(str fileName)\n");
  engine->callEventHandlers(IScriptEngine::Information, NULL, -1, "int\t saveAudio(int track, str fileName)\n");
  engine->callEventHandlers(IScriptEngine::Information, NULL, -1, "int\t saveBmp(str fileName)\n");
  engine->callEventHandlers(IScriptEngine::Information, NULL, -1, "int\t saveJpeg(str fileName)\n");
  engine->callEventHandlers(IScriptEngine::Information, NULL, -1, "int\t savePng(str fileName)\n");
  engine->callEventHandlers(IScriptEngine::Information, NULL, -1, "void\t seekBlackFrame(int count)\n");
  engine->callEventHandlers(IScriptEngine::Information, NULL, -1, "int\t seekFrame(int count)\n");
  engine->callEventHandlers(IScriptEngine::Information, NULL, -1, "int\t seekKeyFrame(int count)\n");
  engine->callEventHandlers(IScriptEngine::Information, NULL, -1, "int\t setContainer(str container, couples)\n");
  engine->callEventHandlers(IScriptEngine::Information, NULL, -1, "int\t setCurrentPts(double pts)\n");
  engine->callEventHandlers(IScriptEngine::Information, NULL, -1, "int\t setHDRConfig(int toneMappingMethod, double saturationAdjust, double boostAdjust, int adaptiveRGB, int gamutMethod)\n");
  engine->callEventHandlers(IScriptEngine::Information, NULL, -1, "int\t setPostProc(int type, int strength, int swapuv)\n");
  engine->callEventHandlers(IScriptEngine::Information, NULL, -1, "int\t setSourceTrackLanguage(int track, str language)\n");
  engine->callEventHandlers(IScriptEngine::Information, NULL, -1, "int\t videoCodec(str codec, couples)\n");
  engine->callEventHandlers(IScriptEngine::Information, NULL, -1, "int\t videoCodecChangeParam(str codec, couples)\n");
  engine->callEventHandlers(IScriptEngine::Information, NULL, -1, "int\t videoCodecSetProfile(str codec, str profile)\n");
  engine->callEventHandlers(IScriptEngine::Information, NULL, -1, "variables:\n");
  engine->callEventHandlers(IScriptEngine::Information, NULL, -1, "double\t markerA\n");
  engine->callEventHandlers(IScriptEngine::Information, NULL, -1, "double\t markerB\n");

  return tp_None;
}
tp_obj initClasspyAvidemux(tp_vm *vm)
{
  tp_obj myClass = tp_class(vm);
  tp_set(vm,myClass, tp_string("__init__"), tp_fnc(vm,myCtorpyAvidemux));
  tp_set(vm,myClass, tp_string("__set__"), tp_fnc(vm,zzpy__pyAvidemux_set));
  tp_set(vm,myClass, tp_string("__get__"), tp_fnc(vm,zzpy__pyAvidemux_get));
  tp_set(vm,myClass, tp_string("help"), tp_fnc(vm,zzpy__pyAvidemux_help));
  return myClass;
}
