Help
Waarvoor MusicBee UPnP Plugin dient
Een open-source plugin voor MusicBee die uw bibliotheek verbindt met de UPnP/DLNA apparaten op uw thuisnetwerk — telefoons, smart-tv's, hi-fi streamers, netwerkluidsprekers — zonder cloud en zonder login. Het is een fork van Steven Mayall's originele UPnP-plugin, opnieuw opgebouwd rond het aangenaam maken van het bladeren door een grote, gevarieerde bibliotheek vanaf een ander apparaat.
Twee dingen onderscheiden deze fork van een gewone UPnP-server, en dat zijn de redenen om ervoor te kiezen:
- Het publiceert de hele MusicBee — niet alleen "Muziek". Uw Filters, Podcasts, Audioboeken, Radiozenders, de Inbox en uw Afspeellijsten verschijnen allemaal als hun eigen doorzoekbare containers op het andere apparaat, naast de muziek. De meeste servers tonen een platte muziekbibliotheek en niets anders.
- Elk van deze knooppunten kan individueel worden getoond, verborgen en gevormd. U beslist welke knooppunten een apparaat ziet, en u geeft elk knooppunt zijn eigen ontdekkingspad — de route die u erdoorheen navigeert (Albumartiest → Album → Nummers, een platte nummerslijst, op Genre, op Jaar…). Een bibliotheek met 300.000 nummers bladert uiteindelijk als een goed georganiseerde bibliotheek in plaats van een platte datadump.
Onder deze twee hoofdideeën is de plugin georganiseerd rond één structureel feit: MusicBee kan drie verschillende netwerkrollen spelen, en elk scherm in het instellingendialoogvenster behoort tot één ervan. Begrijp de drie rollen en de rest van het dialoogvenster verklaart zichzelf:
- Server — andere apparaten bladeren door de MusicBee-bibliotheek en halen er nummers uit. Dit is waar de twee bovengenoemde hoofdfuncties zich bevinden.
- Renderer — MusicBee wordt een doel waar andere apps naar kunnen afspelen, zoals een netwerkluidspreker.
- Controlepunt — MusicBee speelt zijn eigen audio af naar een externe luidspreker of streamer.
U kunt één rol of alle drie gebruiken. Schakel alleen in wat u nodig heeft. In deze handleiding wordt elke instelling uitgelegd direct naast de functie waartoe deze behoort — er is geen aparte "instellingen"-lijst om te raadplegen.
Installatie
- Download
mb_UPnP_yaiol.dllvan de releasepagina. - Kopieer het naar uw MusicBee plugins map, meestal
C:\Users\<u>\AppData\Roaming\MusicBee\Plugins\. - Herstart MusicBee.
- Open Bewerken → Voorkeuren → Plugins, zoek MusicBee UPnP Plugin en klik op Configureren.
De yaiol DLL heeft een aparte bestandsnaam, zodat deze op schijf kan staan en naast de originele plugin kan draaien zonder conflicten.
Server — anderen bladeren door uw bibliotheek
UPnP is een protocol voor audiotoestellen om elkaar te vinden en aan te sturen via een lokaal netwerk, en daarbinnen speelt elke deelnemer een gedefinieerde rol. Met de Server-rol ingeschakeld (de UPnP Server-schakelaar), speelt MusicBee de rol van Mediaserver: het beantwoordt ontdekkingsverzoeken op uw LAN en dient zijn bibliotheek aan elk apparaat dat daarom vraagt. Vanaf het andere apparaat ziet u een mediaboom en tikt u om af te spelen; de audio streamt rechtstreeks van MusicBee's ingebouwde HTTP-server naar het apparaat. MusicBee is slechts de bron — het andere apparaat heeft de leiding.
Waarom u het zou gebruiken. Het verandert de ene pc die uw hele collectie bevat in een netwerkbron die elk ander gadget kan bereiken, zonder bestanden te kopiëren of ergens in te loggen. Dit is de helft van de plug-in waarin de fork het meest investeert, en het is waar de twee belangrijkste functies zich bevinden — wat u publiceert (hieronder) en hoe elke node is gevormd.
Wanneer u het moet uitschakelen. Alleen als u MusicBee nooit vanaf een ander apparaat doorbladert. De rol is onafhankelijk van de andere twee; u kunt de bibliotheek serveren en de renderer- en controlepuntrollen nog steeds uitschakelen.
Een paar serverbrede instellingen staan naast de schakelaar: de servernaam die andere apparaten in hun lijst tonen, de netwerkinterface en poort waaraan MusicBee bindt (zie Elkaar vinden op het netwerk), en een max-verbindingen limiet op hoeveel gelijktijdige streams de server tegelijkertijd zal serveren.

Instellingen
| Besturing | Wat het doet |
|---|---|
| UPnP-server: Schakel UPnP-apparaten in om te bladeren en af te spelen vanuit de MusicBee-bibliotheek | Hoofdschakelaar voor de Server-rol — laat UPnP-apparaten bladeren en afspelen vanuit de MusicBee-bibliotheek. |
| Servernaam | De naam die andere apparaten voor MusicBee tonen wanneer ze het ontdekken. |
| Max. verbindingen | Maximaal aantal gelijktijdige bestandsstreams dat de server zal serveren (standaard 16, bereik 1–256). Verhoog dit als een apparaat dat veel parallelle verzoeken afvuurt de ⚠ Max Conn-badge activeert. Wordt van kracht na een herstart. |
| Speelstatistieken bijwerken in MusicBee | Telt nummers die via UPnP zijn afgespeeld mee voor MusicBee's afspeeltellingen en laatst afgespeelde tijdstempels. |
Publiceer alles van MusicBee, niet alleen Muziek
Dit is de eerste van de twee belangrijkste functies van de fork. Een gewone UPnP-server biedt het netwerk één platte 'Muziek'-bibliotheek aan. Deze toont elk inhoudsgebied dat MusicBee organiseert, elk als een eigen container op het hoogste niveau op het browse-apparaat.
De zeven dingen die MusicBee kan publiceren
Wanneer een apparaat door MusicBee bladert, kan de root waarop het terechtkomt al deze dingen naast elkaar aanbieden:
- Muziek — uw hoofdbibliotheek, vormgegeven zoals u wilt (zie ontdekkingspaden hieronder).
- Filters — de filtertabbladen die u al gebruikt bovenaan MusicBee's hoofdweergave (
Music,ALL,FAV, een Jazz-filter, een Klassiek-filter, wat u ook hebt ingesteld) verschijnen als toegangspunten, wat weerspiegelt hoe u al over uw bibliotheek denkt. Filters worden live gelezen uit dezelfde bestanden die MusicBee zelf gebruikt, zodat ze gesynchroniseerd blijven zonder configuratie. - Podcasts — uw podcastabonnementen, elk openend naar de afleveringen, met de abonnementsillustraties meegenomen.
- Audioboeken — MusicBee's Audioboeken-categorie.
- Radio — uw opgeslagen internetradiostations.
- Inbox — MusicBee's Inbox met nieuw toegevoegde, nog niet gearchiveerde nummers.
- Afspeellijsten — uw MusicBee-afspeellijsten.
Omdat deze rechtstreeks uit MusicBee komen, hebben ze geen aparte configuratie nodig — abonneer u op een podcast of voeg een station toe in MusicBee en het is bereikbaar vanaf het netwerk de volgende keer dat het apparaat bladert. Of elk ervan daadwerkelijk verschijnt, en de vorm die het aanneemt, is de taak van de volgende functie.
Standaard bevinden Filters en Afspeellijsten zich in een eigen nette omslagmap. Of elke bron daadwerkelijk verschijnt, waar het zich bevindt — inclusief het vastzetten van de meest gebruikte bovenaan in de bladerroot, gegroepeerd met hun eigen soort — en de vorm die het aanneemt, wordt allemaal per knooppunt beslist door de volgende functie.
Eerdere versies van deze hulp vermelden "geen podcast root container" als een beperking. Dat is niet langer waar — podcasts worden gepubliceerd zoals elke andere bron.
Elk knooppunt tonen, verbergen en vormgeven
Dit is de tweede belangrijke functie, en degene die de fork zijn naam geeft. Het publiceren van zeven bronnen zou ruis zijn als je ze niet kon beheren — dus elk blootgesteld knooppunt is onafhankelijk schakelbaar, vast te pinnen aan de root, en heeft zijn eigen ontdekkingspad.
Je beheert dit alles op het tabblad Weergave van het instellingendialoogvenster, dat de hele blootgestelde boom als een checklist toont. Het patroon is altijd hetzelfde: vink de knooppunten aan waarop je wilt reageren, gebruik vervolgens de besturingselementen naast de boom om ze allemaal tegelijk in te stellen — maak ze zichtbaar of verborgen, pin ze bovenaan de boom, of pas een padtemplate toe. Zo kun je Muziek, Filters en Afspeellijsten blootstellen, de Inbox en Radio verbergen, je Jazz-filter aan de root vastpinnen, en Podcasts een vorm geven op basis van abonnement — elk onafhankelijk.

Elke node tonen, verbergen en vastzetten
Twee schakelaars bepalen of en waar een node verschijnt, los van hoe deze is gevormd. Beide bevinden zich op het tabblad Weergave als driestanden-selectievakjes die werken op elke node die u in de boom hebt aangevinkt:
- Zichtbaar — of apparaten de node überhaupt zien. Vink het uit om een node te verbergen; het blijft in je bibliotheek, het wordt simpelweg niet meer geadverteerd. (Omdat het werkt op de aangevinkte set, toont het selectievakje een gearceerde "gemengde" status wanneer je selectie deels zichtbaar, deels verborgen is.) Verborgen nodes worden grijs weergegeven in de boomstructuur — en een map wordt grijs zodra elke node erin verborgen is — zodat je in één oogopslag ziet wat nog steeds zichtbaar is.
- Hoofdniveau — of de node ook hoog in de bladerroot is vastgezet. Vastzetten is additief: de node verschijnt nog steeds in zijn gebruikelijke omslagmap en krijgt een kopie bovenaan de root, gegroepeerd met zijn eigen soort — een vastgezet filter bevindt zich direct onder de map Filters, een vastgezette afspeellijst direct onder de map Playlists — zodat je snelkoppelingen naast de dingen blijven waar ze bij horen. Vastgezette nodes worden gemarkeerd met een ★ in het dialoogvenster zodat je in één oogopslag kunt zien welke zijn opgetild.
Wanneer een filter of afspeellijst aan de root is vastgezet, kan het moeilijk zijn deze te onderscheiden van een normale bron op hoofdniveau, dus u kunt een kort voorvoegsel toevoegen aan de weergegeven naam (ingesteld op het tabblad Bibliotheekopties). Het voorvoegsel is letterlijk — wat u ook typt, wordt woordelijk voor de naam geplaatst, dus voeg uw eigen spatie toe als u die wilt.
Uitgewerkt voorbeeld. Je navigeert meestal via je Jazz-filter en je Friday Night-afspeellijst, beide momenteel verborgen in de wrappermappen Filters en Playlists.
Je vinkt beide knooppunten in de View-boom aan en klikt op Top level. Elk toont nu een ★ in het dialoogvenster. Op het browse-apparaat verschijnen ze nog steeds in hun wrappermappen zoals voorheen, maar krijgen ze ook een kopie hoog in de root, elk naast zijn eigen soort: het vastgezette Jazz-filter bevindt zich direct onder de map Filters en de vastgezette Friday Night-afspeellijst direct onder de map Playlists. Met het filtervoorvoegsel ingesteld op Filter: en het afspeellijstvoorvoegsel op Playlist: , lezen de twee vastgezette kopieën Filter: Jazz en Playlist: Friday Night — onderscheiden van hun kopieën in de wrapper en elk naast de map van zijn eigen soort. Vink Top level voor een van beide uit en de vastgezette kopie verdwijnt, waardoor de kopie in de wrapper-map onaangeroerd blijft.
Dit vervangt de oude globale schakelaars "filters op root weergeven" / "afspeellijsten op root weergeven": vastzetten is nu een keuze die u node per node maakt, voor elke bron, en niet een alles-of-niets-schakelaar voor filters en afspeellijsten.
Instellingen
| Control | Wat het doet |
|---|---|
| Zichtbaar | Toont of verbergt elk aangevinkt knooppunt. Verborgen knooppunten blijven in uw bibliotheek, maar worden niet geadverteerd naar apparaten. Grijze 'gemengde' status wanneer de selectie gedeeltelijk zichtbaar is. |
| Hoofdniveau | Pint ook elk aangevinkt knooppunt hoog in de bladerroot, gegroepeerd op soort — filterpins onder de map Filters, afspeellijstpins onder de map Playlists (additief — het knooppunt behoudt ook zijn normale plaats). Vastgepinde knooppunten tonen een ★ in het dialoogvenster. |
| Filtervoorvoegsel (indien op rootniveau) | Een letterlijk tekstvoorvoegsel dat voor de naam van een filter wordt geplaatst wanneer het aan de root is vastgepind (helpt de vastgepinde kopieën te groeperen). |
| Afspeellijstvoorvoegsel (indien op rootniveau) | Een letterlijk tekstvoorvoegsel dat voor de naam van een afspeellijst wordt geplaatst wanneer deze aan de root is vastgepind. |
Ontdekkingspaden — de drill-down route van elk knooppunt
Een ontdekkingspad is de route die een browser binnen een knooppunt aflegt. Hetzelfde knooppunt kan worden gepresenteerd als Albumartiest → Album → Nummers, of als een enkele platte lijst met nummers, of gegroepeerd op Genre en vervolgens op Artiest, of op Jaar. Een pad is opgebouwd uit één of meer niveaus (het veld waarop elk niveau groepeert) eindigend in een blad (wat het diepste niveau toont — albums en vervolgens hun nummers, of een platte lijst met nummers). Een knooppunt kan zelfs meerdere paden tegelijk bevatten, zodat het meer dan één manier biedt om binnen te komen.
Verschillende inhoud wil verschillende vormen, en de verkeerde vorm maakt een knooppunt onbruikbaar. Muziek wil groepering op albumartiest; een afspeellijst wil een platte geordende lijst; podcasts willen hun abonnementen. Elk knooppunt krijgt het juiste antwoord omdat elk zijn eigen pad heeft.
Uitgewerkt voorbeeld. Je hebt een Jazz-filter met 5.000 nummers en een "Friday Night"-afspeellijst met 30 nummers, beide zichtbaar.
- Voor het Jazz-filter pas je een sjabloon toe waarvan het pad Albumartiest → Album → Nummers is. Op het apparaat drill je: artiesten, dan de albums van die artiest, dan de nummers van het album in schijf- en nummer volgorde.
- Voor de afspeellijst pas je in plaats daarvan het sjabloon Platte Nummers toe. Als je het opent, krijg je de 30 nummers in afspeellijstvolgorde, zonder artiest- of albumniveau ertussen — precies wat een afspeellijst zou moeten zijn.
Dezelfde plug-in, hetzelfde dialoogvenster, twee knooppunten, twee totaal verschillende vormen — omdat het pad een eigenschap van het knooppunt is, niet een globale instelling. Je kunt de lay-out van een knooppunt op het apparaat niet voorspellen zonder te weten welk sjabloon het draagt; daarom moet dit worden uitgelegd.
Een knooppunt ontvangt niet zomaar een kopie van een sjabloon — het volgt het. De View-boom toont welk sjabloon elk knooppunt volgt, direct na de naam van het knooppunt, en het bewerken van een sjabloon op het tabblad Paden verandert onmiddellijk de vorm van elk knooppunt dat het volgt — geen herhaalde toepassing knooppunt voor knooppunt. Het toepassen van een sjabloon op een verborgen knooppunt maakt het ook weer zichtbaar: toepassen is het gebaar "toon me dit, zo gevormd", terwijl verbergen blijft bij het selectievakje Zichtbaar. Elke sjabloonrij toont een live (n) telling van de knooppunten die het volgen, en een sjabloon kan alleen worden verwijderd als die telling nul is — de verwijderknop blijft uitgeschakeld zolang iets het sjabloon volgt, zodat een knooppunt nooit wees kan worden door een verwijdering. Om precies te zien welke knooppunten een sjabloon volgen, filtert de trechterknop naast de View-boom de boom tot alleen die knooppunten; het selecteren van een ander sjabloon filtert opnieuw, en het uitschakelen van de trechter herstelt de volledige boom. Het verwijderen van een ongebruikt sjabloon blijft nu ook behouden — de meegeleverde standaardinstellingen worden niet langer stilletjes opnieuw gemaakt de volgende keer dat de plug-in wordt geladen.
Wanneer een pad eindigt in het blad Album → Nummers, beslis je ook wat telt als één album. In plaats van strikt te groeperen op albumtitel, kies je één of meer velden — Album, Sorteer Album, Jaar, Albumartiest — die samen bepalen welke nummers samensmelten tot één album, hoe de titel ervan luidt, en de volgorde waarin de albums verschijnen, elk veld sorteerbaar oplopend of aflopend. Het toevoegen van Albumartiest houdt twee albums met dezelfde naam van verschillende artiesten gescheiden; het toevoegen van Jaar aflopend geeft de albums van een artiest nieuwste-eerst weer. Wanneer je groepeert op jaar, biedt MusicBee twee velden die de eigen velden weerspiegelen — Jaar, de volledige datumtag (die een hele datum kan bevatten zoals 2024-03-15), en Jaar (jjjj), alleen het viercijferige jaar — dus het kiezen van Jaar (jjjj) verzamelt elke release van een jaar samen in plaats van het te splitsen op exacte datum.
De standaardinstellingen zijn verstandig — nieuwe filters worden gevormd door albumartiest, afspeellijsten en de Inbox krijgen verstandige standaardinstellingen — dus voor het algemene geval verander je niets. Gebruik het tabblad Weergave wanneer je een bepaald knooppunt anders wilt vormgeven.
Instellingen
Je bouwt benoemde, herbruikbare padsjablonen op het tabblad Paden en past ze vervolgens toe op knooppunten op het tabblad Weergave.

| Besturingselement | Wat het doet |
|---|---|
| Toepassen op geselecteerde eindpunten | Zorgt ervoor dat elk knooppunt dat je in de boom hebt aangevinkt het momenteel geselecteerde sjabloon volgt (en maakt het opnieuw zichtbaar als het verborgen was). |
| Alles uitvouwen / Alles samenvouwen | Vouw de hele eindpuntboom uit of in. |
| Toon alleen de knooppunten die overeenkomen met de geselecteerde sjabloon | De trechtertoggle: filtert de eindpuntboom tot alleen de knooppunten die het geselecteerde sjabloon volgen. Selecteer een ander sjabloon om opnieuw te filteren; schakel uit om de volledige boom te herstellen. |
| Sjabloon | Het benoemde padsjabloon dat wordt bewerkt. |
| ↑ / ↓ | Verplaats het geselecteerde sjabloon omhoog of omlaag in de lijst, om de volgorde van je sjablonen te bepalen. |
| Groeperen op | Het/de veld(en) waarop het niveau groepeert (bijv. Albumartiest). |
| Blad | Wat het diepste niveau toont. |
| Album → Nummers (AN) | Bladmodus: Album → Nummers — drill door albums naar hun nummers. |
| Platte Nummers (N) | Bladmodus: Platte Nummers — een enkele platte lijst met nummers. |
| [Alle nummers] op elk niveau opnemen | Voegt een [Alle Nummers] snelkoppeling toe op elk niveau. Alleen getoond in de modus Album → Nummers. |
| Album groeperen op | Definieert wat telt als één album, hoe de titel ervan luidt, en de volgorde waarin albums verschijnen — kies één of meer velden (Album, Sorteer Album, Jaar, Albumartiest…), elk met zijn eigen oplopende/aflopende toggle. Alleen getoond in de modus Album → Nummers. |
| Toevoegen / Verwijderen | Voeg een pad toe aan of verwijder een pad uit het sjabloon. |
Paden zijn getypt naar het knooppunt waar ze bij passen
Niet elk veld betekent iets voor elk type knooppunt. Een radiostation heeft geen album of jaar; een podcastaflevering heeft een abonnement, een map en een publicatiedatum, maar geen albumartiest. Dus elk pad behoort tot een van de drie categorieën — Standaard (uw muziek, filters, audioboeken, inbox en afspeellijsten, die allemaal volledige tags bevatten), Radio, of Podcast — en die categorie bepaalt twee dingen tegelijk: welke velden u kunt groeperen op, en op welke knooppunten het pad kan worden toegepast.
Op het tabblad Paden wordt de sjabloonlijst in twee banden getekend: Standaard — waar uw eigen sjablonen leven, en waar elk nieuw sjabloon wordt gemaakt — en een Gereserveerde band met de Radio- en Podcasts-sjablonen. Terwijl u een Standaard sjabloon bewerkt, biedt het veldmenu alles; een Radio sjabloon biedt alleen de velden die een station daadwerkelijk heeft; een Podcast sjabloon alleen wat een aflevering heeft — de map, het abonnement en het publicatiejaar. Op het tabblad Weergave licht het toepassen van een sjabloon alleen de knooppunten op die het past — de rest wordt grijs en kan niet worden aangevinkt — dus een Standaard pad kan nooit op de Radio- of Podcasts-knooppunten terechtkomen.
In feite past u nooit iets toe op Radio of Podcasts: elk is permanent gekoppeld aan het sjabloon van zijn categorie. Hervorm het Radio- of Podcasts-sjabloon op het tabblad Paden en het knooppunt volgt vanzelf; met een Gereserveerd sjabloon geselecteerd, is de knop Toepassen eenvoudigweg uitgeschakeld, omdat er niets is om toe te passen. Dit voorkomt dat u een pad bouwt dat stilletjes niets produceert door te groeperen op een veld dat het knooppunt niet kan vullen — en aangezien een gevolgd sjabloon nooit kan worden verwijderd (zie Ontdekkingspaden hierboven), zijn de Radio- en Podcasts-sjablonen er altijd om te hervormen.
Artiesten gesorteerd op hun sorteernaam
Binnen elk muziek-vormig knooppunt worden artiesten gegroepeerd en alfabetisch gerangschikt op basis van de tag Sort Album Artist, niet op basis van de weergavenaam. Dit is het deel dat mensen verrast, dus hier is precies wat er gebeurt.
Uitgewerkt voorbeeld. Stel dat een nummer is getagd met:
- Artist =
Bob Dylan- Sort Album Artist =
Dylan, BobIn de browsestructuur wordt Dylan gearchiveerd onder de letter D (van
Dylan, Bob), niet onder B (vanBob Dylan). De sorteertag bepaalt zowel de groepering als de alfabetische positie, precies zoals een hifi-browser of een platenzaak het zou archiveren.
Het is automatisch en wordt volledig aangestuurd door uw bestaande MusicBee-tags — er is niets te configureren.
Tags met meerdere waarden waaieren uit
Wanneer de Albumartiest (of het Genre) van een nummer meer dan één waarde bevat, verschijnt het nummer onder elke waarde afzonderlijk, in plaats van één samengevoegd item te creëren.
Uitgewerkt voorbeeld. De Albumartiest van een nummer bevat twee waarden:
yaiol; Ars Ricercata. Dat nummer verschijnt onder zowelyaiolalsArs Ricercata— één keer in de tak van elke artiest — in plaats van onder één enkele nep-artiest "yaiol; Ars Ricercata". Tags voor artiesten met meerdere waarden waaieren op dezelfde manier uit als tags voor genres met meerdere waarden.
Net als groepering op sorteernaam, is dit automatisch en tag-gestuurd.
Lange lijsten groeperen op eerste letter
Als een niveau te lang wordt om comfortabel te scrollen op een telefoon, kan het groeperen op eerste letter — een laag met A, B, C, … boven de items invoegen, zodat u eerst een letter kiest. Dit wordt per veld ingesteld binnen een sjabloon, vanuit het contextmenu van het veld: [Veld] splitsen op eerste letter. Laat het uitgeschakeld voor korte lijsten; schakel het in voor de niveaus — meestal artiesten — waar de lijst enorm is.
Bladeren door een tag als een geneste boom
Sommige tags bevatten een hiërarchie in één waarde met een scheidingsteken — een Groepering-tag van Jazz/Cool Jazz, een aangepast genre van Electronic/Ambient/Drone. Standaard is die hele string één platte invoer, dus de structuur die u in de tag hebt gecodeerd, gaat verloren. Markeer het veld als hiërarchisch en de plug-in splitst elke waarde op een scheidingsteken dat u kiest en verandert het in een drill-down boom — u kiest Jazz, dan Cool Jazz, precies zoals de tag is geschreven.
U stelt dit in op het tabblad Bibliotheekopties: kies een veld, typ het ene teken dat de niveaus scheidt (bijvoorbeeld /), en voeg het toe aan de lijst. Het wordt dan toegepast overal waar dat veld wordt gebruikt als groeperingsniveau in een ontdekkingspad. Nummers die zijn getagd op een tak in plaats van een blad — alleen getagd Jazz, zonder subgenre — verschijnen onder een haakjes [Jazz]-vermelding naast de diepere takken, zodat niets verborgen blijft. Een tak die slechts één kind bevat, klapt automatisch in (dezelfde één-keuze-regel als overal elders), en ; kan niet worden gebruikt als scheidingsteken — dat is MusicBee's eigen scheidingsteken voor meerdere waarden, dus een waarde zoals Rock; Jazz/Cool Jazz wordt eerst gesplitst in de twee tags, waarna elke tag wordt doorgeboord.
Uitgewerkt voorbeeld. Uw nummers dragen een Groepering-tag zoals
Jazz/Cool Jazz,Jazz/Hard BopenClassical/Baroque, en een ontdekkingspad dat groepeert op Groepering. Plat, de knoop toont drie lange vermeldingen. Markeer Groepering hiërarchisch met/, en dezelfde knoop opent nu naar Jazz en Classical; het openen van Jazz onthult Cool Jazz en Hard Bop. Een nummer dat alleenJazzis getagd, verschijnt onder een [Jazz]-vermelding ernaast. U kunt deze lay-out niet voorspellen uit de tag alleen — het hangt volledig af van welk veld u hebt gemarkeerd en met welk scheidingsteken — dus het is de moeite waard om het bewust in te stellen.

Instellingen
| Besturingselement | Wat het doet |
|---|---|
| Hiërarchische velden | De lijst met velden die worden weergegeven als een drill-down boom, elk gekoppeld aan zijn één-teken scheidingsteken. Kies een veld, typ het scheidingsteken (niet ;), en voeg het toe; het veld boort dan niveau-voor-niveau door overal waar een ontdekkingspad erop groepeert. |
Niveaus met één keuze klappen vanzelf in
Wanneer een groeperingsniveau slechts één item bevat voor wat u bekijkt, slaat de plug-in dit over in plaats van u een map te laten openen die een enkele map bevat — u gaat direct naar de volgende echte keuze. Er is niets te configureren; het gebeurt automatisch, op elk pad.
Uitgewerkt voorbeeld. Uw pad groepeert op Record Type → Album → Tracks. Een artiest die alleen maar LP's heeft uitgebracht, zou u anders een enkele map Record Type → LP laten openen om de albums te bereiken. In plaats daarvan brengt het openen van die artiest u direct naar de albums — het overbodige niveau verdwijnt voor die artiest, terwijl een artiest met LP's en EP's nog steeds de keuze voor Record Type toont. Meerdere niveaus met één item achter elkaar klappen samen, en een niveau met de eerste letter met slechts één letter in het spel verdwijnt op dezelfde manier.
Albumminiaturen in de bladerstructuur
Albums nemen hun illustraties mee in de bladerrespons, zodat apparaten die miniaturen in hun lijsten tonen, deze ook daadwerkelijk weergeven. (De originele plug-in koppelde alleen illustraties aan individuele nummers, dus albumlijsten werden als platte tekst weergegeven.) Niets te configureren — het reist gewoon mee met het album.
Zoeken en willekeurig afspelen vanaf het apparaat
De meeste bedieningsapps plaatsen een zoekvak en een "willekeurige" of "shuffle" map naast de bladerboom. Beide bereiken MusicBee als hetzelfde type UPnP-verzoek, en beide worden live beantwoord vanuit uw bibliotheek in plaats van vanuit een vooraf gebouwde index — dus een nummer dat u een minuut geleden opnieuw heeft getagd, wordt meteen gevonden.
Zoeken komt overeen met titel of artiest. Een titelzoekopdracht kijkt naar de tracktitel wanneer uw app naar tracks zoekt en naar de albumtitel wanneer deze naar albums zoekt. Een artiestenzoekopdracht komt overeen met de artiest van de track of de albumartiest van het album, dus een compilatie verschijnt, ongeacht of u de naam van de uitvoerder of de naam waaronder het album is gearchiveerd typt. Resultaten komen pagina voor pagina terug terwijl u scrolt, zodat een term die duizenden tracks overeenkomt, responsief blijft in plaats van vast te lopen of terug te keren naar de eerste resultaten.
Voorbeeld. U zoekt naar
Bluevanuit de albumweergave van uw bedieningsapp. U krijgt de albums die Blue heten — Kind of Blue, Blue Train — en niet elk album dat toevallig een track genaamd "Blue" bevat. Schakel de app over naar de trackweergave en zoek hetzelfde woord en u krijgt in plaats daarvan de tracks. Welk veld wordt gematcht, volgt wat uw app heeft gevraagd, niet wat u heeft getypt.
Shuffle-mappen — de Willekeurige nummers en Willekeurige albums vermeldingen die sommige apps tonen — zijn een verzoek om een deel van alles, zonder zoekterm. Standaard is dat "alles" uw hele muziekbibliotheek, wat zelden is wat u wilt als de helft ervan gesproken woord of materiaal is dat u nooit shufflet. Willekeurig afspelen van, op het tabblad Bibliotheekopties, laat u het in plaats daarvan naar een van uw MusicBee-filters verwijzen, zodat elk willekeurig verzoek alleen uit de inhoud van dat filter put. Verborgen filters worden hier ook aangeboden — het bereik van de shuffle heeft niets te maken met of u wilt dat dat filter in de bladerboom verschijnt. Het openen van een shuffle-map van binnenuit een filter op het apparaat shufflet nog steeds dat filter: een expliciete keuze gemaakt tijdens het browsen wint altijd van de instelling.
Instellingen
| Bediening | Wat het doet |
|---|---|
| Willekeurig afspelen van | Waar een shuffle-verzoek van een apparaat vandaan komt — Alle muziek (uw hele bibliotheek, de standaard) of een benoemd MusicBee-filter. Als het gekozen filter later wordt verwijderd of hernoemd in MusicBee, valt de instelling stilzwijgend terug op de hele bibliotheek. |
De stream aanpassen aan elk apparaat
Bladeren is slechts de helft van het werk; de audio moet nog steeds worden afgespeeld op hardware die sterk varieert in wat het accepteert. Deze functie is hoe MusicBee elke stream aanpast — en het is gedeeld: het is van toepassing zowel wanneer de rol van Server een nummer aanbiedt aan een bladerend apparaat, als wanneer de rol van Control point afspeelt naar een externe renderer. Twee concepten sturen dit aan: apparaatprofielen (wat een apparaat aankan) en de transcoderingsprioriteitsketen (of een nummer überhaupt opnieuw wordt gecodeerd).
Apparaatprofielen — aanpassing aan elk apparaat
Echte UPnP-hardware is inconsistent over wat het accepteert: de ene streamer wil 24-bit FLAC, een andere speelt alleen 16-bit PCM, een derde liegt over welke codecs het ondersteunt. Een apparaatprofiel is hoe je de plugin de limieten en eigenaardigheden van een apparaat leert.
Hoe een profiel wordt gekozen. Elk apparaat identificeert zichzelf met een User-Agent string wanneer het verbinding maakt. Een profiel zegt "pas mij toe wanneer de user-agent dit fragment bevat." Wanneer een apparaat verbinding maakt, vindt de plugin het overeenkomende profiel; als er geen overeenkomt, is een ingebouwd Generiek Apparaat profiel de terugval. Je kunt meerdere fragmenten scheiden met | (bijvoorbeeld Linn|ChorusDS|BubbleDS) zodat één profiel een familie van gerelateerde apparaten dekt.
Wat een profiel regelt. De limieten die een apparaat niet kan overschrijden — maximale afbeeldingsgrootte voor albumhoezen, toegestaan sample-rate bereik, maximale bitdiepte, alleen-stereo downmixing — plus, wanneer een track wel moet worden geconverteerd, naar welk uitvoerformaat en sample rate te converteren. Een aparte groep "probleemapparaat" schakelaars omzeilt specifieke hardwarefouten (raw-PCM-afhandeling, bytevolgorde, de HTTP content-length header). Deze bestaan omdat UPnP-conformiteit in de praktijk gebrekkig is; de meeste mensen raken ze nooit aan.
Wanneer een profiel aan te passen. Alleen wanneer een specifiek apparaat zich misdraagt. Standaard dekt het Generieke profiel, plus de per-apparaat standaardinstellingen die voor gangbare hardware worden geleverd, de meeste gevallen. Om de user-agent van een apparaat te vinden zodat je het kunt targeten, schakel debug logging in (zie Diagnostiek), speel iets af vanaf het apparaat en lees de useragent= regel in het logboek.
De meest ingrijpende schakelaar van het profiel — forceer native stream — gaat helemaal niet over limieten; het beslist of iets van het bovenstaande van toepassing is. Dat is het volgende concept.


Instellingen
| Besturing | Wat het doet |
|---|---|
| Naam | De weergavenaam van het profiel. |
| Van toepassing wanneer de user-agent bevat | De user-agent fragment(en) die een apparaat moet bevatten om overeen te komen met dit profiel; scheid alternatieven met |. Niet-overeenkomende apparaten vallen terug op het Generieke profiel. |
| Maximale afbeeldingsgrootte | Maximale pixelgrootte van albumhoezen die naar dit apparaat wordt verzonden (160 px is de DLNA-standaard; groter wordt niet universeel ondersteund). |
| Uitvoer-samplefrequentie / tot | Het sample-rate bereik dat het apparaat accepteert; bronnen daarbuiten worden geconverteerd (forceert transcodering). |
| Kanalen / alleen stereo | Downmix multi-kanaals naar stereo voor apparaten die slechts twee kanalen ondersteunen. |
| Maximale bitdiepte | Hoogste bitdiepte die het apparaat accepteert; diepere bronnen worden geconverteerd. |
| Uitvoerformaat | Wanneer transcodering nodig is, het formaat waarnaar moet worden geconverteerd (PCM, FLAC, MP3, AAC, Ogg). |
| Uitvoer-samplefrequentie | De sample rate die moet worden gebruikt bij transcodering; "hetzelfde als bron" behoudt het origineel. |
| Gebruik geen RAW PCM | Verpakt PCM in een WAV-container in plaats van ruwe L16/L24 te verzenden. Voor apparaten die ruwe PCM verminken (sommige Marantz). |
| Forceer little endian voor PCM-streams | Verzendt PCM little-endian in plaats van de big-endian van de specificatie. Verhelpt ruisweergave op apparaten die little-endian verwachten. |
| Inhoudslengte | Hoe de HTTP Content-Length header moet worden gevuld: Standaard (correcte waarde), Geen (weglaten), Alleen PCM, of Vast (een sentinel "enorme" waarde). Voor apparaten die de header verkeerd afhandelen. |
Transcoderen of niet — de voorrangsketen
"Transcoderen" betekent het on-the-fly opnieuw coderen van een track — naar een formaat dat het apparaat kan afspelen, of zodat de EQ en volumeregeling van MusicBee kunnen worden toegepast. De plugin wil liever niet transcoderen (het originele bestand verzenden is sneller en verliesvrij), dus volgt het een vaste reeks regels om te beslissen. Hogere regels winnen en overschrijven stilzwijgend lagere regels. Dit is het meest verkeerd begrepen deel van de plugin, omdat verschillende instellingen lijken samen te werken, maar dat niet doen.
| Prioriteit | Regel | Effect |
|---|---|---|
| 1 (hoogste) | Transcoderen forceren (per apparaatprofiel) | Altijd transcoderen. Overschrijft alles hieronder. Sluit elkaar uit met native forceren — het aanvinken van de ene vinkt de andere uit. |
| 2 | Native stream forceren (per apparaatprofiel, standaard AAN) | Nooit transcoderen voor dit apparaat. Onderdrukt regels 3–5 volledig — verzendt de originele bytes ongeacht formaat, effecten of limieten. |
| 3 | EQ/DSP en ReplayGain (Bibliotheek) | Transcoderen forceren zodat de audio kan worden verwerkt. Stilzwijgend genegeerd als regel 2 wint. |
| 4 | Samplefrequentie / bitdiepte / alleen stereo (apparaatprofiel) | Bron buiten bereik → transcoderen om te passen. Stilzwijgend genegeerd als regel 2 wint. |
| 5 (laagste) | Codec-ondersteuning (apparaatprofiel) | Broncodec die het apparaat niet kan afspelen → transcoderen naar het uitvoerformaat van het profiel. Stilzwijgend genegeerd als regel 2 wint. |
Omdat native stream forceren standaard AAN staat voor elk profiel, is het standaardgedrag: geef het apparaat het originele bestand en doe niets anders. Dat is precies goed voor een modern apparaat op een goed netwerk — maar het betekent dat de Bibliotheek-effecten en de audiolimieten van het profiel "niets lijken te doen" totdat u regel 2 wijzigt.
Uitgewerkt voorbeeld. U wilt dat de ReplayGain-volumeregeling van MusicBee wordt toegepast op uw streamer. U vinkt Speelvolume nivelleren met de actieve replay gain-modus in MusicBee aan onder Bibliotheek. U speelt een track af — en het volume wordt helemaal niet genivelleerd.
Waarom: het profiel van de streamer heeft nog steeds native stream forceren AAN (regel 2). Regel 2 heeft voorrang op de ReplayGain-regel (regel 3), dus de plugin verzendt het ongewijzigde bestand en uw ReplayGain-instelling wordt stilzwijgend overgeslagen.
De oplossing: open het profiel van dat apparaat en vink native stream forceren uit. Omdat native forceren per profiel is, kunt u het aan laten staan voor uw bit-perfecte hi-fi DAC en uit voor de draagbare luidspreker die ReplayGain nodig heeft — elk apparaat krijgt het juiste antwoord.
Vuistregels:
- Wilt u EQ/DSP of ReplayGain toepassen op een apparaat? Zet native stream forceren uit op het profiel van dat apparaat.
- Wilt u een nieuwe transcode garanderen (voor testen, of voor een apparaat dat vastloopt op native bestanden)? Vink transcoderen forceren aan op het profiel — dit heeft voorrang op alles.
- Laat anders native stream forceren aan staan. Het is de instelling met de grootste impact in de plugin en de standaardinstelling is correct voor de meeste moderne apparatuur.

Instellingen
| Besturing | Wat het doet |
|---|---|
| Forceer native stream (omzeil transcoder) | Verzendt de originele bestandsbytes, waarbij de transcoder, effecten, ReplayGain en de audiolimieten van het profiel worden omzeild. Standaard AAN. De afspeelinstelling met de grootste impact; regel 2 van de bovenstaande keten. |
| Forceer transcodering (wederzijds exclusief met native stream forceren) | Dwingt elke stream naar dit apparaat door de transcoder. Heeft voorrang op native forceren; de twee sluiten elkaar uit (het aanvinken van de ene vinkt de andere uit). Regel 1. |
| Gebruik de equalizer en DSP-effecten die actief zijn in MusicBee [forceert transcodering] | Past de equalizer en DSP-effecten van MusicBee toe op uitgaande audio. Forceert transcoderen (regel 3), en wordt onderdrukt op elk apparaat waarvan het profiel native forceren aan heeft staan. |
| Nivelleer het afspeelvolume met de replay gain-modus die actief is in MusicBee [forceert transcodering] | Past de ReplayGain-volumeregeling van MusicBee toe. Forceert transcoderen (regel 3), en wordt onderdrukt op elk apparaat waarvan het profiel native forceren aan heeft staan. |
| Forceer native stream voor radio (omzeil transcoder voor zenders) | Verzendt radio-/streambronnen ongewijzigd, waarbij de transcoder specifiek voor stations wordt omzeild. |
Renderer — MusicBee als afspeeldoel
Met de Renderer-rol ingeschakeld (de UPnP Renderer-schakelaar), vertelt MusicBee het netwerk: "Ik ben een apparaat waarop je kunt afspelen." Een afzonderlijke controlepunt-app — een telefoonafstandsbediening, een andere mediacontroller — kan dan MusicBee selecteren en audio ernaartoe sturen om op deze pc af te spelen. Je geeft het doel een vriendelijke rendernaam zodat het herkenbaar is in de lijst van de andere app.
Wat het kan afspelen. Beide soorten nummers die een besturende app kan verzenden. Als het nummer uit MusicBee's eigen bibliotheek komt — je hebt door de bibliotheek van deze pc op je telefoon gebladerd en op een nummer getikt — speelt MusicBee het bestand rechtstreeks van zijn eigen schijf af, onaangetast, zonder enig kwaliteitsverlies dat een heen-en-weer reis over het netwerk zou kunnen introduceren. Als het nummer ergens anders staat — een bestand op de telefoon zelf, een NAS, een andere mediaserver — haalt MusicBee het op en speelt het hier af.
Een nummer dat van elders wordt verzonden, wordt eerst gekopieerd, en waarom dat belangrijk is. Voor een nummer dat niet in je bibliotheek staat, downloadt MusicBee stilletjes een kopie naar een tijdelijke map en speelt die af, in plaats van ernaar te luisteren via het netwerk terwijl het speelt. Dat moet: alles wat MusicBee behandelt als een live netwerkstream kan worden gestart en gestopt, maar niet doorgespoeld, dus naar een ander punt in het nummer springen zou onmogelijk zijn, en het nummer zou worden weergegeven als een kaal webadres in plaats van de titel. Het afspelen van een echt bestand op je eigen schijf voorkomt beide. De kopie duurt ongeveer een seconde op een thuisnetwerk. Een paar worden naast elkaar bewaard — het nummer dat speelt, het volgende nummer in de wachtrij, en één daarachter zodat terugspoelen direct is — en oudere worden verwijderd wanneer nieuwe nummers arriveren; alles wat overblijft, wordt de volgende keer dat MusicBee start, gewist. De lengte van het nummer is geen obstakel: een lang hoge-resolutie of DSD-bestand wordt net als elk ander opgehaald.
Internetradio wordt herkend en met rust gelaten. Een live-uitzending wordt nooit gekopieerd, omdat er geen einde is om te downloaden en er sowieso niets is om doorheen te springen — MusicBee speelt het gewoon af als de stream die het is. De besturende app zegt welke van de twee het verzendt, dus dit vereist geen instelling en geen giswerk van jouw kant. Hetzelfde geldt als een kopie om een andere reden niet kan worden opgehaald: het afspelen gaat door via het netwerk, en pas dan worden de titel en de positieregelaar onbetrouwbaar.
Albums spelen zonder pauzes. Wanneer de besturende app MusicBee vertelt wat er hierna komt — de meeste doen dat — wordt dat nummer opgehaald terwijl het huidige nog speelt, en MusicBee's eigen speler overschrijdt de grens. Dus een live-opname, een DJ-set of een continu klassiek werk dat vanaf een telefoon wordt verzonden, speelt door zoals het hoort, in plaats van te pauzeren bij elk nummer.
Waarom je het zou gebruiken. Het stelt een telefoon of tablet in staat om deze pc als een UPnP-luidspreker te gebruiken — handig wanneer de pc is aangesloten op de goede luidsprekers en je deze vanaf de bank wilt bedienen, of de muziek nu op de pc of op de telefoon in je hand staat.
Wanneer je het moet uitschakelen. Laat het uitgeschakeld, tenzij je specifiek audio naar deze pc wilt verzenden vanuit een andere app. Als het is uitgeschakeld, verschijnt MusicBee nergens als doel, wat meestal is wat je wilt.
Gebruik één besturende app tegelijk. UPnP heeft geen idee van een app die een renderer "bezit": elke app op het netwerk kan nummers naar MusicBee sturen, en elke app die meekijkt, kan reageren op wat het ziet. Dus als twee spelers tegelijkertijd op MusicBee zijn gericht, krijg je gedrag dat eruitziet als een bug en dat niet is. Een tweede app die MusicBee nog steeds heeft geselecteerd, blijft meekijken, ziet het nummer dat het heeft verzonden stoppen, concludeert dat het nummer is afgelopen en stuurt behulpzaam het volgende nummer uit zijn wachtrij — dus de muziek springt plotseling naar een ander album, of het indrukken van volgende in de ene app start een nummer in de andere. Het stoppen van het afspelen in de tweede app is niet genoeg, omdat deze geselecteerd blijft en blijft meekijken. Richt het terug op de eigen luidspreker van de telefoon, op een ander apparaat, of sluit het correct af.
Opmerking over volwassenheid. De renderer is nieuwer dan de serverrol en is minder getest op echte hardware. Als een bepaalde controller-app het vreemd aanstuurt, is dat nuttig om te melden.
Instellingen
| Besturing | Wat het doet |
|---|---|
| UPnP-renderer: Schakel andere apps in om af te spelen naar MusicBee | Hoofdschakelaar voor de Renderer-rol — laat andere apps afspelen naar MusicBee. Wordt van kracht na een herstart van MusicBee. |
| Renderernaam | De naam die deze pc adverteert als renderer, getoond in de apparaatlijsten van andere apps. |
Controlepunt — afspelen naar een externe luidspreker
Met de rol Controlepunt ingeschakeld (de schakelaar UPnP Control Point), verschijnen netwerk UPnP/DLNA-renderers als uitvoerapparaten binnen MusicBee — op dezelfde plaats waar u uw geluidskaart kiest. Kies er een, druk op Afspelen, en MusicBee streamt de audio naar die externe luidspreker of streamer terwijl u MusicBee's eigen interface blijft gebruiken als afstandsbediening.
Waarom u het zou gebruiken. Het zorgt ervoor dat een hi-fi streamer of netwerkluidspreker zich gedraagt als een gewone MusicBee-uitvoer, zonder extra software ertussen.
Wanneer u het moet uitschakelen. Laat het uitgeschakeld als u alleen via de eigen luidsprekers van deze pc afspeelt.
Twee dingen bepalen hoe deze rol zich gedraagt. Het eerste is gapless afspelen (hieronder). Het tweede is Pas de stream aan elk apparaat aan — dezelfde apparaatprofielen en transcoderingprioriteit die de server regelen, zijn hier ook van toepassing, aangezien de plug-in opnieuw audio naar een extern apparaat stuurt. Het controlepunt hergebruikt ook de HTTP-server van MusicBee om de audio uit te voeren, dus de poort en firewallregels van de server zijn hier van belang, zelfs als u de Server-rol nooit inschakelt.
Instellingen
| Bediening | Wat het doet |
|---|---|
| UPnP-controlepunt: Voeg netwerk UPnP/DLNA-renderers toe als MusicBee-uitvoerapparaten | Hoofdschakelaar voor de rol Controlepunt — voegt netwerk UPnP/DLNA-renderers toe als MusicBee-uitvoerapparaten. |
Gapless afspelen — twee verschillende mechanismen
Sommige muziek is bedoeld om zonder onderbreking te worden afgespeeld — live-albums, klassieke bewegingen, DJ-sets, conceptalbums. Een halve seconde stilte tussen nummers verpest ze. De plug-in biedt twee manieren om die kloof te verwijderen, en ze werken heel verschillend.
Echt gapless (NextURI). Wanneer een renderer aangeeft dit te ondersteunen, laadt de plug-in het volgende nummer op het apparaat voordat het huidige nummer eindigt, zodat het apparaat de overgang intern zonder stilte overbrugt — zoals een cd-speler. Dit is het voorkeursmechanisme: elk nummer behoudt zijn eigen metadata, zoeken en overslaan werken nog steeds, en er is niets om in te schakelen — de plug-in gebruikt het automatisch op geschikte apparaten. Per apparaat kunt u het uitschakelen (voor hardware waarvan de implementatie gebrekkig is) of de plug-in vertellen het in de wachtrij geplaatste nummer niet te wissen wanneer de lijst leeg is (een oplossing voor apparaten die een lege wachtrij als "stop" beschouwen).
Continue stream. De oudere fallback voegt alles samen tot één eindeloze stream. Het garandeert geen gaten op elk apparaat — maar tegen een reële prijs: de renderer toont de informatie van het eerste nummer voor de hele sessie, "volgende/vorige" bedieningselementen werken niet meer, en omdat alles is samengevoegd tot één stream, moet alles worden getranscodeerd (force-native kan niet worden toegepast). Het label op het scherm legt de afweging uit.
Welke te gebruiken. Geef de voorkeur aan echt gapless — het is automatisch en verliesvrij. Val alleen terug op continue stream voor een apparaat dat NextURI niet kan doen en waar de gaten u echt storen, en accepteer dat u metadata per nummer en transportbedieningselementen verliest. De twee sluiten elkaar uit: het inschakelen van continue stream schakelt NextURI uit, zodat u niet per ongeluk beide kunt uitvoeren.

Instellingen
| Bediening | Wat het doet |
|---|---|
| Schakel gapless afspelen (NextURI) in voor dit apparaat | Schakelt echt gapless (NextURI) in voor dit apparaat. Ingeschakeld voor geschikte apparaten; uitschakelen als de implementatie van het apparaat gebrekkig is. |
| Verzend geen lege NextURI wanneer de wachtrij leeg is | Voorkomt dat de plug-in een lege NextURI verzendt wanneer de wachtrij leeg is — een oplossing voor apparaten (bijv. Denon) die dat als "stop" beschouwen. |
| Uitvoer als continue stream | Verzendt één continue samengevoegde stream in plaats van afzonderlijke nummers. Verwijdert gaten op elk apparaat, maar de renderer toont alleen de informatie van het eerste nummer, transportbedieningselementen werken niet meer en alles wordt getranscodeerd. Schakelt NextURI uit wanneer ingeschakeld. |
Elkaar vinden op het netwerk
Voordat een van de rollen kan werken, moeten de apparaten elkaar vinden. De server van MusicBee bindt zich aan een netwerkadres en een TCP-poort, en kondigt zichzelf vervolgens aan op het LAN via SSDP, zodat apparaten het kunnen ontdekken. De standaardpoort is 9779; als die poort al bezet is, kiest de plug-in automatisch een nabijgelegen vrije poort en apparaten zullen het nog steeds ontdekken (u hoeft alleen een vaste poort in te stellen als uw configuratie dit vereist).
Twee instellingen zijn van belang op machines met ongebruikelijke netwerkconfiguraties:
- IP-adres / netwerkinterface. "Automatisch" werkt op alle interfaces, wat voor de meeste pc's correct is. Op een machine met meerdere netwerken tegelijk — Wi-Fi en Ethernet en een VPN — kiest u de interface waarop uw audioapparaten zich daadwerkelijk bevinden, zodat MusicBee een adres adverteert dat zij kunnen bereiken.
- Poort. Wijzig deze alleen als een ander programma de standaardpoort al gebruikt, of als uw firewall een specifiek nummer vereist.
De belangrijkste reden waarom een apparaat "MusicBee niet kan zien" is de firewall, niet UPnP. Windows Firewall moet de poort van MusicBee toestaan op zowel de privé als de openbare netwerkprofielen, en u moet MusicBee meestal opnieuw opstarten na het wijzigen van firewallregels. Controleer dit voordat u iets in de plug-in wijzigt.
Instellingen
| Besturing | Wat het doet |
|---|---|
| IP-adres | Welke netwerkinterface de server bindt; "Automatisch" gebruikt alle interfaces. Wordt van kracht na een herstart van MusicBee. |
| poort | De TCP-poort waarop de HTTP-server luistert (standaard 9779). Als de poort bezet is, selecteert de plug-in automatisch een vrije poort. Wordt van kracht na een herstart. |
Diagnostiek
Wanneer een specifiek apparaat zich misdraagt, is het gedrag van de plug-in onzichtbaar totdat u het logt. Deze hulpmiddelen dienen elke rol, dus ze staan op hun eigen Foutopsporing tabblad in plaats van onder één functie.
- Log debug-informatie registreert elke aanvraag, de user-agent van het apparaat en elke codec/transcode-beslissing in een logbestand dat u kunt openen met Bekijken. Schakel het in tijdens het oplossen van problemen (en om de user-agent van een apparaat voor een profiel te ontdekken), en schakel het daarna weer uit — het logbestand groeit snel. U kunt het ook bij elke opstart wissen.
- Netwerk is bandbreedtebeperkt (Afspelen) vertelt de plug-in dat wanneer het wel transcodeert, het de verliesgevende uitvoer (MP3/AAC/Ogg) van het apparaatprofiel moet gebruiken in plaats van een grote verliesvrije. Schakel het in voor trage Wi-Fi-verbindingen.
- Het tabblad Foutopsporing bevat ook queryhulpmiddelen op laag niveau die bedoeld zijn voor ontwikkeling; u kunt deze bij normaal gebruik negeren (zie Overige instellingen).
Voor dagelijkse diagnose is het patroon: loggen inschakelen → probleem reproduceren → log lezen → relevant apparaatprofiel aanpassen → loggen uitschakelen.

Instellingen
| Besturingselement | Wat het doet |
|---|---|
| Log debug-informatie | Logt elke aanvraag, user-agent en codec-beslissing naar een bestand. Aan tijdens het oplossen van problemen, anders uit. |
| Logboek wissen bij opstarten plug-in | Leegt het logbestand elke keer dat de plug-in start. |
| Bekijken | Opent het huidige logbestand. |
| Logboek wissen | Leegt het logbestand nu. |
| Netwerk is bandbreedtebeperkt - transcodeer uitvoer naar het lossy formaat dat is ingesteld in het apparaatprofiel hierboven | Wanneer een transcode plaatsvindt, gebruik dan het verliesgevende uitvoerformaat van het apparaatprofiel. Voor trage verbindingen. Vereist een verliesgevend formaat gekozen in de transcodeersectie van het profiel. |
Snelle probleemoplossing
| Symptoom | Eerste wat u kunt proberen |
|---|---|
| Een apparaat ziet MusicBee helemaal niet | Controleer Windows Firewall voor zowel privé- als openbare netwerken; de poort van de plug-in (standaard 9779) moet bereikbaar zijn. Herstart MusicBee na wijzigingen in de firewall. |
| Een bron (Podcasts, Radio, Inbox…) ontbreekt in de boom | Het is waarschijnlijk verborgen. Vink op het tabblad Weergave het knooppunt aan en zorg ervoor dat het selectievakje Zichtbaar is ingeschakeld. |
| Een knooppunt bladert met de verkeerde vorm | Pas een ander ontdekkingspad toe op het tabblad Weergave — bijv. Platte nummers voor een afspeellijst, Albumartiest → Album → Nummers voor een muziekfilter. |
| Het apparaat ziet MusicBee maar speelt geen enkel nummer af | Het profiel van het apparaat is waarschijnlijk verkeerd, of force-native is uitgeschakeld en een transcode mislukt. Vink force native stream aan op het profiel van dat apparaat en probeer het opnieuw. |
| Audio speelt af als ruis / witte ruis | Probeer force little endian for PCM streams op het profiel van het apparaat. Als dat niet helpt, probeer dan do not use RAW PCM. |
| Gaten tussen nummers | Echte gapless werkt automatisch op apparaten die NextURI ondersteunen. Als u nog steeds gaten hoort, ondersteunt het apparaat het niet of is de implementatie gebrekkig — val terug op output as a continuous stream (gapless gegarandeerd, maar trackinfo en volgende/vorige bedieningselementen werken niet meer). |
| EQ / DSP / ReplayGain "doet niets" | Force native stream is ingeschakeld voor dat apparaat — het heeft voorrang. Vink force native stream uit op het profiel van het apparaat. Zie Transcode of niet. |
| Een modern (2020+) apparaat negeert de bedieningselementen van MusicBee | De oplossing voor apparaten die adverteren als MediaRenderer:2/3 zit in deze fork; het zou moeten werken. Zo niet, leg dan een debuglog vast en dien een probleem in. |
| De plug-in laadt maar Configureren opent niet | Controleer MusicBee's ErrorLog.dat — de plug-in is waarschijnlijk gecrasht bij het laden. Het verwijderen van het instellingenbestand van de plug-in en opnieuw configureren lost het meestal op. |
| Andere talen dan Engels | De plug-in wordt geleverd met 22 talen en volgt de eigen taal van MusicBee, en deze hulp is in al deze talen beschikbaar. Om een andere te gebruiken, stelt u de taal in op het tabblad Algemeen. |
Hoe ver dit is getest
Om verrassingen te voorkomen, is hier eerlijk gezegd hoeveel praktijkgebruik de plug-in heeft gehad.
Alles is getest met BubbleUPnP, met foobar2000 als tweede referentie. Alle drie de rollen werken daar — maar BubbleUPnP is de enige tegenhanger waarmee de plug-in is bewezen, dus andere bedieningsapps, andere spelers en browse-apparaten buiten deze twee zijn ongetest en zouden baat hebben bij community-testen.
De plek waar dit in de praktijk het meest van belang is, is het afspelen naar een fysieke streamer (de control-point rol). Echte gapless trackovergangen werden bevestigd op BubbleUPnP, maar echte streamers — WiiM, Sonos, Cambridge, Eversolo, Marantz, Denon — behandelen de overdracht tussen tracks elk iets anders, en geen van deze is getest op daadwerkelijke hardware. Als gapless zich misdraagt op een van deze apparaten, schakel dan NextURI uit voor dat apparaat, zodat het terugvalt op het afspelen van één track tegelijk.
Overige instellingen
Een handvol besturingselementen behoort niet tot één functie:
| Besturingselement | Wat het doet |
|---|---|
| Help | Opent deze helppagina in uw webbrowser, in de taal van MusicBee (terugvallend op Engels als een vertaling nog niet gereed is). |
| Laatste query lezen, Query uitvoeren, Tags ophalen voor eerste 5 | Queryhulpmiddelen op laag niveau op het tabblad Foutopsporing, bedoeld voor ontwikkeling; negeer ze bij normaal gebruik. |
| Opslaan | Slaat wijzigingen op. Instellingen die bij het opstarten worden gebonden (poort, IP, max. verbindingen, renderer) geven een ⚠ Opnieuw opstarten vereist badge weer totdat u MusicBee opnieuw opstart. |
| Annuleren | Sluit het dialoogvenster zonder op te slaan. |
Credits
- Originele plug-in door Steven Mayall. Deze fork heeft het bladeren door de bibliotheek en het instellingendialoogvenster herschreven en de renderer toegevoegd, maar de UPnP-, HTTP- en SSDP-kern waarop alles is gebouwd, is nog steeds grotendeels zijn code.
- De closed-source UPnP 2025 fork door BoringName, wiens openbare forumthread de bugcatalogus leverde.