Changeset 57e8b3b in mainline for uspace/app
- Timestamp:
- 2012-07-15T15:25:43Z (14 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- 5cd5079
- Parents:
- 2cc5c835
- Location:
- uspace/app
- Files:
-
- 2 edited
-
dplay/dplay.c (modified) (3 diffs)
-
drec/drec.c (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
-
uspace/app/dplay/dplay.c
r2cc5c835 r57e8b3b 51 51 52 52 #define DEFAULT_DEVICE "/hw/pci0/00:01.0/sb16/pcm" 53 #define SUBBUFFERS 253 #define BUFFER_PARTS 2 54 54 55 55 typedef struct { … … 85 85 async_answer_0(iid, EOK); 86 86 playback_t *pb = arg; 87 const size_t buffer_part = pb->buffer.size / SUBBUFFERS;87 const size_t buffer_part = pb->buffer.size / BUFFER_PARTS; 88 88 while (1) { 89 89 ipc_call_t call; 90 90 ipc_callid_t callid = async_get_call(&call); 91 91 switch(IPC_GET_IMETHOD(call)) { 92 case PCM_EVENT_ PLAYBACK_DONE:93 printf(" +");92 case PCM_EVENT_FRAMES_PLAYED: 93 printf("%u frames\n", IPC_GET_ARG1(call)); 94 94 async_answer_0(callid, EOK); 95 95 break; 96 96 case PCM_EVENT_PLAYBACK_TERMINATED: 97 printf(" \nPlayback terminated\n");97 printf("Playback terminated\n"); 98 98 fibril_mutex_lock(&pb->mutex); 99 99 pb->playing = false; … … 136 136 printf("Buffer data ready.\n"); 137 137 fibril_mutex_lock(&pb->mutex); 138 const unsigned frames = pb->buffer.size / 139 (BUFFER_PARTS * channels * pcm_sample_format_size(format)); 138 140 int ret = audio_pcm_start_playback(pb->device, 139 SUBBUFFERS, channels, sampling_rate, format);141 frames, channels, sampling_rate, format); 140 142 if (ret != EOK) { 141 143 fibril_mutex_unlock(&pb->mutex); -
uspace/app/drec/drec.c
r2cc5c835 r57e8b3b 52 52 53 53 #define DEFAULT_DEVICE "/hw/pci0/00:01.0/sb16/pcm" 54 #define SUBBUFFERS 254 #define BUFFER_PARTS 2 55 55 56 56 const unsigned sampling_rate = 44100, channels = 2, sample_size = 16; … … 84 84 async_answer_0(iid, EOK); 85 85 record_t *rec = arg; 86 const size_t buffer_part = rec->buffer.size / SUBBUFFERS;86 const size_t buffer_part = rec->buffer.size / BUFFER_PARTS; 87 87 while (1) { 88 88 ipc_call_t call; 89 89 ipc_callid_t callid = async_get_call(&call); 90 90 switch(IPC_GET_IMETHOD(call)) { 91 case PCM_EVENT_ RECORDING_DONE:92 printf(" +");91 case PCM_EVENT_FRAMES_RECORDED: 92 printf("%u frames\n", IPC_GET_ARG1(call)); 93 93 async_answer_0(callid, EOK); 94 94 break; 95 95 case PCM_EVENT_RECORDING_TERMINATED: 96 printf(" \nRecording terminated\n");96 printf("Recording terminated\n"); 97 97 return; 98 98 default: … … 122 122 printf("Recording: %dHz, %s, %d channel(s).\n", 123 123 sampling_rate, pcm_sample_format_str(format), channels); 124 const unsigned frames = rec->buffer.size / 125 (BUFFER_PARTS * channels * pcm_sample_format_size(format)); 124 126 int ret = audio_pcm_start_record(rec->device, 125 SUBBUFFERS, channels, sampling_rate, format);127 frames, channels, sampling_rate, format); 126 128 if (ret != EOK) { 127 129 printf("Failed to start recording: %s.\n", str_error(ret));
Note:
See TracChangeset
for help on using the changeset viewer.
