当前位置: 首页 > 知识库问答 >
问题:

Gstreamer:从视频中提取音频(flv),重新采样率并通过管道传输到流媒体接收器-无法重新采样到流媒体

欧阳俊捷
2023-03-14

我正在使用gstreamer从视频中提取音频,并将音频重新采样到不同的采样率。我的管道用于文件到文件的对话,但我无法正确设置流媒体案例以将其链接到jack接口

文件到文件(效果良好):

gst-launch-0.10文件rc位置=/数据/意见。flv!flvdemux!音频/mpeg!decodebin!音频转换!音频/x-raw-int,通道=1!音频重采样!音频/x-raw-int,速率=16000,深度=16!wavenc!文件链接位置=/记录输出2。wav公司

要流式传输的文件(不起作用):

gst-launch-0.10文件rc位置=/数据/意见。flv!flvdemux!音频/mpeg!decodebin!音频转换!音频/x-raw-int,通道=1!音频重采样!音频/x-raw-int,速率=16000,深度=16!杰克音频接收器

警告:错误管道:无法将audioresample0链接到jackaudiosink0

以下管道运行,但输出采样率错误:

gst-launch-0.10文件rc位置=/数据/意见。flv!flvdemux!音频/mpeg!decodebin!音频转换!音频重采样!杰克音频接收器

你觉得我做错了什么吗?

是否可以对音频进行重新采样并通过管道传输到流输出?

我已经四处搜索,没有找到任何相关的解决方案。如果您有任何见解/建议,我们将不胜感激!

共有2个答案

申黎明
2023-03-14

按照ensonic的建议,尝试将管道更改为:

gst-launch-0.10文件rc位置=/数据/意见。flv!flvdemux!音频/mpeg!decodebin!音频转换!音频/x-raw-float,通道=1!音频重采样!音频/x-raw-float,速率=16000,深度=16!杰克音频接收器

虽然你可能会删除flvdemux!音频/mpeg部分,因为解码器也会为你插入一个解混器。

方子安
2023-03-14

Jackaudiosink只接受Audio/x-raw-Flol。您可以从

gst-inspect-0.10 jackaudiosink
 类似资料:
  • 我目前正在使用Web音频API。我设法“读懂”了一个麦克风,并将它播放给我的扬声器,这非常无缝。 使用Web Audio API,我现在想重新取样传入的音频流(又名麦克风)从44.1kHz到16kHz。16kHz,因为我正在使用一些需要16kHz的工具。由于44.1kHz除以16kHz不是整数,我相信我不能简单地使用低通滤波器和“跳过样本”,对吗? 我还看到一些人建议使用,但由于它已被弃用,我觉得

  • 我正在用ffmpeg从flac文件制作mp3。这对我来说通常是哼哼。 今晚,由于某种原因,当我使用我一直使用的相同命令时,转换后的音频会失真。_故障排除后,出现“采样率”标志。 我的命令: MP3中的音频然后被一个顶起的增益所扭曲,导致数字剪辑。 我尝试更新ffmpeg,然后问题仍然存在。我尝试过转换各种采样率(44.1k源文件,48k源文件,96k源文件)44.1k和48kmp3,问题仍然存在,

  • 我正在使用Android Media Player从我的服务器播放音乐。可以使用MediaPlayer将播放音频保存到存储吗?

  • 我正在开发一个网络应用程序,从网络摄像头捕捉视频,并将流保存到Amazon Kinesis。我提出的第一个方法是getUserMedia/mediaRecorder/XMLHttpRequest,它将分块的MKV发布到我的unix服务器(而不是AWS),在那里简单的PHP后端代理通过PutMedia传输到Kinesis。 这应该工作,但所有媒体流从用户将通过我的服务器,这可能成为一个瓶颈。据我所知

  • 我正在使用Twilio视频API,只想要音频通话。我通过了下面的约束,但是,网络摄像头仍然出现在被邀请的人身上。似乎约束只对创建对话的人有效。 是否可以强制对话下的所有客户端默认禁用视频? 另外,当只有音频被激活时,浏览器是否可能只要求麦克风来获得权限?它问麦克风和摄像头是否只是一个音频通话,这很奇怪。 来源:https://media.twiliocdn.com/sdk/js/conversat

  • 多媒体 HTML5 前的多媒体需要借助第三方插件,例如 Flash,但是 HTML5 将网页中的多媒体带入了新的一章。 基本用法 // 音频 // 指定资源类型可以帮助浏览器更快的定位解码 <audio autobuffer autoloop loop controls> <source src="/media/audio.mp3" type="audio/mpeg"> <source s