有没有一种方法可以将IR模式从Android〜4.4.2转换为4.4.3兼容模式。 Android〜4.4.2使用了多个周期,而4.4.3使用的开启和关闭时间以µs为单位。
这是一个他们看起来像的例子
private static final int SAMPLE_FREQ = 38400;
private static final int[] IR_SIGNAL_PULSE_COUNT = {171,171,22,64,22,64,22,64,22,21,22,21,22,21,22,21,22,21,22,64,22,64,22,64,22,21,22,21,22,21,22,21,22,21,22,21,22,21,22,64,22,21,22,21,22,21,22,21,22,21,22,64,22,64,22,21,22,64,22,64,22,64,22,64,22,64,22,876};
private static final int[] IR_SIGNAL_TIME_LENGTH = {4499,4499,578,1683,578,1683,578,1683,578,552,578,552,578,552,578,552,578,552,578,1683,578,1683,578,1683,578,552,578,552,578,552,578,552,578,552,578,552,578,552,578,1683,578,552,578,552,578,552,578,552,578,552,578,1683,578,1683,578,552,578,1683,578,1683,578,1683,578,1683,578,1683,578,23047};
从理论上讲这应该起作用,但是不起作用
private int[] toCompIR(IrDataCompat data){
int inUs = 1000000/data.getFrequency();
int[] frame = data.getFrame();
int[] arrayOfInt = new int[-1 + frame.length];
for (int j = 1; j < frame.length; j++)
arrayOfInt[(j - 1)] = frame[(j - 1)] * inUs;
return arrayOfInt;
}