Приведенный код в основном записывает телефонный звонок и сохраняет его. Используя ту же идею, я справедливо считаю, что можно также изменить то, что вы можете передать в строку, хотя предоставленный код может уже устареть. Я знаю, что это возможно, поскольку в прошлом существовали такие настройки, как MusicTransport или CallMagic (которые позволяют воспроизводить музыку на линии вызова). Кажется, я просто не могу этого понять.
У меня есть довольно общее представление о коде здесь (как также видно из https://github.com/NepetaDev/BegoneCIA/).
Код: Выделить всё
%hookf(OSStatus, AudioUnitProcess, AudioUnit unit, AudioUnitRenderActionFlags *ioActionFlags, const AudioTimeStamp *inTimeStamp, UInt32 inNumberFrames, AudioBufferList *ioData) {
OSStatus orig = %orig;
AudioComponentDescription unitDescription = {0};
AudioComponentGetDescription(AudioComponentInstanceGetComponent(unit), &unitDescription);
if (unitDescription.componentSubType == 'agcc' || unitDescription.componentSubType == 'agc2') {
if (inNumberFrames > 0) {
inNumberFrames = 1;
for (int i = 0; i < (*ioData).mNumberBuffers; i++) {
float *buffer = (float *)(*ioData).mBuffers[i].mData;
for (int j = 0; j < (*ioData).mBuffers[i].mDataByteSize/sizeof(float); j++) {
buffer[j] = 0.0;
}
}
}
}
return orig;
}
Подробнее здесь: https://stackoverflow.com/questions/791 ... jailbroken
Мобильная версия