Como é possível ouvir o áudio de vários vídeos diferentes no meu computador? [fechadas]

0

Estou lendo este livro e, até o momento, estando no capítulo 3, entendo que a multiprogramação e o multiprocessamento permitem para execução mais rápida de vários processos / threads existentes. Eu estou lendo em todos os seus meandros e até agora entendo tudo bem. No entanto, também é mencionado que, enquanto um programa usa módulos de E / S, outro programa tem que aguardar, implicando várias vezes que dois programas não podem usar módulos de E / S ao mesmo tempo.

Talvez eu esteja perguntando muito cedo e isso seja abordado em algum lugar mais adiante no livro, mas agora - neste momento - não posso deixar de me perguntar como posso ter, digamos, o media player VLC e o Windows Media Player tocando, vídeos diferentes no meu computador e ainda ter o áudio uma combinação do som de ambos os vídeos. É talvez que a execução de processos na E / S tenha algum tipo de temporizador também? Ou talvez meu computador tenha vários módulos de E / S (neste caso, áudio / alto-falante)? Se sim, existe um limite? Existe algum lugar neste livro que eu possa pular por um tempo para ler sobre ele? Ou talvez algum site que explica isso?

    
por Yokhen 03.10.2014 / 23:41

2 respostas

2

Existem algumas coisas a serem consideradas. em primeiro lugar, note que o áudio analógico é diferente do áudio digital, que geralmente é transmitido a uma taxa de bits de 48kHz (a taxa de bits analógica é teoricamente infinita). Se você olhar para ele com maior frequência (como talvez 1MHz), você verá "buracos" entre os bits, e você pode usar o tempo para fazer outras coisas, como processar um segundo fluxo.

A segunda nota é que a southbridge lida com o processamento do codec de áudio, para que o fluxo não precise ser transmitido todo o comprimento do barramento do sistema. entre o southbridge e a própria placa de som, muito do processamento é feito perto do barramento de origem (o controlador superIO )

Terceiro, observe que o southbridge tem múltiplas conexões com o controlador SuperIO, e o barramento entre eles (na computação moderna) é medido em GHz, assim como a taxa de bits Sata.

Em quarto lugar, observe que os fluxos são fenômenos contínuos, portanto, um encadeamento que lê um fluxo a partir do disco não é "concluído" no tempo que poderia gerar execução para outro encadeamento de maneira síncrona. nesse caso, a entrada é armazenada em buffer enquanto outros encadeamentos estão sendo executados, se o sistema não puder fornecer uma unidade de execução para o encadeamento continuamente. o sistema tem que ser capaz de dividi-los no tempo, ou um único sistema central nunca poderia reproduzir um arquivo de som. Dito isso, a CPU não faz muito com o processamento de áudio.

O áudio HD em altas taxas de bits pode sobrecarregar os barramentos do sistema e apresentar problemas com multithreading, mantendo a reprodução suave. Windows Vista + acelera outros serviços de fluxo southbridge como o cartão de rede para garantir reprodução, mas um sistema bem provisionado sem carga significativa teria pouca dificuldade em renderizar alguns streams aparentemente simultaneamente.

assim, apesar de o seu sistema ser limitado em módulos IO, o áudio é lento o suficiente para o time-slice, depende de hardware e barramentos agrupados para evitar gargalos com outros componentes do sistema, e não canal IO real.

    
por 04.10.2014 / 02:47
2

Existem vários módulos de software que alimentam o módulo de mixer de software que alimenta o hardware. Cada aplicativo mantém uma fila de dados de som não vazia, pois o módulo do mixer combina as entradas para produzir uma única saída que controla o hardware.

    
por 03.10.2014 / 23:52