tree: a75fbbd24c2f44062d8d964594ae9aa460fa7e60 [path history] [tgz]
  1. public/
  2. test/
  3. audio_processor_handler.cc
  4. audio_processor_handler.h
  5. audio_sandbox_hook_linux.cc
  6. audio_sandbox_hook_linux.h
  7. BUILD.gn
  8. COMMON_METADATA
  9. concurrent_stream_metric_reporter.cc
  10. concurrent_stream_metric_reporter.h
  11. debug_recording.cc
  12. debug_recording.h
  13. debug_recording_unittest.cc
  14. delay_buffer.cc
  15. delay_buffer.h
  16. delay_buffer_unittest.cc
  17. DEPS
  18. device_listener_output_stream.cc
  19. device_listener_output_stream.h
  20. device_listener_output_stream_unittest.cc
  21. device_notifier.cc
  22. device_notifier.h
  23. device_notifier_unittest.cc
  24. device_output_listener.h
  25. DIR_METADATA
  26. group_coordinator-impl.h
  27. group_coordinator.h
  28. group_coordinator_unittest.cc
  29. in_process_audio_manager_accessor.cc
  30. in_process_audio_manager_accessor.h
  31. input_controller.cc
  32. input_controller.h
  33. input_controller_unittest.cc
  34. input_stream.cc
  35. input_stream.h
  36. input_stream_unittest.cc
  37. input_sync_writer.cc
  38. input_sync_writer.h
  39. input_sync_writer_unittest.cc
  40. local_muter.cc
  41. local_muter.h
  42. local_muter_unittest.cc
  43. log_adapter.cc
  44. log_adapter.h
  45. log_factory_adapter.cc
  46. log_factory_adapter.h
  47. log_factory_manager.cc
  48. log_factory_manager.h
  49. log_factory_manager_unittest.cc
  50. loopback_coordinator.cc
  51. loopback_coordinator.h
  52. loopback_group_member.h
  53. loopback_stream.cc
  54. loopback_stream.h
  55. loopback_stream_unittest.cc
  56. mixing_graph.cc
  57. mixing_graph.h
  58. mixing_graph_impl.cc
  59. mixing_graph_impl.h
  60. mixing_graph_impl_unittest.cc
  61. mixing_graph_input_unittest.cc
  62. muteable.h
  63. output_controller.cc
  64. output_controller.h
  65. output_controller_unittest.cc
  66. output_device_mixer.cc
  67. output_device_mixer.h
  68. output_device_mixer_impl.cc
  69. output_device_mixer_impl.h
  70. output_device_mixer_impl_unittest.cc
  71. output_device_mixer_manager.cc
  72. output_device_mixer_manager.h
  73. output_device_mixer_manager_unittest.cc
  74. output_stream.cc
  75. output_stream.h
  76. output_stream_unittest.cc
  77. output_tapper.cc
  78. output_tapper.h
  79. OWNERS
  80. owning_audio_manager_accessor.cc
  81. owning_audio_manager_accessor.h
  82. README.md
  83. reference_output.h
  84. service.cc
  85. service.h
  86. service_factory.cc
  87. service_factory.h
  88. service_metrics.cc
  89. service_metrics.h
  90. service_metrics_unittest.cc
  91. snoopable.h
  92. snooper_node.cc
  93. snooper_node.h
  94. snooper_node_unittest.cc
  95. stream_factory.cc
  96. stream_factory.h
  97. stream_monitor.h
  98. sync_mixing_graph_input.cc
  99. sync_mixing_graph_input.h
  100. sync_reader.cc
  101. sync_reader.h
  102. sync_reader_unittest.cc
  103. system_info.cc
  104. system_info.h
  105. testing_api_binder.cc
  106. testing_api_binder.h
  107. user_input_monitor.cc
  108. user_input_monitor.h
  109. user_input_monitor_unittest.cc
services/audio/README.md

#Audio service

Provides core audio functionality: audio device access and enumeration.

Runs

  • In a separate process on Windows, Mac (sandboxed) and Linux (unsandboxed);
  • In the browser process on other platforms.

Can be accessed from trusted processes only (the browser process and certains utility processes). Use audio::CreateInputDevice() for the mic capture, and audio::OutputDevice for the playback.

Untrusted processes should use media::AudioInputDevice and media::AudioOutputDevice correspondingly, which will take care of device authorization.

Design doc