Python Playblast查询压缩

Python Playblast查询压缩,python,maya,mel,pymel,Python,Maya,Mel,Pymel,我正在为Maya开发一个自定义播放预览工具,在如何查询每种格式的可用压缩以执行播放预览方面遇到了一个小问题 我可以使用: import pymel.core as pm availableFormats = pm.playblast(query = True, format = True) print availableFormats 我得到的结果是['qt','avi','image']。这很好,但现在我需要压缩选项 当我使用 import pymel.core as pm avail

我正在为Maya开发一个自定义播放预览工具,在如何查询每种格式的可用压缩以执行播放预览方面遇到了一个小问题

我可以使用:

import pymel.core as pm

availableFormats = pm.playblast(query = True, format = True)
print availableFormats 
我得到的结果是['qt','avi','image']。这很好,但现在我需要压缩选项

当我使用

import pymel.core as pm

availableCompressions = pm.playblast(query = True, compression= True)
print availableCompressions 
我得到:

[u'Codec IYUV', u'MS-RLE', u'MS-CRAM', u'MS-YUV', u'Toshiba YUV411', u'TSCC', u'TSC2', u'none']
哪些是“avi”格式的压缩选项

因此,问题:

如何查询特定格式的压缩

我试着传球:

pm.playblast(query = True, format = 'qt', compression  = True)

但它不起作用,因为,当然,查询标志只允许布尔值…

这似乎是一个python绑定错误。 在Mel中执行以下操作:

whatIs changePlayblastFormat;
// Result: Mel procedure found in: /path/mayaxxxx/scripts/others/performPlayblast.mel //
您可以发现,他们查询的编码格式如下:

string $selectedFormat = `optionMenuGrp -q -value playblastFormatWidget`;
string $lEncodings[]   = `playblast -format $selectedFormat -q -compression`;
因此,我的建议是在这种情况下使用mel评估:

pm.mel.eval('playblast -format "{0}" -q -compression;'.format('qt'))