Home | History | Annotate | Download | only in inc
      1 /*
      2  * Copyright (C) 2011 The Android Open Source Project
      3  *
      4  * Licensed under the Apache License, Version 2.0 (the "License");
      5  * you may not use this file except in compliance with the License.
      6  * You may obtain a copy of the License at
      7  *
      8  *      http://www.apache.org/licenses/LICENSE-2.0
      9  *
     10  * Unless required by applicable law or agreed to in writing, software
     11  * distributed under the License is distributed on an "AS IS" BASIS,
     12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
     13  * See the License for the specific language governing permissions and
     14  * limitations under the License.
     15  */
     16 
     17 /**
     18  *************************************************************************
     19  * @file   M4MCS_API.h
     20  * @brief  MCS error codes definitions (Media Compressor Service)
     21  * @note
     22  *************************************************************************
     23  **/
     24 
     25 #ifndef __M4MCS_ErrorCodes_H__
     26 #define __M4MCS_ErrorCodes_H__
     27 
     28 /**
     29  *    OSAL basic types and errors */
     30 #include "M4OSA_Types.h"
     31 #include "M4OSA_Error.h"
     32 
     33 /**
     34  *    OSAL core ID definitions */
     35 #include "M4OSA_CoreID.h"
     36 
     37 
     38 /************************************************************************/
     39 /* Warning codes                                                        */
     40 /************************************************************************/
     41 
     42 /* End of processing, user should now call M4MCS_close() */
     43 #define M4MCS_WAR_TRANSCODING_DONE            M4OSA_ERR_CREATE( M4_WAR, M4MCS, 0x1)
     44 /* Mediatype is not supported by the MCS */
     45 #define M4MCS_WAR_MEDIATYPE_NOT_SUPPORTED    M4OSA_ERR_CREATE( M4_WAR, M4MCS, 0x2)
     46 /* Indicate that picture will be automatically resized to fit into the required
     47    parameters (file size) */
     48 #define M4MCS_WAR_PICTURE_AUTO_RESIZE        M4OSA_ERR_CREATE( M4_WAR, M4MCS, 0x3)
     49 
     50 /************************************************************************/
     51 /* Error codes                                                          */
     52 /************************************************************************/
     53 
     54 
     55 /* ----- OPEN ERRORS ----- */
     56 
     57 /* The input file contains no supported stream (may be a corrupted file) */
     58 #define M4MCS_ERR_INPUT_FILE_CONTAINS_NO_SUPPORTED_STREAM   M4OSA_ERR_CREATE( M4_ERR, M4MCS, 0x01)
     59 /* The input file is invalid/corrupted */
     60 #define M4MCS_ERR_INVALID_INPUT_FILE                        M4OSA_ERR_CREATE( M4_ERR, M4MCS, 0x02)
     61 /* The input video frame size parameter is undefined */
     62 #define M4MCS_ERR_INVALID_INPUT_VIDEO_FRAME_SIZE            M4OSA_ERR_CREATE( M4_ERR, M4MCS, 0x03)
     63 /* The input video frame size is non multiple of 16 */
     64 #define M4MCS_ERR_INPUT_VIDEO_SIZE_NON_X16                  M4OSA_ERR_CREATE( M4_ERR, M4MCS, 0x04)
     65 
     66 
     67 /* ----- SET OUTPUT PARAMS ERRORS ----- */
     68 
     69 /* The output video format parameter is undefined */
     70 #define M4MCS_ERR_UNDEFINED_OUTPUT_VIDEO_FORMAT             M4OSA_ERR_CREATE( M4_ERR, M4MCS, 0x10)
     71 /* The output video frame size parameter is undefined */
     72 #define M4MCS_ERR_UNDEFINED_OUTPUT_VIDEO_FRAME_SIZE         M4OSA_ERR_CREATE( M4_ERR, M4MCS, 0x11)
     73 /* The output video frame rate parameter is undefined */
     74 #define M4MCS_ERR_UNDEFINED_OUTPUT_VIDEO_FRAME_RATE         M4OSA_ERR_CREATE( M4_ERR, M4MCS, 0x12)
     75 /* The output audio format parameter is undefined */
     76 #define M4MCS_ERR_UNDEFINED_OUTPUT_AUDIO_FORMAT             M4OSA_ERR_CREATE( M4_ERR, M4MCS, 0x13)
     77 /* The output video frame size parameter is incompatible with H263 encoding */
     78 #define M4MCS_ERR_INVALID_VIDEO_FRAME_SIZE_FOR_H263         M4OSA_ERR_CREATE( M4_ERR, M4MCS, 0x14)
     79 /* The output video frame rate parameter is incompatible with H263 encoding
     80    (It can't happen in current version of MCS!) */
     81 #define M4MCS_ERR_INVALID_VIDEO_FRAME_RATE_FOR_H263         M4OSA_ERR_CREATE( M4_ERR, M4MCS, 0x15)
     82 /* A null clip duration as been computed, which is unvalid (should never happen!) */
     83 #define M4MCS_ERR_DURATION_IS_NULL                          M4OSA_ERR_CREATE( M4_ERR, M4MCS, 0x16)
     84 /* The .mp4 container cannot handle h263 codec */
     85 #define M4MCS_ERR_H263_FORBIDDEN_IN_MP4_FILE                M4OSA_ERR_CREATE( M4_ERR, M4MCS, 0x17)
     86 
     87 
     88 /* ----- PREPARE DECODERS ERRORS ----- */
     89 
     90 /* H263 Profile (other than 0) is not supported */
     91 #define M4MCS_ERR_H263_PROFILE_NOT_SUPPORTED                M4OSA_ERR_CREATE( M4_ERR, M4MCS, 0x20)
     92 /* The input file contains an AAC audio track with an invalid sampling frequency
     93    (should never happen) */
     94 #define M4MCS_ERR_INVALID_AAC_SAMPLING_FREQUENCY            M4OSA_ERR_CREATE( M4_ERR, M4MCS, 0x21)
     95 /* The audio conversion (AAC to AMR-NB, or MP3) failed */
     96 #define M4MCS_ERR_AUDIO_CONVERSION_FAILED                   M4OSA_ERR_CREATE( M4_ERR, M4MCS, 0x22)
     97 
     98 
     99 /* ----- SET ENCODING PARAMS ERRORS ----- */
    100 
    101 /* Begin cut time is larger than the input clip duration */
    102 #define M4MCS_ERR_BEGIN_CUT_LARGER_THAN_DURATION            M4OSA_ERR_CREATE( M4_ERR, M4MCS, 0x30)
    103 /* Begin cut and End cut are equals */
    104 #define M4MCS_ERR_BEGIN_CUT_EQUALS_END_CUT                  M4OSA_ERR_CREATE( M4_ERR, M4MCS, 0x31)
    105 /* End cut time is smaller than begin cut time */
    106 #define M4MCS_ERR_END_CUT_SMALLER_THAN_BEGIN_CUT            M4OSA_ERR_CREATE( M4_ERR, M4MCS, 0x32)
    107 /* Not enough space to store whole output file at given bitrates */
    108 #define M4MCS_ERR_MAXFILESIZE_TOO_SMALL                     M4OSA_ERR_CREATE( M4_ERR, M4MCS, 0x33)
    109 /* Video bitrate is too low (avoid ugly video) */
    110 #define M4MCS_ERR_VIDEOBITRATE_TOO_LOW                      M4OSA_ERR_CREATE( M4_ERR, M4MCS, 0x34)
    111 /* Audio bitrate is too low (16 kbps min for aac, 12.2 for amr, 8 for mp3) */
    112 #define M4MCS_ERR_AUDIOBITRATE_TOO_LOW                      M4OSA_ERR_CREATE( M4_ERR, M4MCS, 0x35)
    113 /* Video bitrate too high (we limit to 800 kbps) */
    114 #define M4MCS_ERR_VIDEOBITRATE_TOO_HIGH                     M4OSA_ERR_CREATE( M4_ERR, M4MCS, 0x36)
    115 /* Audio bitrate too high (we limit to 96 kbps) */
    116 #define M4MCS_ERR_AUDIOBITRATE_TOO_HIGH                     M4OSA_ERR_CREATE( M4_ERR, M4MCS, 0x37)
    117 
    118 /* ----- OTHERS ERRORS ----- */
    119 #define M4MCS_ERR_OUTPUT_FILE_SIZE_TOO_SMALL                M4OSA_ERR_CREATE( M4_ERR, M4MCS, 0x50)
    120 #define M4MCS_ERR_NOMORE_SPACE                              M4OSA_ERR_CREATE(M4_ERR, M4MCS, 0x51)
    121 #define M4MCS_ERR_FILE_DRM_PROTECTED                        M4OSA_ERR_CREATE(M4_ERR, M4MCS, 0x52)
    122 #endif /* __M4MCS_ErrorCodes_H__ */
    123 
    124