السلام عليكم
رجاء ياخوة هل يستطيع احد ان يدلني على كيفية عمل برنامج يقو مثلا بنتقطيع وتجميع الفيديو واضافة صوت له
السلام عليكم
رجاء ياخوة هل يستطيع احد ان يدلني على كيفية عمل برنامج يقو مثلا بنتقطيع وتجميع الفيديو واضافة صوت له
جرب AviFile.dll والتي أرفقتها لك ... وستجد فيها طلبك بإذن الله
مثلا لإضافة صوت لملف الفيديو :
string videoFileName; // مسار ملف الفيديو string wavFileName; // مسار ملف الصوت int begineFrame; // رقم الفريم الذي سوف نبدأ إضافة الصوت عليه AviManager aviManager = new AviManager(videoFileName, true); // فتح ملف الفيديو aviManager.AddAudioStream(waveFileName,begineFrame); // إضافة الصوت aviManager.Close(); // اغلاق ملف الفيديو
أيضا :
لعرض ال Frames في Picturebox :
string videoFileName; // مسار ملف الفيديو int frameNumber; // رقم الفريم الذي سوف يتم عرضه //لفتح ملف الفيديو AviManager aviManager = new AviManager(videoFileName, true); VideoStream aviStream = aviManager.GetVideoStream(); aviStream.GetFrameOpen(); // لعرض الفريم Bitmap bmp = aviStream.GetBitmap(frameNumber); this.pictureBox1.Image = bmp; //لإغلاق ملف الفيديو aviStream.GetFrameClose(); aviManager.Close();
لعرض معلومات عن ملف الفيديو في TextBox مثلا :
string videoFileName; // مسار ملف الفيديو
AviManager aviManager = new AviManager(videoFileName, true);
VideoStream stream = aviManager.GetVideoStream();
//معلومات عن الفيديو
//width , height , countFrames and Frame rate
TextBox1 .Text = "Width: " + stream.Width;
TextBox1 .Text += "\r\nHeight: " + stream.Height;
TextBox1 .Text += "\r\nCount of Frames: " + stream.CountFrames;
TextBox1 .Text += "\r\nFrame Rate: " + stream.FrameRate;
//معلومات عن الصوت الموجود مع الفديو
//SamplesPerSecond , BitsPerSample and CountChannels
TextBox1 .Text += "\r\nWave Sound:";
try
{
AudioStream waveStream = aviManager.GetWaveStream();
TextBox1 .Text += "\r\nSamples per Second: " + waveStream.CountSamplesPerSecond.ToString();
TextBox1 .Text += "\r\nBits per Sample: " + waveStream.CountBitsPerSample.ToString();
TextBox1 .Text += "\r\nChannels: " + waveStream.CountChannels.ToString();
}
catch
{
TextBox1 .Text += " None";
}لاستخراج الصوت من الفيديو ووضعه في ملف wav :
string videoFileName; // مسار ملف الفيديو
AviManager aviManager = new AviManager(videoFileName, true);
try
{
AudioStream audioStream = aviManager.GetWaveStream();
audioStream.ExportStream(@"mySound.wav");
aviManager.Close();
}
catch (Exception ex)
{
MessageBox.Show("The file does not contain a wave audio stream, or it cannot be opened");
}لعرض ملف الفيديو في picturebox :
string videoFileName; // مسار ملف الفيديو //picturebox1 : يتم عرض الفيديو فيها //Label1 : لاستخدامه كمؤشر AviManager file = new AviManager(videoFileName, true); VideoStream stream = file.GetVideoStream(); EditableVideoStream editableStream = new EditableVideoStream(stream); file.Close(); AviPlayer player = new AviPlayer(editableStream, picturebox1, Label1); player.Start();
لإضافة Frames الى ملف الفيديو :
// txtNewFrameFileName : تحتوي على مسارات الصور التي سوف تضاف الى الفيديو
String tempFileName = System.IO.Path.GetTempFileName() + ".avi";
AviManager tempFile = new AviManager(tempFileName, false);
Bitmap bitmap = (Bitmap)Image.FromFile(txtNewFrameFileName.Lines[0].Trim());
// false ==> No Compresion , frame rate = 1
tempFile.AddVideoStream(false, 1, bitmap);
VideoStream stream = tempFile.GetVideoStream();
for (int n = 1; n < txtNewFrameFileName.Lines.Length; n++) {
if (txtNewFrameFileName.Lines[n].Trim().Length > 0)
{
stream.AddFrame((Bitmap)Image.FromFile(txtNewFrameFileName.Lines[n]));
}
}
editableStream.Paste(stream, 0, (int)numPastePositionBitmap.Value, stream.CountFrames);
tempFile.Close();
try {
File.Delete(tempFileName);
}
catch{}ماشاء الله بارك الله بك اخي baha_ashour
مشكور اخي بهاء علي المجهود الرائع
Khaled_Tiger
النجاح الوحيد في الحياة هو أن تستطيع أن تحيا حياتك بالطريقة التي تريدها
يخاطبني السفيه بكل قبح *** فأكره أن أكون له مجيبا
يزيد سفاهة فأزيد حلمــا *** كعود زاده الإحراق طيبا
إذا نطق السفيه فلا تجبه *** فخير من إجابته السكوت
فإن كلَمته فرَجت عنــــه *** وإن خليته كمداً يـمـــوت
معلومة خطيرة : :s
قد تواجهون بعض المشاكل في استخدام هذه ال dll
حيث ان هذه ال dll ليست نهائية وتحتاج الى المزيد من التعديلات
وهناك من وصف هذه ال dll بأنها Garbage
<_<
ساحاول ان اقوم بعمل التعديلات اللازمة لجعلها 100%
المصدر الاساسي :
ما شاء الله عليك
ربنا يحفظك ويخليك ذخر للإسلام والمسلمين
ربنا معاك و أنا هحولها بس لمه أفضه لشقيقة ال #C الكبري
و من حق شكرا يا فادي علي الكتاب :)
هذا الموضوع مغلق.