BG Development


Страници: (3) 1 [2] 3   ( Първото ново мнение ) Reply to this topicStart new topicStart Poll

> Проблем с Audio обект в JS
GigaByte
Публикувано на: 30-03-2018, 05:54
Quote Post



Име: ГБ
Група: Потребител
Ранг: Редовен член

Мнения: 504
Регистриран на: 19.08.09



PMEmail PosterUsers Website
Top
korsarq
Публикувано на: 30-03-2018, 08:02
Quote Post



Име:
Група: Потребител
Ранг: Активен

Мнения: 256
Регистриран на: 30.11.16



Аз не знам защо използването на таймери да е винаги грешно.


--------------------
It gladdens me to know that Odin prepares for a feast.
Soon I shall be drinking ale from curved horns.
This hero that comes into Valhalla does not lament his death!
I shall not enter Odin's hall with fear.My death comes without apology!
And I welcome the valkyries to summon me home!
PMEmail Poster
Top
johnfound
Публикувано на: 30-03-2018, 08:15
Quote Post


Group Icon
Име:
Група: VIP
Ранг: Почетен член

Мнения: 6337
Регистриран на: 27.05.04



QUOTE (korsarq @ 30-03-2018, 09:02)
Аз не знам защо използването на таймери да е винаги грешно.

Защото таймера по същество представлява опростен модел на реален процес, който използваме вместо реалния процес, за да разберем за някакво събитие.

Като всеки модел, той не е идентичен на процеса и дава винаги различни, кога по-големи, кога по-малки грешки. Което в крайна сметка се плаща с неустойчивост на програмите, трудно отстраними бъгове и често силно понижена производителност на софтуера.

Правилното решение е да се наблюдава истинския обект и да се обработват неговите събития тогава когато се случат.


--------------------
asm32 - Приложно програмиране на асемблер.
Tox: 2B446ADCEC7E180CD4C59391D81D4CAB3E99CA7AE767DB3AB45AF976F8A2050FF071DDB733F1
PMEmail PosterUsers Website
Top
bvbfan
Публикувано на: 30-03-2018, 09:29
Quote Post



Име:
Група: Потребител
Ранг: Почетен член

Мнения: 2786
Регистриран на: 08.12.13



Таймерът е много добро средство събития, просто не трябва да се използва за фиксване на бъгове.


--------------------
QUOTE (Bender @ 23-04-2015, 19:11)
Xamarin: ЛАПАЙ!
Ти: Добре...
PMEmail Poster
Top
johnfound
Публикувано на: 30-03-2018, 10:22
Quote Post


Group Icon
Име:
Група: VIP
Ранг: Почетен член

Мнения: 6337
Регистриран на: 27.05.04



@bvbfan: Може и да е много добро, но е винаги грешно решение. icon_twisted.gif Единственото легитимно използване на таймери е в качеството им на fall-back, за обработка на случаите, когато другите способи за получаване на евенти са невъзможни завинаги или временно. Таймаутите например са точно такова приложение.


А междувременно, аз пренаписах обсъждания код с използване на Web Audio API и резултата е превъзходен. icon_cool.gif

Използвах ето тази статия: https://www.html5rocks.com/en/tutorials/webaudio/intro/

Като обем и сложност на кода се получи с една идея по-сложно, главно заради зареждането на файловете, което се прави с XMLHttpRequest. Но това е дреболия, на фона на безотказната работа.


--------------------
asm32 - Приложно програмиране на асемблер.
Tox: 2B446ADCEC7E180CD4C59391D81D4CAB3E99CA7AE767DB3AB45AF976F8A2050FF071DDB733F1
PMEmail PosterUsers Website
Top
relax4o
Публикувано на: 30-03-2018, 15:06
Quote Post



Име:
Група: Потребител
Ранг: Почетен член

Мнения: 2074
Регистриран на: 04.04.07



QUOTE (johnfound @ 30-03-2018, 10:22)
@bvbfan: Може и да е много добро, но е винаги грешно решение. icon_twisted.gif Единственото легитимно използване на таймери е в качеството им на fall-back, за обработка на случаите, когато другите способи за получаване на евенти са невъзможни завинаги или временно. Таймаутите например са точно такова приложение.


А междувременно, аз пренаписах обсъждания код с използване на Web Audio API и резултата е превъзходен. icon_cool.gif

Използвах ето тази статия: https://www.html5rocks.com/en/tutorials/webaudio/intro/

Като обем и сложност на кода се получи с една идея по-сложно, главно заради зареждането на файловете, което се прави с XMLHttpRequest. Но това е дреболия, на фона на безотказната работа.

Радвам се, че е успяло да ти помогне.


--------------------
Бисери :D

QUOTE (oveRLuckEd)
Ползваш някоя нова версия на PHP, която е вече ооп ориентирана и заради това ти я изкарва тази грешка.


QUOTE (nbacool2)
Щом няма input полета, значи няма откъде да се направи SQL инжекция Very Happy
PM
Top
Антон Яначков
Публикувано на: 30-03-2018, 15:11
Quote Post



Име: Антон Яначков
Група: Потребител
Ранг: Редовен член

Мнения: 460
Регистриран на: 27.07.16



QUOTE (johnfound @ 30-03-2018, 10:22)
@bvbfan: Може и да е много добро, но е винаги грешно решение. 

Направил си такова умозаключение, че ако го подадеш на машина с изкуствен интелект направо ще я зациклиш. Как може едно винаги грешно решение да е много добро?

Влиза майстор в моя кабинет да залепи две плочки в една тясна ниша и носи двуметров нивелир. Когато го попитах за какво му е този нивелир, той 10 минути ми обяснява как, ако някой ти залепи дори една плочка без нивелир, не е никакъв майстор. След като ме беше напълно убедил, че е той от кастата на истинските майстори, аз му посочих тясната ниша с разлепените плочки и му казах, че май ще трябва да се среже този нивелир. Той се завъртя в нишата притеснено, но без да губи присъствие на духа смело отсече:
- Няма проблем, защото плочките са зелени и могат спокойно да се лепят без нивелир.

Сетих се за този велик майстор, когато прочетох твоето съждение за винаги грешното решение. Ти пробвай първо как ще се държи софтуера в реална работна среда, за да не ти се налага после да обясняваш, че зелените плочки могат да се лепят всякак си.

Това мнение е било редактирано от Антон Яначков на 30-03-2018, 15:12
PMEmail PosterUsers Website
Top
johnfound
Публикувано на: 30-03-2018, 16:43
Quote Post


Group Icon
Име:
Група: VIP
Ранг: Почетен член

Мнения: 6337
Регистриран на: 27.05.04



QUOTE (Антон Яначков @ 30-03-2018, 16:11)
Ти пробвай първо как ще се държи софтуера в реална работна среда, за да не ти се налага после да обясняваш, че зелените плочки могат да се лепят всякак си.

Софуера, който пиша на работа, винаги работи в реална работна среда, в цеховете, на разстояние максимум 500 метра от работния ми компютър. И потребителите на този софтуер са пролетарии, с големи мазолести шамари, които винаги могат да ме сгащят в някое кьоше, ако се окаже, че софтуера им пречи да си вършат работата вместо да им помага.

Тези обстоятелства много помагат при дебъгването.

icon_lol.gif icon_lol.gif icon_lol.gif


--------------------
asm32 - Приложно програмиране на асемблер.
Tox: 2B446ADCEC7E180CD4C59391D81D4CAB3E99CA7AE767DB3AB45AF976F8A2050FF071DDB733F1
PMEmail PosterUsers Website
Top
rvc
Публикувано на: 31-03-2018, 01:57
Quote Post



Име:
Група: Потребител
Ранг: Почетен член

Мнения: 2531
Регистриран на: 13.05.11



едно предложение (нищо, че вече си намерил решение на проблема)?
провери настройките на браузъра и виж дали кеширането е изключено.
като вероятна причина ми се струва това че айдио файлът се тегли всеки път преди да се възпроизведе, което понякога (изтеглянето) бива прекъснато по някаква причнина.
просто ми стана любопитно.
PMEmail PosterUsers Website
Top
johnfound
Публикувано на: 31-03-2018, 07:40
Quote Post


Group Icon
Име:
Група: VIP
Ранг: Почетен член

Мнения: 6337
Регистриран на: 27.05.04



QUOTE (rvc @ 31-03-2018, 02:57)
едно предложение (нищо, че вече си намерил решение на проблема)?
провери настройките на браузъра и виж дали кеширането е изключено.
като вероятна причина ми се струва това че айдио файлът се тегли всеки път преди да се възпроизведе, което понякога (изтеглянето) бива прекъснато по някаква причнина.
просто ми стана любопитно.

С обекта <audio> файловете изобщо не се теглят от браузъра нито се кешират в него. Там тегленето се прави от плъгина, който се използва за възпроизвеждане. Така и не намерих някакви настройки на въпросния плъгин, нито дори кой се използва, ако са инсталирани няколко.


--------------------
asm32 - Приложно програмиране на асемблер.
Tox: 2B446ADCEC7E180CD4C59391D81D4CAB3E99CA7AE767DB3AB45AF976F8A2050FF071DDB733F1
PMEmail PosterUsers Website
Top
0 потребители преглеждат тази тема в момента (0 гости, 0 анонимни потребители)
Потребители, преглеждащи темата в момента:

Topic Options Страници: (3) 1 [2] 3  Reply to this topicStart new topicStart Poll

 


Copyright © 2003-2018 | BG Development | All Rights Reserved
RSS 2.0