PDA

Просмотр полной версии : [Помогите!] C# Открыть видео


Andry lomakin
11.11.2011, 17:37
Всем привет
Гуглил не нашёл
Проблемка хочу при нажатии на кнопку открывалась видео (формат Avi)

Nickitee
11.11.2011, 19:27
Где именно?
Если в плеере по умолчанию то просто

System.Diagnostics.Process.Start("C:\\video.avi");

Если в твоей форме, то первая ссылка из гугла:
_[Ссылки могут видеть только зарегистрированные и активированные пользователи]
Удали "_"

Andry lomakin
11.11.2011, 20:26
Где именно?
Если в плеере по умолчанию то просто

System.Diagnostics.Process.Start("C:\\video.avi");

Если в твоей форме, то первая ссылка из гугла:
_[Ссылки могут видеть только зарегистрированные и активированные пользователи]
Удали "_"
Ну вот код что то не идет смотри я хочу такое нажал на кнопку и прога открывает Проигрыватель Windows Media и идет видео

•theSaboteur•
11.11.2011, 21:28
Ну вот код что то не идет смотри я хочу такое нажал на кнопку и прога открывает Проигрыватель Windows Media и идет видео

если пишешь из под wpf, то узай какой-нибудь MediaElement :)
Если под формами, то, пожалуй, кроме стороннего софта, рациональных вариантов нет)
Можешь Managed DX использовать - там готовые классы Video & Audio есть, управлять
им можно сделав еще одну нить (если не в теме - гугли "C# Thread's use")).
Для них(VideoAudioPlayback имеется ввиду, не потоки) тебе понадобится DirectX SDK (где-то пол-гигабайта дистрибутив). В проекте добавишь ссылку на Microsoft.DirectX.AudioVideoPlayback; и вобщем-то все.
=====
Только что откопал старые наброски:
Что бы воспроизводить без лишних форточек - свойству Owner присваиваешь контрол в котором будешь воспроизводить видео, example: this;
=====

Итого:

•Делаешь глобальную переменную типа Video
•Создай произвольный контрол, хоть групБокс
•В обработчике какой-нибудь кнопочки:

OpenFileDialog ofd = new OpenFileDialog();
if(ofd.ShowDialog()==DialogResult.OK)
{
video = new Video(ofd.FileName);
video.Owner=this.groupBox1;//если есть извращенческие наклонности - можешь хоть на батоннах проигрывать)
new Thread(()=>{
video.Play();
}).Start();
}

•Можно украсить программку, всякими "stop", "pause"...


============
Added 12.11.11 19:52
============
Ув. |Alex|.
Убедительная просьба, написать сообщение в тех. поддержку мира сего, с требованием выслать вам малеха совести... /facepalm/facepalm