Called from a class that implements ImageView
@Override protected void onDraw(Canvas canvas) {
Log.e("Video Media" , "on Draw Called ");
super.onDraw(canvas);
Log.e("Media", "draw step 2 ");
if (isPlaying) loadFrame();
Log.e("Media", "draw step 3 ");
}
private void loadFrame() {
if (isPlaying) {
frames.incrementProgressBy(11-playSpeed);
if (frame == duration) {
isPlaying = false;
frame = 0;
frames.setProgress(0);
frames.setEnabled(true);
speed.setEnabled(true);
play.setBackgroundDrawable(getResources().getDrawable(R.drawable.play));
}
pict.recycle(); mBitmap.recycle();
retrieve.getFrameAtTime(frame);retrieve.getFrameAtTime(frame);retrieve.getFrameAtTime(frame);retrieve.getFrameAtTime(frame);
mBitmap = Bitmap.createBitmap(pict, 0, 0,
pict.getWidth(), pict.getHeight(), matrix, true);
Log.e("Media", "load Frame " + frame + " ("+
(11-playSpeed) +") " + pict.getWidth() + " x " +
pict.getHeight() );
Log.e("Media", "load Frame step 1 ");
super.setImageBitmap(mBitmap);
Log.e("Media", "load Frame step 2 ");
super.invalidate();
Log.e("Media", "load Frame step 3 ");
}
}
frame get inremented in steps of 10 , thus pict =
retrieve.getFrameAtTime(frame); loads every 10 frames
mBitmap as you can see is set to update the super.setImageBitmap()
resulting in the following logcat
11-13 15:47:52.605: E/Video Media(4647): on Draw Called
11-13 15:47:52.615: E/Media(4647): draw step 2
11-13 15:47:52.915: E/Media(4647): load Frame 2450
(10) 1280 x 720
11-13 15:47:52.915: E/Media(4647): load Frame step 1
11-13 15:47:52.915: E/Media(4647): load Frame step 2
11-13 15:47:52.915: E/Media(4647): load Frame step 3
11-13 15:47:52.915: E/Media(4647): draw step 3
11-13 15:47:52.935: E/Video Media(4647): on Draw Called
11-13 15:47:52.945: E/Media(4647): draw step 2
11-13 15:47:53.255: E/Media(4647): load Frame 2460
(10) 1280 x 720
11-13 15:47:53.255: E/Media(4647): load Frame step 1
11-13 15:47:53.255: E/Media(4647): load Frame step 2
11-13 15:47:53.255: E/Media(4647): load Frame step 3
11-13 15:47:53.255: E/Media(4647): draw step 3
11-13 15:47:53.275: E/Video Media(4647): on Draw Called
11-13 15:47:53.285: E/Media(4647): draw step 2
11-13 15:47:53.585: E/Media(4647): load Frame 2470
(10) 1280 x 720
11-13 15:47:53.585: E/Media(4647): load Frame step 1
11-13 15:47:53.585: E/Media(4647): load Frame step 2
11-13 15:47:53.585: E/Media(4647): load Frame step 3
11-13 15:47:53.585: E/Media(4647): draw step 3
11-13 15:47:53.605: E/Video Media(4647): on Draw Called
11-13 15:47:53.615: E/Media(4647): draw step 2
11-13 15:47:53.925: E/Media(4647): load Frame 2480
(10) 1280 x 720
11-13 15:47:53.925: E/Media(4647): load Frame step 1
11-13 15:47:53.925: E/Media(4647): load Frame step 2
11-13 15:47:53.925: E/Media(4647): load Frame step 3
11-13 15:47:53.925: E/Media(4647): draw step 3
11-13 15:47:53.945: E/Video Media(4647): on Draw Called
11-13 15:47:53.955: E/Media(4647): draw step 2
11-13 15:47:54.255: E/Media(4647): load Frame 2490
(10) 1280 x 720
11-13 15:47:54.255: E/Media(4647): load Frame step 1
11-13 15:47:54.255: E/Media(4647): load Frame step 2
11-13 15:47:54.255: E/Media(4647): load Frame step 3
11-13 15:47:54.255: E/Media(4647): draw step 3
11-13 15:47:54.285: E/Video Media(4647): on Draw Called
11-13 15:47:54.295: E/Media(4647): draw step 2
11-13 15:47:54.595: E/Media(4647): load Frame 2500
(10) 1280 x 720
11-13 15:47:54.595: E/Media(4647): load Frame step 1
11-13 15:47:54.595: E/Media(4647): load Frame step 2
11-13 15:47:54.595: E/Media(4647): load Frame step 3
11-13 15:47:54.595: E/Media(4647): draw step 3
11-13 15:47:54.615: E/Video Media(4647): on Draw Called
11-13 15:47:54.625: E/Media(4647): draw step 2
11-13 15:47:54.925: E/Media(4647): load Frame 2510
(10) 1280 x 720
11-13 15:47:54.925: E/Media(4647): load Frame step 1
11-13 15:47:54.925: E/Media(4647): load Frame step 2
11-13 15:47:54.925: E/Media(4647): load Frame step 3
11-13 15:47:54.925: E/Media(4647): draw step 3
11-13 15:47:54.945: E/Video Media(4647): on Draw Called
11-13 15:47:54.955: E/Media(4647): draw step 2
11-13 15:47:55.255: E/Media(4647): load Frame 2520
(10) 1280 x 720
11-13 15:47:55.255: E/Media(4647): load Frame step 1
11-13 15:47:55.265: E/Media(4647): load Frame step 2
11-13 15:47:55.265: E/Media(4647): load Frame step 3
11-13 15:47:55.265: E/Media(4647): draw step 3
11-13 15:47:55.275: E/Video Media(4647): on Draw Called
11-13 15:47:55.285: E/Media(4647): draw step 2
11-13 15:47:55.595: E/Media(4647): load Frame 2530
(10) 1280 x 720
11-13 15:47:55.595: E/Media(4647): load Frame step 1
11-13 15:47:55.595: E/Media(4647): load Frame step 2
11-13 15:47:55.595: E/Media(4647): load Frame step 3
11-13 15:47:55.595: E/Media(4647): draw step 3
11-13 15:47:55.615: E/Video Media(4647): on Draw Called
11-13 15:47:55.625: E/Media(4647): draw step 2
11-13 15:47:55.925: E/Media(4647): load Frame 2540
(10) 1280 x 720
11-13 15:47:55.925: E/Media(4647): load Frame step 1
11-13 15:47:55.925: E/Media(4647): load Frame step 2
11-13 15:47:55.925: E/Media(4647): load Frame step 3
11-13 15:47:55.925: E/Media(4647): draw step 3
My question is Why Does the frame NOT change visually. It
constantly shows the first FRAME only
Why ?
Thanks in advance
--
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to
android-developers@googlegroups.com
To unsubscribe from this group, send email to
android-developers+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en