Jump to content
Forumu Destekleyenlere Katılın ×
Paticik Forumları
2000 lerden beri faal olan, çok şukela bir paylaşım platformuyuz. Hoşgeldiniz.

C# da Media Player Yapmakla ilgili..


Darti

Öne çıkan mesajlar

said:

private void SarkiDoldur()
{
sarkilar = new List();
DriveInfo[] di = DriveInfo.GetDrives();
foreach (DriveInfo drive in di)
{
if (drive.IsReady == false) return;
Klasorler.AddRange(Directory.GetDirectories(drive.Name));
foreach (string klasor in Klasorler)
{
if (klasor != "D:System Volume Information" && klasor != @"C:Documents and Settings" && klasor !=@"C:ProgramDataTemplates"&& klasor != @"C:ProgramData" && klasor!= @"C:System Volume Information" && klasor != @"C:Users" && klasor!= @"C:Windows" )
{
DirectoryInfo dtum = new DirectoryInfo(klasor);
FileInfo[] fitum = dtum.GetFiles("*.*", SearchOption.AllDirectories);
foreach (FileInfo dosya in fitum)
{
if (dosya.Extension == ".mp3" )
sarkilar.Add(dosya.FullName);



Yukardakı Kodlarla bılgısayarımdakı tum .mp3 uzantılı dosyaların dosyayollarını bır strıng generic liste alıyorum..

Ilk sorunum bu ıslem makıneyı bıraz kastırıyor..Islemcıyı daha az yorarak yapma sansım varmıdır..?
Bazı .mp3 uzantılı dosyaları acamıyorum.DirectxException was Unhandleddiye bir hata veriyor.Sanırım Directx den kaynaklanan bır hata.Bu hatayı nasıl gıderebılırım.. ?

Birde bende 64bit isletim sistemi var Debug ederken x86 Platform u secmeyınce calısmıyor..Uygulama dosyasını baska makıneye gonderınce orada da calısmıyor..Gonderdıgım makınedekı Directx versiyon farkımı buna sebeb oluyodur. ?
Link to comment
Sosyal ağlarda paylaş

Microsoft.DirectX.DirectXException was unhandled
Message="Uygulamada hata."
Source="Microsoft.DirectX.AudioVideoPlayback"
ErrorCode=-2147220890
ErrorString="VFW_E_NO_TRANSPORT"
StackTrace:
konum: Microsoft.DirectX.AudioVideoPlayback.Audio.Open(String fileName)
Link to comment
Sosyal ağlarda paylaş

Yavaşlama olayı için
FileInfo[] fitum = dtum.GetFiles("*.*", SearchOption.AllDirectories); yazdığın yere
FileInfo[] fitum = dtum.GetFiles("*.mp3*", SearchOption.AllDirectories); yazsan az da olsa hızlanır. sonuçta bütün dosyaları arraye almak yerine sadece mp3leri almış olacak. Ayrıca en sondaki ifli foreache de gerek kalmıycak bunu yapınca.

Bide mp3lerde verdiği hatayı tam açtığı andamı veriyo, yoksa herhangi bi ses vs.. gibi şeylerde değişiklik yapıncamı?
Link to comment
Sosyal ağlarda paylaş

Search kriteri vermeyi denedim ama bos dondu tam yapamadım sanırım...

Hatayı
aud = new Audio(sarkilar[randomindis]); satırında verıyo..


Sımdılık cozum olarak kodları try catch e aldım..Catch e dustugunde event ı yeniden calıstırıyorum hata mesajı verdırmıyorum..Bu sekılde sorunlu sarkılar arka planda gızlı kalıyolar.
Link to comment
Sosyal ağlarda paylaş

El-Barto said:

Ayrıca en sondaki ifli foreache de gerek kalmıycak bunu yapınca.


Sondakı foreach ta dizinden aldıgım tumdosyalara ait info dizisinin icinden her bir dosyanın fullname ini alıyorum..

If kosulu olmasada genericliste dosyayolunu eklemek ıcın lazım o kısım sanırım.
Link to comment
Sosyal ağlarda paylaş

El-Barto said:

sarkilar.Add(dtum.GetFiles("*.mp3*", SearchOption.AllDirectories))
denesene bi, bu olmuyosa bile ilk dediğimi yinede kullan hızlandırmak için.


Bu komut calısmaz ki..

Sarkilar.Add ile bir item ekleyebılırız..GetFiles ise geriye dizi dondurur..

Arama kısmında .mp3 olayı bu kez calıstı gecen sefer bı yazım hatası yapmısım sanırım..

GenericList i Fileinfo turunden alıp,yukardakı Getfiles olayını addrange ıle eklemeyı deneyecem ama.
Link to comment
Sosyal ağlarda paylaş

said:

sarkilar = new List();
DriveInfo[] di = DriveInfo.GetDrives();
foreach (DriveInfo drive in di)
{
if (drive.IsReady == false) continue;
Klasorler.AddRange(Directory.GetDirectories(drive.Name));
foreach (string klasor in Klasorler)
{
DirectoryInfo dtum = new DirectoryInfo(klasor);
sarkilar.AddRange(dtum.GetFiles("*.mp3", SearchOption.AllDirectories));

Performans olarak bır sorun kalmadı.
Generic List i fileinfo olarak degistirmem hem bu dosyaları dırekt eklememe hemde yapacagım Playlist e sarkının suresını de eklememi saglıyacak..

Bazı mp3 lerı calmama sorunu hala devam edıyor..Bugun bır kac arkadas a daha sordum bır cozum bulamadık..AudioPlayerdan kaynaklanan bır sorun olabılır.Cunku bu mp3 lerı windows mediaplayer calıyor..
Link to comment
Sosyal ağlarda paylaş

×
×
  • Yeni Oluştur...