1. CDD: Remove .ota as MIDI file extension
    
    In Android 11 (R), the .ota file extension is no longer for MIDI,
    but is for its official MIME mapping, to support Android local
    system updates.
    
    This change matches the CDD with what the plaform code is already
    doing in Android 11, and what CTS is enforcing.
    
    See:
    https://android-review.googlesource.com/c/platform/libcore/+/999958
    for more detail on platform code change.
    
    Bug: 181140216
    Test: None
    Change-Id: I56abdb202516192710f9c62bf2a7e15efdd6002e
    
  2. CDD: Clarified that HEIC decoding required only for HEVC decoders support. 
    
    HEIC decoding relies on an HEVC decoder. The current requirement as a
    result necessitates that HEVC decoders be present on all platforms, even
    though HEVC isn’t otherwise required on all form factors.
    
    This change clarifies the dependent link between HEVC decoder support
    and HEIC decoder support.
    
    Change-Id: I5e0fc6daca705029dc685b3d1a3b10758c233b60
    BUG: 168721648
    
  3. CDD: Relaxing MIDI requirement for USB peripheral mode
    
    Relaxing this requirement because the MIDI over USB peripheral
    mode transport can be more difficult to implement on some devices,
    and it is less critical than the other transports.
    
    Bug: 79266014
    Test: N/A
    Change-Id: I283c035f21b1d68379ec703c1061d59d5a7cf7e9
    
  4. specify channels and sample rates for Opus Codecs
    
    Bug: 124525623
    Test: build
    
  5. audio recording: fix broken link
    
    Fix broken link to "Sharing audio input" developer guide in
    "Concurrent Capture" section.
    
    Test: make
    Change-Id: I93b6945a3c384432a68207ca8ba9379e9074e45d
    
  6. Docs: Almost final Cleanup CL.
    
    Bug: 140142603
    
    Test: ./cdd_gen.sh --version <version-number> --branch <branch-name>
    Change-Id: Ib0a8e55035eab94ff6ab28ad3c6aa6c7c1ae19d3
    
  7. Docs: Editorial Fixes for Section 9.8 and 5.2.5 (video codec table)
    
    bug: b/140142603
    test: NA
    
    Change-Id: Ie5047a8497c94c4cb4e9f0b2bbea51efab9f2eda
    
  8. Docs: added link to AMR-WB reference
    
    Bug: 71561064
    Test: N/A
    Change-Id: I6917396fdf73cd1274b45c78407d3494e2cbaa68
    
  9. Docs: Whitespace at EOF
    
    Last line of file should end with a single newline.
    
    Bug: 140034464
    Test: N/A
    Change-Id: Icdaaf61f25a0448fdf866fee4295b0ee15348812
    
  10. Docs: Fix misspellings
    
    Bug: 140034464
    Test: N/A
    Change-Id: If526c0b31459c7f368c623a0d0e916bfc3fd344f
    
  11. Doc: fix duplicated concurrent capture section
    
    This was incorrectly introduced during one of the rebases.
    
    Test: N/A
    Bug: 140024016
    Change-Id: I6bda4d65583416a7aa618bc6678e9706b5433c56
    
  12. CDD: miscellaneous media updates
    
    Bug: 124525623
    Change-Id: I33b69f9b7bc8f4d7f4e8227e551c1cc7657acef4
    
  13. CDD: Add requirements for microphone gain levels
    
    This is to ensure a consistent user experience when using
    an Assistant with voice input across the Android ecosystem.
    
    Test: N/A
    Bug: 124334275
    Change-Id: I3820ea054d3681fa304d8757ee018441d5cbe192
    
  14. CDD: Requirements for microphone characteristics APIs.
    
    Device implementations MUST honor the microphoneInfo API's
    and provide accurate information to developers about the list
    of available & active microphones on the device.
    
    Test: N/A
    Bug: 124334060
    Change-Id: If83a8ce162aeb956919fe98fa4eb85fbfe1db111
    
  15. CDD: Concurrent Capture Requirements
    
    In Q the behavior for concurrent access to capture audio
    has changed. The previous behavior was "first come, first served."
    Once an app started to capture audio, all other apps had no way
    to access the audio input until the capturing app stopped.
    
    Android Q imposes a priority scheme that can switch the input
    audio stream between apps while they are running. Adding in
    requirements so developer expectations are met.
    
    Bug: 124069969
    Test: make
    Change-Id: Ie02ae325ad0d00e4ef5aa617b052f0550064de0d
    
  16. CDD: Add requirements for audio signal integrity
    
    as defined by absence of audio glitches.
    
    This requirement improves application compatibility by ensuring a good
    quality audio signal is available to apps.
    
    Test: N/A
    Bug: 124333844
    Change-Id: I652105c9c52e1027e6d9072a25ef2eda2a03a785
    
  17. CDD: Strengthen audio warm up time requirement.
    
    This is to improve audio latency on android devices.
    
    Bug: 30475031
    Test: N/A
    Change-Id: I99e444ac1ccf57c919765aa8372579fe0bbb059d
    
  18. CDD: Acoustic Echo Canceler
    
    - Add section 5.4.5: Acoustic Echo Canceler
    - Helps media app developers know if the device supports
      AEC so can utilize the functionality and provides controls for app
      developers to tune the echo cancellation.
    
    Bug: 124070237
    Test: make
    Change-Id: I8f02d07ff63a644918364150d0986598675d30e7
    
  19. CDD: PCM/WAVE must support high-resolution audio formats
    
    Rationale: this change improves application compatibility by guaranteeing
    that high-resolution audio content is supported consistently.
    
    Bug: 123959117
    Test: N/A
    Change-Id: Ic51243014ca2b9261082e39ead732fb587367a60
    
  20. CDD: add mp3-in-mp4 as a requirement
    
    This ensures consistency between the stock Android mpeg4 extractor
    and any vendor-provided ones.
    
    Bug: 123951346
    Change-Id: I2e74aabd811e4947d8b572ebe0df2e7c2982e236
    
  21. CDD: Specify channel configurations for opus codec
    
    Both decoder and encoder, which have different configuration limits.
    
    Bug: 139210584
    Test: compatibility/cdd/cdd_gen.sh
    Change-Id: Ic7963d0fa2a13fa1e4aa409b1b2d194bfc74abb2
    
  22. CDD: add media codec characterization
    
    Added rules for codecs starting with "OMX" and "C2." so
    there is less developer confusion, Also device implementations
    MUST publish achievable frame rates information to app developers.
    
    Bug: 123950993
    Change-Id: I74d729fdd6d748acea3011b48c9434d646a37f9b
    
  23. CDD: Codec 2.0 and OMX requirements for Media Codec Security.
    
    These requirements are added to ensure compliance with media
    codec security features.
    
    Bug: 124333998
    Change-Id: Ic0b13595807ab95917ea4af4536912c6e525ac82
    
  24. Merge "CDD: Align mic and playback capture requirement" into qt-dev
  25. Merge "CDD: Add requirement for libamidi.so" into qt-dev
  26. CDD: Strengthen requirements for audio timestamp accuracy
    
    Improve app compatibility for A/V sync (lip sync), video + audio camcorder
    recording, synchronized playback over multiple paths, and other use
    cases by strengthening the accuracy requirement for audio timestamps.
    
    Bug: 123941630
    Test: N/A
    Change-Id: I4d4c2dffe27e8c231bb38526cd707b69d7be2c66
    
  27. Merge "CDD: Audio effects in float and multi-channel" into qt-dev
  28. Merge "CDD: Add requirement to meet AAudio latency over MMAP path" into qt-dev
  29. Merge "CDD: changed CPU performance test from SimpleSynth to SynthMark." into qt-dev
  30. Merge "CDD: Relax HDMI requirement for pro audio" into qt-dev
  31. Merge "CDD: Require multi-channel, high-resolution audio over USB" into qt-dev
  32. CDD: changed CPU performance test from SimpleSynth to SynthMark.
    
    Added benchmarks and test instructions for testing CPU performance
    using SynthMark.
    
    Test: N/A
    Bug: 120295894
    Change-Id: I6d1b5cfca40bc7ced5470c52064c5e515b43ec7f
    
  33. CDD: Audio effects in float and multi-channel
    
    Justfication: this change improves application compatibility for audio
    effects when applied to streams that use either floating-point format
    and/or have multiple channels, by specifying that the effects must be
    supported in those cases.
    
    Test: N/A
    Bug: 123958100
    Change-Id: I304b0db87d0252ceb435e05e5fffc11f52d3a322
    
  34. CDD: clarify 5.5.1 raw audio playback is source format
    
    Bug: 136131226
    Test: N/A
    Change-Id: I31c7df43fa5b336fa01e9af28e0108b9c94b1dc4
    
  35. CDD: Add requirement to meet AAudio latency over MMAP path
    
    Clarified that latency and USB audio requirements MUST be met
    for atleast one path of AAudio and it is Strongly Recommended
    to meet over both the paths.
    
    Bug: 78022860
    Test: N/A
    Change-Id: I6f9fdb1552b7afe64cd74fe15b892fdcafc08084
    
  36. CDD: Require 48kHz raw audio capture.
    
    Adding in requirement for audio capture at 48kHz as it is
    useful for video recording applications. The lack of 48 kHz
    audio capture and SW resampling reduces overall audio quality
    for many of the common video capture use cases.
    
    Bug: 123959292
    Test: N/A
    Change-Id: I2df11ad731c877b0e5ace272d18c217051cab10c
    
  37. CDD: Align mic and playback capture requirement
    
    - The two audio sources should have the same privacy requirements.
    - Some typo correction for section 5.4.
    
    
    Test: N/A
    Bug: 124333245
    Change-Id: Ida67df090b028b35f0dbea84c1e43de8339c5696
    Signed-off-by: Kevin Rocard <krocard@google.com>
    
  38. CDD: Add requirement for libamidi.so
    
    - Aligning with the added support for midi library.
    
    Test: N/A
    Bug: 124249176
    Change-Id: Ic15bac32af7fed12ff93cdedcfbafae36e7ceb03
    
  39. CDD: Relax HDMI requirement for pro audio
    
    Test: N/A
    Bug: 110202363
    Change-Id: Ic41d8a5234330a5c6fe95ca1db014644d9c05f9e
    
  40. CDD: Require multi-channel, high-resolution audio over USB
    
    - Consistently support USB audio at high resolution.
    
    Test: N/A
    Bug: 123958167
    Change-Id: I1ac7757a20b01fb896ac069ea640c8d6eb64a4fb
    
  41. CDD: correct file type for USAC
    
    Remove requirement for .loas and .xhe files, not required by P.
    
    Bug: 77327971
    Test: stage CDD
    Change-Id: Ibf085b5f3f1e6466c5e839de84916561003cfcfa
    
  42. Docs: Errata for Android 9 CDD.
    
    - Fixed Section 9.10 by removing C-2-1 due to the introduction of C-0-2
    - Fixed typos in other sections
    
    Bug: 112010610
    
    Test: ./cdd_gen.sh --version 9 --branch pie-dev
    Change-Id: Ie4003beb20425a7fc83cf68ea23772aca389b85b
    
  43. Merge "CDD: Require HEIF decoding." into pi-dev
  44. Merge "CDD: Recommended values for AAudioStream_getFramesPerBurst()" into pi-dev
  45. CDD: Recommended values for AAudioStream_getFramesPerBurst()
    
    In order for AAudio to work properly, device implementations should
    always have a burst size which is the same or less than that reported
    by PROPERTY_OUTPUT_FRAMES_PER_BUFFER.
    
    Bug: 74756238
    Test: N/A
    Change-Id: I1c365b6651357c3125339dd45d56f325e1153667
    
  46. Docs: HDMI in at least one configuration.
    
    Clarification to HDMI requirement, if device include HDMI port
    and at least one configuration supports 24 bit/8 channels it is
    considered compliant.
    
    Bug: 76418651
    Test: N/A
    Change-Id: Iabfd2c75c2013c5acea1a30853b57d611e3ef9bd
    
  47. Merge "CDD: Latency requirements also applicable to AAudio native APIs (in addition to OpenSL ES)" into pi-dev
  48. Merge "CDD: Add recommendation for touch input to audio output latency for Pro Audio." into pi-dev
  49. CDD: Add recommendation for touch input to audio output latency for Pro Audio.
    
    Pro audio devices should not have a Touch input to audio output latency more
    than 40 ms. This is useful for apps that require pro audio and low latency.
    
    Bug: 28160677
    Test: N/A
    Change-Id: I173b454734b687582a46dc53db5c1b169f047675
    
  50. CDD: Latency requirements also applicable to AAudio native APIs (in addition to OpenSL ES)
    
    AAudio [AAudio native audio](https://developer.android.com/ndk/guides/audio/aaudio/aaudio.html)
    is a newer native audio API for Android, with several advantages
    over the OpenSL ES audio API.  Requiring the corresponding performance
    in AAudio as OpenSL ES will enable app developers to move towards AAudio.
    
    Bug: 63663812
    Test: N/A
    Change-Id: Id4f6435b31d29d567461ff5dfa17b75d2776fdb5
    
  51. Merge "CDD: Audio decoding requirements for xHE-AAC support" into pi-dev
  52. CDD: Require HEIF decoding.
    
    HEIF (HEIC) decoding relies on HEVC decoding which is already mandatory
    in Android (since Lollipop) so added requirements for HEIF decoding.
    
    Bug: 74978402
    Test: CDD update only
    
    Change-Id: I4e88e3b712fa99cfd55aaa1afb389d219202ee2d
    
  53. Merge "CDD: Clarification to HDCP requirement for automotive." into pi-dev
  54. Merge "CDD: Requirement for Dynamics Processing Effect." into pi-dev
  55. CDD: Clarification to HDCP requirement for automotive.
    
    Automotive device implementations MUST support HDCP 1.2 or higher for
    all external displays connected via a user accessible wired port as
    opposed to earlier the requirement was all external displays
    connected.
    
    The justification is that, it is unnecessary to specify the video
    standard for a permanently installed connection (eg: instrument cluster
    or rear seat entertainment screen in a car).
    
    
    Change-Id: Iafda116268286355a74613b79d9d1ddf514f0f2f
    Fixes: 74887951
    Test: none
    
  56. CDD: require timestamps to be accurate to +/- 1 ms
    
    Developers need a reliable and accurate method of obtaining a device's
    audio latency so that they can optimize their app's performance for
    that device.  As it stands there has been insufficient testing with
    the "getTimestamp" method of obtaining audio device latency.  Adding a
    requirement to CDD permits the accuracy of getTimestamp to be tested in
    CTS or CTS verifier.  The initial strength of requirement is STRONGLY
    RECOMMEND.  The corresponding test is tracked separately.
    
    Test: CTS or CTS verifier
    Bug: 64140129
    Change-Id: If569a2f494534e101587e90afb72dc5ce3250bcb
    
  57. CDD: Requirement for Dynamics Processing Effect.
    
    DynamicsProcessing is an audio effect for equalizing and changing
    dynamic range properties of the sound. It is useful for accessibility and
    other apps.
    
    Bug: 77336085
    Bug: 64161702
    Bug: 38266419
    
    Test: manual testing and CTS tests
    Change-Id: If19d63039c3ae0d5e4caddecfd4da833b26d5323
    
  58. CDD: Audio decoding requirements for xHE-AAC support
    
    Add requirements for xHE-AAC:
      ISO/IEC 23003-3 Extended HE AAC Profile (includes USAC
      Baseline Profile) with support for ISO/IEC 23003-4
      Dynamic Range Control Profile).
    
    Bug: 71430241
    Test: stage CDD
    Change-Id: I8f2ccacffc8022bbdd6e34a9c98e551edece8c17
    
  59. CDD: Update Section 5.5.1 for 8-bit, float and multichannel PCM,
    48/96kHz
    
    Platforms should support playback of the audio formats output
      by the mandated audio decoders, i.e. some compressed audio
      bitstreams can be decoded, but not played.
    Also the platform has been extended to support hi-res audio and
      multichannel since M, but the corresponding CDD requirements
      were not updated.
    The action is to update the document to add:
      - 8-bit and float samples
      - multichannel
      - 48 and 96kHz, with 96 only in 1 or 2ch
    
    Bug: 79989468
    Test: stage CDD
    Change-Id: I7d26f9271d11a5e167660485a9e4cd1f9401e4af
    
  60. Merge "CDD: Proper MIDI support" into oc-mr1-dev
    am: dd5f00385e
    
    Change-Id: I200e380425d4763dae585239ad7ff8eb995f133f
    
  61. Merge "CDD: Strongly recommend predictable CPU performance mode in pro audio." into oc-mr1-dev
    am: 15a657b316
    
    Change-Id: I102298f76ee4f23200b8ac2a2b2ef0c69b0e4829
    
  62. Merge "CDD: Proper MIDI support" into oc-mr1-dev
  63. Merge "CDD: Strongly recommend predictable CPU performance mode in pro audio." into oc-mr1-dev
  64. Merge "Docs: Minor fixes in section 5.10 Professional Audio and section 7.8.2 Audio Output." into oc-mr1-dev
    am: a2781ed5e9
    
    Change-Id: I91c9679cf9628654f1ae8271d4261d3351b9d53b
    
  65. CDD: Strongly recommend predictable CPU performance mode in pro audio.
    
    Predictable CPU performance mode maintains the CPU clock at a stable
    rate while low-latency audio is active, permitting applications to have
    more consistent CPU bandwidth available on short notice.  Without this
    mode, if a low-latency audio task is not using high CPU load for a
    moment, the governor can decrease the CPU bandwidth.  However, when the
    audio task's CPU load increases, the governor may be unable to respond
    quickly enough to meet the audio task's requirements, resulting in an
    audible glitch. This mode solves that problem and so is recommended for
    devices that claim the pro audio feature.
    
    Bug: 32809154
    Test: builds OK
    Change-Id: I7006af18a614dca841527053b48a83dbf3dd7280
    
  66. Docs: Minor fixes in section 5.10 Professional Audio and section 7.8.2
    Audio Output.
    
    Bug: 64042820
    Test: builds OK
    Change-Id: I112ef764596ddd2270e97ae55d29287439d5980c
    
  67. CDD: Proper MIDI support
    
    Device implementations exposing the MIDI capability to third-party
    apps, MUST also have properly implemented MIDI support.
    
    This will help app developers, as they would know that standard MIDI
    APIs are supported on a device that declares MIDI support.
    
    Bug: 36465422
    Test: N/A
    Change-Id: I1b1e63636a2bec1f0208d737dc1bc6253d7ec115
    
  68. Docs: Move dev-specific reqs to Ch 2.
    
    Test: python make_cdd.py --version <version-number>  --branch <mybranch>
    
    Bug: 64164626
    Merged-In: Ie091c0be79ad4a797f26a60e95ee2594f053f804
    Change-Id: Ie091c0be79ad4a797f26a60e95ee2594f053f804
    (cherry picked from commit 0ece682cb7f915f4289ba6d7b5c86957e6d5d276)
    (cherry picked from commit d72cc3b7971126e352c0c8fd83693f458d3785ec)
    
  69. Docs: Move dev-specific reqs to Ch 2.
    
    Test: python make_cdd.py --version <version-number>  --branch <mybranch>
    
    Bug: 64164626
    Change-Id: Ie091c0be79ad4a797f26a60e95ee2594f053f804
    (cherry picked from commit 0ece682cb7f915f4289ba6d7b5c86957e6d5d276)
    
  70. CDD: Fixed a typo in section 5_3. am: 3588ecf111 am: aa59520f6d
    am: a2727afa63
    
    Change-Id: I283f41cf43b73bbae684c8abbfca0052dd3687db
    
  71. CDD: Fixed a typo in section 5_3.
    
    Bug: 68853248
    Test: N/A
    Change-Id: Ief6f26493423925206ab4c14d55c92421a92947c
    
  72. resolve merge conflicts of ece1909 to oc-dr1-dev-plus-aosp
    
    Test: I solemnly swear I tested this conflict resolution.
    
    Change-Id: Ib9a6ce41855fccf246dd4a8234c91477f49ad3c6
    
  73. Docs: Misc fixes for CDD.
    
    Bug: 67405273
    
    Test: make_cdd.py --version 8.0 --branch "oc-dev"
    Change-Id: Icee371d41284f56ef6d9ad90ab8992c94134d5bd
    
  74. resolve merge conflicts of 2e5325e to oc-dr1-dev-plus-aosp
    
    Test: I solemnly swear I tested this conflict resolution.
    Change-Id: I539253cb0f46b5b2058278e8472c0c579d5501c5
    
  75. CDD: O errata changes
    
    Fixing missing / incorrect IDs.
    
    Bug: 66482816
    Change-Id: I7fe68d21c1a554b0eb88e8e3a5e535648daf10be
    
  76. Docs: Move dev-specific reqs to Ch 2.
    
    Test: python make_cdd.py --version <version-number>  --branch <mybranch>
    
    Bug: 64164626
    Change-Id: Ie091c0be79ad4a797f26a60e95ee2594f053f804
    
  77. Merge "Docs: Restructure Section 5.6" into oc-dev
  78. Merge "Docs: Restructure Section 5.3" into oc-dev
  79. Merge "Docs: Restructure Section 5.10" into oc-dev
  80. Docs: Restructure Section 5.3
    
    - Restructure with new ID rule.
    - Move the requirements in the table footnotes in section 5.1
    to the content body in this section for better readability.
    
    Bug: 64811960
    
    Change-Id: Icd11b6f73d74205565eaf41a7d5e551e9e7f2a04
    
  81. Docs: Restructure Section 5.10
    
    - Restructure with the new ID
    
    Bug: 64811960
    
    Change-Id: Ifc59abd8182956cfc307b3ee0b1ef5e0dc00f04c
    
  82. Merge "Docs: Restructure Section 5.2" into oc-dev
  83. Docs: Restructure Section 5.6
    
    - Restructure with new ID rule
    Bug: 64811960
    
    Change-Id: I3ac0cc72c1a3addbad705d9492717ce34228cea2
    
  84. Merge "Docs: Restructure Section 5.1" into oc-dev
  85. Merge "Docs: Restructure Section 5.4" into oc-dev
  86. Merge "Docs: Restructure Section 5.8" into oc-dev
  87. Merge "Docs: Restructure Section 5.11" into oc-dev
  88. Merge "Docs: Restructure Section 5.0" into oc-dev
  89. Docs: Restructure Section 5.0
    
    - Restructure with new ID rule
    - Move section 5.1 to section 5
    
    Bug: 64811960
    
    Change-Id: I078ce470c3407fc491a3e419aa1f6b97fdae5db8
    
  90. Docs: Restructure Section 5.2
    
    - Restructure with new ID rule
    - Move the requirements in the table footer in section 5.1 to the
    content body in this section for better readability.
    
    Bug: 64811960
    
    Change-Id: I5d907aeead136dcc52f1933b57f1babaec317a98
    
  91. Docs: Restructure Section 5.4
    
    - Restructure with  new ID rule
    
    Bug: 64811960
    Change-Id: If59a99cafe2699ac3738d7535e56e688411db11d
    
  92. Docs: Restructure Section 5.1
    
    - Restructure with new ID rule.
    - Moved video encoding and decoding requirements to 5.2 and 5.3
    sections.
    
    Bug: 64811960
    
    Change-Id: I764407eb7c8c5dbb8c85422df8e790557741d583
    
  93. Docs: Restructure Section 5.8
    
    - Restructure with  new ID rule
    
    Bug: 64811960
    Change-Id: Ied34b3eff49b102ea8320a50ee097bef98f6daff
    
  94. Docs: Restructure Section 5.11
    
    - Restructure with new ID
    
    Bug: 64811960
    
    Change-Id: Iacf8457c9ef05391f0f14c13491003c1bb93f1bf
    
  95. Merge "Docs: Restructure Section 5.5" into oc-dev
  96. Merge "Docs: Restructure Section 5.7" into oc-dev
  97. Docs: Restructure Section 5.5
    
    - Restructure with new ID rule
    
    Bug: 64811960
    Change-Id: I2f655b1592cf4f6597cc4eeb4c57e3d48971d4e4
    
  98. Docs: Restructure Section 5.7
    
    - Restructure with  new ID rule
    Bug: 64811960
    
    Change-Id: I24b0c37d79046e89b03c11bbd99af5ed31e62dee
    
  99. Docs: Restructure Section 5.9
    
    - Restructure with  new ID
    
    Bug: 64811960
    Change-Id: I6d1ad5a5d4ba00fdb63c22b7235aff1744da9bfd
    
  100. Merge "CDD: Clarified H.265/VP9 requirements." into oc-dev