MCPcopy Create free account
hub / github.com/BabitMF/bmf / create_sync_module

Method create_sync_module

bmf/builder/bmf_node.py:204–244  ·  view source on GitHub ↗
(self)

Source from the content-addressed store, hash-verified

202 print('no output stream')
203
204 def create_sync_module(self):
205 from bmf.lib._bmf import engine
206 node_option = json.dumps(self.option_)
207
208 # convert node option for filter
209 if self.module_info_["name"] == "c_ffmpeg_filter":
210 node_config = self.get_graph().generate_node_config(self)
211 node_option = engine.convert_filter_para(node_config.dump())
212
213 # create module
214 mod = engine.Module(self.module_info_["name"], node_option,
215 self.module_info_["type"],
216 self.module_info_["path"],
217 self.module_info_["entry"])
218
219 # input stream list
220 input_stream_id = []
221 if self.module_info_[
222 "name"] == "c_ffmpeg_encoder" and 1 in self.get_input_streams(
223 ).keys():
224 input_stream_id.append(0)
225 input_stream_id.append(1)
226 else:
227 for id in self.get_input_streams().keys():
228 input_stream_id.append(id)
229
230 # output stream list
231 output_stream_id = []
232 if self.module_info_["name"] == "c_ffmpeg_decoder":
233 for key in self.get_output_streams().keys():
234 if key == "video":
235 output_stream_id.append(0)
236 elif key == "audio":
237 output_stream_id.append(1)
238 else:
239 for id in self.get_output_streams().keys():
240 output_stream_id.append(id)
241
242 # create sync module
243 sync_module = SyncModule(mod, input_stream_id, output_stream_id)
244 return sync_module

Callers 1

get_moduleMethod · 0.80

Calls 8

get_graphMethod · 0.95
get_input_streamsMethod · 0.95
get_output_streamsMethod · 0.95
generate_node_configMethod · 0.80
convert_filter_paraMethod · 0.80
ModuleMethod · 0.80
SyncModuleClass · 0.70
dumpMethod · 0.45

Tested by

no test coverage detected