小编Vij*_*uri的帖子

Google语音API抛出无效的音频通道数

对于Mac机上录制的音频,Google Speech API会引发无效的音频通道计数异常。

我只是在使用Google提供的示例应用程序。

com.google.api.gax.grpc.ApiException: io.grpc.StatusRuntimeException: INVALID_ARGUMENT: Invalid audio channel count
    at com.google.api.gax.grpc.ExceptionTransformingCallable$ExceptionTransformingFuture.onFailure(ExceptionTransformingCallable.java:109)
    at com.google.api.gax.core.ApiFutures$1.onFailure(ApiFutures.java:52)
    at com.google.common.util.concurrent.Futures$6.run(Futures.java:1764)
    at com.google.common.util.concurrent.MoreExecutors$DirectExecutor.execute(MoreExecutors.java:456)
    at com.google.common.util.concurrent.AbstractFuture.executeListener(AbstractFuture.java:817)
    at com.google.common.util.concurrent.AbstractFuture.complete(AbstractFuture.java:753)
    at com.google.common.util.concurrent.AbstractFuture.setException(AbstractFuture.java:634)
    at io.grpc.stub.ClientCalls$GrpcFuture.setException(ClientCalls.java:466)
    at io.grpc.stub.ClientCalls$UnaryStreamToFuture.onClose(ClientCalls.java:442)
    at io.grpc.internal.ClientCallImpl$ClientStreamListenerImpl.close(ClientCallImpl.java:481)
    at io.grpc.internal.ClientCallImpl$ClientStreamListenerImpl.access$600(ClientCallImpl.java:398)
    at io.grpc.internal.ClientCallImpl$ClientStreamListenerImpl$1StreamClosed.runInContext(ClientCallImpl.java:513)
    at io.grpc.internal.ContextRunnable.run(ContextRunnable.java:52)
    at io.grpc.internal.SerializingExecutor$TaskRunner.run(SerializingExecutor.java:154)
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
    at java.util.concurrent.FutureTask.run(FutureTask.java:266)
    at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180)
    at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    at java.lang.Thread.run(Thread.java:745)
Caused by: io.grpc.StatusRuntimeException: INVALID_ARGUMENT: Invalid audio channel count
    at io.grpc.Status.asRuntimeException(Status.java:545)
    ... 13 more
Run Code Online (Sandbox Code Playgroud)

这需要任何特殊的配置吗?

这个错误是什么意思?

java speech-recognition speech-to-text

6
推荐指数
2
解决办法
4050
查看次数

如何从storm命令行客户端了解当前运行的拓扑?

有没有办法从storm命令行客户端显示所有当前运行的Storm拓扑?

Storm文档没有说明这一点.

http://storm.apache.org/documentation/Command-line-client.html

apache-storm

5
推荐指数
1
解决办法
4270
查看次数

Spark Streaming 如何识别新文件

Spark Streaming 如何fileStream从一个时间间隔到另一个时间间隔识别监控目录中的新文件?

它是基于新文件名还是文件创建时间戳或任何其他方法?

newFilesOnly辩论的意义何在?

fileStream(String directory, Class<K> kClass, Class<V> vClass, Class<F> fClass, Function<org.apache.hadoop.fs.Path,Boolean> filter, boolean newFilesOnly, org.apache.hadoop.conf.Configuration conf)
Run Code Online (Sandbox Code Playgroud)

apache-spark spark-streaming

5
推荐指数
1
解决办法
1222
查看次数

如何获取Spark流中的当前批处理时间戳

如何在Spark流中获取当前批处理时间戳(DStream)?

我有一个火花流应用程序,输入数据将进行多次转换.

我需要在执行期间使用当前时间戳来验证输入数据中的时间戳.

如果我与当前时间进行比较,那么时间戳可能与每个RDD转换执行不同.

有没有办法获得时间戳,特定的Spark流微批处理已经开始或它属于哪个微批处理间隔?

java apache-spark spark-streaming

4
推荐指数
1
解决办法
5806
查看次数

Kafka无法接收二进制数据

我正在尝试将二进制格式的音频剪辑发送到 Kafka 主题。

但 Kafka 没有收到该消息。

以下是我的制作人:

import java.util.Properties;
import org.apache.kafka.clients.producer.KafkaProducer;
import org.apache.kafka.clients.producer.ProducerRecord;
import org.apache.log4j.BasicConfigurator;
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Paths;

public class AudioProducer {

public static void main(String[] args) {
    BasicConfigurator.configure();
    System.out.println("program started");
    Properties properties = new Properties();
    properties.put("bootstrap.servers", "broker-host:9092");
    properties.put("acks", "all");
    properties.put("retries", 0);
    properties.put("batch.size", 26214400);
    properties.put("linger.ms", 1);
    properties.put("buffer.memory", 2*26214400);
    properties.put("max.request.size", 26214400);
    properties.put("key.serializer", "org.apache.kafka.common.serialization.StringSerializer");
    properties.put("value.serializer", "org.apache.kafka.common.serialization.ByteArraySerializer");
    KafkaProducer<String,byte[]> producer = new KafkaProducer<String, byte[]>(properties);
    try {
        byte[] temp =Files.readAllBytes(Paths.get(args[0]));
        System.out.println("input path:"+args[0]);
        producer.send(new ProducerRecord<String,byte[]>("audio-queue", "test-key",temp ));
    } catch (IOException e) {
        e.printStackTrace(); …
Run Code Online (Sandbox Code Playgroud)

apache-kafka

3
推荐指数
1
解决办法
8299
查看次数

如何从程序中获取火花作业状态?

我知道hadoop REST API可以通过程序访问作业状态。

同样,是否有任何方法可以在程序中获取火花作业状态?

hadoop apache-spark

2
推荐指数
1
解决办法
7483
查看次数

如何在eclipse中打印当前执行的方法名称?

在eclipse中执行Java程序时如何打印当前正在执行的方法名?

例如:

public class Bits {
    public static void main(String[] args) {
        System.out.println("method:main");
        int result=TotSum(24,35);
        System.out.println("total sum:" + result);
    }

    private static int TotSum(int i, int j) {
        System.out.println("method:TotSum");
        return (i+j);
    }
}
Run Code Online (Sandbox Code Playgroud)

输出:

方法:主

方法:TotSum

总金额:59

在eclipse中是否可以自动打印当前正在执行的方法名称(而不是像以下代码那样在每个方法中使用硬编码的sysout语句或logger语句)?

public class Bits {
    public static void main(String[] args) {
        int result=TotSum(24,35);
        System.out.println("total sum:" + result);
    }

    private static int TotSum(int i, int j) {
        return (i+j);
    }
}
Run Code Online (Sandbox Code Playgroud)

获取当前执行方法的名称

这个问题的所有答案都建议在程序中添加一些代码.

但我的问题是找出当前执行方法而不添加任何代码.

就像Java的eclipse功能一样.

java eclipse

2
推荐指数
1
解决办法
2748
查看次数

Java使用组合拆分字符串

我的输入字符串是

element1-element2-element3-element4a|element4b-element5-
Run Code Online (Sandbox Code Playgroud)

预期的产出是

element1-element2-element3-element4a-element5-
element1-element2-element3-element4b-element5-
Run Code Online (Sandbox Code Playgroud)

因此短划线( - )是分隔符,管道(|)表示位置的两个替代元素.

我能够为包含单个管道的输入生成组合:

ArrayList<String> finalInput = new ArrayList<String>();
String Input = getInputPath();
StringBuilder TempInput = new StringBuilder();
if(Input.contains("|")) {
    String[] splits = Input.split("\\|", 2);
    TempInput.append(splits[0]+"-"+splits[1].split("-", 2)[1]);
    finalInput.add(TempInput.toString());
    TempInput = new StringBuilder();
    String[] splits1 = new StringBuilder(Input).reverse().toString().split("\\|", 2);
    finalInput.add(TempInput.append(splits1[0]+"-"+splits1[1].split("-", 2)[1]).reverse().toString());              
}
Run Code Online (Sandbox Code Playgroud)

但是如果有多个管道符号,则此逻辑会失败.

  • 如何仅在最后一次出现时拆分字符串?

有没有有效的方法来使用拆分字符串与组合?

输入:

element1-element2-element3-element4a|element4b-element5-element6a|element6b
Run Code Online (Sandbox Code Playgroud)

输出:

element1-element2-element3-element4a-element5-element6a
element1-element2-element3-element4b-element5-element6a
element1-element2-element3-element4a-element5-element6b
element1-element2-element3-element4b-element5-element6b
Run Code Online (Sandbox Code Playgroud)

java

2
推荐指数
1
解决办法
926
查看次数

风暴用户界面不起作用

我们正在以伪模式执行 Storm 拓扑。

Storm 拓扑运行良好并且能够连接 Storm UI (8080)。

但是 Storm UI 没有显示正在运行的拓扑信息。

也重新启动了storm UI 进程,但没有用。

Storm 是否需要特殊配置才能在 Storm UI 中显示正在运行的拓扑?

apache-storm

2
推荐指数
1
解决办法
8921
查看次数