منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب
مشغل VLC مع C# - نسخة قابلة للطباعة

+- منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب (http://vb4arb.com/vb)
+-- قسم : قسم لغة السي شارب C#.NET (http://vb4arb.com/vb/forumdisplay.php?fid=175)
+--- قسم : قسم اسئلة C#.NET (http://vb4arb.com/vb/forumdisplay.php?fid=176)
+--- الموضوع : مشغل VLC مع C# (/showthread.php?tid=30242)

الصفحات: 1 2


مشغل VLC مع C# - issamsaidd - 10-07-19

السلام عليكم ورحمة الله وبركاتة
عندى مشكله صغيرة برنامج vlc الشهير احينا بفتح علية قنوات معينة 
وعندى مشكله كا الاتى اريد اخذ لقة صورة اثناء عرض الفديو لاستخدام معين وحفظها 
الحفظ لا مشكله معة ولكن عند الضغط على التقاط صورة وعند تحويلها الى pictureBox1
تظهر بلوان اسود اريد معالم الصورة الاصلية ان تظهر فى pictureBox1 وشكرا لكم صورة توضحية ورابط السورس
السورس كود
ملاحظة فى رابط فيدو داخلى عند تشغيل البرنامج يعمل بشكل مباشر
واشكركم على المساعدة مقدما Heart

الرابط الى تم التجربة عليه 
كود :
pictureBox1.Visible = true;

           axVLCPlugin21.playlist.togglePause();

           Rectangle screenSize = new Rectangle(0, 0, 300, 300);



         //  Bitmap target = new Bitmap(screenSize.Width, screenSize.Height);



           Bitmap target = new Bitmap(100, 100);
           axVLCPlugin21.DrawToBitmap(target, screenSize);
         

           pictureBox1.Image = target;
           axVLCPlugin21.playlist.play();
           pictureBox1.Image.Save(@"C:\Pic\\kk.jpg");



RE: مشغل VLC مع C# - Eng.Ahmed Amen - 10-07-19

تفضل 



PHP كود :
axVLCPlugin21.playlist.togglePause();
String tempPath Path.GetTempPath();
string imgPath tempPath + @"Captured.jpg";
Bitmap bmpScreenshot = new Bitmap(axVLCPlugin21.ClientRectangle.Width,axVLCPlugin21.ClientRectangle.Height);
Graphics gfxScreenshot Graphics.FromImage(bmpScreenshot);
System.Drawing.Size imgSize = new System.Drawing.Size(axVLCPlugin21.ClientRectangle.Width,axVLCPlugin21.ClientRectangle.Height);
Point ps PointToScreen(new Point(axVLCPlugin21.Bounds.XaxVLCPlugin21.Bounds.Y));
gfxScreenshot.CopyFromScreen(ps.Xps.Y00imgSizeCopyPixelOperation.SourceCopy);
bmpScreenshot.Save(imgPathSystem.Drawing.Imaging.ImageFormat.Jpeg);
MessageBox.Show("Image saved : " imgPath);
pictureBox1.Image bmpScreenshot;
axVLCPlugin21.playlist.togglePause(); 

موفق ان شاء الله



RE: مشغل VLC مع C# - issamsaidd - 12-07-19

شكرا لك اخى الكريم عندى لاب توب علية كرت خارجى عند التقاط الصورة تظهر هكذا 





RE: مشغل VLC مع C# - Eng.Ahmed Amen - 12-07-19

ممكن المعالجه بطيئه عندك 

اضف بعد axVLCPlugin21.playlist.togglePause();


PHP كود :
axVLCPlugin21.playlist.togglePause();

 
       System.Threading.Thread.Sleep(1000); 

وتأكد انك حذفت كل كود Button
Take


RE: مشغل VLC مع C# - issamsaidd - 13-07-19

اخى الكريم شكرا لك على ما قدتمة 
جربت ولم يزبط مع العلم جهاز جيل سابع معالج i5 ورام 12 وهارد ssd وكرت خارجى 4 ودخلى 2 ج
الفكره ان اضافة vlc الاولى كان بها تاخر زمنى كبير فى عرض القناة المراد مشاهدتها وبحث وجدت احد 
الاخوة فى اليبان كان عارض حل لهذه المشكله عبر اضافة vlc من من الفيجول طبقت الاعدات وشرحه وفعلا كانت 
بدون تاخر زمنى تعمل بشكل سليم ولكن احتاج اخذ صورة وتكون بجودة علية وحفظ الصورة بتاريخ اليوم والساعة والزمن 
المشروع كله هلفرعله لك وده ايضا رابط الفكره من الموقع البيبانى 
المشروع اليبانى
رابط السورة كود
السورس كود
اتمنى ان تحل مشكله الصورة وان تكون بجوده علية فى اخذها وان تحفظ بتاريخ اليوم شهر يوم ساعة ثانية م او ص
PHP كود :
[align=center string s DateTime.Now.ToString();[/align]
[
align=center           pictureBox1.Image.Save("D:\\img\\+s.jpg");[/align
وهذا هو الكود الى استخدمتة ولكن ما زبط معى وشكرا لك على تقديم الدعم

اخى الكريم جربت على جهاز مكتبى علية كرت خارجى واحد فقط اشتغل تمام بس الصورة حجمها صغير وبكسلات العرض كبيرة كيف لى ان اكبر حجم الصورة المحفوظة ولا يهم الباقى بس حجم الصورة حاليا


RE: مشغل VLC مع C# - issamsaidd - 13-07-19

هذا هو الكود لوكن كيف لى ان اجعلة يقبل المقسات يدويا وليس مقاس vlc نفسة 

الكود 



PHP كود :
vlcControl1.Pause();
 
           Rectangle screenSize = new Rectangle(00300300);
 
      
            Bitmap bmpScreenshot 
= new Bitmap(vlcControl1.screenSize.WidthvlcControl1.screenSize.Height);
 
           Graphics gfxScreenshot Graphics.FromImage(bmpScreenshot);
 
           
            System
.Drawing.Size imgSize = new System.Drawing.Size(vlcControl1.ClientRectangle.WidthvlcControl1.ClientRectangle.Height);
 
           Point ps PointToScreen(new Point(vlcControl1.Bounds.XvlcControl1.Bounds.Y));
 
           gfxScreenshot.CopyFromScreen(ps.Xps.Y00imgSizeCopyPixelOperation.SourceCopy);

 
          pictureBox1.Image bmpScreenshot;
 
           pictureBox1.Image.Save("D:\\x\\+s.jpg");
 
           vlcControl1.Play();
 
       



RE: مشغل VLC مع C# - asemshahen5 - 13-07-19

جرب هذا الكود :

اي استخدم الكود التالي لتحجيم الصورة قبل تحميلها إلى البكتشر بوكس :

PHP كود :
       public Image ResizeImage(Image InputImage)
 
       {
 
           return new Bitmap(InputImage,new Size(1024,768));
 
       

ليصبح كود تحميل الصورة الى البكتشر بوكس كالتالي :

PHP كود :
           pictureBox1.Image =ResizeImage(bmpScreenshot); 

ليصبح الكود كاملا كالتالي :

PHP كود :
       private void button2_Click(object senderEventArgs e)
 
       {
 
           vlcControl1.Pause();

 
           Bitmap bmpScreenshot = new Bitmap(vlcControl1.WidthvlcControl1.Height);
 
           Graphics gfxScreenshot Graphics.FromImage(bmpScreenshot);

 
           System.Drawing.Size imgSize = new System.Drawing.Size(vlcControl1.ClientRectangle.WidthvlcControl1.ClientRectangle.Height);
 
           Point ps PointToScreen(new Point(vlcControl1.Bounds.X+8vlcControl1.Bounds.Y+8));
 
           gfxScreenshot.CopyFromScreen(ps.Xps.Y00imgSizeCopyPixelOperation.SourceCopy);

 
           pictureBox1.Image =ResizeImage(bmpScreenshot);
 
           pictureBox1.Image.Save(@"D:\Images\" + DateTime.Now.ToString("yyyy-MM-dd_hh-mm-ss tt") + "S.png", System.Drawing.Imaging.ImageFormat.Png); 
            vlcControl1.Play();
        } 
        public Image ResizeImage(Image InputImage)
        {
            return new Bitmap(InputImage,new Size(1024,768));
        } 



RE: مشغل VLC مع C# - issamsaidd - 14-07-19

شكرا جزيلا لك كثيرا


RE: مشغل VLC مع C# - asemshahen5 - 14-07-19

الحمد الله والشكر الله .

موفق ان شاء الله .


RE: مشغل VLC مع C# - issamsaidd - 16-07-19

شكرا لك اخى الكريم بس شفت ممكن تاخد صورة عن طريف 
كود :
axVLCPlugin21.video.takeSnapshot();
لما جربتها فى برنامج vlc الصورة جدا جدا جدا واضحة الى اقصد حد كيف يمكن عمل هذا الطريقة ووضع الصورة فى  pictureBox1
لان جودتها جدا عالية غير الكود الى جربناه