Asynchrone USB en live streaming

Mediaservers, (mobiele cliënt)-spelers, HTPC's, internetradio's, software en al wat hiermee verband houdt.
  • (daarom niet noodzakelijkerwijs zelfbouw)

Moderator: Beheerdersteam

Plaats reactie
MarcelvdG
Berichten: 1273
Lid geworden op: do 31 jan 2013, 21:47
Locatie: Haarlem

Asynchrone USB en live streaming

Bericht door MarcelvdG »

Hallo allemaal,

Naar ik begrepen heb, zijn er drie methoden in gebruik om de klok van de DAC en de binnenkomende data te synchroniseren:

1. PLL
2. Asynchrone bemonsteringsfrequentieomzetter (asynchronous sample rate converter)
3. Asynchrone USB

Methode 3 is daarbij technisch het mooiste, omdat de binnenkomende data worden aangepast aan de schone klok van de DAC, terwijl bij methodes 1 en 2 de DAC-klok wordt aangepast aan de snelheid waarmee de data binnenkomen (gelukkig met filtering om de meeste jitter eraf te halen, maar er blijft altijd wat van over).

Wat ik nu alleen niet snap: hoe kan asynchrone USB nu werken als je bijvoorbeeld naar een live-stream van een of ander evenement zit te luisteren? Als er bijvoorbeeld 3612 luisteraars zijn, kan de server zijn bemonsteringsfrequentie toch niet aan alle 3612 luisteraars aanpassen?

Hoe lost men dit op? Het enige dat ik verzinnen kan, is er een lange FIFO-buffer tussen zetten en dan maar hopen dat de luisteraar niet al te lang blijft luisteren.

Bij voorbaat dank voor de antwoorden,
Marcel
Gebruikersavatar
wdd
Berichten: 103
Lid geworden op: za 19 jun 2010, 18:35
Locatie: Rotselaar (B)

Re: Asynchrone USB en live streaming

Bericht door wdd »

De audio stream wordt aangeleverd door het netwerk (een TCP/IP verbinding) en die wordt dan ontvangen in je programma (vb Foobar of JRiver of welke audio speler dan ook). Dit programma zorgt dan voor de verbinding met je DAC via USB. De synchronisatie gebeurt dus lokaal, heeft niets met de stream zelf te maken.
Gebruikersavatar
hannesie
Berichten: 17865
Lid geworden op: wo 31 dec 2008, 15:27
Locatie: Dordrecht
Contacteer:

Re: Asynchrone USB en live streaming

Bericht door hannesie »

Feitelijk hetzelfde als met de streaming van Spotify en Qobus en de andere Internet aanbieders als Wimp, Tidal maar ook alle streaming die ik zie van lokale en internationale radio's c.q. zenders.
Ik heb pas nog op 1 PC de 2 digitale uitgangen S/PDIF > LadderDac en de USB > 2e LadderDac tegelijkertijd laten aansturen, naar 2 ingangen op de voorversterker om zo ook de 2 Dac's te kunnen vergelijken.

Maar de bron was wel 1 server met programma dat synchroniseerde.
Zeg maar lokale digitale parallelle streaming. :kwijl: :lol:
hsmeets
Berichten: 2818
Lid geworden op: zo 01 mei 2011, 22:18

Re: Asynchrone USB en live streaming

Bericht door hsmeets »

in de stream zit geen klok signaal, bij het versturen wordt wel info meegestuurd over de stream: welke bemonstering frequentie, de woordbreedte, hoeveel kanalen, etc. Je PC gebruikt dat om de hardware aan te sturen (en conversies te doen indien nodig). De muziekdata komt met horten en stoten binnen (niet anders dan als je een webpagina oproept of een bestand download), je PC buffert dat om er voor te zorgen dat hij richting de hardware wel een constante stroom aan data kan sturen.
MarcelvdG
Berichten: 1273
Lid geworden op: do 31 jan 2013, 21:47
Locatie: Haarlem

Re: Asynchrone USB en live streaming

Bericht door MarcelvdG »

Betekent dit nu dat er op de lange termijn altijd haperingen moeten ontstaan, of je nu asynchrone USB of een ander soort verbinding tussen computer en DAC gebruikt? (Onder lange termijn versta ik dan uren tot dagen, afhankelijk van de buffergrootte en de nauwkeurigheid van klokfrequenties.) Als ik het goed begrijp, zijn er vier mogelijkheden:

1. Asynchrone USB, klok van de DAC loopt door toleranties wat sneller dan de (niet meegestuurde) klok van de server
De DAC gebruikt de data nu in een iets hoger tempo dan ze worden aangeleverd, dus uiteindelijk raakt de buffer een keer leeg.

2. Asynchrone USB, klok van de DAC loopt door toleranties wat langzamer dan de (niet meegestuurde) klok van de server
De DAC gebruikt de data nu in een iets lager tempo dan ze worden aangeleverd, dus uiteindelijk raakt de buffer een keer overvol.

3. Andersoortige verbinding waarbij de computer de klokfrequentie bepaalt, klok van de computer loopt door toleranties wat sneller dan de (niet meegestuurde) klok van de server
De computer speelt de data nu in een iets hoger tempo af dan ze worden aangeleverd, dus uiteindelijk raakt de buffer een keer leeg.

4. Andersoortige verbinding waarbij de computer de klokfrequentie bepaalt, klok van de computer loopt door toleranties wat langzamer dan de (niet meegestuurde) klok van de server
De computer speelt de data nu in een iets lager tempo af dan ze worden aangeleverd, dus uiteindelijk raakt de buffer een keer overvol.

Kort samengevat: asynchroon USB is voor deze toepassing niet nadelig, want haperen doet het toch wel (heel af en toe). Als de klokfrequentie van de DAC nauwkeuriger is dan die van de computer, hapert het zelfs minder (als de server tenminste ook nauwkeurig is).
Gebruikersavatar
Kappa7
Berichten: 8108
Lid geworden op: za 22 nov 2008, 9:50
Locatie: Ermelo
Contacteer:

Re: Asynchrone USB en live streaming

Bericht door Kappa7 »

Je denkt wat te moeilijk een situatie waarin er twee apparaten moeten samenwerken is er altijd sprake van een master en een slave.
De master bepaald de snelheid en de slave past zich aan.
Het stuurprogramma bepaald welke klok slave of master is.
Is de verbinding tussen beide goed dan lopen ze jaren in de zelfde pas.
De overdracht tussen de beide apparaten is analoge techniek op hoge frequenties.
Heb je last van synchronisatie problemen dan zit dat ergens in de overdracht.
Plaats reactie

Terug naar “Streaming Media/Apparatuur”