PDA

View Full Version : ذخیره frame های ویدئو



Amin-rz
یک شنبه 09 فروردین 1394, 13:24 عصر
سلام.می خوام frame های یک ویدئو رو به صورت عکس ذخیره کنم ولی فقط frame اول و آخر ذخیره میشه.


// Async Task Class
class SavePhoto extends AsyncTask<String, String, String> {

// Show Progress bar before downloading Music
@Override
protected void onPreExecute() {
super.onPreExecute();

String path = Environment.getExternalStorageDirectory().toString ();
File dir = new File(path+"/"+"videoframes");
if(!dir.exists())
dir.mkdir();

dialog.setMessage("در حال ذخیره...");
dialog.show();

}

// Download Music File from Internet
@Override
protected String doInBackground(String... f_url) {

String path = Environment.getExternalStorageDirectory().toString ();
OutputStream fOut = null;

File file = null;
try {

for(int i=1000 ; i<=100000 ; i++)
{
publishProgress("" + (i/1000) );

myVideo = new File(Environment.getExternalStorageDirectory().get AbsolutePath(),"arabi.mp4");
mmRetriever = new MediaMetadataRetriever();
mmRetriever.setDataSource(myVideo.getAbsolutePath( ));

bitmap = mmRetriever.getFrameAtTime(i);

int number = 1 ;
do{
file = new File(path+"/"+"videoframes"+"/", "image_"+number+".jpg"); // the File to save to
number++ ;
}while(file.exists());

fOut = new FileOutputStream(file);
bitmap.compress(Bitmap.CompressFormat.JPEG, 100, fOut); // saving the Bitmap to a file compressed as a JPEG with 85% compression rate
fOut.flush();
fOut.close(); // do not forget to close the stream

i=i+999;
MediaStore.Images.Media.insertImage(getContentReso lver(),file.getAbsolutePath(),file.getName(),file. getName());
}







} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}




return null;
}

// While Downloading Music File
protected void onProgressUpdate(String... progress) {
// Set progress percentage

dialog.setMessage("در حال ذخیره تصویر "+progress[0]);
}

// Once Music File is downloaded
@Override
protected void onPostExecute(String file_url) {
// Dismiss the dialog after the Music file was downloaded

dialog.hide();
openFolder();

}
}

Amin-rz
یک شنبه 09 فروردین 1394, 13:28 عصر
اضافه کنم تو این کد 100 تصویر ذخیره میشه که 50 تای اولش frame اول ویدئو هست و 50 تای دوم هم frame آخر ویئو

Amin-rz
سه شنبه 11 فروردین 1394, 09:06 صبح
آپ .................

Amin-rz
جمعه 14 فروردین 1394, 13:26 عصر
............. :افسرده: