صفحه ها
دسته
وبلاگ من در بلاگفا
عکس من
وبلاگهاي دوستان
ورودي هاي پنجره اميد
معرفي وب سايت هاي پرطرفدار
سايتهاي دوستان
لينك هاي دسترسي سريع
مطالب من در ثبت مطالب روزانه
آرشیو
آمار وبلاگ
تعداد بازدید : 570981
تعداد نوشته ها : 1492
تعداد نظرات : 394
Rss
طراح قالب
مهدي يوسفي
مبحث امروز که ارتباط داره به خواندن اطلاعات اساسی فایل MP3.متغییر های زیر رو تو اول کد تعریف کنید

Dim HasTag As Boolean
Dim Tagg As String * 3
Dim Songname As String * 30
Dim Artist As String * 30
Dim Album As String * 30
Dim Year As String * 4
Dim Comment As String * 30
Dim Genre As String * 1

البته کد بالا تست شده است مورد کاملش اینهاست ولی نمی دونم جواب بده یانه خودتون امتحان کنید اگه شد بهم بگید -فعلآ استفاده نکنید

Private Type MP3Tag
FullName As String ' Filename and filepath of MP3 file
FileName As String ' Name of MP3 file
Path As String ' Path of MP3 file
title As String * 30
artist As String * 30
album As String * 30
Year As String * 4
Comment As String * 30
Genre As String * 20
TagPresent As Boolean
MPEGVersion As String * 3 ' Version 1.0, 2.0 or 3.0
Layer As String * 1 ' Layer 1, 2 or 3
Protection As Boolean ' 0=CRC is present, 1=Not Protected
BitRate As String * 3 ' Recording bitrate
SampleRate As String * 5 ' Sampling Frequency
Padding As Integer ' 0=Frame is not padded, 1=(32bits for Layer 1, 8bits for Layer 2/3)
PrivateBit As Integer ' Not used. Do what you want with it
ChannelMode As String * 12 ' 00=Stereo, 01=Joint Stereo, 10=Dual Channel Stereo, 11=Mono
ModeExtension As String * 2 ' Used only for Joint Stereo
Copyright As Boolean ' Is file copyrighted?
Original As Boolean ' Is file on original media?
Emphasis As String * 8 ' Emphasis setting (usually none (00))
FrameLength As Integer ' Calculated from BitRate, SampleRate and Padding
TotalFrames As Long ' Filelength/Framelength
PlayTime As Single ' Calculated from TotalFrames, SampleRate and Stereo?
ValidHeader As Boolean ' True=Valid Header found, False=Not an MP3 file
End Type

بعد یک پروسیجر به این صورت تعریف می کنیم تاهر وقت بهش یک نام فایل پاس دادیم متغییر هامون پر بشه از اطلاعت فایل

Private Sub GetTag(Filename)
Open Filename For Binary As #1
Get #1, FileLen(Filename) - 127, Tagg
If Not Tagg = "TAG" Then
Close #1
HasTag = False
Songname = "No Tag Found"
Artist = "No Tag Found"
Album = "No Tag Found"
Year = "None"
Comment = "No Tag Found"
Genre = "0"
Exit Sub
End If
HasTag = True
Get #1, , Songname
Get #1, , Artist
Get #1, , Album
Get #1, , Year
Get #1, , Comment
Get #1, , Genre
Close #1
End Sub

حالا به این صورت میشه ازش استفاده کرد

Me.GetTag(MP3 FileName)

به طور معمول وقتی فایل به صورت باینری باز می شه چیزی جز صفر و یک رو نمشه از توش خواند به همین دلیل این نوع باز کردن فایل رو تصویر آینه وار حافظه می گن.چون هر چی روی هارد نوشته همون رو دودستی تحویلت می ده!از این رو باید همیشه بعد از خواندن این نوع فایل ها اونارو از فرمت باینری در آورد با تابع زیر که ازقبل توی وی بی هست

Src(Your Ascii Word)

اگه رشته رو با(String *30)ولی در برنامه بالا چون اندازه رشته رو تعریف کردیم

یک کد اسکی مقدار دهی کنیم خود به خود هنگام چاپ به فرم رشته ی معمولی در میاد

در دستور بالا ما با علامت ضربدر به وی بی می گوییم که چه مقدار حافظه را برای متغییر ما نگه دارد ولی اگر این مورد را استفاده نکنیم وی بی به صورت اتوماتیک سایز رشته رو انتخاب .میکنه اگه رشته کم باشه کم واگر زیاد باشه زیاد براش جا نگه می داره به ازای هر حرف یک بایت

پنج شنبه بیست و ششم 10 1387
X