Más contenido relacionado
La actualidad más candente (20)
Similar a #MBLTdev: Преимущества использования Intel INDE для кросс-ОС разработки на примере создания мультимедиа приложения (20)
#MBLTdev: Преимущества использования Intel INDE для кросс-ОС разработки на примере создания мультимедиа приложения
- 1. Copyright © 2014, Intel Corporation. All rights reserved. *Other names and brands may be claimed as the property of others.
Optimization Notice
1
The advantages of using Intel INDE for
cross-OS development through the
creation of multimedia applications
Iliya Slavutin
TRANSFORM YOUR CODE >
- 2. Optimization Notice Copyright © 2014, Intel Corporation. All rights reserved. *Other names and brands may be claimed as the property of others.
Cross-platform meets
native performance
Intel® INDE 2015
Cross-OS, Cross-
Architecture
More Performance, Less
Time
IDE Choice
C++/Java* tools and libraries for Android* and
Windows* development, supporting ARM* and
Intel® architecture.
Code native applications, expose underlying
architecture, and deliver higher performance,
responsive apps.
Freedom to integrate into your preferred IDE:
Visual Studio*, Eclipse*, or Android Studio*.
Download: intel.com/software/inde
Intel INDE is a suite of tools that let you write fast C++ code that targets multiple operating
systems and multiple architectures, and speeds your time to market.
Developer Needs
2
- 3. Copyright © 2014, Intel Corporation. All rights reserved. *Other names and brands may be claimed as the property of others.
Optimization Notice
Intel® INDE: Feature Details
3
FEATURE
GETTING STARTED
IDE Integration for Android*
BUILD
Context Sensing SDK
OpenCLTM Code Builder
Media RAW Accelerator for Windows*
Media for Mobile
Media SDK for Windows*
Audio for Windows*
Intel® Threading Building Blocks
Intel® Integrated Performance Primitives
Intel® C++ Compilers
ANALYZE/DEBUG
Intel® HAXM
System Analyzer
Graphics Frame Analyzer
Graphics Frame Debugger
Platform Analyzer
Debugger Extension for vs-Android*
- 4. Optimization Notice Copyright © 2014, Intel Corporation. All rights reserved. *Other names and brands may be claimed as the property of others.
Media for Mobile
Native Extensions for iOS, Windows* RT and Android*
4
Professional-Grade Extensions,
Delivered with Ease
Deliver sought-after capabilities including camera & screen capture,
video editing, video streaming and content recognition.
Open-Sourced Samples
Contribute to samples and access the best, developed by Intel and the
open source community, and validated by Intel.
Cross-Platform, Cross-
Architecture
Support for iOS*, Windows* RT and Android* target devices, on Intel®
Architecture and beyond.
EXPERIENCE TODAY: intel.com/software/INDE
iOS* Android* WinRT*
- 5. Optimization Notice Copyright © 2014, Intel Corporation. All rights reserved. *Other names and brands may be claimed as the property of others.
Media for Mobile
Enabling app logic or code re-use x-OS/arch
5
Android* iOS* WinRT*
Android
Java
Media Codec
iOS
Objective C
AV Foundation
Win RT
C#
HMFT
C/C++ Wrapper enables
complete code re-use
Features
Video editing
• File joining/cutting
• Applying effects
• Transcoding
Camera & Game Capture
• Capture video from camera
• Apply effects in real time
• GL frame buffers encoding
Media Streamer
• Streams local media file or from camera
to remote server
• Streaming to network from camera or
from the game
Audio Content Recognition
• Supports audio fingerprinting through
Audible magic
Media File Info
• Extracts file information
and frame at designated location
Mobile
Development
- 6. Copyright © 2014, Intel Corporation. All rights reserved. *Other names and brands may be claimed as the property of others.
Optimization Notice
Media for Mobile Code Snippet Java
6
mediaComposer.addSourceFile("video1.mp4");
mediaComposer.setTargetFile(“encoded.mp4”);
VideoFormatAndroid vFormat
= new VideoFormatAndroid("video/avc",
width, height);
vFormat.setVideoBitRateInKBytes(5000);
vFrmat.setVideoFrameRate(30);
vFormat.setVideoIFrameInterval(1);
mediaComposer.setTargetVideoFormat(vFormat);
mediaComposer.start();
- 7. Copyright © 2014, Intel Corporation. All rights reserved. *Other names and brands may be claimed as the property of others.
Optimization Notice
Media for Mobile Code Snippet Objective-C
7
MPMediaComposer *composer = [MPMediaComposer
mediaComposerWithProgressListener:listener];
[composer addSourceFile:inURL];
[composer setTargetFile:outURL];
MPVideoFormat *vFormat = [MPVideoFormat new];
vFormat.videoCodec = MPVideoCodecAVC;
vFormat.videoBitRateInKBytes = 5000;
vFormat.videoFrameRate = 30;
vFormat.videoIFrameInterval = 1;
[composer setTargetVideoFormat:vFormat];
[composer start];
- 8. Copyright © 2014, Intel Corporation. All rights reserved. *Other names and brands may be claimed as the property of others.
Optimization Notice
Media for Mobile Code Snippet C#
8
mediaComposer = new MediaComposer(progressListener);
composer.setTargetFile(inFile);
composer.addSourceFile(outFile);
var vFormat = new WinRtVideoFormat("video/avc",
1280, 720);
vFormat.bitrate = 5000;
vFormat.frameRate.Numerator = 30;
vFormat.frameRate.Denominator = 1;
composer.setTargetVideoFormat(videoFormat);
composer.start();
- 9. Copyright © 2014, Intel Corporation. All rights reserved. *Other names and brands may be claimed as the property of others.
Optimization Notice
Media for Mobile Code Snippet C++
9
MediaComposer composer
= IMediaComposer::create(listener);
composer->addSourceFile(inputFile.toStdString());
composer->setTargetFile(outputFile.toStdString());
VideoFormat vFormat
= IVideoFormat::create(MIMETypeAVC,
1280, 720);
vFormat->setVideoBitRateInKBytes(5000);
vFormat->setVideoFrameRate(30);
vFormat->setVideoIFrameInterval(1);
composer->setTargetVideoFormat(vFormat);
composer->start();
- 10. Copyright © 2014, Intel Corporation. All rights reserved. *Other names and brands may be claimed as the property of others.
Optimization Notice
10
Media for Mobile Open Sourced samples – check out at github.com/INDExOS
- 11. Copyright © 2014, Intel Corporation. All rights reserved. *Other names and brands may be claimed as the property of others.
Optimization Notice
Plans
11
•Adding playback capabilities
•Feature parity between OSes
•Listen to community feedback