GPAC
Open Source Multimedia Framework. For more information, check out http://gpac.wp.mines-telecom.fr
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups
aac_in.c File Reference
#include <gpac/modules/service.h>
#include <gpac/modules/codec.h>
#include <gpac/avparse.h>
#include <gpac/constants.h>
#include <gpac/download.h>
#include <time.h>
+ Include dependency graph for aac_in.c:

Data Structures

struct  AACReader
 
struct  ADTSHeader
 

Functions

static u32 AAC_RegisterMimeTypes (const GF_InputService *plug)
 
static Bool AAC_CanHandleURL (GF_InputService *plug, const char *url)
 
static GF_ESDAAC_GetESD (AACReader *read)
 
static void AAC_SetupObject (AACReader *read)
 
static Bool ADTS_SyncFrame (GF_BitStream *bs, Bool is_complete, ADTSHeader *hdr)
 
static Bool AAC_ConfigureFromFile (AACReader *read)
 
static void AAC_RegulateDataRate (AACReader *read)
 
static void AAC_OnLiveData (AACReader *read, const char *data, u32 data_size)
 
static void AAC_disconnect_from_http_and_free (AACReader *read)
 
void AAC_NetIO (void *cbk, GF_NETIO_Parameter *param)
 
void aac_download_file (AACReader *read, char *url)
 
static void AAC_Reader_del (AACReader *read)
 
static AACReaderAAC_Reader_new ()
 
static Bool aac_is_local (const char *url)
 
static GF_Err AAC_ConnectService (GF_InputService *plug, GF_ClientService *serv, const char *url)
 
static GF_Err AAC_CloseService (GF_InputService *plug)
 
static GF_DescriptorAAC_GetServiceDesc (GF_InputService *plug, u32 expect_type, const char *sub_url)
 
static GF_Err AAC_ConnectChannel (GF_InputService *plug, LPNETCHANNEL channel, const char *url, Bool upstream)
 
static GF_Err AAC_DisconnectChannel (GF_InputService *plug, LPNETCHANNEL channel)
 
static GF_Err AAC_ServiceCommand (GF_InputService *plug, GF_NetworkCommand *com)
 
static GF_Err AAC_ChannelGetSLP (GF_InputService *plug, LPNETCHANNEL channel, char **out_data_ptr, u32 *out_data_size, GF_SLHeader *out_sl_hdr, Bool *sl_compressed, GF_Err *out_reception_status, Bool *is_new_data)
 
static GF_Err AAC_ChannelReleaseSLP (GF_InputService *plug, LPNETCHANNEL channel)
 
GF_InputServiceAAC_Load ()
 
void AAC_Delete (void *ifce)
 
const u32QueryInterfaces ()
 
GF_BaseInterfaceLoadInterface (u32 InterfaceType)
 
void ShutdownInterface (GF_BaseInterface *ifce)
 

Variables

static const char * AAC_MIMES [] = { "audio/x-m4a", "audio/aac", "audio/aacp", "audio/x-aac", 0 }
 
static const char * AAC_EXTENSIONS = "aac mp4a"
 
static const char * AAC_DESC = "MPEG-4 AAC Music"
 

Data Structure Documentation

struct AACReader
+ Collaboration diagram for AACReader:
Data Fields
GF_ClientService * service
GF_InputService * input
LPNETCHANNEL ch
Bool is_remote
FILE * stream
u32 duration
Bool needs_connection
u32 pad_bytes
Bool done
u32 is_inline
char * data
u32 data_size
GF_SLHeader sl_hdr
u32 sample_rate
u32 oti
u32 sr_idx
u32 nb_ch
u32 prof
Double start_range
Double end_range
u32 current_time
u32 nb_samp
GF_DownloadSession * dnload
Bool is_live
char prev_data[1000]
u32 prev_size
char * icy_name
char * icy_genre
char * icy_track_name
Bool hybrid_on
u64 prev_map_time
struct ADTSHeader
+ Collaboration diagram for ADTSHeader:
Data Fields
Bool is_mp2
Bool no_crc
u32 profile
u32 sr_idx
u32 nb_ch
u32 frame_size
u32 hdr_size

Function Documentation

static u32 AAC_RegisterMimeTypes ( const GF_InputService plug)
static

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static Bool AAC_CanHandleURL ( GF_InputService plug,
const char *  url 
)
static

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static GF_ESD* AAC_GetESD ( AACReader read)
static

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static void AAC_SetupObject ( AACReader read)
static

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static Bool ADTS_SyncFrame ( GF_BitStream *  bs,
Bool  is_complete,
ADTSHeader hdr 
)
static

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static Bool AAC_ConfigureFromFile ( AACReader read)
static

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static void AAC_RegulateDataRate ( AACReader read)
static

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static void AAC_OnLiveData ( AACReader read,
const char *  data,
u32  data_size 
)
static

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static void AAC_disconnect_from_http_and_free ( AACReader read)
static

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void AAC_NetIO ( void *  cbk,
GF_NETIO_Parameter param 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void aac_download_file ( AACReader read,
char *  url 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static void AAC_Reader_del ( AACReader read)
static

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static AACReader* AAC_Reader_new ( )
static

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static Bool aac_is_local ( const char *  url)
static

+ Here is the caller graph for this function:

static GF_Err AAC_ConnectService ( GF_InputService plug,
GF_ClientService *  serv,
const char *  url 
)
static

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static GF_Err AAC_CloseService ( GF_InputService plug)
static

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static GF_Descriptor* AAC_GetServiceDesc ( GF_InputService plug,
u32  expect_type,
const char *  sub_url 
)
static

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static GF_Err AAC_ConnectChannel ( GF_InputService plug,
LPNETCHANNEL  channel,
const char *  url,
Bool  upstream 
)
static

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static GF_Err AAC_DisconnectChannel ( GF_InputService plug,
LPNETCHANNEL  channel 
)
static

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static GF_Err AAC_ServiceCommand ( GF_InputService plug,
GF_NetworkCommand com 
)
static

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static GF_Err AAC_ChannelGetSLP ( GF_InputService plug,
LPNETCHANNEL  channel,
char **  out_data_ptr,
u32 out_data_size,
GF_SLHeader out_sl_hdr,
Bool sl_compressed,
GF_Err out_reception_status,
Bool is_new_data 
)
static

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static GF_Err AAC_ChannelReleaseSLP ( GF_InputService plug,
LPNETCHANNEL  channel 
)
static

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

GF_InputService* AAC_Load ( )

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void AAC_Delete ( void *  ifce)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

const u32* QueryInterfaces ( )
GF_BaseInterface* LoadInterface ( u32  InterfaceType)

+ Here is the call graph for this function:

void ShutdownInterface ( GF_BaseInterface ifce)

+ Here is the call graph for this function:

Variable Documentation

const char* AAC_MIMES[] = { "audio/x-m4a", "audio/aac", "audio/aacp", "audio/x-aac", 0 }
static
const char* AAC_EXTENSIONS = "aac mp4a"
static
const char* AAC_DESC = "MPEG-4 AAC Music"
static