Ang-YC / Wx Voice
Licence: mit
Convert audio files between Tencent apps (Weixin / Wechat, QQ) and Silk codec with other general formats such as MP3 and M4A
Stars: ✭ 93
Programming Languages
c
50402 projects - #5 most used programming language
Projects that are alternatives of or similar to Wx Voice
Silk V3 Decoder
kn007's blog
Stars: ✭ 1,832 (+1869.89%)
Mutual labels: decoder, encoder, convert, wechat
BatchEncoder
BatchEncoder is an audio files conversion software.
Stars: ✭ 145 (+55.91%)
Mutual labels: converter, encoder, decoder
Jave2
The JAVE (Java Audio Video Encoder) library is Java wrapper on the ffmpeg project
Stars: ✭ 570 (+512.9%)
Mutual labels: converter, decoder, encoder
Wxpay Sdk
Server-side SDK of Weixin/WeChat, the Java binding.
Stars: ✭ 63 (-32.26%)
Mutual labels: wechat, weixin
Lxspider
爬虫案例合集。包括但不限于《淘宝、京东、天猫、豆瓣、抖音、快手、微博、微信、阿里、头条、pdd、优酷、爱奇艺、携程、12306、58、搜狐、百度指数、维普万方、Zlibraty、Oalib、小说、招标网、采购网、小红书》
Stars: ✭ 60 (-35.48%)
Mutual labels: wechat, weixin
Offiaccount
[微信公众号] A fast wechat offiaccount development sdk written in Golang
Stars: ✭ 68 (-26.88%)
Mutual labels: wechat, weixin
Weixin Java Mp Demo
基于Spring Boot 和 WxJava 实现的微信公众号Java后端Demo,支持多公众号
Stars: ✭ 1,291 (+1288.17%)
Mutual labels: wechat, weixin
Iced
Blazing fast and correct x86/x64 disassembler, assembler, decoder, encoder for .NET, Rust, Python, JavaScript
Stars: ✭ 1,102 (+1084.95%)
Mutual labels: decoder, encoder
Polar 3gpp Matlab
Matlab simulations of the encoder and SCL decoder for the New Radio polar code from 3GPP Release 15
Stars: ✭ 67 (-27.96%)
Mutual labels: decoder, encoder
Reed Solomon
Reed Solomon BCH encoder and decoder
Stars: ✭ 57 (-38.71%)
Mutual labels: decoder, encoder
Mojo Weixin
使用Perl语言(不会没关系)编写的个人账号微信/weixin/wechat客户端框架(非GUI),可通过插件提供基于HTTP协议的api接口供其他语言或系统调用
Stars: ✭ 1,181 (+1169.89%)
Mutual labels: wechat, weixin
Youtube Channel Name Converter
A Youtube Channel Name to ID Converter
Stars: ✭ 75 (-19.35%)
Mutual labels: converter, convert
Dragtodismiss Pangesture
仿微信,微博的大图查看和视频播放 拖拽消失的手势动画。手势单独已抽离出来,可用于任何视图。Simulate Wechat's disappeared gesture animation by dragging when the big picture viewing or video playback . Gestures are separated and can be used in any view
Stars: ✭ 55 (-40.86%)
Mutual labels: wechat, weixin
wx-voice
Convert audio files between Tencent apps (Weixin / Wechat, QQ) and Silk codec with other general formats such as MP3 and M4A
中文版
Install
$ npm install wx-voice --save
$ npm install wx-voice -g
$ wx-voice compile
Prerequisites
- Ffmpeg: Installing ffmpeg
- Build tools: Installing build tools
CLI Usage
wx-voice <command> <options>
Example:
$ wx-voice decode -i input.silk -o output.mp3 -f mp3
$ wx-voice encode -i input.mp3 -o output.silk -f silk
CLI
Command:
decode decode to general audio format
encode encode from general audio format
compile compile wx-voice library
clean remove compiled library
Options:
-i <input> input file path
-o <output> output file path
-f <format> format of the output file
--bitrate bitrate of the output file
--frequency frequency of the output file
--channels channels of the output file
API Usage
// Initialize
const WxVoice = require('wx-voice');
var voice = new WxVoice();
// Error handler
voice.on("error", (err) => console.log(err));
// Decode silk to MP3
voice.decode(
"input.silk", "output.mp3", { format: "mp3" },
(file) => console.log(file));
// Output: "/path/to/output.mp3"
API
new WxVoice([tempFolder, [ffmpegPath]])
Initialize wxVoice object
Parameter | Description |
---|---|
tempFolder | Folder of temporary files, default to system temporary |
ffmpegPath | Custom path to ffmpeg executables, default using $PATH
|
decode(input, output, [options, [callback]])
Decode the audio to general formats
encode(input, output, [options, [callback]])
Encode the audio to silk/webm format
Parameter | Description |
---|---|
input | Input audio path |
output | Output audio path |
options | Output options (JS Object), see Options |
callback | Callback with output as parameter when decode success, undefined otherwise |
voice.encode(
"input.mp3", "output.silk", { format: "silk" },
(file) => console.log(file));
// Output: "/path/to/output.silk"
duration(filePath, [callback])
Get the duration of the audio file
(Decode to general audio format before calling this method)
Parameter | Description |
---|---|
filePath | File path to the audio |
callback | Callback with duration of the audio in second as parameter when decode success, 0 otherwise |
voice.encode("output.mp3", (dur) => console.log(dur));
// Output: "10.290"
Options
Javascript Object to set options for the output file
Parameter | Description |
---|---|
format | Format to be encoded/decoded (silk, webm, mp3, m4a...), default parse from output |
bitrate | Bitrate of the output, bps unit |
frequency | Frequency of the output, Hz unit |
channels | Channels of the output, default to 1 |
File types
Decode: Tested on mp3
, m4a
, wav
, pcm
Encode: Tested on silk
, silk_amr
, webm
Todo
- Use options as parameter instead of multiple arguments
- Timeout to stop the convert process if it takes too long
- Batch conversion using command line
- Support Windows
Installing build tools
OS | Command |
---|---|
Ubuntu | sudo apt-get install build-essential |
CentOS | sudo yum groupinstall 'Development Tools' |
Mac | Download XCode |
Installing ffmpeg
Ubuntu
$ sudo add-apt-repository ppa:mc3man/trusty-media
$ sudo apt-get update
$ sudo apt-get install ffmpeg
CentOS
$ sudo yum install epel-release
$ sudo yum update
$ sudo rpm --import http://li.nux.ro/download/nux/RPM-GPG-KEY-nux.ro
For CentOS 7:
$ sudo rpm -Uvh http://li.nux.ro/download/nux/dextop/el7/x86_64/nux-dextop-release-0-5.el7.nux.noarch.rpm
For CentOS 6:
$ sudo rpm -Uvh http://li.nux.ro/download/nux/dextop/el6/x86_64/nux-dextop-release-0-2.el6.nux.noarch.rpm
Install FFMPEG:
$ sudo yum install ffmpeg
Mac
$ brew install ffmpeg
License
MIT © Ang YC
Note that the project description data, including the texts, logos, images, and/or trademarks,
for each open source project belongs to its rightful owner.
If you wish to add or remove any projects, please contact us at [email protected].