|
Blender V4.3
|
Go to the source code of this file.
Macros | |
| #define | MOVIECLIP_CACHE_SKIP (1 << 0) |
| #define | MOVIECLIP_DISABLE_RED (1 << 0) |
| #define | MOVIECLIP_DISABLE_GREEN (1 << 1) |
| #define | MOVIECLIP_DISABLE_BLUE (1 << 2) |
| #define | MOVIECLIP_PREVIEW_GRAYSCALE (1 << 3) |
| #define MOVIECLIP_CACHE_SKIP (1 << 0) |
Caching flags.
Definition at line 138 of file BKE_movieclip.h.
Referenced by BKE_movieclip_build_proxy_frame(), BKE_tracking_refine_marker(), blender::compositor::MovieClipNode::convert_to_operations(), detect_features_exec(), blender::compositor::MovieClipBaseOperation::init_execution(), movieclip_get_postprocessed_ibuf(), seq_get_movieclip_ibuf(), and tracking_context_get_frame_ibuf().
| #define MOVIECLIP_DISABLE_BLUE (1 << 2) |
Definition at line 143 of file BKE_movieclip.h.
Referenced by postprocess_frame(), and rna_def_space_clip().
| #define MOVIECLIP_DISABLE_GREEN (1 << 1) |
Definition at line 142 of file BKE_movieclip.h.
Referenced by postprocess_frame(), and rna_def_space_clip().
| #define MOVIECLIP_DISABLE_RED (1 << 0) |
Post-processing flags.
Definition at line 141 of file BKE_movieclip.h.
Referenced by postprocess_frame(), and rna_def_space_clip().
| #define MOVIECLIP_PREVIEW_GRAYSCALE (1 << 3) |
Definition at line 144 of file BKE_movieclip.h.
Referenced by postprocess_frame(), and rna_def_space_clip().
| struct ImBuf * BKE_movieclip_anim_ibuf_for_frame_no_lock | ( | struct MovieClip * | clip, |
| const struct MovieClipUser * | user ) |
Read image buffer from the given movie clip without acquiring the LOCK_MOVIECLIP lock. Used by a prefetch job which takes care of creating a local copy of the clip.
Referenced by prefetch_movie_frame().
| void BKE_movieclip_build_proxy_frame | ( | struct MovieClip * | clip, |
| int | clip_flag, | ||
| struct MovieDistortion * | distortion, | ||
| int | cfra, | ||
| const int * | build_sizes, | ||
| int | build_count, | ||
| bool | undistorted ) |
Definition at line 1800 of file movieclip.cc.
References BKE_movieclip_get_ibuf_flag(), MovieClipUser::framenr, get_undistorted_ibuf(), IMB_freeImBuf(), MCLIP_PROXY_RENDER_SIZE_FULL, movieclip_build_proxy_ibuf(), MOVIECLIP_CACHE_SKIP, MovieClipUser::render_flag, and MovieClipUser::render_size.
Referenced by do_movie_proxy().
| void BKE_movieclip_build_proxy_frame_for_ibuf | ( | struct MovieClip * | clip, |
| struct ImBuf * | ibuf, | ||
| struct MovieDistortion * | distortion, | ||
| int | cfra, | ||
| const int * | build_sizes, | ||
| int | build_count, | ||
| bool | undistorted ) |
Definition at line 1841 of file movieclip.cc.
References get_undistorted_ibuf(), IMB_freeImBuf(), and movieclip_build_proxy_ibuf().
Referenced by proxy_task_func().
| void BKE_movieclip_clear_cache | ( | struct MovieClip * | clip | ) |
Definition at line 1634 of file movieclip.cc.
References free_buffers().
Referenced by ED_space_clip_set_clip().
| void BKE_movieclip_clear_proxy_cache | ( | struct MovieClip * | clip | ) |
Definition at line 1639 of file movieclip.cc.
References IMB_moviecache_cleanup(), and moviecache_check_free_proxy().
Referenced by proxy_endjob().
| void BKE_movieclip_convert_multilayer_ibuf | ( | struct ImBuf * | ibuf | ) |
Will try to make image buffer usable when originating from the multi-layer source. Internally finds a first combined pass and uses that as a buffer. Not ideal, but is better than a complete empty buffer.
Definition at line 505 of file movieclip.cc.
References BLI_assert, ImBuf::channels, ImBufFloatBuffer::data, ImBuf::float_buffer, ImBuf::ftype, IB_TAKE_OWNERSHIP, IMB_assign_float_buffer(), IMB_exr_close(), IMB_exr_multilayer_convert(), IMB_FTYPE_OPENEXR, and ImBuf::userdata.
Referenced by movieclip_load_sequence_file(), and prefetch_task_func().
| void BKE_movieclip_eval_update | ( | struct Depsgraph * | depsgraph, |
| struct Main * | bmain, | ||
| struct MovieClip * | clip ) |
Definition at line 1959 of file movieclip.cc.
References DEG_debug_print_eval(), depsgraph, ID_RECALC_SOURCE, movieclip_eval_update_generic(), and movieclip_eval_update_reload().
Referenced by blender::deg::DepsgraphNodeBuilder::build_movieclip().
Checks if image was already loaded, then returns same image otherwise creates new. does not load ibuf itself pass on optional frame for filepath images.
Definition at line 941 of file movieclip.cc.
References BKE_main_blendfile_path(), BLI_open(), BLI_path_abs(), BLI_path_basename(), detect_clip_source(), file, FILE_MAX, movieclip_alloc(), movieclip_calc_length(), movieclip_load_get_size(), O_BINARY, and STRNCPY.
Referenced by BKE_movieclip_file_add_exists_ex().
Definition at line 1007 of file movieclip.cc.
References BKE_movieclip_file_add_exists_ex().
Referenced by open_exec().
| struct MovieClip * BKE_movieclip_file_add_exists_ex | ( | struct Main * | bmain, |
| const char * | filepath, | ||
| bool * | r_exists ) |
Definition at line 977 of file movieclip.cc.
References BKE_main_blendfile_path(), BKE_movieclip_file_add(), BLI_path_abs(), BLI_path_cmp, FILE_MAX, ListBase::first, ID_BLEND_PATH, id_us_plus(), Main::movieclips, and STRNCPY.
Referenced by BKE_movieclip_file_add_exists().
| void BKE_movieclip_filepath_for_frame | ( | struct MovieClip * | clip, |
| const struct MovieClipUser * | user, | ||
| char * | filepath ) |
Referenced by prefetch_read_file_to_memory(), proxy_thread_next_frame(), and uiTemplateMovieclipInformation().
| void BKE_movieclip_free_gputexture | ( | struct MovieClip * | clip | ) |
Definition at line 2036 of file movieclip.cc.
References BLI_listbase_count(), BLI_pophead(), GPU_texture_free(), MEM_freeN(), tex, and TEXTARGET_COUNT.
Referenced by blender::nodes::node_composite_movieclip_cc::MovieClipOperation::free_movie_clip_texture(), blender::draw::overlay::Resources::free_movieclips_textures(), and OVERLAY_image_free_movieclips_textures().
Definition at line 1565 of file movieclip.cc.
Referenced by BKE_mask_coord_from_movieclip(), BKE_mask_coord_to_movieclip(), BKE_mask_point_parent_matrix_get(), and ED_space_clip_get_aspect().
| void BKE_movieclip_get_cache_segments | ( | struct MovieClip * | clip, |
| const struct MovieClipUser * | user, | ||
| int * | r_totseg, | ||
| int ** | r_points ) |
Get segments of cached frames. useful for debugging cache policies.
Referenced by draw_movieclip_cache().
Definition at line 1539 of file movieclip.cc.
References movieclip_calc_length().
Referenced by clip_set_scene_frames_exec(), prefetch_check_early_out(), SEQ_add_movieclip_strip(), and SEQ_add_reload_new_file().
Definition at line 1548 of file movieclip.cc.
References float, IMB_anim_get_fps(), MCLIP_SRC_MOVIE, and movieclip_open_anim_file().
Referenced by SEQ_time_sequence_get_fps().
| struct GPUTexture * BKE_movieclip_get_gpu_texture | ( | struct MovieClip * | clip, |
| struct MovieClipUser * | cuser ) |
Definition at line 2004 of file movieclip.cc.
References BKE_movieclip_get_ibuf(), ImBufFloatBuffer::data, false, ImBuf::float_buffer, GPU_texture_create_error(), GPU_texture_mipmap_mode(), IMB_create_gpu_texture(), IMB_freeImBuf(), movieclip_get_gputexture_ptr(), tex, and TEXTARGET_2D.
Referenced by blender::nodes::node_composite_movieclip_cc::MovieClipOperation::get_movie_clip_texture(), and image_camera_background_texture_get().
| struct ImBuf * BKE_movieclip_get_ibuf | ( | struct MovieClip * | clip, |
| const struct MovieClipUser * | user ) |
Referenced by accessor_get_preprocessed_ibuf(), blender::compositor::KeyingScreenOperation::compute_marker_points(), blender::realtime_compositor::compute_marker_points(), blender::compositor::MovieClipNode::convert_to_operations(), blender::compositor::MovieClipBaseOperation::init_execution(), and reference_keyframed_image_buffers().
| struct ImBuf * BKE_movieclip_get_ibuf_flag | ( | struct MovieClip * | clip, |
| const struct MovieClipUser * | user, | ||
| int | flag, | ||
| int | cache_flag ) |
| struct ImBuf * BKE_movieclip_get_postprocessed_ibuf | ( | struct MovieClip * | clip, |
| const struct MovieClipUser * | user, | ||
| int | postprocess_flag ) |
Referenced by ED_space_clip_get_buffer().
| void BKE_movieclip_get_size | ( | struct MovieClip * | clip, |
| const struct MovieClipUser * | user, | ||
| int * | r_width, | ||
| int * | r_height ) |
Referenced by accessor_get_mask_for_track_callback(), autotrack_context_init_clips(), BKE_tracking_camera_principal_point_pixel_get(), BKE_tracking_camera_principal_point_pixel_set(), BKE_tracking_refine_marker(), clip_graph_tracking_values_iterate_track_reprojection_error_values(), clip_graph_tracking_values_iterate_track_speed_values(), createTransTrackingCurves(), createTransTrackingCurvesData(), createTransTrackingData(), blender::compositor::KeyingScreenOperation::determine_canvas(), blender::compositor::MovieClipBaseOperation::determine_canvas(), blender::compositor::PlaneTrackCommon::determine_canvas(), do_movie_proxy(), do_sequence_proxy(), draw_tracks_motion_and_error_curves(), ED_clip_point_undistorted_pos(), ED_space_clip_get_aspect_dimension_aware(), ED_space_clip_get_size(), followtrack_evaluate_using_2d_position(), blender::nodes::node_composite_planetrackdeform_cc::PlaneTrackDeformOperation::get_movie_clip_size(), blender::realtime_compositor::get_movie_clip_size(), blender::nodes::node_composite_keyingscreen_cc::KeyingScreenOperation::get_size(), blender::nodes::node_composite_trackpos_cc::TrackPositionOperation::get_size(), image_camera_background_texture_get(), blender::compositor::MovieDistortionOperation::init_data(), blender::realtime_compositor::KeyingScreen::KeyingScreen(), marker_block_handler(), solve_camera_freejob(), solve_camera_initjob(), uiTemplateMarker(), and uiTemplateMovieclipInformation().
| void BKE_movieclip_get_size_fl | ( | struct MovieClip * | clip, |
| const struct MovieClipUser * | user, | ||
| float | r_size[2] ) |
| struct ImBuf * BKE_movieclip_get_stable_ibuf | ( | struct MovieClip * | clip, |
| const struct MovieClipUser * | user, | ||
| int | postprocess_flag, | ||
| float | r_loc[2], | ||
| float * | r_scale, | ||
| float * | r_angle ) |
Referenced by ED_space_clip_get_stable_buffer(), and seq_get_movieclip_ibuf().
| bool BKE_movieclip_has_cached_frame | ( | struct MovieClip * | clip, |
| const struct MovieClipUser * | user ) |
Referenced by prefetch_find_uncached_frame(), and prefetch_movie_frame().
| bool BKE_movieclip_has_frame | ( | struct MovieClip * | clip, |
| const struct MovieClipUser * | user ) |
| bool BKE_movieclip_proxy_enabled | ( | struct MovieClip * | clip | ) |
Definition at line 1871 of file movieclip.cc.
References MCLIP_USE_PROXY.
Referenced by seq_render_movieclip_strip().
| bool BKE_movieclip_put_frame_if_possible | ( | struct MovieClip * | clip, |
| const struct MovieClipUser * | user, | ||
| struct ImBuf * | ibuf ) |
Referenced by prefetch_movie_frame(), and prefetch_task_func().
Definition at line 1646 of file movieclip.cc.
References BKE_ntree_update_tag_id_changed(), detect_clip_source(), free_buffers(), movieclip_calc_length(), and movieclip_load_get_size().
Referenced by movieclip_eval_update_reload(), and reload_exec().
Referenced by accessor_get_mask_for_track_callback(), accessor_get_preprocessed_ibuf(), BKE_autotrack_context_sync(), BKE_tracking_refine_marker(), BKE_tracking_track_get_weight_for_marker(), clip_draw_dopesheet_background(), clip_draw_dopesheet_main(), clip_graph_tracking_values_iterate_track_reprojection_error_values(), clip_graph_tracking_values_iterate_track_speed_values(), draw_frame_curves(), fetch_from_fcurve(), frame_jump_exec(), get_animated_weight(), libmv_tracks_new(), reference_keyframed_image_buffers(), track_markers_endjob(), and tracking_context_get_frame_ibuf().
Referenced by autotrack_context_init_markers(), autotrack_is_track_trackable(), BKE_autotrack_context_finish(), BKE_autotrack_context_sync(), BKE_mask_point_parent_matrix_get(), camera_view3d_reconstruction(), camerasolver_evaluate(), blender::nodes::node_composite_planetrackdeform_cc::PlaneTrackDeformOperation::compute_homography_matrices(), blender::compositor::KeyingScreenOperation::compute_marker_points(), blender::nodes::node_composite_trackpos_cc::TrackPositionOperation::compute_marker_position_at_frame(), blender::nodes::node_composite_movieclip_cc::MovieClipOperation::compute_stabilization_data(), blender::nodes::node_composite_trackpos_cc::TrackPositionOperation::compute_temporally_neighboring_marker_position(), blender::compositor::MovieClipNode::convert_to_operations(), blender::compositor::KeyingScreenOperation::determine_canvas(), ED_space_clip_get_clip_frame_number(), blender::nodes::node_composite_stabilize2d_cc::Stabilize2DOperation::execute(), followtrack_context_init(), frame_jump_exec(), blender::realtime_compositor::get_movie_clip_user(), blender::nodes::node_composite_keyingscreen_cc::KeyingScreenOperation::get_size(), marker_block_handler(), marker_update_cb(), objectsolver_evaluate(), set_solver_keyframe_exec(), track_markers_initjob(), ui_numedit_but_TRACKPREVIEW(), uiTemplateMarker(), and uiTemplateMovieclipInformation().
| void BKE_movieclip_update_scopes | ( | struct MovieClip * | clip, |
| const struct MovieClipUser * | user, | ||
| struct MovieClipScopes * | scopes ) |
Referenced by clip_properties_region_draw().
| void BKE_movieclip_user_set_frame | ( | struct MovieClipUser * | user, |
| int | framenr ) |
Definition at line 1591 of file movieclip.cc.
References MovieClipUser::framenr.
Referenced by accessor_get_mask_for_track_callback(), accessor_get_preprocessed_ibuf(), BKE_mask_point_parent_matrix_get(), clip_area_sync_frame_from_scene(), clip_refresh(), blender::compositor::KeyingScreenOperation::compute_marker_points(), blender::compositor::KeyingScreenOperation::determine_canvas(), blender::compositor::PlaneTrackCommon::determine_canvas(), ED_clip_update_frame(), blender::nodes::node_composite_planetrackdeform_cc::PlaneTrackDeformOperation::get_movie_clip_size(), blender::realtime_compositor::get_movie_clip_size(), blender::nodes::node_composite_movieclip_cc::MovieClipOperation::get_movie_clip_texture(), blender::realtime_compositor::get_movie_clip_user(), blender::nodes::node_composite_keyingscreen_cc::KeyingScreenOperation::get_size(), blender::nodes::node_composite_trackpos_cc::TrackPositionOperation::get_size(), image_camera_background_texture_get(), blender::compositor::MovieDistortionOperation::init_data(), blender::compositor::MovieClipBaseOperation::init_execution(), reference_keyframed_image_buffers(), and seq_render_movieclip_strip().