<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (C) 2010-2011 The Android Open Source Project

     Licensed under the Apache License, Version 2.0 (the "License");
     you may not use this file except in compliance with the License.
     You may obtain a copy of the License at

          http://www.apache.org/licenses/LICENSE-2.0

     Unless required by applicable law or agreed to in writing, software
     distributed under the License is distributed on an "AS IS" BASIS,
     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
     See the License for the specific language governing permissions and
     limitations under the License.
-->

<resources>
    <string name="app_name">MusicFX</string>

    <!-- ControlPanelMusic strings -->
    <string name="no_effects">Effects not available.</string>
    <string name="main_toggle_effects_title">Audio effects</string>
    <string name="eq_dialog_title">Equalizer</string>
    <string name="headset_plug">Plug in headphones for these effects.</string>
    <string name="bass_boost_strength">Bass boost</string>
    <string name="virtualizer_strength">3D effect</string>
    <string name="pr_title">Reverb:</string>
    <string name="pr_summary">Additional room reverberation effects</string>
    <string name="pr_dialog_title">Reverb preset</string>
    <string name="setup">Setup</string>
    <string name="ci_extreme">FX booster</string>
    <string name="user">User</string>

    <!-- title of control panel picker dialog [CHAR LIMIT=30] -->
    <string name="picker_title">Music effects control panel"</string>
</resources>
