Changeset 2170:ad2927da578b in roaraudio for include
- Timestamp:
- 07/26/09 16:35:59 (15 years ago)
- Branch:
- default
- Phase:
- public
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
include/libroardsp/transcode.h
r2169 r2170 38 38 #include "libroardsp.h" 39 39 40 #define ROAR_XCODER_STAGE_NONE 0 41 #define ROAR_XCODER_STAGE_INITED 0 42 #define ROAR_XCODER_STAGE_WAIT 1 43 #define ROAR_XCODER_STAGE_MAGIC 2 44 #define ROAR_XCODER_STAGE_OPENING 3 45 #define ROAR_XCODER_STAGE_OPENED 4 46 #define ROAR_XCODER_STAGE_CLOSING 5 47 #define ROAR_XCODER_STAGE_CLOSED 6 48 49 #define ROAR_BIXCODER_FLAGS_NONE 0x0000 50 #define ROAR_BIXCODER_FLAGS_ENCODE 0x0001 51 #define ROAR_BIXCODER_FLAGS_DECODE 0x0002 52 53 struct roar_xcoder; 54 55 struct roar_xcoder_entry { 56 int * codecs; 57 int (*init)(struct roar_xcoder * state); 58 int (*uninit)(struct roar_xcoder * state); 59 int (*packet_size)(struct roar_xcoder * state, int samples); 60 int (*proc)(struct roar_xcoder * state, void * buf, size_t len); 61 }; 62 63 struct roar_xcoder { 64 void * inst; 65 struct roar_xcoder_entry * entry; 66 struct roar_vio_calls * backend; 67 int flags; 68 int stage; 69 ssize_t packet_len; 70 struct roar_buffer * iobuffer; 71 struct { 72 struct roar_audio_info coded; 73 struct roar_audio_info pcm; 74 } info; 75 }; 76 77 struct roar_bixcoder { 78 struct roar_xcoder encoder, decoder; 79 int flags; 80 }; 81 82 struct roar_transcoder { 83 struct roar_xcoder encoder, decoder; 84 }; 85 86 int roar_xcoder_init(struct roar_xcoder * state, int encoder, struct roar_audio_info * info, struct roar_vio_calls * vio); 87 int roar_xcoder_set_backend(struct roar_xcoder * state, struct roar_vio_calls * vio); 88 int roar_xcoder_packet_size(struct roar_xcoder * state, int samples); 89 int roar_xcoder_close (struct roar_xcoder * state); 90 int roar_xcoder_proc_packet(struct roar_xcoder * state, void * buf, size_t len); 91 int roar_xcoder_proc (struct roar_xcoder * state, void * buf, size_t len); 92 93 int roar_bixcoder_init(struct roar_bixcoder * state, struct roar_audio_info * info, struct roar_vio_calls * vio); 94 int roar_bixcoder_packet_size (struct roar_bixcoder * state, int samples); 95 int roar_bixcoder_close (struct roar_bixcoder * state); 96 int roar_bixcoder_read_packet (struct roar_bixcoder * state, void * buf, size_t len); 97 int roar_bixcoder_read (struct roar_bixcoder * state, void * buf, size_t len); 98 int roar_bixcoder_write_packet(struct roar_bixcoder * state, void * buf, size_t len); 99 int roar_bixcoder_write (struct roar_bixcoder * state, void * buf, size_t len); 100 40 101 #endif 41 102
Note: See TracChangeset
for help on using the changeset viewer.