Skip to content

Commit 9e9702b

Browse files
committed
image folder, include effect gif
1 parent 290187b commit 9e9702b

File tree

14 files changed

+86
-10
lines changed

14 files changed

+86
-10
lines changed

README.md

Lines changed: 76 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,76 @@
1+
# AudioVisualizeView
2+
许多音乐App上常见的音频可视化效果,读取音频数据并利用傅里叶转换成可视化的字节数据,再通过自定义View渲染而成.
3+
组件源码目录:https://github.com/GitHubZJY/AudioVisualizeView/tree/master/audiovisualize
4+
demo目录:https://github.com/GitHubZJY/AudioVisualizeView/tree/master/app
5+
6+
## 特性
7+
1. 支持自定义可视化颜色 <br/>
8+
2. 支持本地路径、url、raw的音频路径读取,或自定义外部MediaPlayer传入音频数据渲染 <br/>
9+
3. 支持自定义频谱展示数目 <br/>
10+
4. 支持多种可视化展示形式,包括圆形、水平、波浪、网状等 <br/>
11+
5. 支持AndroidX <br/>
12+
13+
## 效果预览
14+
![](https://github.com/GitHubZJY/AudioVisualizeView/blob/master/image/SingleVisualize.gif)
15+
![](https://github.com/GitHubZJY/AudioVisualizeView/blob/master/image/ReflectVisualize.gif)
16+
![](https://github.com/GitHubZJY/AudioVisualizeView/blob/master/image/CircleVisualize.gif)
17+
![](https://github.com/GitHubZJY/AudioVisualizeView/blob/master/image/WaveVisualize.gif)
18+
![](https://github.com/GitHubZJY/AudioVisualizeView/blob/master/image/NetVisualize.gif)
19+
20+
## 如何使用
21+
在项目根目录的build.gradle添加:
22+
```
23+
allprojects {
24+
repositories {
25+
...
26+
maven { url 'https://jitpack.io' }
27+
}
28+
}
29+
```
30+
31+
在项目的build.gradle添加如下依赖:
32+
```
33+
implementation 'com.github.GitHubZJY:AudioVisualizeView:v1.0.0'
34+
```
35+
36+
### 1.在xml中引用
37+
38+
```xml
39+
<com.zjy.audiovisualize.view.SingleVisualizeView
40+
android:id="@+id/audio_visualize_view"
41+
app:visualize_ratio="2"
42+
android:layout_width="wrap_content"
43+
android:layout_height="wrap_content" />
44+
```
45+
46+
### 2.在代码中初始化
47+
```java
48+
public class SingleVisualizeActivity extends AppCompatActivity {
49+
50+
private AudioVisualizeView vAudioVisualize;
51+
52+
@Override
53+
protected void onCreate(Bundle savedInstanceState) {
54+
super.onCreate(savedInstanceState);
55+
setContentView(R.layout.activity_single_visualize);
56+
57+
vAudioVisualize = findViewById(R.id.audio_visualize_view);
58+
vAudioVisualize.doPlay(R.raw.sound);
59+
}
60+
61+
62+
@Override
63+
protected void onDestroy() {
64+
super.onDestroy();
65+
if (vAudioVisualize != null) {
66+
vAudioVisualize.release();
67+
}
68+
}
69+
}
70+
```
71+
在需要播放的位置,调用 `doPlay` 方法,并传入对应的音频资源id或者音频文件路径,即可开始播放。
72+
在页面销毁时记得调用release释放对应的音频资源,避免内存泄漏。
73+
74+
## About Me
75+
一个在奋斗路上的Android小生
76+
欢迎关注简书: https://www.jianshu.com/u/4cb2688ddf31

app/src/main/res/layout/activity_single_visualize.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
<com.zjy.audiovisualize.view.SingleVisualizeView
1212
android:id="@+id/audio_visualize_view"
1313
android:text="Hello World!"
14-
app:visualize_ratio="2"
14+
app:visualize_ratio="4"
1515
android:layout_width="match_parent"
1616
android:layout_height="match_parent"
1717
app:layout_constraintBottom_toBottomOf="parent"

app/src/main/res/layout/activity_wave_visualize.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
<com.zjy.audiovisualize.view.WaveVisualizeView
1212
android:id="@+id/audio_visualize_view"
1313
android:text="Hello World!"
14-
app:visualize_ratio="2"
14+
app:visualize_ratio="4"
1515
android:layout_width="match_parent"
1616
android:layout_height="match_parent"
1717
app:layout_constraintBottom_toBottomOf="parent"

app/src/main/res/values/colors.xml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
<?xml version="1.0" encoding="utf-8"?>
22
<resources>
3-
<color name="colorPrimary">#6200EE</color>
4-
<color name="colorPrimaryDark">#3700B3</color>
5-
<color name="colorAccent">#03DAC5</color>
3+
<color name="colorPrimary">#00c1de</color>
4+
<color name="colorPrimaryDark">#00c1de</color>
5+
<color name="colorAccent">#00c1de</color>
66
</resources>

audiovisualize/src/main/java/com/zjy/audiovisualize/view/CircleVisualizeView.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
/**
1212
* Date: 2020/11/30
1313
* Author: Yang
14-
* Describe:
14+
* Describe: In CIRCLE mode, show spectrum base on a circle, with jumping around it
1515
*/
1616
public class CircleVisualizeView extends AudioVisualizeView{
1717

audiovisualize/src/main/java/com/zjy/audiovisualize/view/NetVisualizeView.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
/**
1212
* Date: 2020/11/30
1313
* Author: Yang
14-
* Describe:
14+
* Describe: In NET mode, show spectrum base on a circle, with jumping around it and link all points of spectrum so like a net.
1515
*/
1616
public class NetVisualizeView extends AudioVisualizeView{
1717

audiovisualize/src/main/java/com/zjy/audiovisualize/view/ReflectVisualizeView.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
/**
1212
* Date: 2020/11/30
1313
* Author: Yang
14-
* Describe:
14+
* Describe: In REFLECT mode, show spectrum base on a horizontal line, different with HORIZONTAL_LINE mode, it will show both sides of line.
1515
*/
1616
public class ReflectVisualizeView extends AudioVisualizeView{
1717

audiovisualize/src/main/java/com/zjy/audiovisualize/view/SingleVisualizeView.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616
/**
1717
* Date: 2020/11/30
1818
* Author: Yang
19-
* Describe:
19+
* Describe: In SINGLE mode, show spectrum base on a horizontal line, with jumping above of the center line , it's also default visualize mode.
2020
*/
2121
public class SingleVisualizeView extends AudioVisualizeView{
2222

audiovisualize/src/main/java/com/zjy/audiovisualize/view/WaveVisualizeView.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
/**
1212
* Date: 2020/11/30
1313
* Author: Yang
14-
* Describe:
14+
* Describe: In WAVE mode, show spectrum base on a horizontal line, it will link all points of spectrum so like a wave.
1515
*/
1616
public class WaveVisualizeView extends AudioVisualizeView{
1717

image/CircleVisualize.gif

243 KB
Loading

0 commit comments

Comments
 (0)