def METHOD_NAME(py_pipeline_dir, ads_in):
    from kwiver.vital.types import (
        DetectedObject,
        DetectedObjectSet,
        BoundingBoxD,
    )
    from kwiver.sprokit.adapters import adapter_data_set, embedded_pipeline
    pipeline_fname = "py_to_cpp_type_conversion.pipe"
    path_to_pipe_file = os.path.join(py_pipeline_dir, pipeline_fname)
    ep = embedded_pipeline.EmbeddedPipeline()
    ep.build_pipeline(path_to_pipe_file)
    ep.start()
    print("Sending ads:", ads_in)
    ep.send(ads_in)
    ep.send_end_of_input()
    while True:
        ods = ep.receive()
        if ods.is_end_of_data():
            break
        print("Recieved detected_object_set:", ods["detected_object_set"])
    ep.wait()