首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >VLC:如何通过HTTP流式传输wave

VLC:如何通过HTTP流式传输wave
EN

Stack Overflow用户
提问于 2020-01-06 07:05:44
回答 2查看 947关注 0票数 0

我想通过VLC通过HTTP从我的rapsberry麦克风中流。

此命令运行良好:

代码语言:javascript
复制
vlc -vvv alsa://hw:1,0 --sout '#transcode{vcodec=none,acodec=mpga,ab=128,channels=2,samplerate=44100}:standard{access=http,mux=mp3,dst=192.168.178.30:8080}'

但是,当把代码改成s16l,把mux改成wav时,我在VLC中听不到任何声音。

这是我尝试过的命令:

代码语言:javascript
复制
vlc -vvv alsa://hw:1,0 --sout '#transcode{vcodec=none,acodec=s16l,channels=1,samplerate=16000,scodec=none}:standard{access=http,mux=wav,dst=192.168.178.30:8080}' 

但是使用RTP的相同编解码器可以工作:

代码语言:javascript
复制
vlc -vvv alsa://hw:1,0 --sout '#transcode{vcodec=none,acodec=s16l,channels=1,samplerate=16000,scodec=none}:rtp{dst=192.168.178.30,port=1234,sdp=rtsp://192.168.178.30:8080/test.sdp}'

一些日志:https://gist.github.com/timaschew/9e7e027cd1b371b01b0f186f23b47068

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-01-07 08:55:07

并非所有编解码器都可以多路复用,请检查VLC documentation

目前,PCM(wave)只能在RTP中进行多路复用。

mux是流式传输所需的封装方法。VLC中的wav是一个用于存储的容器。

票数 1
EN

Stack Overflow用户

发布于 2020-01-08 13:14:29

Wave是一种文件容器类型,它可以容纳不同类型的编解码器数据(压缩的/uncompressed)。

[Wiki]

WAV文件中的音频可以用各种音频编码格式进行编码,例如GSM或MP3,以减小文件大小。

这是比较可用于WAV文件的音频编码格式(包括PCM、ADPCM、Microsoft GSM 06.10、CELP、SBC、Truespeech和MPEG Layer-3 )的单声道(非立体声)音频质量和压缩比特率的参考。

For HTTP streaming using VLC

选择您需要像mp3编解码器那样流式传输的编解码器。

注意:多路复用在这里不适用

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59604973

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档