File size: 980 Bytes
85ba398
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
import os
from fairseq.data.audio import (
    AudioTransform,
    CompositeAudioTransform,
    import_transforms,
    register_audio_transform,
)


class AudioFeatureTransform(AudioTransform):
    pass


AUDIO_FEATURE_TRANSFORM_REGISTRY = {}
AUDIO_FEATURE_TRANSFORM_CLASS_NAMES = set()


def get_audio_feature_transform(name):
    return AUDIO_FEATURE_TRANSFORM_REGISTRY[name]


def register_audio_feature_transform(name):
    return register_audio_transform(
        name,
        AudioFeatureTransform,
        AUDIO_FEATURE_TRANSFORM_REGISTRY,
        AUDIO_FEATURE_TRANSFORM_CLASS_NAMES,
    )


import_transforms(os.path.dirname(__file__), "feature")


class CompositeAudioFeatureTransform(CompositeAudioTransform):
    @classmethod
    def from_config_dict(cls, config=None):
        return super()._from_config_dict(
            cls,
            "feature",
            get_audio_feature_transform,
            CompositeAudioFeatureTransform,
            config,
        )