Tạo playlist trong Windows Media Palyer với C#
Phương thức sau tạo playlist cho 1 control WindowsMediaPlayer.
|
private void CreatePlayLis(String folder,string extendsion) { string myPlaylist = “Sample”; WMPLib.IWMPPlaylist pl; WMPLib.IWMPPlaylistArray plItems; plItems = windowsMediaPlayer.playlistCollection.getByName(myPlaylist);
if (plItems.count == 0) pl = windowsMediaPlayer.playlistCollection.newPlaylist(myPlaylist); else pl = plItems.Item(0);
DirectoryInfo dir = new DirectoryInfo(folder); FileInfo[] files = dir.GetFiles(extendsion, SearchOption.AllDirectories);
foreach (FileInfo file in files) { string musicFile01 = file.FullName; string mName = file.Name; ListViewItem item = new ListViewItem(mName); musicList.Items.Add(item);
WMPLib.IWMPMedia m1 = windowsMediaPlayer.newMedia(musicFile01); pl.appendItem(m1); } windowsMediaPlayer.currentPlaylist = pl; windowsMediaPlayer.Ctlcontrols.play(); } |
Bạn tạo 1 thể hiện của WindowsMediaPlayer controls windowsMediaPlayer sau đó gọi phương thức này trong nút load thư mục chứa các tập tin nhạc.
Các đoạn code còn lại của ứng dụng:
|
private void tsbLoadDirectry_Click(object sender, EventArgs e) { FolderBrowserDialog fld = new FolderBrowserDialog(); fld.SelectedPath = @”E:\Music\hoatau”; if (fld.ShowDialog(this) == DialogResult.OK) { CreatePlayLis(fld.SelectedPath,tscomboExtension.Text); } }
private void musicList_DoubleClick(object sender, EventArgs e) { try { IWMPMedia med= windowsMediaPlayer.currentPlaylist.get_Item(musicList.SelectedIndices[0]); ListViewItem sel = musicList.SelectedItems[0]; windowsMediaPlayer.Ctlcontrols.playItem(med); } catch (Exception) { } }
private void tsbClearPlaylist_Click(object sender, EventArgs e) { for (int i = 0; i < windowsMediaPlayer.currentPlaylist.count; i++) { IWMPMedia med = windowsMediaPlayer.currentPlaylist.get_Item(i); windowsMediaPlayer.currentPlaylist.removeItem(med); }
musicList.Items.Clear(); } |
Chúc may mắn!
Nguyễn Quốc Đông said
Thầy ơi , em đã viết một chương trình tương tự như windows media player, em sử dụng thư viện winmm.dll của WMP. Mỗi khi play file nhạc mp3, nếu pause xong rồi mà resume lại thi nó phát lại từ đầu, em không biết là nên dùng thư viện nào cho đúng để cả file mp3 đều có thể dừng và phát lại đúng chỗ như là khi play file wma.
Đây là chương trình mà em đã viết :
http://www.mediafire.com/?xmckmfmgnj2
Và em muốn hỏi là em muốn lấy những thông tin mà người sử dụng nhập ở trong tab summary của mỗi file nhạc, ví dụ như ca sĩ, tác giả v.v.. . Em phải làm thế nào ? Mong thầy chỉ dẫn cho em. Em cám ơn thầy .
Lê bá Đức Trọng said
Thưa Thầy !
Em tạo playlist bằng Listbox; mỗi khi play xong một bài hát là tự động nó stop lại ( không hát tiếp bài nữa). Rất mong thầy chỉ dùm em .
—Em cảm ơn thầy!
Lê bá Đức Trọng said
Thưa thầy! khi em tạo Windows Media Player trong form C#, Em chỉnh none hoàn toàn đối với các chức năng của WMP , mà tạo và viết code cho các button, các menu, contextmenustrip, status, trackbar,timer……
— Tất cả các ứng dụng xem phim, nghe nhạc đều chạy, nhưng khi playt song nó có change qua bài tiếp theo, nhưng không hát tiếp nữa, em sử dụng sự kiện private void axWindowsMediaPlayer1_MediaChange(object sender, AxWMPLib._WMPOCXEvents_MediaChangeEvent e); nhưng vẫn không play bài hát tiếp theo, em rất mong thầy chỉ giúp em.
—- Trong bài của em không sử dụng thư viện dll .
meomap said
sax
Truong Phuong said
cac list cua thay chan qau thay oi, lam cho dep vao chu!!!(:D)
Nguyen van hien said
thay oi, cho em hoi “musicList.Items.Add(item);” sao khong thay khai bao vay thay. em moi hoc xin thay chi cu the dum em.Em cam on.
vovanhai said
musicList là tên của control ListView đặt trên form của bạn.
Nguyen van hien said
Thay oi, thay co the cho em xin 1 chuong trinh hoan chinh luon duoc khong thay, em xin dem ve tham khao ah, neu duoc em cam on thay rat nhieu. Em xem hoai nhung cung thay chang hieu j may.
Nguyen van hien said
thầy ơi, cho em xin hỏi cái “CreatePlayLis(fld.SelectedPath,tscomboExtension.Text);” tscomboExtension cái đối số này là j vậy thầy em xem hoài không hiểu, no nằm ở đâu vậy thầy. Em cám ơn.
Valmzetvn said
Thầy ơi, xin thầy, hướng dẫn dùm em.
Em vẫn chưa hiểu quá trình hoạt động của playlist, ví dụ như play từ playlist, tạo thêm playlist mới, …
Mong được thầy chỉ dẫn.
Cảm ơn nhiều.
Hao Long said
Thầy Hải ơi em rất cần bài này thầy có thể hướng dẫn cụ thể được ko ạh, thầy có thể gửi soudcode cho em được ko ạh. Rất mong thầy trả lời thư
hl_hl_vt@yahoo.com
vovanhai said
Đây là sourcecode của project, các bạn tham khảo nhé!
Tải xuống rồi đổi đuôi gif thành đuôi rar. Dùng winrar giải nén. Chúc thành công!
link: http://vovanhai.wordpress.com/files/2009/06/mymediaplayer.gif
hp said
khong tai duoc thay oi . ax ax chac chet mat buc minh qua di hic hic. thay oi giup em di, hay thay gui vao mail em nhe
dohuyphuong@gmail.com
vovanhai said
Nhấn phải chuột, chọn save as.
Hao Long said
thầy hải ơi em làm và chạy được như thầy rồi , e cảm ơn thầy.
Thầy Hải ơi cho em hỏi sao khi mình chọn trong combobox = *.mid và load foder không có file *.mid thì trong listview ko hiển thị là đúng,nhưng nhạc thì vẫn chạy.thầy cho em hỏi là vậy mình làm như thế nào để báo là file *.mid không có , và file *.mid không có thì nhạc không được hát.
Mong thầy trả lời thư em
Mình Tạo playlist trong Windows Media Palyer với C# được rồi nha ai cần thì để lại email hoặc pm qua yahoo mình gửi cho nha. (Microsoft Visual Studio 2005)
Hao Long said
Dowload về tham khảo : Click vào đây
Bài của thầy Hải
Hao Long said
Ac đưa link nhầm (xí xóa 2 link trên nha ) : Click link này
Bài của Thầy Hải
Hao Long said
Ac bị gì vậy trời Đây là chính xác nhất
Trang said
em chao thay.em thiet ke chuong trinh nghe nhac su dung windown form ma khong biet cach lam sao de khi hat xong mot bai hat thi no tu dong nhay bai khac.thay giup gium em voi .em cam on thay
Trang said
em chao thay.
em dang viet chuong trinh nge nhac.
cai duong link http://vovanhai.wordpress.com/files/2009/06/mymediaplayer.gif
em khong vao duoc em muon lay ve doc tham khao thay giup gium em.
em cam on thay.
Tem said
ban Hao long oi !ban co the gui cho minh cai file tao list nhac trong 2005 dc ko!!!minh dang can gap! thanks ban!
Help said
plItems = windowsMediaPlayer.playlistCollection.getByName(myPlaylist);
khong the thuc thi duoc vi khong hieu doi tuong windowsMediaPlayer
help me!!!!
ai biet giup dum e nha.
vovanhai said
Tạo 1 instance của WindowsMediaPlayer có tên windowsMediaPlayer.
Luongminhduc said
Thua thay !
Link died roi thay oi! thay gui lai link download project nay vao mail em duoc khong thay !
cucquynhob said
mình down được rồi.Thanks bạn Hao Long nhé!
cucquynhob said
Chào thầy! thầy có thể giúp em phần code tạo thêm nhiều Skin vào chương trìh nghe nhạc được ko thầy?em tìm mãi mà ko thấy.Cảm ơn thầy nhiều!em càn lắm thầy ơi!
Hao Long said
Bạn download được rồi nhưng bạn sử dụng được chưa nè : cucquynhob
HnauT said
Chào thầy!thầy có thể giúp em custom style cho track bar được không ah!Cảm ơn thầy nhiều!
uttieu said
chao thay!link nay e vao k dc
http://vovanhai.wordpress.com/files/2009/06/mymediaplayer.gif
lam sao e co the xem dc codo cua bai nay thay co the chi e dc khong?
thanks!
EdogawaConan said
Xin chào thầy và các bạn, mình cũng có một thắc mắc như một bạn ở trên. Chương trình nghe nhạc của em có tạo playlist rồi nhưng mà e không biết cách nào cho nó hát từ đầu cho đến cuối được, rất mong thầy và các bạn đã có kinh nghiệm giúp đỡ. Thanks
Mr.Hai said
Phương thức sau tạo playlist cho 1 control WindowsMediaPlayer…
control WindowsMediaPlayer này ở đâu thế nhỉ thầy có thể gởi cho em control này được không …em mới vào nghề còn gà mờ
vovanhai said
Add reference rồi chọn thẻ COM
HongQuan said
ban nhan chuot phai va chon Save link as rui doi duoi gjf thanh rar la dc
Nhi said
tscomboExtension la gi vay thay ?
Bao said
cho minh hoi… các media player hiện nay có hiển thị các hình đại diện cho bài hát ví dụ như hình của album. trong c# làm cách nào để có thể lấy được hình trong file mp3??
cảm ơn nhiều!!!
Võ Văn Hải said
Được bạn à. Tham khảo thử xem: http://sourceforge.net/projects/csid3lib/
phượng said
thầy ơi có thể hướng dẫn em tạo playlist tren c#.em ko biet lam phan này.
phượng said
dây là mail của phượng nguyenphuong040486@gamil.com bạn nào có code tao playlist tren c# gui cho p voi.
Hao Long said
Link mediafire cho các bạn ,
Mới test lại vẫn còn ok lắm VS-2005,
Bài của thầy Hải mình có sữa lại 1 ít :
Còn đây là bài của mình :
Hao Long said
Bài của thầy Hải :
http://www.mediafire.com/?lxjdb6xitr218a1
Bài của mình :
http://www.mediafire.com/?pa4uvmc8ae8jmig
nam said
thầy ơi.em muốn lấy các tag của file nhạc thì làm như thế nào ạ?(ví dụ khi em load bai nhạc Còn ta với nồng nàn,em sẽ lấy được bài đó cua ca sỹ Quang Dũng,của tác giả nào,thời gian bao nhiêu phút,trong album nào).mong thầy sớm trả lời giúp em.
Võ Văn Hải said
Đây là code lấy tag ID3 V1
Class MusicID3Tag:
public class MusicID3Tag
{
public byte[] TAGID = new byte[3]; // 3
public byte[] Title = new byte[30]; // 30
public byte[] Artist = new byte[30]; // 30
public byte[] Album = new byte[30]; // 30
public byte[] Year = new byte[4]; // 4
public byte[] Comment = new byte[30]; // 30
public byte[] Genre = new byte[1]; // 1
}
Class GetID3Tags
public class GetID3Tags
{
public MusicID3Tag GetID3Tag(string filePath)
{
MusicID3Tag tag = null;
using (FileStream fs = File.OpenRead(filePath))
{
if (fs.Length >= 128)
{
tag = new MusicID3Tag();
fs.Seek(-128, SeekOrigin.End);
fs.Read(tag.TAGID, 0, tag.TAGID.Length);
fs.Read(tag.Title, 0, tag.Title.Length);
fs.Read(tag.Artist, 0, tag.Artist.Length);
fs.Read(tag.Album, 0, tag.Album.Length);
fs.Read(tag.Year, 0, tag.Year.Length);
fs.Read(tag.Comment, 0, tag.Comment.Length);
fs.Read(tag.Genre, 0, tag.Genre.Length);
string theTAGID = Encoding.Default.GetString(tag.TAGID);
}
}
return tag;
}
}
Thử
string Title = Encoding.Default.GetString(tag.Title);
string Artist = Encoding.Default.GetString(tag.Artist);
string Album = Encoding.Default.GetString(tag.Album);
string Year = Encoding.Default.GetString(tag.Year);
string Comment = Encoding.Default.GetString(tag.Comment);
string Genre = Encoding.Default.GetString(tag.Genre);
Console.WriteLine(Title);
Console.WriteLine(Artist);
Console.WriteLine(Album);
Console.WriteLine(Year);
Console.WriteLine(Comment);
Console.WriteLine(Genre);
Console.WriteLine();
Nguyễn Trung Hiếu said
Thầy ơi! Em đang làm chức năng mở nhiều mở bài hát nhưng có 1 diều là trong playlist lại hiện thị đường đẫn file, em muốn rút gọn đường dẫn file này thành tên bài hát thì làm sao ah! để nhìn đẹp hơn. Em mò hoài mà chẳng đc. Thầy giúp em với
Nguyễn Trung Hiếu said
Thầy oi! khi mình xóa bài hát trong playlist thì sao nó vẫn hát ah, chuyển bài nó cũng vẫn hát luôn. Vậy làm sao fix được ah.
Prince Dark said
thầy, cho em hỏi cái bài My MediaPlayer.rar của thầy (http://vovanhai.wordpress.com/files/2009/06/mymediaplayer.gif)
Em chạy trên máy, thấy nó hát không đúng bài hát ~~! Double click vào bài này, thì nó hát bài khác hok àh..
coi said
Em chào thầy.Thầy ơi cho em hỏi muốn làm cho cái bài hát đang chạy có màu khác với các bài hát còn lại thì làm như thế nào được?Và muốn khi nó chuyển sang bài hát khác thì cũng phải đổi màu theo?Em cảm ơn Thầy ah.
tienldseuit said
Em chào thầy! Thầy ơi cho em hỏi Giờ em muốn tạo một mục Recently File thì em phải làm như thế nào ah?
tienldseuit said
Thầy cho em hỏi: Mình làm thế nào để 1 bài đang chạy thì màu của nó có màu khác với màu của các bài khác trong listview? Em xin cảm ơn!
LongDoan said
Share cho mấy bạn cần. Code này tương đối, các bạn xem demo và downl về sửa lại nhé! http://longdoan.info/home/vi/news/CAC-CHUYEN-MUC-KHAC/Share-bo-code-Windows-Media-Player-viet-bang-C-Microsoft-Visual-Studio-2010-40/
Thanh Nam said
Ai làm chỉ mình cụ thể với đc koh? Mình làm hoài ma vẫn ko đc. Mới vào ngành còn gà mờ lắm
(((((( Help meee
Thanh Nam said
Ai đã làm đc liên hệ mail:sorry_because_iloveyou991@yahoo.com giúp mjh vs nha .Thanks các b nhiều
Thanh Nam said
Ai làm đc cho mình code bài này đj các b ??
Thanh Nam said
Hao Long oi.Mail cua b la j jax ?? Cho mjh dc koh???
Nguyen Hoc said
Em đang làm Windows Media Palyer với C# cho môn học, nhưng mà thật sự còn nhiều chỗ vướng mắt quá về phần nghe nhạc . Nếu có thể mong mấy thầy demo cho em cái video để em có thể có được cái nhìn tổng quan hơn, và biết đâu đó lượng kiến thức từ video đó có thể giúp được gì để em thoát khỏi vướng mắt mà em đang gặp phải.
Cảm ơn mọi người!
Nguyễn Học said
Thưa thầy em đang làm Một chương trình nghe nhạc nhưng mà khi nghe xong bài số 1, thì nó không tự động chuyển sang bài số 2 đã có trong playlist được.
Mong các thầy chỉ giúp em.
Nguyen Hoc said
Thầy ơi, cho em hỏi làm sao để cho chương trình nghe nhạc tự động chuyển bài hát khi nó hát hết thời gian. Ví dụ hát hết bài 1 thì tự động sang bài số 2 đã có trong playlist.
Long said
toàn thấy Thầy cho em hỏi, lâu quá rồi cũng ko thấy Thầy trả lời. em biết thầy cũng rất bận, nhưng hi vọng thậy tạo ra pic thì Thầy cũng có thể giải đáp thắc mắc cho các bạn. cảm ơn thầy
Võ Văn Hải said
Đóng thread này. Chuyển qua đây
tiền said
chào thầy, em muốn tạo một đường dẫn tới một file ảnh , rồi mở file ảnh đó trong pictureBox thì phải làm như thế nào vậy thầy
AT said
minh thay link co bi gi dau nhi.bt ma.minh tai ve xem dc ma