MusicBee UPnP Plugin Hjälp

Hjälp

Vad MusicBee UPnP Plugin är till för

Ett öppen källkods-plugin för MusicBee som ansluter ditt bibliotek till UPnP/DLNA-enheter i ditt hemnätverk — telefoner, smarta TV-apparater, hi-fi-streamers, nätverkshögtalare — utan moln och utan inloggning. Det är en förgrening av Steven Mayalls ursprungliga UPnP-plugin, ombyggd för att göra ett stort, varierat bibliotek trevligt att bläddra i från en annan enhet.

Två saker skiljer denna förgrening från en vanlig UPnP-server, och de är anledningen att välja den:

  • Den publicerar hela MusicBee — inte bara "Musik". Dina Filter, Podcasts, Ljudböcker, Radiostationer, Inkorgen och dina Spellistor visas alla som egna bläddringsbara behållare på den andra enheten, tillsammans med musiken. De flesta servrar visar ett platt musikbibliotek och inget annat.
  • Var och en av dessa noder kan visas, döljas och formas individuellt. Du bestämmer vilka noder en enhet ser, och du ger varje nod sin egen upptäcktsväg — rutten du borrar dig ner genom den (Albumartist → Album → Spår, en platt spårlista, efter Genre, efter År…). Ett bibliotek med 300 000 spår blir till slut bläddringsbart som ett välorganiserat sådant istället för en platt datadump.

Under dessa två huvudidéer är pluginet organiserat kring ett strukturellt faktum: MusicBee kan spela tre olika nätverksroller, och varje skärm i inställningsdialogen tillhör en av dem. Förstå de tre rollerna så förklarar resten av dialogen sig själv:

  • Server — andra enheter bläddrar i MusicBee-biblioteket och hämtar spår från det. Det är här de två huvudfunktionerna ovan finns.
  • Renderer — MusicBee blir ett mål som andra appar kan spela till, som en nätverkshögtalare.
  • Kontrollpunkt — MusicBee spelar sitt eget ljud ut till en fjärrhögtalare eller streamer.

Du kan använda en roll eller alla tre. Aktivera bara det du behöver. Genom hela denna guide förklaras varje inställning precis bredvid den funktion den tillhör — det finns ingen separat "inställningslista" att korsreferera.

Installation

  1. Ladda ner mb_UPnP_yaiol.dll från releasesidan.
  2. Kopiera den till din MusicBee-pluginmapp, vanligtvis C:\Users\<du>\AppData\Roaming\MusicBee\Plugins\.
  3. Starta om MusicBee.
  4. Öppna Redigera → Inställningar → Plugins, hitta MusicBee UPnP Plugin och klicka på Konfigurera.

Yaiol DLL har ett distinkt filnamn, så den kan ligga på disken och köras tillsammans med den ursprungliga pluginen utan konflikt.

Server — andra bläddrar i ditt bibliotek

UPnP är ett protokoll för ljudenheter att hitta och styra varandra över ett lokalt nätverk, och inom det spelar varje deltagare en definierad roll. Med Server-rollen på (växeln UPnP Server), spelar MusicBee Media Server-rollen: den svarar på upptäcktsförfrågningar på ditt LAN och serverar sitt bibliotek till alla enheter som frågar. Från den andra enheten ser du ett medieträd och trycker för att spela; ljudet strömmas från MusicBee's inbyggda HTTP-server direkt till enheten. MusicBee är bara källan — den andra enheten har kontrollen.

Varför du skulle använda det. Det förvandlar den enda datorn som innehåller hela din samling till en nätverkskälla som alla andra prylar kan nå, utan att kopiera filer eller logga in på något. Detta är den halva av insticksprogrammet som förgreningen investerar mest i, och det är där de två huvudfunktionerna finns — vad du publicerar (nedan) och hur varje nod är formad.

När du ska stänga av det. Endast om du aldrig bläddrar i MusicBee från en annan enhet. Rollen är oberoende av de andra två; du kan servera biblioteket och ändå lämna renderar- och kontrollpunktsrollerna avstängda.

Några serverövergripande inställningar finns bredvid växeln: servernamnet som andra enheter visar i sin lista, nätverksgränssnittet och porten som MusicBee binder till (se Hitta varandra på nätverket), och ett max-anslutningar-tak för hur många samtidiga strömmar servern kommer att servera samtidigt.

The General tab — the three role switches and the server settings

Inställningar

Kontroll Vad den gör
UPnP-server: Tillåt UPnP-enheter att bläddra och spela från MusicBee-biblioteket Huvudbrytare för Server-rollen — låter UPnP-enheter bläddra och spela från MusicBee-biblioteket.
Servernamn Namnet andra enheter visar för MusicBee när de upptäcker den.
Max anslutningar Maximalt antal samtidiga filströmmar som servern kommer att servera (standard 16, intervall 1–256). Öka det om en enhet som avfyrar många parallella förfrågningar utlöser märket ⚠ Max Conn. Träder i kraft efter en omstart.
Uppdatera spelstatistik i MusicBee Räknar spår som spelas över UPnP mot MusicBee's spelräkningar och senast spelade tidsstämplar.

Publicera hela MusicBee, inte bara Musik

Detta är den första av forkens två huvudfunktioner. En vanlig UPnP-server tillhandahåller nätverket ett enda platt "Musik"-bibliotek. Denna visar alla innehållsområden som MusicBee organiserar, var och en som sin egen toppnivåbehållare på bläddringsenheten.

De sju saker MusicBee kan publicera

När en enhet bläddrar i MusicBee kan roten den landar på erbjuda alla dessa, sida vid sida:

  • Musik — ditt huvudbibliotek, format som du vill (se upptäcktsvägar nedan).
  • Filter — filterflikarna du redan använder överst i MusicBees huvudvy (Music, ALL, FAV, ett Jazz-filter, ett Klassiskt filter, vad du än har ställt in) visas som ingångspunkter, vilket speglar hur du redan tänker på ditt bibliotek. Filter läses live från samma filer som MusicBee själv använder, så de förblir synkroniserade utan konfiguration.
  • Podcasts — dina podcastprenumerationer, där varje öppnas till sina avsnitt, med prenumerationskonstverk som följer med.
  • Ljudböcker — MusicBees kategori för ljudböcker.
  • Radio — dina sparade internetradiostationer.
  • Inkorg — MusicBees inkorg för nyligen tillagda, ännu ej arkiverade spår.
  • Spellistor — dina MusicBee-spellistor.

Eftersom dessa kommer direkt från MusicBee behöver de ingen separat installation — prenumerera på en podcast eller lägg till en station i MusicBee och den är nåbar från nätverket nästa gång enheten bläddrar. Huruvida var och en faktiskt visas, och vilken form den tar, är nästa funktions uppgift.

Som standard ligger Filter och spellistor i en egen prydlig omslagsmapp. Om varje källa faktiskt visas, var den ligger — inklusive att fästa de du använder mest högt upp i bläddringsroten, grupperade med sin egen typ — och vilken form den tar avgörs allt detta per nod av nästa funktion.

Tidigare versioner av denna hjälp listade "ingen podcastrotbehållare" som en begränsning. Det stämmer inte längre — podcasts publiceras som alla andra källor.

Visa, dölj och forma varje nod

Detta är den andra huvudfunktionen, och den som ger förgreningen dess namn. Att publicera sju källor skulle vara bullrigt om du inte kunde kontrollera dem – så varje exponerad nod är oberoende omkopplingsbar, fästbar vid roten och bär sin egen upptäcktsväg.

Du hanterar allt detta på inställningsdialogens flik Visa, som visar hela det exponerade trädet som en checklista. Mönstret är alltid detsamma: markera de noder du vill agera på, använd sedan kontrollerna bredvid trädet för att ställa in dem alla på en gång – gör dem synliga eller dolda, fäst dem högst upp i trädet, eller tillämpa en sökvägsmall. Så du kan exponera Musik, Filter och Spellistor, dölja Inkorgen och Radio, fästa ditt Jazzfilter vid roten och ge Podcasts en form efter prenumeration – var och en oberoende.

Bibliotekssökvägar – underfliken Visa, det exponerade trädet som en checklista

Visa, dölj och fäst varje nod

Två omkopplare bestämmer om och var en nod visas, oberoende av hur den är formad. Båda finns på fliken Visa som kryssrutor med tre tillstånd som påverkar varje nod du har markerat i trädet:

  • Synlig — om enheter ser noden överhuvudtaget. Avmarkera den för att dölja en nod; den stannar i ditt bibliotek, den slutar helt enkelt att annonseras. (Eftersom den agerar på den markerade uppsättningen, visar kryssrutan ett skuggat "blandat" tillstånd när ditt val är delvis synligt, delvis dolt.) Dolda noder är gråtonade i trädet — och en mapp gråtonas när varje nod inuti den är dold — så en snabb blick berättar vad som fortfarande är exponerat.
  • Översta nivån — om noden också är fäst högt upp i bläddringsroten. Fästning är additiv: noden visas fortfarande i sin vanliga omslagsmapp och får en kopia nära toppen av roten, grupperad med sin egen typ — ett fäst filter sitter direkt under mappen Filter, en fäst spellista direkt under mappen Spellistor — så dina genvägar stannar bredvid de saker de hör ihop med. Fästa noder markeras med en i dialogrutan så att du med en blick kan se vilka som är lyfta.

När ett filter eller en spellista är fäst vid roten kan det vara svårt att skilja den från en normal källa på översta nivån, så du kan lägga till ett kort prefix till dess visade namn (ställs in på fliken Biblioteksinställningar). Prefixet är bokstavligt — vad du än skriver placeras framför namnet ordagrant, så inkludera ditt eget avslutande mellanslag om du vill ha ett.

Arbetsexempel. Du navigerar mestadels med ditt Jazz-filter och din Friday Night-spellista, båda för närvarande begravda inuti omslagsmapparna Filters och Playlists.

Du markerar båda noderna i vyn View tree och klickar på Top level. Var och en visar nu en ★ i dialogrutan. På bläddringsenheten visas de fortfarande inuti sina omslagsmappar som tidigare, men får också en kopia högt upp i roten, var och en bredvid sin egen typ: det fästa Jazz-filtret sitter direkt under mappen Filters och den fästa Friday Night-spellistan direkt under mappen Playlists. Med filterprefixet inställt på Filter: och spellisteprefixet inställt på Playlist: , läser de två fästa kopiorna Filter: Jazz och Playlist: Friday Night — åtskilda från sina kopior inuti omslaget, och var och en sitter bredvid mappen av sin egen typ. Avmarkera Top level för endera och dess fästa kopia försvinner, vilket lämnar omslagsmappens kopia orörd.

Detta ersätter de gamla globala omkopplarna "exponera filter vid rot" / "exponera spellistor vid rot": fästning är nu ett val du gör nod för nod, för vilken källa som helst, inte en allt-eller-inget-växling för filter och spellistor.

Inställningar

Kontroll Vad den gör
Synlig Visar eller döljer varje markerad nod. Dolda noder finns kvar i ditt bibliotek men annonseras inte till enheter. Skuggat "blandat" tillstånd när urvalet är delvis synligt.
Översta nivån Fäster även varje markerad nod högt upp i bläddringsroten, grupperad efter sin typ — filterfästen under mappen Filters, spellistefästen under mappen Playlists (additivt — noden behåller också sin normala plats). Fästa noder visar en ★ i dialogrutan.
Filterprefix (när i roten) Ett bokstavligt textprefix placerat framför ett filters namn när det är fäst i roten (hjälper de fästa kopiorna att grupperas).
Spellisteprefix (när i roten) Ett bokstavligt textprefix placerat framför en spellistas namn när den är fäst i roten.

Upptäcktsvägar — varje nods nedborrningsrutt

En upptäcktsväg är den rutt en webbläsare går inuti en nod. Samma nod kan presenteras som Albumartist → Album → Spår, eller som en enda platt spårlista, eller grupperad efter Genre och sedan Artist, eller efter År. En väg byggs från en eller flera nivåer (fältet varje nivå grupperar efter) som slutar i ett blad (vad den djupaste nivån visar — album sedan deras spår, eller en platt spårlista). En nod kan till och med bära flera vägar samtidigt, så den erbjuder mer än ett sätt att komma in.

Olika innehåll vill ha olika former, och fel form gör en nod oanvändbar. Musik vill ha albumartist-gruppering; en spellista vill ha en platt ordnad lista; podcaster vill ha sina prenumerationer. Varje nod får rätt svar eftersom varje nod har sin egen väg.

Arbetsexempel. Du har ett Jazzfilter med 5 000 spår och en "Fredagskväll"-spellista med 30 spår, båda exponerade.

  • För Jazzfiltret använder du en mall vars väg är Albumartist → Album → Spår. På enheten borrar du: artister, sedan den artistens album, sedan albumets spår i skiv- och spårordning.
  • För spellistan använder du istället mallen Platta spår. När du öppnar den får du de 30 spåren i spellistans ordning, utan artist- eller albumlager emellan — precis vad en spellista ska vara.

Samma plugin, samma dialog, två noder, två helt olika former — eftersom vägen är en egenskap hos noden, inte en global inställning. Du kan inte förutsäga en nods layout på enheten utan att veta vilken mall den bär; det är därför detta behöver förklaras.

En nod tar inte bara emot en kopia av en mall — den följer den. Vy-trädet visar vilken mall varje nod följer, direkt efter nodens namn, och att redigera en mall på fliken Vägar omformar omedelbart varje nod som följer den — ingen om-applicering nod för nod. Att applicera en mall på en dold nod gör den också synlig igen: att applicera är gesten "visa mig detta, format som det", medan dölja stannar med kryssrutan Synlig. Varje mallrad visar ett live (n) antal noder som följer den, och en mall kan bara raderas när det antalet är noll — raderingsknappen förblir inaktiverad så länge något följer mallen, så en nod kan aldrig lämnas föräldralös av en radering. För att se exakt vilka noder som följer en mall, filtrerar trattknappen bredvid Vy-trädet trädet ner till bara de noderna; att välja en annan mall omfiltrerar, och att stänga av tratten återställer hela trädet. Att radera en oanvänd mall fungerar också nu — de levererade standardinställningarna återskapas inte längre tyst nästa gång pluginet laddas.

När en väg slutar i bladet Album → Spår, bestämmer du också vad som räknas som ett album. Istället för att gruppera strikt efter albumtitel, väljer du ett eller flera fält — Album, Sortera album, År, Albumartist — som tillsammans bestämmer vilka spår som smälter samman till ett enda album, hur dess rubrik läses, och i vilken ordning albumen visas, varje fält sorterbart stigande eller fallande. Att lägga till Albumartist håller två liknande album av olika artister åtskilda; att lägga till År fallande listar en artists album nyast-först. När du grupperar efter år, erbjuder MusicBee två fält som speglar dess egna — År, den fullständiga datumtaggen (som kan innehålla ett helt datum som 2024-03-15), och År (åååå), bara det fyrsiffriga året — så att välja År (åååå) samlar varje utgåva av ett år tillsammans istället för att dela upp det efter exakt datum.

Standardinställningarna är förnuftiga — nya filter formas av albumartist, spellistor och Inkorgen får förnuftiga standardinställningar — så för det vanliga fallet ändrar du ingenting. Gå till fliken Vy när du vill att en viss nod ska formas annorlunda.

Inställningar

Du bygger namngivna, återanvändbara sökvägsmallar på fliken Vägar, och applicerar dem sedan på noder på fliken Vy.

Bibliotekssökvägar — underfliken Sökvägar, redigerar en mall

Kontroll Vad den gör
Tillämpa på markerade slutpunkter Gör att varje nod du har kryssat i trädet följer den för närvarande valda mallen (och exponerar den igen om den var dold).
Expandera alla / Fäll ihop alla Expandera eller fäll ihop hela slutpunktsträdet.
Visa endast noder som matchar den valda mallen Trattväxeln: filtrerar slutpunktsträdet till endast de noder som följer den valda mallen. Välj en annan mall för att omfiltrera; stäng av för att återställa hela trädet.
Mall Den namngivna sökvägsmallen som redigeras.
/ Flytta den valda mallen upp eller ner i listan, för att ordna hur dina mallar presenteras.
Gruppera efter Fältet/fälten som nivån grupperar efter (t.ex. Albumartist).
Löv Vad den djupaste nivån visar.
Album → Spår (AT) Bladläge: Album → Spår — borra dig igenom album till deras spår.
Platta spår (T) Bladläge: Platta spår — en enda platt spårlista.
Inkludera [Alla spår] på varje nivå Lägger till en [Alla spår] genväg på varje nivå. Visas endast i läget Album → Spår.
Gruppera album efter Definierar vad som räknas som ett album, hur dess titel läses, och i vilken ordning albumen visas — välj ett eller flera fält (Album, Sortera album, År, Albumartist…), var och en med sin egen stigande/fallande växel. Visas endast i läget Album → Spår.
Lägg till / Ta bort Lägg till eller ta bort en sökväg i mallen.

Sökvägar är typade till den nod de passar

Inte varje fält betyder något för varje typ av nod. En radiostation har inget album eller år; ett poddavsnitt har en prenumeration, en mapp och ett publiceringsdatum men ingen albumartist. Så varje sökväg tillhör en av tre kategorierStandard (din musik, filter, ljudböcker, inkorg och spellistor, som alla har fullständiga taggar), Radio, eller Podcast — och den kategorin bestämmer två saker samtidigt: vilka fält du får gruppera efter, och vilka noder sökvägen kan tillämpas på.

På fliken Sökvägar ritas mallistan i två band: Standard — där dina egna mallar finns, och där varje ny mall skapas — och ett Reserverat band som innehåller Radio- och Podcast-mallarna. När du redigerar en Standard-mall erbjuder fältmenyn allt; en Radio-mall erbjuder endast de fält en station faktiskt har; en Podcast-mall endast vad ett avsnitt har — dess mapp, dess prenumeration och dess publiceringsår. På fliken Visa lyser en mall endast upp de noder den passar — resten gråas ut och kan inte markeras — så en Standard-sökväg kan aldrig hamna på Radio- eller Podcast-noderna.

Faktum är att du aldrig tillämpar något på Radio eller Podcasts alls: var och en är permanent kopplad till sin kategoris mall. Omforma Radio- eller Podcast-mallen på fliken Sökvägar och noden följer av sig själv; med en Reserverad mall vald är knappen Tillämpa helt enkelt inaktiverad, eftersom det inte finns något att tillämpa. Detta hindrar dig från att bygga en sökväg som tyst producerar ingenting genom att gruppera på ett fält som noden inte kan fylla — och eftersom en följd mall aldrig kan raderas (se Upptäcktsvägar ovan), finns Radio- och Podcast-mallarna alltid där för att omformas.

Artister sorterade efter deras sorteringsnamn

Inom varje musikrelaterad nod grupperas och alfabetiseras artister efter taggen Sort Album Artist, inte efter visningsnamnet. Detta är den del som överraskar folk, så här är exakt vad som händer.

Arbetsexempel. Anta att ett spår är taggat:

  • Artist = Bob Dylan
  • Sort Album Artist = Dylan, Bob

I bläddringsträdet arkiveras Dylan under bokstaven D (från Dylan, Bob), inte under B (från Bob Dylan). Sorteringstaggen styr både grupperingen och den alfabetiska positionen, precis som en hi-fi-webbläsare eller en skivbutik skulle arkivera det.

Det är automatiskt och styrs helt av dina befintliga MusicBee-taggar — det finns inget att konfigurera.

Flerfälts-taggar förgrenar sig

När ett spårs Albumartist (eller Genre) innehåller mer än ett värde, visas spåret under varje värde separat, istället för att skapa en sammanslagen post.

Exempel. Ett spårs Albumartist innehåller två värden: yaiol; Ars Ricercata. Det spåret visas under både yaiol och Ars Ricercata — en gång i varje artists gren — snarare än under en enda falsk "yaiol; Ars Ricercata"-artist. Flerfälts-artisttaggar förgrenar sig på samma sätt som flerfälts-genre-taggar gör.

Liksom sorteringsnamnsgruppering är detta automatiskt och tagg-drivet.

Gruppera långa listor efter första bokstaven

Om en nivå blir för lång för att skrolla bekvämt på en telefon, kan den gruppera efter första bokstaven — infoga ett A, B, C, … lager ovanför posterna så att du väljer en bokstav först. Det ställs in per fält inuti en mall, från fältets snabbmeny: Dela upp [fält] efter deras första bokstav. Låt det vara avstängt för korta listor; slå på det för de nivåer — vanligtvis artister — där listan är enorm.

Bläddra en tagg som ett kapslat träd

Vissa taggar packar en hierarki i ett enda värde med en avgränsare – en Gruppering-tagg som Jazz/Cool Jazz, en anpassad genre som Electronic/Ambient/Drone. Som standard är hela strängen en platt post, så strukturen du kodade i taggen går förlorad. Markera fältet som hierarkiskt och insticksprogrammet delar varje värde vid en avgränsare du väljer och förvandlar det istället till ett nedbrytbart träd – du väljer Jazz, sedan Cool Jazz, precis som taggen är skriven.

Du ställer in detta på fliken Biblioteksinställningar: välj ett fält, skriv det enda tecken som skiljer dess nivåer (till exempel /), och lägg till det i listan. Det tillämpas sedan överallt där fältet används som en grupperingsnivå i någon upptäcktsväg. Spår taggade vid en gren snarare än ett blad – taggade bara Jazz, utan undergenre – visas under en hakparentes [Jazz]-post bredvid de djupare grenarna, så inget döljs. En gren som bara innehåller ett barn kollapsar automatiskt (samma envalsregel som överallt annars), och ; kan inte användas som avgränsare – det är MusicBees egen flervärdesavgränsare, så ett värde som Rock; Jazz/Cool Jazz delas först upp i de två taggarna, sedan borras varje.

Arbetsexempel. Dina spår har en Gruppering-tagg som Jazz/Cool Jazz, Jazz/Hard Bop och Classical/Baroque, och en upptäcktsväg som grupperar efter Gruppering. Platt, noden listar tre långa poster. Markera Gruppering hierarkisk med /, och samma nod öppnas nu till Jazz och Classical; att öppna Jazz avslöjar Cool Jazz och Hard Bop. Ett spår taggat bara Jazz visas under en [Jazz]-post bredvid dem. Du kan inte förutsäga denna layout från taggen ensam – det beror helt på vilket fält du har markerat och med vilken avgränsare – så det är värt att ställa in det medvetet.

Fliken Biblioteksinställningar – prefix och hierarkiska fält

Inställningar

Kontroll Vad den gör
Hierarkiska fält Listan över fält som återges som ett nedbrytbart träd, varje parat med sin en-teckensavgränsare. Välj ett fält, skriv avgränsaren (inte ;), och lägg till den; fältet borrar sedan nivå-för-nivå överallt där en upptäcktsväg grupperar efter det.

Nivåer med ett val kollapsar av sig själva

När en grupperingsnivå endast har ett objekt för det du bläddrar i, hoppar insticksprogrammet över den istället för att låta dig öppna en mapp som innehåller en enda mapp — du kommer direkt till nästa verkliga val. Det finns inget att konfigurera; det sker automatiskt, på varje sökväg.

Exempel. Din sökväg grupperas efter Record Type → Album → Tracks. En artist som endast har släppt LP-skivor skulle annars tvinga dig att öppna en ensam mapp Record Type → LP bara för att komma åt albumen. Istället, när du öppnar den artisten, kommer du direkt till albumen — den redundanta nivån försvinner för den artisten, medan en artist med LP-skivor och EP-skivor fortfarande visar valet för Record Type. Flera nivåer med ett enda objekt i rad fälls ihop tillsammans, och en första-bokstavs-nivå med endast en bokstav i spel försvinner på samma sätt.

Miniatyrbilder för album i bläddringsträdet

Album inkluderar deras konstverk i bläddringssvaret, så att enheter som visar miniatyrbilder i sina listor faktiskt visar dem. (Det ursprungliga tillägget bifogade endast konstverk till enskilda spår, så albumlistor visades som vanlig text.) Inget att konfigurera — det följer bara med albumet.

De flesta kontrollappar har en sökruta och en "slumpmässig" eller "blanda"-mapp bredvid bläddringsträdet. Båda når MusicBee som samma typ av UPnP-förfrågan, och båda besvaras direkt från ditt bibliotek snarare än från ett förbyggt index — så ett spår du omtaggade för en minut sedan hittas direkt.

Sök matchar på titel eller artist. En titelsökning tittar på spårtiteln när din app söker efter spår och på albumtiteln när den söker efter album. En artistsökning matchar antingen spårets Artist eller albumets Album Artist, så en samling dyker upp oavsett om du skriver artistens namn eller namnet som albumet är arkiverat under. Resultaten kommer tillbaka en sida i taget när du scrollar, så en term som matchar tusentals spår förblir responsiv istället för att stanna eller loopa tillbaka till de första resultaten.

Arbetsexempel. Du söker efter Blue från din kontrollapps albumvy. Du får albumen som heter Blue — Kind of Blue, Blue Train — och inte varje album som råkar innehålla ett spår som heter "Blue". Växla appen till dess spårvy och sök samma ord så får du spåren istället. Vilket fält som matchas följer vad din app frågade efter, inte vad du skrev.

Blandningsmappar — posterna Slumpmässiga spår och Slumpmässiga album som vissa appar visar — är en förfrågan om en del av allt, utan någon sökterm bifogad. Som standard är det "allt" ditt hela musikbibliotek, vilket sällan är vad du vill om hälften av det är talböcker eller material du aldrig blandar. Slumpmässig uppspelning från, på fliken Biblioteksinställningar, låter dig peka den mot ett av dina MusicBee-filter istället, så varje slumpmässig förfrågan drar bara från det filtrets innehåll. Dolda filter erbjuds också här — att begränsa blandningen har inget att göra med om du vill att det filtret ska visas i bläddringsträdet. Att öppna en blandningsmapp inifrån ett filter på enheten blandar fortfarande det filtret: ett explicit val som gjordes under bläddringen vinner alltid över inställningen.

Inställningar

Kontroll Vad den gör
Slumpmässig uppspelning från Var en enhets blandningsförfrågan drar från — All musik (hela ditt bibliotek, standard) eller ett namngivet MusicBee-filter. Om det valda filtret senare raderas eller döps om i MusicBee, faller inställningen tyst tillbaka till hela biblioteket.

Anpassa strömmen till varje enhet

Att bläddra är bara halva jobbet; ljudet måste fortfarande spelas upp på hårdvara som varierar kraftigt i vad den accepterar. Denna funktion är hur MusicBee skräddarsyr varje ström — och den är delad: den gäller både när rollen Server levererar ett spår till en bläddringsenhet, och när rollen Control point spelar upp till en fjärrenhet. Två koncept driver den: device profiles (vad en enhet kan hantera) och transcoding precedence chain (om ett spår alls kodas om).

Enhetsprofiler – anpassning till varje enhet

Verklig UPnP-hårdvara är inkonsekvent med vad den accepterar: en streamer vill ha 24-bitars FLAC, en annan spelar bara 16-bitars PCM, en tredje ljuger om vilka codecs den stöder. En enhetsprofil är hur du lär plugin-programmet en enhets begränsningar och egenheter.

Hur en profil väljs. Varje enhet identifierar sig med en User-Agent-sträng när den ansluter. En profil säger "tillämpa mig när user-agenten innehåller detta fragment." När en enhet ansluter hittar plugin-programmet den matchande profilen; om ingen matchar är en inbyggd Generisk enhet-profil reserven. Du kan lista flera fragment separerade med | (till exempel Linn|ChorusDS|BubbleDS) så att en profil täcker en familj av relaterade enheter.

Vad en profil kontrollerar. De gränser en enhet inte kan överskrida – maximal bildstorlek för albumomslag, tillåtet samplingsfrekvensområde, maximalt bitdjup, endast stereo-nedmixning – plus, när ett spår behöver konverteras, vilket utdataformat och samplingsfrekvens det ska konverteras till. En separat grupp av "problem-enhet"-omkopplare löser specifika hårdvarufel (rå-PCM-hantering, byteordning, HTTP-huvudet för innehållslängd). Dessa finns eftersom UPnP-efterlevnaden i praktiken är bristfällig; de flesta rör dem aldrig.

När man ska ändra en profil. Endast när en specifik enhet beter sig felaktigt. Direkt ur lådan täcker den generiska profilen, plus de förinställda enhetsspecifika inställningarna för vanlig hårdvara, de flesta fall. För att hitta en enhets user-agent så att du kan rikta in dig på den, aktivera felsökningsloggning (se Diagnostik), spela något från enheten och läs raden useragent= i loggen.

Profilens mest betydelsefulla omkopplare – tvinga fram inbyggd ström – handlar egentligen inte alls om begränser; den avgör om något av ovanstående gäller. Det är nästa koncept.

Enhetsprofiler – fliken Enhet, en profils begränsningar

Enhetsprofiler – fliken Avancerat, omkopplarna för problem-enheter

Inställningar

Kontroll Vad den gör
Namn Profilens visningsnamn.
Gäller när user-agent innehåller De user-agent-fragment en enhet måste innehålla för att matcha denna profil; separera alternativ med |. Enheter som inte matchar faller tillbaka till den generiska profilen.
Maximal bildstorlek Maximal pixelstorlek för albumomslag som skickas till denna enhet (160 px är DLNA-standarden; större stöds inte universellt).
Utgångssamplingsfrekvens / till Samplingsfrekvensområdet som enheten accepterar; källor utanför det konverteras (tvingar fram transkodning).
Kanaler / endast stereo Nedmixar flerkanaligt till stereo för enheter som bara hanterar två kanaler.
Maximal bitdjup Högsta bitdjup som enheten accepterar; djupare källor konverteras.
Utgångsformat När en transkodning behövs, formatet att konvertera till (PCM, FLAC, MP3, AAC, Ogg).
Utgångssamplingsfrekvens Samplingsfrekvensen att använda vid transkodning; "samma som källa" bevarar originalet.
Använd inte RAW PCM Kapslar in PCM i en WAV-behållare istället för att skicka rå L16/L24. För enheter som förvränger rå PCM (vissa Marantz).
Tvinga little endian för PCM-strömmar Skickar PCM little-endian istället för specifikationens big-endian. Botar uppspelning av vitt brus på enheter som förväntar sig little-endian.
Innehållslängd Hur HTTP Content-Length-huvudet ska fyllas: Standard (korrekt värde), Ingen (utelämna), Endast PCM, eller Fast (ett "enormt" sentinelvärde). För enheter som hanterar huvudet felaktigt.

Transkoda eller inte – prioritetskedjan

"Transkodning" innebär att en låt kodas om i farten – till ett format som enheten kan spela upp, eller så att MusicBees EQ och volymutjämning kan tillämpas. Insticksprogrammet vill helst inte transkoda (att skicka originalfilen är snabbare och förlustfritt), så det följer en fast kedja av regler för att bestämma sig. Högre regler vinner och åsidosätter tyst lägre regler. Detta är den mest missförstådda delen av insticksprogrammet, eftersom flera inställningar ser ut som om de borde samarbeta men inte gör det.

Prioritet Regel Effekt
1 (högst) Tvinga transkodning (per enhetsprofil) Transkodar alltid. Åsidosätter allt nedanför. Ömsesidigt uteslutande med tvinga-native – att kryssa i den ena avmarkerar den andra.
2 Tvinga native-ström (per enhetsprofil, standard ) Transkodar aldrig för denna enhet. Undertrycker regler 3–5 helt – skickar originalbytes oavsett format, effekter eller begränsningar.
3 EQ/DSP och ReplayGain (Bibliotek) Tvingar transkodning så att ljudet kan bearbetas. Ignoreras tyst om regel 2 vinner.
4 Samplingsfrekvens / bitdjup / endast stereo (enhetsprofil) Källa utanför räckvidd → transkoda för att passa. Ignoreras tyst om regel 2 vinner.
5 (lägst) Codec-stöd (enhetsprofil) Källcodec som enheten inte kan spela → transkoda till profilens utdataformat. Ignoreras tyst om regel 2 vinner.

Eftersom tvinga native-ström är PÅ som standard för varje profil, är standardbeteendet: ge enheten originalfilen och gör inget annat. Det är precis rätt för en modern enhet på ett bra nätverk – men det betyder att bibliotekseffekterna och profilens ljudbegränsningar verkar "inte göra något" förrän du ändrar regel 2.

Arbetsexempel. Du vill att MusicBees ReplayGain-volymutjämning ska tillämpas på din streamer. Du kryssar i Jämna ut uppspelningsvolymen med det Replay Gain-läge som är aktivt i MusicBee under Bibliotek. Du spelar en låt – och volymen är inte alls utjämnad.

Varför: streamerns profil har fortfarande tvinga native-ström PÅ (regel 2). Regel 2 rankas högre än ReplayGain-regeln (regel 3), så insticksprogrammet skickar den orörda filen och din ReplayGain-inställning hoppas tyst över.

Lösningen: öppna den enhetens profil och avmarkera tvinga native-ström. Eftersom tvinga-native är per profil, kan du lämna den på för din bit-perfekta hi-fi DAC och av för den bärbara högtalaren som behöver ReplayGain – varje enhet får rätt svar.

Tumregler:

  • Vill du att EQ/DSP eller ReplayGain ska tillämpas på en enhet? Stäng av tvinga native-strömden enhetens profil.
  • Vill du garantera en ny transkodning (för testning, eller för en enhet som har problem med native-filer)? Kryssa i tvinga transkodning på dess profil – den rankas högre än allt annat.
  • Annars, lämna tvinga native-ström på. Det är den inställning i insticksprogrammet som har störst inverkan och standardinställningen är rätt för de flesta moderna enheter.

Enhetsprofiler – fliken Transkodning

Inställningar

Kontroll Vad den gör
Tvinga nativ ström (kringgå omkodare) Skickar originalfilens bytes, förbi transkodaren, effekter, ReplayGain och profilens ljudbegränsningar. Standard PÅ. Den mest inflytelserika uppspelningsinställningen; regel 2 i kedjan ovan.
Tvinga omkodning (ömsesidigt uteslutande med tvinga nativ ström) Tvingar varje ström till denna enhet genom transkodaren. Rankas högre än tvinga-native; de två är ömsesidigt uteslutande (att kryssa i den ena avmarkerar den andra). Regel 1.
Använd den equalizer och de DSP-effekter som är aktiva i MusicBee [tvingar omkodning] Tillämpar MusicBees equalizer- och DSP-effekter på utgående ljud. Tvingar transkodning (regel 3), och undertrycks på alla enheter vars profil har tvinga-native på.
Justera uppspelningsvolymen med hjälp av replay gain-läget aktivt i MusicBee [tvingar omkodning] Tillämpar MusicBees ReplayGain-volymutjämning. Tvingar transkodning (regel 3), och undertrycks på alla enheter vars profil har tvinga-native på.
Tvinga nativ ström för radio (kringgå omkodare för stationer) Skickar radio-/ström-källor orörda, förbi transkodaren specifikt för stationer.

Renderer – MusicBee som uppspelningsmål

Med Renderer-rollen påslagen (växeln UPnP Renderer) talar MusicBee om för nätverket "Jag är en enhet du kan spela upp till." En separat kontrollpunktsapp – en fjärrkontroll på telefonen, en annan mediakontroll – kan sedan välja MusicBee och skicka ljud för uppspelning på denna PC. Du ger målet ett vänligt rendernamn så att det är igenkännbart i den andra appens lista.

Vad den kan spela upp. Båda typerna av spår som en kontrollerande app kan skicka. Om spåret kommer från MusicBees eget bibliotek – du bläddrade i denna PCs bibliotek på din telefon och tryckte på en låt – spelar MusicBee filen direkt från sin egen disk, orörd, utan någon av den kvalitetsförlust som en rundtur över nätverket skulle kunna medföra. Om spåret finns någon annanstans – en fil lagrad på själva telefonen, en NAS, en annan mediaserver – hämtar MusicBee den och spelar upp den här.

Ett spår som skickas från någon annanstans kopieras först, och varför det spelar roll. För ett spår som inte finns i ditt bibliotek laddar MusicBee tyst ner en kopia till en temporär mapp och spelar upp den, snarare än att lyssna på den över nätverket medan den spelas. Det måste den: allt som MusicBee behandlar som en live nätverksström kan startas och stoppas men inte flyttas igenom, så att hoppa till en annan punkt i låten skulle vara omöjligt, och spåret skulle visas som en ren webbadress istället för dess titel. Att spela en riktig fil på din egen disk undviker båda. Kopieringen tar ungefär en sekund på ett hemnätverk. Några behålls sida vid sida – den som spelas, den som är näst i kö, och en bakom så att bakåtspolning är omedelbar – och äldre raderas när nya spår anländer; allt som blir över rensas bort nästa gång MusicBee startar. Spårlängd är inget hinder: en lång högupplöst eller DSD-fil hämtas som vilken annan som helst.

Internetradio känns igen och lämnas ifred. En direktsändning kopieras aldrig, eftersom den inte har något slut att ladda ner och det finns inget att hoppa igenom ändå – MusicBee spelar helt enkelt upp den som den ström den är. Den kontrollerande appen säger vilken av de två den skickar, så detta kräver ingen inställning och ingen gissning från din sida. Detsamma gäller om en kopia inte kan hämtas av någon annan anledning: uppspelningen fortsätter över nätverket, och först då blir titeln och positionsreglaget opålitliga.

Album spelas utan pauser. När den kontrollerande appen berättar för MusicBee vad som kommer härnäst – de flesta gör det – hämtas det spåret medan det aktuella fortfarande spelas, och MusicBees egen spelare korsar gränsen. Så en liveinspelning, ett DJ-set eller ett kontinuerligt klassiskt verk som skickas från en telefon spelas igenom som det ska, snarare än att pausa vid varje spår.

Varför du skulle använda det. Det låter en telefon eller surfplatta använda denna PC som en UPnP-högtalare – praktiskt när PC:n är ansluten till de bra högtalarna och du vill styra den från soffan, oavsett om musiken finns på PC:n eller på telefonen i din hand.

När du ska stänga av det. Låt det vara avstängt om du inte specifikt vill skicka ljud till denna PC från en annan app. Med det avstängt kommer MusicBee inte att visas som ett mål någonstans, vilket oftast är vad du vill.

Använd en kontrollerande app åt gången. UPnP har ingen uppfattning om att en app "äger" en renderer: vilken app som helst på nätverket kan skicka spår till MusicBee, och vilken app som helst som tittar kan reagera på vad den ser. Så om två spelare är riktade mot MusicBee samtidigt, kommer du att få ett beteende som ser ut som en bugg men inte är det. En andra app som fortfarande har MusicBee valt fortsätter att titta, ser spåret den skickade stanna, drar slutsatsen att dess låt är slut, och skickar hjälpsamt nästa från dess kö – så musiken hoppar plötsligt till ett annat album, eller att trycka på nästa i en app startar en låt i den andra. Att stoppa uppspelningen i den andra appen är inte tillräckligt, eftersom den förblir vald och fortsätter att titta. Rikta den tillbaka till telefonens egen högtalare, till en annan enhet, eller stäng den ordentligt.

Anmärkning om mognad. Renderern är nyare än serverrollen och har testats mindre på verklig hårdvara. Om en viss kontrollerapp driver den konstigt är det användbart att rapportera.

Inställningar

Kontroll Vad den gör
UPnP-renderare: Tillåt andra appar att spela till MusicBee Huvudbrytare för Renderer-rollen – låter andra appar spela upp till MusicBee. Träder i kraft efter en omstart av MusicBee.
Renderarnamn Namnet denna PC annonserar som en renderer, visas i andra appars enhetslistor.

Control point — spela upp till en fjärrhögtalare

Med Control point-rollen aktiverad (omkopplaren UPnP Control Point) visas nätverksbaserade UPnP/DLNA-renderare som utgångsenheter i MusicBee — på samma ställe som du väljer ditt ljudkort. Välj en, tryck på Spela, och MusicBee strömmar ljudet ut till den fjärrhögtalaren eller streamern medan du fortsätter att använda MusicBees eget gränssnitt som fjärrkontroll.

Varför du skulle använda den. Den får en hi-fi-streamer eller nätverksansluten högtalare att bete sig som vilken annan MusicBee-utgång som helst, utan extra programvara emellan.

När du ska stänga av den. Låt den vara avstängd om du bara spelar upp via den här datorns egna högtalare.

Två saker påverkar hur denna roll fungerar. Den första är gapless playback (nedan). Den andra är Anpassa strömmen till varje enhet — samma enhetsprofiler och transkodningsprioritet som styr servern gäller även här, eftersom insticksprogrammet återigen matar ljud till en fjärrenhet. Control point återanvänder också MusicBees HTTP-server för att mata ut ljudet, så serverns port- och brandväggsregler spelar roll här även om du aldrig aktiverar Server-rollen.

Inställningar

Kontroll Vad den gör
UPnP-kontrollpunkt: Lägg till nätverksbaserade UPnP/DLNA-renderare som MusicBee-utgångsenheter Huvudomkopplare för Control point-rollen — lägger till nätverksbaserade UPnP/DLNA-renderare som MusicBee-utgångsenheter.

Gapfri uppspelning – två olika mekanismer

Viss musik är menad att spelas utan avbrott – livealbum, klassiska satser, DJ-set, konceptalbum. En halv sekunds tystnad mellan spåren förstör dem. Insticksprogrammet erbjuder två sätt att ta bort den luckan, och de fungerar väldigt olika.

Verkligt gapfritt (NextURI). När en renderer säger att den stöder det, förladdar insticksprogrammet nästa spår till enheten innan det aktuella spåret slutar, så enheten korsar gränsen internt utan tystnad – som en CD-spelare. Detta är den föredragna mekanismen: varje spår behåller sin egen metadata, sökning och hoppning fungerar fortfarande, och det finns inget att slå på – insticksprogrammet använder det automatiskt på kapabla enheter. Per enhet kan du stänga av det (för hårdvara vars implementering är buggig) eller säga åt insticksprogrammet att inte rensa det köade spåret när listan töms (en lösning för enheter som behandlar en tom kö som "stopp").

Kontinuerlig ström. Den äldre reservlösningen sammanfogar allt till en enda oändlig ström. Den garanterar inga luckor på någon enhet – men till en verklig kostnad: renderaren visar informationen för det första spåret under hela sessionen, "nästa/föregående"-kontrollerna slutar fungera, och eftersom allt är sammansmält till en ström måste allt transkodas (force-native kan inte tillämpas). Etiketten på skärmen förklarar kompromissen.

Vilken du ska använda. Föredra verkligt gapfritt – det är automatiskt och förlustfritt. Fall tillbaka till kontinuerlig ström endast för en enhet som inte kan hantera NextURI och där luckorna verkligen stör dig, och acceptera att du förlorar metadata per spår och transportkontroller. De två är ömsesidigt uteslutande: att slå på kontinuerlig ström inaktiverar NextURI, så du kan inte av misstag köra båda.

The Playback tab

Inställningar

Kontroll Vad den gör
Aktivera uppspelning utan mellanrum (NextURI) för denna enhet Aktiverar verkligt gapfritt (NextURI) för denna enhet. På för kapabla enheter; stäng av om enhetens implementering är buggig.
Skicka inte tom NextURI när kön töms Stoppar insticksprogrammet från att skicka en tom NextURI när kön töms – en lösning för enheter (t.ex. Denon) som behandlar det som "stopp".
Mata ut som en kontinuerlig ström Skickar en kontinuerlig sammanfogad ström istället för diskreta spår. Tar bort luckor på alla enheter, men renderaren visar endast informationen för det första spåret, transportkontrollerna slutar fungera, och allt transkodas. Inaktiverar NextURI när den är på.

Hitta varandra på nätverket

Innan någon av rollerna kan fungera måste enheterna hitta varandra. MusicBees server binder till en nätverksadress och en TCP-port, och annonserar sig sedan till LAN via SSDP så att enheter kan upptäcka den. Standardporten är 9779; om den porten redan är upptagen väljer insticksprogrammet automatiskt en närliggande ledig port och enheter upptäcker den ändå (du behöver bara ställa in en fast port om din installation kräver det).

Två inställningar är viktiga på maskiner med ovanlig nätverkskonfiguration:

  • IP-adress / nätverksgränssnitt. "Automatisk" tjänar på alla gränssnitt, vilket är rätt för de flesta datorer. På en maskin med flera nätverk samtidigt — Wi-Fi och Ethernet och en VPN — välj det gränssnitt som dina ljudenheter faktiskt använder, så att MusicBee annonserar en adress de kan nå.
  • Port. Ändra den endast om ett annat program redan använder standardporten, eller om din brandvägg kräver ett specifikt nummer.

Den främsta anledningen till att en enhet "inte kan se MusicBee" är brandväggen, inte UPnP. Windows Brandvägg måste tillåta MusicBees port på både de privata och offentliga nätverksprofilerna, och du måste vanligtvis starta om MusicBee efter att ha ändrat brandväggsregler. Kontrollera detta innan du ändrar något inuti insticksprogrammet.

Inställningar

Kontroll Vad den gör
IP-adress Vilket nätverksgränssnitt servern binder till; "Automatisk" använder alla gränssnitt. Träder i kraft efter en omstart av MusicBee.
port TCP-porten som HTTP-servern lyssnar på (standard 9779). Om porten är upptagen väljer insticksprogrammet automatiskt en ledig. Träder i kraft efter en omstart.

Diagnostik

När en specifik enhet beter sig felaktigt är pluginets beteende osynligt tills du loggar det. Dessa verktyg tjänar alla roller, så de finns på sin egen Felsökning-flik snarare än under en funktion.

  • Logga felsökningsinformation registrerar varje begäran, enhetens user-agent och varje codec/transkodningsbeslut till en loggfil som du kan öppna med Visa. Slå på den under felsökning (och för att upptäcka en enhets user-agent för en profil), sedan av igen – loggen växer snabbt. Du kan också rensa den vid varje start.
  • Nätverket är bandbreddsbegränsat (Uppspelning) talar om för pluginet att när det transkodar, ska det använda enhetsprofilens förlustfria utdata (MP3/AAC/Ogg) snarare än en stor förlustfri. Slå på den för långsamma Wi-Fi-länkar.
  • Fliken Felsökning innehåller också lågnivåfrågeverktyg avsedda för utveckling; du kan ignorera dem vid normal användning (se Andra inställningar).

För daglig diagnos är mönstret: aktivera loggning → återskapa problemet → läs loggen → justera relevant enhetsprofil → inaktivera loggning.

Felsökningsfliken — loggning och lågnivåfrågeverktygen

Inställningar

Kontroll Vad den gör
Logga felsökningsinformation Loggar varje begäran, user-agent och codec-beslut till en fil. På under felsökning, av annars.
Rensa logg vid insticksprogrammets start Tömmer loggen varje gång pluginet startar.
Visa Öppnar den aktuella loggfilen.
Rensa logg Rensar loggen nu.
Nätverket har begränsad bandbredd - omkoda utsignalen till det förlustfyllda format som anges i enhetsprofilen ovan När en transkodning sker, använd enhetsprofilens förlustfria utdataformat. För långsamma länkar. Kräver ett förlustfritt format valt i profilens transkodningssektion.

Snabb felsökning

Symptom Första sak att prova
En enhet ser inte MusicBee alls Kontrollera Windows Brandvägg för både privata och publika nätverk; plugin-programmets port (9779 som standard) måste vara nåbar. Starta om MusicBee efter brandväggsändringar.
En källa (Podcasts, Radio, Inkorg…) saknas från trädet Den är förmodligen dold. På fliken Visa, kryssa i noden och se till att dess Synlig kryssruta är på.
En nod bläddrar med fel form Använd en annan upptäcktsväg på fliken Visa — t.ex. Platta spår för en spellista, Albumartist → Album → Spår för ett musikfilter.
Enheten ser MusicBee men spelar inte upp några spår Enhetens profil är förmodligen fel, eller så är force-native avstängt och en omkodning misslyckas. Kryssa i tvinga nativ ström på den enhetens profil och försök igen.
Ljud spelas som statiskt brus / vitt brus Prova tvinga little endian för PCM-strömmar på enhetens profil. Om det inte hjälper, prova använd inte RAW PCM.
Mellanrum mellan spår Verklig gapless körs automatiskt på enheter som stöder NextURI. Om du fortfarande hör mellanrum, stöder enheten antingen inte det eller dess implementering är buggig — falla tillbaka till utdata som en kontinuerlig ström (gapless garanteras, men spårinfo och nästa/föregående kontroller slutar fungera).
EQ / DSP / ReplayGain "gör ingenting" Tvinga nativ ström är på för den enheten — det överordnar dem. Avmarkera tvinga nativ ström på enhetens profil. Se Omkoda eller inte.
En modern (2020+) enhet ignorerar MusicBees kontroller Fixen för enheter som annonserar som MediaRenderer:2/3 finns i denna fork; det borde fungera. Om inte, fånga en felsökningslogg och skapa ett ärende.
Plugin-programmet laddas men Konfigurera öppnas inte Kontrollera MusicBees ErrorLog.dat — plugin-programmet kraschade troligen vid laddning. Att ta bort plugin-programmets inställningsfil och omkonfigurera brukar lösa det.
Andra språk än engelska Plugin-programmet levereras med 22 språk och följer MusicBees eget språk, och denna hjälp finns tillgänglig på alla dessa. För att använda ett annat, ställ in språket på fliken Allmänt.

Hur omfattande testningen har varit

För att du inte ska bli överraskad, här är en ärlig beskrivning av hur mycket verklig användning plugin-programmet har haft.

Allt testades mot BubbleUPnP, med foobar2000 som en andra referens. Alla tre roller fungerar där – men BubbleUPnP är den enda motpart som plugin-programmet har bevisats mot, så andra kontrollappar, andra spelare och bläddringsenheter utöver dessa två är otestade och skulle dra nytta av gemenskapstester.

Detta är viktigast i praktiken när det gäller att spela upp till en fysisk streamer (kontrollpunktsrollen). Verkligt gapless spårövergångar bekräftades på BubbleUPnP, men riktiga streamers – WiiM, Sonos, Cambridge, Eversolo, Marantz, Denon – hanterar överlämningen mellan spår något annorlunda, och ingen har testats på faktisk hårdvara. Om gapless inte fungerar som det ska på en av dem, stäng av NextURI för den enheten så att den återgår till att spela ett spår i taget.

Övriga inställningar

Ett fåtal kontroller tillhör inte någon specifik funktion:

Kontroll Vad den gör
Hjälp Öppnar denna hjälpsida i din webbläsare, på MusicBees språk (återgår till engelska om en översättning inte är klar ännu).
Läs senaste fråga, Kör fråga, Hämta taggar för de första 5 Lågnivåfrågeverktyg på fliken Felsökning, avsedda för utveckling; ignorera dem vid normal användning.
Spara Sparar ändringar. Inställningar som binds vid start (port, IP, max anslutningar, renderer) visar en ⚠ Omstart krävs-ikon tills du startar om MusicBee.
Avbryt Stänger dialogrutan utan att spara.

Erkännanden

  • Ursprungligt plugin av Steven Mayall. Denna fork skrev om biblioteksbläddringen och inställningsdialogen och lade till renderaren, men UPnP-, HTTP- och SSDP-kärnan som allt bygger på är fortfarande till stor del hans kod.
  • Den stängda källkoden UPnP 2025 fork av BoringName, vars offentliga forumtråd tillhandahöll buggkatalogen.
Innehåll