Problem summary:
Specific knobs are missing when a MOV or MXF Write node is created on Mac and FileIO is installed.
Customer reported version:
Nuke 14.0v3
Customer reported platform:
macOS 12 Monterey
Steps to reproduce:
1) Launch Nuke 14.0v1 with FileIO 13.2 installed and open the Script Editor.
2) Paste the following code into the Script Editor:
import nukefileTypes = ["cin","dpx","exr","hdr","jpeg","mov","mxf","null","pic","png","sgi","targa","tiff","xpm","yuv"]for fType in fileTypes: w = nuke.createNode("Write", "file_type %s name %s"%(fType,fType)) knobNum = len(w.knobs()) print("%s: %s total knobs"%(fType, knobNum))
3) Run the code and observe how the MOV and MXF Write nodes have errors:
4) Run the code again with Nuke 13.2v6 and compare the output from both Script Editors:
Expected behavior:
Write nodes should and have all of the necessary knobs and not error when their
file_type is MOV or MXF.
Actual behavior:
On Mac, Write nodes with a MOV or MXF
file_type are missing certain knobs when created from Nuke's Script Editor, GUI, Python interpreter, or when running Nuke in Terminal mode (
-t). Creating the Write nodes in Terminal mode also reports some additional errors regarding movWriter.dylib and mxfWriter.dylib:
Write1: dlopen(~/.nuke/movWriter.dylib, 0x0002): symbol not found in flat namespace (__ZN2DD5Image8MetaData16propertyToStringEPN7Foundry8Property4BaseE)
Write1: dlopen(~/.nuke/mxfWriter.dylib, 0x0002): symbol not found in flat namespace (__ZN2DD5Image8MetaData16propertyToStringEPN7Foundry8Property4BaseE)
The full list of knobs present in Nuke 13.2v6 but missing in Nuke 14.0v1+ is below:
MOV missing knobs:
mov32_new_qt_behavior, mov32_ycbcr_matrix, mov32_codec, mov32_codecoptions, mov32_pixel_format, mov32_fps, mov32_quality, mov32_keyframerate, mov32_audiofile, mov32_audio_offset, mov32_units, mov32_settings, mov32_write_timecode, mov32_advanced, mov32_flatten, mov32_use_format_aspect, mov32_ycbcr_matrix_type, mov32_write_nclc, mov32_write_gamma, mov32_write_prores, meta_codec, meta_encoder, format, mov64_format, codec, mov64_codec, fps, mov64_fps, dnxhd_codec_profile, mov64_dnxhd_codec_profile, mov64_dnxhr_codec_profile, mov_prores_codec_profile, mov_h264_codec_profile, mov64_pixel_format, mov64_quality, mov64_ycbcr_matrix_type, audiofile, mov64_audiofile, audio_offset, mov64_audio_offset, units, mov64_units, Advanced, mov64_advanced, dnxhd_encode_video_range, mov64_dnxhd_encode_video_range, dataRange, mov64_fast_start, writeTimeCode, mov64_write_timecode, gop_size, mov64_gop_size, b_frames, mov64_b_frames, mov64_bitrate_divider, mov64_limit_bitrate, bitrate, mov64_bitrate, bitrate_tolerance, mov64_bitrate_tolerance, quality_min, mov64_quality_min, quality_max, mov64_quality_max, mov64_write_nclc, bitrateTol, gopSize, bFrames, mbDecision, mov64_mbDecision, DNxHR_SDK_Version, Nuke_FileIO_Version
MXF missing knobs:
mxf_video_codec_knob, mxf_op_pattern_knob, mxf_edit_rate_knob, mxf_codec_profile_knob, mxf_tape_id_knob, mxf_dnx_encode_video_range, mxf_advanced, dataRange, DNxHR_SDK_Version, Nuke_FileIO_Version
Workaround:
No known workaround at this time.
Reproduced by Support in:
Nuke 14.0v3 - macOS 12.6
Nuke 14.0v2 - macOS 12.6
Nuke 14.0v1 - macOS 12.6 - Regression
Unable to reproduce bug in:
Nuke 13.2v6 - macOS 12.6
Earliest version tested:
Nuke 13.2v6 - This issue doesn't appear in this version and has regressed.