SlideShare a Scribd company logo
1 of 15
Download to read offline
Звук и ресурсы iOS в 
Realtime 
Константин Платов 
программист iOS/OSX VoIP @Mail.ru
Hardware Part 
Mic #2 
Spk #1 
Mic #1 
Spk #2 
Mic #3
Audio Session 
Микширование фоновых звуков 
Отслеживание аудиопрерываний 
Отслеживание аудиопутей 
• 
• 
•
Audio Route 
Remote 
I/O 
Audio Session
CFStringRef newRoute; 
size = sizeof(CFStringRef); 
AudioSessionGetProperty( 
kAudioSessionProperty_AudioRoute, 
&size, 
&newRoute); 
HeadphonesAndMicrophone 
SpeakerAndMicrophone 
ReceiverAndMicrophone 
etc. Bluetooth.. 
•••• 
Audio Route 
iOS 4 iOS 5 
kAudioSessionInputRoute_LineIn; 
kAudioSessionInputRoute_BuiltInMic; 
kAudioSessionInputRoute_HeadsetMic; 
kAudioSessionInputRoute_BluetoothHFP; 
kAudioSessionInputRoute_USBAudio; 
 
 
 
 
 
 
 
 
 
kAudioSessionOutputRoute_LineOut ; 
kAudioSessionOutputRoute_Headphones; 
kAudioSessionOutputRoute_BluetoothHFP; 
kAudioSessionOutputRoute_BluetoothA2DP;
Audio Interruption 
Play 
Pause 
Resume 
Enter INT 
Exit INT 
Exit INT 
Suspend 
Should? 
Yes No
Из опыта 
Pure-C VS 
API 
AudioSessionInitialize(NULL, NULL, AudioInterruptListner, _audioDeviceIosInstance) 
Objective-C 
API 
AVAudioSession *session = 
[AVAudioSession sharedInstance]; 
[session setCategory:AVAudioSessionCategoryAmbient 
error:setCategoryError]
Audio Unit 
• 
• 
• 
• 
• 
• 
• 
Converter 
iPod Equalizer 
3D Mixer 
Multichannel Mixer 
Generic Output 
Remote I/O 
Voice Processing 
I/O 
Realtime 
работа со звуком: 
Remote I/O 
Voice Processing I/O
// Enable IO for recording 
UInt32 flag = 1; 
TEST_OSS(AudioUnitSetProperty(remoteIOUnit, 
kAudioOutputUnitProperty_EnableIO, 
kAudioUnitScope_Input, 
kInputBus, 
flag, 
sizeof(flag))); 
// Describe format 
AudioStreamBasicDescription audioFormat; 
audioFormat.mSampleRate = _inputSamplerate; 
audioFormat.mFormatID = kAudioFormatLinearPCM; 
audioFormat.mFormatFlags = kAudioFormatFlagIsSignedInteger | kAudioFormatFlagIsPacked; 
audioFormat.mFramesPerPacket = 1;
Y.A.M. 
NET 
Remote I/O Coder 
iPhone #1 
Remote I/O Decoder 
iPhone #2 
AEC 
AGC AEC 
AGC
Y.A.M. 
Voice Processing I/O Coder 
NET 
iPhone #1 
Voice Processing I/O Decoder 
iPhone #2
Эволюция iPhone 
iPhone Original 3G 3GS 4 4S 5 
Name ARM11 ARM11 Cortex-A8 Cortex-A8 Cortex-A9 Cortex-A9 
Arch ARMv6 ARMv6 ARMv7 ARMv7 ARMv7 ARMv7 
Freq 412 412 600 800 800 1300 
Cores 1 1 1 1 2 2
Ресурсы 
Размер 
фрейма 
NEON MHz / фрейм MHz / 
CIF 
352 x 258 
Encoder 15 225 
Decoder 4 60 285 
Аудио 
15 фреймов 
Сумма 
VGA 
640 x 480 
Encoder 30 450 
Decoder 9 135 585 
Алгоритм AMR-WB AEC AGC Сумма 
MIPS @ARM11 90 70 15 175 
Видео
Что делать? 
Оптимизировать самим 
Интринсики 
Ассемблер 
Accelerate framework 
Купить у third-party 
Открытые библиотеки типа OpenMAX 
• 
• 
• 
• 
• 
•
Константин Платов 
constantin.platov@gmail.com

More Related Content

Similar to Встреча №5. Звук и ресурсы iOS в realtime, Константин Платов

Газинформсервис. Сергей Лачугин "Актуальные проблемы защиты SAP"
Газинформсервис. Сергей Лачугин "Актуальные проблемы защиты SAP"Газинформсервис. Сергей Лачугин "Актуальные проблемы защиты SAP"
Газинформсервис. Сергей Лачугин "Актуальные проблемы защиты SAP"Expolink
 
Модульный принцип построения ПК
Модульный принцип построения ПКМодульный принцип построения ПК
Модульный принцип построения ПКЮрий Самохвалов
 
Семинар НомерОК (NumberOK) в РОМСАТ - 03.08.17
Семинар НомерОК (NumberOK) в РОМСАТ - 03.08.17Семинар НомерОК (NumberOK) в РОМСАТ - 03.08.17
Семинар НомерОК (NumberOK) в РОМСАТ - 03.08.17ROMSAT
 
Обработка голоса кодеком на Си под Андроид. Сделано / Константин Цховребов (M...
Обработка голоса кодеком на Си под Андроид. Сделано / Константин Цховребов (M...Обработка голоса кодеком на Си под Андроид. Сделано / Константин Цховребов (M...
Обработка голоса кодеком на Си под Андроид. Сделано / Константин Цховребов (M...Ontico
 
Обработка голоса кодеком Си под Андройд? Сделано!
Обработка голоса кодеком Си под Андройд? Сделано!Обработка голоса кодеком Си под Андройд? Сделано!
Обработка голоса кодеком Си под Андройд? Сделано!MobileUp
 
СИСТЕМА СКРЫТОЙ ПЕРЕДАЧИ ИНФОРМАЦИИ В КАНАЛАХ ЦИФРОВОЙ ТЕЛЕФОННОЙ СВЯЗИ VOIP
СИСТЕМА СКРЫТОЙ ПЕРЕДАЧИ ИНФОРМАЦИИ В КАНАЛАХ ЦИФРОВОЙ ТЕЛЕФОННОЙ СВЯЗИ VOIPСИСТЕМА СКРЫТОЙ ПЕРЕДАЧИ ИНФОРМАЦИИ В КАНАЛАХ ЦИФРОВОЙ ТЕЛЕФОННОЙ СВЯЗИ VOIP
СИСТЕМА СКРЫТОЙ ПЕРЕДАЧИ ИНФОРМАЦИИ В КАНАЛАХ ЦИФРОВОЙ ТЕЛЕФОННОЙ СВЯЗИ VOIPPeter Kostyaev
 
Презентация IP АТС MyAsterisk
Презентация IP АТС MyAsteriskПрезентация IP АТС MyAsterisk
Презентация IP АТС MyAsteriskmyasteriskru
 
Организация записи на Cisco UCM и для Contact Center на базе Cisco MediaSense...
Организация записи на Cisco UCM и для Contact Center на базе Cisco MediaSense...Организация записи на Cisco UCM и для Contact Center на базе Cisco MediaSense...
Организация записи на Cisco UCM и для Contact Center на базе Cisco MediaSense...Cisco Russia
 
Android: низкоуровневые мультимедиа API и их применение в реальной жизни
Android: низкоуровневые мультимедиа API и их применение в реальной жизниAndroid: низкоуровневые мультимедиа API и их применение в реальной жизни
Android: низкоуровневые мультимедиа API и их применение в реальной жизниGregory Klyushnikov
 
Масштабируемые кроссплатформенные веб-приложения / Илья Пухальский (Epam)
Масштабируемые кроссплатформенные веб-приложения / Илья Пухальский (Epam)Масштабируемые кроссплатформенные веб-приложения / Илья Пухальский (Epam)
Масштабируемые кроссплатформенные веб-приложения / Илья Пухальский (Epam)Ontico
 
диссертационная презентация
диссертационная презентациядиссертационная презентация
диссертационная презентацияSon Ingvar
 
Внедрение и использование Cisco Jabber на мобильных устройствах компании Apple
Внедрение и использование Cisco Jabber на мобильных устройствах компании AppleВнедрение и использование Cisco Jabber на мобильных устройствах компании Apple
Внедрение и использование Cisco Jabber на мобильных устройствах компании AppleCisco Russia
 
презентация Tech car
презентация Tech carпрезентация Tech car
презентация Tech caredkamenetsky
 
Безопасность и совместимость при подключении SfB/Lync к операторам связи
Безопасность и совместимость при подключении SfB/Lync к операторам связиБезопасность и совместимость при подключении SfB/Lync к операторам связи
Безопасность и совместимость при подключении SfB/Lync к операторам связиUC2
 
Ever focus company profile russian/Презентация компании Еверфокус
Ever focus company profile russian/Презентация компании ЕверфокусEver focus company profile russian/Презентация компании Еверфокус
Ever focus company profile russian/Презентация компании ЕверфокусDihron
 
NeoQUEST: небесполезный Pc speaker
NeoQUEST: небесполезный Pc speakerNeoQUEST: небесполезный Pc speaker
NeoQUEST: небесполезный Pc speakerNeo_QUEST
 
Вебинар С-Терра по DMVPN, 21.02.2017
Вебинар С-Терра по DMVPN, 21.02.2017Вебинар С-Терра по DMVPN, 21.02.2017
Вебинар С-Терра по DMVPN, 21.02.2017S-Terra CSP
 

Similar to Встреча №5. Звук и ресурсы iOS в realtime, Константин Платов (20)

Maleev
MaleevMaleev
Maleev
 
Газинформсервис. Сергей Лачугин "Актуальные проблемы защиты SAP"
Газинформсервис. Сергей Лачугин "Актуальные проблемы защиты SAP"Газинформсервис. Сергей Лачугин "Актуальные проблемы защиты SAP"
Газинформсервис. Сергей Лачугин "Актуальные проблемы защиты SAP"
 
Модульный принцип построения ПК
Модульный принцип построения ПКМодульный принцип построения ПК
Модульный принцип построения ПК
 
Семинар НомерОК (NumberOK) в РОМСАТ - 03.08.17
Семинар НомерОК (NumberOK) в РОМСАТ - 03.08.17Семинар НомерОК (NumberOK) в РОМСАТ - 03.08.17
Семинар НомерОК (NumberOK) в РОМСАТ - 03.08.17
 
Обработка голоса кодеком на Си под Андроид. Сделано / Константин Цховребов (M...
Обработка голоса кодеком на Си под Андроид. Сделано / Константин Цховребов (M...Обработка голоса кодеком на Си под Андроид. Сделано / Константин Цховребов (M...
Обработка голоса кодеком на Си под Андроид. Сделано / Константин Цховребов (M...
 
Обработка голоса кодеком Си под Андройд? Сделано!
Обработка голоса кодеком Си под Андройд? Сделано!Обработка голоса кодеком Си под Андройд? Сделано!
Обработка голоса кодеком Си под Андройд? Сделано!
 
СИСТЕМА СКРЫТОЙ ПЕРЕДАЧИ ИНФОРМАЦИИ В КАНАЛАХ ЦИФРОВОЙ ТЕЛЕФОННОЙ СВЯЗИ VOIP
СИСТЕМА СКРЫТОЙ ПЕРЕДАЧИ ИНФОРМАЦИИ В КАНАЛАХ ЦИФРОВОЙ ТЕЛЕФОННОЙ СВЯЗИ VOIPСИСТЕМА СКРЫТОЙ ПЕРЕДАЧИ ИНФОРМАЦИИ В КАНАЛАХ ЦИФРОВОЙ ТЕЛЕФОННОЙ СВЯЗИ VOIP
СИСТЕМА СКРЫТОЙ ПЕРЕДАЧИ ИНФОРМАЦИИ В КАНАЛАХ ЦИФРОВОЙ ТЕЛЕФОННОЙ СВЯЗИ VOIP
 
Презентация IP АТС MyAsterisk
Презентация IP АТС MyAsteriskПрезентация IP АТС MyAsterisk
Презентация IP АТС MyAsterisk
 
Организация записи на Cisco UCM и для Contact Center на базе Cisco MediaSense...
Организация записи на Cisco UCM и для Contact Center на базе Cisco MediaSense...Организация записи на Cisco UCM и для Contact Center на базе Cisco MediaSense...
Организация записи на Cisco UCM и для Contact Center на базе Cisco MediaSense...
 
Android: низкоуровневые мультимедиа API и их применение в реальной жизни
Android: низкоуровневые мультимедиа API и их применение в реальной жизниAndroid: низкоуровневые мультимедиа API и их применение в реальной жизни
Android: низкоуровневые мультимедиа API и их применение в реальной жизни
 
Масштабируемые кроссплатформенные веб-приложения / Илья Пухальский (Epam)
Масштабируемые кроссплатформенные веб-приложения / Илья Пухальский (Epam)Масштабируемые кроссплатформенные веб-приложения / Илья Пухальский (Epam)
Масштабируемые кроссплатформенные веб-приложения / Илья Пухальский (Epam)
 
диссертационная презентация
диссертационная презентациядиссертационная презентация
диссертационная презентация
 
Внедрение и использование Cisco Jabber на мобильных устройствах компании Apple
Внедрение и использование Cisco Jabber на мобильных устройствах компании AppleВнедрение и использование Cisco Jabber на мобильных устройствах компании Apple
Внедрение и использование Cisco Jabber на мобильных устройствах компании Apple
 
презентация Tech car
презентация Tech carпрезентация Tech car
презентация Tech car
 
Безопасность и совместимость при подключении SfB/Lync к операторам связи
Безопасность и совместимость при подключении SfB/Lync к операторам связиБезопасность и совместимость при подключении SfB/Lync к операторам связи
Безопасность и совместимость при подключении SfB/Lync к операторам связи
 
Ever focus company profile russian/Презентация компании Еверфокус
Ever focus company profile russian/Презентация компании ЕверфокусEver focus company profile russian/Презентация компании Еверфокус
Ever focus company profile russian/Презентация компании Еверфокус
 
NeoQUEST: небесполезный Pc speaker
NeoQUEST: небесполезный Pc speakerNeoQUEST: небесполезный Pc speaker
NeoQUEST: небесполезный Pc speaker
 
Вебинар С-Терра по DMVPN, 21.02.2017
Вебинар С-Терра по DMVPN, 21.02.2017Вебинар С-Терра по DMVPN, 21.02.2017
Вебинар С-Терра по DMVPN, 21.02.2017
 
Perl & Unicode
Perl & UnicodePerl & Unicode
Perl & Unicode
 
L10N
L10NL10N
L10N
 

More from CocoaHeads

Дизайнер, разработчик, нет конфликта, нет драмы — Евгения Малкова
Дизайнер, разработчик, нет конфликта, нет драмы — Евгения МалковаДизайнер, разработчик, нет конфликта, нет драмы — Евгения Малкова
Дизайнер, разработчик, нет конфликта, нет драмы — Евгения МалковаCocoaHeads
 
Эффективность на рубеже UITableView — Александр Зимин
Эффективность на рубеже UITableView — Александр ЗиминЭффективность на рубеже UITableView — Александр Зимин
Эффективность на рубеже UITableView — Александр ЗиминCocoaHeads
 
Влад Ковташ — Yap Database
Влад Ковташ — Yap DatabaseВлад Ковташ — Yap Database
Влад Ковташ — Yap DatabaseCocoaHeads
 
Александр Зимин — Анимация в iOS
Александр Зимин — Анимация в iOSАлександр Зимин — Анимация в iOS
Александр Зимин — Анимация в iOSCocoaHeads
 
UICollectionView — Александр Зимин
UICollectionView — Александр ЗиминUICollectionView — Александр Зимин
UICollectionView — Александр ЗиминCocoaHeads
 
Push Notifications
Push NotificationsPush Notifications
Push NotificationsCocoaHeads
 
Встреча №9. Алгоритмы и коллекции стандартных библиотек C++, C#, Java, Object...
Встреча №9. Алгоритмы и коллекции стандартных библиотек C++, C#, Java, Object...Встреча №9. Алгоритмы и коллекции стандартных библиотек C++, C#, Java, Object...
Встреча №9. Алгоритмы и коллекции стандартных библиотек C++, C#, Java, Object...CocoaHeads
 
Встреча №9. Будущее паттерна MVVM в iOS приложениях, Денис Лебедев
Встреча №9. Будущее паттерна MVVM в iOS приложениях, Денис ЛебедевВстреча №9. Будущее паттерна MVVM в iOS приложениях, Денис Лебедев
Встреча №9. Будущее паттерна MVVM в iOS приложениях, Денис ЛебедевCocoaHeads
 
Встреча №9. AudioBus: Эволюция звука, Данил Пархоменко
Встреча №9. AudioBus: Эволюция звука, Данил ПархоменкоВстреча №9. AudioBus: Эволюция звука, Данил Пархоменко
Встреча №9. AudioBus: Эволюция звука, Данил ПархоменкоCocoaHeads
 
Встреча №8. NSIncrementalStore, или как заставить Core Data варить ваш собств...
Встреча №8. NSIncrementalStore, или как заставить Core Data варить ваш собств...Встреча №8. NSIncrementalStore, или как заставить Core Data варить ваш собств...
Встреча №8. NSIncrementalStore, или как заставить Core Data варить ваш собств...CocoaHeads
 
Встреча №8. RESTful клиент — это просто. Тонкости использования RestKit, Миха...
Встреча №8. RESTful клиент — это просто. Тонкости использования RestKit, Миха...Встреча №8. RESTful клиент — это просто. Тонкости использования RestKit, Миха...
Встреча №8. RESTful клиент — это просто. Тонкости использования RestKit, Миха...CocoaHeads
 
Встреча №5. Взаимодействие между дизайнерами и разработчиками, Евгений Беляев
Встреча №5. Взаимодействие между дизайнерами и разработчиками, Евгений БеляевВстреча №5. Взаимодействие между дизайнерами и разработчиками, Евгений Беляев
Встреча №5. Взаимодействие между дизайнерами и разработчиками, Евгений БеляевCocoaHeads
 
Встреча №5. Можно ли сделать дизайн без дизайнера? Александр Киров
Встреча №5. Можно ли сделать дизайн без дизайнера? Александр КировВстреча №5. Можно ли сделать дизайн без дизайнера? Александр Киров
Встреча №5. Можно ли сделать дизайн без дизайнера? Александр КировCocoaHeads
 

More from CocoaHeads (13)

Дизайнер, разработчик, нет конфликта, нет драмы — Евгения Малкова
Дизайнер, разработчик, нет конфликта, нет драмы — Евгения МалковаДизайнер, разработчик, нет конфликта, нет драмы — Евгения Малкова
Дизайнер, разработчик, нет конфликта, нет драмы — Евгения Малкова
 
Эффективность на рубеже UITableView — Александр Зимин
Эффективность на рубеже UITableView — Александр ЗиминЭффективность на рубеже UITableView — Александр Зимин
Эффективность на рубеже UITableView — Александр Зимин
 
Влад Ковташ — Yap Database
Влад Ковташ — Yap DatabaseВлад Ковташ — Yap Database
Влад Ковташ — Yap Database
 
Александр Зимин — Анимация в iOS
Александр Зимин — Анимация в iOSАлександр Зимин — Анимация в iOS
Александр Зимин — Анимация в iOS
 
UICollectionView — Александр Зимин
UICollectionView — Александр ЗиминUICollectionView — Александр Зимин
UICollectionView — Александр Зимин
 
Push Notifications
Push NotificationsPush Notifications
Push Notifications
 
Встреча №9. Алгоритмы и коллекции стандартных библиотек C++, C#, Java, Object...
Встреча №9. Алгоритмы и коллекции стандартных библиотек C++, C#, Java, Object...Встреча №9. Алгоритмы и коллекции стандартных библиотек C++, C#, Java, Object...
Встреча №9. Алгоритмы и коллекции стандартных библиотек C++, C#, Java, Object...
 
Встреча №9. Будущее паттерна MVVM в iOS приложениях, Денис Лебедев
Встреча №9. Будущее паттерна MVVM в iOS приложениях, Денис ЛебедевВстреча №9. Будущее паттерна MVVM в iOS приложениях, Денис Лебедев
Встреча №9. Будущее паттерна MVVM в iOS приложениях, Денис Лебедев
 
Встреча №9. AudioBus: Эволюция звука, Данил Пархоменко
Встреча №9. AudioBus: Эволюция звука, Данил ПархоменкоВстреча №9. AudioBus: Эволюция звука, Данил Пархоменко
Встреча №9. AudioBus: Эволюция звука, Данил Пархоменко
 
Встреча №8. NSIncrementalStore, или как заставить Core Data варить ваш собств...
Встреча №8. NSIncrementalStore, или как заставить Core Data варить ваш собств...Встреча №8. NSIncrementalStore, или как заставить Core Data варить ваш собств...
Встреча №8. NSIncrementalStore, или как заставить Core Data варить ваш собств...
 
Встреча №8. RESTful клиент — это просто. Тонкости использования RestKit, Миха...
Встреча №8. RESTful клиент — это просто. Тонкости использования RestKit, Миха...Встреча №8. RESTful клиент — это просто. Тонкости использования RestKit, Миха...
Встреча №8. RESTful клиент — это просто. Тонкости использования RestKit, Миха...
 
Встреча №5. Взаимодействие между дизайнерами и разработчиками, Евгений Беляев
Встреча №5. Взаимодействие между дизайнерами и разработчиками, Евгений БеляевВстреча №5. Взаимодействие между дизайнерами и разработчиками, Евгений Беляев
Встреча №5. Взаимодействие между дизайнерами и разработчиками, Евгений Беляев
 
Встреча №5. Можно ли сделать дизайн без дизайнера? Александр Киров
Встреча №5. Можно ли сделать дизайн без дизайнера? Александр КировВстреча №5. Можно ли сделать дизайн без дизайнера? Александр Киров
Встреча №5. Можно ли сделать дизайн без дизайнера? Александр Киров
 

Встреча №5. Звук и ресурсы iOS в realtime, Константин Платов

  • 1. Звук и ресурсы iOS в Realtime Константин Платов программист iOS/OSX VoIP @Mail.ru
  • 2. Hardware Part Mic #2 Spk #1 Mic #1 Spk #2 Mic #3
  • 3. Audio Session Микширование фоновых звуков Отслеживание аудиопрерываний Отслеживание аудиопутей • • •
  • 4. Audio Route Remote I/O Audio Session
  • 5. CFStringRef newRoute; size = sizeof(CFStringRef); AudioSessionGetProperty( kAudioSessionProperty_AudioRoute, &size, &newRoute); HeadphonesAndMicrophone SpeakerAndMicrophone ReceiverAndMicrophone etc. Bluetooth.. •••• Audio Route iOS 4 iOS 5 kAudioSessionInputRoute_LineIn; kAudioSessionInputRoute_BuiltInMic; kAudioSessionInputRoute_HeadsetMic; kAudioSessionInputRoute_BluetoothHFP; kAudioSessionInputRoute_USBAudio; kAudioSessionOutputRoute_LineOut ; kAudioSessionOutputRoute_Headphones; kAudioSessionOutputRoute_BluetoothHFP; kAudioSessionOutputRoute_BluetoothA2DP;
  • 6. Audio Interruption Play Pause Resume Enter INT Exit INT Exit INT Suspend Should? Yes No
  • 7. Из опыта Pure-C VS API AudioSessionInitialize(NULL, NULL, AudioInterruptListner, _audioDeviceIosInstance) Objective-C API AVAudioSession *session = [AVAudioSession sharedInstance]; [session setCategory:AVAudioSessionCategoryAmbient error:setCategoryError]
  • 8. Audio Unit • • • • • • • Converter iPod Equalizer 3D Mixer Multichannel Mixer Generic Output Remote I/O Voice Processing I/O Realtime работа со звуком: Remote I/O Voice Processing I/O
  • 9. // Enable IO for recording UInt32 flag = 1; TEST_OSS(AudioUnitSetProperty(remoteIOUnit, kAudioOutputUnitProperty_EnableIO, kAudioUnitScope_Input, kInputBus, flag, sizeof(flag))); // Describe format AudioStreamBasicDescription audioFormat; audioFormat.mSampleRate = _inputSamplerate; audioFormat.mFormatID = kAudioFormatLinearPCM; audioFormat.mFormatFlags = kAudioFormatFlagIsSignedInteger | kAudioFormatFlagIsPacked; audioFormat.mFramesPerPacket = 1;
  • 10. Y.A.M. NET Remote I/O Coder iPhone #1 Remote I/O Decoder iPhone #2 AEC AGC AEC AGC
  • 11. Y.A.M. Voice Processing I/O Coder NET iPhone #1 Voice Processing I/O Decoder iPhone #2
  • 12. Эволюция iPhone iPhone Original 3G 3GS 4 4S 5 Name ARM11 ARM11 Cortex-A8 Cortex-A8 Cortex-A9 Cortex-A9 Arch ARMv6 ARMv6 ARMv7 ARMv7 ARMv7 ARMv7 Freq 412 412 600 800 800 1300 Cores 1 1 1 1 2 2
  • 13. Ресурсы Размер фрейма NEON MHz / фрейм MHz / CIF 352 x 258 Encoder 15 225 Decoder 4 60 285 Аудио 15 фреймов Сумма VGA 640 x 480 Encoder 30 450 Decoder 9 135 585 Алгоритм AMR-WB AEC AGC Сумма MIPS @ARM11 90 70 15 175 Видео
  • 14. Что делать? Оптимизировать самим Интринсики Ассемблер Accelerate framework Купить у third-party Открытые библиотеки типа OpenMAX • • • • • •