小编bra*_*amp的帖子

如何在Android设备上将WAV编码为mp3

我已经简化了我的问题并提供了一个赏金:有 什么选项可以将原始PCM音频数据压缩到Android设备上的mp3.

我的原帖: 我正在Android手机上创建一个合成器,我一直在生成PCM数据发送到扬声器.现在我想知道我是否可以将这个PCM数据编码为mp3以保存到SD卡.所述MediaRecorder对象可以编码音频从麦克风成各种格式的到来,但不允许从程序生成的音频数据的编码.

所以我的问题是,是否有用于编码音频的标准Android API?如果没有,那么基于Java或NDK的纯解决方案是什么?你能推荐其中任何一个吗?

如果不这样做,我只需要将生成的音频保存为WAV文件,我可以轻松完成.

java mp3 encoding android wav

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

将私钥存储在数据库中

我需要为多个用户存储私钥,以便我的服务器应用程序可以代表他们签署文件.

我想安全地存储私钥,但我无法找到最佳实践.如果我正在存储密码,我会使用密码来哈希密码,以便制作一个无法轻易转回密码的哈希值.但是,使用私钥我需要以稍后检索它的方式存储它.

我以为我会加密私钥然后将其存储在我的数据库中.我原本以为每个密钥都会使用不同的密码加密(基于用户的某些属性).但是,这些属性很可能存储在数据库中,因此如果我的数据库被泄露,那么攻击者就拥有了所有内容.

我可以使用只有我的应用程序知道的单个密码来加密所有私钥.然后攻击者必须窃取我的数据库,并且我的应用程序要做任何伤害.

我缺少一种技术/最佳实践吗?

security encryption private key

17
推荐指数
1
解决办法
8685
查看次数

JodaTime的Math.max(...)

我有两个JodaTime对象,我想要一个像这样的方法

// Return the latest of the two DateTimes
DateTime latest(DateTime a, DateTime b)
Run Code Online (Sandbox Code Playgroud)

但我找不到这样的事情.我可以轻松地写出来,但我确信JodaTime会把它放在某个地方.

java jodatime

15
推荐指数
2
解决办法
5801
查看次数

使用Maven JAXWS的多个WSDL配置

我需要在我的Maven JAXWS配置中包含多个WSDL,并且我需要为它们指定不同的输出目录,因为wsdlA中的某些方法名称与wsdlB中的方法名称冲突.我正在使用org.jvnet.jax-ws-commons,我需要绑定才能仅应用于wsdlA,而不是wsdlB.

这就是我现在所拥有的:

<build>
    <pluginManagement>
      <plugins>
        <plugin> 
          <groupId>org.jvnet.jax-ws-commons</groupId> 
          <artifactId>jaxws-maven-plugin</artifactId> 
          <version>2.1</version> 
          <executions>
            <execution> 
              <goals> 
                <goal>wsimport</goal> 
              </goals>
            </execution> 
          </executions>
          <configuration> 
            <!-- Configure Output -->
            <packageName>com.mycee.project.model</packageName> 
            <sourceDestDir>src/main/java</sourceDestDir>
            <!-- Configure WSDL Location -->
            <wsdlFiles>
              <wsdlFile>
                ${basedir}/src/jaxws/wsdl/wsdla.wsdl
              </wsdlFile>
              <!--
              <wsdlFile> 
                ${basedir}/src/jaxws/wsdl/wsdlb.wsdl
              </wsdlFile>
              -->   
            </wsdlFiles>
            <!-- Configure Binding Location -->
            <bindingDirectory>
              ${basedir}/src/jaxws/binding
            </bindingDirectory>
            <!-- Make Output Verbose -->
            <verbose>true</verbose>
          </configuration> 
        </plugin>         
      </plugins>            
    </pluginManagement>
  </build>
Run Code Online (Sandbox Code Playgroud)

更新:

<build>
    <pluginManagement>
      <plugins>
          <!-- WSDL GENERATOR PLUGIN -->
          <!-- mvn jaxws:wsimport    -->
          <plugin> 
              <groupId>org.jvnet.jax-ws-commons</groupId> 
              <artifactId>jaxws-maven-plugin</artifactId> 
              <version>2.3</version> 
              <executions>
                  <!-- WSDL A --> …
Run Code Online (Sandbox Code Playgroud)

jax-ws maven

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

显示生成的bytebuddy字节码

我正在使用ByteBuddy在运行时使用动态生成的字节代码创建一个类.生成的类执行它要执行的操作,但我想手动检查生成的字节代码,以确保它是正确的.

例如

Class<?> dynamicType = new ByteBuddy()
        .subclass(MyAbstractClass.class)
        .method(named("mymethod"))
        .intercept(new MyImplementation(args))
        .make()
        .load(getClass().getClassLoader(), ClassLoadingStrategy.Default.WRAPPER)
        .getLoaded();
Run Code Online (Sandbox Code Playgroud)

其中MyImplementation将多个StackManipulation命令链接在一起以创建动态生成的代码.

我可以将生成的类编写到文件中(因此我可以使用IDE手动检查),或者打印出生成的类的字节码吗?

java bytecode byte-buddy

8
推荐指数
2
解决办法
1222
查看次数

多图像放置算法 - 拼贴算法

我正在创建一个应用程序来同时显示多个视频(比如说 2-10 个视频)。我基本上是在寻找一种可以帮助将视频放置在屏幕上的算法。我面临的问题是每个视频可能有不同的纵横比,我显然需要调整视频的大小以使它们都适合屏幕。但我想以一种最大限度地利用屏幕(并最大限度地减少纵横比失真)的方式调整它们的大小和适合它们。此外,我希望用户能够增加一个或多个视频的大小,以便在屏幕上占用更多空间。因此算法应该是稳定的,因为放大一个视频不会让所有的展示位置都跳来跳去。

我以一种语言不可知的方式问这个问题,我使用视频的事实无关紧要,这个问题同样适用于静止图像。

那么有人知道放置算法吗?

为了帮助澄清这里是一个例子。我有三个视频,大小如下。我希望第一个视频占据大约 50% 的屏幕,最后两个视频占据大约 25% 的屏幕。

(464, 336) 50%
(624, 480) 25%
(608, 336) 25%
Run Code Online (Sandbox Code Playgroud)

我如何将它们放在屏幕上(1024x800)来实现这一点?我想我会先把屏幕一分为二,最适合上半部分的第一个视频。然后我会将下半部分分成两部分,并尽可能地将剩余的两个视频都放在一起。

提前致谢

algorithm image

6
推荐指数
1
解决办法
3234
查看次数

有条件地附加到Makefile目标内的变量

我有一个看起来有点像这样的GNU Makefile:

LIST = item1

.PHONY: targetMain targetA targetB preA preB

targetMain:
# DO all the work in here
    echo $(LIST)

targetA: preA targetMain
targetB: preB targetMain

preA:
LIST += itemA

preB:
LIST += itemB
Run Code Online (Sandbox Code Playgroud)

我的想法是运行make targetA或make targetB.他们两个都做了非常类似的事情,但有一个不同的项目列表.问题是变量没有有条件地附加到,它总是附加到,这意味着我的输出始终是"item1 itemA itemB".

我如何有条件地附加到变量?

variables makefile gnu-make

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

什么是最短的数字串,包含0到1000之间的所有数字

我坐在我的办公桌前,我只是想出了一个问题,我想知道是否有人能想出一个解决方案或一种方法来证明这个问题.

假设我想找到最短的数字串,其中包含0到1000之间的每个数字.例如,字符串"1433"包含数字,1,4,3,14,43,33,143和433.

我可以使用什么算法来构造包含所有数字0-1000的最短字符串.

我没有任何实际的理由为什么我想知道,但我有兴趣听听是否有.

algorithm math

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