audio_hw_device स्ट्रक्चर का रेफ़रंस

audio_hw_device स्ट्रक्चर का रेफ़रंस

#include < audio.h >

डेटा फ़ील्ड

struct hw_device_t   सामान्य
 
uint32_t(*  get_supported_devices )(const struct audio_hw_device *dev)
 
int(*  init_check )(const struct audio_hw_device *dev)
 
int(*  set_voice_volume )(struct audio_hw_device *dev, float volume)
 
int(*  set_master_volume )(struct audio_hw_device *dev, float volume)
 
int(*  get_master_volume )(struct audio_hw_device *dev, float *volume)
 
int(*  set_mode )(struct audio_hw_device *dev, audio_mode_t mode)
 
int(*  set_mic_mute )(struct audio_hw_device *dev, bool state)
 
int(*  get_mic_mute )(const struct audio_hw_device *dev, bool *state)
 
int(*  set_parameters )(struct audio_hw_device *dev, const char *kv_pairs)
 
char *(*  get_parameters )(const struct audio_hw_device *dev, const char *keys)
 
size_t(*  get_input_buffer_size )(const struct audio_hw_device *dev, const struct audio_config *config)
 
int(*  open_output_stream )(struct audio_hw_device *dev, audio_io_handle_t handle, audio_devices_t devices, audio_output_flags_t flags, struct audio_config *config, struct audio_stream_out **stream_out, const char *address)
 
void(*  close_output_stream )(struct audio_hw_device *dev, struct audio_stream_out *stream_out)
 
int(*  open_input_stream )(struct audio_hw_device *dev, audio_io_handle_t handle, audio_devices_t devices, struct audio_config *config, struct audio_stream_in **stream_in, audio_input_flags_t flags, const char *address, audio_source_t source)
 
void(*  close_input_stream )(struct audio_hw_device *dev, struct audio_stream_in *stream_in)
 
int(*  dump )(const struct audio_hw_device *dev, int fd)
 
int(*  set_master_mute )(struct audio_hw_device *dev, bool mute)
 
int(*  get_master_mute )(struct audio_hw_device *dev, bool *mute)
 
int(*  create_audio_patch )(struct audio_hw_device *dev, unsigned int num_sources, const struct audio_port_config *sources, unsigned int num_sinks, const struct audio_port_config *sinks, audio_patch_handle_t *handle)
 
int(*  release_audio_patch )(struct audio_hw_device *dev, audio_patch_handle_t handle)
 
int(*  get_audio_port )(struct audio_hw_device *dev, struct audio_port *port)
 
int(*  set_audio_port_config )(struct audio_hw_device *dev, const struct audio_port_config *config)
 

पूरी जानकारी

परिभाषा, audio.h फ़ाइल की लाइन 516 पर दी गई है.

फ़ील्ड का दस्तावेज़

void(* close_input_stream)(struct audio_hw_device *dev, struct audio_stream_in *stream_in)

परिभाषा, फ़ाइल के audio.h 620 पंक्ति पर दी गई है.

void(* close_output_stream)(struct audio_hw_device *dev, struct audio_stream_out *stream_out)

परिभाषा, फ़ाइल audio.h की लाइन 607 पर दी गई है.

struct hw_device_t common

ऑडियो डिवाइस के सामान्य तरीके. यह audio_hw_device के पहले सदस्य के तौर पर होना चाहिए, क्योंकि इस स्ट्रक्चर के उपयोगकर्ता, hw_device_t को audio_hw_device के पॉइंटर पर तब कास्ट करेंगे, जब यह पता हो कि hw_device_t किसी audio_hw_device के बारे में बताता है .

परिभाषा, audio.h फ़ाइल की लाइन 522 पर दी गई है.

int(* create_audio_patch)(struct audio_hw_device *dev, unsigned int num_sources, const struct audio_port_config *sources, unsigned int num_sinks, const struct audio_port_config *sinks, audio_patch_handle_t *handle)

रूटिंग कंट्रोल

परिभाषा, फ़ाइल audio.h की लाइन 648 पर दी गई है.

int(* dump)(const struct audio_hw_device *dev, int fd)

इस तरीके से, ऑडियो हार्डवेयर की स्थिति का डेटा इकट्ठा किया जाता है

परिभाषा, फ़ाइल audio.h की लाइन 624 पर दी गई है.

int(* get_audio_port)(struct audio_hw_device *dev, struct audio_port *port)

परिभाषा, फ़ाइल audio.h की लाइन 665 पर दी गई है.

size_t(* get_input_buffer_size)(const struct audio_hw_device *dev, const struct audio_config *config)

परिभाषा, फ़ाइल audio.h की लाइन 588 पर दी गई है.

int(* get_master_mute)(struct audio_hw_device *dev, bool *mute)

अगर एचएएल में म्यूट कंट्रोल की सुविधा काम करती है, तो एचएएल के लिए म्यूट की मौजूदा स्थिति देखें. सेवा शुरू होने पर, AudioFlinger इस वैल्यू के लिए प्राइमरी ऑडियो एचएएल से क्वेरी करेगा. साथ ही, सभी एचएएल में शुरुआती मास्टर म्यूट सेट करने के लिए इस वैल्यू का इस्तेमाल करेगा. इस तरीके का इस्तेमाल न करने वाले एचएएल, इसे शून्य पर सेट कर सकते हैं.

परिभाषा, फ़ाइल audio.h की लाइन 639 पर दी गई है.

int(* get_master_volume)(struct audio_hw_device *dev, float *volume)

अगर एचएएल में मास्टर वॉल्यूम कंट्रोल की सुविधा काम करती है, तो एचएएल के लिए मौजूदा मास्टर वॉल्यूम वैल्यू पाएं. सेवा शुरू होने पर, AudioFlinger इस वैल्यू के लिए प्राइमरी ऑडियो एचएएल से क्वेरी करेगा. साथ ही, सभी एचएएल में शुरुआती मास्टर वॉल्यूम सेट करने के लिए, इस वैल्यू का इस्तेमाल करेगा. इस तरीके का इस्तेमाल न करने वाले एचएएल, इसे शून्य पर सेट कर सकते हैं.

परिभाषा, फ़ाइल audio.h की लाइन 561 पर दी गई है.

int(* get_mic_mute)(const struct audio_hw_device *dev, bool *state)

परिभाषा, फ़ाइल audio.h की लाइन 572 पर दी गई है.

char*(* get_parameters)(const struct audio_hw_device *dev, const char *keys)

परिभाषा, फ़ाइल audio.h की लाइन 581 पर दी गई है.

uint32_t(* get_supported_devices)(const struct audio_hw_device *dev)

इसका इस्तेमाल ऑडियो फ़्लिंगर करता है, ताकि यह पता लगाया जा सके कि हर audio_hw_device लागू करने वाले डिवाइसों पर क्या काम करता है.

रिटर्न वैल्यू, audio_devices_t की एक या उससे ज़्यादा वैल्यू का बिटमास्क होती है

ध्यान दें: AUDIO_DEVICE_API_VERSION_2_0 से शुरू होने वाले ऑडियो एचएएल लागू करने की सुविधा, इस फ़ंक्शन को लागू नहीं करती. जिन डिवाइसों पर यह सुविधा काम करती है उनकी जानकारी, audio_policy.conf फ़ाइल में दी जानी चाहिए. साथ ही, ऑडियो नीति मैनेजर को इस फ़ाइल में दी गई जानकारी के आधार पर, सही ऑडियो मॉड्यूल चुनना होगा.

परिभाषा, फ़ाइल audio.h की लाइन 536 पर दी गई है.

int(* init_check)(const struct audio_hw_device *dev)

यह देखें कि ऑडियो हार्डवेयर इंटरफ़ेस को शुरू किया गया है या नहीं. सफल होने पर 0 दिखाता है और गड़बड़ी होने पर -ENODEV दिखाता है.

परिभाषा, फ़ाइल audio.h की लाइन 542 पर दी गई है.

int(* open_input_stream)(struct audio_hw_device *dev, audio_io_handle_t handle, audio_devices_t devices, struct audio_config *config, struct audio_stream_in **stream_in, audio_input_flags_t flags, const char *address, audio_source_t source)

इस तरीके से, ऑडियो हार्डवेयर इनपुट स्ट्रीम बनती है और खुलती है

परिभाषा, फ़ाइल audio.h की लाइन 611 पर दी गई है.

int(* open_output_stream)(struct audio_hw_device *dev, audio_io_handle_t handle, audio_devices_t devices, audio_output_flags_t flags, struct audio_config *config, struct audio_stream_out **stream_out, const char *address)

इस तरीके से, ऑडियो हार्डवेयर आउटपुट स्ट्रीम बनाई और खोली जाती है. "address" पैरामीटर, ज़रूरत पड़ने पर "devices" ऑडियो डिवाइस के टाइप की जानकारी देता है. फ़ॉर्मैट, डिवाइस के टाइप पर निर्भर करता है:

  • ब्लूटूथ डिवाइस, डिवाइस के MAC पते का इस्तेमाल "00:11:22:AA:BB:CC" फ़ॉर्मैट में करते हैं
  • USB डिवाइस, ALSA कार्ड और डिवाइस नंबर का इस्तेमाल "card=X;device=Y" फ़ॉर्मैट में करते हैं
  • अन्य डिवाइसों पर, नंबर या कोई अन्य स्ट्रिंग इस्तेमाल की जा सकती है.

परिभाषा, फ़ाइल audio.h की लाइन 599 पर दी गई है.

int(* release_audio_patch)(struct audio_hw_device *dev, audio_patch_handle_t handle)

परिभाषा, फ़ाइल audio.h की लाइन 656 पर दी गई है.

int(* set_audio_port_config)(struct audio_hw_device *dev, const struct audio_port_config *config)

परिभाषा, फ़ाइल audio.h की लाइन 669 पर दी गई है.

int(* set_master_mute)(struct audio_hw_device *dev, bool mute)

सभी ऑडियो गतिविधियों के लिए, ऑडियो को म्यूट करने की स्थिति सेट करें. अगर 0 के अलावा कोई दूसरी वैल्यू मिलती है, तो सॉफ़्टवेयर मिक्सर इस सुविधा को एमुलेट करेगा.

परिभाषा, फ़ाइल audio.h की लाइन 630 पर दी गई है.

int(* set_master_volume)(struct audio_hw_device *dev, float volume)

वॉइस कॉल के अलावा, अन्य सभी ऑडियो गतिविधियों के लिए ऑडियो वॉल्यूम सेट करें. वैल्यू 0.0 से 1.0 के बीच होनी चाहिए. अगर 0 के अलावा कोई दूसरी वैल्यू मिलती है, तो सॉफ़्टवेयर मिक्सर इस सुविधा को एमुलेट करेगा.

परिभाषा, फ़ाइल audio.h की लाइन 552 पर दी गई है.

int(* set_mic_mute)(struct audio_hw_device *dev, bool state)

परिभाषा, फ़ाइल audio.h की लाइन 571 पर दी गई है.

int(* set_mode)(struct audio_hw_device *dev, audio_mode_t mode)

ऑडियो मोड बदलने पर, set_mode को कॉल किया जाता है. AUDIO_MODE_NORMAL मोड, स्टैंडर्ड ऑडियो चलाने के लिए है. AUDIO_MODE_RINGTONE, रिंगटोन चलने के दौरान इस्तेमाल किया जाता है. AUDIO_MODE_IN_CALL, कॉल के दौरान इस्तेमाल किया जाता है.

परिभाषा, फ़ाइल audio.h की लाइन 568 पर दी गई है.

int(* set_parameters)(struct audio_hw_device *dev, const char *kv_pairs)

परिभाषा, फ़ाइल audio.h की लाइन 575 पर दी गई है.

int(* set_voice_volume)(struct audio_hw_device *dev, float volume)

वॉइस कॉल का ऑडियो वॉल्यूम सेट करें. वैल्यू 0.0 और 1.0 के बीच होनी चाहिए

परिभाषा, फ़ाइल audio.h की लाइन 545 पर दी गई है.


इस स्ट्रक्चर का दस्तावेज़, इस फ़ाइल से जनरेट किया गया था:
  • hardware/libhardware/include/hardware/ audio.h