xpra icon
Bug tracker and wiki

Opened 6 years ago

Closed 5 years ago

#445 closed task (worksforme)

x265 encoding

Reported by: Antoine Martin Owned by: Antoine Martin
Priority: major Milestone: 0.13
Component: core Version:
Keywords: Cc:

Description

x265.org is an open-source project and free application library for encoding video streams into the H.265/High Efficiency Video Coding (HEVC) format, and is released under the terms of the GNU GPL.

It should be relatively easy to add this encoder as it follows the same layout as x264, with a simpler API too. Stub patch attached.
Decoding has been added to ffmpeg already: FFmpeg Now Supports HEVC/H.265 Decoding - though for this we will need to fix #415 first.

Attachments (1)

x265.2.patch (16.9 KB) - added by Antoine Martin 6 years ago.
better enc_x265 stub patch, removes generated files

Download all attachments as: .zip

Change History (6)

Changed 6 years ago by Antoine Martin

Attachment: x265.2.patch added

better enc_x265 stub patch, removes generated files

comment:1 Changed 6 years ago by Antoine Martin

Status: newassigned

FFmpeg & Libav Add H.265 Encoder Via x265: Now today both FFmpeg and libav have integrated x265 encoding support into their respective programs

Looks like x265 is maturing quickly.

comment:2 Changed 6 years ago by Antoine Martin

From The world’s fastest VP9 decoder: ffvp9: We did briefly look into x265, one of the more popular HEVC encoders. Unfortunately, it suffers from the same basic issue as libvpx: it can be fast, and it can beat x264, but it can’t do both at the same time.

comment:3 Changed 6 years ago by Antoine Martin

encoder implemented in r5562, decoder support added in r5558

Not particularly impressive: on "ultrafast" it is 5 to 20 times slower than x264!

comment:4 Changed 6 years ago by Antoine Martin

For the record, this is how fmpeg2 is now built on win32 and osx (added hevc aka h265):

./configure --cpu=i686 --enable-runtime-cpudetect \
    --prefix=/c/ffmpeg-win32-bin \
    --enable-static --enable-shared --enable-gpl \
    --enable-memalign-hack \
    --disable-avdevice --disable-decoders --disable-dxva2 --disable-encoders \
    --disable-devices --disable-muxers --disable-demuxers \
    --disable-postproc --disable-avfilter  --disable-filters --disable-protocols \
    --disable-bsfs --disable-parsers  \
    --enable-swscale \
    --enable-libx264 --enable-decoder=h264 \
    --enable-libvpx --enable-decoder=vp8 --enable-decoder=vp9 \
    --enable-decoder=hevc

trunk versions of ffmpeg2 also support --enable-libx265, but this is not needed for decoding.
For OSX, you must also add the usual GTK --prefix= path.

comment:5 Changed 5 years ago by Antoine Martin

Milestone: 1.00.13
Resolution: worksforme
Status: assignedclosed

This has been working for a while but is of little interest because it is so slow. Closing the ticket without further testing.

Note: See TracTickets for help on using tickets.