【发布时间】:2019-11-09 21:09:15
【问题描述】:
我正在我的 Android 应用程序中通过 GoPro 直播。我使用 ffmpeg 从 GoPro 接收流数据,并使用 vlc 在表面视图中播放它。我使用了 KonradIT here 提供的代码。用于 ffmpeg 的主要命令是:
-fflags nobuffer -f mpegts -i udp://:8554 -f mpegts udp://127.0.0.1:8555/gopro?pkt_size=64
vlclib 的选项有:
options.add("--aout=opensles");
options.add("--audio-time-stretch");
options.add("-vvv");
输出更糟。它很慢,速度约为 17 FPS。一件烦人的事情是流媒体图片非常小,据我尝试,没有办法让它更大和拉伸。 我想知道是否有任何命令可以加快流式传输(无论如何,即使降低质量)?在ffmpeg或vlc的一边。
【问题讨论】:
-
你是在用ffmpeg做数据包的中继还是对mpegts数据包进行转码或者对mpegts数据包进行转换(改变数据包大小)。
-
据我所知,我们接收 mpeg 并发送 mpeg,它的作用类似于玩家用来理解流的虚拟端口或门。所以,我认为它似乎做了数据包的中继。我不确定(因为 GoPro 没有官方解释,这些都是非官方的)
标签: android ffmpeg vlc live-streaming libvlc