您现在的位置是:网站首页> 开发积累
开源软件收集
- 开发积累
- 2024-08-19
- 427人已阅读
开源软件收集
livego视频服务
使用
1.启动服务:执行 livego 二进制文件启动 livego 服务;
2.访问 http://localhost:8090/control/get?room=movie 获取一个房间的 channelkey(channelkey用于推流,movie用于播放).
3.推流: 通过RTMP协议推送视频流到地址 rtmp://localhost:1935/{appname}/{channelkey} (appname默认是live), 例如: 使用 ffmpeg -re -i demo.flv -c copy -f flv rtmp://localhost:1935/{appname}/{channelkey} 推流(下载demo flv);
4.播放: 支持多种播放协议,播放地址如下:
RTMP:rtmp://localhost:1935/{appname}/movie
FLV:http://127.0.0.1:7001/{appname}/movie.flv
HLS:http://127.0.0.1:7002/{appname}/movie.m3u8
使用soundtouch为音频加点料
为音频加点料就是实现音频的特效,可以实现音频的倍数播放,以及音乐的升降调、响度增加等功能。很多音频的倍数播放功能,如喜马拉雅,就是通过这项技术实现的。
SoundTouch简介
SoundTouch是一个用C++编写的开源的音频处理库,可以改变音频文件或实时音频流的节拍(Tempo)、音调(Pitch)、回放率(Playback Rates),还支持估算音轨的稳定节拍率(BPM rate)。ST的3个效果互相独立,也可以一起使用。这些效果通过采样率转换、时间拉伸结合实现。
Tempo节拍:通过拉伸时间,改变声音的播放速率而不影响音调
Playback Rate回放率: 以不同的转率播放唱片(不是很懂),通过采样率转换实现
Pitch音调 :在保持节拍不变的前提下改变声音的音调,结合采样率转换+时间拉伸实现。如:增高音调的处理过程是:将原音频拉伸时长,再通过采样率转换,同时减少时长与增高音调变为原时长
注意:SoundTouch只能处理wav格式的文件,其它格式的文件需要结合lame(一个mp3和wav相互转换的工具)进行处理。
SoundTouch下载和安装使用
在官网的http://soundtouch.surina.net/download.html有windows、linux、mac os的下载链接,windows和mac os有现成的编译好的执行文件,直接下载zip格式文件解压使用就可以。
windows环境下载安装使用:
下载 SoundStretch 2.1.1 for Windows ,下载后是一个zip文件,然后解压该文件得到一个soundstretch.exe,把这个exe文件的路径加入path环境变量即可以使用。例如实现把 input.wav 音频文件的声调增加3个半音(semi-tones):
#Pitch raised by +3 semi-tones.command syntax:
soundstretch input.wav output.wav -pitch=+3
我要用 SoundTouch下载 SoundStretch 干嘛用?答:SoundTouch是音频处理库,而SoundStretch 是命令行工具,反正用 SoundStretch 就对了
SoundStretch命令的使用
#Tempo reduced by -50%.
soundstretch input.wav output.wav -tempo=-50
#Beats-Per-Second rate adjusted to 60 BPM (original is 73.9 BPM). Note: This is equivalent to decreasing tempo by -18.8 %.
soundstretch input.wav output.wav -bpm=60
#Beats-Per-Second rate adjusted to 100 BPM (original is 73.9 BPM). Note This is equivalent to increasing tempo by +35.3%
soundstretch input.wav output.wav -bpm=100
#Pitch lowered by -3 semi-tones.
soundstretch input.wav output.wav -pitch=-3
#Pitch raised by +3 semi-tones
soundstretch input.wav output.wav -pitch=+3
#Playback rate increased by +35%. Note: This would be equivalent to playing a 331/3RPM vinyl LP audio disc at 45 RPM...
soundstretch input.wav output.wav -rate=+35
结合lame处理MP3
lame是一个mp3和wav相互转换的工具,windows和linux下都可以使用。SoundTouch只能处理wav格式的文件,需要使用lame进行 .mp3 => .wav 和 .wav => .mp3 转换。当然你也可以使用大名鼎鼎的ffmpeg,但是没有lame简单。
rustdesk多端远程协助开源软件
使用后发现重启电脑后,电脑客户端的ID/中继服务器配置会消失。需手动重新填写一遍,比较麻烦。
可按如下步骤操作:
RustDesk windows客户端支持:把rustdesk.exe 修改为 rustdesk-host=<host-ip-or-name>,key=<public-key-string>.exe,
例如:rustdesk-host=192.168.10.14,key=XXX.exe
这样就不用填写ID/中继服务器配置了,这样比较方便。
执行服务的皮处理如:
path C:\Program Files\RustDeskServer\bin
hbbs.exe
hbbr.exe
即时通讯开源
上一篇:收集实用开发接口
下一篇:日常开发技术收集积累