小编Jua*_*nez的帖子

当我必须使用Intents时,createChooser是什么?我能用这种方法做什么?

我一直在看看stackoverflow,但我没有找到关于什么是"createChooser"的定义以及为什么我可以使用,并且在某种情况下使用它是好的.

提前致谢.

android android-intent

19
推荐指数
2
解决办法
2万
查看次数

发出编码和解码音频录制到G711(PCMU - uLaw)格式

当我们需要流音频时,没有太多关于应用此编解码器的信息.如果不应用编解码器,我的代码就像在两个设备之间建立通信的魅力一样,但我需要以该格式进行编码/解码,因为我需要与服务器进行流式处理而不是两个设备之间的流式传输(我使用2个设备测试此代码).

我正在寻找机会,如果你的任何人都能看到问题的关键在哪里.我尝试了不同的输入参数配置.也许,我使用的编解码器是错误的(我从一个带有Apache许可证的项目中获取它们.)

此值在录制器发送器中设置,如播放器 - 接收器设备中所示:

private int port=50005;
private int sampleRate = 8000 ;//44100;
private int channelConfig = AudioFormat.CHANNEL_OUT_MONO;    
private int audioFormat = AudioFormat.ENCODING_PCM_16BIT;       
int minBufSize = AudioTrack.getMinBufferSize(sampleRate, channelConfig, audioFormat);
Run Code Online (Sandbox Code Playgroud)

注意:播放器中的CHANNEL_OUT_MONO和录像机项目中的CHANNEL_IN_MONO.

这些是我的方法:

public void startStreamingEncoding() {

    Thread streamThread = new Thread(new Runnable() {

        @Override
        public void run() {
            try {

                android.os.Process.setThreadPriority(android.os.Process.THREAD_PRIORITY_URGENT_AUDIO);

                DatagramSocket socket = new DatagramSocket();

                short[] buffer = new short[minBufSize];

                DatagramPacket packet;

                final InetAddress destination = InetAddress.getByName(ip_receiver); 

                recorder = new AudioRecord(MediaRecorder.AudioSource.MIC,sampleRate,channelConfig,audioFormat,minBufSize*10);

                recorder.startRecording();

                /////Encoding:
                Encoder encoder = new G711UCodec();
                byte[] …
Run Code Online (Sandbox Code Playgroud)

android codec pcm audiorecord audiotrack

9
推荐指数
1
解决办法
5107
查看次数

标签 统计

android ×2

android-intent ×1

audiorecord ×1

audiotrack ×1

codec ×1

pcm ×1