Changeset 846 for trunk/src/multimedia/audio/qaudiodeviceinfo_alsa_p.cpp
- Timestamp:
- May 5, 2011, 5:36:53 AM (14 years ago)
- Location:
- trunk
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk
- Property svn:mergeinfo changed
/branches/vendor/nokia/qt/4.7.2 (added) merged: 845 /branches/vendor/nokia/qt/current merged: 844 /branches/vendor/nokia/qt/4.6.3 removed
- Property svn:mergeinfo changed
-
trunk/src/multimedia/audio/qaudiodeviceinfo_alsa_p.cpp
r651 r846 1 1 /**************************************************************************** 2 2 ** 3 ** Copyright (C) 201 0Nokia Corporation and/or its subsidiary(-ies).3 ** Copyright (C) 201 Nokia Corporation and/or its subsidiary(-ies). 4 4 ** All rights reserved. 5 5 ** Contact: Nokia Corporation ([email protected]) … … 63 63 device = QLatin1String(dev); 64 64 this->mode = mode; 65 66 67 68 65 69 } 66 70 … … 256 260 snd_pcm_hw_params_set_channels(handle,params,format.channels()); 257 261 snd_pcm_hw_params_set_rate(handle,params,format.frequency(),dir); 262 263 264 258 265 switch(format.sampleSize()) { 259 266 case 8: 260 267 if(format.sampleType() == QAudioFormat::SignedInt) 261 snd_pcm_hw_params_set_format(handle,params,SND_PCM_FORMAT_S8);268 snd_pcm_hw_params_set_format(handle,params,SND_PCM_FORMAT_S8); 262 269 else if(format.sampleType() == QAudioFormat::UnSignedInt) 263 snd_pcm_hw_params_set_format(handle,params,SND_PCM_FORMAT_U8);270 snd_pcm_hw_params_set_format(handle,params,SND_PCM_FORMAT_U8); 264 271 break; 265 272 case 16: 266 273 if(format.sampleType() == QAudioFormat::SignedInt) { 267 274 if(format.byteOrder() == QAudioFormat::LittleEndian) 268 snd_pcm_hw_params_set_format(handle,params,SND_PCM_FORMAT_S16_LE);275 snd_pcm_hw_params_set_format(handle,params,SND_PCM_FORMAT_S16_LE); 269 276 else if(format.byteOrder() == QAudioFormat::BigEndian) 270 snd_pcm_hw_params_set_format(handle,params,SND_PCM_FORMAT_S16_BE);277 snd_pcm_hw_params_set_format(handle,params,SND_PCM_FORMAT_S16_BE); 271 278 } else if(format.sampleType() == QAudioFormat::UnSignedInt) { 272 279 if(format.byteOrder() == QAudioFormat::LittleEndian) 273 snd_pcm_hw_params_set_format(handle,params,SND_PCM_FORMAT_U16_LE);280 snd_pcm_hw_params_set_format(handle,params,SND_PCM_FORMAT_U16_LE); 274 281 else if(format.byteOrder() == QAudioFormat::BigEndian) 275 snd_pcm_hw_params_set_format(handle,params,SND_PCM_FORMAT_U16_BE);282 snd_pcm_hw_params_set_format(handle,params,SND_PCM_FORMAT_U16_BE); 276 283 } 277 284 break; … … 279 286 if(format.sampleType() == QAudioFormat::SignedInt) { 280 287 if(format.byteOrder() == QAudioFormat::LittleEndian) 281 snd_pcm_hw_params_set_format(handle,params,SND_PCM_FORMAT_S32_LE);288 snd_pcm_hw_params_set_format(handle,params,SND_PCM_FORMAT_S32_LE); 282 289 else if(format.byteOrder() == QAudioFormat::BigEndian) 283 snd_pcm_hw_params_set_format(handle,params,SND_PCM_FORMAT_S32_BE);290 snd_pcm_hw_params_set_format(handle,params,SND_PCM_FORMAT_S32_BE); 284 291 } else if(format.sampleType() == QAudioFormat::UnSignedInt) { 285 292 if(format.byteOrder() == QAudioFormat::LittleEndian) 286 snd_pcm_hw_params_set_format(handle,params,SND_PCM_FORMAT_U32_LE);293 snd_pcm_hw_params_set_format(handle,params,SND_PCM_FORMAT_U32_LE); 287 294 else if(format.byteOrder() == QAudioFormat::BigEndian) 288 snd_pcm_hw_params_set_format(handle,params,SND_PCM_FORMAT_U32_BE);295 snd_pcm_hw_params_set_format(handle,params,SND_PCM_FORMAT_U32_BE); 289 296 } 290 297 } … … 390 397 channelz.append(1); 391 398 channelz.append(2); 399 400 401 402 403 392 404 sizez.append(8); 393 405 sizez.append(16); … … 427 439 while (*n != NULL) { 428 440 name = snd_device_name_get_hint(*n, "NAME"); 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 429 519 descr = snd_device_name_get_hint(*n, "DESC"); 430 520 io = snd_device_name_get_hint(*n, "IOID"); 431 if((name != NULL) && (descr != NULL) && ((io == NULL) || (io == filter))) {521 if((name != NULL) && (descr != NULL)) { 432 522 QString deviceName = QLatin1String(name); 433 QString deviceDescription = QLatin1String(descr); 434 allDevices.append(deviceName.toLocal8Bit().constData()); 435 if(deviceDescription.contains(QLatin1String("Default Audio Device"))) 436 devices.append(deviceName.toLocal8Bit().constData()); 523 if (mode == QAudio::AudioOutput) { 524 if(deviceName.contains(QLatin1String("surround40"))) 525 surround40 = true; 526 if(deviceName.contains(QLatin1String("surround51"))) 527 surround51 = true; 528 if(deviceName.contains(QLatin1String("surround71"))) 529 surround71 = true; 530 } 437 531 } 438 532 if(name != NULL) … … 445 539 } 446 540 snd_device_name_free_hint(hints); 447 448 if(devices.size() > 0) { 449 devices.append("default"); 450 } 451 #else 452 int idx = 0; 453 char* name; 454 455 while(snd_card_get_name(idx,&name) == 0) { 456 devices.append(name); 457 idx++; 458 } 459 if (idx > 0) 460 devices.append("default"); 461 #endif 462 if (devices.size() == 0 && allDevices.size() > 0) 463 return allDevices; 464 465 return devices; 466 } 467 468 QByteArray QAudioDeviceInfoInternal::defaultInputDevice() 469 { 470 QList<QByteArray> devices = availableDevices(QAudio::AudioInput); 471 if(devices.size() == 0) 472 return QByteArray(); 473 474 return devices.first(); 475 } 476 477 QByteArray QAudioDeviceInfoInternal::defaultOutputDevice() 478 { 479 QList<QByteArray> devices = availableDevices(QAudio::AudioOutput); 480 if(devices.size() == 0) 481 return QByteArray(); 482 483 return devices.first(); 484 } 541 } 542 #endif 485 543 486 544 QT_END_NAMESPACE
Note:
See TracChangeset
for help on using the changeset viewer.