msg7086 / x265-yuuki-asuna Goto Github PK
View Code? Open in Web Editor NEWA fork of x265. A modded version.
License: GNU General Public License v2.0
A fork of x265. A modded version.
License: GNU General Public License v2.0
I would like to request VapourSynth support, I mean direct support like the avs support and not via lavf in order to achieve the smallest possible binary size.
Sample code:
https://github.com/rigaya/NVEnc/blob/master/NVEncCore/rgy_input_vpy.cpp
https://github.com/FFmpeg/FFmpeg/blob/master/libavformat/vapoursynth.c
如题,使用VapourSynth压制的时候,能够传递帧数,进而显示进度。
但是个人比较喜欢使用AVS同时处理视频和音频(而不喜欢使用ffmpeg),而VapourSynth不支持音频的处理。
希望能考虑也给AviSynth增加一个传递帧数显示进度的功能。
VSPipe Y4M输入助手: 现在支持从VSPipe输出的Y4M流中分离出总帧数。
Quick question, is it possible to have the rest of the source copied over (like ffmpeg -c:a copy for example) or is there a proper way to use Yuuki with ffmpeg?
Hi @msg7086
When using --seek nnn with an avs or vpy direct input source, the x265 encoder will actually seem to begin encoding at the frame nnn, and will encode the proper number of frames specified with --frames, but the resulting video will actually start at frame 0 of the source, and not frame nnn.
Example (with AVS, and with VPY it's the same result).
Command line:
x265.exe --crf 24 --output-depth 10 --seek 200 --frames 980 --output Chunk2_out.hevc "Timecode sample - 25fps.avs"
Output Info of the encoding process:
avs+ [info]: AviSynth+ 3.6.2 (r3341, master, x86_64)
avs+ [info]: Video colorspace: YUV420 (YV12)
avs+ [info]: Video depth: 8
avs+ [info]: Video resolution: 856x480
avs+ [info]: Video framerate: 25/1
avs+ [info]: Video framecount: 1960
avs+ [info]: 856x480 fps 25/1 i420p8 frames 200 - 1179 of 1960
raw [info]: output file: C:\Temp\_StaxRip\Timecode sample - 25fps_temp\Chunk2_out.hevc
x265 [info]: HEVC encoder version x265M 3.4+28-419182243
x265 [info]: build info [Windows][GCC 10.2.0][64 bit] 10bit
x265 [info]: using cpu capabilities: MMX2 SSE2Fast LZCNT SSSE3 SSE4.2 AVX FMA3 BMI2 AVX2
x265 [info]: Main 10 profile, Level-3 (Main tier)
x265 [info]: Thread pool created using 8 threads
x265 [info]: Slices : 1
x265 [info]: frame threads / pool features : 3 / wpp(8 rows)
x265 [warning]: Source height < 720p; disabling lookahead-slices
x265 [info]: Coding QT: max CU size, min CU size : 64 / 8
x265 [info]: Residual QT: max TU size, max depth : 32 / 1 inter / 1 intra
x265 [info]: ME / range / subpel / merge : hex / 57 / 2 / 3
x265 [info]: Keyframe min / max / scenecut / bias : 25 / 250 / 40 / 5.00
x265 [info]: Lookahead / bframes / badapt : 20 / 4 / 2
x265 [info]: b-pyramid / weightp / weightb : 1 / 1 / 0
x265 [info]: References / ref-limit cu / depth : 3 / off / on
x265 [info]: AQ: mode / str / qg-size / cu-tree : 2 / 1.0 / 32 / 1
x265 [info]: Rate Control / qCompress : CRF-24.0 / 0.60
x265 [info]: tools: rd=3 psy-rd=2.00 early-skip rskip mode=1 signhide tmvp
x265 [info]: tools: b-intra strong-intra-smoothing deblock sao
x265 [info]: frame I: 4, Avg QP:22.39 kb/s: 1197.05 351.98 KB
x265 [info]: frame P: 198, Avg QP:27.64 kb/s: 129.82
x265 [info]: frame B: 778, Avg QP:31.24 kb/s: 51.67
x265 [info]: Weighted P-Frames: Y:0.0% UV:0.0%
x265 [info]: consecutive B-frames: 1.5% 2.0% 1.5% 0.0% 95.0%
encoded 980 frames in 8.00s (122.44 fps), 72.13 kb/s, Avg QP:30.48
As you see the frames that appear to be processed are 200 to 1179, and that's what's expected OK.
Encoded output video
It is expected to start at source frame 200.
The encoded video does NOT start at frame 200 of source video. It starts at frame 0.
(I have used a video showing timecodes in order to have accurate readings)
Question:
Is that any way this could work correctly ? Or is it an absolute limitation ?
I would love to try out this fork for my experiments, but I can't find any documentation for it anywhere, maybe I've found something but it's all in chinese so I've got no idea how to forward. Can I use the same encoding flags I use on regular x265 or is there something more I should be made aware of when I use this fork that might be beneficial for me while encoding japanese animation?
I'm currently using "x265-Asuna-3.4+13-g729a838d3+38".
I'm using "x265-Asuna-3.4+13-g729a838d3+38" to encode the avs file directly.
If I do the same and change the binary to "x265-Yuuki-3.5+2-g2b25c9ba0+45", I get an error.
--- error begin
.\bin\x265-Yuuki-3.5-gcc-10-lite.exe --input .\demux_Plus.avs --output test.265
avs+ [info]: AviSynth+ 3.7.0 (r3382, 3.7, x86_64)
avs+ [error]: Error loading file: MPEG2Source: Could not open one of the input files.
(.\demux_Plus.avs, line 52)
x265 [error]: unable to open input file <.\demux_Plus.avs>
--- error end
I am using MPEG2Source() in the avs file to load the d2v file, and the cause seems to be the presence of Japanese in the name of the source file described in the d2v file.
If you use only alphabetic file names, the error does not occur and the encoding can be done normally.
If possible, I would like to pass avs directly like x265-Asuna to encode the file.
Hi!
I recently download this fork and when i want to try encode some .mkv the output is always corrupted i don't know why
This is the Output
D:\>x265-gcc-10-lite --input test.mkv --fps 55.300 --input-res 1440x1080 --profile main10 --preset slow --tune vcb-s/vcbs --ref 6 --bframes 8 --crf 22 --output testx265.mkv
yuv [info]: 1440x1080 fps 55300/1000 i420p8 frames 0 - 161 of 162
x265 [info]: Using preset slow & tune vcb-s/vcbs
mkv [info]: output file: testx265.mkv
x265 [info]: HEVC encoder version 3.3+3-g8f8e332f1+29
x265 [info]: build info [Windows][GCC 9.3.0][64 bit] Yuuki 10bit
x265 [info]: using cpu capabilities: MMX2 SSE2Fast LZCNT SSSE3 SSE4.2 AVX FMA3 BMI2 AVX2
x265 [info]: Main 10 profile, Level-4.1 (Main tier)
x265 [info]: Thread pool created using 12 threads
x265 [info]: Slices : 1
x265 [info]: frame threads / pool features : 3 / wpp(34 rows)
x265 [info]: Coding QT: max CU size, min CU size : 32 / 8
x265 [info]: Residual QT: max TU size, max depth : 32 / 1 inter / 1 intra
x265 [info]: ME / range / subpel / merge : star / 25 / 3 / 3
x265 [info]: Keyframe min / max / scenecut / bias : 1 / 360 / 40 / 5.00
x265 [info]: Cb/Cr QP Offset : -2 / -2
x265 [info]: Lookahead / bframes / badapt : 25 / 8 / 2
x265 [info]: b-pyramid / weightp / weightb : 1 / 1 / 1
x265 [info]: References / ref-limit cu / depth : 6 / on / on
x265 [info]: AQ: mode / str / qg-size / cu-tree : 2 / 0.8 / 8 / 1
x265 [info]: Rate Control / qCompress : CRF-22.0 / 0.60
x265 [info]: tools: limit-modes rd=4 psy-rd=1.80 rdoq=2 psy-rdoq=1.00 rskip
x265 [info]: tools: signhide tmvp lslices=4 deblock(tC=-1:B=-1)
x265 [info]: frame I: 2, Avg QP:32.31 kb/s: 497055.87
x265 [info]: frame P: 19, Avg QP:32.04 kb/s: 501926.11
x265 [info]: frame B: 141, Avg QP:33.86 kb/s: 484052.22
x265 [info]: Weighted P-Frames: Y:31.6% UV:21.1%
x265 [info]: Weighted B-Frames: Y:24.8% UV:19.1%
x265 [info]: consecutive B-frames: 9.5% 0.0% 0.0% 0.0% 0.0% 0.0% 14.3% 23.8% 52.4%
encoded 162 frames in 68.72s (2.36 fps), 486309.10 kb/s, Avg QP:33.63
Can anyone help me ?
ANSI is currently not working in the avs reader, on systems with CP 1252 (Western European) German Umlauts ü ö ä do not work, this is working in the lavf reader and also in the x264 reader.
But UTF-8 should be enforced by using a UTF-8 manifest, this is a new Windows 10 1903 feature and is already actively and successfully used by x264, mpv.net and staxrip, but these three applications do not only support enforced UTF-8, they also support long path which is also a very important feature.
Here is the commit that includes all this:
2>------ 已启动生成: 项目: common, 配置: Release x64 ------
3>------ 已跳过生成: 项目: uninstall, 配置: Release x64 ------
3>没有为此解决方案配置选中要生成的项目
2>param.cpp
2>D:\Source code\x265-Yuuki-Asuna\source\common\param.cpp(1171): fatal error C1061: 编译器限制: 块嵌套太深
2>已完成生成项目“common.vcxproj”的操作 - 失败。
不知道具体原因是啥。
查了一下1171是
OPT("max-cll") bError |= sscanf(value, "%hu,%hu", &p->maxCLL, &p->maxFALL) != 2;
但是官方版的编译并没有出现此bug。
The file x265.rc contains confusing values; windres.exe stops with syntax error in line 7 (FILEVERSION => PRODUCTVERSION):
#include <winresrc.h>
1 RT_MANIFEST "x265res.manifest"
VS_VERSION_INFO VERSIONINFO
FILEVERSION 3,4,0,
PRODUCTVERSION 3,4,0,
FILEFLAGSMASK VS_FFI_FILEFLAGSMASK
FILEOS VOS_NT_WINDOWS32
#ifdef OPENOBEX_EXPORTS
FILETYPE VFT_DLL
#else
FILETYPE VFT_STATIC_LIB
#endif
FILESUBTYPE VFT2_UNKNOWN
BEGIN
BLOCK "StringFileInfo"
BEGIN
BLOCK "04090000"
BEGIN
VALUE "FileDescription", "HEVC video encoder"
VALUE "FileVersion", "2.3M+850-g2b25c9ba0+47"
VALUE "InternalName", "x265"
VALUE "LegalCopyright", "Multicoreware: GPLv2 or commercial"
VALUE "OriginalFilename", "265.exe"
VALUE "ProductName", "x265"
VALUE "ProductVersion", "2.3M+850-g2b25c9ba0+47"
END
END
BLOCK "VarFileInfo"
BEGIN
VALUE "Translation", 0x409, 1200
END
END
版本号 x265-Yuuki-2.8+4-g0ad419482+18
脚本
vspipe 2p.vpy - --y4m | x265 --y4m --input-depth 16 --output-depth 10 - --tune vcbs++ --level-idc 5.1 --pass 1 --crf 19 --output "pass1.hevc" 2>pass1.txt
vspipe 2p.vpy - --y4m | x265 --y4m --input-depth 16 --output-depth 10 - --tune vcbs++ --level-idc 5.1 --pass 2 --bitrate 6000 --output "pass2.hevc" 2>pass2.txt
pause
pass2 log
y4m [info]: 1920x1080 fps 24000/1001 i420p16 frames 0 - 50 of 51
x265 [info]: Using preset medium & tune vcbs++
raw [info]: output file: pass2.hevc
x265 [info]: HEVC encoder version 2.8+4-g0ad419482+18
x265 [info]: build info [Windows][GCC 7.1.0][64 bit] Yuuki 10bit
x265 [info]: using cpu capabilities: MMX2 SSE2Fast LZCNT SSSE3 SSE4.2 AVX FMA3 BMI2 AVX2
x265 [warning]: limit-tu disabled, requires tu-inter-depth > 1
x265 [info]: Main 10 profile, Level-5.1 (Main tier)
x265 [info]: Thread pool 0 using 32 threads on numa nodes 0
x265 [info]: Slices : 1
x265 [info]: frame threads / pool features : 5 / wpp(34 rows)
x265 [error]: different keyint setting than first pass (360 vs 4)
x265 [error]: failed to open encoder
![](yande.re 211430.png)
VapourSynth API change?
[ 81%] Building CXX object CMakeFiles/cli.dir/input/vpy.cpp.obj
F:/MABS/x265-Yuuki-Asuna-Asuna/source/input/vpy.cpp: In function 'void frameDoneCallback(void*, const VSFrameRef*, int, VSNodeRef*, const char*)':
F:/MABS/x265-Yuuki-Asuna-Asuna/source/input/vpy.cpp:46:64: error: 'struct VSFDCallbackData' has no member named 'framesToRequest'
46 | if(vpyCallbackData->requestedFrames < vpyCallbackData->framesToRequest && vpyCallbackData->isRunning) // don't ask for new frames if user cancelled execution
| ^~~~~~~~~~~~~~~
F:/MABS/x265-Yuuki-Asuna-Asuna/source/input/vpy.cpp:49:91: warning: invalid conversion from 'void (*)(void*, const VSFrameRef*, int, VSNodeRef*, const char*)' to 'VSFrameDoneCallback' {aka 'void (__attribute__((stdcall)) *)(void*, const VSFrameRef*, int, VSNodeRef*, const char*)'} [-fpermissive]
49 | vpyCallbackData->vsapi->getFrameAsync(vpyCallbackData->requestedFrames, node, frameDoneCallback, vpyCallbackData);
| ^~~~~~~~~~~~~~~~~
| |
| void (*)(void*, const VSFrameRef*, int, VSNodeRef*, const char*)
F:/MABS/x265-Yuuki-Asuna-Asuna/source/input/vpy.cpp: In member function 'virtual void x265::VPYInput::startReader()':
F:/MABS/x265-Yuuki-Asuna-Asuna/source/input/vpy.cpp:268:39: warning: invalid conversion from 'void (*)(void*, const VSFrameRef*, int, VSNodeRef*, const char*)' to 'VSFrameDoneCallback' {aka 'void (__attribute__((stdcall)) *)(void*, const VSFrameRef*, int, VSNodeRef*, const char*)'} [-fpermissive]
268 | vsapi->getFrameAsync(n, node, frameDoneCallback, &vpyCallbackData);
| ^~~~~~~~~~~~~~~~~
| |
| void (*)(void*, const VSFrameRef*, int, VSNodeRef*, const char*)
make[2]: *** [CMakeFiles/cli.dir/build.make:147: CMakeFiles/cli.dir/input/vpy.cpp.obj] Error 1
make[1]: *** [CMakeFiles/Makefile2:194: CMakeFiles/cli.dir/all] Error 2
make: *** [Makefile:149: all] Error 2
I set up an MSYS2/MinGW environment using media-autobuild suite and compiled ffmpeg with a lot of included codecs.
Also I compiled and installed L-SMASH libraries in its interactive MinGW64 shell from the already existing sources, according to the locations in the suite:
cd /build/liblsmash-git/
./configure --prefix="/local64"
make install-lib
Then I retrieved a working directory of the Asuna branch:
git clone https://github.com/msg7086/x265-Yuuki-Asuna.git --branch Asuna --single-branch x265-Yuuki-Asuna-Asuna
I modified the multilib script provided by Multicoreware, based on its msys build samples.
See makehdr10_w64_Asuna.sh in the attached ZIP archive.
The building process was successful for enabling support for AviSynth, VapourSynth, L-SMASH, MKV (although "deprecated"), ZIMG. Enabling support for LAVF also appears to find the required libraries. But the linker fails:
Full console output of ccache'd buid in make_Asuna.txt in the attached ZIP archive
[ 96%] Linking CXX executable x265.exe
E:/MABS/msys64/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/10.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: CMakeFiles/cli.dir/objects.a(lavf.cpp.obj):lavf.cpp:(.text+0x11): undefined reference to `avcodec_free_context'
E:/MABS/msys64/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/10.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: CMakeFiles/cli.dir/objects.a(lavf.cpp.obj):lavf.cpp:(.text+0x1a): undefined reference to `avformat_close_input'
E:/MABS/msys64/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/10.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: CMakeFiles/cli.dir/objects.a(lavf.cpp.obj):lavf.cpp:(.text+0x19d): undefined reference to `av_init_packet'
E:/MABS/msys64/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/10.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: CMakeFiles/cli.dir/objects.a(lavf.cpp.obj):lavf.cpp:(.text+0x1c0): undefined reference to `avcodec_receive_frame'
E:/MABS/msys64/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/10.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: CMakeFiles/cli.dir/objects.a(lavf.cpp.obj):lavf.cpp:(.text+0x1d8): undefined reference to `av_read_frame'
E:/MABS/msys64/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/10.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: CMakeFiles/cli.dir/objects.a(lavf.cpp.obj):lavf.cpp:(.text+0x1f4): undefined reference to `av_packet_unref'
E:/MABS/msys64/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/10.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: CMakeFiles/cli.dir/objects.a(lavf.cpp.obj):lavf.cpp:(.text+0x204): undefined reference to `av_init_packet'
E:/MABS/msys64/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/10.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: CMakeFiles/cli.dir/objects.a(lavf.cpp.obj):lavf.cpp:(.text+0x226): undefined reference to `avcodec_send_packet'
E:/MABS/msys64/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/10.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: CMakeFiles/cli.dir/objects.a(lavf.cpp.obj):lavf.cpp:(.text+0x23d): undefined reference to `avcodec_receive_frame'
E:/MABS/msys64/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/10.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: CMakeFiles/cli.dir/objects.a(lavf.cpp.obj):lavf.cpp:(.text+0x2a4): undefined reference to `av_packet_unref'
E:/MABS/msys64/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/10.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: CMakeFiles/cli.dir/objects.a(lavf.cpp.obj):lavf.cpp:(.text+0x2b8): undefined reference to `av_packet_unref'
E:/MABS/msys64/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/10.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: CMakeFiles/cli.dir/objects.a(lavf.cpp.obj):lavf.cpp:(.text+0x4aa): undefined reference to `avcodec_find_decoder'
E:/MABS/msys64/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/10.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: CMakeFiles/cli.dir/objects.a(lavf.cpp.obj):lavf.cpp:(.text+0x4ba): undefined reference to `avcodec_alloc_context3'
E:/MABS/msys64/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/10.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: CMakeFiles/cli.dir/objects.a(lavf.cpp.obj):lavf.cpp:(.text+0x4d3): undefined reference to `avcodec_parameters_to_context'
E:/MABS/msys64/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/10.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: CMakeFiles/cli.dir/objects.a(lavf.cpp.obj):lavf.cpp:(.text+0x4e7): undefined reference to `avcodec_open2'
E:/MABS/msys64/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/10.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: CMakeFiles/cli.dir/objects.a(lavf.cpp.obj):lavf.cpp:(.text+0x5ad): undefined reference to `av_packet_unref'
E:/MABS/msys64/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/10.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: CMakeFiles/cli.dir/objects.a(lavf.cpp.obj):lavf.cpp:(.text+0x60c): undefined reference to `av_frame_alloc'
E:/MABS/msys64/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/10.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: CMakeFiles/cli.dir/objects.a(lavf.cpp.obj):lavf.cpp:(.text+0x62e): undefined reference to `avformat_open_input'
E:/MABS/msys64/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/10.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: CMakeFiles/cli.dir/objects.a(lavf.cpp.obj):lavf.cpp:(.text+0x64b): undefined reference to `avformat_find_stream_info'
E:/MABS/msys64/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/10.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: CMakeFiles/cli.dir/objects.a(lavf.cpp.obj):lavf.cpp:(.text+0x6c9): undefined reference to `avcodec_find_decoder'
E:/MABS/msys64/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/10.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: CMakeFiles/cli.dir/objects.a(lavf.cpp.obj):lavf.cpp:(.text+0x6d8): undefined reference to `avcodec_alloc_context3'
E:/MABS/msys64/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/10.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: CMakeFiles/cli.dir/objects.a(lavf.cpp.obj):lavf.cpp:(.text+0x6f4): undefined reference to `avcodec_parameters_to_context'
E:/MABS/msys64/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/10.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: CMakeFiles/cli.dir/objects.a(lavf.cpp.obj):lavf.cpp:(.text+0x707): undefined reference to `avcodec_open2'
E:/MABS/msys64/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/10.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: CMakeFiles/cli.dir/objects.a(lavf.cpp.obj):lavf.cpp:(.text+0x72c): undefined reference to `av_dict_set'
E:/MABS/msys64/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/10.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: CMakeFiles/cli.dir/objects.a(lavf.cpp.obj):lavf.cpp:(.text+0x73f): undefined reference to `avcodec_open2'
E:/MABS/msys64/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/10.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: CMakeFiles/cli.dir/objects.a(lavf.cpp.obj):lavf.cpp:(.text+0x761): undefined reference to `av_dict_free'
E:/MABS/msys64/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/10.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: CMakeFiles/cli.dir/objects.a(lavf.cpp.obj):lavf.cpp:(.text+0x82b): undefined reference to `av_pix_fmt_desc_get'
E:/MABS/msys64/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/10.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: CMakeFiles/cli.dir/objects.a(lavf.cpp.obj):lavf.cpp:(.text+0x2c): undefined reference to `av_frame_free'
collect2.exe: error: ld returned 1 exit status
Compiling x264 with a reduced ffmpeg (video decoders only) works in m-ab-s. But it uses its own local libraries in this case. The ffmpeg libraries installed in the system should be taken from the full compliation of ffmpeg,
If you need any more detail, please request.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.