强制 libvlc/libvlcsharp 为 chromecast 转码视频?
Posted
技术标签:
【中文标题】强制 libvlc/libvlcsharp 为 chromecast 转码视频?【英文标题】:Force libvlc/libvlcsharp to transcode video for chromecast? 【发布时间】:2020-12-27 23:11:57 【问题描述】:我目前正在使用 libvlcsharp 并尝试使用流式传输到 chromecast 的功能。它适用于“大多数”情况,特别是在它发送视频并且 chromecast 已经支持视频格式(例如 AVI)的情况下。如果我执行 x265 之类的更新操作,则会出现黑屏,因为 chromecast 不支持该格式。
在 VLC android 应用程序中,它足够聪明地告诉您它将对视频进行转码,因为它以 chromecast 不支持的格式检测到它(这是一个弹出的对话框,说电池可能是受到影响,因为它对其进行了转码)。在 libvlcsharp 中,我想总是转码。有没有办法从 libvlcsharp API 或我可以传递给 libvlc 的东西中做到这一点?
【问题讨论】:
您是否查看了 VLC for android 源代码以了解他们是如何做到的? 【参考方案1】:查看https://code.videolan.org/videolan/vlc-android/-/blob/master/application/resources/src/main/java/org/videolan/resources/VLCOptions.kt#L222中的选项
if (hasRenderer)
media.addOption(":sout-chromecast-audio-passthrough=" + prefs.getBoolean("casting_passthrough", true))
media.addOption(":sout-chromecast-conversion-quality=" + prefs.getString("casting_quality", "2")!!)
这可能应该默认添加到 libvlcsharp 中。随意贡献 PR。
【讨论】:
以上是关于强制 libvlc/libvlcsharp 为 chromecast 转码视频?的主要内容,如果未能解决你的问题,请参考以下文章