| vbAccelerator - Contents of code file: vbalMp3DataWriter_cLameEncoderVersion.clsThis file is part of the download VB5 Pluggable CD Ripper, which is described in the article CD Ripping in VB Part 2. VERSION 1.0 CLASS
BEGIN
MultiUse = -1 'True
END
Attribute VB_Name = "cLameEncoderVersion"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = True
Attribute VB_PredeclaredId = False
Attribute VB_Exposed = False
Option Explicit
' ------------------------------------------------------------
' Name: cLameEncoderVersion
' Author: Steve McMahon (steve@vbaccelerator.com)
' Date: 2004-05-06
' Description:
' Wrapper around LAME Encoder Version call.
'
' See http://vbaccelerator.com/
' ------------------------------------------------------------
Private Declare Sub beVersion Lib "lameencshim.dll" ( _
beVersion As BE_VERSION)
Private Const BE_MAX_HOMEPAGE As Long = 128
Private Type BE_VERSION
'// BladeEnc DLL Version number
byDLLMajorVersion As Byte
byDLLMinorVersion As Byte
'// BladeEnc Engine Version Number
byMajorVersion As Byte
byMinorVersion As Byte
'// DLL Release date
byDay As Byte
byMonth As Byte
btYearHomepageDetail(0 To 133) As Byte
' Word alignment problem
'WORD wYear
'// BladeEnc Homepage URL
'CHAR zHomepage[BE_MAX_HOMEPAGE + 1];
'BYTE byAlphaLevel;
'BYTE byBetaLevel;
'BYTE byMMXEnabled;
btReserved(0 To 124) As Byte
End Type
Private m_tBeVer As BE_VERSION
Private m_dReleaseDate As Date
Private m_sHomePage As String
Public Property Get DllMajorVersion() As Byte
DllMajorVersion = m_tBeVer.byDLLMajorVersion
End Property
Public Property Get DllMinorVersion() As Byte
DllMinorVersion = m_tBeVer.byDLLMinorVersion
End Property
Public Property Get MajorVersion() As Byte
MajorVersion = m_tBeVer.byMajorVersion
End Property
Public Property Get MinorVersion() As Byte
MinorVersion = m_tBeVer.byMinorVersion
End Property
Public Property Get ReleaseDate() As Date
ReleaseDate = m_dReleaseDate
End Property
Public Property Get HomePage() As String
HomePage = m_sHomePage
End Property
Public Property Get AlphaLevel() As Byte
AlphaLevel = m_tBeVer.btYearHomepageDetail(131)
End Property
Public Property Get BetaLevel() As Byte
BetaLevel = m_tBeVer.btYearHomepageDetail(132)
End Property
Public Property Get MMXEnabled() As Byte
MMXEnabled = m_tBeVer.btYearHomepageDetail(133)
End Property
Private Sub decodeReleaseDate()
Dim iYear As Long
iYear = m_tBeVer.btYearHomepageDetail(0)
iYear = iYear Or (m_tBeVer.btYearHomepageDetail(1) * &H100&)
On Error Resume Next
m_dReleaseDate = DateSerial(iYear, m_tBeVer.byMonth, m_tBeVer.byDay)
End Sub
Private Sub decodeHomePage()
Dim i As Long
i = 2
Do While m_tBeVer.btYearHomepageDetail(i) > 0 And (i <= BE_MAX_HOMEPAGE + 2)
m_sHomePage = m_sHomePage & Chr(m_tBeVer.btYearHomepageDetail(i))
i = i + 1
Loop
End Sub
Private Sub Class_Initialize()
beVersion m_tBeVer
decodeReleaseDate
decodeHomePage
End Sub
| |||
|
|
||||