This file is indexed.

/usr/include/aften/aften.h is in libaften-dev 0.0.8+git20100105-0ubuntu3.

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
154
155
156
157
158
159
/**
 * Aften: A/52 audio encoder
 * Copyright (c) 2006-2007 Justin Ruggles
 *               2006-2007 Prakash Punnoor <prakash@punnoor.de>
 *
 * Based on "The simplest AC3 encoder" from FFmpeg
 * Copyright (c) 2000 Fabrice Bellard.
 *
 * This library 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 2 of the License, or (at your option) any later version.
 *
 * This library 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 this library; if not, write to the Free Software
 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
 */

/**
 * @file aften.h
 * libaften public header for function declarations
 */

#ifndef AFTEN_H
#define AFTEN_H

#ifdef __cplusplus
extern "C" {
#endif

#include "aften-types.h"

#if defined(_WIN32) && !defined(_XBOX)
 #if defined(AFTEN_BUILD_LIBRARY)
  #define AFTEN_API __declspec(dllexport)
 #else
  #define AFTEN_API __declspec(dllimport)
 #endif
#else
 #if defined(AFTEN_BUILD_LIBRARY) && defined(HAVE_GCC_VISIBILITY)
  #define AFTEN_API __attribute__((visibility("default")))
 #else
  #define AFTEN_API extern
 #endif
#endif

/**
 * @defgroup encoding Main encoding functions
 * @{
 */

/**
 * Gets the libaften version string.
 */
AFTEN_API const char *aften_get_version(void);

/**
 * Sets the parameters for an encoding context to their default values.
 * @param s The encoding context
 */
AFTEN_API void aften_set_defaults(AftenContext *s);

/**
 * Initializes an encoding context.
 * This must be called before any calls to @c aften_encode_frame
 * @param s The encoding context
 * @return Returns 0 on success, non-zero on failure.
 */
AFTEN_API int aften_encode_init(AftenContext *s);

/**
 * Encodes a single AC-3 frame.
 * @param s    The encoding context
 * @param[out] frame_buffer Pointer to output frame data
 * @param[in]  samples      Pointer to input audio samples
 * @param[in]  count        Number of input audio samples (per channel);
 * must be equal to A52_SAMPLES_PER_FRAME, less than A52_SAMPLES_PER_FRAME
 * for the last frame, and equal to 0 while flushing
 * @return Returns the number of bytes written to @p frame_buffer, or returns
 * a negative value on error.
 */
AFTEN_API int aften_encode_frame(AftenContext *s, unsigned char *frame_buffer,
                                 const void *samples, int count);

/**
 * Sets the parameters in the context @p s to their default values.
 * @param s The encoding context
 * @return Returns a negative value on error.
 */
AFTEN_API int aften_encode_close(AftenContext *s);

/** @} end encoding functions */

/**
 * @defgroup utility Utility functions
 * @{
 */

/**
 * Determines the proper A/52 acmod and lfe parameters based on the
 * number of channels and the WAVE_FORMAT_EXTENSIBLE channel mask.  If the
 * chmask value has the high bit set to 1 (e.g. 0xFFFFFFFF), then the default
 * plain WAVE channel selection is assumed.
 * @param[in]  ch      number of channels
 * @param[in]  chmask  channel mask
 * @param[out] acmod   pointer to audio coding mode
 * @param[out] lfe     pointer to LFE flag
 * @return On error, the @p acmod and @p lfe output params are set to -1 and
 * the function returns -1;  on success, the @p acmod and @p lfe params are set
 * to appropriate values and the function returns 0.
 */
AFTEN_API int aften_wav_channels_to_acmod(int ch, unsigned int chmask,
                                          int *acmod, int *lfe);

/**
 * Takes a channel-interleaved array of audio samples, where the channel order
 * is the default WAV order. The samples are rearranged to the proper A/52
 * channel order based on the @p acmod and @p lfe parameters.
 * @param     samples  array of interleaved audio samples
 * @param[in] n        number of samples in the array
 * @param[in] ch       number of channels
 * @param[in] fmt      sample format
 * @param[in] acmod    audio coding mode
 */
AFTEN_API void aften_remap_wav_to_a52(void *samples, int n, int ch,
                                      A52SampleFormat fmt, int acmod);

/**
 * Takes a channel-interleaved array of audio samples, where the channels are
 * in MPEG order. The samples are rearranged to the proper A/52 channel order
 * based on the @p acmod parameter.
 * @param     samples  array of interleaved audio samples
 * @param[in] n        number of samples in the array
 * @param[in] ch       number of channels
 * @param[in] fmt      sample format
 * @param[in] acmod    audio coding mode
 */
AFTEN_API void aften_remap_mpeg_to_a52(void *samples, int n, int ch,
                                       A52SampleFormat fmt, int acmod);

/**
 * Tells whether libaften was configured to use floats or doubles
 */
AFTEN_API FloatType aften_get_float_type(void);

/** @} end utility functions */

#undef AFTEN_API

#if defined(__cplusplus)
}
#endif

#endif /* AFTEN_H */