PipeWire: aac.h Source File

PipeWire 0.3.67

Loading...
Searching...
No Matches
aac.h
1/* Simple Plugin API */
2/* SPDX-FileCopyrightText: Copyright © 2023 Wim Taymans */
3/* SPDX-License-Identifier: MIT */
4
5#ifndef SPA_AUDIO_AAC_H
6#define SPA_AUDIO_AAC_H
7
8#ifdef __cplusplus
9extern "C" {
10#endif
11
12#include <spa/param/audio/raw.h>
13
14enum spa_audio_aac_stream_format {
15 SPA_AUDIO_AAC_STREAM_FORMAT_UNKNOWN,
16 /* Raw AAC frames */
17 SPA_AUDIO_AAC_STREAM_FORMAT_RAW,
18 /* ISO/IEC 13818-7 MPEG-2 Audio Data Transport Stream (ADTS) */
19 SPA_AUDIO_AAC_STREAM_FORMAT_MP2ADTS,
20 /* ISO/IEC 14496-3 MPEG-4 Audio Data Transport Stream (ADTS) */
21 SPA_AUDIO_AAC_STREAM_FORMAT_MP4ADTS,
22 /* ISO/IEC 14496-3 Low Overhead Audio Stream (LOAS) */
23 SPA_AUDIO_AAC_STREAM_FORMAT_MP4LOAS,
24 /* ISO/IEC 14496-3 Low Overhead Audio Transport Multiplex (LATM) */
25 SPA_AUDIO_AAC_STREAM_FORMAT_MP4LATM,
26 /* ISO/IEC 14496-3 Audio Data Interchange Format (ADIF) */
27 SPA_AUDIO_AAC_STREAM_FORMAT_ADIF,
28 /* ISO/IEC 14496-12 MPEG-4 file format */
29 SPA_AUDIO_AAC_STREAM_FORMAT_MP4FF,
30
31 SPA_AUDIO_AAC_STREAM_FORMAT_CUSTOM = 0x10000,
32};
33
34struct spa_audio_info_aac {
35 uint32_t rate; /*< sample rate */
36 uint32_t channels; /*< number of channels */
37 uint32_t bitrate; /*< stream bitrate */
38 enum spa_audio_aac_stream_format stream_format; /*< AAC audio stream format */
39};
40
41#define SPA_AUDIO_INFO_AAC_INIT(...) ((struct spa_audio_info_aac) { __VA_ARGS__ })
42
47#ifdef __cplusplus
48} /* extern "C" */
49#endif
50
51#endif /* SPA_AUDIO_AAC_H */
raw.h
spa/param/audio/raw.h
spa_audio_info_aac
Definition: aac.h:38
spa_audio_info_aac::channels
uint32_t channels
Definition: aac.h:40
spa_audio_info_aac::bitrate
uint32_t bitrate
Definition: aac.h:41
spa_audio_info_aac::rate
uint32_t rate
Definition: aac.h:39
spa_audio_info_aac::stream_format
enum spa_audio_aac_stream_format stream_format
Definition: aac.h:42