Skip to content

Commit

Permalink
fixed bug setting custom props in python and nodejs
Browse files Browse the repository at this point in the history
  • Loading branch information
jeanlf committed Jan 25, 2024
1 parent 047e5e9 commit 799d9e5
Show file tree
Hide file tree
Showing 3 changed files with 14 additions and 12 deletions.
6 changes: 3 additions & 3 deletions share/nodejs/src/gpac_napi.c
Original file line number Diff line number Diff line change
Expand Up @@ -942,7 +942,7 @@ napi_value filterpck_set_prop(napi_env env, napi_callback_info info)
if (p4cc) {
e = gf_filter_pck_set_property(pck, p4cc, is_null ? NULL : &p);
} else {
e = gf_filter_pck_set_property_str(pck, pname, is_null ? NULL : &p);
e = gf_filter_pck_set_property_dyn(pck, pname, is_null ? NULL : &p);
}
if (e) {
napi_throw_error(env, gf_error_to_string(e), "Cannot set packet property");
Expand Down Expand Up @@ -1232,9 +1232,9 @@ napi_value filterpid_set_prop_internal(napi_env env, napi_callback_info info, Bo
}
} else {
if (is_info) {
e = gf_filter_pid_set_info_str(pid, pname, is_null ? NULL : &p);
e = gf_filter_pid_set_info_dyn(pid, pname, is_null ? NULL : &p);
} else {
e = gf_filter_pid_set_property_str(pid, pname, is_null ? NULL : &p);
e = gf_filter_pid_set_property_dyn(pid, pname, is_null ? NULL : &p);
}
}
if (e) {
Expand Down
18 changes: 9 additions & 9 deletions share/python/libgpac/libgpac.py
Original file line number Diff line number Diff line change
Expand Up @@ -3377,9 +3377,9 @@ def connections_pending(self):
_libgpac.gf_filter_pck_forward.argtypes = [_gf_filter_packet, _gf_filter_pid]

_libgpac.gf_filter_pid_set_property.argtypes = [_gf_filter_pid, c_uint, POINTER(PropertyValue)]
_libgpac.gf_filter_pid_set_property_str.argtypes = [_gf_filter_pid, c_char_p, POINTER(PropertyValue)]
_libgpac.gf_filter_pid_set_property_dyn.argtypes = [_gf_filter_pid, c_char_p, POINTER(PropertyValue)]
_libgpac.gf_filter_pid_set_info.argtypes = [_gf_filter_pid, c_uint, POINTER(PropertyValue)]
_libgpac.gf_filter_pid_set_info_str.argtypes = [_gf_filter_pid, c_char_p, POINTER(PropertyValue)]
_libgpac.gf_filter_pid_set_info_dyn.argtypes = [_gf_filter_pid, c_char_p, POINTER(PropertyValue)]
_libgpac.gf_filter_pid_clear_eos.argtypes = [_gf_filter_pid, gf_bool]
_libgpac.gf_filter_pid_check_caps.argtypes = [_gf_filter_pid]
_libgpac.gf_filter_pid_check_caps.restype = gf_bool
Expand Down Expand Up @@ -3672,14 +3672,14 @@ def set_prop(self, pcode, prop, custom_type=0):
if prop_4cc:
_libgpac.gf_filter_pid_set_property(self._pid, prop_4cc, None)
else:
_libgpac.gf_filter_pid_set_property_str(self._pid, prop_name, None)
_libgpac.gf_filter_pid_set_property_dyn(self._pid, prop_name, None)
return

prop_val = _make_prop(prop_4cc, pcode, prop, custom_type)
if prop_4cc:
_libgpac.gf_filter_pid_set_property(self._pid, prop_4cc, byref(prop_val))
else:
_libgpac.gf_filter_pid_set_property_str(self._pid, prop_name, byref(prop_val))
_libgpac.gf_filter_pid_set_property_dyn(self._pid, prop_name, byref(prop_val))

##set a info property the current pid - see \ref gf_filter_pid_set_info and \ref gf_filter_pid_set_info_str
#\param pcode property type
Expand All @@ -3702,14 +3702,14 @@ def set_info(self, pcode, prop, custom_type=0):
if prop_4cc:
_libgpac.gf_filter_pid_set_info(self._pid, prop_4cc, None)
else:
_libgpac.gf_filter_pid_set_info_str(self._pid, prop_name, None)
_libgpac.gf_filter_pid_set_info_dyn(self._pid, prop_name, None)
return

prop_val = _make_prop(prop_4cc, pcode, prop, custom_type)
if prop_4cc:
_libgpac.gf_filter_pid_set_info(self._pid, prop_4cc, byref(prop_val))
else:
_libgpac.gf_filter_pid_set_info_str(self._pid, prop_name, byref(prop_val))
_libgpac.gf_filter_pid_set_info_dyn(self._pid, prop_name, byref(prop_val))

##clears EOS on the current PID - see \ref gf_filter_pid_clear_eos
#\param all_pids if True, clears eos on all input pids
Expand Down Expand Up @@ -4189,7 +4189,7 @@ class FrameInterface(Structure):
_libgpac.gf_filter_pck_merge_properties.argtypes = [_gf_filter_packet, _gf_filter_packet]

_libgpac.gf_filter_pck_set_property.argtypes = [_gf_filter_packet, c_uint, POINTER(PropertyValue)]
_libgpac.gf_filter_pck_set_property_str.argtypes = [_gf_filter_packet, c_char_p, POINTER(PropertyValue)]
_libgpac.gf_filter_pck_set_property_dyn.argtypes = [_gf_filter_packet, c_char_p, POINTER(PropertyValue)]
_libgpac.gf_filter_pck_truncate.argtypes = [_gf_filter_packet, c_uint]

_libgpac.gf_filter_pck_dangling_copy.argtypes = [_gf_filter_packet, _gf_filter_packet]
Expand Down Expand Up @@ -4417,14 +4417,14 @@ def set_prop(self, pcode, prop, custom_type=0):
if prop_4cc:
_libgpac.gf_filter_pck_set_property(self._pck, prop_4cc, None)
else:
_libgpac.gf_filter_pck_set_property_str(self._pck, prop_name, None)
_libgpac.gf_filter_pck_set_property_dyn(self._pck, prop_name, None)
return

prop_val = _make_prop(prop_4cc, pcode, prop, custom_type)
if prop_4cc:
_libgpac.gf_filter_pck_set_property(self._pck, prop_4cc, byref(prop_val))
else:
_libgpac.gf_filter_pck_set_property_str(self._pck, prop_name, byref(prop_val))
_libgpac.gf_filter_pck_set_property_dyn(self._pck, prop_name, byref(prop_val))

##truncates an output packet to the given size - see \ref gf_filter_pck_truncate
#\param size new size of packet
Expand Down
2 changes: 2 additions & 0 deletions src/export.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -2655,8 +2655,10 @@
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pid_get_info_str) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pid_set_property ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pid_set_property_str ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pid_set_property_dyn ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pid_set_info) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pid_set_info_str) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pid_set_info_dyn) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pid_set_framing_mode ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pid_new ) )
#pragma comment (linker, EXPORT_SYMBOL(gf_filter_pid_allow_direct_dispatch ) )
Expand Down

0 comments on commit 799d9e5

Please sign in to comment.