Tencent Music Tech Team
Author

Tencent Music Tech Team

Public account of Tencent Music's development team, focusing on technology sharing and communication.

141
Articles
0
Likes
368
Views
0
Comments
Recent Articles

Latest from Tencent Music Tech Team

100 recent articles max
Tencent Music Tech Team
Tencent Music Tech Team
Feb 4, 2024 · Mobile Development

Technical Guidelines for High-Quality Mobile Recording and Audio Processing in Quanmin K Song

Quanmin K Song’s decade‑long mobile‑recording platform combines 48 kHz/16‑bit dry‑signal capture, sub‑70 ms latency via OpenSL ES/AAudio, real‑time clipping and noise detection, lyric‑ and vocal‑accompaniment alignment, pitch‑shifting, adaptive vocal enhancement, 3A DSP/AI processing, and AI‑driven pitch correction to deliver industry‑leading high‑quality mobile singing experiences.

AIMusic Appaudio processing
0 likes · 15 min read
Technical Guidelines for High-Quality Mobile Recording and Audio Processing in Quanmin K Song
Tencent Music Tech Team
Tencent Music Tech Team
Jan 3, 2024 · Frontend Development

Automated Upgrade of Taro Mini‑Program from 1.x to 3.x Using AST

The article describes an AST‑driven command‑line tool that automatically upgrades a Taro 1.x mini‑program to 3.x by updating dependencies, converting imports, restructuring files, consolidating styles, replacing deprecated APIs, and adjusting build settings, offering faster, more reliable migration than the labor‑intensive manual approach.

ASTTaroautomation
0 likes · 9 min read
Automated Upgrade of Taro Mini‑Program from 1.x to 3.x Using AST
Tencent Music Tech Team
Tencent Music Tech Team
Dec 22, 2023 · Mobile Development

Root Cause Analysis of iOS Crash Caused by Method Swizzle on NSString

The app crashed on launch because a third‑party SDK swizzled NSString’s stringByAppendingString: with a method whose name conflicted with the app’s own swizzle, causing recursive calls through the __NSCFString class‑cluster and a stack overflow; renaming the methods with a unique prefix and excluding __NSCFString from swizzling resolves the issue.

Class ClusterMethod SwizzleObjective‑C
0 likes · 11 min read
Root Cause Analysis of iOS Crash Caused by Method Swizzle on NSString
Tencent Music Tech Team
Tencent Music Tech Team
Dec 19, 2023 · Mobile Development

Understanding and Optimizing Android Jank (Lag) in Mobile Applications

The article explains Android jank, defines Google and PerfDog metrics, identifies direct and indirect causes, recommends profiling tools such as Systrace, Perfetto and APM, and details a Wesing case study where breaking tasks, lazy loading, view‑hierarchy reduction and thread off‑loading cut PerfDog jank by roughly half, concluding with a checklist for systematic detection and mitigation.

AndroidJankMemory
0 likes · 13 min read
Understanding and Optimizing Android Jank (Lag) in Mobile Applications
Tencent Music Tech Team
Tencent Music Tech Team
Dec 14, 2023 · Mobile Development

iOS 17 Widget Extension Development Practices and Solutions

The Kuwo Music team shares practical iOS 17 widget‑extension lessons, detailing container‑background adaptation, borderless button styling, AppIntent communication and hidden shortcuts, Link‑based navigation, lyric animation, refresh‑rate throttling, and splitting WidgetBundles to bypass the ten‑widget limit, all with ready‑to‑copy SwiftUI code.

AppIntentExtensionSwiftUI
0 likes · 27 min read
iOS 17 Widget Extension Development Practices and Solutions
Tencent Music Tech Team
Tencent Music Tech Team
Oct 31, 2023 · Cloud Native

Advanced Istio Best Practices – Locality Routing and Service Mesh Optimization

The article by delphisfang offers a concise, step‑by‑step guide to mastering Istio’s locality‑aware routing, explaining the three‑evidence learning method, the priority algorithm, required DestinationRule and outlier detection settings, how Envoy discovers locality, and tips for simplifying the Pilot‑Envoy mesh architecture.

EnvoyIstioKubernetes
0 likes · 17 min read
Advanced Istio Best Practices – Locality Routing and Service Mesh Optimization
Tencent Music Tech Team
Tencent Music Tech Team
Oct 20, 2023 · Mobile Development

Root Cause Analysis of OOM Crash in iOS Karaoke App Caused by Swizzled NSMutableArray Protection

An OOM crash in the K‑song iOS karaoke app was traced to a configuration that swizzled several NSMutableArray methods, causing each observer lookup to autorelease objects, rapidly filling autorelease‑pool pages and exhausting memory; converting the protection code to manual reference counting eliminated the leak and stopped the crashes.

AutoreleasePoolMemory LeakOOM
0 likes · 21 min read
Root Cause Analysis of OOM Crash in iOS Karaoke App Caused by Swizzled NSMutableArray Protection
Tencent Music Tech Team
Tencent Music Tech Team
Oct 18, 2023 · Mobile Development

Adaptive Stream Switching and Multi‑Track Selection in ExoPlayer

ExoPlayer enables both MergingMediaSource‑based multi‑track merging and adaptive streaming (DASH, HLS, smoothing‑stream), letting developers choose between low‑cost CDN merging or bandwidth‑driven track switching, with detailed components, manifest parsing, bandwidth‑meter customization, and decoder reuse to ensure smooth bitrate changes.

AndroidBandwidth MeterExoPlayer
0 likes · 30 min read
Adaptive Stream Switching and Multi‑Track Selection in ExoPlayer
Tencent Music Tech Team
Tencent Music Tech Team
Sep 18, 2023 · Mobile Development

Implementing Multi‑Stream Switching in ExoPlayer

The article explains how ExoPlayer can achieve low‑cost multi‑stream switching by merging multiple media sources and dynamically selecting tracks with DefaultTrackSelector, using decoder restarts to switch video and audio qualities, and compares this approach to adaptive DASH/HLS methods for practical Android development.

AndroidExoPlayerMulti‑Stream
0 likes · 15 min read
Implementing Multi‑Stream Switching in ExoPlayer
Tencent Music Tech Team
Tencent Music Tech Team
Sep 15, 2023 · Mobile Development

Parsing and Using NinePatch PNG Images for Resizable UI Elements

The article explains how to create, parse, and use NinePatch (.9.png) images by extracting the custom “npTc” chunk from a PNG file, building a PNGNinePatch object in Objective‑C, and converting its stretchable region data into UIEdgeInsets for resizable iOS UI elements.

AndroidCapInsetsNinePatch
0 likes · 13 min read
Parsing and Using NinePatch PNG Images for Resizable UI Elements