2014-10-16 97 views
0

有沒有辦法將IR模式從Android 4.4.2轉換爲4.4.3兼容模式。 Android〜4.4.2使用多個週期,4.4.3使用μs的開機和關機時間。將IR Pattern Android從〜4.4.2轉換爲4.4.3

下面是一個例子,他們看起來怎麼樣

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; 
} 
+0

我知道這是真的老了,但看看這個: 的http:// stackoverflow.com/a/28934938/1042362 – Dwebtron 2015-06-23 14:59:24

回答

0

你可能會遇到一個舍入誤差。

請嘗試

浮動INUS = 1000000.0f/data.getFrequency()

相關問題