Mercurial > octave-nkf
comparison libinterp/dldfcn/audiodevinfo.cc @ 19617:6464cd19e0f4
* audiodevinfo.cc: Style fixes. Warning IDs.
author | John W. Eaton <jwe@octave.org> |
---|---|
date | Thu, 15 Jan 2015 15:36:54 -0500 |
parents | 478d35191196 |
children | 76478d2da117 |
comparison
equal
deleted
inserted
replaced
19616:27c5f42a7a64 | 19617:6464cd19e0f4 |
---|---|
856 left (), right (), stream (0), output_parameters (), type () | 856 left (), right (), stream (0), output_parameters (), type () |
857 { } | 857 { } |
858 | 858 |
859 audioplayer::~audioplayer (void) | 859 audioplayer::~audioplayer (void) |
860 { | 860 { |
861 if (isplaying()) | 861 if (isplaying ()) |
862 { | 862 { |
863 warning ("audioplayer::~audioplayer: Interrupting playing audioplayer"); | 863 warning ("Octave:audio-interrupt", |
864 "interrupting playing audioplayer"); | |
864 stop (); | 865 stop (); |
865 } | 866 } |
866 } | 867 } |
867 | 868 |
868 void | 869 void |
1161 } | 1162 } |
1162 | 1163 |
1163 err = Pa_StopStream (stream); | 1164 err = Pa_StopStream (stream); |
1164 if (err != paNoError) | 1165 if (err != paNoError) |
1165 { | 1166 { |
1166 error ("audioplayer: Error stoping audio playback stream"); | 1167 error ("audioplayer: failed to stop audio playback stream"); |
1167 return; | 1168 return; |
1168 } | 1169 } |
1169 | 1170 |
1170 err = Pa_CloseStream (stream); | 1171 err = Pa_CloseStream (stream); |
1171 if (err != paNoError) | 1172 if (err != paNoError) |
1172 { | 1173 { |
1173 error ("audioplayer: Error closing audio playback stream"); | 1174 error ("audioplayer: failed to close audio playback stream"); |
1174 return; | 1175 return; |
1175 } | 1176 } |
1176 | 1177 |
1177 stream = 0; | 1178 stream = 0; |
1178 set_sample_number (0); | 1179 set_sample_number (0); |
1195 get_fs (), BUFFER_SIZE, paClipOff, | 1196 get_fs (), BUFFER_SIZE, paClipOff, |
1196 portaudio_play_callback, this); | 1197 portaudio_play_callback, this); |
1197 | 1198 |
1198 if (err != paNoError) | 1199 if (err != paNoError) |
1199 { | 1200 { |
1200 error ("audioplayer: Error opening audio playback stream"); | 1201 error ("audioplayer: failed to open audio playback stream"); |
1201 return; | 1202 return; |
1202 } | 1203 } |
1203 | 1204 |
1204 err = Pa_StartStream (stream); | 1205 err = Pa_StartStream (stream); |
1205 if (err != paNoError) | 1206 if (err != paNoError) |
1206 { | 1207 { |
1207 error ("audioplayer: Error starting audio playback stream"); | 1208 error ("audioplayer: failed to start audio playback stream"); |
1208 return; | 1209 return; |
1209 } | 1210 } |
1210 } | 1211 } |
1211 | 1212 |
1212 void | 1213 void |
1217 | 1218 |
1218 PaError err; | 1219 PaError err; |
1219 err = Pa_StopStream (stream); | 1220 err = Pa_StopStream (stream); |
1220 if (err != paNoError) | 1221 if (err != paNoError) |
1221 { | 1222 { |
1222 error ("audiorecorder: Error stoping audio recording stream"); | 1223 error ("audiorecorder: failed to stop audio recording stream"); |
1223 return; | 1224 return; |
1224 } | 1225 } |
1225 } | 1226 } |
1226 | 1227 |
1227 void | 1228 void |
1232 | 1233 |
1233 PaError err; | 1234 PaError err; |
1234 err = Pa_StartStream (stream); | 1235 err = Pa_StartStream (stream); |
1235 if (err != paNoError) | 1236 if (err != paNoError) |
1236 { | 1237 { |
1237 error ("audiorecorder: Error starting audio recording stream"); | 1238 error ("audiorecorder: failed to start audio recording stream"); |
1238 return; | 1239 return; |
1239 } | 1240 } |
1240 } | 1241 } |
1241 | 1242 |
1242 PaStream * | 1243 PaStream * |
1257 if (not Pa_IsStreamStopped (get_stream ())) | 1258 if (not Pa_IsStreamStopped (get_stream ())) |
1258 { | 1259 { |
1259 err = Pa_AbortStream (get_stream ()); | 1260 err = Pa_AbortStream (get_stream ()); |
1260 if (err != paNoError) | 1261 if (err != paNoError) |
1261 { | 1262 { |
1262 error ("audioplayer: Error stopping audio playback stream"); | 1263 error ("audioplayer: failed to stop audio playback stream"); |
1263 return; | 1264 return; |
1264 } | 1265 } |
1265 } | 1266 } |
1266 | 1267 |
1267 err = Pa_CloseStream (get_stream ()); | 1268 err = Pa_CloseStream (get_stream ()); |
1268 if (err != paNoError) | 1269 if (err != paNoError) |
1269 { | 1270 { |
1270 error ("audioplayer: Error closing audio playback stream"); | 1271 error ("audioplayer: failed to close audio playback stream"); |
1271 return; | 1272 return; |
1272 } | 1273 } |
1273 | 1274 |
1274 stream = 0; | 1275 stream = 0; |
1275 } | 1276 } |
1282 | 1283 |
1283 PaError err; | 1284 PaError err; |
1284 err = Pa_IsStreamActive (stream); | 1285 err = Pa_IsStreamActive (stream); |
1285 if (err != 0 && err != 1) | 1286 if (err != 0 && err != 1) |
1286 { | 1287 { |
1287 error ("audiorecorder: Error checking stream activity status"); | 1288 error ("audiorecorder: checking stream activity status failed"); |
1288 return false; | 1289 return false; |
1289 } | 1290 } |
1290 | 1291 |
1291 return (err == 1); | 1292 return (err == 1); |
1292 } | 1293 } |
1394 for (unsigned long i = 0; i < frames; i++) | 1395 for (unsigned long i = 0; i < frames; i++) |
1395 { | 1396 { |
1396 float sample_l = input8[i*channels] / scale_factor; | 1397 float sample_l = input8[i*channels] / scale_factor; |
1397 float sample_r = input8[i*channels + (channels - 1)] / scale_factor; | 1398 float sample_r = input8[i*channels + (channels - 1)] / scale_factor; |
1398 | 1399 |
1399 sound(i, 0) = sample_l; | 1400 sound(i,0) = sample_l; |
1400 sound(i, 1) = sample_r; | 1401 sound(i,1) = sample_r; |
1401 } | 1402 } |
1402 } | 1403 } |
1403 else if (recorder->get_nbits () == 16) | 1404 else if (recorder->get_nbits () == 16) |
1404 { | 1405 { |
1405 static double scale_factor = std::pow (2.0, 15) - 1.0; | 1406 static double scale_factor = std::pow (2.0, 15) - 1.0; |
1409 for (unsigned long i = 0; i < frames; i++) | 1410 for (unsigned long i = 0; i < frames; i++) |
1410 { | 1411 { |
1411 float sample_l = input16[i*channels] / scale_factor; | 1412 float sample_l = input16[i*channels] / scale_factor; |
1412 float sample_r = input16[i*channels + (channels - 1)] / scale_factor; | 1413 float sample_r = input16[i*channels + (channels - 1)] / scale_factor; |
1413 | 1414 |
1414 sound(i, 0) = sample_l; | 1415 sound(i,0) = sample_l; |
1415 sound(i, 1) = sample_r; | 1416 sound(i,1) = sample_r; |
1416 } | 1417 } |
1417 } | 1418 } |
1418 else if (recorder->get_nbits () == 24) | 1419 else if (recorder->get_nbits () == 24) |
1419 { | 1420 { |
1420 static double scale_factor = std::pow (2.0, 23); | 1421 static double scale_factor = std::pow (2.0, 23); |
1439 sample_l32 |= 0xff000000; | 1440 sample_l32 |= 0xff000000; |
1440 | 1441 |
1441 if (sample_r32 & 0x00800000) | 1442 if (sample_r32 & 0x00800000) |
1442 sample_r32 |= 0xff000000; | 1443 sample_r32 |= 0xff000000; |
1443 | 1444 |
1444 sound(i, 0) = sample_l32 / scale_factor; | 1445 sound(i,0) = sample_l32 / scale_factor; |
1445 sound(i, 1) = sample_r32 / scale_factor; | 1446 sound(i,1) = sample_r32 / scale_factor; |
1446 } | 1447 } |
1447 } | 1448 } |
1448 | 1449 |
1449 octave_value_list retval | 1450 octave_value_list retval |
1450 = feval (recorder->octave_callback_function, ovl (sound), 1); | 1451 = feval (recorder->octave_callback_function, ovl (sound), 1); |
1541 | 1542 |
1542 audiorecorder::~audiorecorder (void) | 1543 audiorecorder::~audiorecorder (void) |
1543 { | 1544 { |
1544 if (isrecording ()) | 1545 if (isrecording ()) |
1545 { | 1546 { |
1546 warning ("audiorecorder::~audiorecorder: Interrupting recording audiorecorder"); | 1547 warning ("Octave:audio-interrupt", |
1548 "interrupting recording audiorecorder"); | |
1547 stop (); | 1549 stop (); |
1548 } | 1550 } |
1549 } | 1551 } |
1550 | 1552 |
1551 void | 1553 void |
1717 { | 1719 { |
1718 Matrix audio (2, left.size ()); | 1720 Matrix audio (2, left.size ()); |
1719 | 1721 |
1720 for (unsigned int i = 0; i < left.size (); i++) | 1722 for (unsigned int i = 0; i < left.size (); i++) |
1721 { | 1723 { |
1722 audio(0, i) = left[i]; | 1724 audio(0,i) = left[i]; |
1723 audio(1, i) = right[i]; | 1725 audio(1,i) = right[i]; |
1724 } | 1726 } |
1725 | 1727 |
1726 return audio; | 1728 return audio; |
1727 } | 1729 } |
1728 | 1730 |
1747 | 1749 |
1748 PaError err; | 1750 PaError err; |
1749 err = Pa_IsStreamActive (stream); | 1751 err = Pa_IsStreamActive (stream); |
1750 if (err != 0 && err != 1) | 1752 if (err != 0 && err != 1) |
1751 { | 1753 { |
1752 error ("audiorecorder: unable to check stream activity status"); | 1754 error ("audiorecorder: checking stream activity status failed"); |
1753 return false; | 1755 return false; |
1754 } | 1756 } |
1755 | 1757 |
1756 return (err == 1); | 1758 return (err == 1); |
1757 } | 1759 } |