Skip to content

Commit ce8732e

Browse files
author
xianing
committed
new java video/audio raw data process
1 parent 8a1f0cd commit ce8732e

File tree

9 files changed

+285
-676
lines changed

9 files changed

+285
-676
lines changed

Android/APIExample/app/src/main/java/io/agora/api/example/ExampleActivity.java

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,6 @@
2424
import io.agora.api.example.examples.advanced.MediaPlayerKit;
2525
import io.agora.api.example.examples.advanced.PlayAudioFiles;
2626
import io.agora.api.example.examples.advanced.PreCallTest;
27-
import io.agora.api.example.examples.advanced.ProcessAudioRawData;
2827
import io.agora.api.example.examples.advanced.ProcessRawData;
2928
import io.agora.api.example.examples.advanced.PushExternalVideo;
3029
import io.agora.api.example.examples.advanced.ScreenShare;
@@ -157,9 +156,6 @@ protected void onCreate(@Nullable Bundle savedInstanceState) {
157156
case R.id.action_mainFragment_senddatastream:
158157
fragment = new SendDataStream();
159158
break;
160-
case R.id.action_mainFragment_raw_audio:
161-
fragment = new ProcessAudioRawData();
162-
break;
163159
case R.id.action_mainFragment_video_enhancement:
164160
fragment = new FaceBeauty();
165161
break;

Android/APIExample/app/src/main/java/io/agora/api/example/examples/advanced/ProcessAudioRawData.java

Lines changed: 0 additions & 475 deletions
This file was deleted.

Android/APIExample/app/src/main/java/io/agora/api/example/examples/advanced/ProcessRawData.java

Lines changed: 241 additions & 121 deletions
Large diffs are not rendered by default.

Android/APIExample/app/src/main/java/io/agora/api/example/utils/YUVUtils.java

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@
1414

1515
import java.io.ByteArrayOutputStream;
1616
import java.io.IOException;
17+
import java.nio.ByteBuffer;
1718

1819
public class YUVUtils {
1920

@@ -145,4 +146,30 @@ public static byte[] bitmapToI420(int inputWidth, int inputHeight, Bitmap scaled
145146
return yuv;
146147
}
147148

149+
public static byte[] toWrappedI420(ByteBuffer bufferY,
150+
ByteBuffer bufferU,
151+
ByteBuffer bufferV,
152+
int width,
153+
int height) {
154+
int chromaWidth = (width + 1) / 2;
155+
int chromaHeight = (height + 1) / 2;
156+
int lengthY = width * height;
157+
int lengthU = chromaWidth * chromaHeight;
158+
int lengthV = lengthU;
159+
160+
161+
int size = lengthY + lengthU + lengthV;
162+
163+
byte[] out = new byte[size];
164+
165+
int readY = Math.min(lengthY, bufferY.remaining());
166+
bufferY.get(out, 0 , readY);
167+
int readU = Math.min(lengthU, bufferU.remaining());
168+
bufferU.get(out, lengthY, readU);
169+
int readV = Math.min(lengthV, bufferV.remaining());
170+
bufferV.get(out, lengthY + lengthU, readV);
171+
172+
return out;
173+
}
174+
148175
}

Android/APIExample/app/src/main/res/layout/fragment_process_rawdata.xml

Lines changed: 15 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -44,12 +44,25 @@
4444
</LinearLayout>
4545

4646
<androidx.appcompat.widget.AppCompatButton
47-
android:id="@+id/btn_blur"
47+
android:id="@+id/btn_snapshot"
4848
android:layout_width="wrap_content"
4949
android:layout_height="wrap_content"
5050
android:layout_alignParentEnd="true"
5151
android:layout_above="@id/ll_join"
52+
android:layout_marginEnd="16dp"
5253
android:layout_marginBottom="16dp"
53-
android:text="@string/blur" />
54+
android:enabled="false"
55+
android:text="@string/snapshot" />
56+
57+
<Switch
58+
android:id="@+id/btn_audio_write_back"
59+
android:layout_width="wrap_content"
60+
android:layout_height="wrap_content"
61+
android:layout_alignParentEnd="true"
62+
android:layout_above="@id/btn_snapshot"
63+
android:layout_marginEnd="16dp"
64+
android:layout_marginBottom="16dp"
65+
android:enabled="false"
66+
android:text="@string/mixing_audio" />
5467

5568
</RelativeLayout>

Android/APIExample/app/src/main/res/layout/fragment_raw_audio.xml

Lines changed: 0 additions & 66 deletions
This file was deleted.

Android/APIExample/app/src/main/res/navigation/nav_graph.xml

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -101,9 +101,6 @@
101101
<action
102102
android:id="@+id/action_mainFragment_senddatastream"
103103
app:destination="@id/SendDataStream" />
104-
<action
105-
android:id="@+id/action_mainFragment_raw_audio"
106-
app:destination="@id/RawAudio" />
107104
<action
108105
android:id="@+id/action_mainFragment_video_enhancement"
109106
app:destination="@id/VideoEnhance" />
@@ -265,9 +262,4 @@
265262
android:name="io.agora.api.example.examples.advanced.FaceBeauty"
266263
android:label="VideoEnhance"
267264
tools:layout="@layout/fragment_video_enhancement" />
268-
<fragment
269-
android:id="@+id/RawAudio"
270-
android:name="io.agora.api.example.examples.advanced.ProcessAudioRawData"
271-
android:label="RawAudio"
272-
tools:layout="@layout/fragment_raw_audio" />
273265
</navigation>

Android/APIExample/app/src/main/res/values-zh/strings.xml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -182,4 +182,5 @@
182182
<string name="item_ScreenShare">屏幕共享</string>
183183
<string name="virtual_background">虚拟背景</string>
184184
<string name="switch_camera">摄像头切换</string>
185+
<string name="snapshot">截屏</string>
185186
</resources>

Android/APIExample/app/src/main/res/values/strings.xml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -186,4 +186,5 @@
186186
<string name="item_ScreenShare">Screen Share</string>
187187
<string name="virtual_background">Virtual Background</string>
188188
<string name="switch_camera">switch camera</string>
189+
<string name="snapshot">Snapshot</string>
189190
</resources>

0 commit comments

Comments
 (0)