Keresés

Részletes keresés

djuice Creative Commons License 2019.03.14 0 0 2372

Ilyesmire gondolsz? Ilyet már láttam persze: https://youtu.be/stsBqdo9Svc

Előzmény: Törölt nick (2369)
djuice Creative Commons License 2019.03.14 0 0 2371

Akkor már itt is előrébb jársz tőlem, mert én még ilyen oktató midiket se láttam, de nyilván fontos terület lehet és itt ésszerű is a 2 kéz 2 sávra szeparálása, de gondolod hogy akkor vmi AI algoritmus nézheti mi tartozik bal kézbe és mi a jobb kézbe pl. leütött egyidejű hangok számából? És mi van akkor a kéz átvételes technikáknál ha már itt járunk a témában? Azt nincs algoritmus ami eldönti és nincs kotta se ahol le van írva. Azt maga a zongoratanár mondja el hogy úgy kell játszani. Szóval kutya nehéz dolog ez a zongorillázás amúgy (is)! :)

Előzmény: Törölt nick (2369)
Törölt nick Creative Commons License 2019.03.14 0 0 2370

bocs, most nézem amit írsz: " kijelölt hangtól fel vagy le elválasztások" - ez pont nem az, amiről én írtam :), nyugodtan lehetne abban a kottában bal kezes a7 is, pont úgy mutatná az alsó sávon 

Előzmény: djuice (2367)
Törölt nick Creative Commons License 2019.03.14 0 0 2369

hát valószínűnek tartom - anélkül persze, hogy belemélyedtem volna a témába -, hogy az összes type 0 zongora oktató midinél így kódolnak (nyilván nem a valósidőben feljátszottakról van szó), már csak azért is, hogy a szekvencer egyértelműen két sávon tudja megjeleníteni a kottát, és nem úgy, hogy pld. c3-nál vágja ketté, hogy mi kerüljön 2 két sávra, hanem az eredeti (értsd papír) kotta szerinti módon eldöntve, hogy melyik hang hol van

Előzmény: djuice (2367)
Törölt nick Creative Commons License 2019.03.14 0 0 2368

Tiszta sor, egyértelműen meg lett határozva a működési feltételrendszer.

 

Bizony, még ez is lehet. Sokszor nem azt akarjuk, amiről azt gondoljuk, hogy akarjuk :)

Sőt van egy olyan elképzelés is - az agy működéséről - , hogy valójában a cselekvés történik először, és (csak) utána a gondolat / tudatos szándék, egyfajta igazolásképp :)

Előzmény: zbacsko (2366)
djuice Creative Commons License 2019.03.14 0 0 2367

"amiben a zongora két keze kettő csatornán van.

Pld. az example4.mid"

 

Ez vmi tenyésztett példa. Normális esetben senki nem zongorázik 2 csatornára, hisz zongora darabok akár lehetnek mindkét kézzel fent a 3-4-5 vonalas oktávban megírt részekkel, mint ahogy lent a kontra oktávban is. Szóval ez a kijelölt hangtól fel vagy le elválasztások szerintem eleve nem zenei megközelítésűek.

Ez az a témakör ahol a Zoli emlegette AI kellene eldönteni dolgokat és itt is a human faktor eredményesebb. Lehetne itt egyre keményebb dolgok felé kanyarodni (pl. magyar nyelvi fordítása a playernek stb) :), de már ezért is köszönet, hogy megoldotta egy programban amit kértünk.

Előzmény: Törölt nick (2365)
zbacsko Creative Commons License 2019.03.14 0 1 2366

Eszerint mind a type 0, mind a type 1 midiknél kiesik az összes olyan midi, amiben a zongora két keze kettő csatornán van.

Pontosan. Én egy pillanatig sem gondoltam, hogy ez egy mindent vivő szóló kereső algoritmus, amit holnap érdemes lenne szabadalmaztatni.

Sőt, mindvégig amellett érveltem, hogy ez egy sokkal összetettebb ügy. De aztán Djuice ezt írta:

 

"Ezért is különbözik a szemléletem, mert a szóló zongora darabot én absz. zeneileg értem, nem technikailag, azaz ebben az esetben csak 1 hangszer használata lehetséges a midi fájlban és 1 csatornát használva."

 

Erre már nem lehetett azt mondani, hogy nem egyértelmű. Most mindegy, hogy ez szerintem is a lehető legszűkebb értelemben vett szóló definíció akár "zeneileg" vesszük, akár máshogy. De tény, hogy ez már így leprogramozható, ha valakinek ez kell.  Amit írtam, pont azt csinálja, amit Djuice kért. De egy pillanatig sem gondoltam, hogy az a szóló definíció ami alapján működik teljes és részletes. Ezért írtam:

 

Fontos még, hogy ez tényleg pont azt, és csak azt csinálja ami fent le lett írva. Tehát nagy eséllyel ki fog hagyni midiket, amiket egy ember simán szólóként azonosítana.

 

Én végig arra próbáltam utalni, hogy amikor szólóként identifikálsz valamit, akkor nagyon sok implicit szabályt és kivételt alkalmazol, még ha nem is tudatosan. A programozás/algoritmusban gondolkodás viszont megköveteli, hogy ezeket az implicit szabályokat explicit alakra hozd, és számszerűsítsd. Enélkül nem megy. 

 

A másik gond, hogy neki lehet olyan szűrési lista kellene (nyilván ezt neki kellene végiggondolni), hogy mi az, ami "lehet" szóló mű

Bizony, még ez is lehet. Sokszor nem azt akarjuk, amiről azt gondoljuk, hogy akarjuk :)

Törölt nick Creative Commons License 2019.03.14 0 0 2365

Minden elismerésem (tényleg), de:

"1. Ha egy track önmagában "mixed" (különböző csatornákra vonakozó üzeneteket tartalmaz) ... akkor egyből átugorja a midit."

2. Egy track vizsgálata után megjegyzi a track-hez rendelhető egyetlen csatorna és hangszer számát  (az 1. pont miatt csak egy ilyen lehet már )

Eszerint mind a type 0, mind a type 1 midiknél kiesik az összes olyan midi, amiben a zongora két keze kettő csatornán van.

Pld. az example4.mid http://valentin.dasdeck.com/php/midi/downloads/mf2t.zip

MFile 0 1 48
MTrk
0 Meta Text "96ppq1,2 "
0 On ch=1 n=43 v=80
0 On ch=1 n=62 v=88
0 On ch=1 n=59 v=80
0 On ch=1 n=65 v=80
4 On ch=2 n=79 v=116 <-itt végeti s ér a történet, holott tiszta zongora
24 On ch=1 n=62 v=0
24 On ch=1 n=59 v=0
24 On ch=1 n=65 v=0
29 On ch=2 n=78 v=96

 

Persze djuice pont ezt kérte :)

 

A másik gond, hogy neki lehet olyan szűrési lista kellene (nyilván ezt neki kellene végiggondolni), hogy mi az, ami "lehet" szóló mű (pld. a minden mínusz a biztos nem szóló mű), és abból (az egészhez képest vélhetően csökkentett számosságú listából) már talán könnyebben tudja "kézzel" a tényleges szóló műket leválogatni /ha pld. 1000-ből marad 100 potenciális. Így az a fajta "hiba" eltűnik, hogy valójában szóló műveket nem fogja átnézni soha.

 

Előzmény: zbacsko (2364)
zbacsko Creative Commons License 2019.03.14 0 1 2364

 Milyen címletű sörök szokásosak ilyen körökben? :)

Nincs szokás, amit érzel :)

 

 A szűrési feltételeknél végülis mit, miket alkalmaztál a szóló midik kiválogatására?

Az algoritmus bejárja az összes track minden event-jét.

1. Ha egy track önmagában "mixed" (különböző csatornákra vonakozó üzeneteket tartalmaz), vagy többféle hangszerre referáló Program Change üzeneteket tartalmaz, akkor egyből átugorja a midit.

2. Egy track vizsgálata után megjegyzi a track-hez rendelhető egyetlen csatorna és hangszer számát  (az 1. pont miatt csak egy ilyen lehet már )

3. Minden egyes track léptetés során megnézi, hogy az előző és a jelenlegi track-hez tartozó csatorna és hangszer megegyezik -e. Ha nem, átugorja a midit.

 

Amúgy nagyon köszi a funkciót! Annyi hogy valamiért a Panda Dome antivir ugrik ezekre a kicsomagolt exe-kre a midilejátszót tekintve, aztán nem talál semmit végül, de vmire mindig gyanakszik...

Erről a jelenségről többet olvashatsz itt:

https://blog.nirsoft.net/2009/05/17/antivirus-companies-cause-a-big-headache-to-small-developers/

és itt is:

https://coolsoft.altervista.org/en/blog/2018/05/antivirus-false-positives-are-plague-small-developers

 

A lényeg, hogy a mai vírusirtók kissé paranoiásabbak a kelleténél, és van az a furcsa policy vírusirtók körében, hogy inkább 100 hibás pozitív, mint 1 hibás negatív. Ezen kívül még létezik a teljesen agyhalál 'Reputation based' heurisztika, ami annyit jelent, hogy minden gyanús, amit nem használnak sokan... Ez kisebb fejlesztők számára 22-csapdájaként működik, mivel soha nem fogják sokan használni, ha a virusirtók egyből törlik, mivel nem használják elegen... Persze nagyobb cégek számára külön bejárás létezik az AV engine gyártókhoz., de te mint pöttöm fejlesztő maximum levélben panaszkodhatsz, amire persze sohasem jön válasz. Szóval a legtöbbet Te teheted, mint az adott AV engine felhasználója, azzal hogy jelented nekik a téves (false positive) riasztást.    

 

 

djuice Creative Commons License 2019.03.14 0 0 2363

Amúgy nagyon köszi a funkciót! Annyi hogy valamiért a Panda Dome antivir ugrik ezekre a kicsomagolt exe-kre a midilejátszót tekintve, aztán nem talál semmit végül, de vmire mindig gyanakszik...

(?)

Előzmény: zbacsko (2360)
djuice Creative Commons License 2019.03.14 0 0 2362

Milyen címletű sörök szokásosak ilyen körökben? :)

 

A szűrési feltételeknél végülis mit, miket alkalmaztál a szóló midik kiválogatására?

Előzmény: zbacsko (2361)
zbacsko Creative Commons License 2019.03.14 0 1 2361

Van "Donate" gomb az About boxban, szóval lehet sört is küldeni :)

zbacsko Creative Commons License 2019.03.14 0 1 2360

OK,

Mivel úgy éreztem ez elég reménytelen feladat szöveg illesztéssel (nem lehet egy bejárással megoldani) és az utolsó megfogalmazás már elég konkrét volt a kódoláshoz (csak 1 hangszer 1 csatornán a szóló definíciója)  beleírtam az export rutinba. Mivel nem volt kedvem grafikus interfésszel bíbelődni, csak egy dialógus ablakot dob fel "Solo Only?" kérdéssel az export könyvtár választása előtt. Ha a válasz nem, akkor ugyanaz történik, mint eddig is az exportnál. Ha a válasz igen akkor a playlist-ről kiválasztott fájlok közül csak azokat exportálja, amelyek megfelelnek a fenti "szóló" kritériumoknak. A leöltés helye ugyanaz, mint korábban:

http://falcosoft.hu/midiplayer_57_exporttest.zip

 

Kéretik eltenni, mivel nagyon nem valószínű, hogy ez benne lesz a végleges verzióban, annyira speciális igényekre lett szabva :)

Fontos még, hogy ez tényleg pont azt, és csak azt csinálja ami fent le lett írva. Tehát nagy eséllyel ki fog hagyni midiket, amiket egy ember simán szólóként azonosítana. Az ember sokkal jobb mintázatok, analógiák felismerésében, mint a gép. Te például a Sekaijuban attól még szólóként simán felismersz egy midit, hogy van benn egy kósza program change, ami eltér a fő hangszertől. Vagy pl. csak van benne egy seashore vagy taps effekt a végén. A program viszont ki fogja hagyni, mivel a fő hangszerétől eltérő program change üzenetet talált, tehát az egzakt kritériumok szerint a midi nem szóló, és pont.

 

Ebben különbözik igazából a szemléleted, de nem az enyémtől, hanem az algoritmusokétól. Nekik mindent le kell fordítani pontosan mennyiségekre. És bizonyos dolgokat nem igen lehet jól. Ezekben a holisztikus, analógiákon alapuló megközelítésekben az ember egyszerűen jobb. Szóval legközelebb remélem nem a szép darabokat és mesterműveket szeretnéd majd leválogatni :)

 

Törölt nick Creative Commons License 2019.03.13 0 0 2359

igen, de az egy relatíve egyszerű mintakeresés volt, ha jól emlékszem

(amúgy amit linkeltem, az egy letölthető - parancssori - program, szóval ha tudnál egyértelmű -(szöveg)feldolgozási szabályokat felállítani, és leprogramozni valamilyen szövegfeldolgozó nyelvben awk/perl, akkor akár batch módon is végignézhető az összes midi)

Előzmény: djuice (2358)
djuice Creative Commons License 2019.03.13 0 0 2358

Igen, hát azt hittem eleinte, egyszerűbb feltételekkel szűrhetőek mondjuk TC-ben az ilyenek is, de ez nem így van sajna, mint mikor a sysexekre vadásztunk hogy azt tartalmaznak-e.

Törölt nick Creative Commons License 2019.03.13 0 0 2357

ahogy gondolod :)

Előzmény: djuice (2356)
djuice Creative Commons License 2019.03.13 0 0 2356

Persze, biztos jól el lehet ebben a php-ben is kalandozni, de a kötegelt fájlkezelést kereséssel még fogalmam nincs hogy lehet benne megoldani.

De ha az a cél hogy csak ez mutassa meg a midik tartalmát egyenként megnyitva, akkor már egyszerűbb a Sekaijuba behajingálni mondjuk 20-asával mert az többet is meg tud nyitni és ott rögtön vizuálisan szűrhető és gyorsan bezárogatható ami nem szóló midi.

Ezzel eljátszogatok 100-200 midinél, de mikor 1000 van :) az olyan egész estés mozi ezzel is...

Előzmény: Törölt nick (2355)
Törölt nick Creative Commons License 2019.03.13 0 1 2355

A korábban Általad linkelt oldalon http://valentin.dasdeck.com/php/midi/downloads/ van egy program (mf2t.zip), ami szöveggé alakít egy midi-t (és vissza). Ezzel meg tudod nézni, hogy mi van a fájlban (ugyanezeket Zoltán programjában is látod, de ott sávonként, itt meg - gondolom -, ahogy a midiben tárolva van, egymás után.

 

Tulajdonképpen ez a szövegfájl is feldolgozható (szűrhetők ez alapján fájlok), ha egyértelműen tudni, hogy mit kell keresni/figyelni.

 

Előzmény: djuice (2354)
djuice Creative Commons License 2019.03.12 0 0 2354

Ezért is különbözik a szemléletem, mert a szóló zongora darabot én absz. zeneileg értem, nem technikailag, azaz ebben az esetben csak 1 hangszer használata lehetséges a midi fájlban és 1 csatornát használva.

 

El kell akkor gondolkodnom, hogy egy midi fájl betöltésekor mit is csinál tulkép egy seq.

Ezek szerint nincs eleve olyan struktúra az SMF-ben, ami valójában egy hangszerben vagy seq programban fizikailag van megvalósítva a szeparációra, hanem csak egy adatfolyam, amiben az egyes kódszakaszok (midi események) vannak csak deklarálva együvé tartozó értékekkel (pl. note on üzenet stb.), de lehet hogy azt utána egy teljesen más csatorna másik üzenete fogja időben követni és ezek teljes szkennelése után rak a seq megfelelő helyre sorrendbe rendezve mindent, amik együvé tartozóak? Ebből adódóan akkor így nem is lehet előre aktív track státuszról stb. beszélni, mert az már absz seq funkció, jól gondolom?

Ezeket előre nem tudván gondoltam én, hogy pl. lehetne úgy esetleg keresni vmit egy midi fájlban leszűréshez, hogy megnézetem tartalmaz-e 1 csatorna megnevezésnél többet és utána, hogy vannak-e note on üzenetek azon csatornán... Ezek szerint teljesen más elv szerint kéne keresni a track end és stb események miatt.

 

A szóló zongorás darabot meg nem úgy értem, hogy 1 midi fájlon belül van-e zongora szóló, hanem 200 midi fájl közt hogy találom meg pl. a Für Elise-t, ami egy szóló zongora darab elejétől végéig, más hangszerek nélkül, 1 midi csatornát vezérelten lejátszhatóan (és persze felvetten), ha pl. nem ismerem a címét (nyilván mást keresek, aminek nem tudom a címét). :)
De nem is akadok le én a csak zongora hangszínnél mint kérdés irányult rá, mert lehet az egy gitárra írt szóló mű is! Ezt jelenti a 200 közt 1-2 szóló hangszeres mű pontosabban. Tehát ezzel azt akarom mondani, olyan midi fájlt (fájlokat) akarok kiszűrni, ami 1 csatornát használ zenei eseményekre (note on/off üzenetek) és 1 prg.chg. található benne (ui. ezt gondolom egyértelmű mást kizáró kritériumnak). Ha ezzel szemben mondjuk másik 15 midi csatornára is benne szerepel a prg.chg. 0 zongora hangszín váltás, bankváltás, stb. pl. Rolandoknál ahogy mentenek "üres sávokra" tartozó információkat is SMF-be, az tényleg bukta, mert ilyen összetett keresést akkor kizárt, hogy a Totalcommander véghezvigyen, mely sysexeknél még egyértelműen működhetett.

 

 

Előzmény: zbacsko (2353)
zbacsko Creative Commons License 2019.03.12 0 1 2353

1. Nincs olyan bit/bájt, ami megmondja, hogy egy track aktív-e vagy sem. Azért nincs, mert egy player/sequencer számára nincs rá szükség.  Ugyanis egy program alapvetően midi event-ekkel dolgozik. Ha egy track tartalmaz event-eket, akkor azokat elüldi/lejátsza/megjeleníti. Ha nem tartalmaz, akkor nincs mit elküldeni/lejátszani/megjeleníteni, problem solved :) Tényleg ilyen egyszerű.

2. Tehát pl. a lejátszás szempontjából nincs különbség egy nem létező, és egy létező, de üres track között. De fájl szinten van különbség. Létezhet, és létezik is olyan midi fájl amelyik több üres tracket is tartalmaz. Lehet , hogy a Te példa 16 track-es sequencer-ed is alapra mindig elment 16 track-et akkor is, ha üresek.

3. A használt csatorna nem létezik magában, a használt csatorna mindig csak egy midi event részeként létezik (abban van kódolva). Tehát a csatornák nem track-ekhez, hanem csak konkrét midi üzenetekhez tartoznak.

 

De a lényeg:

Meg lehet mondani, hogy egy track üres-e vagy sem. Ez egy egyértelműen megválaszolható kérdés egy algoritmus számára. De persze ezzel Te nem lennél boldog, mert a legtöbb esetben az üres sem teljesen üres (általában minden üres track is tartalmaz legalább egy trackEnd meta event-et) . De még az is megválaszolható kérdés egy algoritmus számára, hogy melyik track-ek tartalmaznak nem csak meta és/vagy SysEx üzeneteket (hanem normál csatorna üzeneteket is).

Az viszont már egyáltalán nem egyértelműen megválaszolható egy algoritmus számára , hogy egy  midi fájlban "meg van-e bújva 1, 2 szóló zongorás darab".

 

Sokkal konkrétabb kritériumokat kell NEKED megfogalmazod: Pl:

1. Mit jelent a zongora? Csak a Program 0 (Acoustic Grand Piano) vagy a Program 3 (Honky-Tonk) is mehet még? És ezeken kívül még mi? 

2. Mit jelent az 1-2. Ha már 3,4,5 stb. track tartalmaz zongorát az már nem teljesíti a feltételeket?

Akkor sem, ha a  track-ek midi event-jei  ugyanazt  a csatornát használják?

3. Mit jelent a szóló? Ha bármilyen más hangszert is használ a midi fájl akkor már nem teljesíti a feltételeket? Akkor sem, ha a más hangszer csak ütős/dob?

 

Ne várd, hogy az ezekhez hasonló kérdéseket majd valami AI válaszolja meg neked. Neked kell egyértelművé tenned, hogy milyen feltételek mellett tekintesz valamit "szóló zongorás darabnak".

djuice Creative Commons License 2019.03.11 0 0 2352

Na újból:

Szóval én nem programozói és midifájl boncnok szemléletből nézem alapvetően mint laikus a dolgot. (Az más kérdés hogy utóbbiak is érdekelnek még.)

Én olyan hangszereken szocializálódtam, amikben ha volt sequencer, ráírták a specifikációs lapra hogy 16 track seq. Most az tök mindegy nekem, hogy ő képes 0-s és 1-es formátumban SMF-et írni és olvasni, az már tényleg informatikai adatkezelési oldal, meg hogy 65000 sáv lehetne elméletileg.

Csak annyi van kézzelfoghatóan, hogy egy hangszer amin jobb esetben 16 tracknek van dedikált gomb, mint pl. itt, de a trackek akár ua. a midi channelt is vezérelhetik ha úgy akarom, amúgy általában a 16 külön midi channelre állnak be gyárilag...

https://www.musicash.it/413/yamaha-mo6.jpg

 

Namost, ha van pl. 200 midim, amiben 1, 2 szóló zongorás darab van megbújva, nem tudom a címét de tudom hogy van, ahhoz ne kelljen már mindegyiket elindítani hogy azt a 2-t megtaláljam, csak erre szerettem volna valami ötletet, szemelőtt tartva a fenti koncepciót és hogy ehhez nem tudom mit kellene nézni a fájlokban (mondhatni, "merhogy teccik tudni, ideológiailag nem vagyok én olyan képzett ehhez!" :))), szóval a midik leírásában gőzöm se volt, van-e olyan bit, bájt stb, ami megmondja, hogy egy track használva van és ON állapotú-e, mint mondjuk egy Cubaset megnyitva ez látszik már grafikusan is.

Amúgy én az analóg rögzítés elvén elindulva úgy gondoltam, hogy ami midi csatorna nincs használva (kvázi ezzel külön seq. trackek) az nincs is tárolva a midi fájlban, csak az aktív csatorna/track dolgai.

 

Így körvonalazódik esetleg mennyire egyszerű, gyakorlati amúgy a kérdés mint probléma? :)

zbacsko Creative Commons License 2019.03.11 0 1 2351

Javítás: Ezt már a múltkor is rosszul írtam, a lehetséges trackek száma: 65535.A "trackek száma" mezőnek 65536 féle lehetséges értéke van , beleértve a 0-át (0-65535).

 

zbacsko Creative Commons License 2019.03.11 0 1 2350

Kiegészítés:

Annyit lehet biztosan mondani, hogy

1. Type 0 midi fájlok esetében csak 1 track van, ehhez nem kell tovább szkennelni a fájlt.

2. Type 1/2 midi fájlok esetében pedig hogy hány track-et tartalmaz a fájl (csak a header alapján, ehhez sem kell tovább szkennelni a fájlt).

Viszont nincs ilyen összefoglaló információ a header-ben sem a használt csatornákról, sem az egyéb event-ekről.

 

http://www.music.mcgill.ca/~ich/classes/mumt306/StandardMIDIfileformat.html#BM0_

zbacsko Creative Commons License 2019.03.11 0 1 2349

Alapvetően egyetértenék _kolléga_ kollégával :) Kicsit zavaros ez az egész. Van néhány tisztázandó félreértés is:

Nincs olyan, hogy "trackek amik nincsenek használva a 16-ból vagy 32-ből."

Itt szerintem támadt egy kis zavar az erőben és a track vs. channel probléma újra felütötte a fejét.

Erről korábban írtam itt:

http://forum.index.hu/Article/viewArticle?a=149253713&t=9000363 

Type 1/2 midi fájlok esetében a lehetséges track-ek (sávok) száma 65536 (16-bites érték tárolja).

DE ez nem jelenti, hogy a nem használt track-eknek lenne valamiféle foglalt helye. Nincs értelme azt mondani hogy "ez a midi fájl csak 2 track-et használ a 65536-ból" mintha akkor maradna  65534 üres track.

Annyit lehet biztosan mondani, hogy Type 0 midi fájlok esetében csak 1 track van, ehhez nem kell tovább szkennelni a fájlt.

Midi fájlok esetében a tartalom teljes szkennelése nélkül nem lehet megmondani, hogy egy track tartalmaz-e "zenei tartalmat".

Egyébként meg adódik a kérdés, hogy mi az a "zenei tartalom"? Csak a Note On/Off event-ek ?

Pl. ha egy Type 1 midi fájl esetében egy track csak Controller event-eket (hangerő, balansz stb.) tartalmaz, de ugyanarra a csatornára vonatkozóan, mint egy másik track ahol viszont a Note On/Off event-ek vannak, akkor a track tartalma minek számít?

Szerintem ez nem lett átgondolva. Maga a kérdés olyan homályos fogalmakkal dolgozik, ami alapján nem nagyon lehet egyértelmű válaszokat adni.

djuice Creative Commons License 2019.03.11 0 0 2348

Igen, a 0 és 1 SMF formátumra én is gondoltam, de pont azért kérdezem mert nem tudom, hogy mondjuk olyan trackek amik nincsenek használva a 16-ból vagy 32-ből, hogyan vannak vajon nyilvántartva, merthogy voltak régen olyan szekvencerek is, amik 8 sávosak voltak, pl, Roland MC50. Illetve van-e olyan adat amiből egyértelműen kiszűrhető, hogy 1 sáv van használva. (?)

A kottamegjelenítés, meg hogy a Cubase stb. programok szétszedik több sávra, az más, de általában egy szóló zongora darab 1 sávra szokott 1 midi csatornát használva készülni.

Előzmény: Törölt nick (2347)
Törölt nick Creative Commons License 2019.03.11 0 0 2347

ez így nem elég egyértelmű, tekintve, hogy a type 0 formátumban csak egy track van (amit a szekvencer program "szétszed" csatornánként, és a képernyőn már úgy jelenik meg), szóval minden az első sávon van - persze lehet azt mondani, hogy csak az 1 db csatornát (1-16) használó MIDI-k érdekelnek ebből a típusból

 

a másik oldalról (type 1 formátumnál, ahol sávok is vannak definiálva) egy zongora kotta általában két sávon (és esetleg 2 külön csatornán, de persze ugyanazon is lehet) van kezelve, külön a bal/jobb kéznek - itt meg mindkét 2 sáv kellene - vélhetően ez is megfogható a közös csatornával (ha épp ugyanarra a csatornára megy a 2 sáv)

 

szóval már a szűrés előtt is több lehetőség van - persze nem mondom, hogy nem megoldható, majd Zoltán :)

Előzmény: djuice (2346)
djuice Creative Commons License 2019.03.11 0 0 2346

Na, újabb kérdés:

Totalcommanderben már vizsgálódtunk Kollégával a sysexet tartalmazó fájlok felől régebben...

Most arra keresnék ötletet, hogy milyen adat alapján lehetne azt esetleg leszűrni több száz midi közzül, ahol mindössze 1 tracken van felvett zenei tartalom (pl. szóló zongora darabok esetén)?

Köszi!

djuice Creative Commons License 2019.03.11 0 0 2345

Ez a Chris Midi azóta jól lehúzta a redőnyt! :)

Előzmény: zbacsko (2344)
zbacsko Creative Commons License 2019.03.11 0 1 2344

Úgy tűnik, hogy PHP az oldalon csak a szöveges meta event-ek jelennek meg, pl. tempo change, time/key signature nem:

 

Ha egyéb meta event-ekre is kíváncsi vagy használhatod a Midiplayer beépített Event Viewer/Debugger funkcióját. Ha a Filters menüben az "All Non-Channel Events" -t jelölöd ki akkor csak a meta és SysEx event-ek jelennek meg:

 

 

 

 

 

djuice Creative Commons License 2019.03.11 0 0 2343

Érdekességként

Van egy német srác, PHP-ben írkál ilyeneket: 

 

http://valentin.dasdeck.com/php/midi/

Ha kedveled azért, ha nem azért nyomj egy lájkot a Fórumért!