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 20:44 | Nová verze

Byla vydána verze 11.7 open source alternativy GitHubu, tj. softwarového nástroje s webovým rozhraním umožňujícího spolupráci na zdrojových kódech, GitLab (Wikipedie). Představení nových vlastností i s náhledy v příspěvku na blogu.

Ladislav Hagara | Komentářů: 0
dnes 17:22 | Bezpečnostní upozornění

V balíčkovacím systému APT používaném v Debianu a z něj vycházejících linuxových distribucích byla nalezena bezpečnostní chyba CVE-2019-3462. Útočník může vzdáleně spustit libovolný příkaz pod právy roota.

Ladislav Hagara | Komentářů: 1
dnes 17:00 | Nová verze

Canonical oznámil vydání Ubuntu Core 18. Nová verze Ubuntu Core vychází z Ubuntu 18.04 LTS a podporována bude 10 let. Jedná se o placenou podporu. Ubuntu Core je určeno pro IoT (internet věcí) a vestavěné systémy.

Ladislav Hagara | Komentářů: 0
dnes 15:31 | Nová verze

Vyšlo Pharo 7.0 (otevřená implementace Smalltalku). Nyní je kompletně bootstrapováno ze zdrojových kódů spravovaných Gitem, má nové nástroje na procházení a editaci kódu a přináší mnoho dalších změn a oprav. Popis novinek v češtině.

Pavel Křivánek | Komentářů: 0
dnes 02:22 | Nová verze

Byla vydána verze 4.5 linuxové distribuce Parrot (Wikipedie). Jedná se o linuxovou distribuci založenou na Debianu a zaměřenou na penetrační testování, digitální forenzní analýzu, reverzní inženýrství, hacking, anonymitu nebo kryptografii.

Ladislav Hagara | Komentářů: 2
včera 17:22 | Pozvánky

V sobotu 23. února se uskuteční 6. ročník WordCampu – největší konferenci o WordPressu v ČR. Ke konferenci probíhá i soutěž typu CTF (Capture The Flag) o volné vstupenky, kde si lze zkusit zneužít běžné bezpečnostní chyby.

smíťa | Komentářů: 0
včera 17:11 | Pozvánky

Letošní ročník konference Prague PostgreSQL Developer Day se bude konat 13. a 14. února v prostorách FIT ČVUT. Program konference najdete na stránkách konference, stejně jako registrační formulář.

TomasVondra | Komentářů: 0
včera 16:55 | Bezpečnostní upozornění

Byly zveřejněny informace o bezpečnostní chybě v nástroji pro správu databází v jednom PHP souboru Adminer. Chyba je už půl roku opravena. Stačí Adminer aktualizovat.

Ladislav Hagara | Komentářů: 3
20.1. 18:33 | Nová verze

Byla vydána nová stabilní verze 2.7 svobodné decentralizované mikroblogovací platformy a sociální sítě podobné Twitteru Mastodon (Wikipedie). Detailní přehled novinek na GitHubu.

Ladislav Hagara | Komentářů: 0
20.1. 00:22 | Nová verze

Byla vydána nová vývojová verze datového formátu a souvisejících nástrojů Relational pipes. Verze v0.9 obsahuje vstupní moduly pro fstab, CSV, XML a příkazový řádek; výstupní moduly pro CSV, XML, ODS (ODF), GUI (Qt), hodnoty oddělené nulovým bajtem a tabulkový výstup do konzole. Relační data lze upravovat relačními příkazy grep, cut a sed.

xkucf03 | Komentářů: 68
Používáte USB Type-C?
 (20%)
 (16%)
 (11%)
 (12%)
 (38%)
 (4%)
 (43%)
Celkem 462 hlasů
 Komentářů: 0
Rozcestník

Dotaz: mpd a více streamů - jak zařídit hezčí URLs

Chytrex avatar 14.5.2018 14:34 Chytrex | skóre: 30 | Bohumín
mpd a více streamů - jak zařídit hezčí URLs
Přečteno: 237×
Ahoj, jelikož jsem zatuhl na tomto tak třebas někdo bude mít nápad.

Na BananaPi mi běží mpd které streamuje 3 streamy na portech 8000, 8001 a 8002. Jeden je vysoká kvalita v OGG, druhý nízká kvalita v OGG a třetí je v MP3.

čeho chci docílit:

aby se k těmto streamům dalo přistupovat přes například example.com/hi.ogg pro 8000, example.com/low.ogg pro 8001 a example.com/stream.mp3 pro 8002

Na stejném stroji mi běží i lighttpd a ten bych rád použil, pokud možno bez použití php..

Moc do pokročilé konfigurace lighttpd nevidím, stále se s ním učím.

Za každý nápad/radu budu vděčen.
Hrdý člen KERNEL ULTRAS .:. define QUESTION ((bb) || !(bb)) .:. Odmítám vaši realitu a nahrazuji ji svou vlastní..

Řešení dotazu:


Odpovědi

14.5.2018 15:00 NN
Rozbalit Rozbalit vše Re: mpd a více streamů - jak zařídit hezčí URLs
Chytrex avatar 14.5.2018 20:10 Chytrex | skóre: 30 | Bohumín
Rozbalit Rozbalit vše Re: mpd a více streamů - jak zařídit hezčí URLs
Nastavení vhosta:
$HTTP["host"] == "stream.example.com" {

$HTTP["url"] =~ "(^/hi.ogg)" {
  proxy.server  = ( "" => ("" => ( "host" => "127.0.0.1", "port" => 81 )))
}

$SERVER["socket"] == ":81" {
  url.rewrite-once = ( "^/hi.ogg$" => "/" )
  proxy.server  = ( "" => ( "" => ( "host" => "127.0.0.1", "port" => 8000 )))
}
a výstup curl -I
HTTP/1.1 200 OK
Content-Type: audio/ogg
Pragma: no-cache
Cache-Control: no-cache, no-store
Date: Mon, 14 May 2018 17:56:57 GMT
Server: lighttpd/1.4.45
rozhodně to ale nesype data takže mám něco špatně.. čekal bych že ten curl bude sypat aspoň rozsypaný čaj, ale nic. v mplayeru taky nic.

Mplayer skončí na:
Read failed.
No stream found to handle url http://stream.example.com/hi.ogg
Na bPI http://127.0.0.1:8000 streamuje, curl vysype rozsypaný čaj, ale přes proxy to nějak neprojde.

Zkoušel jsem i normální proxy (bez toho podivného workaroundu), ale výsledek je totožný.. Hlavička je správně audio/ogg, ale data nejsou
Hrdý člen KERNEL ULTRAS .:. define QUESTION ((bb) || !(bb)) .:. Odmítám vaši realitu a nahrazuji ji svou vlastní..
Josef Kufner avatar 14.5.2018 22:50 Josef Kufner | skóre: 68
Rozbalit Rozbalit vše Re: mpd a více streamů - jak zařídit hezčí URLs
Nestačilo by jen toto?
$HTTP["host"] == "stream.example.com" {
  $HTTP["url"] =~ "(^/hi.ogg)" {
    proxy.server  = ( "" => ("" => ( "host" => "127.0.0.1", "port" => 8000 )))
  }
}
Lighttpd jsem už dávno nahradil za nginx. V tom by stačilo cca toto:
server {
  listen 80;
  server_name stream.example.com;
  location /hi.ogg {
    proxy_pass http://127.0.0.1:8000/;
  }
}
Hello world ! Segmentation fault (core dumped)
Chytrex avatar 15.5.2018 07:14 Chytrex | skóre: 30 | Bohumín
Rozbalit Rozbalit vše Re: mpd a více streamů - jak zařídit hezčí URLs
Jo tohle jsem zkoušel taky, ale výsledek byl stejný.. :(
Hrdý člen KERNEL ULTRAS .:. define QUESTION ((bb) || !(bb)) .:. Odmítám vaši realitu a nahrazuji ji svou vlastní..
16.5.2018 23:17 Ravise
Rozbalit Rozbalit vše Re: mpd a více streamů - jak zařídit hezčí URLs
Ahoj, sednul jsem si nad to a Works for Me <tm>. Mám to teda jenom na jeden stream, ale snad to pomůže. MPD 0.19.12, lighttpd/1.4.35 (ssl) (Apr 18 2016 15:36:10) z Ubuntu 16.04.4
$HTTP["url"] =~ "^/mpd" {
	proxy.server = ( "" => (
		(
			"host" => "127.0.0.1",
			"port" => "8000",
		)
	))
Samozřejmě načtený mod_proxy. Vlezu na localhost/mpd a hraje. Při vypnutém výstupu http dostanu HTTP 500. Když mi půjčíš relevantní část konfigu mpd, tak si můžu zkusit hrát u sebe.
Chytrex avatar 16.5.2018 23:55 Chytrex | skóre: 30 | Bohumín
Rozbalit Rozbalit vše Re: mpd a více streamů - jak zařídit hezčí URLs
Ok zatím díky za hint co aspoň někomu funguje..

toto zkusím a pokud to nezabere, tak mi to pravděpodobně rozbíjejí vhosti resp jejich nastavení.. rozhodně toto budu testovat..
Hrdý člen KERNEL ULTRAS .:. define QUESTION ((bb) || !(bb)) .:. Odmítám vaši realitu a nahrazuji ji svou vlastní..
Chytrex avatar 17.5.2018 00:06 Chytrex | skóre: 30 | Bohumín
Rozbalit Rozbalit vše Re: mpd a více streamů - jak zařídit hezčí URLs
Tak jsem přišel na to, že se ty data odešlou až to přehrávání ukončím, tzn flushne se nějaká interní cache?
Hrdý člen KERNEL ULTRAS .:. define QUESTION ((bb) || !(bb)) .:. Odmítám vaši realitu a nahrazuji ji svou vlastní..
Chytrex avatar 17.5.2018 00:29 Chytrex | skóre: 30 | Bohumín
Rozbalit Rozbalit vše Re: mpd a více streamů - jak zařídit hezčí URLs
server.stream-request-body  = 2
mi také nepomohlo.. už vážně nevím
Hrdý člen KERNEL ULTRAS .:. define QUESTION ((bb) || !(bb)) .:. Odmítám vaši realitu a nahrazuji ji svou vlastní..
Řešení 1× (Chytrex (tazatel))
Chytrex avatar 17.5.2018 00:57 Chytrex | skóre: 30 | Bohumín
Rozbalit Rozbalit vše Re: mpd a více streamů - jak zařídit hezčí URLs
Tak a odpovím si sám, avšak děkuji všem za nakopnutí správným směrem..

Vše mi funguje a došlo mi co je špatně když jsem si otevřel seznam všech konfiguračních direktiv lightyho a zahlídl jsem direktivu:
server.stream-response-body = 2
Ale aby to bylo kompletní, tady je nastavení lightyho:
server.stream-response-body = 2

$HTTP["url"] =~ "^/hi.ogg" {
    proxy.server = ( "" => (
        (
            "host" => "127.0.0.1",
            "port" => "8000",
        )
    ))
}
$HTTP["url"] =~ "^/lo.ogg" {
     proxy.server = ( "" => (
        (
            "host" => "127.0.0.1",
            "port" => "8001",
        )
    ))
}
$HTTP["url"] =~ "^/stream.mp3" {
    proxy.server = ( "" => (
        (
            "host" => "127.0.0.1",
            "port" => "8002",
        )
    ))
}
a relevantní kus mpd.conf:
audio_output {
        type                            "httpd"
        name                            "OGG stream HQ"
        encoder                         "vorbis"
        port                            "8000"
        bind_to_address                 "0.0.0.0"
        quality                         "4.5"
        format                          "44100:16:2"
}

audio_output {
        type                            "httpd"
        name                            "OGG stream LQ"
        encoder                         "vorbis"
        port                            "8001"
        bind_to_address                 "0.0.0.0"
        quality                         "0"
        format                          "44100:16:2"
}

audio_output {
        type                            "httpd"
        name                            "MP3 stream"
        encoder                         "lame"
        port                            "8002"
        bind_to_address                 "0.0.0.0"
        bitrate                         "192"
        format                          "44100:16:2"
}
Hrdý člen KERNEL ULTRAS .:. define QUESTION ((bb) || !(bb)) .:. Odmítám vaši realitu a nahrazuji ji svou vlastní..

Založit nové vláknoNahoru

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

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