小编Pat*_*Pat的帖子

guava和apache等价库之间有哪些重大改进?

我们目前使用apache集合,字符串utils等.我需要决定是否应该从apache基础实现切换.

重要的标准是开发人员易于使用.性能/内存使用对我们来说还不是一个重要的问题.发展速度是此时的关键标准.

我很欣赏有关番石榴开发人员的生活变得如此轻松的观点.

java apache-commons guava

123
推荐指数
3
解决办法
3万
查看次数

"Android + FFMpeg"友谊真的可用吗?

这个问题并不意味着我对ffmpeg代码可以在Andoid上使用感兴趣.我知道它可以.我只是问一个人是否有真正的表现进展.经过几周的实验,我已经创建了这个问题,我已经受够了......我不想写分支,人们甚至不会说他们解码的是什么类型的视频(分辨率,编解码器)和谈话只是关于一些神秘的FPS.我只是不明白他们想做什么.此外,我不打算仅为我的手机或具有一些扩展OpenGL功能的Android 2.2 ++手机开发应用程序.我有非常受欢迎的手机HTC Desire所以如果应用程序无法正常工作,那么下一步是什么?

好吧,我有什么?

  1. 来自最新HEAD分支的FFMpeg源代码.实际上我不能用NDK5来填充它所以我决定使用偷来的.

  2. Bambuser的构建脚本(bash)与适当的ffmpeg源([web]:http://bambuser.com/r/opensource/ffmpeg-4f7d2fe-android-2011-03-07.tar.gz).通过使用NDK5进行一些修正后,它可以很好地构建.

  3. Rockplayer的gelded ffmpeg源代码,具有构建脚本([web]:http://www.rockplayer.com/download/rockplayer_ffmpeg_git_20100418.zip)的巨大Android.mk .经过一些修正后,它由NDK3和NDK5构建.Rockplayer可能是Android上最酷的媒体播放器,我认为我会使用它的构建有一些额外的好处.

我有一个适合项目的视频(不大而且不小):600x360 H.264.

我们从第2和第3节得到的两个库为我们提供了从视频中获取帧的可能性(逐帧,搜索等).我没有尝试获得音轨,因为我不需要一个项目.我不是在这里发布我的来源,因为我认为这是传统的,而且很容易找到.

那么,视频的结果是什么?HTC Desire,Android 2.2 600x360,H.264解码和渲染都在不同的线程中

  1. Bambuser(armv5te的NDK5 buld,RGBA8888):33 ms /帧平均值.
  2. Rockplayer(用于霓虹灯的NDK3版本,RGB565):27 ms /帧平均值.

对于第一眼看起来并不坏,但只是认为这些只是解码帧的结果.如果有人在解码时有更好的结果,请告诉我.

视频最难的是渲染.如果我们有位图600x360,我们应该在绘画之前以某种方式缩放,因为不同的手机具有不同的屏幕尺寸,我们不能指望我们的视频与屏幕尺寸相同.

我们有什么选项可以重新缩放帧以适应屏幕?我能够检查(相同的手机和视频源)这些情况:

  1. sws_scale()Bambuser构建中的C函数:70 ms /帧.不能接受的.
  2. Android中的傻瓜位图重新缩放(Bitmap.createScaledBitmap):65毫秒/帧.不能接受的.
  3. 在纹理四边形的正射投影中的OpenGL渲染.在这种情况下,我不需要缩放框架.我只需要准备纹理1024x512(在我的情况下是RGBA8888)包含帧像素,然后将其加载到GPU(gl.glTexImage2D)中.结果:~220 ms /帧渲染.不能接受的.我没想到glTexImage2D只是吸吮了Snapdragon CPU.

就这样.我知道有一些方法可以使用片段着色器来使用GPU转换YUV像素,但是我们将使用相同的glTexImage2D和200毫秒的纹理加载.

但这不是结束....我唯一的朋友结束...... :)这不是没有希望的条件.

尝试使用RockPlayer你肯定会想知道他们如何做这个该死的帧缩放如此之快.我想他们在ARM架构方面有很好的经验.他们最有可能使用avcodec_decode_video2而不是img_convert(就像我在RP版本中所做的那样),但他们使用一些技巧(取决于ARM版本)进行缩放.也许他们也有一些"神奇"的buld配置,因为ffmpeg减少了解码时间,但他们发布的Android.mk并不是他们使用的Android.mk.不知道...

所以,现在看起来你不仅可以为ffmpeg建立一些简单的JNI桥接器,而且还可以为Android平台提供真正的媒体播放器.只有在您拥有不需要缩放的合适视频时,才能执行此操作.

有任何想法吗?为你祈祷 ;)

video android ffmpeg

32
推荐指数
1
解决办法
3682
查看次数

如何在Iron-router中获取查询参数?

我想在网址中获取查询参数.

似乎没有一种简单的方法可以做到这一点......

这让我觉得我一定错过了文档中的某些内容.

meteor iron-router

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

Hibernate:集合的集合

这是我一直遇到的问题:

我想让hibernate管理一个代表集合集合的表.例如:

  • 地图地图
  • 套装清单
  • 列表地图

例如,我希望能够代表这一点:

class OwningClass {  
    Long entityId;  
    Map<String, List<Element>> mapOfLists;
}

class Element {
    String data_1;
    boolean data_2;
}

作为单个表:

OWNER (Foreign key to the owner of this element) 
MAP_KEY (varchar(30) )
LIST_INDEX (int)
ELEMENT_DATA_1 (varchar(1020)
ELEMENT_DATA_2 (bit)

没有自定义的hibernate代码似乎不可能,我不介意.但我希望有人对自定义代码的外观有一些指导.

  • 我应该扩展AbstractPersistentCollection吗?
  • CompositeUserType?

如果多个表都可以,那么可以管理它,但很明显,从db的角度来看,它是蹩脚的.

java collections hibernate

20
推荐指数
1
解决办法
4863
查看次数

如何"转换"通过Meteor.publish返回的数据?

Meteor Collections具有转换功能,允许将行为附加到从mongo返回的对象.

我们希望关闭自动发布,以便客户端无法访问数据库集合,但我们仍然需要转换功能.

我们使用更明确的Meteor.publish/Meteor.subscribe或RPC机制(Meteor.call()/ Meteor.methods())向客户端发送数据

我们怎样才能让Meteor客户端自动应用直接使用Meteor.Collection方法检索数据时的转换?

meteor

11
推荐指数
3
解决办法
7140
查看次数

你如何监听在JavaScript中移动的HTML元素?

我有一个HTML元素,我需要跟踪另一个元素.具体来说,我需要让两个元素的左上角和右上角定位相同.当窗口调整大小时,resize事件被触发,我可以调整依赖元素的位置.但是,如果被跟踪的元素被重新定位(但没有调整大小),我看不到任何DOM事件.

我们怎样才能知道DOM元素是否被移动了?我们正在使用最新的jQuery.

这是一个代码示例.

请注意,div elementOnemouseTrackingdivs是为了显示因某些原因而移动的元素,这些元素不在我的代码控制之内.

  1. 此代码适用于该elementOne案例.
  2. MouseTrackingTracker 不跟踪移动元素.
  3. ResizerTracker 不会在溢出的情况下在完整文本周围放置边框.

我希望trackingDivs移动和调整大小,无论跟踪元素的变化原因是什么.

此代码依赖于窗口大小调整是钩子事件.当元素改变其尺寸时,挂起一些触发的事件更接近我的需要.

<!DOCTYPE html>
<html>
<head>
  <link href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8/themes/base/jquery-ui.css" rel="stylesheet" type="text/css"/>
  <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.6/jquery.js"></script>
  <script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8/jquery-ui.js"></script>
  <style type="text/css">
#elementOne { float : right;width : 200px; display:inline-block}
#resizer { float : left; display:inline-block}
.trackedDiv { width:50px; height:50px; background-color: blue }
.trackingDiv { position:absolute; z-index: 1; border:3px green; border-style: solid;}
</style>
<script>
  $(function() {
      $( window ).bind("resize",function(){
          $("#elementOne").trigger("reposition");
          $("#mouseTracking").trigger("reposition");
          $("#resizer").trigger("reposition");
       });

       var repositionFunction = function(selfish, element){
           var self = …
Run Code Online (Sandbox Code Playgroud)

javascript jquery javascript-events

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

如何添加重音符号?

我正在研究一种自动西班牙语动词共轭的工具.在一个时态中,规则是强调最后一个元音.

虽然我可以创建一个地图来获得字母的重音版本,但我想知道是否有一种干净,pythonic的方式来操纵字符来添加变音符号(我想我有正确的术语).

例如:

fue -> fué

presta -> prestá
Run Code Online (Sandbox Code Playgroud)

等等

python

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

Meteor Iron-router服务器端只有路由如何获取当前用户?

对于仅服务器路由,如何获取当前用户.

请注意这是一条看起来像这样的路线:

    this.route('report_access', {
      path: '/report/:humanId?/:reportKey',
      where: 'server',
      action: ....
   });
Run Code Online (Sandbox Code Playgroud)

这不在发布或方法调用中,因此Meteor.user()/ Meteor.userId()失败.

我查看了route.params并且没有设置用户ID.

meteor iron-router

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

如何在Android上为单个联系人设置铃声?

如何仅向选定的联系人应用铃声?

我找到了一种方法来设置适用于所有联系人的默认铃声,但这不是我的目标.

我希望应用程序有一个按钮("应用要联系的铃声"),当单击时,它会开始activityForResult显示手机上所有联系人的列表.选择联系人后,联系活动将关闭并返回一个URI给联系人.然后,应用程序需要将选定的铃声应用于该特定联系人.

用于显示和选择活动的联系人的代码已经实现,并且似乎适用于该应用程序.

android contacts addressbook ringtone

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

如何将可变数量的参数传递给ant exec

我有一个ant目标,它接受一些可传递给exec任务的可变参数.使用旧机制它是微不足道的:

<exec command="cmd /c ${_full-path-to-exec}" osfamily="windows" failonerror="true">
</exec>
Run Code Online (Sandbox Code Playgroud)

但是,不推荐使用'command'来支持嵌套元素.像这样:

<exec executable="cmd" osfamily="windows" failonerror="true">
    <arg value="/c"/>
    <arg file="${_full-path-to-exec}"/>
    <arg value="${_param-one}"/>
    <arg value="${_param-two}"/>
    <arg value="${_param-three}"/>
</exec>
Run Code Online (Sandbox Code Playgroud)

这使得变量参数列表不可能.

如何解决这个问题呢?

java ant

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

Javascript社区是否有依赖检索(如maven或gem)?

Java有mavenivy从各种公共存储库中检索依赖的jar.

Ruby有更好的依赖检索工具:gem和bundle.

Javascript社区是否有任何等效的工具?我找到了许多工具来管理动态加载依赖项到浏览器中.我不是在寻找那些工具.

具体来说,我正在寻找一个新开发人员用来检索他们需要的javascript文件的工具.开发人员运行此工具并:

  1. 它查看项目依赖关系描述文件
  2. 发现该项目需要jquery-ui-1.8.7,tiny_mce-3.4.3.2和prettyLoader-1.0.1
  3. 从网上检索jquery-ui-1.8.7.min.js,prettyLoader-1.0.1.js,tiny_mce-3.4.3.2
  4. 将.js和.css安装到本地存储库中
  5. 意识到jquery-ui依赖于jquery-1.6.1并下载/安装jquery
  6. 确定tiny_mce需要jquery插件,并下载并安装它.

毕竟,开发人员拥有所需的所有js/css文件的本地副本.

如果出现新的tiny_mce或jquery,则更新项目文件,开发人员只返回该工具并获取所有新文件.

如果未指定任何版本的js库,则会检索最新版本的版本.


我刚刚描述的是maven/ivy/gem在java/ruby​​空间中的作用.

显然,我可以用maven为我自己的需求提供一些东西,但是javascript社区有没有现成的东西?

更新:

NPM被Raynos提及.Npm以node.js为中心(没关系).但是,公共存储库中的已发布库有限且元数据有限(简单发现时缺少版本,作者,项目URL).

但是,看起来npm是今天的解决方案.不幸的是,对我们来说这还不够,但这就是生活.

我真的很惊讶jquery或google-closure没有项目管理工具.(告诉我,如果我错了!)

更新:现在流星已经与陨石一起访问和更新大气库.太棒了.

javascript gem jquery maven google-closure

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

Meteor js:如何设置单选按钮?

我有一组3个单选按钮,我试图在首次呈现页面时设置它:

            <div>
                <div><input id="{{_id}}_undefined" type="radio" name="accepted" {{undecided}}>No Determination</div>
                <div><input id="{{_id}}_true" type="radio" name="accepted" value="true" {{accepted}}>Assign To Researchers</div>
                <div><input id="{{_id}}_false" type="radio" name="accepted" value="false" {{declined}}>Decline</div>
                {{#if declined}}
                <textarea name="declineReason" ></textarea>
                {{/if}}
                <button id="saveChanges" data-research-request-id="{{_id}}">Save Changes</button>
            </div>
Run Code Online (Sandbox Code Playgroud)

与这些助手:

Template.su_researchRequests.helpers({
// This feels so wrong.
accepted: function() {
    return this.accepted === true?'checked':'';
},
declined: function() {
    return this.accepted === false?'checked':'';
},
undecided: function() {
    return this.accepted !== false && this.accepted !==true?'checked':'';
}
});
Run Code Online (Sandbox Code Playgroud)

我尝试使用{'checked':''}或{}返回一个对象

我无法在流星中使用{{#if}},就像我在胡子中一样,可以阻挡已检查的属性.

在渲染页面时设置当前值并不困难.

javascript meteor spacebars

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