Falta pedaços ao criar arquivo com audioqueue
-
11-09-2019 - |
Pergunta
Portanto, um arquivo .wav possui alguns pedaços padrão. Na maioria dos arquivos com quem trabalho, o pedaço "riff" é o primeiro, depois um pedaço "FMT", depois o pedaço "dados". Ao gravar usando o AvaudiorEcorder, esses pedaços são criados (embora um "fllr" extra seja criado antes do pedaço de "dados".)
Ao criar um arquivo com o Audioqueue, esses pedaços padrão não são criados. Em vez disso, o Audioqueue cria, em ordem, "Caff", "Desc", "LPCM", "Free" e "Data" Chunks.
O que está acontecendo? Os pedaços "riff" e "fmt" não são necessários? Como forçar a inclusão desses pedaços?
Estou criando um arquivo por:
AudiofilecReateWithurl (URL, KaudiofilecAftype e inputDataFormat, Kaudiofileflags_eraseFile, & Audiofile);
Com o InputDataFormat sendo um AudioStreambasicDescription com um complemento completo de propriedades.
Então, como se escreve, pelo menos, os pedaços de "riff" e "fmt" com audiolográfico?
Obrigado.
Solução
Portanto, um arquivo .wav possui alguns pedaços padrão. ...
Ao criar um arquivo com o Audioqueue, esses pedaços padrão não são criados. ...
⋮
Estou criando um arquivo por:
AudioFileCreateWithURL(URL, kAudioFileCAFType, &inputDataFormat, kAudioFileFlags_EraseFile, &AudioFile);
Que este seja um exemplo do valor de mostrar o código de alguém na pergunta de alguém. :-)
kAudioFileCAFType
é um arquivo de áudio principal, não um arquivo WAV. Tentar kAudioFileWAVEType
em vez de.