Cleanup: Subdiv: Remove common_ prefix
[blender.git] / source / blender / sequencer / SEQ_sound.hh
blob7e5bc77c90079bf8d37f70ee838bea31e6236820
1 /* SPDX-FileCopyrightText: 2004 Blender Authors
3 * SPDX-License-Identifier: GPL-2.0-or-later */
5 #pragma once
7 /** \file
8 * \ingroup sequencer
9 */
11 struct EQCurveMappingData;
12 struct Main;
13 struct Scene;
14 struct Strip;
15 struct bSound;
16 struct SequenceModifierData;
17 struct SoundModifierWorkerInfo;
18 struct BlendWriter;
19 struct BlendDataReader;
20 struct ListBase;
21 struct SoundEqualizerModifierData;
23 #define SOUND_EQUALIZER_DEFAULT_MIN_FREQ 30.0
24 #define SOUND_EQUALIZER_DEFAULT_MAX_FREQ 20000.0
25 #define SOUND_EQUALIZER_DEFAULT_MAX_DB 35.0
26 #define SOUND_EQUALIZER_SIZE_CONVERSION 2048
27 #define SOUND_EQUALIZER_SIZE_DEFINITION 1000
29 void SEQ_sound_update_bounds_all(Scene *scene);
30 void SEQ_sound_update_bounds(Scene *scene, Strip *strip);
31 void SEQ_sound_update(Scene *scene, bSound *sound);
32 void SEQ_sound_update_length(Main *bmain, Scene *scene);
33 float SEQ_sound_pitch_get(const Scene *scene, const Strip *strip);
34 EQCurveMappingData *SEQ_sound_equalizer_add(SoundEqualizerModifierData *semd,
35 float minX,
36 float maxX);
37 void SEQ_sound_blend_write(BlendWriter *writer, ListBase *soundbase);
38 void SEQ_sound_blend_read_data(BlendDataReader *reader, ListBase *lb);
40 void *SEQ_sound_modifier_recreator(Strip *strip, SequenceModifierData *smd, void *sound);
42 void SEQ_sound_equalizermodifier_init_data(SequenceModifierData *smd);
43 void SEQ_sound_equalizermodifier_free(SequenceModifierData *smd);
44 void SEQ_sound_equalizermodifier_copy_data(SequenceModifierData *target,
45 SequenceModifierData *smd);
46 void *SEQ_sound_equalizermodifier_recreator(Strip *strip, SequenceModifierData *smd, void *sound);
47 void SEQ_sound_equalizermodifier_set_graphs(SoundEqualizerModifierData *semd, int number);
48 const SoundModifierWorkerInfo *SEQ_sound_modifier_worker_info_get(int type);
49 EQCurveMappingData *SEQ_sound_equalizermodifier_add_graph(SoundEqualizerModifierData *semd,
50 float min_freq,
51 float max_freq);
52 void SEQ_sound_equalizermodifier_remove_graph(SoundEqualizerModifierData *semd,
53 EQCurveMappingData *eqcmd);
55 struct SoundModifierWorkerInfo {
56 int type;
57 void *(*recreator)(Strip *strip, SequenceModifierData *smd, void *sound);