kopia lustrzana https://github.com/jamescoxon/dl-fldigi
Wavefile playback
* Corrected fault when trying to playback a stereo wavefile * Leonardo is not yet a ham, but credits his interest to his grandfather, I5LAPpull/2/head
rodzic
5425fb28c9
commit
0ddb867f81
|
@ -1608,7 +1608,23 @@ void cb_mnuPlayback(Fl_Widget *w, void *d)
|
|||
return;
|
||||
}
|
||||
playval = m->value();
|
||||
if(!scard->Playback(playval)) {
|
||||
|
||||
int err = scard->Playback(playval);
|
||||
|
||||
if(err < 0) {
|
||||
switch (err) {
|
||||
case -1:
|
||||
fl_alert2(_("No file name given"));
|
||||
break;
|
||||
case -2:
|
||||
fl_alert2(_("Unsupported format"));
|
||||
break;
|
||||
case -3:
|
||||
fl_alert2(_("channels != 1"));
|
||||
break;
|
||||
default:
|
||||
fl_alert2(_("unknown wave file error"));
|
||||
}
|
||||
m->clear();
|
||||
playval = false;
|
||||
}
|
||||
|
@ -4442,7 +4458,7 @@ void create_fl_digi_main_primary() {
|
|||
const char *label6a = _("# R");
|
||||
const char *label7a = _("Ex");
|
||||
const char *xData = "00000";
|
||||
const char *xCall = "WW8WWW/WWWW";
|
||||
const char *xCall = "WW8WWW";//"WW8WWW/WWWW";
|
||||
int wData = static_cast<int>(fl_width(xData));
|
||||
int wCall = static_cast<int>(fl_width(xCall));
|
||||
|
||||
|
|
|
@ -186,16 +186,21 @@ int SoundBase::Playback(bool val)
|
|||
int format;
|
||||
get_file_params("playback.wav", &fname, &format);
|
||||
if (!fname)
|
||||
return 0;
|
||||
return -1;
|
||||
|
||||
SF_INFO info = { 0, 0, 0, 0, 0, 0 };
|
||||
if ((ifPlayback = sf_open(fname, SFM_READ, &info)) == NULL) {
|
||||
LOG_ERROR("Could not read %s:%s", fname, sf_strerror(NULL) );
|
||||
return 0;
|
||||
return -2;
|
||||
}
|
||||
|
||||
if (info.channels != 1) {
|
||||
sf_close(ifPlayback);
|
||||
return -3;
|
||||
}
|
||||
|
||||
playback = true;
|
||||
return 1;
|
||||
return 0;
|
||||
}
|
||||
|
||||
int SoundBase::Generate(bool val)
|
||||
|
|
Ładowanie…
Reference in New Issue