Changeset 2cc5c835 in mainline for uspace/app/drec/drec.c
- Timestamp:
- 2012-07-15T15:14:10Z (12 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- 57e8b3b
- Parents:
- b497018
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/app/drec/drec.c
rb497018 r2cc5c835 65 65 } buffer; 66 66 FILE* file; 67 a sync_exch_t *device;67 audio_pcm_sess_t *device; 68 68 } record_t; 69 69 70 static void record_initialize(record_t *rec, a sync_exch_t *exch)71 { 72 assert( exch);70 static void record_initialize(record_t *rec, audio_pcm_sess_t *sess) 71 { 72 assert(sess); 73 73 assert(rec); 74 74 rec->buffer.base = NULL; … … 76 76 rec->buffer.position = NULL; 77 77 rec->file = NULL; 78 rec->device = exch;78 rec->device = sess; 79 79 } 80 80 … … 151 151 } 152 152 153 devman_handle_t pcm_handle; 154 int ret = devman_fun_get_handle(device, &pcm_handle, 0); 155 if (ret != EOK) { 156 printf("Failed to get device(%s) handle: %s.\n", 157 device, str_error(ret)); 158 return 1; 159 } 160 161 async_sess_t *session = devman_device_connect( 162 EXCHANGE_SERIALIZE, pcm_handle, IPC_FLAG_BLOCKING); 153 154 audio_pcm_sess_t *session = audio_pcm_open(device); 163 155 if (!session) { 164 156 printf("Failed to connect to device.\n"); … … 166 158 } 167 159 168 async_exch_t *exch = async_exchange_begin(session);169 if (!exch) {170 ret = EPARTY;171 printf("Failed to start session exchange.\n");172 goto close_session;173 }174 160 const char* info = NULL; 175 ret = audio_pcm_get_info_str(exch, &info);161 int ret = audio_pcm_get_info_str(session, &info); 176 162 if (ret != EOK) { 177 163 printf("Failed to get PCM info.\n"); … … 182 168 183 169 record_t rec; 184 record_initialize(&rec, exch);170 record_initialize(&rec, session); 185 171 186 172 ret = audio_pcm_get_buffer(rec.device, &rec.buffer.base, … … 220 206 cleanup: 221 207 munmap(rec.buffer.base, rec.buffer.size); 222 audio_pcm_release_buffer( exch);208 audio_pcm_release_buffer(rec.device); 223 209 close_session: 224 async_exchange_end(exch);225 210 async_hangup(session); 226 211 return ret == EOK ? 0 : 1;
Note:
See TracChangeset
for help on using the changeset viewer.