Also ich habe ein Problem mit meinem Spykee und habe mal in der Firmware gestöbert was wohl die beiden Header-Bytes [3] + [4] sein sollen.
Versteht das einer:
Was kommt bei "szData" raus, wenn man diese 2 Bytes dafür einsetzt ([3],[4]):
(byte) 1, (byte) 0x82 (bei einem MP3: 16 KB / 16 Khz)
oder
(byte) 3, (byte) 0x42 (bei einem MP3: 61 KB / 24 Khz)
oder
(byte) 2, (byte) 0x0c (bei einem MP3: 713 KB / 44 Khz)
oder
(byte) 2, (byte) 0x82 (bei einem MP3: 3,8 MB / 44 khz)
Kann das einer von Euch umrechnen und wie würde der Code zum umrechnen in Java aussehen?
Weil ich übertrage ein MP3 File, doch sind die beiden Bytes vom Header [3] + [4] bei jedem mp3 File unterschiedlich. Ich nehme an es ist die Länge aber ich bekomme es nicht zusammen.
Bin gespannt ob jemand von Euch da Licht ins dunkel bringen kann
Versteht das einer:
Java:
# define ntohs(x) ( (((x) << 8) & 0xff00) | (((x) >> 8) & 255) )
memcpy(&szData, &Header[3], 2);
szData = ntohs(szData);
LOG_DEBUG("received packet: type %d, data-size = %d\n", Type, szData);
if(szData > PACKET_DATA_SIZE_MAX) {
LOG_DEBUG("error: packet size exceeded\n");
return 0;
}
if(szData > *pszBuffer) {
LOG_DEBUG("error: packet size exceeded\n");
return 0;
}
Was kommt bei "szData" raus, wenn man diese 2 Bytes dafür einsetzt ([3],[4]):
(byte) 1, (byte) 0x82 (bei einem MP3: 16 KB / 16 Khz)
oder
(byte) 3, (byte) 0x42 (bei einem MP3: 61 KB / 24 Khz)
oder
(byte) 2, (byte) 0x0c (bei einem MP3: 713 KB / 44 Khz)
oder
(byte) 2, (byte) 0x82 (bei einem MP3: 3,8 MB / 44 khz)
Kann das einer von Euch umrechnen und wie würde der Code zum umrechnen in Java aussehen?
Weil ich übertrage ein MP3 File, doch sind die beiden Bytes vom Header [3] + [4] bei jedem mp3 File unterschiedlich. Ich nehme an es ist die Länge aber ich bekomme es nicht zusammen.
Bin gespannt ob jemand von Euch da Licht ins dunkel bringen kann
Zuletzt bearbeitet: