Closed L0Lock closed 5 years ago
CC'ing @yafesdev who is the maintainer of the repo, and who will be able to provide more detail on this.
To provide a quick first response, the installation should be very straightforward: Referring to the drag&drop installation instructions on https://github.com/syncsketch/syncsketch-maya - you would download only the installCrossPlatform.mel file (nothing else). Once downloaded you drag it onto your maya-viewport. Everything else should be installed for you, within a minute or two.
So you should not need to install or copy the repo to your scripts directory - which in fact could be the culprit to your failing installation. Please try to remove any syncsketch directories from your scripts directory to make sure no syncsketch code is present prior to your installation. Then restart maya and simply drag and drop the installCrossPlatform.mel file onto your file - and let us know how it goes!
This being said, there could certainly be bugs we have not come across yet, so keep us posted if it fails for you so that we can fix the issue.
Thanks for the quick reply!
Indeed, so straightforward and simple I had to make it complicated. Sorry for that wrong call. :')
Now that it's installed, I have another issue: it doesn't playblast when I hit the record button.
I did select a valid Review and an output folder I have every writing & reading rights on. The output file gets created, but remains empty.
Here are my settings:
Here's the script editor output:
createModelPanelMenu modelPanel1;
createModelPanelMenu modelPanel2;
createModelPanelMenu modelPanel3;
createModelPanelMenu modelPanel4;
createOutlinerPanelMenu outlinerPanel1;
buildPanelPopupMenu scriptEditorPanel1;
createModelPanelMenu modelPanel1;
createModelPanelMenu modelPanel2;
createModelPanelMenu modelPanel3;
createModelPanelMenu modelPanel4;
createOutlinerPanelMenu outlinerPanel1;
buildPanelPopupMenu scriptEditorPanel1;
createModelPanelMenu modelPanel25;
ModelEdMenu modelPanel25;
createModelPanelBar window1|paneLayout28|modelPanel25|modelPanel25|modelEditorIconBar window1|paneLayout28|modelPanel25|modelPanel25|modelEditorTabLayout|modelPanel25;
file -q -exists "L:/loicd/Documents/Taff/Perso/Animation/BodyMechanics/movies/BallWithLegs_FourSteps_blocking_04";
// Result: 0 //
currentTime 1 ;
createModelPanelMenu modelPanel1;
createModelPanelMenu modelPanel2;
createModelPanelMenu modelPanel3;
createModelPanelMenu modelPanel4;
createOutlinerPanelMenu outlinerPanel1;
buildPanelPopupMenu scriptEditorPanel1;
# Traceback (most recent call last):
# File "L:/loicd/Documents/maya/scripts\syncsketchGUI\lib\gui\syncsketchWidgets\mainWidget.py", line 773, in playblast
# recordData = syncsketchGUI.record()
# File "L:/loicd/Documents/maya/scripts\syncsketchGUI\__init__.py", line 190, in record
# recordData["playblast_file"] = _record()
# File "L:/loicd/Documents/maya/scripts\syncsketchGUI\__init__.py", line 272, in _record
# **recArgs
# File "L:/loicd/Documents/maya/scripts\syncsketchGUI\lib\maya\scene.py", line 271, in playblast_with_settings
# playblast_file = capture.capture(**viewport_options)
# File "L:/loicd/Documents/maya/scripts\syncsketchGUI\vendor\capture\capture.py", line 194, in capture
# **playblast_kwargs)
# RuntimeError: Unable to initialize codec.
#
timeField -edit -value `currentTime -query` TimeSlider|MainTimeSliderLayout|formLayout8|timeField1;
// Result: TimeSlider|MainTimeSliderLayout|formLayout8|timeField1 //
$gHIKneedSyncOnSetKeyframe=1;
// Result: 1 //
dR_setModelEditorTypes;
updateModelPanelBar window1|paneLayout28|modelPanel25|modelPanel25|modelEditorTabLayout|modelPanel25;
updateModelPanelBar MainPane|viewPanes|modelPanel2|modelPanel2|modelEditorTabLayout|modelPanel2;
updateModelPanelBar MainPane|viewPanes|modelPanel1|modelPanel1|modelEditorTabLayout|modelPanel1;
updateModelPanelBar window1|paneLayout28|modelPanel25|modelPanel25|modelEditorTabLayout|modelPanel25;
updateModelPanelBar MainPane|viewPanes|modelPanel2|modelPanel2|modelEditorTabLayout|modelPanel2;
updateModelPanelBar MainPane|viewPanes|modelPanel1|modelPanel1|modelEditorTabLayout|modelPanel1;
updateModelPanelBar window1|paneLayout28|modelPanel25|modelPanel25|modelEditorTabLayout|modelPanel25;
updateModelPanelBar MainPane|viewPanes|modelPanel2|modelPanel2|modelEditorTabLayout|modelPanel2;
updateModelPanelBar MainPane|viewPanes|modelPanel1|modelPanel1|modelEditorTabLayout|modelPanel1;
updateModelPanelBar window1|paneLayout28|modelPanel25|modelPanel25|modelEditorTabLayout|modelPanel25;
updateModelPanelBar MainPane|viewPanes|modelPanel2|modelPanel2|modelEditorTabLayout|modelPanel2;
updateModelPanelBar MainPane|viewPanes|modelPanel1|modelPanel1|modelEditorTabLayout|modelPanel1;
updateModelPanelBar window1|paneLayout28|modelPanel25|modelPanel25|modelEditorTabLayout|modelPanel25;
updateModelPanelBar MainPane|viewPanes|modelPanel2|modelPanel2|modelEditorTabLayout|modelPanel2;
updateModelPanelBar MainPane|viewPanes|modelPanel1|modelPanel1|modelEditorTabLayout|modelPanel1;
updateModelPanelBar window1|paneLayout28|modelPanel25|modelPanel25|modelEditorTabLayout|modelPanel25;
updateModelPanelBar MainPane|viewPanes|modelPanel2|modelPanel2|modelEditorTabLayout|modelPanel2;
updateModelPanelBar MainPane|viewPanes|modelPanel1|modelPanel1|modelEditorTabLayout|modelPanel1;
updateModelPanelBar window1|paneLayout28|modelPanel25|modelPanel25|modelEditorTabLayout|modelPanel25;
updateModelPanelBar MainPane|viewPanes|modelPanel2|modelPanel2|modelEditorTabLayout|modelPanel2;
updateModelPanelBar MainPane|viewPanes|modelPanel1|modelPanel1|modelEditorTabLayout|modelPanel1;
updateModelPanelBar window1|paneLayout28|modelPanel25|modelPanel25|modelEditorTabLayout|modelPanel25;
updateModelPanelBar MainPane|viewPanes|modelPanel2|modelPanel2|modelEditorTabLayout|modelPanel2;
updateModelPanelBar MainPane|viewPanes|modelPanel1|modelPanel1|modelEditorTabLayout|modelPanel1;
updateModelPanelBar window1|paneLayout28|modelPanel25|modelPanel25|modelEditorTabLayout|modelPanel25;
updateModelPanelBar MainPane|viewPanes|modelPanel2|modelPanel2|modelEditorTabLayout|modelPanel2;
updateModelPanelBar MainPane|viewPanes|modelPanel1|modelPanel1|modelEditorTabLayout|modelPanel1;
updateModelPanelBarV2Settings;
updateModelPanelBarV2Settings;
updateModelPanelBarV2Settings;
updateModelPanelBar window1|paneLayout28|modelPanel25|modelPanel25|modelEditorTabLayout|modelPanel25;
updateModelPanelBar MainPane|viewPanes|modelPanel2|modelPanel2|modelEditorTabLayout|modelPanel2;
updateModelPanelBar MainPane|viewPanes|modelPanel1|modelPanel1|modelEditorTabLayout|modelPanel1;
updateModelPanelBar window1|paneLayout28|modelPanel25|modelPanel25|modelEditorTabLayout|modelPanel25;
updateModelPanelBar MainPane|viewPanes|modelPanel2|modelPanel2|modelEditorTabLayout|modelPanel2;
updateModelPanelBar MainPane|viewPanes|modelPanel1|modelPanel1|modelEditorTabLayout|modelPanel1;
updateModelPanelBar window1|paneLayout28|modelPanel25|modelPanel25|modelEditorTabLayout|modelPanel25;
updateModelPanelBar MainPane|viewPanes|modelPanel2|modelPanel2|modelEditorTabLayout|modelPanel2;
updateModelPanelBar MainPane|viewPanes|modelPanel1|modelPanel1|modelEditorTabLayout|modelPanel1;
updateModelPanelBar window1|paneLayout28|modelPanel25|modelPanel25|modelEditorTabLayout|modelPanel25;
updateModelPanelBar MainPane|viewPanes|modelPanel2|modelPanel2|modelEditorTabLayout|modelPanel2;
updateModelPanelBar MainPane|viewPanes|modelPanel1|modelPanel1|modelEditorTabLayout|modelPanel1;
updateModelPanelBar window1|paneLayout28|modelPanel25|modelPanel25|modelEditorTabLayout|modelPanel25;
updateModelPanelBar MainPane|viewPanes|modelPanel2|modelPanel2|modelEditorTabLayout|modelPanel2;
updateModelPanelBar MainPane|viewPanes|modelPanel1|modelPanel1|modelEditorTabLayout|modelPanel1;
updateModelPanelBar window1|paneLayout28|modelPanel25|modelPanel25|modelEditorTabLayout|modelPanel25;
updateModelPanelBar MainPane|viewPanes|modelPanel2|modelPanel2|modelEditorTabLayout|modelPanel2;
updateModelPanelBar MainPane|viewPanes|modelPanel1|modelPanel1|modelEditorTabLayout|modelPanel1;
updateModelPanelBar window1|paneLayout28|modelPanel25|modelPanel25|modelEditorTabLayout|modelPanel25;
updateModelPanelBar MainPane|viewPanes|modelPanel2|modelPanel2|modelEditorTabLayout|modelPanel2;
updateModelPanelBar MainPane|viewPanes|modelPanel1|modelPanel1|modelEditorTabLayout|modelPanel1;
updateModelPanelBar window1|paneLayout28|modelPanel25|modelPanel25|modelEditorTabLayout|modelPanel25;
updateModelPanelBar MainPane|viewPanes|modelPanel2|modelPanel2|modelEditorTabLayout|modelPanel2;
updateModelPanelBar MainPane|viewPanes|modelPanel1|modelPanel1|modelEditorTabLayout|modelPanel1;
updateModelPanelBar window1|paneLayout28|modelPanel25|modelPanel25|modelEditorTabLayout|modelPanel25;
updateModelPanelBar MainPane|viewPanes|modelPanel2|modelPanel2|modelEditorTabLayout|modelPanel2;
updateModelPanelBar MainPane|viewPanes|modelPanel1|modelPanel1|modelEditorTabLayout|modelPanel1;
@L0Lock
Thanks for the detailed report, I think what's happening is that you are missing the Quicktime H264 codec. We didn't see a lot of use cases for the default non compressed AVI
and I wouldn't recommend it's usage as it causes a lot of incompatibility issues.
Quick Fix: 1) Install Quicktime for Windows https://support.apple.com/kb/DL837?locale=en_US 2) Restart Maya
However, I will release in the next days an update for our default settings to include the standard avi
with no compression, which will be the same behavior as on any fresh installed maya on windows.
Let me know if the above fix works for you and it would be interesting to hear as well if you were actually going to use avi
.
That's really weird because I have QuickTime already installed and I've been using qt h264 playblasts for years... Anyways I tried to reinstall it and try how it goes.
If I set a custom preset with qt h264 (there seems to be no preset with qt?), it does record but then it pops up a "Please provide a valid file" (but with a sneaky F).
The main syncsketch window says it created a .avi file and has a .avi file in the "File to upload" input. While in the output folder I can only find a .mov file encoded with qt h264. If I manually set the "file to load" to my .mov file, it keeps changing the .mov to .avi. With this in the script editor:
Command '"L:/loicd/Documents/maya/scripts/ffmpeg/bin/ffprobe.exe" -v error -loglevel quiet -select_streams v:0 -show_entries stream=width,height,avg_frame_rate,codec_name,duration -show_entries format=duration -of default=noprint_wrappers=1 -print_format json "L:/loicd/Documents/Taff/Perso/Animation/BodyMechanics/movies/test_syncsketchPlugin_01.avi"' returned non-zero exit status 1
OutlinerRenameSelectedItem;
{
string $panel = `getCurrentOutlinerPanel`;
if ("" != $panel) {
outlinerEditor -e -rsi $panel;
}
};
And here's a video so you can see if I do something wrong.
Out of topic, but I also wonder how the plugin manages what's visible or not in its playblasts. I can't show my geometry except using the "final" preset or by selecting the mesh objects (but then I only have the wire). And it shows the motion trail that is hidden in the viewport.
@L0Lock
Thanks for the very detailed description that really helps. I think I narrowed down the problem, I will push a fix release today.
For the geometry options, I will see what's tripping of polygon shapes from not being displayed. Do you mind opening a new issue for that?
I've pushed a release, if you just Download installCrossPlatformGUI.mel Drag and Drop installer and reinstall syncsketchGUI you should be able to properly upload your playblasts.
To verify you have that your install updated all files, when you open syncsketch you should see under HD720p
preset H264. | qt | 1280x720
Note: In case you don't see any change after following the above mentioned, make sure to restart maya and prior delete L:/loicd/Documents/maya/scripts/syncsketchGUI to avoid write protected files from not being updated.
Using Maya 2019, I tried to download the whole repo and unzip it in
documents/maya/scripts
, then drag'n'drop the installCrossPlatformGUI.mel in the viewport as indicated, but it fails. Here's the script editor output:I also tried to drag'n'drop installGUI.py, it does display a Syncsketch prompt with the Install button, it does open different command-like windows and open a final Syncsketch prompt asking to launch syncsketch, but once clicked it does nothing.
Also tried command line install, but then again I get just a Syntax error without further indication when running
import syncsketchGUI syncsketchGUI.install_shelf()
. I can drag'n'drop the standalone.py file in the viewport to get the main plugin window, but I miss the custom shelf.