Nokia E51 audioplayer SNR 



Takové jsou výsledky měření mého mobilu. Měřil jsem to tak, že jsem na telefonu přehrával zvukový soubor, který obsahoval sinusoidu 440 Hz o úrovni 0dB (maximální vybuzení bez limitace) a také absolutní digitální ticho. Sluchátkový výstup jsem přes redukci připojil ke vstupu zvukové karty intel HD audio s kodekem Realtek ALC 262. K profesionální měřicí aparatuře to má jistě hodně daleko, ale pro účely mého pokusu se nakonec ukázala dostačující.

Z grafu je krásně vidět, že zapnutí zesilovače způsobí nástup konstantního šumu, jehož úroveň je při nejnižším stupni hlasitosti pouze 20 dB pod špičkovou úrovní plně vybuzeného zesilovače. Tedy Hi-Fi poslech to skutečně není. Teprve při maximální hlasitosti dosahuje SNR cca. 65 dB a dá se tak mluvit o více-méně jakostním poslechu.
Ještě poznámka k úrovním. Aby měly úrovně nějaký pevný rozměr, přeměřil jsem je střídavým voltmetrem naprázdno a znormoval k jednomu Voltu. Hodnoty je však třeba brát jako hrubě orientační (multimetr měří správně nejspíš jen na 50 Hz).
[ zobrazit záznam ] ( 2720 zobrazení ) trvalý odkaz ( 3 / 20217 )
Audioknihy, jak je chápe Nokia 

Audioknihy jsou poslední dobou v módě a tak ani Nokia nezůstala stranou a vytvořila pro své symbianí mobily aplikaci, speciálně optimalizovanou pro přehrávání audioknih. Kromě aplikace také definovali vlastní formát pro ukládání audioknih a software pro převod do tohoto formátu. Ten je jako obvykle jen pro Windows a pod Wine se mu moc běhat nechce. Tak jsem vyrobil svou vlastní sadu nástrojů.

Download: Nokia Audiobooks Utility for linux

Ještě by se slušelo napsat, v čem vlastně nokiácký formát spočívá. Základním prvkem jsou vlastní audiodata. Pro jejich uložení zvolili formát Adaptive Multi-Rate - Wideband (AMR-WB, nebo AWB), což je formát vyvinutý iniciativou 3GPP pro přenos hlasu v mobilních sítích třetí generace. Nazývat jako širokopásmový kodek se vzorkovací frekvencí 16 kHz může vypadat jako troufalost, ale je třeba si uvědomit, že ve světě telefonie je vzorkování 16 kHz naprostý luxus. V každém případě kodek je to opravdu dobrý, při základním datovém toku 12650 bitů za sekundu je hlas (bez ruchu na pozadí) přenášen naprosto věrně, pouhým uchem jsem nebyl s to rozeznat jej od nekomprimovaného souboru se stejnou vzorkovací frekvencí. Dalším plusem pro kodek je, že referenční implementace v jazyce C je volně dostupná na webu 3GPP. Tato pozitiva a sociální jistoty trochu kalí ujištění, že kodek je patentován a jistá jeho využití je třeba licencovat (nezkoumal jsem, která).
Číst dále...
[ zobrazit záznam ] ( 4151 zobrazení ) trvalý odkaz související odkaz ( 3 / 14692 )
dumprtp6 - Next generation RTP dump 

Zase něco malého. Program dumprtp6 je náhradou za dnes již celkem zastaralý program dumprtp z balíku DVBtools. Oproti němu má tyto klíčové vlastnosti:

Key features:

- IPv4 and IPv6 support
- Source Specific Multicast (SSM) support
- RAW UDP mode (for non-rtp UDP streams)

Download: dumprtp6-0.3
[ zobrazit záznam ] ( 838 zobrazení ) trvalý odkaz související odkaz ( 3 / 13042 )
Archiv ČT a jeho nová verze 

EDIT: Update je zde a zde.

Už jsem tu jednou uváděl skript na získávání odkazu z iVysílání ČT. Od té doby se podoba archivu změnila, začali dokonce nabízet vysílání v plném PALu. Bohužel, čekal bych, že zavedou streamování videa ve flashi, podobně jako nova, nebo prima (stream.cz), kteréžto by bylo bez problému funkční. Vzhledem k tomu, že zůstali u dvojice Real media - Windows media, bylo na čase upravit původní skript.
#!/bin/bash

exec 2>/dev/null

URL="$1"
if (echo $URL | grep -qv '?streamtype'); then
URL="${URL}?streamtype=RL3"
fi
RAMURL=$(wget -O - "$URL" |grep '<param name="src"' | sed -r 's/.*value="([^"]+)".*/\1/')
RAWURL=$(wget -O - "$RAMURL")
echo $RAWURL
Tento program vrátí RTSP adresu streamu ve formátu RealMedia, defaultně v plném PALu. Bohužel jediný přehrávač, který si s použitým kodekem na mém AMD64 Gentoo poradil, byl realplayer.
Tak jsem se nakonec i přes odpor k M$ technologiím rozhodl zkusit skript adoptovat pro Windows Media verzi vysílání, kterou kupodivu zvládá i mplayer:
#!/bin/bash

exec 2>/dev/null

URL="$1"
shift
if (echo $URL | grep -qv '?streamtype'); then
URL="${URL}?streamtype=WM3"
fi

ASXURL=$(wget -O - "$URL" |grep '<param name="url"' | sed -r 's/.*value="([^"]+)".*/\1/')

mplayer -user-agent 'NSPlayer/0 (MPlayer; Linux; fuck MS discrimination)' -playlist "${ASXURL}" $*
Tento skript se používá trochu odlišně, díky "Válce agentů", kterou společnost Visual aktivně podporuje, je třeba mplayer přinutit, aby se hlásil jako jediný správný přehrávač. (Tímto děkuji uživateli petr_p za publikování řešení, zároveň jsem si od něj vypůjčil trošku ofenzivní text User-agenta.) Proto výstupem skriptu je rovnou spuštěný mplayer, kterému můžeme dodat další parametry na příkazovém řádku skriptu.
[ zobrazit záznam ] ( 1825 zobrazení ) trvalý odkaz související odkaz ( 3 / 16997 )
Multicast RTP to HTTP translator 

Opět jednoduchý prográmek z mé domácí dílny. Ačkoli jsem tunelování multicastu přes nepřátelské prostředí věnoval dost času, k uspokojivým výsledkům to nevedlo. Rozhodl jsem se tedy vzdát to a poslední míli mezi multicastovou sítí a jejím vzdáleným klientem překlenout unicastem. K takovému tunelování se sice dá použít VLC, ale zásadní nevýhodou pak je, že je trvale přihlášen k odběru všech multicastových skupin, i když je k nikomu netuneluje. Přepínání programů na dálku je taky na nic. Proto jsem napsal tento prográmek, který funguje jako malinkatý http server a teprve po příchodu HTTP požadavku se přihlásí k příslušné skupině a předává data. Snažil jsem se napsat to co nejvíc future-proof, takže to podporuje na obou stranách IPv4 i IPv6, nicméně jsem se nezabýval kompatibilitou se staršími a ne-GNU systémy, takže to pravděpodobně půjde zkompilovat jen na poměrně novém linuxu.

Download: rtp2httpd-0.4.tar.bz2

This program converts multicast RTP/UDP media into http stream. It acts as a tiny HTTP server. When client connect, pre-configured multicast RTP service is choosen by URL. Program then join pre-configured multicast address and translate incoming RTP data to HTTP stream. It's main purpose is to remotely watch multicast video and audio streams, when your internet connection in the first-mile (e.g. broadband router) does not support multicast routing. It supports IPv4 and IPv6 on either side, but at this moment, the code is not very portable, so it compiles on a current GNU/linux only.
[ zobrazit záznam ] ( 4962 zobrazení ) trvalý odkaz související odkaz ( 3 / 9084 )

<<První <Zpět | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | Další> Poslední>>