דילוג לתוכן
  • דף הבית
  • קטגוריות
  • פוסטים אחרונים
  • משתמשים
  • חיפוש
  • חוקי הפורום
כיווץ
תחומים

תחומים - פורום חרדי מקצועי

💡 רוצה לזכור קריאת שמע בזמן? לחץ כאן!
  1. דף הבית
  2. תכנות
  3. בעיה בשימוש עם text to speech בשפת PHP

בעיה בשימוש עם text to speech בשפת PHP

מתוזמן נעוץ נעול הועבר תכנות
9 פוסטים 4 כותבים 274 צפיות
  • מהישן לחדש
  • מהחדש לישן
  • הכי הרבה הצבעות
התחברו כדי לפרסם תגובה
נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
  • ש מנותק
    ש מנותק
    ששא
    כתב ב נערך לאחרונה על ידי ששא
    #1

    אני רוצה להשתמש בשפת PHP עם טקסט לדיבור של גוגל, ניסיתי להתקין את כל מה שכתוב במדריכים, אך זה לא עובד
    כנראה שפיספסתי משהו...
    מישהו יכול לכווין אותי קצת מה צריך לעשות - אולי אמצא משהו שפיספתי
    עשיתי את זה ואת זה ואת זה ואת זה
    אך זה לא עובד לי

    אשמח לעזרה!

    dovidD איש ימיניא 2 תגובות תגובה אחרונה
    0
    • ש ששא מחק נושא זה ב
    • ש ששא שחזר נושא זה ב
    • dovidD מנותק
      dovidD מנותק
      dovid ניהול
      השיב לששא ב נערך לאחרונה על ידי
      #2

      @ששא כתב באני לא מצליח להתקין ולהשתמש בשרת שלי עם טקסט לדיבור של גוגל בשפת PHP:

      אך זה לא עובד לי

      יום אחד כשיהיה לי כח אעשה תוסף שמונע שליחת הודעה בפורום תכנות עם המילים האלה...

      מנטור אישי למתכנתים (ולא רק) – להתקדם לשלב הבא!

      בכל נושא אפשר ליצור קשר dovid@tchumim.com

      תגובה 1 תגובה אחרונה
      5
      • איש ימיניא מנותק
        איש ימיניא מנותק
        איש ימיני
        השיב לששא ב נערך לאחרונה על ידי
        #3

        @ששא
        אני משתמש עם זה כך:

        tts("/wav/www/html/, "text", "filename");
        
        function tts($dir, $text, $filename){
        
            // API key for the Google Cloud project
            $apiKey = 'AIzaSyBOJXXXXXXXXXXXXXXXX';
        
            // URL of the Google TTS API
            $url = 'https://texttospeech.googleapis.com/v1/text:synthesize?key=' . $apiKey;
            $language = 'he-IL';
            // Request payload
            $payload = json_encode([
                'input' => [
                    'text' => $text
                ],
                'voice' => [
                    'languageCode' => $language,
                    'ssmlGender' => 'MALE',
                    'name' => 'he-IL-Standard-D'
                ],
                'audioConfig' => [
                    //wav = LINEAR16
                    //mp3 = MP3
                    //ogg = OGG_OPUS
                    //u-law = MULAW
                    //A-law = ALAW
                    'audioEncoding' => 'MP3',
                ]
            ]);
        
            // Set up CURL
            $curl = curl_init();
            curl_setopt_array($curl, [
                CURLOPT_URL => $url,
                CURLOPT_RETURNTRANSFER => true,
                CURLOPT_POST => true,
                CURLOPT_POSTFIELDS => $payload,
                CURLOPT_HTTPHEADER => [
                    'Content-Type: application/json',
                    'Content-Length: ' . strlen($payload)
                ]
            ]);
        
            // Send the request and get the response
            $response = curl_exec($curl);
        
            // Check for CURL errors
            if (curl_errno($curl)) {
                $error = curl_error($curl);
                curl_close($curl);
                die('CURL Error: ' . $error);
            }
        
            // Check the response code
            $httpCode = curl_getinfo($curl, CURLINFO_HTTP_CODE);
            if ($httpCode != 200) {
                curl_close($curl);
                die('HTTP Error: ' . $httpCode);
            }
        
            // Close CURL
            curl_close($curl);
        
            // Decode the response JSON
            $data = json_decode($response, true);
        
            // Get the audio content
            $audioContent = $data['audioContent'];
        
            $fp = fopen($dir.$filename.'.mp3', 'w');
            fwrite($fp, base64_decode($audioContent));
            fclose($fp);
        }
        

        עובד לי תקין.
        לא הצלחתי לשחק עם עוצמת הקול וכדו'.
        אם אתה מצליח, תעדכן.

        ש 2 תגובות תגובה אחרונה
        1
        • ש מנותק
          ש מנותק
          ששא
          השיב לאיש ימיני ב נערך לאחרונה על ידי
          #4

          @איש-ימיני לא חסר לי הקוד, יש לי בעיה בכלל בעבודה
          אני מקבל

          Fatal error: Uncaught Google\ApiCore\ApiException: { "reason": "SERVICE_DISABLED", "domain": "googleapis.com", "errorInfoMetadata": { "service": "texttospeech.googleapis.com", "consumer": "projects\/*****" }, "message": "Cloud Text-to-Speech API has not been used in project **** before or it is disabled. Enable it by visiting https:\/\/console.developers.google.com\/apis\/api\/texttospeech.googleapis.com\/overview?project=***** then retry. If you enabled this API recently, wait a few minutes for the action to propagate to our systems and retry.", "code": 7, "status": "PERMISSION_DENIED", "details": [ { "@type": "type.googleapis.com\/google.rpc.Help", "links": [ { "description": "Google developers console API activation", "url": "https:\/\/console.developers.google.com\/apis\/api\/texttospeech.googleapis.com\/overview?project=*****" } ] }, { "@type": "type.googleapis.com\/google.rpc.ErrorInfo", "reason": "SERVICE_DISABLED", "domain": "googleapis.com", "metadata": { "service": "texttospeech.googleapis.com", "consumer": "projects\/*****" } } ] } in /var/**/***/vendor/google/gax/src/ApiException.php:267 Stack trace: #0 /var/**/***/vendor/google/gax/src/ApiException.php(193): Google\ApiCore\ApiException::create() #1 /var/**/***/vendor/google/gax/src/ApiException.php(315): Google\ApiCore\ApiException::createFromRestApiResponse() #2 /var/**/***/vendor/google/gax/src/Transport/RestTransport.php(165): Google\ApiCore\ApiException::createFromRequestException() #3 /var/**/***/vendor/guzzlehttp/promises/src/Promise.php(209): Google\ApiCore\Transport\RestTransport->Google\ApiCore\Transport\{closure}() #4 /var/**/***/vendor/guzzlehttp/promises/src/Promise.php(158): GuzzleHttp\Promise\Promise::callHandler() #5 /var/**/***/vendor/guzzlehttp/promises/src/TaskQueue.php(52): GuzzleHttp\Promise\Promise::GuzzleHttp\Promise\{closure}() #6 /var/**/***/vendor/guzzlehttp/guzzle/src/Handler/CurlMultiHandler.php(163): GuzzleHttp\Promise\TaskQueue->run() #7 /var/**/***/vendor/guzzlehttp/guzzle/src/Handler/CurlMultiHandler.php(189): GuzzleHttp\Handler\CurlMultiHandler->tick() #8 /var/**/****/vendor/guzzlehttp/promises/src/Promise.php(251): GuzzleHttp\Handler\CurlMultiHandler->execute() #9 /var/**/***/vendor/guzzlehttp/promises/src/Promise.php(227): GuzzleHttp\Promise\Promise->invokeWaitFn() #10 /var/**/***/vendor/guzzlehttp/promises/src/Promise.php(272): GuzzleHttp\Promise\Promise->waitIfPending() #11 /var/**/***/vendor/guzzlehttp/promises/src/Promise.php(229): GuzzleHttp\Promise\Promise->invokeWaitList() #12 /var/**/***/vendor/guzzlehttp/promises/src/Promise.php(69): GuzzleHttp\Promise\Promise->waitIfPending() #13 /var/**/***/vendor/google/cloud-text-to-speech/src/V1/Gapic/TextToSpeechGapicClient.php(366): GuzzleHttp\Promise\Promise->wait() #14 /var/**/***/toSpeech.php(36): Google\Cloud\TextToSpeech\V1\Gapic\TextToSpeechGapicClient->synthesizeSpeech() #15 {main} thrown in /var/**/***/vendor/google/gax/src/ApiException.php on line 267
          

          כשאני פותח את הקובץ שעליו מופיע השגיאה אני מקבל שגיאה על השורה הבאה

              public function __toString()
              {
                  return __CLASS__ . ": $this->message\n";
              }
          

          תוכן השגיאה
          Declaration of ApiException::__toString() must be compatible with Exception::__toString():

          מה זה?

          תגובה 1 תגובה אחרונה
          0
          • yossizY מנותק
            yossizY מנותק
            yossiz
            כתב ב נערך לאחרונה על ידי yossiz
            #5

            @ששא כתוב מפורש מה הבעיה, צריך להפעיל את ה-API בקונסול של גוגל
            (עכשיו תוכל להבין את התסכול של דוד, אם היית כותב מראש את נוסח השגיאה היית מקבל תשובה מיד לבעיה)

            📧 יוסי@מייל.קום | 🌎 בלוג | ☕ קפה

            ש תגובה 1 תגובה אחרונה
            6
            • ש מנותק
              ש מנותק
              ששא
              השיב לyossiz ב נערך לאחרונה על ידי
              #6

              @yossiz הבנתי את זה, אבל אני הפעלתי את זה כמה פעמים, עד שתפסתי שהפעלתי בפרוייקט אחר שלא קשור לזה.....

              @yossiz כתב בבעיה בשימוש עם text to speech בשפת PHP:

              תוכל להבין את התסכול של דוד

              הוא התכווין לזה שלא כתבתי את נוסח השגיאה? כי הוא לא כתב מה לא מצא חן בעיניו

              yossizY תגובה 1 תגובה אחרונה
              0
              • yossizY מנותק
                yossizY מנותק
                yossiz
                השיב לששא ב נערך לאחרונה על ידי yossiz
                #7

                @ששא כתב בבעיה בשימוש עם text to speech בשפת PHP:

                עד שתפסתי שהפעלתי בפרוייקט אחר שלא קשור לזה.....

                אז למעשה פתרת את הבעיה?

                לא כתבתי את נוסח השגיאה

                לא הבאת שום פרטים. במקרה הזה היה צריך לפחות להביא את נוסח השגיאה, בד"כ צריך גם להביא את הקוד, (פה במקרה הקוד לא רלוונטי).
                עד כמה שידוע לנו אין בפורום בעלי רוח הקודש. תהליך פתירת בעיות דורש עיון בכל פיסת מידע שרלוונטי לבעיה, בלי זה זה רק משחק ניחושים.
                האם היית מתקשר לרופא ואומר "רופא רופא, משהו לא בסדר" ומצפה לפתרון בלי למסור שום מידע נוסף מעבר לזה?

                📧 יוסי@מייל.קום | 🌎 בלוג | ☕ קפה

                ש תגובה 1 תגובה אחרונה
                8
                • ש מנותק
                  ש מנותק
                  ששא
                  השיב לyossiz ב נערך לאחרונה על ידי
                  #8

                  @yossiz כתב בבעיה בשימוש עם text to speech בשפת PHP:

                  אז למעשה פתרת את הבעיה?

                  כן

                  @yossiz כתב בבעיה בשימוש עם text to speech בשפת PHP:

                  לא הבאת שום פרטים. במקרה הזה היה צריך לפחות להביא את נוסח השגיאה, בד"כ צריך גם להביא את הקוד, (פה במקרה הקוד לא רלוונטי).

                  צודק
                  מתנצל!

                  תגובה 1 תגובה אחרונה
                  3
                  • ש מנותק
                    ש מנותק
                    ששא
                    השיב לאיש ימיני ב נערך לאחרונה על ידי
                    #9

                    @איש-ימיני לי יש קוד שמשתמש עם הספריית לקוח ולא בקריאה לקישור חיצוני

                    תגובה 1 תגובה אחרונה
                    0

                    בא תתחבר לדף היומי!
                    • התחברות

                    • אין לך חשבון עדיין? הרשמה

                    • התחברו או הירשמו כדי לחפש.
                    • פוסט ראשון
                      פוסט אחרון
                    0
                    • דף הבית
                    • קטגוריות
                    • פוסטים אחרונים
                    • משתמשים
                    • חיפוש
                    • חוקי הפורום