Pergunta

Estou desenvolvendo um aplicativo de mixagem musical no iPhone. Ele misturará a música e o usuário pode compor uma nova música dela. Eu preciso gravar esta música final. Eu tinha usado avaudiorEcorder para gravar este. Mas nenhuma mudança. Ele pode gravar som do microfone, mas eu preciso gravar o som do aplicativo.

Eu tinha usado a função de devolução da fila de áudio para gravar o áudio. Mas quando o aplicativo é executado, posso ouvir o áudio do meu aplicativo e não consegui ouvir nenhum som do áudio gravado. Não há problema em gravar, pois posso ouvir o áudio gravado através do microfone. Mas preciso de um gravador offline que possa gravar a saída de áudio do iPhone, em vez da entrada de áudio através do microfone. Preciso de um gravador que possa gravar áudio usando o iPod Touch (sem microfone).

Qualquer ajuda?

Foi útil?

Solução

Encontrei a solução de outra maneira. Eu tinha usado o gráfico de áudio consiste em duas unidades de áudio. Um mixer digital e uma unidade de áudio de saída. Eu havia criado o misturador com seis canais para poder tocar seis instrumentos simultaneamente. Quando o usuário compõe a música, salvarei o conteúdo e, durante a gravação offline, sequenciarei os instrumentos salvos para o Mixer.

Para melhor desempenho, vou parar o gráfico de áudio enquanto carrega novos arquivos de áudio ou instrumento. Depois de carregar os arquivos, a gravação será retomada novamente.

Na função de reprodução de entrada do mixer, de acordo com o número do barramento de entrada, os pacotes de áudio serão alimentados ao misturador. Na reprodução de entrada da unidade de áudio de saída, um novo buffer é alocado para armazenar a saída do mixer. A saída do mixer foi criada usando a função de renderização de áudio. Como eu não estava modificando o buffer de entrada de áudio, não haverá som fora do aplicativo. Finalmente, eu tinha um gravador de áudio offline.

Passos

  1. Crie uma sessão de áudio usando o modo de gravação e reprodução
  2. Crie um gráfico de áudio com um mixer e uma unidade de saída de áudio.
  3. Configure canais do misturador ou números de barramento de entrada (número de fluxos de áudio).
  4. Crie o método de reprodução de entrada para o mixer e a unidade de áudio.
  5. Configure o formato de áudio de origem e destino para os barramentos de entrada e saída da unidade de áudio.
  6. Crie um arquivo de áudio usando o formato de destino (para verificação de codificação AAC para obter suporte de codificação AAC).
  7. Pegue os arquivos de áudio e desenvolva um método para fornecer pacotes de áudio para um canal especificado.
  8. Na entrada de áudio, a reprodução do mixer configure a busca de arquivos de áudio.
  9. Na entrada de entrada de áudio, reproduza a unidade de saída, use a função de renderização de áudio para buscar a saída do mixer em novos buffers de áudio. Armazene o buffer de áudio no arquivo de áudio aberto.
  10. Pausa a gravação usando a gravação do gráfico de áudio e retomando a gravação usando os métodos de início do gráfico de áudio. Durante esse intervalo, configure o novo arquivo de som buscando.
  11. Finalmente, pare de gravar e feche o arquivo de áudio.
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top