OS: Suse Linux, sound lib: ALSA 0.5.x
Ik heb een applicatie die geluid samples ontvangt via TCP/IP. Die samples zijn afkomstig uit twee verschillende bronnen, maar ze moeten tegelijkertijd (dus door elkaar heen) te horen zijn. Ik open via ALSA device 0 subdevice 0, en device 0 subdevice 1, en stuur daar de samples naartoe.
Het lijkt goed te werken, MAAR:
Om te testen heb ik momenteel alleen de beschikking over 1 TCP/IP bron. Dus ik stuur de samples van die ene bron naar beide subdevices. Ik controleer of ze beide werken door soms de ene, soms de andere uit te schakelen (softwarematig) en het geluid blijft hoorbaar, dus kennelijk krijgen beide devices de samples correct binnen (als ik ze allebei uitschakel is het geluid wel weg). Maar als beide kanalen aan staan begint na een minuutje of zo het geluid brak te worden totdat het haast helemaal verdwijnt. En nog later wordt het langzaam weer hoorbaar... Als ik tijdens een brakke periode een van beide kanalen uitschakel, is het geluid ineens weer goed.
Kan het zijn dat de samples op die twee subdevices elkaar uitdoven? Dus dat het ene signaal een soort antigeluid is voor het andere (faseverschil van 180 graden)? En waarom gebeurt dat dan langzaam en komt het geluid ook langzaam weer terug? Je zou toch denken dat die twee subdevices op precies dezelfde clockrate draaien en dat het faseverschil (als dat tenminste de oorzaak is) constant blijft?
Iemand een verklaring? (Ja ik weet wel dat ik nog moet testen met twee totaal onafhankelijke geluidsbronnen, maar ik ben toch wel nieuwsgierig of er iemand een antwoord heeft.)
Ik heb een applicatie die geluid samples ontvangt via TCP/IP. Die samples zijn afkomstig uit twee verschillende bronnen, maar ze moeten tegelijkertijd (dus door elkaar heen) te horen zijn. Ik open via ALSA device 0 subdevice 0, en device 0 subdevice 1, en stuur daar de samples naartoe.
Het lijkt goed te werken, MAAR:
Om te testen heb ik momenteel alleen de beschikking over 1 TCP/IP bron. Dus ik stuur de samples van die ene bron naar beide subdevices. Ik controleer of ze beide werken door soms de ene, soms de andere uit te schakelen (softwarematig) en het geluid blijft hoorbaar, dus kennelijk krijgen beide devices de samples correct binnen (als ik ze allebei uitschakel is het geluid wel weg). Maar als beide kanalen aan staan begint na een minuutje of zo het geluid brak te worden totdat het haast helemaal verdwijnt. En nog later wordt het langzaam weer hoorbaar... Als ik tijdens een brakke periode een van beide kanalen uitschakel, is het geluid ineens weer goed.
Kan het zijn dat de samples op die twee subdevices elkaar uitdoven? Dus dat het ene signaal een soort antigeluid is voor het andere (faseverschil van 180 graden)? En waarom gebeurt dat dan langzaam en komt het geluid ook langzaam weer terug? Je zou toch denken dat die twee subdevices op precies dezelfde clockrate draaien en dat het faseverschil (als dat tenminste de oorzaak is) constant blijft?
Iemand een verklaring? (Ja ik weet wel dat ik nog moet testen met twee totaal onafhankelijke geluidsbronnen, maar ik ben toch wel nieuwsgierig of er iemand een antwoord heeft.)