如何缓冲字节数秒然后发送它们

时间:2014-01-20 07:58:22

标签: java android

我在媒体流程类中有一个函数,如下所示:

    public void encode(bytes[] data) {
            // process the data and then send to RTMP server
    }

此功能将每秒调用几次。我需要缓冲字节5秒,然后发送它。如果在函数中创建TimerThread,则会浪费内存。有没有更好的方法来实现目标?

2 个答案:

答案 0 :(得分:1)

你应该已经在一个帖子中执行此sending,所以为什么不简单地调用sleep(5000);

答案 1 :(得分:1)

你可以试试这个

long t0 = System.currentTimeMillis();

public void encode(byte[] data) {
    if (System.currentTimeMillis() - t0 >= 5000) {
        t0 = System.currentTimeMillis();
        // process the data and then send to RTMP server
    } else {
        // buffer data
    }
}