自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Android系统攻城狮

CSDN博客专家,专注Android/Linux系统、多媒体技术分享!

  • 博客(3901)
  • 资源 (98)
  • 收藏
  • 关注

原创 我的新书《Android系统多媒体进阶实战》正式发售了!!!

新书发售:《Android系统多媒体进阶实战》

2024-07-22 19:20:40 2267

原创 Java进阶之文本块:用法实例(四十九)

本篇目的:Java进阶之文本块:用法实例基本概念文本块是Java 13引入的一种新的字符串表示方式,允许以更自然的方式表示多行字符串。文本块使用三个双引号"""定义,可以包含换行符和缩进,编译器会自动处理这些格式。功能提供了一种更简洁的方式来表示多行字符串。自动处理换行符和缩进,使代码更易读。使用限制文本块只能用于字符串,不能用于其他类型。文本块中的换行符和缩进会被编译器处理,但可以使用来保留特定的格式。性能特性文本块不会影响运行时性能,只是编译器的语法糖。

2025-05-21 07:30:00 1191

原创 Java进阶之var局部变量类型推断:用法实例(四十八)

本篇目的:Java进阶之var局部变量类型推断:用法实例基本概念var是Java 10引入的局部变量类型推断语法,允许在声明局部变量时省略类型声明,由编译器自动推断变量的类型。使用var时,变量的类型必须在编译时可以明确推断出来。功能简化代码,减少冗余的类型声明。提高代码的可读性和可维护性,特别是在使用复杂类型时。使用限制var只能用于局部变量,不能用于方法参数、返回类型或字段。变量的类型必须在编译时可以明确推断出来,不能用于匿名类或lambda表达式。性能特性var。

2025-05-21 07:00:00 1133

原创 Java进阶之输入和输出:用法实例(四十七)

本篇目的:Java进阶之Scanner/System.out:用法实例基本概念Scanner类用于从控制台或文件中读取输入。System.out用于向控制台输出数据。功能Scanner:提供多种方法读取不同类型的数据,如整数、浮点数、字符串等。System.out:提供printlnprint和printf等方法,用于输出数据到控制台。使用限制Scanner需要显式关闭以释放资源。System.out是的实例,不能直接修改输出流。性能特性Scanner。

2025-05-20 07:30:00 835

原创 Java进阶之命令行参数args:用法实例(四十六)

本篇目的:Java进阶之命令行参数args:用法实例基本概念命令行参数是通过命令行传递给Java程序的参数。这些参数在程序启动时通过args数组传递给main方法。功能允许用户在启动程序时动态传递参数。提供了灵活的输入方式,适用于配置程序行为或传递数据。使用限制命令行参数通过数组传递,只能传递字符串类型。如果需要其他类型的数据,必须在程序中进行类型转换。性能特性命令行参数的使用简单且高效,适用于各种类型的输入。提供了灵活的配置方式,无需修改代码即可调整程序行为。使用场景。

2025-05-20 07:00:00 1107

原创 Ubuntu22.04之解决superproductactivity13.0.10 webDAV报错:NoRevAPIError:cn(二百八十一)

本篇目的:Ubuntu22.04之解决superproductactivity13.0.10 webDAV报错:NoRevAPIError:cn。

2025-05-19 18:45:00 719

原创 Android15音频进阶之AAudio线程死锁实战案例(一百二十)

本篇目的:Android15音频进阶之AAudio线程死锁实战案例。

2025-05-19 07:30:00 1243

原创 Java进阶之多维数组的内存结构:用法实例(四十五)

本篇目的:Java进阶之多维数组的内存结构:用法实例基本概念多维数组是数组的数组,每个元素本身也是一个数组。Java中的多维数组实际上是数组的嵌套,每个维度的数组可以有不同的长度。功能多维数组可以存储多维度的数据,如矩阵、表格等。提供了灵活的内存结构,允许不同维度的数组具有不同的长度。使用限制多维数组的每个维度可以有不同的长度,但需要在初始化时明确指定。多维数组的内存结构是连续的,但每个维度的数组可以分散在不同的内存位置。性能特性多维数组的内存结构提供了高效的内存利用和访问效率。

2025-05-19 07:00:00 671

原创 Java进阶之代码块作用域:用法实例(四十四)

本篇目的:Java进阶之代码块作用域:用法实例基本概念代码块是用大括号{}括起来的代码片段,具有独立的作用域。代码块中的变量在代码块外部不可见,遵循作用域规则。功能局部代码块:在方法内部定义,用于限制变量的作用范围。初始化代码块:用于初始化类或对象,分为静态初始化代码块和实例初始化代码块。同步代码块:用于实现线程同步,确保多线程环境下的线程安全。使用限制代码块中的变量只能在代码块内部访问。初始化代码块只能在类定义中使用,不能在方法中使用。同步代码块需要明确指定同步对象。性能特性。

2025-05-17 07:30:00 780

原创 Java进阶之break与continue:用法实例(四十三)

本篇目的:Java进阶之break与continue:用法实例基本概念break和continue是Java中的跳转语句,用于控制循环的执行流程。break用于完全终止循环,而continue用于跳过当前循环的剩余部分,进入下一次迭代。功能break:终止当前循环,跳出循环体。continue:跳过当前循环的剩余部分,直接进入下一次迭代。使用限制break和continue只能在循环语句(如forwhiledo-while)中使用。break可以带标签使用,跳出多层嵌套的循环。

2025-05-17 07:00:00 1110

原创 Python3.12之解决:externally-managed-environment问题(二十九)

本篇目的:Ubuntu22.04之解决:externally-managed-environment问题。

2025-05-16 13:36:17 289

原创 Java进阶之增强循环foreach:用法实例(四十二)

本篇目的:Java进阶之增强循环foreach:用法实例基本概念增强循环(foreach循环)是Java 5引入的一种简化循环语法,用于遍历数组或集合中的元素。它提供了一种更简洁、更易读的方式来遍历集合或数组。功能自动遍历集合或数组中的每个元素,无需手动管理索引。适用于任何实现了Iterable接口的集合,如ArrayListLinkedList等,以及数组。使用限制仅用于遍历集合或数组,不能在遍历过程中修改集合或数组的大小。如果需要修改集合或数组,应使用普通for循环或迭代器。性能特性。

2025-05-16 07:30:00 860

原创 Java进阶之流程控制语句:if/switch/for/while/do-while用法实例(四十一)

本篇目的:Java进阶之流程控制语句:if/switch/for/while/do-while用法实例基本概念流程控制语句用于控制程序的执行流程,包括条件语句(if/switch)和循环语句(for/while/do-while)。通过这些语句,可以实现复杂的逻辑控制。功能if语句:根据条件选择执行不同的代码块。switch语句:根据变量的值选择执行不同的代码块。for循环:重复执行某段代码,直到满足特定条件。while循环:重复执行某段代码,直到满足特定条件。do-while循环。

2025-05-16 07:00:00 986

原创 Ubuntu22.04之获取最新Openharmony5.1.0 docker版本(二百八十)

本篇目的:Ubuntu22.04之获取Openharmony的docker最新版本1.docker oh standard是OpenHarmony官方提供的标准化容器镜像环境,旨在为开发者搭建统一、可复现、轻量化的编译和调试平台。该镜像基于主流操作系统(如Ubuntu 20.04),预装了OpenHarmony源码构建所需的工具链和依赖库,包括GCC、Clang、CMake、Ninja、Python、Java Development Kit等。

2025-05-15 11:48:50 468

原创 Java进阶之显式和隐式类型转换:用法实例(四十)

本篇目的:Java进阶之显式和隐式类型转换:用法实例基本概念隐式类型转换由Java编译器自动完成,适用于从低精度类型到高精度类型的转换。显式类型转换需由程序员手动完成,适用于从高精度类型到低精度类型的转换,以避免数据丢失。功能隐式类型转换简化代码编写,自动处理类型兼容性。显式类型转换允许程序员控制类型转换过程,处理数据范围缩小的场景。使用限制隐式类型转换仅在目标类型精度高于源类型时有效。显式类型转换可能导致数据截断或丢失,需谨慎使用。性能特性隐式类型转换无额外性能开销。

2025-05-15 07:30:00 585

原创 Java进阶之字符串拼接:用法实例(三十九)

本篇目的:Java进阶之字符串拼接:用法实例1基本概念字符串拼接是将多个字符串连接成一个新字符串的过程。Java中字符串是不可变的,因此每次拼接都会生成一个新的字符串对象。2功能使用+运算符可以方便地将字符串和变量拼接在一起。使用StringBuilder或StringBuffer可以提高字符串拼接的性能。3使用限制+运算符拼接字符串时会产生多个中间对象,可能导致性能问题。StringBuilder和StringBuffer适用于多次拼接操作的场景。4性能特性。

2025-05-15 07:00:00 457

原创 Java进阶之运算符优先级表:用法实例(三十八)

本篇目的:Java进阶之运算符优先级表:用法实例基本概念运算符优先级决定了表达式中运算符的计算顺序。优先级高的运算符先计算,优先级低的运算符后计算。功能运算符优先级确保表达式的结果符合预期。使用括号可以改变默认的计算顺序。使用限制同一优先级的运算符从左到右计算,除非有括号指定。混合使用不同优先级的运算符时,注意优先级顺序。性能特性优先级规则使表达式简洁,减少括号的使用。但滥用运算符优先级可能导致代码难以阅读。使用场景广泛应用于表达式计算,如算术运算、逻辑运算、条件判断等。

2025-05-14 07:30:00 558

原创 Java进阶之变量作用域:局部/实例/静态用法实例(三十七)

本篇目的:Java进阶之变量作用域:局部/实例/静态用法实例基本概念变量作用域决定了变量在程序中的可见性和生命周期。Java中的变量主要分为局部变量、实例变量和静态变量。功能局部变量:在方法或代码块中声明,仅在该方法或代码块中可见。实例变量:在类中声明,属于类的实例,每个对象都有自己的副本。静态变量:在类中声明并用static修饰,属于类本身,所有对象共享。使用限制局部变量:必须在声明后初始化才能使用,生命周期结束于方法或代码块。实例变量:随对象的创建而初始化,生命周期结束于对象的销毁。

2025-05-14 07:00:00 520

原创 Ubuntu22.04之轻松修改:开机锁屏密码(二百七十九)

本篇目的:Ubuntu22.04之轻松修改:开机锁屏密码1.Ubuntu是一种基于Linux的开源操作系统,广泛用于个人电脑、服务器以及开发环境中。为了保障用户数据的安全,Ubuntu系统默认启用了锁屏密码功能。锁屏密码可以防止他人在用户离开设备时未经授权访问系统,有效保护了个人隐私与重要文件。2.锁屏密码在Ubuntu中与用户登录密码相同。当用户锁定屏幕或系统进入待机、休眠状态后,重新激活屏幕后会出现登录界面,要求输入该密码才能重新进入桌面环境。

2025-05-13 14:21:51 471

原创 Java进阶之自动装箱与拆箱:用法实例(三十六)

本篇目的:Java进阶之自动装箱与拆箱:用法实例基本概念自动装箱(Autoboxing)是指Java自动将基本数据类型转换为对应的包装类类型。自动拆箱(Unboxing)是指Java自动将包装类类型转换为对应的基本数据类型。这一特性从Java 5开始引入,简化了基本数据类型和包装类之间的转换。功能自动装箱允许基本数据类型自动转换为对应的包装类,方便在需要对象的场景中使用。自动拆箱允许包装类自动转换为对应的基本数据类型,方便在需要基本数据类型值的场景中使用。使用限制。

2025-05-13 07:30:00 604

原创 Java进阶之8种基本数据类型:用法实例(三十五)

本篇目的:Java进阶之8种基本数据类型:用法实例基本概念Java提供了8种基本数据类型,这些类型是Java语言的基础,用于存储不同类型的值。基本数据类型包括整数类型、浮点类型、字符类型和布尔类型。功能每种基本数据类型都有固定的大小和范围,适用于不同的应用场景。基本数据类型提供了高效的内存使用和性能。使用限制基本数据类型不能为null,必须有具体的值。每种基本数据类型都有其对应的包装类,用于将基本数据类型转换为对象。性能特性基本数据类型存储在栈内存中,访问速度快。

2025-05-13 07:00:00 600

原创 Android15音频进阶之AudioSource FW转HIDL过程拆解(一百一十九)

本篇目的:Android15音频进阶之AudioSource FW转HIDL过程拆解。

2025-05-12 07:30:00 1775

原创 Java进阶之标识符命名规则:用法实例(三十四)

本篇目的:Java标识符命名规则:规范与实例基本概念标识符是用于命名类、方法、变量等的符号序列。标识符的命名规则是Java语言的重要组成部分,确保代码的可读性和一致性。功能区分大小写,允许使用字母、数字、下划线(_)和美元符号($)。不能以数字开头,不能使用Java保留字作为标识符。使用限制标识符不能包含空格或其他特殊字符。标识符的长度没有限制,但应保持简洁明了。性能特性遵循命名规则可以提高代码的可读性和可维护性。使用有意义的命名可以减少注释的需求,使代码更易于理解。使用场景。

2025-05-12 07:00:00 949

原创 C++进阶之并发编程利器std::atomic:用法实例(四百二十五)

本篇目的:C++进阶之并发编程利器std::atomic:用法实例基本概念std::atomic是C++11引入的用于实现原子操作的模板类,定义在头文件中。它可以确保对变量的操作是原子性的,即在多线程环境中,操作不会被其他线程中断。功能提供对各种数据类型的原子操作,包括读取、写入、比较交换等。支持多种内存顺序(memory order),允许开发者根据需要选择合适的内存顺序模型。使用限制std::atomic对象不能被复制,但可以被移动。某些操作(如比较交换)需要额外的参数来指定内存顺序。

2025-05-10 07:30:00 723

原创 C++进阶之并发任务管理std::async:用法实例(四百二十四)

本篇目的:C++进阶之并发任务管理std::async:用法实例基本概念std::async是C++11引入的用于启动异步任务的函数,定义在头文件中。它可以启动一个异步任务,并返回一个std::future对象,用于获取任务的结果。功能在创建时自动启动异步任务,任务完成后可通过std::future对象获取结果。支持异步任务的并发执行,避免阻塞主线程。使用限制std::async启动的任务默认是线程池中的线程执行,但具体行为取决于实现。

2025-05-10 07:00:00 986

原创 C++进阶之异步std::future:用法实例(四百二十三)

本篇目的:C++进阶之异步std::future:用法实例1.基本概念std::future是C++11引入的标准库组件,定义在头文件中,用于从异步任务中获取返回值或异常。它配合std::async、std::promise等使用,是C++中实现异步编程的关键工具。2.功能std::future提供了一种机制来获取异步操作的结果。通过调用get()函数,程序可以在异步任务完成后取得其返回值,并支持延迟等待、阻塞等机制。3.使用限制。

2025-05-09 07:30:00 704

原创 C++进阶之RAII锁管理std::lock_guard:用法实例(四百二十二)

本篇目的:C++进阶之RAII锁管理std::lock_guard:用法实例1.基本概念std::lock_guard是C++11引入的RAII机制锁管理器,定义在头文件中,用于在作用域中自动管理mutex的加锁和解锁,确保线程安全。2.功能std::lock_guard在创建时自动调用mutex的lock(),在其作用域结束时自动调用unlock(),可避免因异常或早退导致的忘记释放锁的问题。3.使用限制std::lock_guard是不可复制的对象,仅支持在局部作用域中构造;

2025-05-09 07:00:00 967

原创 C++进阶之互斥锁管理std::mutex:用法实例(四百二十一)

本篇目的:C++进阶之互斥锁管理std::mutex:用法实例1.基本概念std::mutex是C++11引入的标准同步原语,位于头文件中,用于多线程程序中的资源保护,防止多个线程同时访问共享数据。2.功能std::mutex用于线程之间互斥访问共享资源。通过lock()加锁和unlock()解锁来实现线程同步,避免数据竞争和未定义行为。3.使用限制std::mutex不能拷贝或赋值,必须显式加锁和解锁,若一个线程在未解锁的情况下尝试再次加锁同一个mutex,会导致死锁。4.性能特性。

2025-05-08 07:30:00 884

原创 C++进阶之多线程管理std::thread:用法实例(四百二十)

本篇目的:C++进阶之多线程管理std::thread:用法实例1.基本概念std::thread是C++11引入的标准线程类,位于头文件中,用于在程序中创建和管理线程。每一个std::thread对象代表一个可独立执行的线程。2.功能std::thread提供了创建新线程、线程联结(join)、分离(detach)、获取线程ID等功能,使得多任务并发处理变得简单而安全。3.使用限制。

2025-05-08 07:00:00 653

原创 C++进阶之输出流迭代器std::ostream_iterator:用法实例(四百一十九)

本篇目的:C++进阶之输出流迭代器std::ostream_iterator:用法实例1.基本概念std::ostream_iterator是C++标准库中提供的输出迭代器,它将输出流包装成类似容器迭代器的形式,使得STL算法能将结果直接输出到流中,例如std::cout或std::ofstream等。2.功能std::ostream_iterator允许将数据通过赋值语句写入输出流,配合STL算法使用可以直接将容器元素输出至标准输出或文件,简化代码结构。3.使用限制。

2025-05-07 07:30:00 541

原创 C++进阶之输入流迭代器std::istream_iterator:用法实例(四百一十八)

本篇目的:C++进阶之输入流迭代器std::istream_iterator:用法实例1.基本概念std::istream_iterator是C++标准库中提供的输入迭代器,允许从标准输入或其他输入流中逐个读取数据项,模拟迭代器行为。它将流与STL算法无缝对接,使得流处理像容器遍历一样方便。2.功能std::istream_iterator将输入流对象包装为一个迭代器,支持与STL算法一起使用,逐项读取输入数据。例如,可直接用std::copy将cin内容读取到容器中。3.使用限制。

2025-05-07 07:00:00 568

原创 Android15音频进阶之ag+rg高效定位关键字段(一百一十八)

本篇目的:Android15音频进阶之ag+rg高效定位关键字段ag和rg高效命令简单介绍:1.ag(ack-grep 的简称)和 rg(ripgrep 的简称)是两款命令行文本搜索工具2.ag 特点在于快速搜索代码,忽略不相关文件,能递归搜索目录,支持正则表达式,输出简单易读。3. rg 性能更优,搜索速度快,智能区分文件类型,自动忽略版本控制系统文件和二进制文件等,支持多线程并行搜索,适用于大型项目。

2025-05-06 09:03:19 1699

原创 C++进阶之类型退化std::decay:用法实例(四百一十七)

本篇目的:C++进阶之类型退化处理std::decay:用法实例1.基本概念std::decay是C++标准库<type_traits>中提供的类型转换工具,用于在模板中将传入的类型“退化”为最常见的形式。它模拟了函数参数传值时的类型转换行为。2.功能std::decay可以自动将数组类型转换为指针、函数类型转换为函数指针,并移除引用和cv限定符(const/volatile),返回“退化”后的类型。3.使用限制std::decay只能作用于类型,不适用于表达式。

2025-05-06 07:30:00 636

原创 C++进阶之类型转换判断std::is_convertible:用法实例(四百一十六)

本篇目的:C++进阶之类型转换判断std::is_convertible:用法实例基本概念std::is_convertible是C++标准库中提供的模板结构,用于判断一个类型是否可以转换为另一个类型。它常用于模板编程中进行类型检查,以确保在编译时类型转换的合法性。功能std::is_convertible用于判断一个类型是否可以安全地转换为另一个类型。如果可以转换,返回true,否则返回false。使用限制。

2025-05-06 07:00:00 854

原创 C++进阶之基类判断std::is_base_of:用法实例(四百一十五)

本篇目的:C++进阶之基类判断std::is_base_of:用法实例基本概念std::is_base_of是C++标准库中提供的模板结构,用于判断一个类型是否是另一个类型的基类。它常用于模板编程中判断继承关系,以便做出不同的处理。功能std::is_base_of用于判断某个类型是否是另一个类型的基类。它的作用是检查一个类是否是另一个类的直接或间接基类。如果是基类,返回true,否则返回false。使用限制。

2025-05-05 07:30:00 1099

原创 C++进阶之类型比较std::is_same:用法实例(四百一十四)

本篇目的:C++进阶之类型比较std::is_same:用法实例基本概念std::is_same 是 C++ 标准库中提供的模板结构,用于判断两个类型是否相同。它在模板编程中广泛应用,允许开发者在编译时对类型进行比较,做出相应的决策。功能std::is_same 的核心功能是判断两个类型是否完全相同。如果两个类型相同,std::is_same 会返回true,否则返回false。这个特性常用于模板特化、SFINAE 和类型选择等场景。使用限制。

2025-05-05 07:00:00 1010

原创 C++进阶之条件启用std::enable_if:用法实例(四百一十三)

本篇目的:C++进阶之加法操作std::plus:用法实例基本概念std::plus 是 C++ 标准库头文件中提供的一个函数对象,用于执行加法操作。它定义了一个加法运算符operator(),可以将两个值相加,并返回其和。该函数对象常用于算法中,如等。功能std::plus 接受两个参数,将其相加并返回结果。它不仅可以用于基本数据类型的加法,还可以扩展到自定义类型(如结构体)中,只要这些类型支持加法操作。使用限制std::plus 要求两个参数支持加法操作(即定义了运算符)。

2025-05-03 07:30:00 848

原创 C++进阶之条件判断std::any_of:用法实例(四百一十二)

本篇目的:C++进阶之条件判断std::any_of:用法实例基本概念std::any_of 是 C++ 标准库头文件中提供的一个算法,用于检查指定范围内是否有任何元素满足给定的条件。它会遍历区间内的每个元素,调用用户提供的判断函数,如果至少有一个元素满足条件,则返回true,否则返回false。功能该算法接受三个参数:起始迭代器、结束迭代器和一个判断谓词。算法会遍历区间内的每个元素,若遇到第一个满足条件的元素,立即返回true;如果整个区间内都没有元素满足条件,返回false。迭代器要求。

2025-05-03 07:00:00 718

原创 C++进阶之计数std::count:用法实例(四百一十一)

本篇目的:C++进阶之计数std::count:用法实例基本概念std::count 是 C++ 标准库头文件中提供的一个算法,用于统计指定范围内某个特定值出现的次数。它会遍历指定区间的每个元素,查找并计数等于给定值的元素数量。功能该算法接受三个参数:起始迭代器、结束迭代器以及要查找的值。算法会遍历区间内的每个元素,若某个元素等于给定值,则计数器加一。最终返回给定值在区间中出现的次数。迭代器要求std::count 支持输入迭代器,适用于容器如std::liststd::deque。

2025-05-02 07:30:00 957

原创 C++进阶之部分求和std::partial_sum:用法实例(四百一十)

本篇目的:C++进阶之部分求和std::partial_sum:用法实例基本概念std::partial_sum 是 C++<numeric>头文件中的数值算法,用于计算序列的部分和,即每个位置的值是从起始位置累加到当前位置的总和,结果保存在输出区间中。功能该算法接受三个主要参数:输入区间的起始与结束迭代器,以及输出区间的起始迭代器。也可以传入一个自定义二元操作函数,改变默认的加法逻辑,如做乘法累积等。迭代器要求。

2025-05-02 07:00:00 991

JM-H264参考手册

JM:JM通常被认为是H.264标准制定团队所认可的官方参考软件,基本实现了H.264标准的全部特征。JM在运行时的运算过程较为复杂,而且没有采用汇编优化等加速方法,因此运行速度较慢,很难达到实时编解码。通常主要用于编解码技术的科学研究领域。

2020-10-28

H.264标准协议(官方中文版)

H.264是一种视频压缩标准,其只规定了符合标准的码流的格式,以及码流中各个语法元素的解析方法。 H.264标准协议是每个从事多媒体工作的码农必备的参考书,欢迎下载。

2020-10-28

HxD_Hex编辑器中文版.zip

HxD is a carefully designed and fast hex editor which, additionally to raw disk editing and modifying of main memory (RAM), handles files of any size. The easy to use interface offers features such as searching and replacing, exporting, checksums/digests, insertion of byte patterns, a file shredder

2020-09-12

MultimediaFrameworkOverview.zip

音视频多媒体框架GStreamer、PulseAudio采用插件式架构,支持多格式编解码器,支持不同编码器、解析器、分离器和复用器作为插件式架构!

2020-09-01

Gstreamer-Openmax-gst-openmax.zip

OpenMAX is a royalty-free, cross-platform API that provides abstractions for routines especially useful for computer graphics, video, and audio.

2020-08-17

GStreamer中文开发手册.zip

GStreamer是一个通用的跨平台的流媒体应用程序框架,基于GObject,以C语言写成。 GStreamer并不受限于音频和视频处理,它能够处理任意类型的数据流,因此任意一种流媒体应用都可以支持,如:MeidaPlayer、A/V Editor、VOIP、RTSP、A/V Coder等等。 GStreamer框架是基于插件(plugin)和管道(pipeline)的体系结构,框架中所有功能模块都是可插拔的组件,可随意安装到任意管道上

2020-07-22

win10removeAll.zip

Win10彻底关闭windows defender,解决无故占用大量CPU和内存问题! 建议保留一个杀毒软件,不管是360、火绒还是什么,至少安装一个保证电脑的安全。

2020-06-25

vcxsrv-64.1.20.8.1.zip

VcXsrv是微软Windows的开源显示服务器。 它使Windows操作系统的用户能够运行为X Window System设计的GUI程序。 VcXsrv可以运行安装了WSL(Linux子系统Linux)的Linux GUI程序。 在bash for Windows中,设置DISPLAY环境变量允许WSL程序使用Windows GUI。

2020-06-20

debug_hybris_demo.zip

libhybris主要作用是为了解决libc库的兼容问题,目的是为了在基于GNU C library的系统运行那些用bionic编译的库(主要是Android下的闭源HAL库)。因为这些系统都是基于glibc生态的,然而现有的硬件厂商提供的driver多是为Android而写的,自然也是用bionic编译的。如何让基于glibc的系统能够重用现有Android的driver呢?这就需要像libhybris这样的兼容层。

2020-06-03

手写Fuchsia第一个app

在研究GN和Ninja时,发现Fuchsia也是用的GN和ninja来构建编译系统的,值得一提的是Android7.0以后放弃了Makefile,开始使用ninja来构建编译系统!

2020-03-16

Linux内核内存Cache机制原理

Linux内核内存Cache机制原理从源码的角度来分析流程,可以帮助Linux内核学习者了结Cache的内存机制!

2020-03-14

第五代加固技术ARM VMP原理实现与应用.zip

随着Android逆向开发的升级,Android应用的安全越来越被重视,第五代加固技术ARM VMP原理实现与应用正在探索中发展。

2020-03-01

AUDIO CODEC DAPM详解.zip

本文目的帮助理解音频系统ALSA中的dapm机制建立和触发过程,在这之中,涉及到音频路径的搭建和选择(相信这部分对于大家来说更有应用意义)。在dapm机制深入分析中,会展现alsa设计者的各种理念及实现技巧,很多细节上的考虑和处理值得我们去学习。

2019-12-30

蓝牙Audio调试.zip

蓝牙协议栈有很多种profile,像HFP、A2DP、HSP等等,他们通讯都是蓝牙模块和CPU或者DSP之间,通过AT指令来发送信息,这篇文档介绍各种profile及支持采样率和通道数据,还有调试方式!

2019-12-27

Universal Serial Bus Device Class Definition for Audio Devices.zip

Universal Serial Bus Device Class Definition for Audio Devices(UAC2.0协议文档),研究usb audio必读,欢迎下载!

2019-11-16

Pixel ROM(sailfish)

最近在玩Pixel,自己花了一周时间下载Android源码,编译出来Pixel root版的ROM,分享给爱玩机的朋友!

2019-10-20

最新windows和linux的adb工具

下载了一份最新windows和linux平台的adb工具,以此提供给更多开发者方便使用!

2019-07-30

基于域名路由策略.zip

目前使用主流的Linux配置都是基于ip设置路由策略,此篇讲解怎么基于域名路由策略,仅供参考!

2019-07-17

busybox.zip

Android debug的时候由于android原生的命令太少,编译了一个busybox分享出来,欢迎下载。

2019-06-25

Audition 2019版

Audition是做音频开发不可或缺的重要的开发工具,分享一个Win10 2019免注册版备用,也欢迎下载。

2019-06-13

Android64位gdbserver与Win10-32位gdb.exe与Ubuntu64位gdb可执行bin

一、在Win10平台和Ubuntu22.04远程在线调试Android系统 1.Android系统ARM64位gdbserver文件 2.Win10系统32位gdb.exe文件 3.Ubuntu系统64位gdb文件

2024-10-15

H266(VVC)视频编码协议标准pdf

H266(VVC)视频编码协议标准最新版 T-REC-H.266-202204-I!!PDF-E.pdf

2023-10-05

ISO 13818-7 AAC标准协议文档

ISO 13818-7 AAC标准是MPEG-2标准中定义的一部分,详细描述了AAC在MPEG-2传输流中的编码和解码方法。

2023-09-03

word2010中输入简谱

word2010中输入简谱

2023-04-25

Picture auto gen tools

Picture auto gen tools for wechat

2023-03-27

AIDL for HALs测试客户端

AIDL for HALs测试客户端

2023-01-10

彻底禁掉Win10 Defender自启动

彻底禁掉Win10 Defender自启动! 彻底禁掉Win10 Defender自启动! 彻底禁掉Win10 Defender自启动! 开机内存不会占用特别高! 开机内存不会占用特别高! 开机内存不会占用特别高!

2022-12-24

免费DLL修复工具For WIn10/Win11

免费DLL修复工具

2022-10-22

Typora free版本for Ubuntu22.04

Typora free版本for Ubuntu22.04

2022-10-22

gnome-boxes虚拟机跨平台工具

gnome-boxes虚拟机工具 1.Windows和Linux剪切版共享工具 2.Windows和Linux文件共享工具

2022-10-12

android10以上源码中编译java及UI代码

1.增加Android.mk编译方式 2.增加Android.bp编译方式

2022-07-18

企业微信for Linux

企业微信forLinux

2022-06-22

微信for Ubuntu18.04

微信for Ubuntu18.04

2022-06-22

qt_audio_record.tar.gz

花了一天时间研究,在x86与ARM平台验证可用,备忘!

2021-04-28

qt_audio_play.tar.gz

QT之QMediaPlayer播放音频demo

2021-04-28

deepin.com.wechat_2.6.8.65deepin0_i386-OK.zip

deepin for wechat

2021-03-22

capture_test.zip

在Android6.0平台上,UVC Camera使用标准V4L2接口获取视频数据,并保存文件,测试debug调试使用。

2021-03-09

java-7-openjdk-amd64.tar.gz

目前OpenJDK-7-JDK的源已经被废弃了,手动安装的花需要安装一系列的依赖,特别麻烦,这里提供给需要的开发人员.

2021-01-22

Elecard HEVC Analyzer_For_Windows.zip

分享一个Elecard h265分析工具,大家都知道Elecard很贵,不多说了,内附registor.

2021-01-06

push_stream_test.zip

此mp4文件为h264编码格式,用于推流使用.

2020-12-23

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除