IS0GRB Use OBS in H265 without dedicated board

  • As many of you know with the OBS Studio program it is not possible to use the H265 codec without having a dedicated video card that supports this codec.


    Below I will explain how to update the OBS in order to have the H265 codec and then encode the video with a much higher quality than the H264 codec.


    For the use of this mode, the use of a high-performance PC is recommended, at least with I5 8th Gen processor or higher, as in H265 mode the OBS program uses much more CPU than normal.



    See the attachments in Italian and English

    Italian

    https://drive.google.com/file/…OM3BZM8r/view?usp=sharing


    English

    https://drive.google.com/file/…kxqxg7j3/view?usp=sharing


    73
    Roberto IS0GRB

  • On OBS, in recording mode, there is no CBR control as in Streaming mode, which allows you to have a constant bit rate even in the presence of moving images.


    This forces you to keep the video bit rate much lower to avoid saturating the Transport Stream if you decide to transmit moving, accelerated or very colorful images.


    To overcome this inconvenience and have an effective control i have updated the document with suggestions for using another H265 encoder available among those added which also allows a reduction of the CPU effort.

    See the attachments updated document in Italian and English

    The forum does not allow attachments larger than 1M, i have posted the updated documents on google drive:

    Italian

    https://drive.google.com/file/…OM3BZM8r/view?usp=sharing


    English

    https://drive.google.com/file/…kxqxg7j3/view?usp=sharing


    73

    Roberto IS0GRB

  • If OBS returns any errors by going to recording, close and reopen OBS.

    Make sure that you have the Intel Graphics drivers installed and the GPU is enabled in the BIOS so it will be detected by Windows.

    hevc quick sync encoder is normally supported with the last CPU generation; if not work please select libx265


    Roberto IS0GRB

  • Hallo all...


    many thanks to Roberto IS0GRB for this information.... i will also publish the informations about my tests in the last months with libx265 H265 encoder for the use with OBS on Windows and Linux.

    So this is without the use of an NVIDIA GPU Card for transmitting H265.


    Note before: (please read)
    You need a modern computer with good CPU to run the software encoder libx265.

    On my Ryzen 3 i could run upto 1280x720x15 in Windows. (with other applications beside e.g. Minitioune RX)
    On my Ryzen 5 i could run upto 1920x180x25 in Windows (but this is the CPU limit)
    On Linux 1280x720x25 is possible on a Core I7-7700T (low power CPU).


    SETUP for WINDOWS:

    On windows you have to install the (old) additional virtual camera plugin


    https://github.com/Fenrirthviti/obs-virtual-cam/releases


    Note: the build in virtual camera in OBS 26 or higher did not work for me....
    The used plugin can be found under TOOLS, VIRTUAL CAM and then select OBS-CAMERA


    The you have to download ffmpeg unzip all files and put it an an directory you want maybe c:\ffmpeg\

    Edit the attached script for your used parameters ...pluto ip.... TS rate and so on.

    Rename the script to an bat_file so that you can run it from command line.

    After activating the virtual camera you can start the attached OBS_TS_to_Pluto_DG0OPK.bat

    In the command window you can see some messages and other debuginformation.

    If all is running right you can look in the Pluto analysis window and go to TX if all is ok.


    SETUP for LINUX (tested with UbuntuMate 20.04):

    In linux you can use libx265 in OBS directly if ffmpeg is installed. Settings are under record and videoencoder libx265.
    The output setting is similar like written from Roberto IS0GRB.


    An alternative way ist also the use of an external script for linux with the virtual camera.

    I wrote me an script for this purpose which you can use the build in virtual camera button on OBS 26 or higher.
    Before starting you have to activate the virtual camera in the OBS GUI.


    Note: depending on your setup you have to modify the device names in the scripts. Refer to google or other searching machine howto find out your device names for audio uand video devices in linux.


    Attached an sample script for linux....which i have used for TS-Rate of 480kbit/s.

    rename OBS_TS_to_pluto_linux.sh it to an .sh and make it runnable before.


    If all is running right you can look in the Pluto analysis window and go to TX if all is ok.


    I hope it helps to others ...


    73 de Mike dg0opk

  • Hello Mike thanks for your interest.

    This method aims not to use any external script that we have already used, moreover the OBS virtual camera does not have an Full-HD source and this does not allow to have an h265 output with the very high quality using a script.

    You can read some posts about this:
    https://obsproject.com/forum/t…grades-resolution.130822/

    The only native h265 method is this, using the encoder directly on OBS, all the others are workarounds that lose quality and therefore also use less cpu.

    I am interested in your tests on OBS libx265 or hevc_qsv (libx265) encoder

    73

    Roberto IS0GRB

  • Hallo Roberto,


    it workes good enough for me .... 1280x720 and SR333/500 Datarate from 80kbit/s -1.3Mbit/s

    (but if i need more I can use the NVIDIA P400 if i want) ...


    NOTE: for a normal DATV QSO we do not NEED FULL HD OR? , lowering the delay would be the goal !


    MY TESTS can be seen on my YT Channel (will be updatet sporadicly)


    https://www.youtube.com/channel/UCZyjrcCis9ZVCrR4hezntzQ


    73 Mike dg0opk

  • "Note before: (please read)

    You need a modern computer with good CPU to run the software encoder libx265.

    On my Ryzen 3 i could run upto 1280x720x15 in Windows. (with other applications beside e.g. Minitioune RX)

    On my Ryzen 5 i could run upto 1920x180x25 in Windows (but this is the CPU limit)

    On Linux 1280x720x25 is possible on a Core I7-7700T (low power CPU)."


    -------------


    Yes Mike encoding in h265 true is not a trivial matter and the cpu works a lot but the quality is much higher. as mentioned you can use all the scripts you want but if you do not code directly from OBS the results are not the same.

    If it works for you can use the hevc_qsv (libx265) encoder which uses less cpu, but as you will see it will also have slightly less quality in h265, but it manages the bit rate control well which is very important, as it is not present in recording.

    Thanks for you informations and share


    73

    Roberto IS0GRB

  • Hello Mike yes certainly a full-hd qso is also superfluous but you can see the difference very much by transmitting movies with a lot of movement or colored images, the difference is abysmal


    73

  • I am however curious and interested in your tests directly on OBS to understand how your pc behaves with libx265

    Hallo (agn)...


    i testet your libx265 information directly from OBS...and switched back to the script....(WINDOWS)

    LINUX (tested before, dec2020)

    other tests:

    INTEL QSV.... test on I7-7700T (LINUX) FULL HD ... on my YT

    INTEL QSV on RYZEN5 (via software emulation mode .... not working on HW suport because of AMD CPU).... not good but it workes


    update:
    AMF_H265 also testet ... looks working but no picture in MiniTioune or VLC ....

    AMF_H264 also testet ... PICTURE in Minitioune is OK and GOOD and in VLC corruptet in LIVE (MT) but OK on TS record replay in VLC



    73 de dg0opk

  • Well that was interesting. I tried to help and Mike immediately took offence. I don't know why and a pity as we might have made progress, but 73 and hope you get it working.


    Mike

    @Mike G0MJW

    i think the forum is not right place to discuss personal differences ...

    if you want to discuss some things .. maybe contact me directly via e-mail (info on my web page) or use the discussion mode in the forum....


    WAITING FOR RESPONSE


    THANK YOU & 73 de DG0OPK

  • That's interesting as I appear to be getting full HD out of the OBS camera plugin, at least according to VLC and it certainly looks full HD. However I tend to use lower symbol rates so the limit becomes the channel.

    Using OBS camera is a fudge though, as it record, RTMP etc. The internal (non-plugin) OBS camera didn't include an audio channel, when I asked it hadn't even crossed their minds that this might be useful.


    It would be good if someone could get inside OBS and get it to produce a TS on it's own, the DATV plugin... the developers seem rather against this whenever I have asked about anything like that though you would think there would be a demand outside amateur use. Maybe it just needs a lot of people to ask.


    Mike

  • I updated the document for H265 in OBS without a dedicated card with the parameter for controlling the bit rate for those who use the libx265 encoder and the guide on how to check if the CPU supports Intel Quick Sync Video graphics functionality, so you can use the hevc_qsv (libx265) encoder which uses much less CPU and has really strict bitrate control

    Italian

    https://drive.google.com/file/…OM3BZM8r/view?usp=sharing

    English

    https://drive.google.com/file/…kxqxg7j3/view?usp=sharing


    73

    Roberto IS0GRB

  • Hi all, i have updated the document on how to transmit in H265 without a dedicated card that you can find at the top of the Pluto page in documents of my patch.

    There are all the explanations on how to make CBR bit rate control work perfectly with both libx265 and hevc_qsv.
    The update is for both Italian and English document.

    https://drive.google.com/file/…OM3BZM8r/view?usp=sharing (italian)

    https://drive.google.com/file/…kxqxg7j3/view?usp=sharing (english)

    The quality of libx265 is really excellent and from tests carried out the encoding with a dedicated nvidia card found it difficult to match the results. The encoding performed on obs is native

    73
    Roberto IS0GRB

  • Hi, i running latest release of OBS on Win7, 32 bit OS and i5 desktop PC.


    Was trying to install these DLL's, without success.

    There is always error report at OBS startup: "avcodec-58.dll is either not designed to run in Windows or it contains an error..."


    Have tried various FFMPEG packages with same result:

    ffmpeg-4.3.2-2021-02-27-full_build-shared

    ffmpeg-4.4.1-full_build-shared

    ffmpeg-5.0.1-full_build-shared


    Any suggestions?

    What version of OBS are you running with these dll's? On 32 or 64 bit Wins?


    73, Mike

  • Info for H265 patch (libx265) on OBS without dedicated card:


    Since version 28.0, the integrity check of files, including DLLs, has been added to OBS

    Those who install OBS v.28 and later will no longer be able to patch H265 and therefore will no longer have libx265 available in the drop-down menu upon registration.

    Those who intend to use H265 with libx265 will have to install the latest version 27, 27.2.4, which can be downloaded at the following address:


    64bit: https://github.com/obsproject/….4-Full-Installer-x64.exe

    32bit: https://github.com/obsproject/….4-Full-Installer-x86.exe


    I suggest disabling the OBS update check in SETTINGS> GENERAL; remove the flag from "Automatically check for updates at startup" and confirm with OK


    73

    Roberto IS0GRB