• 大小: 22.43MB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2023-07-15
  • 语言: Java
  • 标签: iOS  airpla  推送  WiFi  AirTun  

资源简介

此项目是最近领导安排的预研项目,是破解AirPlay私有协议,实现了音视频推送功能,并兼容了iOS9/10以上的系统, 项目可能根据不同的android系统略有修改,具体看代码。

资源截图

代码片段和文件信息

/*
** AlacDecodeUtils.java
**
** Copyright (c) 2011 Peter McQuillan
**
** All Rights Reserved.
**                       
** Distributed under the BSD Software License (see license.txt)  
**
*/
package com.beatofthedrum.alacdecoder;

public class AlacDecodeUtils
{
public static void alac_set_info(AlacFile alac int[] inputbuffer)
{
  int ptrIndex  = 0;
  ptrIndex += 4; // size
  ptrIndex += 4; // frma
  ptrIndex += 4; // alac
  ptrIndex += 4; // size
  ptrIndex += 4; // alac

  ptrIndex += 4; // 0 ?

  alac.setinfo_max_samples_per_frame = ((inputbuffer[ptrIndex] << 24) + (inputbuffer[ptrIndex+1] << 16) + (inputbuffer[ptrIndex+2] << 8) + inputbuffer[ptrIndex+3]); // buffer size / 2 ?
  ptrIndex += 4;
  alac.setinfo_7a = inputbuffer[ptrIndex];
  ptrIndex += 1;
  alac.setinfo_sample_size = inputbuffer[ptrIndex];
  ptrIndex += 1;
  alac.setinfo_rice_historymult = (inputbuffer[ptrIndex] & 0xff);
  ptrIndex += 1;
  alac.setinfo_rice_initialhistory =  (inputbuffer[ptrIndex] & 0xff);
  ptrIndex += 1;
  alac.setinfo_rice_kmodifier = (inputbuffer[ptrIndex] & 0xff);
  ptrIndex += 1;
  alac.setinfo_7f = inputbuffer[ptrIndex];
  ptrIndex += 1;
  alac.setinfo_80 = (inputbuffer[ptrIndex] << 8) + inputbuffer[ptrIndex+1];
  ptrIndex += 2;
  alac.setinfo_82 = ((inputbuffer[ptrIndex] << 24) + (inputbuffer[ptrIndex+1] << 16) + (inputbuffer[ptrIndex+2] << 8) + inputbuffer[ptrIndex+3]);
  ptrIndex += 4;
  alac.setinfo_86 = ((inputbuffer[ptrIndex] << 24) + (inputbuffer[ptrIndex+1] << 16) + (inputbuffer[ptrIndex+2] << 8) + inputbuffer[ptrIndex+3]);
  ptrIndex += 4;
  alac.setinfo_8a_rate = ((inputbuffer[ptrIndex] << 24) + (inputbuffer[ptrIndex+1] << 16) + (inputbuffer[ptrIndex+2] << 8) + inputbuffer[ptrIndex+3]);
  ptrIndex += 4;

}

/* stream reading */

/* supports reading 1 to 16 bits in big endian format */
static int readbits_16(AlacFile alac int bits ) 
{
int result  = 0;
int new_accumulator = 0;
int part1 = 0;
int part2 = 0;
int part3 =0;

part1 = (alac.input_buffer[alac.ibIdx] & 0xff);
part2 = (alac.input_buffer[alac.ibIdx + 1] & 0xff);
part3 = (alac.input_buffer[alac.ibIdx + 2] & 0xff);

result = ((part1 << 16) | (part2 << 8) | part3);

/* shift left by the number of bits we‘ve already read
 
* so that the top ‘n‘ bits of the 24 bits we read will
 * be the return bits */
result = result << alac.input_buffer_bitaccumulator;

result = result & 0x00ffffff;

/* and then only want the top ‘n‘ bits from that where
 * n is ‘bits‘ */
result = result >> (24 - bits);

new_accumulator = (alac.input_buffer_bitaccumulator + bits);

/* increase the buffer pointer if we‘ve read over n bytes. */
alac.ibIdx += (new_accumulator >> 3);

/* and the remainder goes back into the bit accumulator */
alac.input_buffer_bitaccumulator = (new_accumulator & 7);

return result;
}

/* supports reading 1 to 32 bits in big endian format */
static int readbits(AlacFile alac int bits ) 
{
int res

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2018-08-02 18:18  Airplay_Main\
     目录           0  2018-07-08 17:35  Airplay_Main\.gradle\
     目录           0  2019-03-11 10:24  Airplay_Main\.idea\
     目录           0  2018-07-30 14:03  Airplay_Main\.idea\caches\
     文件         538  2018-07-30 14:03  Airplay_Main\.idea\caches\build_file_checksums.ser
     目录           0  2018-07-30 14:01  Airplay_Main\.idea\codestyles\
     文件        1803  2018-07-30 14:01  Airplay_Main\.idea\codestyles\Project.xml
     文件         159  2018-07-30 14:00  Airplay_Main\.idea\encodings.xml
     文件         626  2018-07-30 14:03  Airplay_Main\.idea\gradle.xml
     目录           0  2018-07-30 14:05  Airplay_Main\.idea\libraries\
     文件         676  2018-07-30 14:05  Airplay_Main\.idea\libraries\Gradle__com_android_support_support_annotations_20_0_0_jar.xml
     文件         944  2018-07-30 14:05  Airplay_Main\.idea\libraries\Gradle__com_android_support_support_v4_20_0_0.xml
     文件         335  2018-07-30 14:05  Airplay_Main\.idea\libraries\Gradle____local_aars___D__projectAs_AndroidAirPlayReceiver_master_Airplay_Main_app_libs_base64_2_3_8_jar_unspecified_jar.xml
     文件         353  2018-07-30 14:05  Airplay_Main\.idea\libraries\Gradle____local_aars___D__projectAs_AndroidAirPlayReceiver_master_Airplay_Main_app_libs_bcprov_ext_jdk16_1_46_jar_unspecified_jar.xml
     文件         333  2018-07-30 14:05  Airplay_Main\.idea\libraries\Gradle____local_aars___D__projectAs_AndroidAirPlayReceiver_master_Airplay_Main_app_libs_jmdns_3_4_1_jar_unspecified_jar.xml
     文件         345  2018-07-30 14:05  Airplay_Main\.idea\libraries\Gradle____local_aars___D__projectAs_AndroidAirPlayReceiver_master_Airplay_Main_app_libs_netty_3_2_4_Final_jar_unspecified_jar.xml
     文件         315  2018-07-30 14:05  Airplay_Main\.idea\libraries\Gradle____local_aars___D__projectAs_AndroidAirPlayReceiver_master_Airplay_Main_app_libs_rt_jar_unspecified_jar.xml
     文件        1722  2018-08-02 18:18  Airplay_Main\.idea\misc.xml
     文件         361  2018-07-30 14:05  Airplay_Main\.idea\modules.xml
     文件         564  2018-07-30 14:01  Airplay_Main\.idea\runConfigurations.xml
     文件      231692  2019-03-11 10:24  Airplay_Main\.idea\workspace.xml
     文件         889  2018-08-02 18:18  Airplay_Main\Airplay_Main.iml
     目录           0  2018-07-30 14:16  Airplay_Main\app\
     文件        9951  2018-07-30 14:16  Airplay_Main\app\app.iml
     目录           0  2018-07-30 14:11  Airplay_Main\app\build\
     文件         688  2018-07-08 17:35  Airplay_Main\app\build.gradle
     目录           0  2018-07-08 17:35  Airplay_Main\app\libs\
     文件       17008  2018-07-08 17:35  Airplay_Main\app\libs\base64-2.3.8.jar
     文件     1887089  2018-07-08 17:35  Airplay_Main\app\libs\bcprov-ext-jdk16-1.46.jar
     文件      208912  2018-07-08 17:35  Airplay_Main\app\libs\jmdns-3.4.1.jar
     文件      790250  2018-07-08 17:35  Airplay_Main\app\libs\netty-3.2.4.Final.jar
............此处省略117个文件信息

评论

共有 条评论