ב"ה הסדרתי!
הבעיה היתה בכלי nusave שלא הוריד את כל התלויות כיאות.
עשיתי התקנה לוקאלית באמצעות nuget.exe וזה באמת הוריד את כל התלויות.
תודה רבה לכל המסייעים.
ב"ה הסדרתי!
הבעיה היתה בכלי nusave שלא הוריד את כל התלויות כיאות.
עשיתי התקנה לוקאלית באמצעות nuget.exe וזה באמת הוריד את כל התלויות.
תודה רבה לכל המסייעים.
@אף-אחד-3
דבר ראשון, בהצלחה!
על פי השערה הגיונית כמו רוב הפורמטים הבינאריים, אמור להיות בתחילת הקובץ טבלה עם המטא נתונים של הקובץ (שם, אמן, אלבום וכדו'), ואחרי זה יש 'מקטע' (section) שמכיל מידע על הגלים והתדרים. קח בחשבון שתצטרך גם אלגוריתם של פריקת מידע דחוס, כי קובץ mp3 מאחסן את השמע בצורה דחוסה, ואח"כ גם תצטרך לדחוס את השמע בחזרה.
רעיון פשוט שאני חושב, זה לקחת ספריית צד שלישי בקוד פתוח שעושה את הפעולות האלו, ולעיין בקוד כדי להבין איך היא פועלת.. (תוכל גם להעתיק קטעי קוד..)
הפורמט SMF זה באמת פורמט של פלייבקים אבל אני לא חושב שהוא התכוון לזה, אלא למקצבים שלפעמים נותנים מעטפת שלימה לשיר מסוים ולכן הוא קורא לזה פלייבק, אבל זה מגיע כמקצב ולא SMF.
לגבי איזה אורגן תומך באיזה מקצבים זה כבר מסובך, כי זה תלוי איזה מקצב, ואם יש בו שימוש בדגימות (קבצי סאונד חיצונים שימבאים לאורגן) אז צריך אורגן שתומך בדגימות. מה שהיום הכי טוב זה PSR-SX900 אבל הוא יקר (באזור 8,000 ליד שניה), יש את ה PSR-XS700 שהוא קצת פחות יקר, אפשרות יותר זולה זה PSR-S970 או S975, שהוא קצת יותר ישן, ואפשר להשיג יחסית בזול (6,000 בערך) ואמור להתאים לרוב הדברים.
גרסה חדשה ללא צורך להתקין dotnet runtime, וכולל תרגום ישירות מהמסך.
הורדה:
hebrew-mt-x64-v0.2.2.zip
המודלים כלולים ב - zip, אין צורך להוריד בנפרד.
בהצלחה!
לכל המתעניינים מה עם המודל לתרגום מעברית לאנגלית, אז בינתיים בדקתי את המודל:
https://huggingface.co/tiedeman/opus-mt-he-en
ואני מקבל את השגיאה:
Microsoft.ML.OnnxRuntime.OnnxRuntimeException: '[ErrorCode:InvalidArgument]
Non-zero status code returned while running If node.
Name:'optimum::if'
Status Message: Non-zero status code returned while running Gather node.
Name:'/model/decoder/shared/Gather'
Status Message: indices element out of data bounds, idx=65838 must be within the inclusive range [-62955,62954]'
נכון לעכשיו אני לא מבין את פשר השגיאה ואיך לפתור אותה.
@בערל
אני חושב שהאופציה הטובה ביותר היא לפתח אפליקציה קטנטנה שתעשה את העבודה.
למתכנת שמכיר את התחום הזה זה לא אמור להיות בעיה גדולה.
אפשר לדוג' על ידי יצירת שאילת האזנה של WMI שתלכוד את כל ההדפסות (Win32_PrintJob), ובכל הדפסה היא תקפיץ חלון למשתמש, ותכתוב ללוג את כמות הדפים וכו'
אם אתה רוצה תוכנה מוכנה, אני לא מכיר אחת כזו שיכולה להקפיץ מסך בכל הדפסה. (יכול להיות בהחלט שיש)
@צדיק-תמים
כשהתוכנה עולה היא יוצרת קובץ בשם 'stockfish_15_x64_popcnt.exe' במיקום של התוכנה ובסיום היא מוחקת אותו,
הבעיה אצלך היא שמשום מה התוכנה לא מצליחה למחוק את הקובץ ביציאה בגלל הגבלת הרשאות, יותר מזה אני לא יכול לדעת..
תנסה להריץ כמנהל ותראה אם עדין יש את הבעיה
@yossiz תודה רבה, עזרת לי.
לא טרחתי לחפש תשובות באנגלית, כי חשבתי שזה נושא פחות נוגע לשפות שממילא פרוסות משמאל לימין.
נ.ב. השאלה היתה אמורה להיות בקטגורית 'תוכנה'. בטעות הכנסתי אותה ל 'תכנות'
@pcinfogmach מה שאני חושב זה:
זה בנתיים מה שעולה לי
למי שמעוניין לנסות את זה על windows, נתקלתי לאחרונה בריפו הזה:
https://github.com/deevus/zed-windows-builds
אפשר להוריד את הקובץ הבינארי (קובץ בודד ללא התקנה) מעמוד ה - Release:
https://github.com/deevus/zed-windows-builds/releases/latest
התוכנת תרגום שפורסמה כאן בנויה עם avalonia, (אם יהיה לי פנאי אני אפרסם בקרוב גרסה חדשה של התוכנה שכוללת גם שינוי עיצובי)
אם אתה רוצה לראות סתם גלריית theme שבנויה עם avalonia, תוריד את זה: (צריך להיות מחובר לחשבון GitHub)
https://github.com/kikipoulet/SukiUI/actions/runs/12388950546/artifacts/2336318341
@pcinfogmach כתב בשימוש נכון ב-await Task.Run ב-C#:
מהם ההדרכות לכתיבת קוד אסינכרוני ב-C# וממה יש להיזהר?
זה נושא מורכב שהרבה מסתבכים איתו ועושים טעויות, אני ממליץ לך לעבור על המסמך AsyncGuidance שהתודעתי אליו בעבר מהפורום.
הצלחתי בסוף להגדיר את rollup, והתוצאה נראית הרבה יותר טוב.
זה דוגמא לקובץ סופי (שמורכב משני קבצי ts) עם- rollup:
function showMessage(message) {
alert(message);
}
showMessage("hello");
וככה הוא נראה עם - webpack:
/******/ (function() { // webpackBootstrap
/******/ "use strict";
/******/ var __webpack_modules__ = ({
/***/ 420:
/***/ (function(__unused_webpack_module, exports) {
exports.__esModule = true;
exports.showMessage = showMessage;
function showMessage(message) {
alert(message);
}
/***/ })
/******/ });
/************************************************************************/
/******/ // The module cache
/******/ var __webpack_module_cache__ = {};
/******/
/******/ // The require function
/******/ function __webpack_require__(moduleId) {
/******/ // Check if module is in cache
/******/ var cachedModule = __webpack_module_cache__[moduleId];
/******/ if (cachedModule !== undefined) {
/******/ return cachedModule.exports;
/******/ }
/******/ // Create a new module (and put it into the cache)
/******/ var module = __webpack_module_cache__[moduleId] = {
/******/ // no module.id needed
/******/ // no module.loaded needed
/******/ exports: {}
/******/ };
/******/
/******/ // Execute the module function
/******/ __webpack_modules__[moduleId](module, module.exports, __webpack_require__);
/******/
/******/ // Return the exports of the module
/******/ return module.exports;
/******/ }
/******/
/************************************************************************/
var __webpack_exports__ = {};
var _dialogs = __webpack_require__(420);
(0, _dialogs.showMessage)("hello");
/******/ })()
;
זה הקונפיגורציה המינימאלית של rollup:
import typescript from '@rollup/plugin-typescript';
import babel from '@rollup/plugin-babel';
export default {
input: 'src/index.ts',
output: {
file: 'dist/drop-word-script.js'
},
plugins: [
typescript(),
babel({
babelHelpers: 'bundled',
presets: [
['@babel/preset-env']
],
extensions: ['.js', '.ts']
})
],
};
@yossiz כתב בTypeScript - קימפול מספר קבצים לקובץ אחד:
יש גם דגל של TS שאומר לארוז את כל הקבצים לקובץ אחד
אולי זה יספיק פה
https://www.typescriptlang.org/tsconfig/#outFile
ניסיתי את זה, אבל אני רואה שהמינימום האפשרי ב tsc זה es5, ו - extend script זה es3,
אז אני מבין שצריך להשתמש ב rollup או esbuild עם פלאגינים שמשלבים babel ו - typescript, אם יש למשהו דוגמת קוד לקונפיגורציה זה יעזור לי.
ואגב, למפרע אני מבין שנוסח השאלה שלי צריך להיות כך: "איך אורזים מספר קבצי ts. לקובץ js. בודד בסטנדרט es3?"
@pcinfogmach כתב באיך לתקשר בין שלוש חלקים של תוכנה ב-C# wpf?:
אשמח לשמוע מהמומחים
אני לא מומחה גדול, אבל אם אתה הולך על MVVM אז לכאורה לא צריך להיות קשר בין פקדים/תצוגות, כל פקד/תצוגה הוא עצמאי, והוא מקבל את הנתונים שהוא אמור להציג דרך ה - ViewModel (כנראה מה שהתכוונת באפשרות 1)
אגב, אם אתה כבר מפתח ב - WPF ולא יודע מה זה DependencyProperty אז אתה ממש מפסיד...
@צדיק-תמים אני בדוטנט והספרייה זה Rx.NET. כל מי שלא משתמש עם Rx היה עושה בדיוק מה שכתבת, אבל זה הדבר האחרון שהייתי רוצה לעשות, כי אם כבר הכל ריאקטיבי אז למה להסתבך עם משתנים ותנאים, מה שחסר זה רק להוסיף את האופרטור הנכון.
ואגב, מצאתי את האופרטור Sample אז בעצם יש לי כבר תשובה לשאלה..
@צדיק-תמים כתבתי בפוסט הראשון למה Throttle לא טוב לי ו - Throttle בדוטנט זה debounce ב - RxJs, זה אותו אופרטור עם שם שונה.
אם אני ישתמש עם debounce, התוצאה שאני אקבל זה כשהמשתמש יגרור את העכבר לחפש מקום בקובץ שום דבר לא ישתנה עד שהוא יפסיק לגרור, כי ב-debounce הטיימר מתאפס בכל פעם שמגיע ערך (ורק כשעבר פרק זמן בלי שהגיע שום ערך, הוא מחזיר את הערך האחרון), אני כן צריך שהאופרטור יפיק ערך לפי פרק זמן קבוע בלי קשר למתי הגיע הערך האחרון, ואז התוצאה שבזמן שהמשתמש גורר את העכבר כל עשירית שניה מתבצע חיפוש בקובץ.
@pcinfogmach כתב בProgressBar בWPF תוך כדי פעולת thread:
private async void search(string[] files) { progressBar.Maximum = files.Length; List<System.Threading.Tasks.Task> searchTasks = new List<System.Threading.Tasks.Task>(); foreach (string file in files) { searchTasks.Add(Task.Run(() => { this.Dispatcher.Invoke(() => { progressBar.Value = progressBar.Value + 1; File.ReadAllLines(file); }); })); } await System.Threading.Tasks.Task.WhenAll(searchTasks); progressBar.Value = 0; }
למה File.ReadAllLines(file)
נמצא בתוך הקריאה ל Dispatcher.Invoke
? תנסה להוציא אותו מחוץ ל Dispatcher, הקריאה אמורה להכיל קוד שמשנה את התצוגה בלבד. הגיוני שהתרד של התצוגה נתקע כי את מריץ עליו עוד לוגיקה שלא קשורה ל UI שיתכן שגוזלת זמן, ובגלל שה UI לא מגיב אתה לא רואה את ההתקדמות. (חוץ מזה שצריך לאפס את progressBar.Value
לאפס, מה ש @dovid כתב לך)