Android3.0       Honeycomb            High-performance 2D and 3D graphics            Support for multicore processor archi...
Who am I ?                                       TOSHIHIRO YAGI                Market:                 Blog:     http://vi...
http://www.flickr.com/photos/bistrosavage/1313589/       High-performance 2D and 3D    graphics2011   7   12
Animation Framework           http://www.flickr.com/photos/kudumomo/2354710896/2011   7   12
android.animation           interface                               class       •    Animator.AnimatorListener            ...
•                (100,100)   ValueAnimator                                             AnimationUpdateListener            ...
•                     ObjectAnimator       • ViewGroup           LayoutTransition       •                     TypeEvaluato...
Hardware accelerated       2D Graphics                http://www.flickr.com/photos/uriba/2228346515/2011   7   12
• AndroidManifest.xml      2D       <application android:hardwareAccelerated=”true” />       <activity android:hardwareAcc...
•         View onDraw                    1002011   7   12
•    =false       20msec                •    =true        4msec                              5       SurfaceView2011   7  ...
•                SurfaceView   H/W   etc...2011   7   12
View support for       hardware and       software layers       View                http://www.flickr.com/photos/zooboing/4...
• View                    setLayerType(int)           LAYER_TYPE_HARDWARE                •          OpenGL           LAYER...
Renderscript 3D       graphics engine  http://www.flickr.com/photos/arenamontanus/3359137341/2011   7   12
Youtube2011   7   12
android.renderscript       •                      3D       •C       •                                                CPU,G...
•       •       •       •       •                NDK,OpenGL2011   7   12
•          RenderScript       •       • OpenGL                                 OpenGL2011   7   12
http://www.flickr.com/photos/mccheek/1471251914/       Support for                          processor       multicore proce...
Support for       multicore processor       architectureshttp://www.flickr.com/photos/fancy-diamonds/5511634443/2011   7   12
•Android3.0       •Dalvik VM Bionic       •2011   7   12
2011   7   12
•                                	   	   final long start = SystemClock.uptimeMillis();                                	  ...
HTC-Desire       • CPU:1GHz Qualcomm®         QSD8250 Snapdragon®       •        : 576MB2011   7   12
HTC-Desire2011   7   12
Optimus Pad   • CPU:NVIDIA® Tegra™2   1GHz x 2   •            : 1GB2011   7   12
Optimus Pad   22011   7   12
2011   7   12
•             3   4                    HTC-Desire   Optimus Pad                3   95294msec    33803msec                4...
http://www.flickr.com/photos/krayker/2268587409/       Rich multimedia and conectivity   media2011   7   12
Time lapse video                http://www.flickr.com/photos/skyseeker/312716886/2011   7   12
•                http://www.flickr.com/photos/sketch-book/41095087/                http://www.flickr.com/photos/sketch-book/...
• MediaRecoder                           setProfile(CamcorderProfile)                                          setCaptureRat...
•                 1       •            =1                4            20   52011   7   12
getSupportedPreviewFpsRange()       getSupportedPreviewFrameRates()       •           android.hardware.Camera.Parameters  ...
Texture support for       image streams           http://www.flickr.com/photos/romanywg/4065904913/2011   7   12
android.graphics.SurfaceTexture       • OpenGL                          OpenGL2011   7   12
2011   7   12
mTextureID = textures[0];                                 GLES20.glBindTexture(0x8D65, mTextureID);           camera = Cam...
HTTP live streaming       http://www.flickr.com/photos/nikonvscanon/2081397439/2011   7   12
• HTTP live streaming draft protocol       • m3u URL MediaPlayer2011   7   12
2011   7   12
path = "http://std1.ladio.net:8060/i-j-y-u-i-n--.m3u";            mMediaPlayer = new MediaPlayer();            mMediaPlaye...
EXIF data                http://www.flickr.com/photos/qubodup/4094723007/2011   7   12
EXIF       • Exchangeable Image File Format                         JPEG                                                  ...
•             (TAG_APERTURE)       •          (TAG_EXPOSURE_TIME)       • ISO     (TAG_ISO)                android.media.E...
Camcorder profiles                http://www.flickr.com/photos/picken/5283258818/2011   7   12
android.media.CamcorderProfile       Added Fields                   Added Methods       int QUALITY_1080P              bool...
Digital rights       management (DRM)                http://www.flickr.com/photos/ideonexus/5176340670/2011   7   12
DRM API       • Java                                API       •                        DRM                                ...
Upcoming SlideShare
Loading in...5
×

Abc2011 yagi

2,157

Published on

ABC2011 Summerの直前だか何かに破棄したやつ。

Published in: Technology, Art & Photos
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
2,157
On Slideshare
0
From Embeds
0
Number of Embeds
4
Actions
Shares
0
Downloads
5
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Abc2011 yagi

  1. 1. Android3.0 Honeycomb High-performance 2D and 3D graphics Support for multicore processor architectures Rich multimedia and connectivity2011 7 12
  2. 2. Who am I ? TOSHIHIRO YAGI Market: Blog: http://visible-true.blogspot.com/ Twitter: @sys1yagi2011 7 12
  3. 3. http://www.flickr.com/photos/bistrosavage/1313589/ High-performance 2D and 3D graphics2011 7 12
  4. 4. Animation Framework http://www.flickr.com/photos/kudumomo/2354710896/2011 7 12
  5. 5. android.animation interface class • Animator.AnimatorListener • Animator • LayoutTransition.TransitionListener • AnimatorInflator • TimeInterpolator • AnimatorListenerAdapter • TypeEvalutor • AnimatorSet • ValueAnimator.AnimatorUpdateListener • AnimatorSet.Builder • ArgbEvalutor • FloatEvalutor • IntEvalutor • Keyframe • LayoutTransition • ObjectAnimator • PropertyValueHolder • ValueAnimator2011 7 12
  6. 6. • (100,100) ValueAnimator AnimationUpdateListener duration:1000 onAnimationUpdate(ValueAnimator animator){ from:0 value = (Float)animator.getAniamtionValue(); to:100 x = initialX + (value*2); y = initialY + value; invalidate(); (300,200) }2011 7 12
  7. 7. • ObjectAnimator • ViewGroup LayoutTransition • TypeEvaluator • ( ) Keyframe • AnimatorSet2011 7 12
  8. 8. Hardware accelerated 2D Graphics http://www.flickr.com/photos/uriba/2228346515/2011 7 12
  9. 9. • AndroidManifest.xml 2D <application android:hardwareAccelerated=”true” /> <activity android:hardwareAccelerated=”true” /> OpenGL2011 7 12
  10. 10. • View onDraw 1002011 7 12
  11. 11. • =false 20msec • =true 4msec 5 SurfaceView2011 7 12
  12. 12. • SurfaceView H/W etc...2011 7 12
  13. 13. View support for hardware and software layers View http://www.flickr.com/photos/zooboing/4310581954/2011 7 12
  14. 14. • View setLayerType(int) LAYER_TYPE_HARDWARE • OpenGL LAYER_TYPE_SOFTWARE • Bitmap2011 7 12
  15. 15. Renderscript 3D graphics engine http://www.flickr.com/photos/arenamontanus/3359137341/2011 7 12
  16. 16. Youtube2011 7 12
  17. 17. android.renderscript • 3D •C • CPU,GPU ScriptC_A.java RenderScript A.d A.rs llvm-rs-cc.exe RenderScript RenderScript A.bc RenderScript2011 7 12
  18. 18. • • • • • NDK,OpenGL2011 7 12
  19. 19. • RenderScript • • OpenGL OpenGL2011 7 12
  20. 20. http://www.flickr.com/photos/mccheek/1471251914/ Support for processor multicore processor architectures2011 7 12
  21. 21. Support for multicore processor architectureshttp://www.flickr.com/photos/fancy-diamonds/5511634443/2011 7 12
  22. 22. •Android3.0 •Dalvik VM Bionic •2011 7 12
  23. 23. 2011 7 12
  24. 24. • final long start = SystemClock.uptimeMillis(); Thread[] threads = new Thread[count]; for (int i = 0; i < threads.length; i++) { threads[i] = new Thread(){ public void run() { int items = 0; for (int j = 0; j < Integer.MAX_VALUE; j++) { items = j; } Integer.MAX_VALUE }; }; threads[i].start(); } count for(int i = 0; i < threads.length; i++){ try{ threads[i].join(); }catch(Exception e){ throw new RuntimeException(" "); } } final long end = SystemClock.uptimeMillis() - start;2011 7 12
  25. 25. HTC-Desire • CPU:1GHz Qualcomm® QSD8250 Snapdragon® • : 576MB2011 7 12
  26. 26. HTC-Desire2011 7 12
  27. 27. Optimus Pad • CPU:NVIDIA® Tegra™2 1GHz x 2 • : 1GB2011 7 12
  28. 28. Optimus Pad 22011 7 12
  29. 29. 2011 7 12
  30. 30. • 3 4 HTC-Desire Optimus Pad 3 95294msec 33803msec 4 125017msec 43280msec2011 7 12
  31. 31. http://www.flickr.com/photos/krayker/2268587409/ Rich multimedia and conectivity media2011 7 12
  32. 32. Time lapse video http://www.flickr.com/photos/skyseeker/312716886/2011 7 12
  33. 33. • http://www.flickr.com/photos/sketch-book/41095087/ http://www.flickr.com/photos/sketch-book/35507705/2011 7 12
  34. 34. • MediaRecoder setProfile(CamcorderProfile) setCaptureRate(double fps) MediaRecorder recoder = new MediaRecorder(); recoder.setVideoSource(MediaRecorder.VideoSource.DEFAULT); recoder.setProfile(CamcorderProfile.get(CamcorderProfile.QUALITY_TIME_LAPSE_480P)); recoder.setCaptureRate(fps); recoder.setOutputFile(Environment.getExternalStorageDirectory().getAbsolutePath() + "/test.mp4"); recoder.setPreviewDisplay(holder.getSurface()); recoder.prepare(); recoder.start();2011 7 12
  35. 35. • 1 • =1 4 20 52011 7 12
  36. 36. getSupportedPreviewFpsRange() getSupportedPreviewFrameRates() • android.hardware.Camera.Parameters Optimus Pad : :4 35 : 5,10,15,20,24,25,302011 7 12
  37. 37. Texture support for image streams http://www.flickr.com/photos/romanywg/4065904913/2011 7 12
  38. 38. android.graphics.SurfaceTexture • OpenGL OpenGL2011 7 12
  39. 39. 2011 7 12
  40. 40. mTextureID = textures[0]; GLES20.glBindTexture(0x8D65, mTextureID); camera = Camera.open(); SurfaceTexture surfaceTexture = new SurfaceTexture(mTextureID); Parameters param = camera.getParameters(); Size size = param.getPreviewSize(); camera.setPreviewTexture(surfaceTexture); camera.startPreview();2011 7 12
  41. 41. HTTP live streaming http://www.flickr.com/photos/nikonvscanon/2081397439/2011 7 12
  42. 42. • HTTP live streaming draft protocol • m3u URL MediaPlayer2011 7 12
  43. 43. 2011 7 12
  44. 44. path = "http://std1.ladio.net:8060/i-j-y-u-i-n--.m3u"; mMediaPlayer = new MediaPlayer(); mMediaPlayer.setDataSource(path); mMediaPlayer.setDisplay(holder); mMediaPlayer.prepare(); mMediaPlayer.setOnBufferingUpdateListener(this); mMediaPlayer.setOnCompletionListener(this); mMediaPlayer.setOnPreparedListener(this); mMediaPlayer.setOnVideoSizeChangedListener(this); mMediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC);2011 7 12
  45. 45. EXIF data http://www.flickr.com/photos/qubodup/4094723007/2011 7 12
  46. 46. EXIF • Exchangeable Image File Format JPEG etc... http://www.flickr.com/photos/krasi/2462179084/2011 7 12
  47. 47. • (TAG_APERTURE) • (TAG_EXPOSURE_TIME) • ISO (TAG_ISO) android.media.ExifInterface2011 7 12
  48. 48. Camcorder profiles http://www.flickr.com/photos/picken/5283258818/2011 7 12
  49. 49. android.media.CamcorderProfile Added Fields Added Methods int QUALITY_1080P boolean hasProfile(int)  int QUALITY_480P boolean hasProfile(int, int) int QUALITY_720P int QUALITY_CIF int QUALITY_QCIF int QUALITY_TIME_LAPSE_1080P int QUALITY_TIME_LAPSE_480P int QUALITY_TIME_LAPSE_720P int QUALITY_TIME_LAPSE_CIF int QUALITY_TIME_LAPSE_HIGH int QUALITY_TIME_LAPSE_LOW int QUALITY_TIME_LAPSE_QCIF2011 7 12
  50. 50. Digital rights management (DRM) http://www.flickr.com/photos/ideonexus/5176340670/2011 7 12
  51. 51. DRM API • Java API • DRM 3.0 Optimus Pad 3.1 XOOM Widevine DRM plug-in2011 7 12
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×