资源简介
此项目是最近领导安排的预研项目,是破解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\codest
文件 1803 2018-07-30 14:01 Airplay_Main\.idea\codest
文件 159 2018-07-30 14:00 Airplay_Main\.idea\encodings.xm
文件 626 2018-07-30 14:03 Airplay_Main\.idea\gradle.xm
目录 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.xm
文件 944 2018-07-30 14:05 Airplay_Main\.idea\libraries\Gradle__com_android_support_support_v4_20_0_0.xm
文件 335 2018-07-30 14:05 Airplay_Main\.idea\libraries\Gradle____local_aars___D__projectAs_AndroidAirPlayReceiver_master_Airplay_Main_app_libs_ba
文件 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.xm
文件 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.xm
文件 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.xm
文件 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.xm
文件 1722 2018-08-02 18:18 Airplay_Main\.idea\misc.xm
文件 361 2018-07-30 14:05 Airplay_Main\.idea\modules.xm
文件 564 2018-07-30 14:01 Airplay_Main\.idea\runConfigurations.xm
文件 231692 2019-03-11 10:24 Airplay_Main\.idea\workspace.xm
文件 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\ba
文件 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个文件信息
相关资源
- Android开发丶一个仿IOS的底部弹窗
- 基于Android的信息推送管理系统的设计
- mqtt详细
- Practical Mobile Forensics 3rd Edition Jan 201
- Android仿QQ和iOS的ListView左滑出现删除和
- Axure移动互联网产品组件库大全ios部件
- PHP+andriod+IOS二维码签到开源代码
- 外勤易签到v1.0 包含php+andriod+ios完整
- 基于Android的消息推送系统
- android、ios会说话汤姆猫图片素材包
- Android集成消息推送之MQTT
- Android滑动ScrollView时使导航栏停留的效
- 音视频开发进阶指南基于Android与iOS平
- DelphiXE8开发iOS和Android移动应用开发教
- Xamarin官方教程
- ios12.1ttf.rar
- UMP (Android iOS) v1.7.2.1.unitypackage
- GPS通过蓝牙推送位置到APP显示
- Android推送合集
- UMP (Android iOS) v1.7.2.1
- eclipse jee helios SR2 64位
- 大华最新_(20190312)_Android和iOS播放和
- java实现微信公众号模版消息推送
- ffmpeg安卓课程详解.pdf
- Github:Android自定义ToggleButton模仿ios风
- ios+ipad+iphone+android+pc跨平台兼容播放器
- java微信模板消息推送,客服消息推送
- 跨平台声声波信代码支持Android/IOS/L
- Django 使用WebSocket实时消息推送和简易
- android iOS php des 互通加密解密算法
评论
共有 条评论