PDA

View Full Version : کار با ویدئو ها در سی شارپ



yousef971
جمعه 16 بهمن 1388, 13:26 عصر
سلام
من یک برنامه آموزشی برای مدرسه نوشتم تمام مراحل تمام شده و در قسمت نمایش فیلمها مشکل دارم. یک فیلم را چه جوری در فرم ویندوز نمایش بدهم .
و چه جوری از آدرس دهی نسبی استفاده کنم چون میخام از سی دی نمایش داده بشه

ehsanarn
شنبه 17 بهمن 1388, 13:07 عصر
سلام دوست عزیز
روی Tools Boxراست کلیک کن و گزینه Choose Items را انتخاب کن و از تب
Com Componets و گزینه Windows Media Player تیک بزن و Ok بزن.
حالا اون به فرم اضافه کن واستفاده کن و دستو زیر را برای پخش فایل استفاده کن و در قسمت Address File آدرس فایل مورد نظر را وارد کن.
اگه مشکلی داشتی بگو یک نمونه برنامه بزارم

axWindowsMediaPlayer1.currentPlaylist.appendItem(a xWindowsMediaPlayer1.newMedia("Address File"));

yousef971
یک شنبه 18 بهمن 1388, 19:18 عصر
دستت درد نکنه خیلی به دردم خورد حالا چه جوری آدرس دهی کنم یعنی این فیلمها را باید از سی دی پخششون کنم و در ussıng باید medıa را تعریف کنم یا نه
با تشکر از راهنماییتون

saied_hacker
یک شنبه 18 بهمن 1388, 20:17 عصر
از لحاظ پسوند هر چی رو که بتونی توی مدیا پلیر اجرا کنی اینجام می تونی...





System.Reflection.Assembly a = System.Reflection.Assembly.GetEntryAssembly();
MessageBox.Show(System.IO.Path.GetDirectoryName (a.Location ));
axWindowsMediaPlayer1.currentPlaylist.appendItem(a xWindowsMediaPlayer1.newMedia(@"D:\Nobody Knows About Persian Cats-www.magicp30.org.wmv"));
MessageBox.Show(a.Location);

با این کد می تونی ادرس فایل EXE رو به دست بیاری بعدبا تغییر اون اردس ادرس ویدیو ها رو توی یه لیست باکس بزاری و...

توی این مثال ادرس هر فایلی ( کامل و با پسوند ) رو بزاری اجرا م یکنه

ehsanarn
یک شنبه 18 بهمن 1388, 20:42 عصر
سلام دوست عزیز
اولا باید فایل اجرایی شما روی سی دی باشد.چون با استفاده از دستور زیر آدرس محل فایل اجرایی بدست آمده و کافی هست که فایل های ویدئو درون پوشه قرار داده و از دستور زیردر قسمت
Address File دستور قبلی اضافه کنید.
Application.StartupPath + @"\Movie\1.avi"

در مورد سوال دوم باید بگم من خودم از پسوندهای .avi,.mpg,.datاستفاده کردم مشکلی نداشته
است .باز هم اگه پسوند خاصی مورد نظر هست تست کنید.

yousef971
یک شنبه 18 بهمن 1388, 21:15 عصر
اساتید محترم دستتون درد نکنه یک سوال دیگه داشتم
حالا من دوتا btton انداختیم صحفه باتون 1 را که میزنم ویدیو نمایش داده میشه و وقتی باتون 2 را میزنم میخام ویدیو اول stop بشه و ویدیو دوم شروع به نمایش کنه

ehsanarn
دوشنبه 19 بهمن 1388, 09:44 صبح
سلام دوست عزیز
از دستور زیر برای stop کردن استفاده کن.

axWindowsMediaPlayer1.Ctlcontrols.stop();
وبا استفاده از دستور زیز لیست پخش فیلم را پاک کن

axWindowsMediaPlayer1.currentPlaylist.clear();
وفایل جدید را با استفاده از دستور loadکن

yousef971
دوشنبه 19 بهمن 1388, 10:02 صبح
مهندس دمت گرم خیلی عالی بود
حالا دستور لود و از کجا بیارم
ویک سوال دیگه اگه 15 تا ویدیو باشه واسه هر کدومش باید دستورات به ترتیب نمایش استوپ لود و بعدش لود ویدیو بعدی را بنویسم

ehsanarn
دوشنبه 19 بهمن 1388, 13:35 عصر
سلام دوست عزیز
منظورم از دستور load این بود

axWindowsMediaPlayer1.currentPlaylist.appendItem(a xWindowsMediaPlayer1.newMedia("Address File"));
درباره سوال دوم باید بگم میتونی هر 15 فایل تو لیست پخش قرار داده و با استفاده از کلید Next به فایل بعدی بروید

yousef971
دوشنبه 19 بهمن 1388, 14:02 عصر
سلام
حالا سوال دوممو یه جور دیگه میگم
یعنی باید از باتونها شروع به اجرا کنه مثلا در درس 6 من 15 تا لینک های مختلف داره مثل پرتاب فضا پیما و سیارها
فیلم اول شروع به نمایش میکنه بعد لینک دومم سیاره است باید به محض زدن پرتاب موشک متوقف بشه و فیلم سیاره شروع به نمایش کنه یعنی کلا ادرس اولو پاک و ادرس سیاره را لود کنه
اگه این جوری نباشه اون همه زحمتی که واسه پروژه کشیدم به باد میره

ehsanarn
دوشنبه 19 بهمن 1388, 20:43 عصر
سلام دوست عزیز
برای هر فایل لیست قبلی نمایش را پاک کن وفایل جدید را بارگذاری کن

با استفاده از دستور زیر

axWindowsMediaPlayer1.currentPlaylist.clear();

speralda
یک شنبه 05 آذر 1391, 14:06 عصر
درود دوستان

من با توجه به گفته دوستان یک فایل بنام video در CD کنار setup پروژه گداشتم. و کدمم به این صورت نوشتم


axWindowsMediaPlayer1.currentPlaylist.appendItem(a xWindowsMediaPlayer1.newMedia(Application.StartupP ath + @"\video\0.avi"));

ولی نتیجه نگرفتم و فیلمم اجرا نشد.


ممنون میشم دوستان راهنمایی کنند.