小编Pra*_*nny的帖子

如何利用play2()函数来执行视频的快速流切换?

我目前正在开发具有分辨率切换功能的Flash网络播放器.我试图play2()在Actionscript中使用NetStream类的函数.

我遇到的问题是视频不会很快改变.对于那些熟悉这个play2()功能的人,我认为玩家正在表演"standard switch"而不是表演"fast switch."

文档说,当offset参数为-1时,会发生快速切换.实际发生了什么,但是一旦"NetStream.Play.Transition"接收到事件,玩家ns.time + ns.bufferLength在执行切换之前等待直到达到指示的时间.

我认为快速切换清除了缓冲区,但在检查时ns.backbufferlength,我发现所有内容仍然被缓存.它还提到:"当偏移为-1时,切换发生在第一个可用的关键帧之后netstream.time + 3,"这就是我感到困惑的原因.

任何有关此事的帮助/见解将不胜感激.

下面是一段描述正在发生的事情的代码(newStream()当用户点击更改为新的分辨率,youtube样式时调用):

public function newStream(address:String):void
{
    var opts:NetStreamPlayOptions = new NetStreamPlayOptions();
    opts.streamName = address;
    opts.transition = NetStreamPlayTransitions.SWITCH;
    opts.offset = -1;
    ns.play2(opts);
}

private function nsCallback(event:NetStatusEvent)
{
    switch(event.info.code)
    {
        case "NetStream.Play.Transition":
        {
            trace("Current time (on Transition): " + 
                  ns.time, "Buffer: " + ns.bufferLength);
            var estTime:Number = ns.time + ns.bufferLength;
            trace("Estimated Completion Time: " …
Run Code Online (Sandbox Code Playgroud)

flash actionscript actionscript-3 netstream

50
推荐指数
1
解决办法
3369
查看次数

为什么我最终得到Casbah/Java MongoDB驱动程序的java.lang.IllegalArgumentException?

我看到一个奇怪的问题使用 casbah / java driver.

当驱动程序尝试从mongo创建响应时,我一直遇到以下异常:


  Oct 16, 2012 10:45:07 AM com.mongodb.DBTCPConnector$MyPort error
  SEVERE: MyPort.error called
  java.lang.IllegalArgumentException: response too long: 1634610484
    at com.mongodb.Response.(Response.java:40)
    at com.mongodb.DBPort.go(DBPort.java:110)
    at com.mongodb.DBPort.go(DBPort.java:75)
    at com.mongodb.DBPort.call(DBPort.java:65)
    at com.mongodb.DBTCPConnector.call(DBTCPConnector.java:201)
    at com.mongodb.DBApiLayer$MyCollection.__find(DBApiLayer.java:295)
    at com.mongodb.DBCursor._check(DBCursor.java:354)
    at com.mongodb.DBCursor._hasNext(DBCursor.java:484)
    at com.mongodb.DBCursor.hasNext(DBCursor.java:509)
    at com.mongodb.casbah.MongoCursorBase$class.hasNext(MongoCursor.scala:73)
    at com.mongodb.casbah.MongoCursor.hasNext(MongoCursor.scala:497)
    at scala.collection.Iterator$class.foreach(Iterator.scala:660)
    at com.mongodb.casbah.MongoCursor.foreach(MongoCursor.scala:497)
        ...
Run Code Online (Sandbox Code Playgroud)

这似乎是随机发生的,即使在mongo不应该从查询中返回任何结果的情况下也是如此.报告的大小不一致,通常大于应有或可能的大小.

我猜这可能是某种形式的腐败与回应.我使用Wireshark很难解决这个问题的正面或反面,但我一直发现导致响应抛出此错误的查询的请求/响应链具有来自MongoDB的"TCP Window Full"响应:

在此输入图像描述

我正在使用的版本:


 Casbah: 2.1.5.0
 Mongo Java Driver: 2.5.3
 MongoDB: 2.2

如果有人能就我可能做错的事情或任何有关如何进一步调试此问题的指示提出任何建议,我将不胜感激.

更新:查看发行说明后,Casbah 2.1.5.0,似乎使用的java驱动程序的版本是2.5.3,而不是2.7.3

java mongodb casbah mongodb-java

41
推荐指数
1
解决办法
3237
查看次数

如何使用Backbone.Paginator.js运行多个实例?

我试图Backbone.Paginator.js在同一页面上运行多个app(多个paginator实例).

我创建了一个测试页面.(导航到backbone.paginator/examples/netflix-infinite-paging).

我保留了代码app.js和创建app2.js,这是一个克隆,app.js但所有的JavaScript代码都位于一个文件中,应用程序已重命名为app2.

两个实例在第一次加载页面时起作用,但后续请求/刷新只加载app2.js的数据.

是否可以在同一页面上运行多个实例?

  • 我有兴趣使用自动分页(无限/无限滚动)所以我试图使用保罗爱尔兰语,jQuery Infinite Scroll plugin但我无法让它工作.
  • 我正在启动插件来运行文档就绪(这不起作用,如预期的那样),但也运行app2的ResultView中的代码,这也不起作用.

关于如何获得自动分页无限滚动解决方案的任何想法?


更新:在跨不同浏览器进行进一步测试后,似乎问题可能是缓存问题/差异.例如,在Safari中,它在刷新页面时有时(随机)工作.我不知道如何调试.有任何想法吗?

javascript jquery backbone.js underscore.js infinite-scroll

39
推荐指数
1
解决办法
1481
查看次数

如何纠正自动生成的IMarketBillingService.java文件中的错误?

我正在尝试In app billing在我的Andorid应用程序中实现服务.

我已将IMarketBillingService.aidl文件添加到Eclipse中的项目中.然后Eclipse自动生成了该IMarketBillingService.java文件,但有很多错误.

@Override public android.os.IBinder asBinder() { return mRemote; }
- implements android.os.IInterface.asBinder
- The method asBinder() of type IMarketBillingService.Stub.Proxy must override asuperclass  method

@Override public android.os.Bundle sendBillingRequest(android.os.Bundle bundle) throws android.os.RemoteException
{
android.os.Parcel _data = android.os.Parcel.obtain();
android.os.Parcel _reply = android.os.Parcel.obtain();
android.os.Bundle _result;
......
}
- The method sendBillingRequest(Bundle) of type IMarketBillingService.Stub.Proxy must override a superclass method
- implements com.android.vending.billing.IMarketBillingService.sendBillingRequest 
Run Code Online (Sandbox Code Playgroud)

谁能帮我这个?

我正在使用Mac,Eclipse Juno和最新版本的Android SDK.

android in-app-billing

28
推荐指数
1
解决办法
5472
查看次数

如何在保持XAML缩进具有相同背景颜色的同时保留自定义字符串颜色?

刚刚重新安装了我想要回到Visual Studio 2010的深色主题的所有内容.

我下载了.vssettings并导入了它们.一切看起来很好,除了在XAML文件中,缩进得到棕色/黄色背景,这是非常分散注意力:

在此输入图像描述

我检查了其他文件类型(的.cs,.XML等),我只看到XAML文件这让我相信,我将能够通过改变下的"XAML"开头设置一个纠正这种这种行为Tools->Options->Environment->Fonts and Colors.

但我发现任何与我看到的相符的东西.

该设置似乎由"字符串"设置控制Tools-->Options-->Environment-->Fonts.

如何在保持XAML缩进与背景颜色相同的同时保留自定义字符串颜色?

settings xaml visual-studio-2010 background-color

24
推荐指数
1
解决办法
531
查看次数

iOS/iPhone用户警告重复的NSNotification观察

这不是一个问题,而是警告他人节省一些时间.

iOS 3/iPhone OS 3上的NSNotificationCenter(我还假设Mac OS X和iOS 4)具有以下行为:

如果多次注册自己的确切具体的通知,NSNotificationCenter将认识的冗余和你已注册的观察,而不是将火过许多通知你.

这几乎不是你想要看到的行为,几乎总是偶然的.

例:

我希望我的视图控制器在新数据进入时从单例网络对象接收通知:

- (void) viewDidLoad 
{
    [super viewDidLoad];

    [[NSNotificationCenter defaultCenter] addObserver:self
            selector:@selector(newDataArrived:) 
                name:NewDataArrivedNotification
              object:[NetworkListener sharedNetworkListener]];
}
Run Code Online (Sandbox Code Playgroud)

但早些时候我已经把同样的东西放在viewWillAppear:

- (void) viewWillAppear
{
    [super viewWillAppear];

    [[NSNotificationCenter defaultCenter] addObserver:self
            selector:@selector(newDataArrived:)
                name:NewDataArrivedNotification
              object:[NetworkListener sharedNetworkListener]];
}
Run Code Online (Sandbox Code Playgroud)

请注意,它是完全相同的通知,解析为相同的观察者,发件人和通知名称.

在这种情况下,如果我不删除其中一个addObserver调用,我将向我的视图控制器发送重复通知.

在多线程环境中,这是一个受到伤害的世界.相信我.

只是把它放在那里,以防有其他人遇到这样的事情.

iphone macos nsnotifications nsnotificationcenter ios

21
推荐指数
1
解决办法
3508
查看次数

HTML5音频在Android 4.0.4设备Native Browser中无法多次播放

我目前正在开发一个HTML5项目.

Android本机浏览器中,在同一页面中多次播放相同的音频文件存在问题.Android ICS 4.0.4版本特别注意到该问题.在此版本中,音频将播放一次,但再次启动时,将不播放音频.同样的事情在Android ICS 4.0.3版本和更新的4.1.1版本中完美运行.

经测试的设备:
三星Galaxy Tab(Android 4.0.4):第一次播放时它不播放
HTC One(Android 4.0.4):第一次播放只播放它不播放
Sony Tab(Android 4.0.3):非常精细,多次播放音频
HTC Sensation(Android 4.0.3):非常精细,多次播放音频
三星Nexus手机(Android 4.1.1):非常精细,多次播放音频

根据对互联网的一些研究,这似乎是Android 4.0.4版的一个问题

请帮助我找到一些解决方案,使其适用于所有设备.

请使用此W3 Schools HTML5音频链接进行试用

html5 android android-browser html5-audio

21
推荐指数
1
解决办法
4776
查看次数

是否可以使用SAPb1 Testcomposer进行数据驱动测试?

是否可以使用SAPb1 Test Composer自动化工具进行数据驱动测试,而不是每次更新脚本以进行新的更新.

提前致谢.

sapb1

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

如何获得在C++中执行函数的确切次数?

#include<iostream>
using namespace std;

void callMe()
{
    int count=0;
    cout<<"I am called "<<++count<<" times!\n";
}

int main()
{
    callMe();
    callMe();
    callMe();
    callMe();
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

在这种情况下,输出将是

I am called 1 times!
I am called 1 times!
I am called 1 times!
I am called 1 times!

相反,我希望输出打印为

I am called 1 times!
I am called 2 times!
I am called 3 times!
I am called 4 times!

c++

12
推荐指数
6
解决办法
1591
查看次数

对于Java中的整数,为什么-1为零填充右移1 = 2147483647?

对于以下程序:

public class ZeroFillRightShift
{
  public static void main(String args[])
  {
    int x = -1;
    int y = x>>>1;
    System.out.println("x = " + x);
    System.out.println("y = " + y);
  }
Run Code Online (Sandbox Code Playgroud)

我得到如下输出:

x = -1
y = 2147483647
Run Code Online (Sandbox Code Playgroud)

我得到的结果-1>>>1是2147483647.如果它是必须移位的符号位,正如我所知,结果应该是1073741824.为什么它是2147483647呢?

下图更清楚地说明了我的问题:

样本图片

java bit-shift

12
推荐指数
1
解决办法
864
查看次数