abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 05:11 | IT novinky

    Home Assistant včera představil svůj nejnovější oficiální hardware: Home Assistant Connect ZBT-2 pro připojení zařízení na sítích Zigbee nebo Thread.

    Ladislav Hagara | Komentářů: 4
    včera 19:44 | Nová verze

    Byla vydána verze 9.1 open source virtualizační platformy Proxmox VE (Proxmox Virtual Environment, Wikipedie) založené na Debianu. Přehled novinek v poznámkách k vydání a informačním videu.

    Ladislav Hagara | Komentářů: 1
    včera 17:44 | IT novinky

    Byl aktualizován seznam 500 nejvýkonnějších superpočítačů na světě TOP500. Nejvýkonnějším superpočítačem zůstává El Capitan od HPE (Cray) s výkonem 1,809 exaFLOPS. Druhý Frontier má výkon 1,353 exaFLOPS. Třetí Aurora má výkon 1,012 exaFLOPS. Nejvýkonnější superpočítač v Evropě JUPITER Booster s výkonem 1,000 exaFLOPS je na čtvrtém místě. Nejvýkonnější český superpočítač C24 klesl na 192. místo. Karolina, GPU partition klesla na 224. místo a Karolina, CPU partition na 450. místo. Další přehledy a statistiky na stránkách projektu.

    Ladislav Hagara | Komentářů: 6
    včera 17:22 | IT novinky

    Microsoft představil Azure Cobalt 200, tj. svůj vlastní SoC (System-on-Chip) postavený na ARM a optimalizovaný pro cloud.

    Ladislav Hagara | Komentářů: 0
    včera 12:00 | IT novinky

    Co způsobilo včerejší nejhorší výpadek Cloudflare od roku 2019? Nebyl to kybernetický útok. Vše začalo změnou oprávnění v jednom z databázových systémů a pokračovalo vygenerováním problém způsobujícího konfiguračního souboru a jeho distribucí na všechny počítače Cloudflare. Podrobně v příspěvku na blogu Cloudflare.

    Ladislav Hagara | Komentářů: 3
    18.11. 23:44 | Nová verze

    Byla vydána (Mastodon, 𝕏) první RC verze GIMPu 3.2. Přehled novinek v oznámení o vydání. Podrobně v souboru NEWS na GitLabu.

    Ladislav Hagara | Komentářů: 0
    18.11. 23:22 | Komunita

    Eugen Rochko, zakladatel Mastodonu, tj. sociální sítě, která není na prodej, oznámil, že po téměř 10 letech odstupuje z pozice CEO a převádí vlastnictví ochranné známky a dalších aktiv na neziskovou organizaci Mastodon.

    Ladislav Hagara | Komentářů: 0
    18.11. 19:44 | Nová verze

    Byla vydána nová major verze 5.0 svobodného 3D softwaru Blender. Přehled novinek i s náhledy a videi v obsáhlých poznámkách k vydání. Videopředstavení na YouTube.

    Ladislav Hagara | Komentářů: 0
    18.11. 14:00 | Upozornění

    Cloudflare, tj. společnost poskytující "cloudové služby, které zajišťují bezpečnost, výkon a spolehlivost internetových aplikací", má výpadek.

    Ladislav Hagara | Komentářů: 13
    18.11. 04:22 | Pozvánky

    Letos se uskuteční již 11. ročník soutěže v programování Kasiopea. Tato soutěž, (primárně) pro středoškoláky, nabízí skvělou příležitost procvičit logické myšlení a dozvědět se něco nového ze světa algoritmů – a to nejen pro zkušené programátory, ale i pro úplné začátečníky. Domácí kolo proběhne online od 22. 11. do 7. 12. 2025 a skládá se z 9 zajímavých úloh různé obtížnosti. Na výběru programovacího jazyka přitom nezáleží – úlohy jsou

    … více »
    SoutezKasiopea | Komentářů: 1
    Jaké řešení používáte k vývoji / práci?
     (35%)
     (46%)
     (19%)
     (18%)
     (23%)
     (15%)
     (23%)
     (15%)
     (17%)
    Celkem 371 hlasů
     Komentářů: 17, poslední včera 21:57
    Rozcestník

    Raspberry PI, MIDI, timidity a hrozná latence

    15.6.2013 20:53 | Přečteno: 2545× | Raspberry PI | Výběrový blog | poslední úprava: 15.6.2013 20:53

    Konečně mi došlo Raspberry PI a tak jsem se rozhodl k jeho prvnímu nasazení: Chtěl jsem „osvobodit“ své USB/MIDI klávesy od nutnosti pokaždé je připojovat k notebooku. Propojil jsem tedy klávesy s Raspberry PI s Raspbianem přes USB, k Raspberry přes malého Jacka bedýnky a ještě to celé napojil do lokální ethernetové sítě, aby se to dalo nějak rozumně konfigurovat.

    Konfigurace Raspbianu byla celkem přímočará. Vyzkoušel jsem na něm nahodit MPD a fungoval prakticky hned. Poté jsem nainstaloval Timidity, což je „syntezátor“, který pojídá na vstupu MIDI zprávy (do chřtánu se mu dá nalít i MIDI soubor) a na výstupu vylézá digitální audio, které stačí už jen poslat do zvukovky.

    Zdálo se, že Timidity po nainstalování hned začalo fungovat. Když jsem do něj nalil první MIDI soubor, co byl po ruce (pmidi -p 128:0 [soubor.midi]) tak se sice cukal, ale to se dalo jednoduše spravit tím, že jsem v /etc/timidity/timidity.cfg prostě povypínal echa a chorusy a jemný resampling.

    Pak jsem propojil Timidity s MIDI klávesami (aconnect 20:0 128:0) a Timidity skutečně začalo hrát. Jenže ouha, s tak šílenou latencí, že to bylo horší, než nejhorší pneumatické varhany na které jsem se kdy pokoušel hrát.

    Když jsem na internetu hledal, jak by se dalo Timidity přemluvit k nějaké menší latenci, našel jsem jen parametr -B pro příkazovou řádku. Pro Timidity v režimu démona tohle nikde zdokumentováno nebylo. Nakonec ale zvítězila taktika uživatelů Windows „nějak to zkusit.“ Konkrétně jsem si řekl, což kdyby parametr pro příkazovou řádky fungovat i v konfiguračním souboru :-). A taky, že jo. Toto mi funguje (v /etc/timidity/timidity.cfg):

    opt B4,8
    

    Pokud by to zlobilo, pak je nutno mírně zvýšit první číslo. Aby se Timidity vždy spojilo s MIDI klávesami, je nutné vždy po nastartování Timidity ještě spustit aconnect. To jsem nakonec vyřešil zásahem do /etc/init.d/timidity takto:

    #!/bin/bash
    #
    # TiMidity      /etc/init.d/ initscript for TiMidity++
    #               $Id: timidity.init,v 1.6 2004/09/30 01:04:04 hmh Exp $
    #
    #               Copyright (c) 2004 by Henrique M. Holschuh <hmh@debian.org>
    #               Copyright (c) 2007-2009 Joost Yervante Damad <andete@debian.org>
    #               Hacked (h) 2013 by Petr Tomasek
    #
    #               Distributed under the GPL version 2
    #
    
    ### BEGIN INIT INFO
    # Provides: timidity
    # Required-Start: $remote_fs
    # Required-Stop: $remote_fs
    # Default-Start:  2 3 4 5
    # Default-Stop: 0 1 6
    # Short-Description: start and stop timidity
    # Description:  TiMidity++ is a very high quality software-only MIDI sequencer
    #        and MOD player.
    ### END INIT INFO
    
    . /lib/lsb/init-functions
    
    NAME="timidity"
    PATH=/sbin:/bin:/usr/sbin:/usr/bin
    DAEMON=/usr/bin/${NAME}
    DESC="TiMidity++ ALSA midi emulation"
    PIDFILE=/var/run/timidity/${NAME}.pid
    
    set -e
    
    test -x ${DAEMON} || exit 0
    
    TIM_ALSASEQ=true
    TIM_ALSASEQPARAMS="-B2,8"
    [ -r /etc/default/timidity ] && . /etc/default/timidity
    if [ "${TIM_ALSASEQ}" != "true" ]; then
    	log_daemon_msg "Starting" "${NAME}"
    	log_daemon_msg " (to get timidity as an ALSA Sequencer enable this by editing the file /etc/default/timidity)"
    	log_end_msg 0
    	exit 0
    fi
    
    [ -z "$SERVER_USER" ] && SERVER_USER=timidity
    [ -z "$SERVER_GROUP" ] && SERVER_GROUP=timidity
    
    if ! getent passwd | grep -q "^${SERVER_USER}:"; then
    log_daemon_msg "Server user does not exist. Aborting"
    log_end_msg 0
    exit 1
    fi
    if ! getent group | grep -q "^${SERVER_GROUP}:" ; then
    log_daemon_msg "Server group does not exist. Aborting"
    log_end_msg =
    exit 1
    fi
    
    PARAMS="${TIM_ALSASEQPARAMS} -iAD"
    
    
    START="--start --chuid ${SERVER_USER} --quiet --exec ${DAEMON} --pidfile ${PIDFILE} -- ${PARAMS}"
    
    case "$1" in
      start)
    	#log_daemon_msg "Starting" "${NAME}"
    	[ -d /proc/asound ] && [ -d /dev/snd/ ] || {
    		log_end_msg 1 || echo -n
    		log_warning_msg "ALSA is not active, cannot start $DESC"
    		exit 0
    	}
    	log_begin_msg "Starting $DESC..."
        mkdir -p /var/run/timidity
        chown timidity /var/run/timidity
    	if start-stop-daemon ${START} < /dev/null >/dev/null >>&1; then
    		echo -ne '\n\t\t... connecting to MIDI keyboard..\t'
    		sleep 2
    		aconnect 20:0 128:0
    		echo "[ok]"
    		log_end_msg 0
    	else
    		log_end_msg 1
    		exit 1
    	fi
    	;;
      stop)
    	log_begin_msg "Stopping $DESC..."
    	if start-stop-daemon --stop --oknodo --pidfile ${PIDFILE} \
              --name ${NAME} --retry 10 ; then
    		log_end_msg 0
    	else
    		log_end_msg 1
    		exit 1
    	fi
    	;;
      restart|force-reload)
      	$0 stop
    	exec $0 start
      	;;
      status)
    	status_of_proc $DAEMON $NAME
    	;;
      *)
        echo "Usage: $0 {start|stop|restart|force-reload|status}" >&2
        exit 1
    esac
     
    exit 0
    

    Bacha na změnu /bin/sh na /bin/bash, jinak nefunguje echo -ne .... S touto změnou to funguje dobře. Třeba to bude někomu k užitku :-).

           

    Hodnocení: 82 %

            špatnédobré        

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    Komentáře

    Vložit další komentář

    16.6.2013 01:19 WNJ
    Rozbalit Rozbalit vše Re: Raspberry PI, MIDI, timidity a hrozná latence
    Jen pockej, az prijde systemd. Tam to takhle snadno neudelas.
    16.6.2013 08:52 potato
    Rozbalit Rozbalit vše Re: Raspberry PI, MIDI, timidity a hrozná latence
    Se systemd to uděláš stejně, až na to, že například status bude fungovat a nebude spouštět irelevantní příkazy a vypisovat irelevantní hlášky, jako je to zde...
    Petr Tomášek avatar 16.6.2013 12:23 Petr Tomášek | skóre: 39 | blog: Vejšplechty
    Rozbalit Rozbalit vše Re: Raspberry PI, MIDI, timidity a hrozná latence
    Má pravdu. Se systemd člověk nejdřív týden bude pročítat dokumentaci, jak to udělat. Takhle může člověk jednodušše hacknout jeden skript.

    Na druhou stranu, jestli systemd umí závislosti mezi balíky, tak by se to dalo na druhou stranu udělat čistěji...
    multicult.fm | monokultura je zlo | welcome refugees!
    16.6.2013 09:39 doron | skóre: 21 | blog: Sensors a Ksysguard | Brno
    Rozbalit Rozbalit vše Re: Raspberry PI, MIDI, timidity a hrozná latence
    Proč to musí být Timidity? Fluidsynth mi vždy přišel lepší. Když už Timidity, tak samozřejmě přes Jack. Pokud si vzpomínám, takto jsem to dělával někdy před osmi lety. Pak jsem objevil Fluidsynth. Na rozdíl od Timidity nepodporuje GUS formát. Pokud stačí podpora SF2, tak není co řešit.
    You can't fuck everyone, but you can try to.
    stativ avatar 16.6.2013 09:56 stativ | skóre: 54 | blog: SlaNé roury
    Rozbalit Rozbalit vše Re: Raspberry PI, MIDI, timidity a hrozná latence
    Typoval bych náročnost na výkon – fluidsynth potřebuje víc výkonu a hlavně paměti. Zejména s lepšími většími soundfonty.
    Ať sežeru elfa i s chlupama!!! ljirkovsky.wordpress.com stativ.tk
    16.6.2013 15:27 R
    Rozbalit Rozbalit vše Re: Raspberry PI, MIDI, timidity a hrozná latence
    Aj Timidity je katastrofa, nikdy mi to poriadne nefungovalo... Pritom vo Windows 98 chodi SW MIDI bez problemov aj na Pentiu MMX...
    stativ avatar 16.6.2013 17:17 stativ | skóre: 54 | blog: SlaNé roury
    Rozbalit Rozbalit vše Re: Raspberry PI, MIDI, timidity a hrozná latence
    Jestli myslíš ten syntetizér, co je default ve windows tak to je co se týče „kvality“ naprostá katastrofa.
    Ať sežeru elfa i s chlupama!!! ljirkovsky.wordpress.com stativ.tk
    Petr Tomášek avatar 16.6.2013 12:26 Petr Tomášek | skóre: 39 | blog: Vejšplechty
    Rozbalit Rozbalit vše Re: Raspberry PI, MIDI, timidity a hrozná latence
    Nemusí. Chtěl jsem nejdřív zkusit jedno. A navíc, jak píše někdo dole, nemuselo by to Raspberry Pi zvládnout...
    multicult.fm | monokultura je zlo | welcome refugees!

    Založit nové vláknoNahoru

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.