electron - WebChimera和wcjs没有在Ubuntu 16.04上预构建的视频输出

标签 electron vlc libvlc

WebChimera不受Linux的正式支持,但是我已在Ubuntu 16.04上使用它,将VLC升级到2.2.4,并在WebChimera.js v0.2.7 Releases(WebChimera.js_electron_1.4.13_x64_linux.zip)中使用了预构建的软件包。

我已经在Ubuntu 16.04和VLC 2.2.2(16.04上的VLC的官方版本)上自己构建了WebChimera。对于某些视频,一切正常,但是对于某些视频,播放时我只能听到音频,并且出现黑屏(无视频输出,但音频还可以)。我不想将我的VLC升级到2.2.4。我该如何解决这个问题?

在 Electron 版v1.6.8上,控制台写入以下错误:

[h264 @ 0x2e3c62ba0880] No start code is found.
[h264 @ 0x2e3c62ba0880] Error splitting the input into NAL units.

在较旧的 Electron 版本(例如v1.4.0或v1.1.0)上,会记录以下错误:
[h264 @ 0x1262f42c8480] no frame!

或者
[h264 @ 0x3f08b31d5000] The maximum value for lowres supported by the decoder is 0

vlc的示例输出是:
majid@majid-K55VD:~$ vlc --version  
VLC media player 2.2.2 Weatherwax (revision 2.2.2-0-g6259d80)
VLC version 2.2.2 Weatherwax (2.2.2-0-g6259d80)
Compiled by buildd on lgw01-18.buildd (Mar 28 2017 11:23:57)
Compiler: gcc version 5.4.0 20160609 (Ubuntu 5.4.0-6ubuntu1~16.04.4)
This program comes with NO WARRANTY, to the extent permitted by law.
You may redistribute it under the terms of the GNU General Public     License;
see the file named COPYING for details.
Written by the VideoLAN team; see the AUTHORS file.

ffmpeg的示例输出为:
majid@majid-K55VD:~$ ffmpeg -version
ffmpeg version 2.8.11-0ubuntu0.16.04.1 Copyright (c) 2000-2017 the FFmpeg developers
built with gcc 5.4.0 (Ubuntu 5.4.0-6ubuntu1~16.04.4) 20160609
configuration: --prefix=/usr --extra-version=0ubuntu0.16.04.1 --build-    suffix=-ffmpeg --toolchain=hardened --libdir=/usr/lib/x86_64-linux-gnu --incdir=/usr/include/x86_64-linux-gnu --cc=cc --cxx=g++ --enable-gpl --enable-shared --disable-stripping --disable-decoder=libopenjpeg --disable-decoder=libschroedinger --enable-avresample --enable-avisynth --enable-gnutls --enable-ladspa --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libmodplug --enable-libmp3lame --enable-libopenjpeg --enable-libopus --enable-libpulse --enable-librtmp --enable-libschroedinger --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libssh --enable-libtheora --enable-libtwolame --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx265 --enable-libxvid --enable-libzvbi --enable-openal --enable-opengl --enable-x11grab --enable-libdc1394 --enable-libiec61883 --enable-libzmq --enable-frei0r --enable-libx264 --enable-libopencv
libavutil      54. 31.100 / 54. 31.100
libavcodec     56. 60.100 / 56. 60.100
libavformat    56. 40.101 / 56. 40.101
libavdevice    56.  4.100 / 56.  4.100
libavfilter     5. 40.101 /  5. 40.101
libavresample   2.  1.  0 /  2.  1.  0
libswscale      3.  1.101 /  3.  1.101
libswresample   1.  2.101 /  1.  2.101
libpostproc    53.  3.100 / 53.  3.100

最佳答案

将VLC更新到2.2.4及更高版本解决了我的问题。

关于electron - WebChimera和wcjs没有在Ubuntu 16.04上预构建的视频输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44078591/

相关文章:

node.js - Electron 中的增删改查

macos - Electron/类星体-在签名和沙箱之后如何运行Mac应用程序?

audio - 使用 FFMPEG 填补原始音频 UDP 流的空白

python - 将类似文件的对象传递给 ctypes 回调

java - 如何使用 JVLC(VLC 的 Java 绑定(bind))?

macos - Electron 生成器代码签名 : bundle format unrecognized, 无效或不合适

module - Electron 原子 - 编译后找不到模块 "Node-Windows"

iOS MobileVLCKit 存档问题

windows - 将 rtsp-stream 转换为 http 流

c# - 使用 libvlc 创建音频可视化工具