78 React-komponenter internationaliserade med @osd/i18n
0 kvarvarande hårdkodade strängar
Första icke-engelska locale-bidraget till Wazuh
Zrythm — Från 63% till 99.9%
Zrythm (digital audio workstation) gick från 63% till 99.9% svenska på en eftermiddag.
Komponent
Före
Efter
Strängar
zrythm (app)
63%
99.9%
569 nya
web
13%
77%
178 nya
accounts
50%
81%
26 nya
user-manual
8%
89%
1 408 nya
Totalt: 2 181 strängar översatta och uppladdade till Weblate.
Hittade också en segfault-bugg i Zrythm — appen kraschar vid svenska locale pga en trasig format-sträng i den medföljande .mo-filen (4 av 5 %s-platshållare → g_strdup_printf segfaultar).
review-po-v3 — Pipeline-förbättringar
Fem uppdateringar baserade på dagens arbete:
ts2po-artefakter — filtrerar bort false positives från Qt TS → PO-konvertering (317 → 38 FAIL)
Översatta platshållare — detekterar när sub-agenter översätter {endref} → {slutref}
”Vänligen” auto-fix — automatisk borttagning av DeepL:s bokstavliga ”Please”-översättning
DAW/musik-termer i brand-skip — plugin, fader, mixer, channel etc. flaggas inte längre som egennamn
DevOps/security-termer — dashboard, agent, endpoint, compliance etc. i whitelisten
parallel-worker — Filformat-validering
Patchade TR:s parallel-worker med validering som fångar felaktiga filer innan de kraschar review-po-v3:
ZIP-arkiv, JSON, XML/Qt TS, binärfiler — alla avvisas med tydligt felmeddelande
30 error-jobb i kön → 23 återhämtade efter omstart
Ever received a .vsdx file and had no way to open it? Microsoft Visio is expensive, Windows-only, and most online converters want you to upload your diagrams to some random server. There had to be a better way.
So I built one: Visio Viewer, a Chrome extension that renders Visio files directly in your browser. No cloud. No uploads. No Visio license. Everything runs locally.
What It Does
Drop a .vsdx file onto Chrome (or use the file picker), and you get a clean SVG rendering of your diagram. The viewer supports:
Multi-page navigation — browse all pages in a Visio document
Zoom & pan — scroll to zoom, drag to pan, fit-to-page button
Dark mode — because of course
URL interception — click a link to a .vsdx file and it opens in the viewer automatically
Open from URL — paste a URL to a remote .vsdx file
A large network overview diagram — zoomed out to 23%, all rendered client-sideA BPMN sample diagram with colored shapes and connectorsA detailed MikroTik CRS312 switch stencil — rendered as crisp SVG
How It Works
Under the hood, the extension uses libvisio-ng — a pure Python Visio parser I built — running inside Pyodide (a full CPython compiled to WebAssembly). The entire pipeline runs in a sandboxed iframe:
The extension intercepts .vsdx files (via drag & drop, file picker, or URL)
The file is passed to libvisio-ng running in Pyodide (Python in WASM)
libvisio-ng parses the OPC/XML structure and produces SVG output
The SVG is rendered in the viewer with zoom/pan controls
All processing happens locally in your browser. No data leaves your machine. It works completely offline once installed.
Jag har skickat en pull request till espeak-ng med stora förbättringar av det svenska uttalet. espeak-ng är den talsyntes som används av bland annat Orca (skärmläsaren i GNOME/Linux) och ligger till grund för i princip all TTS på Linux.
Vad var fel?
Svenska i espeak-ng har länge haft problem. Det mest uppenbara var att sje-ljudet (ɧ) — det karakteristiska svenska ljudet i ord som "sjö", "skjorta" och "stjärna" — var felmappat till tj-ljud (ɕ). Det innebar att "sju" lät som "tju" och "sjuk" som "tjuk". Inte direkt begripligt.
Dessutom saknades regler för vanliga svenska ljudkombinationer: dj (djur, djup), hj (hjärta, hjälm) och lj (ljus, ljud) uttalades bokstavligt istället för som /j/. Och suffixet -tion (station, funktion) fick helt fel uttal.
Fas 1 — Grundläggande uttalsregler
✅ sje-ljud: skj → /ɧ/ (var felaktigt /ɕ/)
✅ -tion/-tions: korrekta regler för detta vanliga suffix
✅ dj/hj/lj: nya regler för → /j/
✅ 230+ nya ord i ordlistan (nu totalt 899): veckodagar, månader, siffror, vanliga ord, förkortningar, ortnamn, tekniktermer
✅ 16 nya symboler: £, §, °, bråk, pilar, euro med mera
Fas 2 — Retroflexer ✅
Retroflexerna är nu implementerade och mergade. Svenska retroflexer (rt → ʈ, rd → ɖ, rn → ɳ, rl → ɭ) fungerar korrekt — det som gör att "barn" uttalas med ɳ och "gården" med ɖ, precis som i naturligt tal.
Fas 3–10 — Massiv expansion ✅
Efter retroflexerna fortsatte arbetet i åtta ytterligare faser:
✅ Fas 3–4: Vokalkorrigeringar — lång u (ʉː), bättre vokallängder, sje-ljud (ɧ) fixat genomgående
✅ Fas 5–6: Grammatik och prosodi — ”de/dem” → /dɔm/, ”det” → /deː/, fyra svenska intonationsmönster
4 svenska intonationsmönster (deklarativ, fråga, uppräkning, emfas)
Fonemfixar: sje-ljud ɧ korrigerat, lång u (ʉː) fixat
”de/dem” → /dɔm/, ”det” → /deː/
~50 nya uttalsregler i sv_rules
42 vokalpar med korrekt kvantitetsdistinktion (glas/glass, ful/full)
Ordinaltal 13:e–31:a med korrekt uttal
13 faser av förbättringar
Status
✅ Alla CI-tester gröna. Pull requesten väntar nu på review från espeak-ng-teamet. Detta är den största förbättringen av det svenska uttalet i espeak-ng:s historia — ordlistan har gått från ~170 till 1 197 ord i 13 faser, med helt nya uttalsregler, retroflexer, prosodijusteringar, sammansatta ord, lånord och korrekt sje-ljud.
Varför det spelar roll
espeak-ng är inte den snyggaste talsyntesen, men den är den viktigaste. Den är fri, öppen källkod, och den enda TTS som alla Linux-användare har tillgång till utan extra kostnad eller molntjänster. För synskadade användare som förlitar sig på Orca är detta deras röst. Att den rösten ska uttala svenska korrekt borde vara en självklarhet.
Det har hänt en hel del sedan förra releasen. Både libvisio-ng och VSDView har fått rejäla uppgraderingar, och gapet till det gamla C++-baserade libvisio har bara ökat.
libvisio-ng 0.6.0
Den här releasen handlar mycket om att hantera fler av Visios visuella funktioner korrekt — saker som det gamla C++-biblioteket aldrig implementerade.
Nya funktioner:
✅ Rich text — formaterad text i shapes renderas nu korrekt med fetstil, kursiv, teckenstorlek och färg
✅ Radiella gradienter — inte bara linjära längre, utan även radiella gradienter stöds nu fullt ut
✅ Bildinbäddning — inbäddade bilder (EMF, PNG, JPEG) i .vsdx-filer extraheras och renderas i SVG-output
✅ Type hints — hela kodbasen har fått type annotations, vilket gör det enklare att bidra och integrera
✅ Sphinx-dokumentation — ordentlig API-dokumentation genererad med Sphinx
✅ CI-pipeline — automatiserade tester och kvalitetskontroll vid varje commit
Testsviten har vuxit från 96 till 102 tester. Varje test validerar att en specifik Visio-fil konverteras korrekt — det är ingen leksak.
libvisio-ng finns nu på PyPI:
pip install libvisio-ng
Ren Python. Inga C++-beroenden. Inga systembibliotek att krångla med. Det bara funkar.
libvisio-rs — Rust-porten
Det som tidigare var ”nästa steg” är nu verklighet. libvisio-rs v0.1.1 är en fullständig Rust-port av libvisio-ng med C ABI via cbindgen-genererade headers — redo att droppa in som ersättare för C++ libvisio i LibreOffice och Inkscape.
✅ C ABI — cbindgen-genererade headers gör det möjligt att länka direkt från C/C++-projekt
✅ PyO3 Python-bindings — samma API som libvisio-ng, men med Rust-prestanda
Det här projektet startade för att C++-versionen av libvisio (som LibreOffice använder) hade stagnerat. Ingen aktiv utveckling sedan ~2018, bristfälligt stöd för teman, gradienter, skuggor och textformatering. Här är den fullständiga jämförelsen:
Funktion
C++ libvisio
libvisio-ng/rs
.vsdx-stöd
Grundläggande
✅ Fullt (teman, gradienter, skuggor)
.vsd-stöd (binärt)
Bra
✅ Fullt (NURBS, splines, bilder, lager)
Temafärger
❌
✅
Linjära gradienter
Delvis
✅
Radiella gradienter
❌
✅
Skuggor
❌
✅
Skraffering/mönsterfyllning
❌
✅
Rich text (blandade stilar)
Delvis
✅
Bildinbäddning
Delvis
✅
Konnektorer
Grundläggande
✅ Full med routing
Master shape-arv
Delvis
✅ Fullt
Hyperlänkar
❌
✅
Rundade rektanglar
❌
✅
Linjemönster (streckade m.m.)
Grundläggande
✅ Fullt
Fyllnadsmönster
❌
✅
Pilmarkörer
Delvis
✅
Tester
Begränsat
102
Språk
C++
Python + Rust + C ABI
Aktiv utveckling
❌ (senast ~2018)
✅
PyPI
❌
✅ libvisio-ng
crates.io
❌
✅ libvisio-rs
Homebrew
❌
✅ (via VSDView)
VSDView 0.5.0
VSDView är den grafiska Visio-läsaren som bygger på libvisio-ng. Version 0.5.0 är en massiv uppgradering med 15 nya funktioner:
✅ Zoom och panorering — scrolla och zooma fritt i diagrammet
✅ Sökfunktion — hitta shapes och text i dokumentet
✅ Shape-information — klicka på en shape för att se dess egenskaper
✅ Mätverktyg — mät avstånd direkt i diagrammet
✅ Export — spara som SVG, PNG eller PDF
✅ Lagerhantering — visa/dölj lager
✅ Minimap — överblick över hela dokumentet
…och mer
Den stora förändringen under huven är att VSDView nu helt har ersatt C++ libvisio med libvisio-ng. Tidigare krävdes libvisio-tools som systempaket — nu är allt inbyggt. 4000 rader gammal parser-kod ersattes med en 30-raders wrapper mot libvisio-ng. Resultatet: bättre rendering, enklare installation, och stöd för allt som libvisio-ng klarar.
Det finns också en Tauri-baserad nativapp (v0.2.0) med Alma TTS-integration.
Linux: .deb och .rpm i våra repos, eller pip install vsdview
PyPI:pip install vsdview
Integration i ekosystemet
Målet är att ersätta det ounderhållna C++ libvisio över hela open source-ekosystemet:
Inkscape: Extension inskickat som MR #718 — öppnar .vsd/.vsdx direkt i Inkscape via libvisio-ng
LibreOffice: Enhancement proposal inskickat för att ersätta C++ libvisio med libvisio-rs
Med libvisio-rs C ABI och cbindgen-headers kan projektet fungera som drop-in-ersättare för det gamla biblioteket. Python-versionen (libvisio-ng) driver redan VSDView och Inkscape-extensionen, medan Rust-versionen (libvisio-rs) riktar sig mot LibreOffice och andra C/C++-projekt.
Jag har tränat en egen svensk TTS-röst med Piper TTS. Hon heter Alma, uppkallad efter min dotter, och är tänkt att användas i appar riktade till barn med NPF (neuropsykiatriska funktionsnedsättningar).
Bakgrund
Barnen i vår familj har alla olika varianter av autism, ADHD och språkstörning. De appar jag bygger åt dem (autismappar.se) behöver talstöd — men de befintliga svenska TTS-rösterna låter antingen robotaktiga eller är helt enkelt inte anpassade för barn. Jag ville ha en röst som känns varm, tydlig och trygg.
Tekniken
Alma är finskiktad (finetunad) ovanpå KBLabs svenska VITS-modell med hjälp av Piper TTS träningsramverk. Träningen kördes på en NVIDIA RTX 4080 i ungefär 5500 epoker — det tog några dagar, men resultatet blev bra.
Piper är ett lätt, snabbt och helt lokalt TTS-system. Ingen molntjänst behövs. Det körs direkt på enheten, vilket är viktigt för integritet och svarstid — speciellt i appar för barn.
🎯 Före och efter — röstjämförelse
Här kan du höra skillnaden mellan de olika rösterna och våra förbättringar. Vi jämför fyra varianter: den omodifierade espeak-ng (systemets standardröst), vår förbättrade espeak-ng med retroflexer och bättre uttalsregler, Piper standard (sv_SE-nst-medium) och slutligen Alma — vår egna finjusterade röst med lånordsfix.
Lyssna särskilt på hur retroflexerna (rd, rn, rt) och engelska lånord uttalas.
Mening
espeak (före)
espeak (efter)
Piper std
Alma
Web Speech
”Hej, jag heter Alma och jag ska hjälpa dig idag.”
”Barnen lekte i gården hela lördagen.” 🎯 Retroflexer: barn→bɑːɳ, gården→goːɖen, lördagen→løːɖɑːgen
”Alla appar fungerar offline utan wifi.” 🎯 Lånord: offline→åfflajn, wifi→wajfaj
”Kan du peka på den röda bollen?” Enkel barnvänlig mening
💡 Nya exempelmeningar — visar fas 3–10
”De gick till Göteborg på onsdag för att handla köttbullar.” 🎯 de→/dɔm/, Göteborg, onsdag, köttbullar
”Det är riktigt viktigt att barnen äter frukost varje dag.” 🎯 det→/deː/, riktigt, viktigt
”Karin Andersson bor i Trollhättan och jobbar med IT-säkerhet.” 🎯 Egennamn, ortnamn, IT-termer
”Vill du starta din browser och ladda ner appen?” 🎯 Frågeintonation, lånord (browser, appen)
Vad hör du?
espeak-ng (före): Systemets standardröst — robotaktig och med fel uttal av retroflexer. ”Barnen” uttalas med separata r+n istället för retroflex ɳ.
espeak-ng (efter): Vår PR #2364 — retroflexer (ɳ, ɖ, ʈ) fungerar nu korrekt. Hör skillnaden i ”barnen”, ”gården” och ”lördagen”.
Piper standard: Neural röst (sv_SE-nst-medium) — mycket naturligare, men uttalar engelska lånord bokstavligt (”offline” som det stavas).
Alma: Vår finjusterade röst med fonetisk förbehandling — lånord uttalas korrekt (”åfflajn”, ”wajfaj”) och rösten är optimerad för barn.
Jämförelse: standardröst vs Alma
Här nedan kan du lyssna på samma meningar upplästa av standardrösten (sv_SE-nst-medium) och Alma. Meningarna innehåller engelska lånord som offline, wifi, screenshot och browser — ord som ofta förekommer i apparna och som nu uttalas korrekt tack vare fonetisk förbehandling.
”Alla appar fungerar offline, utan wifi eller internet.”
Standardröst:
Alma:
”Du kan ladda ner uppdateringar och ta en screenshot av dina resultat.”
Standardröst:
Alma:
”Öppna din browser och klicka på länken i ditt email.”
Standardröst:
Alma:
Nästa steg
Alma-rösten är redo att integreras i apparna på autismappar.se. Planen är att använda henne som standardröst i de appar som riktar sig till yngre barn. Modellen exporteras som ONNX och kan köras helt offline — inget moln, ingen latens, ingen dataläckage.
Längre exempel
Här är ett längre stycke med blandning av vanlig svenska och engelska lånord. Alma pratar lugnt och tydligt, i ett tempo som passar yngre barn.
Standardröst:
Alma:
Uttalförbättringar
Ett stort problem med svenska TTS-röster är engelska lånord. Ord som offline, wifi, screenshot och email uttalas bokstavligt — vilket låter helt fel. I barnens appar förekommer dessa ord överallt, så det behövde lösas.
Fonetisk förbehandling
Lösningen är en enkel men effektiv preprocessing-pipeline: innan texten skickas till Piper ersätts cirka 30 vanliga engelska lånord med svenska fonetiska stavningar. Till exempel:
offline → åfflajn
wifi → wajfaj
screenshot → skriinsjått
Samma pipeline funkar med både Piper och Web Speech API.
espeak-ng: svenska uttalsregler
Parallellt med den fonetiska kartläggningen har jag skickat in en pull request till espeak-ng med förbättrade svenska uttalsregler. Bland annat:
✅ Korrekta sje-ljud (sj, skj, stj, sch)
✅ Rätt hantering av -tion, gn-, dj-, hj-, lj-
✅ Över 899 ord i den svenska ordboken (10 faser av förbättringar)
espeak-ng är den fonemiserare som Piper använder under huven, så bättre regler där ger bättre uttal i Alma direkt.
Alma i GNOME Orca
Alma fungerar nu som röst i GNOME:s skärmläsare Orca via Spiel — GNOME:s nya talramverk. Det här är stort: för första gången kan svenska blinda och synskadade Linux-användare få en naturlig, neural svensk röst i sin skärmläsare.
Spiel ersätter det gamla speech-dispatcher-systemet och stödjer både espeak-ng och Piper-röster via D-Bus. Det betyder att Alma, som är en Piper-röst, dyker upp automatiskt som valbar röst i Orca när speech-provider-piper är installerat.
Vi har testat detta på Ubuntu 26.04 och Fedora 43. Spiel måste fortfarande byggas från källkod — det är inte paketerat i distributionerna ännu — men det fungerar. Alma hittas, väljs, och läser upp svensk text med sin vanliga varma röst, rakt in i Orca.
Det här är fortfarande tidigt — Spiel är under aktiv utveckling och infrastrukturen mognar — men riktningen är tydlig. En naturlig svensk röst i GNOME:s tillgänglighetsstack, helt lokalt, utan molntjänster. Det är precis vad som behövs.
When I started building VSDView — a GTK4 viewer for Microsoft Visio files — I initially relied on libvisio, the C++ library from The Document Foundation (TDF) that powers Visio import in LibreOffice. It worked, sort of. But as I pushed it harder with real-world diagrams, the cracks became impossible to ignore.
So I wrote my own parser. It started as VSDView’s built-in rendering engine, and has now been extracted into a standalone library: libvisio-ng.
Here’s why, and what the difference looks like in practice.
The Problem with libvisio (C++)
libvisio is a reverse-engineered parser. It was built primarily for LibreOffice’s document import pipeline, not for high-fidelity rendering. The limitations become obvious quickly:
No theme support — Visio’s theme system (QuickStyles, accent colors) is completely ignored. Shapes that rely on themes render as black outlines.
No fill colors — Most shape fills are simply missing. You get wireframes instead of diagrams.
No connectors/arrows — The connection lines between shapes? Gone.
No gradients or shadows — Visual polish completely absent.
Broken text positioning — Text lands in the top-left corner instead of being centered in shapes. Colors are wrong. Multi-line text collapses.
Dark theme destruction — If you’re running a dark desktop theme, libvisio renders white text on white backgrounds. Diagrams designed for light backgrounds become unreadable.
Side-by-Side Comparisons
Let me show you what this actually looks like. Same Visio files, rendered by both engines.
Network Architecture Diagram
A typical network topology with shapes, connectors, and labels:
libvisio-ng (Python) — fills, connectors, proper textlibvisio (C++) — no fills, no connectors, broken text
The difference is stark. libvisio-ng renders the full diagram with colored shapes, directional arrows, and properly formatted text. libvisio gives you a skeleton — outlines with misplaced, barely-legible labels and zero connection lines.
Comprehensive Feature Test
A test file exercising gradients, shadows, transparency, dashed borders, thick outlines, and connectors:
libvisio-ng — gradients, shadows, transparency, arrows ✓libvisio (C++) — missing fills, no shadows, no arrows
Mikrotik Network Equipment Stencil
A hardware stencil diagram with embedded images and detailed port layouts:
libvisio-ng — full stencil with embedded imageslibvisio (C++)
Feature Comparison
Feature
libvisio (C++)
libvisio-ng (Python)
Shape fills (solid)
❌
✅
Gradient fills
❌
✅
Theme/QuickStyle colors
❌
✅
Drop shadows
❌
✅
Transparency
❌
✅
Connectors & arrows
❌
✅
Text centering/alignment
❌
✅
Embedded images
⚠️ Partial
✅
Background pages
❌
✅
Layer visibility
❌
✅
Master shape inheritance
⚠️ Basic
✅ Full
StyleSheet cascade
⚠️ Partial
✅
Binary .vsd support
✅
✅
Zero C++ dependencies
❌
✅
pip install
❌
✅
Architecture: How libvisio-ng Works
libvisio-ng is a pure Python library with minimal dependencies (olefile for binary .vsd format). For .vsdx files (the modern XML-based format), it has zero external dependencies — it reads the ZIP archive directly and parses the XML with Python’s standard library.
The rendering pipeline:
Parse ZIP — Extract pages, masters, themes, media, stylesheets, and relationships
Resolve inheritance — Walk the master shape → stylesheet → theme chain to resolve every visual property
Generate SVG — Convert Visio’s coordinate system to SVG paths, applying transforms, fills, gradients, shadows, and text layout
Export — Optionally rasterize to PNG/PDF via CairoSVG or rsvg-convert
The key insight that makes libvisio-ng work where libvisio doesn’t: Visio’s theme system is not optional. Modern .vsdx files store almost nothing as explicit colors — everything references themes via THEMEVAL(), QuickStyleFillColor, and accent indices. If you don’t resolve those references, you get black wireframes. libvisio-ng fully resolves the theme chain.
libvisio-ng is at version 0.1.0 — early but already handling complex real-world diagrams significantly better than libvisio. It powers the rendering in VSDView 0.4.6 and is available as a standalone library on GitHub.
If you’ve been frustrated by libvisio’s output quality — or if you need to parse Visio files in Python without C++ dependencies — give it a try.
Nytt projekt! makeBread är en enkel och snygg recepthanterare för brödbakningsmaskiner, byggd med PySide6/Qt6.
🍞 Vad kan den?
103 inbyggda recept — allt från klassiskt vitt bröd till glutenfritt och surdeg
Sök och filtrera — fulltext med SQLite FTS5
Favoritmarkering ⭐ — markera dina bästa recept
Slumpa recept 🎲 — när du inte kan bestämma dig
Enhetsomvandling — växla mellan metriskt, US cups och Imperial
Skriv ut — snyggt formaterade utskrifter
Bildstöd — lägg till egna bilder på resultatet
Svenska och engelska — fullt översatt
📦 Installation
# Via pip/pipx
pipx install makebread
# Via apt (Debian/Ubuntu)
sudo apt install makebread
# Via dnf/yum (Fedora/RHEL)
sudo dnf install makebread
📸 Varför?
Alla receptappar är antingen överdrivet komplexa eller fulla av reklam. makeBread gör en sak och gör det bra: hålla koll på dina brödrecept. Ingen molntjänst, inga konton, bara en lokal SQLite-databas med dina recept.
Öppen källkod under GPL-3.0. Senaste versionen är v0.3.0 med favoritfunktion och fullständig svensk översättning.
Jag har släppt version 0.8.0 av Kodi Subtitle Translator med en efterfrågad funktion: stöd för externa undertextfiler!
Nytt i v0.8.0
Externa undertexter – Översätt .srt, .ass, .ssa och .vtt-filer som ligger bredvid din mediefil
Välj källa – Dialog för att välja mellan inbäddade undertexter, externa filer eller bläddra till egen fil
Smartare detektering – Hittar automatiskt undertextfiler med samma namn som videon
Så fungerar det
När du spelar upp en film eller serie i Kodi:
Tillägget detekterar om det saknas undertexter på ditt språk
Du får välja källa: inbäddade, externa eller bläddra
Undertexterna översätts automatiskt via din valda tjänst
Resultatet cachas så du slipper vänta nästa gång
Översättningstjänster
Gratis (ingen API-nyckel)
LibreTranslate – Öppen källkod, kan självhostas
MyMemory – 1000 ord/dag gratis
Lingva Translate – Google Translate utan spårning
Betalda (bättre kvalitet)
DeepL – Bäst kvalitet för europeiska språk
DeepL Free – 500k tecken/månad gratis
Google Cloud Translation
Microsoft Translator
25 språk
Tillägget stöder översättning till och från 25 språk inklusive svenska, norska, danska, finska, tyska, franska, spanska, italienska, portugisiska, polska, nederländska, ryska, japanska, kinesiska och koreanska.
Jag har nu börjat att översätta mediaspelaren Boxee.
Boxee är en funktionsrik mediaspelare baserad på öppen källkod (XBMC) och kan köras på datorer och dedicerade hårdvaruplattformar (D-Link Boxee Box, Iomega TV with Boxee samt upplåsta Apple TV). Det stora utbudet av anpassade program gör också detta till en intressant mediaspelare.