@dovid זה בדיוק היה הענין, שגם dispose לא עזר (זה בעצם מה שעשה Player_PlaybackStopped)
אביי
-
עצירת תהליך שמופעל באירוע לחיצה -
עצירת תהליך שמופעל באירוע לחיצה@dovid שיניתי את השיטה לRawSourceWaveStream וזה פתר את הבעיה, אבל לא הבנתי למה טענת
נו @אביי, אתה מנסה לכתוב על הקובץ הרבה לפני שאתה עוצר את ההשמעה!
אני עשיתי סטופ לפני הקריאה לפונקציה בכלל. ToA זה הפונקציה שמורידה את השמע ובסיום קוראת לפונקציה PlayAudioFile.
If playnig = True Then player.Stop() End If ToA(r).
ו@אביי כיון שאני יודע שאתה עם רקע של קוד JS בגוגל סקריפט
אני מאוד ממליץ לך להגר לC#, זה בהתחלה נראה קשוח ומרובע יותר, אבל זה מנסיוני שווה.אני אכן שם, רק בפרויקט הזה יש אילוצים שלא תלויים בי שמחייבים אותי לvb (נראה לי שכבר כתבתי בעבר כמה אני שונא אותה..) אגב, לgs עברתי אחרי זה, בגלל שהוא מאפשר להריץ באופן קבוע ועצמאי עם אמינות גבוהה ללא צורך להחזיק שרת (ויש גם את העניין של המשחק בתוך האקו-סיסטם של גוגל ללא מפתחות וכו')..
-
עצירת תהליך שמופעל באירוע לחיצהDim request As HttpWebRequest = DirectCast(WebRequest.Create($"https://aaa"), HttpWebRequest) request.Method = "POST" request.ContentType = "application/json" Using streamWriter As StreamWriter = New StreamWriter(request.GetRequestStream()) Dim jsonPayload As String = JsonSerializer.Serialize(payload) streamWriter.Write(jsonPayload) streamWriter.Flush() End Using Dim response As HttpWebResponse = DirectCast(request.GetResponse(), HttpWebResponse) Using streamReader As StreamReader = New StreamReader(response.GetResponseStream()) Dim jsonResponse As String = streamReader.ReadToEnd() Dim json_data As JsonElement = JsonSerializer.Deserialize(Of JsonElement)(jsonResponse) Dim audio_content As String = json_data.GetProperty("audioContent").ToString() If Not String.IsNullOrEmpty(audio_content) Then Dim file_name As String = "test" Dim audio_file_path As String = Path.Combine(t_dir, $"{file_name}.wav") Dim audio_blob As Byte() = Convert.FromBase64String(audio_content) Using audio_file As FileStream = New FileStream(audio_file_path, FileMode.Create, FileAccess.Write) audio_file.Write(audio_blob, 0, audio_blob.Length) End Using PlayAudioFile(audio_file_path) -
עצירת תהליך שמופעל באירוע לחיצה@dovid כתב בעצירת תהליך שמופעל באירוע לחיצה:
כי בדקתי אצלי וקיבלתי שגיאה אחרת לחלוטין, של מופע ריק.
System.IO.IOException: אין אפשרות לתהליך לגשת לקובץ 'C:\Users\abaye\source\repos\AA\AA\bin\Debug\text_test.wav' כיוון שתהליך אחר משתמש בקובץ. ב- System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath) ב- System.IO.FileStream.Init(String path, FileMode mode, FileAccess access, Int32 rights, Boolean useRights, FileShare share, Int32 bufferSize, FileOptions options, SECURITY_ATTRIBUTES secAttrs, String msgPath, Boolean bFromProxy, Boolean useLongPath, Boolean checkHost) ב- System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access) ב- tts_by_Google.Form1.TextToSpeech(String text) ב- C:\Users\abaye\source\repos\`AA\`AA\Form1.vb:שורה 131 ב- tts_by_Google.Form1.Button1_Click(Object sender, EventArgs e) ב- C:\Users\abaye\source\repos\AA\`AA\Form1.vb:שורה 177 ב- System.Windows.Forms.Control.OnClick(EventArgs e) ב- System.Windows.Forms.Button.OnClick(EventArgs e) ב- System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent) ב- System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks) ב- System.Windows.Forms.Control.WndProc(Message& m) ב- System.Windows.Forms.ButtonBase.WndProc(Message& m) ב- System.Windows.Forms.Button.WndProc(Message& m) ב- System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m) ב- System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m) ב- System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam) -
עצירת תהליך שמופעל באירוע לחיצה -
עצירת תהליך שמופעל באירוע לחיצהיש לי לחצן שמפעיל פונקציה שבסיום הפעולה מפעילה שמע מקובץ ספציפי, מה שקורה, זה שאני צריך לאפשר לחיצה נוספת על הכפתור שתפעיל את הפונקציה שוב, אז הוספתי לפני הקריאה לפונקציה שאם השמע פועל אז הוא נעצר והגדרתי שבעת עצירת ההשמעה הפונקציה מסיימת את פעולתה.
אבל הקובץ נשאר בשימוש ע"י התהליך של הפונקציה גם לאחר העצירה, זה עובד רק כשאני עוצר את השמע מפונקציה אחרת, אבל כשהשמע נעצר מאותו אירוע לחיצה שקורא לפונקציה, הקובץ נשאר בשימוש התהליך. (אני מבצע כתיבה לקובץ בכל לחיצה, לפני ההפעלה שלו)
הפעלת השמע
Private Sub PlayAudioFile(ByVal filePath As String) If player IsNot Nothing Then player.Stop() player.Dispose() player = Nothing End If If audioFileReader IsNot Nothing Then audioFileReader.Dispose() audioFileReader = Nothing End If audioFileReader = New AudioFileReader(filePath) player = New WaveOutEvent() AddHandler player.PlaybackStopped, AddressOf Player_PlaybackStopped player.Init(audioFileReader) player.Play() playnig = True End Sub Private Sub Player_PlaybackStopped(sender As Object, e As StoppedEventArgs) player.Dispose() player = Nothing audioFileReader.Dispose() audioFileReader = Nothing playnig = False End Subוזה אירוע הלחיצה (כשif באירוע של כפתור אחר זה עובד מצויין)
If playnig = True Then player.Stop() End If ToA(r) -
קוד להקראה קבצי TTS בימות שיתממשק עם ההקראה החדשה של גוגל@מוגן יש לי קוד שלוקח תוכן תאים בגוגל שיטס, וממיר אותם לmp3 באמצעות גוגל, ומעלה את הקבצים שנוצרו לגוגל דרייב.
גם יש לי סקריפט פייתון, ששולח את כל קבצי הטקסט שבתיקיית משנה של תיקיית הסקריפט ושומר שם את הקבצי mp3 המסופצ'ים.
אם אתה מעוניין, אוכל להוסיף לזה אפשרות בחירת קולות, והתממשקות עם ימות המשיח, תוכל לפנות אלי בפרטי.
-
האם הבינה המלאכותית יכולה להחליף את נרנדה בנטפרי@yossiz כתב בהאם הבינה המלאכותית יכולה להחליף את נרנדה בנטפרי:
נראה לי שעוד לא הפנמת לגמרי שכל צורות ה-AI הקיימות לא "מבינים" כלום
@יעקב-ישראל נראה לי שכדאי שתקרא את זה או את סיכום המחקר הרשמי של דאלי
-
שליחת וקבלת הודעות בווטסאפ באמצעות שיחת טלפוןהאם יש מישהו שמציע שירות (בתשלום כמובן) של שליחת וקבלת הודעות ווטסאפ באמצעות שיחת טלפון למערכת טלפונית? בסגנון של הודעות טקסט ושמע מושמעות בטלפון, וניתן להגיב או ליזום שיחה באמצעות הודעה קולית או זיהוי טקסט?
אשמח לשמוע גם על אופציה לקבלה ושליחה באמצעות מייל (עדיפות שניה)
זה עבור מישהו שיש לו צורך גדול, אבל לא מעוניין להחזיק מחשב, ושווה לו להשקיע בזה אפילו סכום כסף (גם בתשלום חודשי)
ניתן להגיב כאן או למייל שבחתימה.
-
האם הבינה המלאכותית יכולה להחליף את נרנדה בנטפרי@יעקב-ישראל חוששני שאתה מערבב בין כמה דברים, הפריצה של צ'אט GPT מידג'רני ודומיהם היא בעיקרה בהבנת הטקסט ויצירתו עם הקשר, ופחות במובן של לזהות ולסווג אובייקטים בתמונה, זה אמנם משליך ישירות על הבנת הקונטקסט של התמונה לפי מכלול האובייקטים וחשיבותם בתמונה, אבל הזיהוי עצמו לא התקדם בפריצת דרך יותר מהמקום שהוא היה לפני שנה..
ואני לא אומר שזה לא מתאים לבדיקת תמונות, מניסיון שלי על מנוע זיהוי התמונות של גוגל (מלפני כשנה), הוא לא פספס אפילו פעם אחת מתוך כ100 תמונות אנשים בתמונות, הוא התבלבל במינים, הדגיש פריטים שוליים, אבל בהבנת ההקשר הוא הצליח ב80% ובכל התמונות שהיה אנשים הוא זיהה את זה, אמנם היו 3 תמונות שהוא "מצא" אנשים לא קיימים.
יש לגוגל דף ניסיון שאפשר פשוט להעלות תמונות ולקבל ניתוח תמציתי וגם מקיף על התמונה ומרכיביה. (או פשוט גוגל לנס, הוא גם עושה עבודה לא רעה בכלל סרקתי לו תמונה של ציפור עפה בשמים, מפוקסלת והוא זיהה את סוג האווז המדוייק!)
-
הוספת ציר זמן בגוגל שיטס -
חיפוש בגימייל לפי קבוצת אנשי קשר@yossiz אכן, אבל הוא רוצה להכניס שם שקבוצה באנשי קשר במקום להכניס את כל הכתובות, וזה לא אפשרי.
(אמנם אפשר באמצעות סקריפט) -
שרטוט טבלה בGPTאולי זה זה?
| א' | ב' | ג' | ד' | ה' ||---: |---: |---: |---: |---: || א' | ב' | ג' | ד' | ה' || ב' | ג' | ד' | ה' | ו' || ג' | ד' | ה' | ו' | ז' | -
Google Workspace - (לשעבר G Suite) עזרה בהגדות בתשלום@dovid כתב בGoogle Workspace - (לשעבר G Suite) עזרה בהגדות בתשלום:
שים לב שאם יש בסביבתך דובר/ת אנגלית (עם היכרות בסיסית עם מחשב/אינטרנט) יש לך תמיכה של גוגל טלפונית, מקצועית וסבלנית שתעשה הכל כדי שזה יסתדר.
גם התמיכה בעברית לא רעה בכלל..
@evi952 בקונסלת אדמין יש לך בצד שמאל למעלה

לחיצה על הסימן שאלה (המודגש) תאפשר לך ליצור קשר עם התמיכה של גוגל בצ'אט (הכי מומלץ) וטלפון בעברית.(ייתכן שחלק מאפשרויות העזרה משתנות בהתאם למינוי)
-
איך לגרום לתרגום האתרים של גוגל לדלג על טקסט מסוים?@שלום-עולם-0 עיין כאן בתיעוד של כרומיום
https://www.chromium.org/developers/design-documents/translate/
בקטע עם הכותרת Exception to the translation -
איך לומדים לבנות תוכנה@משתמש-תמים כתב באיך לומדים לבנות תוכנה:
אם אתה לא רוצה לדפוק לעצמך את המחשב
אגב, אני אוהב להשתמש בגלל זה ב Windows Sandbox (זמין בגרסאות הפרו החל מwin10 גרסה 1809 אולי?) זה מעלה מחשב וירטואלי ממש בקלות תוך כמה שניות שבסגירה הוא מתאפס, ניתן להעתיק ממנו ואליו קבצים כמו שמעתיקים בRDP (העתק הדבק).
הוא חמוד שאם אני יפעיל פקודה שמכבה את המחשב, הוא פשוט ייסגר
והוא ממש אחד על אחד. (אני יש לי בשולחן העבודה כבר תיקיה עם מתקין של כרום, ותעודות של נטפרי עם סקריפט להגדרה מהירה) -
איך לומדים לבנות תוכנה@שלום-עולם-0 אין לך על מה לבקש סליחה, בשביל זה אנחנו כאן

אתן לך דוגמה למשהו שעשיתי לא מזמן, יש אצלנו עמדה של קול הלשון עם תוכנה חמודה של @מנצפך לישיבה על קברו וטעינת רב-קו, הבעיות שהיו לי, א. שפעמים רבות התוכנה הזו נופלת וצריך להפעיל מחדש את המחשב בשביל להפעיל אותה (ובשביל להפעיל מחדש את המחשב צריך ללכת להביא את המפתח של העמדה וכו'). ב. לאחרונה הקול הלשון לא היה נותן לתוכנה של הישיבה על קברו לעלות בעליית המחשב, מה שהצריך להעלות את התוכנה ורק אז את הקול הלשון. ג. הרבה פעמים הדף של ישיבה על קברו היה קופא על השאלות של היום הקודם או סתם נתקע מה שהצריך כיבוי והפעלה של התוכנה.
מה שעשיתי, כתבתי סקריפט פייתון ש...
א. בודק האם היישום של הישיבה על קברו פועל, במידה ולא מפעיל אותו.
ב. במידה והיישום פועל יותר משעה סוגר אותו ומפעיל אותו מחדש.
ג. הוספתי בדיקה באמצעות קריאה למערכת של ימות המשיח שבמידה ו.. המחשב יופעל מחדש, וכך אני יכול להפעיל את המחשב מחדש באמצעות שיחת טלפון פשוטה.קימפלתי את הסקריפט לexe באמצעות pyinstaller והגדרתי שיופעל בכל 10 דק' ושלום על ישראל...
למעשה, זה סקריפט סופר פשוט, לא נצרכתי להרבה ידע בשבילו, לא היה הרבה איפה להסתבך, את הספריות המתאימות מאתרים בחיפוש גוגל "הפעלה מחדש למחשב פייתון" (כמובן שעדיף לכתוב באנגלית או לחילופין לתרגם בגוגל טרנסלייט..) וזה אגב פלוס גדול לפייתון (וגם לjs אבל עכשיו אנחנו בפוסט העידוד לפייתון
) שבגלל שהוא מאוד פופולרי יש שפע של מדריכים, הסברים וספריות שזמינים בכל חור..אני מצרף את הקוד פייתון של זה בבחינת טוב מראה עיניים.. תראה כמה הקוד קריא ופשוט מצד אחד, אבל עוצמתי מבחינת היכולות שלו...
import psutil import subprocess import datetime import requests # Check if the process is already running for process in psutil.process_iter(): if process.name() == "RavKav.exe": # Check if the process has been running for more than an hour if (datetime.datetime.now() - datetime.datetime.fromtimestamp(process.create_time())).total_seconds() > 3600: print("רב קו פועל כבר יותר משעה ברצף. עוצר...") process.kill() # start it. print("מפעיל מחדש...") subprocess.Popen("c:\\intel\RavKav.exe noravkav") break else: print("רב קו כבר פועל. הכל בסדר.") break else: # If the process is not running, start it print("רב קו אינו פועל. מפעיל...") subprocess.Popen("c:\\intel\RavKav.exe noravkav") # ------------------------------- url = 'https://www.call2all.co.il/ym/api/RunTzintuk?token=0799999063:054863&phones=tzl:21' response = requests.get(url) if 'billingPerCall' in response.text: urlresetlist = 'https://www.call2all.co.il/ym/api/TzintukimListManagement?action=resetList&token=079999063:0543&TzintukimList=21' resetlist = requests.get(url) # Restart the computer subprocess.call(['shutdown', '-r', '-t', '0']) else: # Print a message to the log print('Requested text not found in the response.') -
איך לומדים לבנות תוכנה@יעקב-מ-פינס קראתי בריפרוף מהיר (אין לי הרבה זמן..)
אבל בתור אחד שלמד ככה, אני חושב שאכן חשוב ללכת בהתחלה על שפה שתנחיל לך את המושגים ודרך החשיבה של מתכנת כדברי @חגי
מצד שני יש צדק במה שכתב @dovid לגבי הענין שלא יהיה לך הרבה מה לעשות במשך הרבה זמן אם תתחיל מהדברים הכבדים...
לכן, אציע את מה שאני עשיתי, התחלתי עם js+html+css (שתי האחרונות לא ממש שפות
אני יודע..) ואני מדגיש את השילוב, כי נהנתי והתפתחתי ממשחק בעיצוב ובF12 של אתרים והשילוב בין השלושה נתן לי המון על בניית ואיך עובדים אתרי אינטרנט...במקביל ממש כתבתי סקריפטים לאוטומציה בpython שזה שפה ממש קלה לדעתי, ומצד שני קצת יותר מעצבנת ודורשת הבנה של ממש במה אתה בדיוק כותב.. וגם יש בה את השימוש המיידי האמיתי יותר מjs, עם שימוש בשלל הספריות אפשר לעשות עולם ומלואו..
אחרי שאתה מרגיש טוב עם 2 אלה, הגיע הזמן שתלמד משהו שבאמת תוכל לכתוב איתו תוכנות "אמיתיות" ולדעתי כדאי שתלך על C#...
(אישית אני נדפקתי עכשיו עם איזה פרויקט בVB.NET ולדעתי לשם אל תלך מרצון אא"כ אתה רוצה להתעסק עם אקסס וVBA... (גם את זה לא כדאי לעשות 🤪))
-
שגיאה בPHP שעוצרת את הסקריפט@שואף אני לא משתמש גדול בphp, אבל זה לא אמור לאפשר לך להפעיל פונקציה מותאמת בעת שגיאות קריטיות? (אני חושב שזה גם ממשיך את הריצה, לאחר הקריאה לפונקציה המוגדרת עיין עריכה)
set_error_handler("myError");https://www.php.net/manual/en/function.set-error-handler.php
.עריכה: לפי זה, אכן משמע שניתן להמשיך את ביצוע הסקריפט לאחר הטיפול בשגיאה:
Also note that it is the handler's responsibility to stop the script's execution if necessary by calling exit(). If the error-handler function returns, script execution will continue with the next statement after the one that caused an error. -
העיצוב החדש בפורום
