14e18ff44c76f52102a6cf7d737a91025ca28feaeJean-Michel Trivi/*
24e18ff44c76f52102a6cf7d737a91025ca28feaeJean-Michel Trivi * Copyright (C) 2010 The Android Open Source Project
34e18ff44c76f52102a6cf7d737a91025ca28feaeJean-Michel Trivi *
44e18ff44c76f52102a6cf7d737a91025ca28feaeJean-Michel Trivi * Licensed under the Apache License, Version 2.0 (the "License");
54e18ff44c76f52102a6cf7d737a91025ca28feaeJean-Michel Trivi * you may not use this file except in compliance with the License.
64e18ff44c76f52102a6cf7d737a91025ca28feaeJean-Michel Trivi * You may obtain a copy of the License at
74e18ff44c76f52102a6cf7d737a91025ca28feaeJean-Michel Trivi *
84e18ff44c76f52102a6cf7d737a91025ca28feaeJean-Michel Trivi *      http://www.apache.org/licenses/LICENSE-2.0
94e18ff44c76f52102a6cf7d737a91025ca28feaeJean-Michel Trivi *
104e18ff44c76f52102a6cf7d737a91025ca28feaeJean-Michel Trivi * Unless required by applicable law or agreed to in writing, software
114e18ff44c76f52102a6cf7d737a91025ca28feaeJean-Michel Trivi * distributed under the License is distributed on an "AS IS" BASIS,
124e18ff44c76f52102a6cf7d737a91025ca28feaeJean-Michel Trivi * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
134e18ff44c76f52102a6cf7d737a91025ca28feaeJean-Michel Trivi * See the License for the specific language governing permissions and
144e18ff44c76f52102a6cf7d737a91025ca28feaeJean-Michel Trivi * limitations under the License.
154e18ff44c76f52102a6cf7d737a91025ca28feaeJean-Michel Trivi */
164e18ff44c76f52102a6cf7d737a91025ca28feaeJean-Michel Trivi
17dff1b1fc1f687c544e19df56bef225c45f7256a9Jean-Michel Trivi//-----------------------------------------------------------------------------
18dff1b1fc1f687c544e19df56bef225c45f7256a9Jean-Michel Trivi// Android general purpose errors
19dff1b1fc1f687c544e19df56bef225c45f7256a9Jean-Michel Trivi//----------------------
20dff1b1fc1f687c544e19df56bef225c45f7256a9Jean-Michel Trivi#define ERROR_SHOULDNT_BE_HERE_S \
21dff1b1fc1f687c544e19df56bef225c45f7256a9Jean-Michel Trivi        "Reached an invalid code path in %s"
224e18ff44c76f52102a6cf7d737a91025ca28feaeJean-Michel Trivi
234e18ff44c76f52102a6cf7d737a91025ca28feaeJean-Michel Trivi//-----------------------------------------------------------------------------
244e18ff44c76f52102a6cf7d737a91025ca28feaeJean-Michel Trivi// Android AudioPlayer errors
254e18ff44c76f52102a6cf7d737a91025ca28feaeJean-Michel Trivi//----------------------
264e18ff44c76f52102a6cf7d737a91025ca28feaeJean-Michel Trivi#define ERROR_PLAYERSTREAMTYPE_SET_UNKNOWN_TYPE \
274e18ff44c76f52102a6cf7d737a91025ca28feaeJean-Michel Trivi        "Cannot set stream type: unknown or invalid stream type"
284e18ff44c76f52102a6cf7d737a91025ca28feaeJean-Michel Trivi#define ERROR_PLAYERSTREAMTYPE_REALIZED \
294e18ff44c76f52102a6cf7d737a91025ca28feaeJean-Michel Trivi        "Cannot set stream type: audio player already realized"
30b8e52590d14863805bc1ba9d58efa95cbf8ae302Jean-Michel Trivi#define ERROR_PLAYERREALIZE_UNKNOWN_DATASOURCE_LOCATOR \
31b8e52590d14863805bc1ba9d58efa95cbf8ae302Jean-Michel Trivi        "Cannot realize AudioPlayer: with unknown data source locator"
32dff1b1fc1f687c544e19df56bef225c45f7256a9Jean-Michel Trivi#define ERROR_PLAYERREALIZE_UNEXPECTED_OBJECT_TYPE_D \
33dff1b1fc1f687c544e19df56bef225c45f7256a9Jean-Michel Trivi        "Cannot realize AudioPlayer: unexpected object type \%d"
34dff1b1fc1f687c544e19df56bef225c45f7256a9Jean-Michel Trivi#define ERROR_PLAYERDESTROY_UNEXPECTED_OBJECT_TYPE_D \
35dff1b1fc1f687c544e19df56bef225c45f7256a9Jean-Michel Trivi        "Cannot destroy AudioPlayer: unexpected object type \%d"
36dff1b1fc1f687c544e19df56bef225c45f7256a9Jean-Michel Trivi#define ERROR_PLAYERSETPLAYSTATE_UNEXPECTED_OBJECT_TYPE_D \
37dff1b1fc1f687c544e19df56bef225c45f7256a9Jean-Michel Trivi        "Cannot set AudioPlayer playstate: unexpected object type \%d"
38dff1b1fc1f687c544e19df56bef225c45f7256a9Jean-Michel Trivi#define ERROR_PLAYERSETPLAYSTATE_INVALID_OBJECT_STATE_D \
391c17ec55f629fdab909ab16d94e014f098369110Glenn Kasten        "Cannot set AudioPlayer playstate to %d: Android object in invalid state"
4067537364adc48cd6fa56e36d4201428b5d9dedafJean-Michel Trivi#define ERROR_PLAYER_NEW_NULL_TRACK \
4167537364adc48cd6fa56e36d4201428b5d9dedafJean-Michel Trivi        "Internal error: new AudioTrack shouldn't be NULL"
421d55992cb3ea102899cb7799d428960358ad7214Jean-Michel Trivi#define ERROR_PLAYER_PREFETCH_d \
431d55992cb3ea102899cb7799d428960358ad7214Jean-Michel Trivi        "Error (%d) encountered while prefetching"
444e18ff44c76f52102a6cf7d737a91025ca28feaeJean-Michel Trivi
454e18ff44c76f52102a6cf7d737a91025ca28feaeJean-Michel Trivi//-----------------------------------------------------------------------------
464e18ff44c76f52102a6cf7d737a91025ca28feaeJean-Michel Trivi// Android AudioRecorder errors
474e18ff44c76f52102a6cf7d737a91025ca28feaeJean-Michel Trivi//----------------------
481a6bb4f8e738c9387dc9629db294ea5de618a53cGlenn Kasten#define ERROR_RECORDER_SINK_MUST_BE_ANDROIDSIMPLEBUFFERQUEUE \
491a6bb4f8e738c9387dc9629db294ea5de618a53cGlenn Kasten        "Cannot create AudioRecorder: data sink must be SL_DATALOCATOR_ANDROIDSIMPLEBUFFERQUEUE"
504e18ff44c76f52102a6cf7d737a91025ca28feaeJean-Michel Trivi#define ERROR_RECORDER_SINK_FORMAT_MUST_BE_PCM \
514e18ff44c76f52102a6cf7d737a91025ca28feaeJean-Michel Trivi        "Cannot create AudioRecorder: data sink must be in PCM format"
524e18ff44c76f52102a6cf7d737a91025ca28feaeJean-Michel Trivi#define ERROR_RECORDER_SOURCE_MUST_BE_IODEVICE \
534e18ff44c76f52102a6cf7d737a91025ca28feaeJean-Michel Trivi        "Cannot create AudioRecorder: data source must be SL_DATALOCATOR_IODEVICE"
544e18ff44c76f52102a6cf7d737a91025ca28feaeJean-Michel Trivi#define ERROR_RECORDER_IODEVICE_MUST_BE_AUDIOINPUT \
554e18ff44c76f52102a6cf7d737a91025ca28feaeJean-Michel Trivi        "Cannot create AudioRecorder: data source device type must be SL_IODEVICE_AUDIOINPUT"
564e18ff44c76f52102a6cf7d737a91025ca28feaeJean-Michel Trivi#define ERROR_RECORDER_INPUT_ID_MUST_BE_DEFAULT \
574e18ff44c76f52102a6cf7d737a91025ca28feaeJean-Michel Trivi        "Cannot create AudioRecorder: data source device ID must be SL_DEFAULTDEVICEID_AUDIOINPUT"
584e18ff44c76f52102a6cf7d737a91025ca28feaeJean-Michel Trivi#define ERROR_RECORDERPRESET_SET_UNKNOWN_PRESET \
594e18ff44c76f52102a6cf7d737a91025ca28feaeJean-Michel Trivi        "Cannot set recording preset: unknown or invalid preset"
604e18ff44c76f52102a6cf7d737a91025ca28feaeJean-Michel Trivi#define ERROR_RECORDERPRESET_REALIZED \
614e18ff44c76f52102a6cf7d737a91025ca28feaeJean-Michel Trivi        "Cannot set recording preset: audio recorder already realized"
624e18ff44c76f52102a6cf7d737a91025ca28feaeJean-Michel Trivi
634e18ff44c76f52102a6cf7d737a91025ca28feaeJean-Michel Trivi//-----------------------------------------------------------------------------
644e18ff44c76f52102a6cf7d737a91025ca28feaeJean-Michel Trivi// Android Configuration errors
654e18ff44c76f52102a6cf7d737a91025ca28feaeJean-Michel Trivi//----------------------
664e18ff44c76f52102a6cf7d737a91025ca28feaeJean-Michel Trivi#define ERROR_CONFIG_UNKNOWN_KEY \
674e18ff44c76f52102a6cf7d737a91025ca28feaeJean-Michel Trivi        "Configuration error: unknown key"
684e18ff44c76f52102a6cf7d737a91025ca28feaeJean-Michel Trivi#define ERROR_CONFIG_VALUESIZE_TOO_LOW \
694e18ff44c76f52102a6cf7d737a91025ca28feaeJean-Michel Trivi        "Configuration error: value size too low to store valid value"
704e18ff44c76f52102a6cf7d737a91025ca28feaeJean-Michel Trivi#define ERROR_CONFIG_NULL_PARAM \
714e18ff44c76f52102a6cf7d737a91025ca28feaeJean-Michel Trivi        "Configuration error: invalid NULL parameter"
72