Визуализация звукового спектра (bass.dll) - Visual Basic .NET

Узнай цену своей работы

Формулировка задачи:

Получаю данные с канала
Листинг программы
  1. Dim buffer(256) As Short
  2. Bass.BASS_ChannelGetData(stream, buffer, BASSData.BASS_DATA_FFT256)
как теперь это дело визуализировать? Может кто делал что-то похожее?
Нашел такую штуку:
Листинг программы
  1. Public Sub Visual()
  2. Dim bit As Bitmap = New Bitmap(PicVis.Width, PicVis.Height)
  3. Dim graph As Graphics = Graphics.FromImage(bit)
  4. Dim RedPen As New Pen(Color.Red, 5)
  5. Dim YellowPen As New Pen(Color.Yellow, 5)
  6. Dim d(1023) As Single
  7. Dim playing As Integer
  8. Dim X As Integer
  9. Dim Y As Integer
  10. graph.SmoothingMode = SmoothingMode.AntiAlias
  11. playing = Bass.BASS_ChannelIsActive(stream)
  12. If playing = 0 Then Exit Sub
  13. Bass.BASS_ChannelGetData(stream, d, Un4seen.Bass.BASSData.BASS_DATA_FFT1024)
  14. For X = 0 To PicVis.Width Step 8
  15. Y = Math.Sqrt(d(X + 1)) * 3 * PicVis.Height ' - 4
  16. If Y > PicVis.Height Then Y = PicVis.Height
  17. graph.DrawLine(RedPen, X + 2, PicVis.Height, X + 2, PicVis.Height - Y)
  18. 'graph.DrawArc(RedPen, X + 2, PicVis.Height, PicVis.Width, PicVis.Height - Y, Y, Y)
  19. graph.DrawLine(YellowPen, X + 2, PicVis.Height - Y, X + 2, PicVis.Height - Y - 2)
  20. Next
  21. 'draw the visual onto the picturebox
  22. PicVis.Image = bit
  23. Try
  24. graph.Dispose()
  25. 'bit.Dispose()
  26. RedPen.Dispose()
  27. YellowPen.Dispose()
  28. bit = Nothing
  29. graph = Nothing
  30. RedPen = Nothing
  31. YellowPen = Nothing
  32. Catch ex As Exception
  33. End Try
  34. End Sub

Решение задачи: «Визуализация звукового спектра (bass.dll)»

textual
Листинг программы
  1.  Public Sub wolume(ByVal Percentage As Integer)
  2.         'BASS_SetVolume(Percentage / 100)
  3.         BASS_ChannelSetAttribute(stream, BASSAttribute.BASS_ATTRIB_VOL, Percentage / 100)
  4.     End Sub

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

6   голосов , оценка 4.167 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут