/usr/include/gegl-0.3/gegl-audio-fragment.h is in libgegl-dev 0.3.8-4.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
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 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 | /* This file is part of GEGL
*
* GEGL is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 3 of the License, or (at your option) any later version.
*
* GEGL is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with GEGL; if not, see <http://www.gnu.org/licenses/>.
*
* Copyright 2015 OEyvind Kolaas <pippin@gimp.org>
*/
#ifndef __GEGL_AUDIO_FRAGMENT_H__
#define __GEGL_AUDIO_FRAGMENT_H__
#include <glib-object.h>
G_BEGIN_DECLS
#define GEGL_TYPE_AUDIO_FRAGMENT (gegl_audio_fragment_get_type ())
#define GEGL_AUDIO_FRAGMENT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GEGL_TYPE_AUDIO_FRAGMENT, GeglAudioFragment))
#define GEGL_AUDIO_FRAGMENT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GEGL_TYPE_AUDIO_FRAGMENT, GeglAudioFragmentClass))
#define GEGL_IS_AUDIO(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GEGL_TYPE_AUDIO_FRAGMENT))
#define GEGL_IS_AUDIO_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GEGL_TYPE_AUDIO_FRAGMENT))
#define GEGL_AUDIO_FRAGMENT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GEGL_TYPE_AUDIO_FRAGMENT, GeglAudioFragmentClass))
typedef struct _GeglAudioFragmentClass GeglAudioFragmentClass;
typedef struct _GeglAudioFragmentPrivate GeglAudioFragmentPrivate;
#define GEGL_MAX_AUDIO_CHANNELS 8
/* the values for channel_layout are designed to match and be compatible with
* the ones in ffmpegs libavutil
*/
#define GEGL_CH_FRONT_LEFT 0x00000001
#define GEGL_CH_FRONT_RIGHT 0x00000002
#define GEGL_CH_FRONT_CENTER 0x00000004
#define GEGL_CH_LOW_FREQUENCY 0x00000008
#define GEGL_CH_BACK_LEFT 0x00000010
#define GEGL_CH_BACK_RIGHT 0x00000020
#define GEGL_CH_FRONT_LEFT_OF_CENTER 0x00000040
#define GEGL_CH_FRONT_RIGHT_OF_CENTER 0x00000080
#define GEGL_CH_BACK_CENTER 0x00000100
#define GEGL_CH_SIDE_LEFT 0x00000200
#define GEGL_CH_SIDE_RIGHT 0x00000400
#define GEGL_CH_TOP_CENTER 0x00000800
#define GEGL_CH_TOP_FRONT_LEFT 0x00001000
#define GEGL_CH_TOP_FRONT_CENTER 0x00002000
#define GEGL_CH_TOP_FRONT_RIGHT 0x00004000
#define GEGL_CH_TOP_BACK_LEFT 0x00008000
#define GEGL_CH_TOP_BACK_CENTER 0x00010000
#define GEGL_CH_TOP_BACK_RIGHT 0x00020000
#define GEGL_CH_STEREO_LEFT 0x20000000 ///< Stereo downmix.
#define GEGL_CH_STEREO_RIGHT 0x40000000 ///< See GEGL_CH_STEREO_LEFT.
#define GEGL_CH_WIDE_LEFT 0x0000000080000000ULL
#define GEGL_CH_WIDE_RIGHT 0x0000000100000000ULL
#define GEGL_CH_SURROUND_DIRECT_LEFT 0x0000000200000000ULL
#define GEGL_CH_SURROUND_DIRECT_RIGHT 0x0000000400000000ULL
#define GEGL_CH_LOW_FREQUENCY_2 0x0000000800000000ULL
#define GEGL_CH_LAYOUT_NATIVE 0x8000000000000000ULL
#define GEGL_CH_LAYOUT_MONO (GEGL_CH_FRONT_CENTER)
#define GEGL_CH_LAYOUT_STEREO (GEGL_CH_FRONT_LEFT|GEGL_CH_FRONT_RIGHT)
#define GEGL_CH_LAYOUT_2POINT1 (GEGL_CH_LAYOUT_STEREO|GEGL_CH_LOW_FREQUENCY)
#define GEGL_CH_LAYOUT_2_1 (GEGL_CH_LAYOUT_STEREO|GEGL_CH_BACK_CENTER)
#define GEGL_CH_LAYOUT_SURROUND (GEGL_CH_LAYOUT_STEREO|GEGL_CH_FRONT_CENTER)
#define GEGL_CH_LAYOUT_3POINT1 (GEGL_CH_LAYOUT_SURROUND|GEGL_CH_LOW_FREQUENCY)
#define GEGL_CH_LAYOUT_4POINT0 (GEGL_CH_LAYOUT_SURROUND|GEGL_CH_BACK_CENTER)
#define GEGL_CH_LAYOUT_4POINT1 (GEGL_CH_LAYOUT_4POINT0|GEGL_CH_LOW_FREQUENCY)
#define GEGL_CH_LAYOUT_2_2 (GEGL_CH_LAYOUT_STEREO|GEGL_CH_SIDE_LEFT|GEGL_CH_SIDE_RIGHT)
#define GEGL_CH_LAYOUT_QUAD (GEGL_CH_LAYOUT_STEREO|GEGL_CH_BACK_LEFT|GEGL_CH_BACK_RIGHT)
#define GEGL_CH_LAYOUT_5POINT0 (GEGL_CH_LAYOUT_SURROUND|GEGL_CH_SIDE_LEFT|GEGL_CH_SIDE_RIGHT)
#define GEGL_CH_LAYOUT_5POINT1 (GEGL_CH_LAYOUT_5POINT0|GEGL_CH_LOW_FREQUENCY)
#define GEGL_CH_LAYOUT_5POINT0_BACK (GEGL_CH_LAYOUT_SURROUND|GEGL_CH_BACK_LEFT|GEGL_CH_BACK_RIGHT)
#define GEGL_CH_LAYOUT_5POINT1_BACK (GEGL_CH_LAYOUT_5POINT0_BACK|GEGL_CH_LOW_FREQUENCY)
#define GEGL_CH_LAYOUT_6POINT0 (GEGL_CH_LAYOUT_5POINT0|GEGL_CH_BACK_CENTER)
#define GEGL_CH_LAYOUT_6POINT0_FRONT (GEGL_CH_LAYOUT_2_2|GEGL_CH_FRONT_LEFT_OF_CENTER|GEGL_CH_FRONT_RIGHT_OF_CENTER)
#define GEGL_CH_LAYOUT_HEXAGONAL (GEGL_CH_LAYOUT_5POINT0_BACK|GEGL_CH_BACK_CENTER)
#define GEGL_CH_LAYOUT_6POINT1 (GEGL_CH_LAYOUT_5POINT1|GEGL_CH_BACK_CENTER)
#define GEGL_CH_LAYOUT_6POINT1_BACK (GEGL_CH_LAYOUT_5POINT1_BACK|GEGL_CH_BACK_CENTER)
#define GEGL_CH_LAYOUT_6POINT1_FRONT (GEGL_CH_LAYOUT_6POINT0_FRONT|GEGL_CH_LOW_FREQUENCY)
#define GEGL_CH_LAYOUT_7POINT0 (GEGL_CH_LAYOUT_5POINT0|GEGL_CH_BACK_LEFT|GEGL_CH_BACK_RIGHT)
#define GEGL_CH_LAYOUT_7POINT0_FRONT (GEGL_CH_LAYOUT_5POINT0|GEGL_CH_FRONT_LEFT_OF_CENTER|GEGL_CH_FRONT_RIGHT_OF_CENTER)
#define GEGL_CH_LAYOUT_7POINT1 (GEGL_CH_LAYOUT_5POINT1|GEGL_CH_BACK_LEFT|GEGL_CH_BACK_RIGHT)
#define GEGL_CH_LAYOUT_7POINT1_WIDE (GEGL_CH_LAYOUT_5POINT1|GEGL_CH_FRONT_LEFT_OF_CENTER|GEGL_CH_FRONT_RIGHT_OF_CENTER)
#define GEGL_CH_LAYOUT_7POINT1_WIDE_BACK (GEGL_CH_LAYOUT_5POINT1_BACK|GEGL_CH_FRONT_LEFT_OF_CENTER|GEGL_CH_FRONT_RIGHT_OF_CENTER)
#define GEGL_CH_LAYOUT_OCTAGONAL (GEGL_CH_LAYOUT_5POINT0|GEGL_CH_BACK_LEFT|GEGL_CH_BACK_CENTER|GEGL_CH_BACK_RIGHT)
#define GEGL_CH_LAYOUT_HEXADECAGONAL (GEGL_CH_LAYOUT_OCTAGONAL|GEGL_CH_WIDE_LEFT|GEGL_CH_WIDE_RIGHT|GEGL_CH_TOP_BACK_LEFT|GEGL_CH_TOP_BACK_RIGHT|GEGL_CH_TOP_BACK_CENTER|GEGL_CH_TOP_FRONT_CENTER|GEGL_CH_TOP_FRONT_LEFT|GEGL_CH_TOP_FRONT_RIGHT)
#define GEGL_CH_LAYOUT_STEREO_DOWNMIX (GEGL_CH_STEREO_LEFT|GEGL_CH_STEREO_RIGHT)
struct _GeglAudioFragment
{
GObject parent_instance;
float *data[GEGL_MAX_AUDIO_CHANNELS];
GeglAudioFragmentPrivate *priv;
};
struct _GeglAudioFragmentClass
{
GObjectClass parent_class;
};
GType gegl_audio_fragment_get_type (void) G_GNUC_CONST;
GeglAudioFragment * gegl_audio_fragment_new (int sample_rate, int channels, int channel_layout, int max_samples);
void gegl_audio_fragment_set_max_samples (GeglAudioFragment *audio, int max_samples);
void gegl_audio_fragment_set_sample_rate (GeglAudioFragment *audio, int sample_rate);
void gegl_audio_fragment_set_channels (GeglAudioFragment *audio, int channels);
void gegl_audio_fragment_set_channel_layout (GeglAudioFragment *audio, int channel_layout);
void gegl_audio_fragment_set_sample_count (GeglAudioFragment *audio, int sample_count);
void gegl_audio_fragment_set_pos (GeglAudioFragment *audio, int pos);
int gegl_audio_fragment_get_max_samples (GeglAudioFragment *audio);
int gegl_audio_fragment_get_sample_rate (GeglAudioFragment *audio);
int gegl_audio_fragment_get_channels (GeglAudioFragment *audio);
int gegl_audio_fragment_get_sample_count (GeglAudioFragment *audio);
int gegl_audio_fragment_get_pos (GeglAudioFragment *audio);
int gegl_audio_fragment_get_channel_layout (GeglAudioFragment *audio);
#define GEGL_TYPE_PARAM_AUDIO_FRAGMENT (gegl_param_audio_fragment_get_type ())
#define GEGL_IS_PARAM_SPEC_AUDIO_FRAGMENT(pspec) (G_TYPE_CHECK_INSTANCE_TYPE ((pspec), GEGL_TYPE_PARAM_AUDIO_FRAGMENT))
GType gegl_param_audio_fragment_get_type (void) G_GNUC_CONST;
/**
* gegl_param_spec_audio:
* @name: canonical name of the property specified
* @nick: nick name for the property specified
* @blurb: description of the property specified
* @flags: flags for the property specified
*
* Creates a new #GParamSpec instance specifying a #GeglAudioFragment property.
*
* Returns: (transfer full): a newly created parameter specification
*/
GParamSpec * gegl_param_spec_audio_fragment (const gchar *name,
const gchar *nick,
const gchar *blurb,
GParamFlags flags);
G_END_DECLS
#endif /* __GEGL_AUDIO_FRAGMENT_H__ */
|