summaryrefslogtreecommitdiffstats
path: root/libMpegTPEnc/include/mpegFileWrite.h
blob: c515d0cca2d8ec2654157710255d05a4b94bd2e5 (plain)
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
/*****************************  MPEG-4 AAC Decoder  **************************

                        (C) Copyright Fraunhofer IIS (2006)
                               All Rights Reserved

    Please be advised that this software and/or program delivery is
    Confidential Information of Fraunhofer and subject to and covered by the

    Fraunhofer IIS Software Evaluation Agreement
    between Google Inc. and  Fraunhofer
    effective and in full force since March 1, 2012.

    You may use this software and/or program only under the terms and
    conditions described in the above mentioned Fraunhofer IIS Software
    Evaluation Agreement. Any other and/or further use requires a separate agreement.


   $Id$
   Author(s):   Manuel Jander
   Description: Bitstream data provider for MP4 decoders

   This software and/or program is protected by copyright law and international
   treaties. Any reproduction or distribution of this software and/or program,
   or any portion of it, may result in severe civil and criminal penalties, and
   will be prosecuted to the maximum extent possible under law.

******************************************************************************/

#include "machine_type.h"
#include "FDK_audio.h"

/*!< If MPFWRITE_MP4FF_ENABLE is set, include support for MPEG ISO fileformat.
     If not set, no .mp4, .m4a and .3gp files can be used for input.  */
/* #define MPFWRITE_MP4FF_ENABLE */

typedef struct STRUCT_FILEWRITE *HANDLE_FILEWRITE;

#ifdef __cplusplus
extern "C" {
#endif

/**
 * \brief                         Open an MPEG audio file.
 * \param mpegFileWrite_Filename  String of the filename to be opened.
 * \param fileFmt                 Transport format to use.
 * \param conf
 * \param confSize
 * \return                        MPEG file write handle.
 */
HANDLE_FILEWRITE mpegFileWrite_Open( char           *mpegFileWrite_Filename,
                                     FILE_FORMAT     fileFmt,
                                     TRANSPORT_TYPE  transportType,
                                     UCHAR          *conf,
                                     UINT            confSize
                                   );

/**
 * \brief             Write to an MPEG audio file.
 * \param inBuffer    Buffer to write.
 * \param bufferSize  Size of buffer to write in bytes.
 * \return            0 on sucess, -1 on unsupported file format or write error.
 */
int mpegFileWrite_Write( HANDLE_FILEWRITE  hFileWrite,
                         UCHAR            *inBuffer,
                         int              bufferSize
                       );

/**
 * \brief             Deallocate memory and close file.
 * \param hFileWrite  MPEG file write handle.
 * \return            0 on sucess.
 */
int mpegFileWrite_Close( HANDLE_FILEWRITE *hFileWrite );


#ifdef __cplusplus
}
#endif