Hacker News 中文摘要

RSS订阅

VLC for Unity 现已支持 Linux -- VLC for Unity now supported on Linux

文章摘要

该页面是VideoLAN团队在GitLab上托管的vlc-unity项目主页,展示了项目ID、标签版本列表及代码仓库结构,用于在Unity引擎中集成VLC多媒体播放功能。

文章总结

好的,这是根据您的要求,对原文主要内容进行的中文重述,已保留关键细节并删减了与主题无关的导航、图标、标签等元素。


VLC for Unity 项目概述

该项目是一个原生 Unity 插件,旨在将 LibVLCSharp 与 LibVLC 连接起来,为 Unity3D 应用和游戏提供高性能的视频渲染能力。该插件可通过 Videolabs 商店获取。

核心功能 该插件基于 LibVLCSharp,因此继承了 VLC 强大的编解码器和功能支持,包括: - 播放几乎所有媒体文件格式、编解码器和流媒体协议。 - 支持 Windows、Linux、Mac、Android、iOS 等多个平台。 - 在各平台实现高效的硬件解码,最高支持 8K 分辨率。 - 支持网络文件系统(SMB、FTP、SFTP、NFS)和服务器(UPnP、DLNA)浏览。 - 支持带菜单导航的 Audio CD、DVD 和蓝光播放。 - 支持 HDR 及 SDR 色调映射。 - 支持 SPDIF 和 HDMI 音频直通,包括 DD+、TrueHD 或 DTS-HD 等高清音频编解码器。 - 支持视频和音频滤镜。 - 支持 360° 视频和 3D 音频(包括 Ambisonics)播放。 - 支持投屏和流媒体传输到 Chromecast、UPnP 等远程渲染器。

支持平台 - Windows Classic: 最低系统版本 Windows 7,支持 x64 架构,图形 API 为 Direct3D 11/12。 - Windows Modern (UWP): 最低系统版本 Windows 10,支持 x64 和 ARM64 架构,图形 API 为 Direct3D 11/12。 - Android: 最低系统版本 Android 5.0 (API 21),支持 armeabi-v7a、arm64-v8a、x86、x8664 架构,图形 API 为 OpenGL ES 2/3 和 Vulkan。 - iOS: 最低系统版本 iOS 9,支持 ARM64 架构,图形 API 为 Metal。 - macOS: 最低系统版本 macOS 10.11,支持 Intel x64 和 Apple Silicon ARM64 架构,图形 API 为 Metal。 - Linux: 最低系统版本 Ubuntu 22.04 LTS,支持 x8664 架构,图形 API 为 OpenGL。注意:插件自带 LibVLC 4,不依赖系统安装的 VLC。

安装与入门 - 推荐通过 Videolabs 商店购买安装,可获得商业支持。同时提供免费试用版。 - 插件包内包含 documentation.txt 文件,提供快速入门指南。由于该插件与 LibVLCSharp 共享大部分 API,因此 LibVLCSharp 的示例和文档同样适用。

文档与支持 - 详细文档可参考 LibVLCSharp 的文档库,其中包含最佳实践、问答指南和教程。 - 遇到问题可通过 GitLab 的 Issue 模板提交,社区提供免费支持。付费客户可获得专业支持。 - 团队也会定期关注 StackOverflow 上 libvlcsharpvlc-unity 标签下的问题。

示例场景 项目提供了多个 Unity 示例场景,包括:基础播放、360° 视频播放、字幕支持、功能更丰富的 VLCPlayerExample 以及一个带有电影屏幕和座椅的 3D 影院场景。

未来规划 - 平台支持: 计划增加对 tvOS 和浏览器的支持。 - 图形 API: 计划在 Android 以外的平台支持 Vulkan,并增加 WebGL 支持。 - 其他改进: 计划在 Unity 编辑器中提供 MediaPlayer 的定制功能。

日志系统 VLC Unity 的日志系统具有独立的来源和输出控制: - 可在 VLCMediaPlayerVLCPlaylistController 上启用“播放器活动日志”,以生成简洁的高级记录,这些记录默认会输出到 Unity 控制台。 - 可在播放器检视面板中配置全局日志,独立地包含详细的“LibVLC 引擎日志”或“VLC Unity 渲染日志”,并将所有启用的日志源路由到 Unity 控制台、文件或 Unity 事件。 - 可通过订阅 VLCUnityLogger.LogReceived 事件,在产生日志的线程上直接接收记录。

商业服务与许可 - 该插件采用 LGPL 2.1 和 Videolabs 的专有许可。 - 用户可免费从源代码构建,或付费(每年 700 美元)从 Videolabs 商店下载预构建的二进制文件。 - 对于 Unity 集成相关的 Bug,社区提供免费支持;对于 VLC 本身的 Bug 或功能请求,以及性能优化等,则属于付费服务范畴。Videolabs 作为独立公司,可提供定制开发、培训、咨询等商业服务。

评论总结

根据评论内容,主要观点和论据总结如下:

1. 技术更新与支持(评分:None) - 作者martz宣布为Unity的VLC插件新增Linux支持,实现全硬件解码,通过GLX/EGL的OpenGL渲染和DMA-BUF纹理共享高效传递视频帧。 - 目前仅支持x8664架构,未来计划添加ARM64和Vulkan支持。 - 关键引用:"Recently added support for Linux to VLC for Unity, with full hardware decoding." / "Only x8664 is supported at this time."

2. 使用场景与疑问(评分:None) - 用户fusslo询问在Unity中使用VLC的用途,猜测可能用于过场动画播放。 - 用户hparadiz指出VRChat用户会喜欢此功能,因为视频播放器嵌入Unity场景(地图),用于直播流媒体(如Twitch)。 - 关键引用:"Can a unity dev/game dev help elucidate why you'd use vlc in unity? For cutscene playback?" / "Videoplayers are embedded into Unity scenes... most commonly used for streaming live music from a stream like Twitch."

3. 替代方案与争议(评分:None) - 用户tmtvl提及Godot VLC作为替代,并暗示Unity的条款变更争议。 - 用户ekjhgkejhgk因cookie问题屏蔽页面,并表达对mpv的偏好。 - 关键引用:"Godot VLC... because let's not pretend we don't remember the Unity terms change controversy." / "Blocked because I don't use cookies. Ok, I've always preferred mpv anyway."

4. 开发体验与澄清(评分:None) - 用户Hendrikto澄清此Unity指游戏引擎而非桌面环境。 - 用户happyPersonR抱怨Unity的GitOps和多人在线协作开发体验曾是噩梦,询问是否改善。 - 关键引用:"To everybody else being confused: This is about Unity the game engine, not Unity the desktop environment." / "Video game programming with unity was an absolute nightmare... wonder if that changed?"

平衡性总结:评论呈现了技术更新(硬件解码支持)、应用场景(VRChat直播)、替代方案(Godot VLC)及开发体验(协作困难)等多角度观点,既有积极反馈也有批评和疑问。