<?xml version="1.0" encoding="UTF-8"?>
<!--  Copyright (C) 2007 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 xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
    <string name="app_name" msgid="5955735546071433666">"ध्वनि रिकॉर्डर"</string>
    <string name="record_your_message" msgid="1583671906691662148">"अपना संदेश रिकॉर्ड करें"</string>
    <string name="message_recorded" msgid="381539460921872233">"संदेश रिकॉर्ड किया गया"</string>
    <string name="review_message" msgid="201616012287839474">"संदेश की समीक्षा करें"</string>
    <string name="recording" msgid="4426791467211376099">"रिकॉर्ड हो रहा है"</string>
    <string name="recording_stopped" msgid="1580278719585249612">"रिकॉर्डिंग रुक गई है"</string>
    <string name="storage_is_full" msgid="416039755956726221">"संग्रहण भर गया है"</string>
    <string name="max_length_reached" msgid="6398215743584093353">"अधिकतम लंबाई तक पहुंच गया"</string>
    <string name="insert_sd_card" product="nosdcard" msgid="8212754638456591792">"कृपया USB संग्रहण माउंट करें"</string>
    <string name="insert_sd_card" product="default" msgid="2251831579676114197">"कृपया कोई SD कार्ड लगाएं"</string>
    <string name="min_available" msgid="5493947690062988925">"<xliff:g id="MINUTES">%d</xliff:g> मिनट उपलब्ध"</string>
    <string name="sec_available" msgid="2297020788861694399">"<xliff:g id="SECONDS">%d</xliff:g> उपलब्ध"</string>
    <string name="accept" msgid="1888285552128743656">"पूर्ण"</string>
    <string name="discard" msgid="761613433029406319">"छोड़ें"</string>
    <string name="button_ok" msgid="3004911343723076226">"ठीक"</string>
    <!-- no translation found for audio_db_title_format (7912182366970749312) -->
    <skip />
    <string name="audio_db_artist_name" msgid="961640229118120080">"आपकी रिकॉर्डिंग"</string>
    <string name="audio_db_album_name" msgid="9072588113803264440">"ऑडियो रिकॉर्डिंग"</string>
    <string name="audio_db_playlist_name" msgid="5592939050047058162">"मेरी रिकॉर्डिंग"</string>
    <string name="error_sdcard_access" product="nosdcard" msgid="7292601458300337571">"USB संग्रहण तक पहुंच प्राप्त करने में असमर्थ"</string>
    <string name="error_sdcard_access" product="default" msgid="8005660724361043509">"SD कार्ड पर पहुंच प्राप्त करने में असमर्थ"</string>
    <string name="error_app_internal" msgid="2365923237657572011">"आंतरिक एप्लिकेशन त्रुटि"</string>
    <string name="error_mediadb_new_record" msgid="2225774949947938064">"रिकॉर्ड किया गया ऑडियो सहेजने में असमर्थ"</string>
</resources>
