android - Want to package a small video in the package for deployment -


is there way reference programmatically small video file adn include in teh package - i.e. don't want have separate on sd card. thinking of putting in 'raw' package directory.

e.g. mpeg4 called 'video' in 'raw'

am trying work out correct format uri.parse() has beaten me. thought should r.raw (as used when setting media player audio mymediaplayer = mediaplayer.create(this, r.raw.audiocameralive1) - doesn't seem be.

any suggestions

oliver

i see there have been number of views, in case looking solution, did - , seems work fine. there cleaner way of doing same but, 1 makes sense me ...

oliver

public class showvideoactivity extends activity      implements surfaceholder.callback,      onerrorlistener,     onpreparedlistener,     oncompletionlistener {  /** called when activity first created. */ private mediaplayer mymediaplayer; boolean bolmediaplayerisreleased = false;  // surfaceholder , surfaceview used display video // implementing surfaceholder.callback interface means have // implement surfacechanged(), surfacecreated() , surfacedestroyed() private surfaceview videosurface; private surfaceholder videoholder;  display currentdisplay;  @override public void oncreate(bundle savedinstancestate)     {     super.oncreate(savedinstancestate);      setcontentview(r.layout.showvideo);  // inflate showvideo      // identify surface used hold camera image     videosurface = (surfaceview)findviewbyid(r.id.videosurface);     // surfaceholder 'monitors' activity on surface     videoholder = videosurface.getholder();     videoholder.setkeepscreenon(true);      // data pushed onto buffers external surface     videoholder.settype(surfaceholder.surface_type_push_buffers);     videoholder.setkeepscreenon(true);     // let monitor know 'this' activity responsible     // callback functions.     videoholder.addcallback(this);     // 'callbacks' further processing      mymediaplayer = mediaplayer.create(this,r.raw.filename);     mymediaplayer.setoncompletionlistener(this);     mymediaplayer.setonerrorlistener(this);     mymediaplayer.setonpreparedlistener(this);     mymediaplayer.setoncompletionlistener(this);     currentdisplay = getwindowmanager().getdefaultdisplay();     }  // set listener wait mediaplayer end  (is playbackcompleted()?) public void oncompletion(mediaplayer mp)     {     wrapup(mp);     }  public void surfacecreated(surfaceholder createdholder) {     // surface created, possible set preview     mymediaplayer.setdisplay(createdholder);     }  public void surfacedestroyed(surfaceholder destroyedholder)      {     if (mymediaplayer != null)         {         if (mymediaplayer.isplaying() )             mymediaplayer.stop();         mymediaplayer.release();         bolmediaplayerisreleased = true;         }     }  public void surfacechanged(surfaceholder changedholder, int intformat, int intwidth, int intheight)      {     if (mymediaplayer.isplaying())         return;     else         {         setvideosurfacesize(mymediaplayer);         mymediaplayer.start();         } }  public boolean onerror(mediaplayer mplayer, int interror, int intextra)     {     return false;     }  public void onprepared(mediaplayer mplayer)     {     setvideosurfacesize(mplayer);     mplayer.start();     // 'started' mode, player can either 'stopped', 'paused' or playbackcompleted'     }  // end onprepared   public void wrapup(mediaplayer mp)     {     if (mp != null)         {         if (mymediaplayer.isplaying() )             mp.stop();         mp.release();         bolmediaplayerisreleased = true;         }      // clean before terminating.  essential     // if cleanup not done surfacedestroyed called     // , screw     // firstly remove callback     videoholder.removecallback(this);  // prevents callbacks when surface destroyed      showvideoactivity.this.finish();                         } } 

Comments

Popular posts from this blog

php - What is the difference between $_SERVER['PATH_INFO'] and $_SERVER['ORIG_PATH_INFO']? -

fortran - Function return type mismatch -

queue - mq_receive: message too long -