X265

jakkor
Joined: Wed Feb 25, 2009 5:07 pm
Org Profile

X265

Post by jakkor » Fri Nov 08, 2013 7:01 am

What about x265, maybe Zarx would make app?

User avatar
l33tmeatwad
Joined: Wed Feb 16, 2005 3:22 pm
Location: Christiansburg, VA
Contact:
Org Profile

Re: X265

Post by l33tmeatwad » Fri Nov 08, 2013 9:55 am

While it sounds appealing, x265 isn't really that useful at this point outside of personal testing and/or development. If you don't know how to compile and/or use the command prompt executables it's probably not a good idea to use it at this time. Ease of use GUIs will come when it is suitable for mass use.
Software & Guides: AMVpack | AMV 101 | AviSynth 101 | VapourSynth 101
PixelBlended Studios: Website | Twitter | YouTube

User avatar
Qyot27
Surreptitious fluffy bunny
Joined: Fri Aug 30, 2002 12:08 pm
Status: Creepin' between the bullfrogs
Location: St. Pete, FL
Contact:
Org Profile

Re: X265

Post by Qyot27 » Fri Nov 08, 2013 10:19 pm

The real problem is that neither the updated 14496-15 3rd edition nor the Matroska specs on storing HEVC have been finalized, so HEVC-in-MP4 or -MKV files created now may not work correctly later. Although, at least HEVC can be decoded by libavcodec and the various relevant demuxers in libavformat have been updated to include HEVC demuxing; those'll simply need to be tweaked a little when the final specs are published.

Further, Zarx264gui now relies on accessing libx264 through FFmpeg. libx265 currently cannot be used through libavcodec, and the patch that was posted to libav-devel as a proof-of-concept has already gotten outdated by x265's currently moving API. So even though you can use the x265 binary itself, it's not yet reached enough of a plateau to reliably get integrated with other programs.

It's gotten some pretty massive improvements recently, though: stdin support for YUV and Y4M*, preset/tune support (and newer, saner defaults to go along with it), crf support, rext** stuff (although I've barely tested with that), and the assembly optimizations are coming through in a fairly steady stream so it is much faster (and getting faster) than the glacial speeds of the HM encoder or builds from when x265 was first publicly announced back in July.

*AviSynth input is still not there; but since FFmpeg supports AviSynth, you can pipe from FFmpeg to x265:

Code: Select all

ffmpeg -i input.avs -f yuv4mpegpipe - | x265 --crf 18 --preset ultrafast -o output.265 - --y4m
**read: 4:2:2 and 4:4:4, some 10-bit and 12-bit stuff; all of which is still very much a work in progress on that front, but it does potentially mean that users who've gotten used to using 10-bit H.264 won't have to drop back to 8-bit H.265/HEVC before going being able to do 10-bit encodes again (although currently, the aforementioned assembly optimizations are focusing mainly/only on the 8-bit parts of x265; so using the 16-bit build will be much slower).
My profile on MyAnimeList | Quasistatic Regret: yeah, yeah, I finally got a blog

jakkor
Joined: Wed Feb 25, 2009 5:07 pm
Org Profile

Re: X265

Post by jakkor » Sat Nov 09, 2013 4:29 am

I created line:

"I:\moje uzytki\video\konwersja audio\ffmpeg\ffmpeg-20131026-git-c78a416-win64-static\bin\ffmpeg.exe" -i "F:\Pain\pain.avs" -f yuv4mpegpipe - | "I:\moje uzytki\video\x265\avs4x265-0.2\x265.exe" --crf 18 --preset ultrafast -o "F:\Pain\pain.hevc" - --y4m

error


"I:\moje uzytki\video\x265\avs4x265-0.2\avs4x265.exe" --crf 18 --preset ultrafas
t -o "F:\Pain\pain.hevc" - --y4m
No avs script found.
ffmpeg version N-57448-gc78a416 Copyright (c) 2000-2013 the FFmpeg developers
built on Oct 26 2013 18:08:54 with gcc 4.8.2 (GCC)
configuration: --enable-gpl --enable-version3 --disable-w32threads --enable-av
isynth --enable-bzlib --enable-fontconfig --enable-frei0r --enable-gnutls --enab
le-iconv --enable-libass --enable-libbluray --enable-libcaca --enable-libfreetyp
e --enable-libgsm --enable-libilbc --enable-libmodplug --enable-libmp3lame --ena
ble-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-l
ibopus --enable-librtmp --enable-libschroedinger --enable-libsoxr --enable-libsp
eex --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvo-aa
cenc --enable-libvo-amrwbenc --enable-libvorbis --enable-libvpx --enable-libwavp
ack --enable-libx264 --enable-libxavs --enable-libxvid --enable-zlib
libavutil 52. 47.101 / 52. 47.101
libavcodec 55. 38.101 / 55. 38.101
libavformat 55. 19.104 / 55. 19.104
libavdevice 55. 5.100 / 55. 5.100
libavfilter 3. 89.100 / 3. 89.100
libswscale 2. 5.101 / 2. 5.101
libswresample 0. 17.104 / 0. 17.104
libpostproc 52. 3.100 / 52. 3.100
F:\Pain\pain.avs: Unknown error occurred

My script
dss2("F:\Pain\pain.mp4", fps=23.976) work with MPHC

User avatar
Qyot27
Surreptitious fluffy bunny
Joined: Fri Aug 30, 2002 12:08 pm
Status: Creepin' between the bullfrogs
Location: St. Pete, FL
Contact:
Org Profile

Re: X265

Post by Qyot27 » Sat Nov 09, 2013 6:38 am

That ffmpeg is 64-bit. Unless you're using AviSynth64 or a 64-bit build of AviSynth+ (the 64-bit support in which is still in an early development phase) with 64-bit plugins, that will fail. You have to use 32-bit ffmpeg with 32-bit AviSynth(+) and 32-bit plugins. A 32-bit ffmpeg can pipe to a 64-bit x265, though.
My profile on MyAnimeList | Quasistatic Regret: yeah, yeah, I finally got a blog

User avatar
Qyot27
Surreptitious fluffy bunny
Joined: Fri Aug 30, 2002 12:08 pm
Status: Creepin' between the bullfrogs
Location: St. Pete, FL
Contact:
Org Profile

Re: X265

Post by Qyot27 » Sat Nov 09, 2013 6:45 am

Qyot27 wrote:That ffmpeg is 64-bit. Unless you're using AviSynth64 or a 64-bit build of AviSynth+ (the 64-bit support in which is still in an early development phase) with 64-bit plugins, that will fail. You have to use 32-bit ffmpeg with 32-bit AviSynth(+) and 32-bit plugins. A 32-bit ffmpeg can pipe to a 64-bit x265, though.
It also goes without saying that 64-bit builds of AvxSynth can be used with 64-bit builds of ffmpeg on Linux and OSX, but that's generally irrelevant for the average user (also, because one of the stated goals for AviSynth+ is to add cross-platform support, which will eclipse AvxSynth entirely).
My profile on MyAnimeList | Quasistatic Regret: yeah, yeah, I finally got a blog

jakkor
Joined: Wed Feb 25, 2009 5:07 pm
Org Profile

Re: X265

Post by jakkor » Sat Nov 09, 2013 11:22 am

now ffmpeg.exe error
not found libgcc_sjlj_1.dll

and cmd window

C:\Users\Marcel>"I:\moje uzytki\video\konwersja audio\ffmpeg\ffmpeg-20131026-git
-c78a416-win32-static\bin\ffmpeg.exe" -i "F:\Pain\pain.avs" -f yuv4mpegpipe - |
"I:\moje uzytki\video\x265\avs4x265-0.2\avs4x265.exe" --crf 18 --preset ultrafas
t -o "F:\Pain\pain.hevc" - --y4m
No avs script found.
ffmpeg version N-57448-gc78a416 Copyright (c) 2000-2013 the FFmpeg developers
built on Oct 26 2013 18:02:03 with gcc 4.8.2 (GCC)
configuration: --enable-gpl --enable-version3 --disable-w32threads --enable-av
isynth --enable-bzlib --enable-fontconfig --enable-frei0r --enable-gnutls --enab
le-iconv --enable-libass --enable-libbluray --enable-libcaca --enable-libfreetyp
e --enable-libgsm --enable-libilbc --enable-libmodplug --enable-libmp3lame --ena
ble-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-l
ibopus --enable-librtmp --enable-libschroedinger --enable-libsoxr --enable-libsp
eex --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvo-aa
cenc --enable-libvo-amrwbenc --enable-libvorbis --enable-libvpx --enable-libwavp
ack --enable-libx264 --enable-libxavs --enable-libxvid --enable-zlib
libavutil 52. 47.101 / 52. 47.101
libavcodec 55. 38.101 / 55. 38.101
libavformat 55. 19.104 / 55. 19.104
libavdevice 55. 5.100 / 55. 5.100
libavfilter 3. 89.100 / 3. 89.100
libswscale 2. 5.101 / 2. 5.101
libswresample 0. 17.104 / 0. 17.104
libpostproc 52. 3.100 / 52. 3.100
Input #0, avisynth, from 'F:\Pain\pain.avs':
Duration: 02:09:36.86, start: 0.000000, bitrate: 0 kb/s
Stream #0:0: Video: rawvideo (YUY2 / 0x32595559), yuyv422, 1280x544, 23.98 f
ps, 23.98 tbr, 23.98 tbn, 23.98 tbc
[yuv4mpegpipe @ 0c50a240] ERROR: yuv4mpeg can only handle yuv444p, yuv422p, yuv4
20p, yuv411p and gray8 pixel formats. And using 'strict -1' also yuv444p9, yuv42
2p9, yuv420p9, yuv444p10, yuv422p10, yuv420p10, yuv444p12, yuv422p12, yuv420p12,
yuv444p14, yuv422p14, yuv420p14, yuv444p16, yuv422p16, yuv420p16 and gray16 pix
el formats. Use -pix_fmt to select one.
Output #0, yuv4mpegpipe, to 'pipe:':
Metadata:
encoder : Lavf55.19.104
Stream #0:0: Video: rawvideo (YUY2 / 0x32595559), yuyv422, 1280x544, q=2-31,
200 kb/s, 90k tbn, 23.98 tbc
Stream mapping:
Stream #0:0 -> #0:0 (rawvideo -> rawvideo)
Could not write header for output file #0 (incorrect codec parameters ?): Error
number -5 occurred

User avatar
Qyot27
Surreptitious fluffy bunny
Joined: Fri Aug 30, 2002 12:08 pm
Status: Creepin' between the bullfrogs
Location: St. Pete, FL
Contact:
Org Profile

Re: X265

Post by Qyot27 » Sun Nov 10, 2013 11:01 am

You don't pipe into avs4x265. Use the actual filename of the avs script.

Code: Select all

avs4x265 --crf 18 --preset ultrafast -o output.265 input.avs
The issue is that you're passing YUY2 (yuyv422 in ffmpeg parlance) instead of YV12 (yuv420p). Use ConvertToYV12() at the end of the script; the rext support that would be able to do 4:2:2 is not ready to use at this point. Also there seems to be something that wasn't compiled against a static libgcc, but checking both Zeranoe's build of ffmpeg from October 26th and avs4x265, neither one of them shows that as a dependency.

Use the builds of x265 from x265.cc - those will be recent enough.
My profile on MyAnimeList | Quasistatic Regret: yeah, yeah, I finally got a blog

jakkor
Joined: Wed Feb 25, 2009 5:07 pm
Org Profile

Re: X265

Post by jakkor » Tue Nov 12, 2013 8:52 am

Still error


C:\Documents and Settings\admin>"I:\moje uzytki\video\konwersja audio\X-WinFF_1.
5.2_rev6\Bin\Winff\ffmpeg.exe" -i "C:\jk\mblack\hansel\wolverine\wolv.avs" -f yu
v4mpegpipe - | "I:\moje uzytki\video\x265\x265_latestxp\x265.exe" --crf 18 --pre
set ultrafast -o "C:\jk\mblack\hansel\wolverine\wolf.hevc" - --y4m
ffmpeg version N-54096-ge41bf19 Copyright (c) 2000-2013 the FFmpeg developers
built on Jun 18 2013 10:49:28 with gcc 4.7.2 (GCC)
configuration: --enable-static --disable-shared --disable-ffplay --disable-ffs
erver --enable-memalign-hack --enable-libmp3lame --enable-libass --enable-librtm
p --enable-fontconfig --enable-libfreetype --enable-zlib --enable-libx264 --extr
a-libs='-lrtmp -lpolarssl -lws2_32 -lwinmm -lexpat -lfreetype -lfribidi -lz' --a
rch=x86 --enable-runtime-cpudetect --enable-pthreads --target-os=mingw32 --cross
-prefix=i686-w64-mingw32- --enable-gpl --pkg-config=pkg-config
libavutil 52. 37.101 / 52. 37.101
libavcodec 55. 16.100 / 55. 16.100
libavformat 55. 9.100 / 55. 9.100
libavdevice 55. 2.100 / 55. 2.100
libavfilter 3. 77.101 / 3. 77.101
libswscale 2. 3.100 / 2. 3.100
libswresample 0. 17.102 / 0. 17.102
libpostproc 52. 3.100 / 52. 3.100
C:\jk\mblack\hansel\wolverine\wolv.avs: No such file or directory
x265 [error]: unable to open input file <->

C:\Documents and Settings\admin>"C:\jk\x\Zarx264gui\ffmpeg.exe" -i "C:\jk\mblack
\hansel\wolverine\wolv.avs" -f yuv4mpegpipe - | "I:\moje uzytki\video\x265\x265_
latestxp\x265.exe" --crf 18 --preset ultrafast -o "C:\jk\mblack\hansel\wolverine
\wolf.hevc" - --y4m
ffmpeg version N-56648-g65bf9a4 Copyright (c) 2000-2013 the FFmpeg developers
built on Sep 24 2013 22:04:05 with gcc 4.8.0 (GCC)
configuration: --arch=x86 --target-os=mingw32 --cross-prefix=/home/zarxrax/FFM
PEG/sandbox/mingw-w64-i686/bin/i686-w64-mingw32- --pkg-config=pkg-config --enabl
e-gpl --enable-libx264 --enable-avisynth --enable-libxvid --enable-libmp3lame --
enable-version3 --enable-zlib --enable-librtmp --enable-libvorbis --enable-libth
eora --enable-libspeex --enable-libopenjpeg --enable-gnutls --enable-libgsm --en
able-libfreetype --enable-libopus --disable-w32threads --enable-frei0r --enable-
filter=frei0r --enable-libvo-aacenc --enable-bzlib --enable-libxavs --extra-cfla
gs=-DPTW32_STATIC_LIB --enable-libopencore-amrnb --enable-libopencore-amrwb --en
able-libvo-amrwbenc --enable-libschroedinger --enable-libvpx --enable-libilbc --
prefix=/home/zarxrax/FFMPEG/sandbox/mingw-w64-i686/i686-w64-mingw32 --enable-sta
tic --disable-shared --enable-libsoxr --enable-fontconfig --enable-libass --enab
le-libutvideo --enable-libbluray --extra-cflags= --enable-nonfree --enable-libfd
k-aac --enable-runtime-cpudetect
libavutil 52. 46.100 / 52. 46.100
libavcodec 55. 33.100 / 55. 33.100
libavformat 55. 18.102 / 55. 18.102
libavdevice 55. 3.100 / 55. 3.100
libavfilter 3. 87.100 / 3. 87.100
libswscale 2. 5.100 / 2. 5.100
libswresample 0. 17.103 / 0. 17.103
libpostproc 52. 3.100 / 52. 3.100
C:\jk\mblack\hansel\wolverine\wolv.avs: No such file or directory
x265 [error]: unable to open input file <->

User avatar
Qyot27
Surreptitious fluffy bunny
Joined: Fri Aug 30, 2002 12:08 pm
Status: Creepin' between the bullfrogs
Location: St. Pete, FL
Contact:
Org Profile

Re: X265

Post by Qyot27 » Wed Nov 13, 2013 8:10 am

I'm going to make it very easy.

Download this:
http://www.mediafire.com/download/t6czi ... 0131113.7z

Unpack that .7z file in the same folder that the .avs file is in.
Then, drag and drop the .avs file onto encode_x265.bat.
My profile on MyAnimeList | Quasistatic Regret: yeah, yeah, I finally got a blog

Locked

Return to “Video & Audio Help”