منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب

نسخة كاملة : تحويل النص إلى صوت عن طريق جوجل
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
بسم الله الرحمن الرحيم
السلام عليكم شباب
ايه الحل فى المشكلة دى
او ايه الى ناقص
Project > Add Reference > COM
واختار ما في الصوره
شكرا لك اخى العزيز شريف لاكن على ما اعتقد ان البرنامج به اكواد ناقصة مو كامل او ممكن مثال بمشروع بسيط يوضع اوامر الزر والكمبو بوكس
ولا اعمل اين اضع هذه الاكواد
PHP كود :
Private Sub DownloadAndPlay()
       Try
           
'main delecration'
           
Dim soundData As Byte()
           
Dim url As String String.Format("http://translate.google.com/translate_tts?tl={0}&q={1}"comboBox1.Text.ToLower(), textBox1.Text.Trim())

           
'create requset'
           
Dim rq As HttpWebRequest TryCast(WebRequest.Create(url), HttpWebRequest)
           
rq.UserAgent "Mozilla/5.0 (Windows NT 6.1; rv:27.0) Gecko/20100101 Firefox/27.0"

           'read response'
           
Dim response As HttpWebResponse TryCast(rq.GetResponse(), HttpWebResponse)
           
Using stream As New BinaryReader(response.GetResponseStream())
               
soundData stream.ReadBytes(CInt(response.ContentLength))
               
stream.Close()
               
response.Close()
           
End Using


           
'create voice file in windows-temprary folder'
           
Dim tempFilePath As String CreateTempFile(soundData)

           
'play temprary-file sound'
           
PlaySound(tempFilePath)

       Catch 
ex As Exception
           MessageBox
.Show(ex.Message)
       
End Try
   
End Sub

   
Private Function CreateTempFile(ByVal data As Byte()) As String
       
'sound format is mpeg'
       
Dim soundFileName As String System.IO.Path.GetTempPath() & Guid.NewGuid().ToString() & ".mpeg"
       
File.WriteAllBytes(soundFileNamedata)
       Return 
soundFileName
   End 
Function

   Private 
Sub PlaySound(ByVal file As String)
       
'initlize player'
       
Dim player As New WMPLib.WindowsMediaPlayer()
       
player.settings.volume 100
       player
.settings.autoStart True
       AddHandler player
.PlayStateChangeAddressOf player_PlayStateChange
       player
.URL file
   End Sub

   
Private Sub player_PlayStateChange(ByVal NewState As Integer)
       
Application.DoEvents()
       If 
NewState CInt(WMPLib.WMPPlayState.wmppsMediaEndedThen
           
'release everything'
           
toolStripProgressBar1.Style ProgressBarStyle.Blocks
       End 
If
   
End Sub