日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

常用音频概念

發布時間:2024/3/26 编程问答 51 豆豆
生活随笔 收集整理的這篇文章主要介紹了 常用音频概念 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

常用音頻概念

1、音頻輸出通道-setForceUse()強制使用的設備類型配置

設置強制使用的設備類型配置

D AudioPolicyManagerCustom: setForceUse() usage 7, config 0, mPhoneState 3

usage:指的是音頻的使用場景config:指的是音頻從哪里發出

frameworks/base/media/java/android/media/AudioSystem.java

1323 // device categories config for setForceUse, must match audio_policy_forced_cfg_t 1324 /** @hide */ @UnsupportedAppUsage public static final int FORCE_NONE = 0; 1325 /** @hide */ public static final int FORCE_SPEAKER = 1;   //揚聲器通道 1326 /** @hide */ public static final int FORCE_HEADPHONES = 2;   //耳機通道 1327 /** @hide */ public static final int FORCE_BT_SCO = 3;  //是一種雙向的音頻數據的傳輸鏈路,只能用于普通語音的傳輸,不能播放音樂 1328 /** @hide */ public static final int FORCE_BT_A2DP = 4; //是一種單向的高品質音頻數據傳輸鏈路,通常用于播放立體聲音樂 1329 /** @hide */ public static final int FORCE_WIRED_ACCESSORY = 5;  //有線設備通道,如有線耳機 1330 /** @hide */ @UnsupportedAppUsage public static final int FORCE_BT_CAR_DOCK = 6; 1331 /** @hide */ @UnsupportedAppUsage public static final int FORCE_BT_DESK_DOCK = 7; 1332 /** @hide */ @UnsupportedAppUsage public static final int FORCE_ANALOG_DOCK = 8; 1333 /** @hide */ @UnsupportedAppUsage public static final int FORCE_DIGITAL_DOCK = 9; 1334 /** @hide */ public static final int FORCE_NO_BT_A2DP = 10; 1335 /** @hide */ public static final int FORCE_SYSTEM_ENFORCED = 11; 1336 /** @hide */ public static final int FORCE_HDMI_SYSTEM_AUDIO_ENFORCED = 12; 1337 /** @hide */ public static final int FORCE_ENCODED_SURROUND_NEVER = 13; 1338 /** @hide */ public static final int FORCE_ENCODED_SURROUND_ALWAYS = 14; 1339 /** @hide */ public static final int FORCE_ENCODED_SURROUND_MANUAL = 15; 1340 /** @hide */ public static final int FORCE_EARPIECE = 16; 1341 /** @hide */ public static final int NUM_FORCE_CONFIG = 17; 1342 /** @hide */ public static final int FORCE_DEFAULT = FORCE_NONE;
AUDIO_DEVICE_OUT_EARPIECE = 0x1, // 聽筒 AUDIO_DEVICE_OUT_SPEAKER = 0x2, // 揚聲器 AUDIO_DEVICE_OUT_WIRED_HEADSET = 0x4, // 線控耳機 AUDIO_DEVICE_OUT_WIRED_HEADPHONE = 0x8, // 普通耳機 AUDIO_DEVICE_OUT_BLUETOOTH_SCO = 0x10, // 單聲道藍牙耳機 AUDIO_DEVICE_OUT_BLUETOOTH_SCO_HEADSET = 0x20, // 藍牙電話 AUDIO_DEVICE_OUT_BLUETOOTH_SCO_CARKIT = 0x40, // 車載免提藍牙設備 AUDIO_DEVICE_OUT_BLUETOOTH_A2DP = 0x80, // 立體聲藍牙耳機

2、設置通道模式 setMode()

frameworks/base/media/java/android/media/AudioSystem.java

154 /* modes for setPhoneState, must match AudioSystem.h audio_mode */ 155 /** @hide */ 156 public static final int MODE_INVALID = -2; 157 /** @hide */ 158 public static final int MODE_CURRENT = -1; 159 /** @hide */ 160 public static final int MODE_NORMAL = 0; //待機模式 161 /** @hide */ 162 public static final int MODE_RINGTONE = 1; //l鈴聲模式 163 /** @hide */ 164 public static final int MODE_IN_CALL = 2; //音頻通話模式 165 /** @hide */ 166 public static final int MODE_IN_COMMUNICATION = 3; //通信模式,包括音視頻,voip通話 167 /** @hide */ 168 public static final int MODE_CALL_SCREENING = 4; 169 /** @hide */ 170 public static final int NUM_MODES = 5;

與底層代碼system/media/audio/include/system/audio-base.h相對應

333#endif // AUDIO_NO_SYSTEM_DECLARATIONS 334 AUDIO_MODE_NORMAL = 0, 335 AUDIO_MODE_RINGTONE = 1, 336 AUDIO_MODE_IN_CALL = 2, 337 AUDIO_MODE_IN_COMMUNICATION = 3, 338 AUDIO_MODE_CALL_SCREEN = 4, 339} audio_mode_t;

3、音頻流類型


frameworks/base/media/java/android/media/AudioSystem.java


64 /** @hide Used to identify the default audio stream volume */65 @TestApi66 public static final int STREAM_DEFAULT = -1; //默認流67 /** @hide Used to identify the volume of audio streams for phone calls */68 public static final int STREAM_VOICE_CALL = 0; //電話通話音頻流69 /** @hide Used to identify the volume of audio streams for system sounds */70 public static final int STREAM_SYSTEM = 1; //系統音頻流71 /** @hide Used to identify the volume of audio streams for the phone ring and message alerts */72 public static final int STREAM_RING = 2; //鈴聲音頻流73 /** @hide Used to identify the volume of audio streams for music playback */74 public static final int STREAM_MUSIC = 3; //音樂音頻流75 /** @hide Used to identify the volume of audio streams for alarms */76 public static final int STREAM_ALARM = 4; //鬧鐘流77 /** @hide Used to identify the volume of audio streams for notifications */78 public static final int STREAM_NOTIFICATION = 5; //通知音頻流79 /** @hide80 * Used to identify the volume of audio streams for phone calls when connected on bluetooth */81 public static final int STREAM_BLUETOOTH_SCO = 6;82 /** @hide Used to identify the volume of audio streams for enforced system sounds in certain83 * countries (e.g camera in Japan) */84 @UnsupportedAppUsage 85 public static final int STREAM_SYSTEM_ENFORCED = 7;86 /** @hide Used to identify the volume of audio streams for DTMF tones */87 public static final int STREAM_DTMF = 8;88 /** @hide Used to identify the volume of audio streams exclusively transmitted through the89 * speaker (TTS) of the device */90 public static final int STREAM_TTS = 9;91 /** @hide Used to identify the volume of audio streams for accessibility prompts */92 public static final int STREAM_ACCESSIBILITY = 10;93 /** @hide Used to identify the volume of audio streams for virtual assistant */94 public static final int STREAM_ASSISTANT = 11;

4、audio output devices 輸入/輸出設備


frameworks/base/media/java/android/media/AudioSystem.java

644 public static final String DEVICE_OUT_EARPIECE_NAME = "earpiece";  聽筒 645 public static final String DEVICE_OUT_SPEAKER_NAME = "speaker";   揚聲器 646 public static final String DEVICE_OUT_WIRED_HEADSET_NAME = "headset";  帶話筒的耳機 647 public static final String DEVICE_OUT_WIRED_HEADPHONE_NAME = "headphone"; 不帶話筒的耳機 648 public static final String DEVICE_OUT_BLUETOOTH_SCO_NAME = "bt_sco";  藍牙,面向連接(SCO)方式:主要用于話音傳輸 649 public static final String DEVICE_OUT_BLUETOOTH_SCO_HEADSET_NAME = "bt_sco_hs"; 藍牙耳機,帶話筒 650 public static final String DEVICE_OUT_BLUETOOTH_SCO_CARKIT_NAME = "bt_sco_carkit"; 藍牙車載設備 651 public static final String DEVICE_OUT_BLUETOOTH_A2DP_NAME = "bt_a2dp";  藍牙立體聲 652 public static final String DEVICE_OUT_BLUETOOTH_A2DP_HEADPHONES_NAME = "bt_a2dp_hp"; 藍牙立體聲音耳機 653 public static final String DEVICE_OUT_BLUETOOTH_A2DP_SPEAKER_NAME = "bt_a2dp_spk"; 帶話筒的 654 public static final String DEVICE_OUT_AUX_DIGITAL_NAME = "aux_digital"; 655 public static final String DEVICE_OUT_HDMI_NAME = "hdmi"; 656 public static final String DEVICE_OUT_ANLG_DOCK_HEADSET_NAME = "analog_dock"; 通過基座連接的模擬有線耳機 657 public static final String DEVICE_OUT_DGTL_DOCK_HEADSET_NAME = "digital_dock"; 通過基座連接的數字有線耳機 658 public static final String DEVICE_OUT_USB_ACCESSORY_NAME = "usb_accessory"; 659 public static final String DEVICE_OUT_USB_DEVICE_NAME = "usb_device"; 660 public static final String DEVICE_OUT_REMOTE_SUBMIX_NAME = "remote_submix"; 661 public static final String DEVICE_OUT_TELEPHONY_TX_NAME = "telephony_tx"; 662 public static final String DEVICE_OUT_LINE_NAME = "line"; 663 public static final String DEVICE_OUT_HDMI_ARC_NAME = "hmdi_arc"; 664 public static final String DEVICE_OUT_SPDIF_NAME = "spdif"; 665 public static final String DEVICE_OUT_FM_NAME = "fm_transmitter"; 666 public static final String DEVICE_OUT_AUX_LINE_NAME = "aux_line"; 667 public static final String DEVICE_OUT_SPEAKER_SAFE_NAME = "speaker_safe"; 668 public static final String DEVICE_OUT_IP_NAME = "ip"; 669 public static final String DEVICE_OUT_BUS_NAME = "bus"; 670 public static final String DEVICE_OUT_PROXY_NAME = "proxy"; 671 public static final String DEVICE_OUT_USB_HEADSET_NAME = "usb_headset"; 672 public static final String DEVICE_OUT_HEARING_AID_NAME = "hearing_aid_out";

藍牙解析

藍牙基帶技術支持兩種連接方式:
面向連接(SCO)方式:主要用于話音傳輸;
無連接(ACL)方式:主要用于分組數據傳輸。
A2DP是Advanced Audio Distribution Profile, 是立體聲的.
A2DP只管輸出,立體的,沒有輸入,主要用于播放音樂; SCO管通訊,有輸出也有接收,但是單聲道的,主要用于話音傳輸


vendor/qcom/opensource/commonsys/packages/apps/Bluetooth/src/com/android/bluetooth/a2dp/A2dpStackEvent.java#35

446 // 447 // audio device definitions: must be kept in sync with values in system/core/audio.h 448 // 449 450 public static final int DEVICE_NONE = 0x0; 451 // reserved bits 452 public static final int DEVICE_BIT_IN = 0x80000000; 453 public static final int DEVICE_BIT_DEFAULT = 0x40000000; 454 // output devices, be sure to update AudioManager.java also 455 @UnsupportedAppUsage 456 public static final int DEVICE_OUT_EARPIECE = 0x1; 457 @UnsupportedAppUsage 458 public static final int DEVICE_OUT_SPEAKER = 0x2; 459 @UnsupportedAppUsage 460 public static final int DEVICE_OUT_WIRED_HEADSET = 0x4; 461 @UnsupportedAppUsage 462 public static final int DEVICE_OUT_WIRED_HEADPHONE = 0x8; 463 @UnsupportedAppUsage 464 public static final int DEVICE_OUT_BLUETOOTH_SCO = 0x10; 465 @UnsupportedAppUsage 466 public static final int DEVICE_OUT_BLUETOOTH_SCO_HEADSET = 0x20; 467 @UnsupportedAppUsage 468 public static final int DEVICE_OUT_BLUETOOTH_SCO_CARKIT = 0x40; 469 @UnsupportedAppUsage 470 public static final int DEVICE_OUT_BLUETOOTH_A2DP = 0x80; 471 @UnsupportedAppUsage 472 public static final int DEVICE_OUT_BLUETOOTH_A2DP_HEADPHONES = 0x100; 473 @UnsupportedAppUsage 474 public static final int DEVICE_OUT_BLUETOOTH_A2DP_SPEAKER = 0x200; 475 @UnsupportedAppUsage 476 public static final int DEVICE_OUT_AUX_DIGITAL = 0x400; 477 public static final int DEVICE_OUT_HDMI = DEVICE_OUT_AUX_DIGITAL; 478 @UnsupportedAppUsage 479 public static final int DEVICE_OUT_ANLG_DOCK_HEADSET = 0x800; 480 @UnsupportedAppUsage 481 public static final int DEVICE_OUT_DGTL_DOCK_HEADSET = 0x1000; 482 @UnsupportedAppUsage 483 public static final int DEVICE_OUT_USB_ACCESSORY = 0x2000; 484 @UnsupportedAppUsage 485 public static final int DEVICE_OUT_USB_DEVICE = 0x4000; 486 @UnsupportedAppUsage 487 public static final int DEVICE_OUT_REMOTE_SUBMIX = 0x8000; 488 @UnsupportedAppUsage 489 public static final int DEVICE_OUT_TELEPHONY_TX = 0x10000; 490 public static final int DEVICE_OUT_LINE = 0x20000; 491 public static final int DEVICE_OUT_HDMI_ARC = 0x40000; 492 public static final int DEVICE_OUT_SPDIF = 0x80000; 493 @UnsupportedAppUsage 494 public static final int DEVICE_OUT_FM = 0x100000; 495 public static final int DEVICE_OUT_AUX_LINE = 0x200000; 496 public static final int DEVICE_OUT_SPEAKER_SAFE = 0x400000; 497 public static final int DEVICE_OUT_IP = 0x800000; 498 public static final int DEVICE_OUT_BUS = 0x1000000; 499 public static final int DEVICE_OUT_PROXY = 0x2000000; 500 public static final int DEVICE_OUT_USB_HEADSET = 0x4000000; 501 public static final int DEVICE_OUT_HEARING_AID = 0x8000000;

輸出設備的進一步分類:

frameworks/base/media/java/android/media/AudioSystem.java

503 public static final int DEVICE_OUT_DEFAULT = DEVICE_BIT_DEFAULT; 504 505 public static final int DEVICE_OUT_ALL = (DEVICE_OUT_EARPIECE | 506 DEVICE_OUT_SPEAKER | 507 DEVICE_OUT_WIRED_HEADSET | 508 DEVICE_OUT_WIRED_HEADPHONE | 509 DEVICE_OUT_BLUETOOTH_SCO | 510 DEVICE_OUT_BLUETOOTH_SCO_HEADSET | 511 DEVICE_OUT_BLUETOOTH_SCO_CARKIT | 512 DEVICE_OUT_BLUETOOTH_A2DP | 513 DEVICE_OUT_BLUETOOTH_A2DP_HEADPHONES | 514 DEVICE_OUT_BLUETOOTH_A2DP_SPEAKER | 515 DEVICE_OUT_HDMI | 516 DEVICE_OUT_ANLG_DOCK_HEADSET | 517 DEVICE_OUT_DGTL_DOCK_HEADSET | 518 DEVICE_OUT_USB_ACCESSORY | 519 DEVICE_OUT_USB_DEVICE | 520 DEVICE_OUT_REMOTE_SUBMIX | 521 DEVICE_OUT_TELEPHONY_TX | 522 DEVICE_OUT_LINE | 523 DEVICE_OUT_HDMI_ARC | 524 DEVICE_OUT_SPDIF | 525 DEVICE_OUT_FM | 526 DEVICE_OUT_AUX_LINE | 527 DEVICE_OUT_SPEAKER_SAFE | 528 DEVICE_OUT_IP | 529 DEVICE_OUT_BUS | 530 DEVICE_OUT_PROXY | 531 DEVICE_OUT_USB_HEADSET | 532 DEVICE_OUT_HEARING_AID | 533 DEVICE_OUT_DEFAULT); 534 public static final int DEVICE_OUT_ALL_A2DP = (DEVICE_OUT_BLUETOOTH_A2DP | 535 DEVICE_OUT_BLUETOOTH_A2DP_HEADPHONES | 536 DEVICE_OUT_BLUETOOTH_A2DP_SPEAKER); 537 public static final int DEVICE_OUT_ALL_SCO = (DEVICE_OUT_BLUETOOTH_SCO | 538 DEVICE_OUT_BLUETOOTH_SCO_HEADSET | 539 DEVICE_OUT_BLUETOOTH_SCO_CARKIT); 540 @UnsupportedAppUsage 541 public static final int DEVICE_OUT_ALL_USB = (DEVICE_OUT_USB_ACCESSORY | 542 DEVICE_OUT_USB_DEVICE | 543 DEVICE_OUT_USB_HEADSET); 544 public static final int DEVICE_OUT_ALL_HDMI_SYSTEM_AUDIO = (DEVICE_OUT_AUX_LINE | 545 DEVICE_OUT_HDMI_ARC | 546 DEVICE_OUT_SPDIF); 547 public static final int DEVICE_ALL_HDMI_SYSTEM_AUDIO_AND_SPEAKER = 548 (DEVICE_OUT_ALL_HDMI_SYSTEM_AUDIO | 549 DEVICE_OUT_SPEAKER);

5、audio input devices 輸入設備:


frameworks/base/media/java/android/media/AudioSystem.java

674 public static final String DEVICE_IN_COMMUNICATION_NAME = "communication"; 手機上的話筒 675 public static final String DEVICE_IN_AMBIENT_NAME = "ambient"; 676 public static final String DEVICE_IN_BUILTIN_MIC_NAME = "mic"; 打電話時,我們的聲音會被手機底部的mic采集,底部mic是一個輸入device(主mic) 677 public static final String DEVICE_IN_BLUETOOTH_SCO_HEADSET_NAME = "bt_sco_hs"; 藍牙耳機上的話筒 678 public static final String DEVICE_IN_WIRED_HEADSET_NAME = "headset"; 有線耳機上的話筒 679 public static final String DEVICE_IN_AUX_DIGITAL_NAME = "aux_digital"; 680 public static final String DEVICE_IN_TELEPHONY_RX_NAME = "telephony_rx"; 681 public static final String DEVICE_IN_BACK_MIC_NAME = "back_mic"; 如果打開免提,我們的聲音會被背部的mic采集,背部mic也是一個輸入device(副mic) 682 public static final String DEVICE_IN_REMOTE_SUBMIX_NAME = "remote_submix"; 683 public static final String DEVICE_IN_ANLG_DOCK_HEADSET_NAME = "analog_dock"; 684 public static final String DEVICE_IN_DGTL_DOCK_HEADSET_NAME = "digital_dock"; 685 public static final String DEVICE_IN_USB_ACCESSORY_NAME = "usb_accessory"; 686 public static final String DEVICE_IN_USB_DEVICE_NAME = "usb_device"; 687 public static final String DEVICE_IN_FM_TUNER_NAME = "fm_tuner"; 688 public static final String DEVICE_IN_TV_TUNER_NAME = "tv_tuner"; 689 public static final String DEVICE_IN_LINE_NAME = "line"; 690 public static final String DEVICE_IN_SPDIF_NAME = "spdif"; 691 public static final String DEVICE_IN_BLUETOOTH_A2DP_NAME = "bt_a2dp"; 692 public static final String DEVICE_IN_LOOPBACK_NAME = "loopback"; 693 public static final String DEVICE_IN_IP_NAME = "ip"; 694 public static final String DEVICE_IN_BUS_NAME = "bus"; 695 public static final String DEVICE_IN_PROXY_NAME = "proxy"; 696 public static final String DEVICE_IN_USB_HEADSET_NAME = "usb_headset"; 697 public static final String DEVICE_IN_BLUETOOTH_BLE_NAME = "bt_ble"; 698 public static final String DEVICE_IN_ECHO_REFERENCE_NAME = "echo_reference"; 699 public static final String DEVICE_IN_HDMI_ARC_NAME = "hdmi_arc";

frameworks/base/media/java/android/media/AudioSystem.java

551 // input devices 552 @UnsupportedAppUsage 553 public static final int DEVICE_IN_COMMUNICATION = DEVICE_BIT_IN | 0x1; 554 @UnsupportedAppUsage 555 public static final int DEVICE_IN_AMBIENT = DEVICE_BIT_IN | 0x2; 556 @UnsupportedAppUsage 557 public static final int DEVICE_IN_BUILTIN_MIC = DEVICE_BIT_IN | 0x4; 558 @UnsupportedAppUsage 559 public static final int DEVICE_IN_BLUETOOTH_SCO_HEADSET = DEVICE_BIT_IN | 0x8; 560 @UnsupportedAppUsage 561 public static final int DEVICE_IN_WIRED_HEADSET = DEVICE_BIT_IN | 0x10; 562 @UnsupportedAppUsage 563 public static final int DEVICE_IN_AUX_DIGITAL = DEVICE_BIT_IN | 0x20; 564 public static final int DEVICE_IN_HDMI = DEVICE_IN_AUX_DIGITAL; 565 @UnsupportedAppUsage 566 public static final int DEVICE_IN_VOICE_CALL = DEVICE_BIT_IN | 0x40; 567 public static final int DEVICE_IN_TELEPHONY_RX = DEVICE_IN_VOICE_CALL; 568 @UnsupportedAppUsage 569 public static final int DEVICE_IN_BACK_MIC = DEVICE_BIT_IN | 0x80; 570 @UnsupportedAppUsage 571 public static final int DEVICE_IN_REMOTE_SUBMIX = DEVICE_BIT_IN | 0x100; 572 @UnsupportedAppUsage 573 public static final int DEVICE_IN_ANLG_DOCK_HEADSET = DEVICE_BIT_IN | 0x200; 574 @UnsupportedAppUsage 575 public static final int DEVICE_IN_DGTL_DOCK_HEADSET = DEVICE_BIT_IN | 0x400; 576 @UnsupportedAppUsage 577 public static final int DEVICE_IN_USB_ACCESSORY = DEVICE_BIT_IN | 0x800; 578 @UnsupportedAppUsage 579 public static final int DEVICE_IN_USB_DEVICE = DEVICE_BIT_IN | 0x1000; 580 public static final int DEVICE_IN_FM_TUNER = DEVICE_BIT_IN | 0x2000; 581 public static final int DEVICE_IN_TV_TUNER = DEVICE_BIT_IN | 0x4000; 582 public static final int DEVICE_IN_LINE = DEVICE_BIT_IN | 0x8000; 583 public static final int DEVICE_IN_SPDIF = DEVICE_BIT_IN | 0x10000; 584 @UnsupportedAppUsage 585 public static final int DEVICE_IN_BLUETOOTH_A2DP = DEVICE_BIT_IN | 0x20000; 586 public static final int DEVICE_IN_LOOPBACK = DEVICE_BIT_IN | 0x40000; 587 public static final int DEVICE_IN_IP = DEVICE_BIT_IN | 0x80000; 588 public static final int DEVICE_IN_BUS = DEVICE_BIT_IN | 0x100000; 589 public static final int DEVICE_IN_PROXY = DEVICE_BIT_IN | 0x1000000; 590 public static final int DEVICE_IN_USB_HEADSET = DEVICE_BIT_IN | 0x2000000; 591 public static final int DEVICE_IN_BLUETOOTH_BLE = DEVICE_BIT_IN | 0x4000000; 592 public static final int DEVICE_IN_HDMI_ARC = DEVICE_BIT_IN | 0x8000000; 593 public static final int DEVICE_IN_ECHO_REFERENCE = DEVICE_BIT_IN | 0x10000000;

**system/media/audio/include/system/audio-base.h **相對應


輸入設備的進一步分類:

595 public static final int DEVICE_IN_DEFAULT = DEVICE_BIT_IN | DEVICE_BIT_DEFAULT; 596 597 public static final int DEVICE_IN_ALL = (DEVICE_IN_COMMUNICATION | 598 DEVICE_IN_AMBIENT | 599 DEVICE_IN_BUILTIN_MIC | 600 DEVICE_IN_BLUETOOTH_SCO_HEADSET | 601 DEVICE_IN_WIRED_HEADSET | 602 DEVICE_IN_HDMI | 603 DEVICE_IN_TELEPHONY_RX | 604 DEVICE_IN_BACK_MIC | 605 DEVICE_IN_REMOTE_SUBMIX | 606 DEVICE_IN_ANLG_DOCK_HEADSET | 607 DEVICE_IN_DGTL_DOCK_HEADSET | 608 DEVICE_IN_USB_ACCESSORY | 609 DEVICE_IN_USB_DEVICE | 610 DEVICE_IN_FM_TUNER | 611 DEVICE_IN_TV_TUNER | 612 DEVICE_IN_LINE | 613 DEVICE_IN_SPDIF | 614 DEVICE_IN_BLUETOOTH_A2DP | 615 DEVICE_IN_LOOPBACK | 616 DEVICE_IN_IP | 617 DEVICE_IN_BUS | 618 DEVICE_IN_PROXY | 619 DEVICE_IN_USB_HEADSET | 620 DEVICE_IN_BLUETOOTH_BLE | 621 DEVICE_IN_HDMI_ARC | 622 DEVICE_IN_ECHO_REFERENCE | 623 DEVICE_IN_DEFAULT); 624 public static final int DEVICE_IN_ALL_SCO = DEVICE_IN_BLUETOOTH_SCO_HEADSET; 625 public static final int DEVICE_IN_ALL_USB = (DEVICE_IN_USB_ACCESSORY | 626 DEVICE_IN_USB_DEVICE | 627 DEVICE_IN_USB_HEADSET);

6、設備的狀態:unavailable與available


629 // device states, must match AudioSystem::device_connection_state 630 @UnsupportedAppUsage 631 public static final int DEVICE_STATE_UNAVAILABLE = 0; 632 @UnsupportedAppUsage 633 public static final int DEVICE_STATE_AVAILABLE = 1; 634 private static final int NUM_DEVICE_STATES = 1;

7、音頻使用場景:usage


private static final int USAGE_INVALID = -1; 105 /** 106 * Usage value to use when the usage is unknown. 107 */ 108 public final static int USAGE_UNKNOWN = 0;  沒有明確使用場景 109 /** 110 * Usage value to use when the usage is media, such as music, or movie 111 * soundtracks. 112 */ 113 public final static int USAGE_MEDIA = 1; 多媒體音頻 114 /** 115 * Usage value to use when the usage is voice communications, such as telephony 116 * or VoIP. 117 */ 118 public final static int USAGE_VOICE_COMMUNICATION = 2; 語音通話 119 /** 120 * Usage value to use when the usage is in-call signalling, such as with 121 * a "busy" beep, or DTMF tones. 122 */ 123 public final static int USAGE_VOICE_COMMUNICATION_SIGNALLING = 3; 正在通話中提示音 124 /** 125 * Usage value to use when the usage is an alarm (e.g. wake-up alarm). 126 */ 127 public final static int USAGE_ALARM = 4; 警示音(起床鬧鈴) 128 /** 129 * Usage value to use when the usage is notification. See other 130 * notification usages for more specialized uses. 131 */ 132 public final static int USAGE_NOTIFICATION = 5;  提示音 133 /** 134 * Usage value to use when the usage is telephony ringtone. 135 */ 136 public final static int USAGE_NOTIFICATION_RINGTONE = 6;  電話鈴聲 137 /** 138 * Usage value to use when the usage is a request to enter/end a 139 * communication, such as a VoIP communication or video-conference. 140 */ 141 public final static int USAGE_NOTIFICATION_COMMUNICATION_REQUEST = 7; 當請求加入或結束VOIP、視頻通話這樣的提示音 143 * Usage value to use when the usage is notification for an "instant" 144 * communication such as a chat, or SMS. 145 */ 146 public final static int USAGE_NOTIFICATION_COMMUNICATION_INSTANT = 8; 及時通信提示音(比如日程提醒、低電量警告) 147 /** 148 * Usage value to use when the usage is notification for a 149 * non-immediate type of communication such as e-mail. 150 */ 151 public final static int USAGE_NOTIFICATION_COMMUNICATION_DELAYED = 9;非及時通訊提示音(收到E-mail時的提示音) 152 /** 153 * Usage value to use when the usage is to attract the user's attention, 154 * such as a reminder or low battery warning. 155 */ 156 public final static int USAGE_NOTIFICATION_EVENT = 10; 希望起因用戶注意時的提示音(日程提醒,低電量告警) 157 /** 158 * Usage value to use when the usage is for accessibility, such as with 159 * a screen reader. 160 */ 161 public final static int USAGE_ASSISTANCE_ACCESSIBILITY = 11; 易用性輔助提示音(比如屏幕文字閱讀器) 162 /** 163 * Usage value to use when the usage is driving or navigation directions. 164 */ 165 public final static int USAGE_ASSISTANCE_NAVIGATION_GUIDANCE = 12;   166 /** 167 * Usage value to use when the usage is sonification, such as with user 168 * interface sounds. 169 */ 170 public final static int USAGE_ASSISTANCE_SONIFICATION = 13; 171 /** 172 * Usage value to use when the usage is for game audio. 173 */ 174 public final static int USAGE_GAME = 14; 175 /** 176 * @hide 177 * Usage value to use when feeding audio to the platform and replacing "traditional" audio 178 * source, such as audio capture devices. 179 */ 180 public final static int USAGE_VIRTUAL_SOURCE = 15; 181 /** 182 * Usage value to use for audio responses to user queries, audio instructions or help 183 * utterances. 184 */ 185 public final static int USAGE_ASSISTANT = 16; 186 /** 187 * @hide 188 * Usage value to use for assistant voice interaction with remote caller on Cell and VoIP calls. 189 */ 190 @SystemApi 191 @RequiresPermission(allOf = { 192 android.Manifest.permission.MODIFY_PHONE_STATE, 193 android.Manifest.permission.MODIFY_AUDIO_ROUTING 194 }) 195 public static final int USAGE_CALL_ASSISTANT = 17; 196 197 public static final int USAGE_ENFORCED_AUDIBLE = 18; 198 public static final int USAGE_BLUETOOTH_SCO = 19; 199 public static final int USAGE_TTS = 20; 200

與底層代碼相對應system/media/audio/include/system/audio-base.h


444typedef enum { 445 AUDIO_USAGE_UNKNOWN = 0, 446 AUDIO_USAGE_MEDIA = 1, 447 AUDIO_USAGE_VOICE_COMMUNICATION = 2, 448 AUDIO_USAGE_VOICE_COMMUNICATION_SIGNALLING = 3, 449 AUDIO_USAGE_ALARM = 4, 450 AUDIO_USAGE_NOTIFICATION = 5, 451 AUDIO_USAGE_NOTIFICATION_TELEPHONY_RINGTONE = 6, 452#ifndef AUDIO_NO_SYSTEM_DECLARATIONS 453 AUDIO_USAGE_NOTIFICATION_COMMUNICATION_REQUEST = 7, 454 AUDIO_USAGE_NOTIFICATION_COMMUNICATION_INSTANT = 8, 455 AUDIO_USAGE_NOTIFICATION_COMMUNICATION_DELAYED = 9, 456 AUDIO_USAGE_NOTIFICATION_EVENT = 10, 457#endif // AUDIO_NO_SYSTEM_DECLARATIONS 458 AUDIO_USAGE_ASSISTANCE_ACCESSIBILITY = 11, 459 AUDIO_USAGE_ASSISTANCE_NAVIGATION_GUIDANCE = 12, 460 AUDIO_USAGE_ASSISTANCE_SONIFICATION = 13, 461 AUDIO_USAGE_GAME = 14, 462 AUDIO_USAGE_VIRTUAL_SOURCE = 15, 463 AUDIO_USAGE_ASSISTANT = 16, 464 AUDIO_USAGE_CALL_ASSISTANT = 17, 465 AUDIO_USAGE_ENFORCED_AUDIBLE = 18, 466 AUDIO_USAGE_BLUETOOTH_SCO = 19, 467 AUDIO_USAGE_TTS = 20, 468 AUDIO_USAGE_EMERGENCY = 1000, 469 AUDIO_USAGE_SAFETY = 1001, 470 AUDIO_USAGE_VEHICLE_STATUS = 1002, 471 AUDIO_USAGE_ANNOUNCEMENT = 1003, 472} audio_usage_t;

9、電話狀態PhoneState


1package miui.provider; 2 3public class PhoneConstants { 4 5 // Number presentation type for caller id display (From internal/Conneciton.java) 6 public static int PRESENTATION_ALLOWED = 1; // normal 7 public static int PRESENTATION_RESTRICTED = 2; // block by user 8 public static int PRESENTATION_UNKNOWN = 3; // no specified or unknown by network 9 public static int PRESENTATION_PAYPHONE = 4; // show pay phone info 10} 11

10、音頻的播放狀態PlaybackState


/** 179 * @hide 180 */ 181 @IntDef({STATE_NONE, STATE_STOPPED, STATE_PAUSED, STATE_PLAYING, STATE_FAST_FORWARDING, 182 STATE_REWINDING, STATE_BUFFERING, STATE_ERROR, STATE_CONNECTING, 183 STATE_SKIPPING_TO_PREVIOUS, STATE_SKIPPING_TO_NEXT, STATE_SKIPPING_TO_QUEUE_ITEM}) 184 @Retention(RetentionPolicy.SOURCE) 185 public @interface State {} 186 187 /** 188 * This is the default playback state and indicates that no media has been 189 * added yet, or the performer has been reset and has no content to play. 190 * 191 * @see Builder#setState(int, long, float) 192 * @see Builder#setState(int, long, float, long) 193 */ 194 public static final int STATE_NONE = 0; 195 196 /** 197 * State indicating this item is currently stopped. 198 * 199 * @see Builder#setState 200 */ 201 public static final int STATE_STOPPED = 1; 202 203 /** 204 * State indicating this item is currently paused. 205 * 206 * @see Builder#setState 207 */ 208 public static final int STATE_PAUSED = 2; 209 210 /** 211 * State indicating this item is currently playing. 212 * 213 * @see Builder#setState 214 */ 215 public static final int STATE_PLAYING = 3; 216 217 /** 218 * State indicating this item is currently fast forwarding. 219 * 220 * @see Builder#setState 221 */ 222 public static final int STATE_FAST_FORWARDING = 4; 223 224 /** 225 * State indicating this item is currently rewinding. 226 * 227 * @see Builder#setState 228 */ 229 public static final int STATE_REWINDING = 5; 230 231 /** 232 * State indicating this item is currently buffering and will begin playing 233 * when enough data has buffered. 234 * 235 * @see Builder#setState 236 */ 237 public static final int STATE_BUFFERING = 6; 238 239 /** 240 * State indicating this item is currently in an error state. The error 241 * message should also be set when entering this state. 242 * 243 * @see Builder#setState 244 */ 245 public static final int STATE_ERROR = 7; 246 247 /** 248 * State indicating the class doing playback is currently connecting to a 249 * new destination. Depending on the implementation you may return to the previous 250 * state when the connection finishes or enter {@link #STATE_NONE}. 251 * If the connection failed {@link #STATE_ERROR} should be used. 252 * 253 * @see Builder#setState 254 */ 255 public static final int STATE_CONNECTING = 8; 256 257 /** 258 * State indicating the player is currently skipping to the previous item. 259 * 260 * @see Builder#setState 261 */ 262 public static final int STATE_SKIPPING_TO_PREVIOUS = 9; 263 264 /** 265 * State indicating the player is currently skipping to the next item. 266 * 267 * @see Builder#setState 268 */ 269 public static final int STATE_SKIPPING_TO_NEXT = 10; 270 271 /** 272 * State indicating the player is currently skipping to a specific item in 273 * the queue. 274 * 275 * @see Builder#setState 276 */ 277 public static final int STATE_SKIPPING_TO_QUEUE_ITEM = 11; 278 279 /** 280 * Use this value for the position to indicate the position is not known. 281 */ 282 public static final long PLAYBACK_POSITION_UNKNOWN = -1;

11、鈴聲模式 RingerMode()


624 * @see #setRingerMode(int) 625 * @see #getRingerMode() 626 */ 627 public static final int RINGER_MODE_SILENT = 0; 628 629 /** 630 * Ringer mode that will be silent and will vibrate. (This will cause the 631 * phone ringer to always vibrate, but the notification vibrate to only 632 * vibrate if set.) 633 * 634 * @see #setRingerMode(int) 635 * @see #getRingerMode() 636 */ 637 public static final int RINGER_MODE_VIBRATE = 1; 638 639 /** 640 * Ringer mode that may be audible and may vibrate. It will be audible if 641 * the volume before changing out of this mode was audible. It will vibrate 642 * if the vibrate setting is on. 643 * 644 * @see #setRingerMode(int) 1645 * @see #getRingerMode() 646 */ 647 public static final int RINGER_MODE_NORMAL = 2; 648 649 /** 650 * Maximum valid ringer mode value. Values must start from 0 and be contiguous. 651 * @hide 652 */ 653 public static final int RINGER_MODE_MAX = RINGER_MODE_NORMAL;

12、音量設置到底層的log


//Audiotrack首先會在AudioPolicy中取output 02-05 11:35:11.574 1114 2416 D APM_AudioPolicyManager: getOutputForAttrInt() attributes={ Content type: AUDIO_CONTENT_TYPE_UNKNOWN Usage: AUDIO_USAGE_MEDIA Source: AUDIO_SOURCE_DEFAULT Flags: 0x0 Tags: } stream=AUDIO_STREAM_MUSIC session 193 selectedDeviceId 0 02-05 11:35:11.574 1114 2416 D APM_AudioPolicyManager: getOutputForAttrInt() device {type:0x2,@:}, sampling rate 44100, format 0x1000000, channel mask 0x3, flags 0x11 stream AUDIO_STREAM_MUSIC//下面這段可以直觀看出是在調用applyStreamVolumes() 02-05 11:35:11.577 1114 2416 D AudioPolicyManagerCustom: checkAndSetVolume() set volumeSource 1 volume index 8 for device 02-05 11:35:11.579 1114 2416 D AudioPolicyManagerCustom: checkAndSetVolume() set volumeSource 2 volume index 4 for device 02-05 11:35:11.580 1114 2416 D AudioPolicyManagerCustom: checkAndSetVolume() set volumeSource 3 volume index 4 for device 02-05 11:35:11.581 1114 2416 D AudioPolicyManagerCustom: checkAndSetVolume() set volumeSource 4 volume index 0 for device 02-05 11:35:11.583 1114 2416 D AudioPolicyManagerCustom: checkAndSetVolume() set volumeSource 5 volume index 10 for device 02-05 11:35:11.584 1114 2416 D AudioPolicyManagerCustom: checkAndSetVolume() set volumeSource 6 volume index 4 for device 02-05 11:35:11.584 1114 2416 D AudioPolicyManagerCustom: checkAndSetVolume() set volumeSource 7 volume index 4 for device 02-05 11:35:11.585 1114 2416 D AudioPolicyManagerCustom: checkAndSetVolume() set volumeSource 8 volume index 7 for device 02-05 11:35:11.585 1114 2416 D AudioPolicyManagerCustom: checkAndSetVolume() set volumeSource 9 volume index 7 for device 02-05 11:35:11.586 1114 2416 D AudioPolicyManagerCustom: checkAndSetVolume() set volumeSource 10 volume index 4 for device 02-05 11:35:11.586 1114 2416 D AudioPolicyManagerCustom: checkAndSetVolume() set volumeSource 11 volume index 0 for device 02-05 11:35:11.587 1114 2416 D AudioPolicyManagerCustom: checkAndSetVolume() set volumeSource 12 volume index 1 for device 02-05 11:35:11.588 1114 2416 D AudioPolicyManagerCustom: checkAndSetVolume() set volumeSource 13 volume index 0 for device 02-05 11:35:11.588 1114 2416 D AudioPolicyManagerCustom: checkAndSetVolume() set volumeSource 14 volume index 0 for device//取到了output 605,port ID 244 02-05 11:35:11.590 1114 2416 D APM_AudioPolicyManager: getOutputForAttrInt returns output 605 selectedDeviceId 3 02-05 11:35:11.590 1114 2416 D APM_AudioPolicyManager: getOutputForAttr() returns output 605 requestedPortId 0 selectedDeviceId 3 for port ID 24402-05 11:35:11.603 1114 1422 D APM_AudioPolicyManager: notification filter: startOutput muteMaskInt=0//startoutput()->startsource() 02-05 11:35:11.604 1114 1422 D APM_AudioPolicyManager: startOutput() output 605, stream 3, session 193 appname com.miui.player uid 10081//在startsource調用的setoutputdevices 02-05 11:35:11.607 1114 1422 D APM_AudioPolicyManager: setOutputDevices device {type:0x2,@:} delayMs 0 force 1 02-05 11:35:11.607 1114 1422 D APM_AudioPolicyManager: setOutputDevices() prevDevice {type:0x2,@:} 02-05 11:35:11.607 1114 1422 D APM_AudioPolicyManager: setOutputDevices changing device to {type:0x2,@:}//同樣是調用了applyStreamVolumes() 02-05 11:35:11.635 1114 1422 D AudioPolicyManagerCustom: checkAndSetVolume() set volumeSource 1 volume index 8 for device 0x2 02-05 11:35:11.635 1114 1422 D AudioPolicyManagerCustom: checkAndSetVolume() set volumeSource 2 volume index 4 for device 0x2 02-05 11:35:11.635 1114 1422 D AudioPolicyManagerCustom: checkAndSetVolume() set volumeSource 3 volume index 4 for device 0x2 02-05 11:35:11.635 1114 1422 D AudioPolicyManagerCustom: checkAndSetVolume() set volumeSource 4 volume index 0 for device 0x2 02-05 11:35:11.635 1114 1422 D AudioPolicyManagerCustom: checkAndSetVolume() set volumeSource 5 volume index 10 for device 0x2 02-05 11:35:11.635 1114 1422 D AudioPolicyManagerCustom: checkAndSetVolume() set volumeSource 6 volume index 4 for device 0x2 02-05 11:35:11.635 1114 1422 D AudioPolicyManagerCustom: checkAndSetVolume() set volumeSource 7 volume index 4 for device 0x2 02-05 11:35:11.636 1114 1422 D AudioPolicyManagerCustom: checkAndSetVolume() set volumeSource 8 volume index 7 for device 0x2 02-05 11:35:11.636 1114 1422 D AudioPolicyManagerCustom: checkAndSetVolume() set volumeSource 9 volume index 7 for device 0x2 02-05 11:35:11.636 1114 1422 D AudioPolicyManagerCustom: checkAndSetVolume() set volumeSource 10 volume index 4 for device 0x2 02-05 11:35:11.636 1114 1422 D AudioPolicyManagerCustom: checkAndSetVolume() set volumeSource 11 volume index 0 for device 0x2 02-05 11:35:11.636 1114 1422 D AudioPolicyManagerCustom: checkAndSetVolume() set volumeSource 12 volume index 1 for device 0x2 02-05 11:35:11.636 1114 1422 D AudioPolicyManagerCustom: checkAndSetVolume() set volumeSource 13 volume index 0 for device 0x2 02-05 11:35:11.636 1114 1422 D AudioPolicyManagerCustom: checkAndSetVolume() set volumeSource 14 volume index 0 for device 0x2//checkandsetvolume(),set volumeSource 4 表示:STREAM_MUSIC 02-05 11:35:11.636 1114 1422 D AudioPolicyManagerCustom: checkAndSetVolume() set volumeSource 4 volume index 0 for device 0x2 !!!!!最終音量的生效點(streamtype為music的音頻流)//暫停播放器,stopoutput 02-05 11:35:11.749 1114 1422 D APM_AudioPolicyManager: stopOutput portId 244 02-05 11:35:11.749 1114 1422 D APM_AudioPolicyManager: stopOutput() output 605, stream 3, session 193 02-05 11:35:11.749 1114 1422 D APM_AudioPolicyManager: setOutputDevices device AUDIO_DEVICE_NONE delayMs 100 force 0 02-05 11:35:11.749 1114 1422 D APM_AudioPolicyManager: setOutputDevices() prevDevice {type:0x2,@:} 02-05 11:35:11.760 1114 1422 D APM_AudioPolicyManager: notification filter: startOutput muteMaskInt=0

總結

以上是生活随笔為你收集整理的常用音频概念的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

国产麻豆剧传媒免费观看 | 日韩在线观看视频一区二区三区 | 极品中文字幕 | 日韩精品一区电影 | 久久久五月天 | av九九九 | 天天操狠狠操夜夜操 | 手机版av在线 | 丝袜制服天堂 | 国产精品ssss在线亚洲 | 国产精品毛片一区视频播不卡 | 欧美成人一二区 | 国产小视频你懂的 | 色姑娘综合天天 | 精品国产1区2区3区 国产欧美精品在线观看 | 日韩精品在线观看视频 | 免费成人短视频 | 日韩av影视在线 | 久久久免费网站 | 久久在线免费观看 | 日韩综合视频在线观看 | 国产一二三在线视频 | 成年人免费在线看 | 亚洲精品乱码久久久久久蜜桃不爽 | 国产国语在线 | 久草在线观| 中文字幕一区二区三区在线观看 | 国产真实精品久久二三区 | av中文字幕不卡 | www.色午夜.com| 精品日韩中文字幕 | 国产精品 欧美 日韩 | 一区二区 精品 | 中文av网站| 视频在线播放国产 | 日韩中文字幕免费看 | 久久久国产毛片 | 在线导航福利 | 天天操天天色天天 | 久久精品视频网址 | av永久网址| sm免费xx网站| 99热最新在线 | 国偷自产视频一区二区久 | 日韩精品中文字幕在线不卡尤物 | 免费看成人a | 国产精品久久久久久久久久尿 | 欧美在线日韩在线 | 99色在线观看 | 免费试看一区 | av在线色 | 91av视频网站| 免费黄色在线播放 | 免费a视频在线 | 日韩精品欧美精品 | 黄色片免费看 | 青春草视频在线播放 | 又粗又长又大又爽又黄少妇毛片 | 国产九色在线播放九色 | 天天干天天看 | 国产免码va在线观看免费 | 国产精品99久久久精品 | 亚洲精品国产品国语在线 | 欧美色就是色 | 久久亚洲私人国产精品va | 色先锋资源网 | 夜色资源站wwwcom | 欧美极品久久 | 色综合久久天天 | 美女网站视频久久 | 在线看片中文字幕 | 日韩在线一级 | 黄色在线免费观看网站 | 成人在线播放免费观看 | 99久久久久久久久 | 日韩在线一二三区 | 成人av片免费观看app下载 | 深爱婷婷网 | 日日操狠狠干 | 97视频在线观看成人 | 99精品国产免费久久久久久下载 | 国产欧美日韩视频 | 丁香色综合| 久久a免费视频 | 亚洲天堂网在线播放 | 国产免费亚洲高清 | 国产91在线 | 美洲 | 欧美极品xxxx | www日日 | 精品高清美女精品国产区 | 在线播放 亚洲 | 久热色超碰 | 成人毛片一区二区三区 | 色婷婷国产在线 | 国产一区在线免费 | 黄色网www | 日韩欧美一区二区三区视频 | 日韩视频中文 | 久久国产女人 | 国产在线精品一区二区不卡了 | 日韩电影一区二区三区在线观看 | av在线一级 | 伊人婷婷综合 | 日韩理论| 日韩在线观看视频网站 | 国产精品小视频网站 | 丁香六月中文字幕 | 99人成在线观看视频 | 日韩精品免费在线观看 | 国产日韩在线观看一区 | 久热爱| 99久久99久国产黄毛片 | 欧美日韩一区二区免费在线观看 | 操碰av| 久久视精品 | 狠狠狠色丁香婷婷综合久久五月 | 这里有精品在线视频 | 中文字幕一区二区三区四区视频 | 天躁狠狠躁 | 久久99精品国产 | 亚洲精品18p| 超碰在线网 | 成人久久久久久久久 | 色婷婷 亚洲 | 99c视频在线 | 国产91aaa| 天天综合狠狠精品 | 91av视频在线免费观看 | 视频二区在线 | 中文字幕av在线免费 | 色视频一区| 狠狠操影视 | 国产色婷婷在线 | 亚洲国产视频a | 日韩欧美区 | 黄色片网站大全 | 成人黄色小说在线观看 | 国产一区二区免费在线观看 | 狠狠躁日日躁狂躁夜夜躁av | 国产精品高潮呻吟久久av无 | 欧美性大胆 | 狠狠干电影 | 亚洲成人资源在线 | 色五月情| 免费看污网站 | 久久视频中文字幕 | av黄色在线播放 | 99热手机在线观看 | 色97在线| 国产精品人人做人人爽人人添 | 99精品国产在热久久 | 久久这里只有精品23 | 日日日干 | 国产精品永久在线观看 | 99热在线国产精品 | 成人一级片视频 | 久久av观看| 国产精品一区二区免费看 | 免费看国产黄色 | 成人网色 | 欧美一区二区三区在线观看 | 色视频在线免费观看 | 天天做日日爱夜夜爽 | 超碰人人91 | 日韩有码专区 | 黄网站免费大全入口 | 欧美日韩国产免费视频 | 国产精品中文字幕av | 天堂av在线中文在线 | 在线观看中文字幕dvd播放 | 亚洲成人一二三 | 99久久综合狠狠综合久久 | 色www精品视频在线观看 | 久久另类视频 | 国产在线播放一区二区 | 国产 亚洲 欧美 在线 | 女人18毛片a级毛片一区二区 | 亚洲综合网 | 99久久这里只有精品 | 久久久久久久福利 | 97精品国产一二三产区 | 亚洲一区二区麻豆 | 日韩免费专区 | 成人黄色片在线播放 | 国产成人精品一二三区 | 久久永久视频 | 久久a v电影 | 久久国产影视 | 久久激情婷婷 | 欧美日韩超碰 | 国产无遮挡又黄又爽在线观看 | av成人免费在线观看 | zzijzzij亚洲日本少妇熟睡 | 午夜黄色影院 | 国产精品丝袜 | 精品专区一区二区 | 黄色在线免费观看网站 | 久久国产福利 | 国产精品12 | 国产精品久久久久久久久久久久冷 | 国产精品99爱 | 久久不射网站 | 毛片网在线播放 | 中文字幕一区二区三区四区视频 | 韩日精品在线 | 最近日本韩国中文字幕 | 热久久免费国产视频 | 中文字幕电影一区 | 精品国产一区二区三区在线观看 | 888av | 国产不卡在线观看 | 九九九九九九精品 | avv天堂| 亚洲成人高清在线 | 91成人在线视频观看 | 六月激情 | 在线国产精品视频 | 久久久久久久网站 | 免费黄在线看 | 激情av综合 | 日韩高清在线一区二区 | 久久精品视频在线观看免费 | 国产自在线 | 亚洲一级片在线看 | 婷婷网五月天 | 国产中文字幕国产 | 精品欧美乱码久久久久久 | 天天综合网 天天综合色 | 97国产大学生情侣酒店的特点 | 欧美在线aa | 免费看污的网站 | 日产乱码一二三区别免费 | 天天色欧美 | 天天天综合网 | 午夜骚影 | 国内三级在线 | 久久国产精品99精国产 | 9999精品免费视频 | 久久国产免费视频 | 久久久精品小视频 | 日日夜夜干 | 国产欧美综合在线观看 | 高清不卡一区二区三区 | 成人av在线看 | 午夜在线免费观看视频 | 丁香综合五月 | 成人免费观看电影 | 在线观看蜜桃视频 | 97国产在线视频 | 久久综合给合久久狠狠色 | 蜜臀精品久久久久久蜜臀 | 国产黄色在线看 | 中文字幕在线观看第三页 | 热re99久久精品国产66热 | aaa日本高清在线播放免费观看 | 亚洲老妇xxxxxx | 99精品毛片 | 欧美精品一区二区在线观看 | 在线免费黄 | 亚洲激情久久 | 狠狠综合久久 | 91传媒91久久久 | av黄免费看| 国产精品久久中文字幕 | 久久综合欧美精品亚洲一区 | 福利一区视频 | 国产香蕉久久精品综合网 | 国产69精品久久app免费版 | 最近免费在线观看 | 久久精品国产免费看久久精品 | 中文字幕在线视频一区二区三区 | 久久精品这里都是精品 | 婷婷激情久久 | 91精品国自产在线 | 亚洲女人天堂成人av在线 | 久久久久成人精品免费播放动漫 | 成人黄色大片在线观看 | 久久久精品亚洲 | 日批网站免费观看 | av免费在线观看1 | 欧美日韩中 | 日韩av不卡在线观看 | 91午夜精品 | 国产免费亚洲高清 | 久久99国产精品视频 | 国产精品爽爽久久久久久蜜臀 | 免费看的国产视频网站 | 91在线看片 | 中文字幕一区在线 | 亚洲成人精品影院 | 国产精品美女久久久久久网站 | 国产福利免费在线观看 | 免费男女网站 | 欧美男女爱爱视频 | 免费看精品久久片 | 国产在线精品一区 | 中文字幕黄色av | 亚洲国产精品一区二区久久hs | 精品国产精品国产偷麻豆 | 黄色在线观看免费网站 | 五月婷婷开心 | 国产精品久久久久久久久久久久午夜 | 国产色女 | 日日夜夜精品视频 | 麻豆国产视频 | 在线小视频你懂得 | 亚洲国产精品电影在线观看 | 99免费在线视频 | 亚洲涩综合| 又黄又爽又无遮挡的视频 | 黄色一级片视频 | 99视频精品视频高清免费 | 亚洲国产成人久久 | 色五婷婷| 国产韩国日本高清视频 | 日韩综合在线观看 | 亚洲天天 | 91麻豆看国产在线紧急地址 | 日日夜夜添 | 国产成在线观看免费视频 | av高清一区二区三区 | 狠狠狠色丁香婷婷综合久久88 | 免费观看日韩av | 精品久久一区二区 | 日本护士三级少妇三级999 | 91传媒免费观看 | 欧美日韩裸体免费视频 | 亚洲不卡在线 | 国产精品欧美久久久久久 | 国产精品免费久久久 | 免费日韩 精品中文字幕视频在线 | 成人作爱视频 | 成人av动漫在线观看 | 日韩国产精品毛片 | 国产不卡一二三区 | 黄色免费观看网址 | 亚洲色图色 | 久久免费国产视频 | 国产精品第十页 | 国产免费a | 亚洲专区在线播放 | 亚州国产精品久久久 | 天天天天综合 | 青草视频在线免费 | avv天堂| 中文字幕av在线播放 | 成年人免费观看国产 | 蜜臀av性久久久久蜜臀aⅴ流畅 | 欧美ⅹxxxxxx | 黄色一级影院 | 精品福利在线 | 五月色丁香 | 欧美三级高清 | 中文字幕免费一区二区 | 精品久久在线 | 亚洲乱码一区 | 国产破处视频在线播放 | 国产精品一区二区果冻传媒 | 视频在线99 | 欧美午夜精品久久久久 | 一本一本久久a久久精品牛牛影视 | 精品久久久久久综合 | 久久久久久国产精品亚洲78 | 日韩理论在线视频 | 久久国产视频网站 | 午夜精品三区 | 亚洲精品一区二区三区在线观看 | 欧美日韩免费视频 | 日韩高清不卡一区二区三区 | 亚洲精品乱码久久久久久写真 | 国产精品 亚洲精品 | 西西www4444大胆在线 | 日日夜夜噜 | 久在线| 天天干夜夜操视频 | 国产伦精品一区二区三区无广告 | 91成人午夜 | 免费高清在线视频一区· | 97精品国产97久久久久久久久久久久 | 黄色成人小视频 | 国产电影黄色av | 国产精品资源在线 | 四虎免费av| 色婷婷免费 | 久久久影院官网 | 亚洲免费色 | 青青射 | 亚洲国产美女精品久久久久∴ | www国产亚洲精品久久麻豆 | 美女黄濒 | av亚洲产国偷v产偷v自拍小说 | aa一级片| japanesefreesex中国少妇 | av久久久| 91九色蝌蚪国产 | 国产精品第一视频 | 国产美女精品人人做人人爽 | 国产黄色免费观看 | 日本久久久影视 | 免费看精品久久片 | 亚洲视频播放 | 精品一区二区免费在线观看 | 天天天干夜夜夜操 | 探花视频在线观看免费 | 久久一区二区三区超碰国产精品 | 国产99久久九九精品免费 | 久草在线视频免费资源观看 | 亚洲狠狠婷婷 | 久久久久伊人 | 久久精品视频4 | 草久久久 | 日本一区二区三区免费看 | 婷婷五情天综123 | 欧美黑人巨大xxxxx | 免费网站看av片 | 午夜av电影院 | 91视频高清 | 亚洲经典中文字幕 | 操操操操网 | 夜夜操天天干 | 亚洲天堂网视频在线观看 | 99亚洲国产精品 | 99 视频 高清| 国产视频91在线 | 亚洲色图22p| 欧美综合在线视频 | 欧美久草视频 | 久久免费a| 69精品在线观看 | 中文字幕在线观看视频网站 | 91丨九色丨蝌蚪丨对白 | 国产久视频 | 97超碰成人 | 久久免费看 | 久久在视频 | 亚洲一区二区三区miaa149 | 日韩激情网| 美女在线观看av | 成人性生交大片免费观看网站 | 欧美日韩成人 | 超碰在线资源 | 综合久久婷婷 | 五月婷香 | 热精品 | 女人18毛片a级毛片一区二区 | 亚洲精品观看 | 日韩欧美99| 日本午夜免费福利视频 | 色婷婷天天干 | 天天综合网天天 | 久久久久久福利 | 天天艹天天爽 | 国产精品久久久久婷婷 | 亚洲精品影视在线观看 | 国产精品久久久久aaaa | 国内精品视频在线 | 国产69精品久久久久久 | 久久精品99| 久久久免费精品国产一区二区 | 欧美日韩一区二区在线观看 | 久久美女免费视频 | 国产精品久久久久久久久久新婚 | 国产我不卡 | 亚洲毛片在线观看. | 国产美女视频黄a视频免费 久久综合九色欧美综合狠狠 | 伊人永久 | 菠萝菠萝在线精品视频 | 日韩免费不卡av | 国产精品久久久久久久妇 | 一区二区三区在线电影 | 麻豆一二| 五月婷婷深开心 | 国产在线观看一 | 精品色999 | 国产精品99在线观看 | 国产成人在线免费观看 | 久久久人人爽 | 一区二区三区三区在线 | 香蕉国产91 | 亚洲激情视频在线观看 | 久久成人18免费网站 | 国产一区二区三区午夜 | 安徽妇搡bbbb搡bbbb | 精品一区二区综合 | 色综合久久久久久中文网 | 久久久久久久久久久网站 | 色久天| 91久久在线观看 | 久久公开视频 | 亚洲色综合 | 99自拍视频在线观看 | 视频一区在线免费观看 | 97国产大学生情侣白嫩酒店 | 91福利试看| 国产美女视频黄a视频免费 久久综合九色欧美综合狠狠 | 欧洲一区二区三区精品 | 国产精品久久久久四虎 | 热久久免费视频精品 | 日韩丝袜在线观看 | 91九色蝌蚪视频在线 | 中文字幕av全部资源www中文字幕在线观看 | 国内精品久久久 | 中文字幕高清 | 国产精品尤物视频 | 国产欧美精品一区aⅴ影院 99视频国产精品免费观看 | 日本黄色a级大片 | 日韩久久一区二区 | 亚洲国产精品成人女人久久 | 亚洲精品视频在 | 日本一区二区三区免费观看 | 免费观看黄 | 亚洲精品一区二区精华 | 成人国产在线 | 91av在| 天天色天天上天天操 | 91免费国产在线观看 | 国产精品一区二区av日韩在线 | 久久九九免费视频 | 日韩精品视频免费看 | 五月婷婷中文字幕 | 国产96在线视频 | www.99av| 久久精品成人欧美大片古装 | 亚洲 中文 在线 精品 | 中文在线a∨在线 | 久久呀 | 久久久九色精品国产一区二区三区 | 亚洲精品视频久久 | 天天干.com| 欧美大片aaa | 私人av| 六月婷色 | 亚洲三级网站 | 国产91丝袜在线播放动漫 | 久久精品伊人 | 免费福利视频网站 | 在线播放91| 国产视频 久久久 | 免费视频黄色 | 99视频免费在线观看 | 美女国产| 在线观看国产高清视频 | 免费成人在线电影 | 日韩va欧美va亚洲va久久 | 狠狠色狠狠色综合系列 | 91毛片在线观看 | 三级小视频在线观看 | 夜夜躁狠狠躁日日躁 | 久久久国产一区二区三区四区小说 | 私人av| 国产黄色片在线免费观看 | 九九免费视频 | 日本公乱妇视频 | 国产在线视频导航 | 又黄又爽的视频在线观看网站 | 欧美激情精品久久久久久 | 久久国产精品免费观看 | 亚洲精品乱码久久久久v最新版 | 欧美成年人在线视频 | 黄网站色 | 超级碰碰碰视频 | 亚洲理论电影 | 久久99精品热在线观看 | 国产精品自产拍在线观看蜜 | 久久精品免视看 | 奇米影视777四色米奇影院 | 国产色在线视频 | 久久国产精品影片 | 91精品一区二区在线观看 | 四虎影视4hu4虎成人 | 又粗又长又大又爽又黄少妇毛片 | 日韩免费福利 | 成人av电影免费在线播放 | 久久福利综合 | 欧美一区二区日韩一区二区 | 精品国产精品久久 | 亚洲精品视频在线观看免费 | 久福利 | 黄色av三级在线 | 一区二区三区国产欧美 | 一区二区三区韩国免费中文网站 | 久久久免费国产 | 中国一 片免费观看 | 中文字幕在线观看av | 国产精品一区二区免费在线观看 | 99视频久 | 天天天色 | 狠狠色丁香久久婷婷综合_中 | 久久精品这里精品 | 日日躁天天躁 | 亚洲一区不卡视频 | 五月婷婷色综合 | 国产黄色播放 | 欧美成人免费在线 | 天天弄天天干 | 精品视频专区 | 在线成人看片 | 在线观看亚洲精品 | 91视频麻豆 | 中文字幕在线观看网址 | 蜜臀久久99精品久久久久久网站 | 中文av字幕在线观看 | 波多野结衣电影一区二区 | 国产拍揄自揄精品视频麻豆 | 欧美一级片在线观看视频 | 国产精品久久免费看 | 激情综合站| 久久99国产精品自在自在app | 很污的网站| 99久久综合精品五月天 | 婷婷色中文字幕 | 中文字幕精品一区久久久久 | 欧美日本一区 | 国产欧美精品在线观看 | 五月天中文字幕 | 国产一级在线免费观看 | 人人超碰在线 | 国产精品久久久一区二区三区网站 | 久久久久一区 | 国产精品麻豆视频 | 黄视频色网站 | 久久久精品电影 | 久久久精品电影 | 99热99| 欧美另类人妖 | 草久久久久久 | 国产精品麻豆视频 | 高清视频一区 | 欧美日韩国产精品久久 | 精品久久久久久国产 | 国产热re99久久6国产精品 | 91精品国产91热久久久做人人 | av免费在线观看网站 | 国产精品日韩久久久久 | 国产精品不卡视频 | 国产精品18久久久久久不卡孕妇 | 国产九九热 | 99久久婷婷国产 | 婷婷亚洲五月 | 国产精品99精品久久免费 | 一区二区三区动漫 | 亚洲欧美视频在线观看 | 欧美一区成人 | 国产 精品 资源 | 丁香花在线视频观看免费 | 玖玖精品在线 | 96视频在线| 日日干狠狠操 | 亚洲激情一区二区三区 | 午夜电影av| 黄色1级毛片 | 99免费在线视频 | 日韩毛片久久久 | 国产精品视频全国免费观看 | 天堂va欧美va亚洲va老司机 | 成年人视频在线免费播放 | 激情综合电影网 | 激情视频二区 | 国产伦理精品一区二区 | 欧美日韩综合在线 | 日韩欧美在线观看一区二区 | 中文字幕日本特黄aa毛片 | 精品视频999| 97超碰人人网 | 久久99久久99精品免视看婷婷 | 在线韩国电影免费观影完整版 | 亚洲精品一区二区久 | 激情网第四色 | 激情喷水 | 午夜国产福利在线 | 免费高清在线视频一区· | 欧美一级电影 | 丁香六月网 | 美女国产网站 | 69欧美视频| 黄色的视频网站 | 91在线中文| 日韩一区二区三区高清免费看看 | 在线a视频 | 嫩草91影院 | 亚洲精选久久 | 黄色成人免费电影 | 久久亚洲精品国产亚洲老地址 | 免费麻豆 | 日韩一二三 | 国产免费视频在线 | 国产视频在线免费 | 久久免费视频这里只有精品 | 人人插人人插 | 黄色一级大片在线免费看产 | 91在线亚洲| 超碰97久久| 午夜私人影院久久久久 | 亚洲精品伦理在线 | 国产一区在线不卡 | 久久久国产精品视频 | 三级黄色大片在线观看 | 亚洲aⅴ久久精品 | 天天鲁天天干天天射 | 国产色拍拍拍拍在线精品 | www.在线观看av | 日韩成人精品 | 婷婷激情影院 | 狠狠色丁香久久婷婷综合五月 | 久久这里只有精品1 | 91经典在线| 国产精品中文在线 | 国产美女在线观看 | 免费高清无人区完整版 | 伊人久久av | 天天操天天添天天吹 | 色久网| 91传媒激情理伦片 | 免费精品| 成年人免费看的视频 | 久久久久亚洲国产 | 香蕉久草| 免费精品视频在线观看 | 国内三级在线 | 免费在线观看av电影 | 国产精品99久久免费观看 | 成人一区二区三区在线观看 | 综合天堂av久久久久久久 | 色综合久久综合 | 欧美一级视频在线观看 | 中文字幕在线看人 | 国产免费不卡av | 精品国产一区二区三区不卡 | 亚洲在线a | 精品国产一区二区三区蜜臀 | 808电影免费观看三年 | 日韩精品一区二区三区免费视频观看 | www国产一区 | 国产精品18久久久久久首页狼 | 色网站中文字幕 | 国产又粗又长的视频 | 国产 欧美 日韩 | 欧美日韩国产精品一区二区三区 | 亚洲精品91天天久久人人 | 91精品久久久久久久久久久久久 | 天天色 天天 | 日日干干| 日韩欧美大片免费观看 | 国产又粗又猛又色又黄网站 | 欧美激情综合五月色丁香小说 | 日韩av二区 | 国产精品av免费在线观看 | 91久久一区二区 | 成年人在线免费看视频 | 激情网五月婷婷 | 91av中文| 欧美在线观看视频一区二区 | 人人干人人超 | 日韩欧美综合在线视频 | 免费久久久| 欧美精品在线观看 | 一区二区三区免费在线观看视频 | 综合色中色 | 国产精品久久久久久久7电影 | 日韩在线视频网站 | 丁香花在线观看视频在线 | a'aaa级片在线观看 | 久久伊人国产精品 | 日本一区二区免费在线观看 | 综合精品在线 | se婷婷| 超碰999| 色中文字幕在线观看 | 99久久精品午夜一区二区小说 | 韩国在线一区二区 | 亚洲精品一区中文字幕乱码 | 亚洲国产日本 | 看国产黄色大片 | 精品国产网址 | 一区二区精品国产 | 日韩字幕 | 在线免费观看欧美日韩 | 国产精选在线 | 欧美国产日韩激情 | 欧美另类z0zx| 天天草天天干 | 91综合久久一区二区 | 有码视频在线观看 | 91在线视频免费 | 91黄色小视频 | 国产高清在线观看av | 久久免费大片 | 午夜精品久久久久久99热明星 | 91香蕉国产在线观看软件 | 免费能看的黄色片 | 手机看片中文字幕 | 美女黄频在线观看 | 久久夜色电影 | 天堂av在线网 | 欧美日韩高清在线观看 | 探花视频在线观看免费 | 在线观看免费福利 | 国语麻豆 | 精品福利片 | 天天在线免费视频 | 麻豆影视网站 | 国产精品都在这里 | 国产一区二区三区午夜 | 国产精品免费久久久久久久久久中文 | 欧美色综合久久 | 日本精品视频在线 | 国产黄色网 | 黄色av大片 | 久久av影视 | 天天做日日做天天爽视频免费 | 国产精品视屏 | 亚洲日本色 | 又污又黄的网站 | 国产精品1区2区在线观看 | 97高清免费视频 | 国产成人一区二区啪在线观看 | 欧美精品一区二区蜜臀亚洲 | 中文字幕第一页在线 | 精品久久久久久综合日本 | 九九99 | 免费a v在线 | 天天天射| 国产91精品看黄网站在线观看动漫 | 日韩欧美一区二区三区在线观看 | 美女网站一区 | 久久精品一二三 | 国产亚洲精品女人久久久久久 | 五月天久久精品 | 在线观看亚洲电影 | 日批视频在线 | 天天操天天操天天操天天 | 亚洲在线视频播放 | 二区三区中文字幕 | 一级黄色a视频 | 丝袜美腿在线播放 | 欧美大片mv免费 | 久草在线在线视频 | 在线免费观看视频a | 国产综合精品久久 | 成人午夜在线电影 | 男女全黄一级一级高潮免费看 | 91福利专区| 日日躁夜夜躁aaaaxxxx | 亚洲人在线视频 | 国产123区在线观看 国产精品麻豆91 | 亚洲三级在线免费观看 | 欧美精品免费在线观看 | 黄色网大全 | av在线之家电影网站 | 亚洲另类视频在线观看 | 国产手机视频在线观看 | a√天堂资源 | www.久久色 | 天天射天天操天天色 | 国产一区影院 | 日韩av电影国产 | 天堂成人在线 | 国产亚洲综合性久久久影院 | 色中色资源站 | 日韩一区正在播放 | 激情丁香综合 | 极品久久久久久久 | 国产99久久久精品视频 | 99精品视频在线免费观看 | 久久免费国产精品1 | 在线观看av的网站 | 伊人天天 | 99久久日韩精品免费热麻豆美女 | 亚洲视频在线观看 | 亚洲在线视频免费 | 91在线中文| 亚洲精品乱码久久久久久 | 天天拍天天草 | 国产中文字幕视频在线观看 | 美女免费视频黄 | 久久狠狠干 | 久久国产精品久久久 | 国内丰满少妇猛烈精品播 | 奇米影视8888在线观看大全免费 | 99久久精品国产一区二区三区 | 国产a国产 | 九九九九九精品 | 中文字幕av网站 | 中文字幕在线观看一区 | 91在线视频免费 | 久久不射电影院 | 最近更新中文字幕 | 99c视频高清免费观看 | 国产成人精品电影久久久 | 成人一级 | 欧美日韩a视频 | 日韩在线电影一区 | 奇米影视777影音先锋 | 婷婷五月色综合 | 国产一级视频在线观看 | 毛片网在线观看 | 91成人免费在线 | 这里只有精品视频在线 | 日韩午夜电影 | 日韩网站一区 | 婷婷激情综合五月天 | 精品久久五月天 | 久久久久久久国产精品 | 日韩网站在线播放 | 久草精品视频在线播放 | 91传媒免费在线观看 | 欧美最爽乱淫视频播放 | 亚洲不卡123 | 国产成人一区二 | 日本精品一区二区在线观看 | 操操操日日日干干干 | 成全免费观看视频 | 九九九热 | 国产xxxxx在线观看 | 99视频精品全国免费 | 中字幕视频在线永久在线观看免费 | 亚州av网站 | 色噜噜狠狠色综合中国 | 91九色免费视频 | 国产乱对白刺激视频在线观看女王 | 日韩字幕在线观看 | 免费观看成人网 | 在线观看午夜 | 视频在线一区二区三区 | 成片免费观看视频大全 | 亚洲涩涩色 | 国产一卡在线 | 亚洲1级片 | 在线看成人 | 国产亚洲欧美在线视频 | 美女国产网站 | 日韩色一区二区三区 | 国产69久久精品成人看 | 久久久网址 | 色鬼综合网 | 欧美va日韩va | 免费看色的网站 | 日韩剧情 | 久久爽久久爽久久av东京爽 | 精品国产乱码久久久久 | 婷婷九月丁香 | 九九热免费精品视频 | 久久五月激情 | 日夜夜精品视频 | 中文字幕影片免费在线观看 | 国产黄a三级 | 在线一区av | 人人cao| 欧美夫妻性生活电影 | 婷婷99 | 国产一级片免费播放 | 最近免费中文字幕mv在线视频3 | 狠狠天天 | 天天天干天天射天天天操 | 99热在线网站 | 91av网址| 伊人宗合网 | 中文字幕精品一区二区精品 | 久久久久久久久艹 | 在线 视频 一区二区 | 激情五月激情综合网 | 人人讲| 亚洲理论电影 | 最新三级在线 | 视频在线观看国产 | 国产99久久久久久免费看 | 在线观看亚洲 | 丁香婷婷激情国产高清秒播 | 99久久精品无码一区二区毛片 | 亚洲专区 国产精品 | 黄色免费视频在线观看 | 色久av| 999视频精品 | 天天插综合 | 午夜色大片在线观看 | 久久国产精品色婷婷 | 久久精品79国产精品 | 97精品视频在线 | 国产对白av | 天天射天天射天天射 | 射久久久 | 日韩一区二区三区免费视频 | av福利电影 | www.狠狠操.com | 天天色天天操综合网 | 日本成人中文字幕在线观看 | 欧美性生交大片免网 | 欧美另类交在线观看 | 久久激情视频网 | 成人一区二区三区中文字幕 | 国产精品精品久久久久久 | 日韩av看片| 亚洲成人免费 | 349k.cc看片app| 日韩欧美一区二区在线 | 久久精品毛片基地 | 久久综合偷偷噜噜噜色 | 亚洲欧洲久久久 |