mirror of
https://github.com/alsa-project/alsa-lib.git
synced 2025-10-29 05:40:25 -04:00
Updated to current API..
This commit is contained in:
parent
924d53cccc
commit
5c946996db
2 changed files with 11 additions and 8 deletions
|
|
@ -152,6 +152,7 @@ void showstat(snd_pcm_t *handle, int channel, snd_pcm_channel_status_t *rstatus)
|
|||
printf("%s:\n", str);
|
||||
printf(" status = %i\n", status.status);
|
||||
printf(" position = %u\n", status.scount);
|
||||
printf(" free = %i\n", status.free);
|
||||
if (rstatus)
|
||||
*rstatus = status;
|
||||
}
|
||||
|
|
@ -230,11 +231,11 @@ int main(void)
|
|||
|
||||
// latency = 4096 - 16;
|
||||
setscheduler();
|
||||
if ((err = snd_pcm_open(&phandle, pcard, pdevice, SND_PCM_OPEN_STREAM_PLAYBACK)) < 0) {
|
||||
if ((err = snd_pcm_open(&phandle, pcard, pdevice, SND_PCM_OPEN_PLAYBACK)) < 0) {
|
||||
printf("Playback open error: %s\n", snd_strerror(err));
|
||||
return 0;
|
||||
}
|
||||
if ((err = snd_pcm_open(&chandle, ccard, cdevice, SND_PCM_OPEN_STREAM_CAPTURE)) < 0) {
|
||||
if ((err = snd_pcm_open(&chandle, ccard, cdevice, SND_PCM_OPEN_CAPTURE)) < 0) {
|
||||
printf("Record open error: %s\n", snd_strerror(err));
|
||||
return 0;
|
||||
}
|
||||
|
|
@ -274,8 +275,8 @@ int main(void)
|
|||
}
|
||||
showstat(phandle, SND_PCM_CHANNEL_PLAYBACK, &pstatus);
|
||||
showstat(chandle, SND_PCM_CHANNEL_CAPTURE, &cstatus);
|
||||
snd_pcm_flush_capture(chandle);
|
||||
snd_pcm_flush_playback(phandle);
|
||||
snd_pcm_capture_flush(chandle);
|
||||
snd_pcm_playback_flush(phandle);
|
||||
if (ok) {
|
||||
printf("Playback time = %li.%i, Record time = %li.%i, diff = %li\n",
|
||||
pstatus.stime.tv_sec,
|
||||
|
|
|
|||
|
|
@ -2,11 +2,13 @@
|
|||
#include <string.h>
|
||||
#include "../include/asoundlib.h"
|
||||
|
||||
void info_channel(snd_pcm_t *handle, char *id)
|
||||
void info_channel(snd_pcm_t *handle, int channel, char *id)
|
||||
{
|
||||
snd_pcm_channel_info_t chninfo;
|
||||
int err;
|
||||
|
||||
bzero(&chninfo, sizeof(chninfo));
|
||||
chninfo.channel = channel;
|
||||
if ((err = snd_pcm_channel_info(handle, &chninfo))<0) {
|
||||
fprintf(stderr, "channel info error: %s\n", snd_strerror(err));
|
||||
return;
|
||||
|
|
@ -146,7 +148,7 @@ void info(void)
|
|||
snd_pcm_info_t info;
|
||||
int err;
|
||||
|
||||
if ((err = snd_pcm_open(&handle, 0, 0, SND_PCM_OPEN_PLAYBACK))<0) {
|
||||
if ((err = snd_pcm_open(&handle, 0, 0, SND_PCM_OPEN_DUPLEX))<0) {
|
||||
fprintf(stderr, "open error: %s\n", snd_strerror(err));
|
||||
return;
|
||||
}
|
||||
|
|
@ -162,9 +164,9 @@ void info(void)
|
|||
printf(" playback : %i\n", info.playback);
|
||||
printf(" capture : %i\n", info.capture);
|
||||
if (info.flags & SND_PCM_INFO_PLAYBACK)
|
||||
info_channel(handle, "Playback");
|
||||
info_channel(handle, SND_PCM_CHANNEL_PLAYBACK, "Playback");
|
||||
if (info.flags & SND_PCM_INFO_CAPTURE)
|
||||
info_channel(handle, "Capture");
|
||||
info_channel(handle, SND_PCM_CHANNEL_CAPTURE, "Capture");
|
||||
snd_pcm_close(handle);
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue