# AI : Faceswap : Source : plugins
#### `__init__.py` ✔
```
-
```
#### `extract_media.py`
```
ExtractMedia
__init__(
_filename = filename # base name of the original frame's filename ???
_image = image # original frame or face image ???
_detected_faces = detected_faces # [ lib.align.DetectedFace ]
_is_aligned = is_aligned # bool
)
```
#### `pipeline.py`
```
Extractor
__init__(
detector : str | None,
aligner : str | None,
masker : str | list[str] | None,
recognition : str | None = None,
configfile : str | None = None,
multiprocess : bool = False,
exclude_gpus : list[int] | None = None,
rotate_images : str | None = None,
min_size : int = 0,
normalize_method: T.Literal["none", "clahe", "hist", "mean"] | None = None,
re_feed : int = 0,
re_align : bool = False,
disable_filter : bool = False) -> None:
)
input_queue -> _queues[ qname ] : EventQueue
_output_queue -> _queues[ qname ] : EventQueue
detected_faces()
_output_queue.get( True, 1 )
???
import_data( input_location )
???
_add_queues()
???
```