Built a new PC, performance worse than old clunker....

Digital ATV - The latest generation, cutting edge ATV - Please discuss it all here.
Forum rules
This forum is run by the BATC (British Amateur Television Club), it is service made freely available to all interested parties, please do not abuse this privilege.

Thank you
Basil
Posts: 291
Joined: Tue Sep 10, 2013 7:28 pm

Built a new PC, performance worse than old clunker....

Post by Basil » Mon May 30, 2022 10:41 am

I built a new pc to dedicate to DATV. I got a good deal off a customer who owns a big PC and peripherals company, I've done some favours for. I used the following new parts to build this PC.

A Gigabyte motherboard, an AMD Ryzen 9 5950X processor, 32 GB of fast RAM and a Samsung 980 Pro NVMe SSD. I already had a used graphics card acquired from another friend, which I have not used before, an EVGA 1070GTX. The power supply is a new Corsair 750W jobbie, in case I need one of these power hungry and expensive high end cards, which apparently many people with beautiful signals are not needing...

Whilst for many things this new PC is blisteringly fast, for the purpose I built it, it seems pretty terrible... :( Maybe it's not the PC itself though.

If I TX using DATV-Easy V1.25 I can just about manage a stutter free H264, but it's far from perfect, with drop outs et cetera. Trying H256 the results are dire, with many seemingly random drop outs and freezes. OS is Windows 10 64 bit pro. I used Task Manager to look at performance levels and I see the odd graphics gliitch, although graphics usage is generally very low, usually under 11%. Ethernet is similar, the odd glitch but generally looks effortless.

I see the writer of DATV-Easy warns against expecting perfection with a Pluto at the dish, on a LAN with a LAN to USB converter to the Pluto. This is in fact my set up. PC in the shack, about 25 to 30 feet quality LAN cable to the box under the dish. LAN to USB ("Pluggable" brand) converter. Pluto -- AD pre amp -- SG Labs 20W PA. Big PF Andrew dish, POTY fed by short LMR400 co ax.

Porstsdown 4 fares much better and seems to be as it was with my old clunker low spec i5 PC, but I assume, as I am pretty naff with PC stuff, that's as expected as the main PC is doing very little, and it's the Raspberry Pi that is doing the lifting?

I was looking forward to H265 with few to no glitches but find myself in the embarrassing postion of "all the gear, no idea". Help please, how do I begin trouble shooting? I don't want to keep throwing stuff at this problem. blindly.

I discovered the afore unknown to me addition to Minitioune software, the Data Reader software. I set up a TX of a video on my PC in MP4 format, using DATV-Easy V2.5 set to NVIDI encoding in H265 and the 1070GTX card, and set data recording going. It shows glitches, as and when the drop outs occcur, but I am not technically adept enough to begin to know if it helps dioagnose the issues, or even if it's a suitable tool? In case it is able to throw useful light, I will attach the last data file. I also attach a glitch as seen in Windows Task Manager.

I appreciate any suggestions to efficiently diagnose what's occurring, thanks. If I was to blindly guess, I would say I suspect either the ethernet to USB stuff, or the graphics card itself, or its set up is faulty / wrong. But hey, I am a glorified mechanic, not a video engineer :)

One other, possibly totally unrealted thing I find strange is when, for example, i was watching someone in Wales TX'ing before yesterdays World Wide DATV net, on the Minitioune receiver his lip sync was totally out, and the picture breaking up, but if I set the Minitione software to send a UDP stream, he looked and sounded perfect using VLC... What's happening there? :)
Attachments
2E0ILY_TiouneData_30_05_2022_11h36mn52s.zip
(1.51 KiB) Downloaded 136 times
glitch.jpg
glitch.jpg (406.18 KiB) Viewed 3162 times

g0mjw
Posts: 2311
Joined: Sat Sep 20, 2014 9:15 am

Re: Built a new PC, performance worse than old clunker....

Post by g0mjw » Mon May 30, 2022 12:21 pm

That's not right. I think you might need to adjust DATV Easy. Mind you, 125kb/s is a low rate so you can't expect perfection.

Here is what I was using yesterday on the net:

c:\ffmpeg\bin\ffmpeg -f dshow -i video="OBS-Camera" -thread_queue_size 512 -f dshow -i audio="OBS-Audio" -vcodec hevc_nvenc -s 1920x1080 -bf 0 -pix_fmt yuv420p -b:v 380k -r 15 -preset slow -profile:v main -rc cbr_hq -rc-lookahead 5 -acodec aac -aac_coder twoloop -ar 48000 -ac 1 -b:a 32k -f mpegts -muxrate 495k -streamid 0:256 -streamid 1:257 -metadata service_provider="2E0ILY" -metadata service_name="Bazil" -max_delay 2500000 -pcr_period 40 -pat_period 0.4 "udp://192.168.1.46:8282?pkt_size=1316"

It is a command - run from the command prompt. The easiest method is to write it into a .bat file and click on it.

It relies on ffmpeg being in c:\ffmpeg\bin and OBS with the OBS camera plugin (not the built in OBS camera) - you need to substitute the IP address of your Pluto which I can't tell from the screenshot. It is set up assuming 333ks and 3/4 FEC. For lower FEC the parameters will need to be changed. It works will full HD at 15 FPS.

e.g.
https://github.com/GyanD/codexffmpeg/releases/tag/5.0.1

https://obsproject.com/forum/resources/ ... alcam.949/

Also make sure you have the nvidia drivers...

Basil
Posts: 291
Joined: Tue Sep 10, 2013 7:28 pm

Re: Built a new PC, performance worse than old clunker....

Post by Basil » Mon May 30, 2022 1:00 pm

Thanks Mike. Firstly, I am assuming I set frequency and power et cetra in the control panel for the Pluto from F5OEO? And set operating mode to UDP?

I made a batch file I think, but to be sure just ran the script as Administrator on the command line. It returned this error. OBS was running an MP4 video.

C:\Windows\system32>c:\ffmpeg\bin\ffmpeg -f dshow -i video="OBS-Camera" -thread_queue_size 512 -f dshow -i audio="OBS-Audio" -vcodec hevc_nvenc -s 1920x1080 -bf 0 -pix_fmt yuv420p -b:v 380k -r 15 -preset slow -profile:v main -rc cbr_hq -rc-lookahead 5 -acodec aac -aac_coder twoloop -ar 48000 -ac 1 -b:a 32k -f mpegts -muxrate 495k -streamid 0:256 -streamid 1:257 -metadata service_provider="2E0ILY" -metadata service_name="Basil" -max_delay 2500000 -pcr_period 40 -pat_period 0.4 "udp://192.168.178.20:8282?pkt_size=1316"
ffmpeg version 4.4-essentials_build-www.gyan.dev Copyright (c) 2000-2021 the FFmpeg developers
built with gcc 10.2.0 (Rev6, Built by MSYS2 project)
configuration: --enable-gpl --enable-version3 --enable-static --disable-w32threads --disable-autodetect --enable-fontconfig --enable-iconv --enable-gnutls --enable-libxml2 --enable-gmp --enable-lzma --enable-zlib --enable-libsrt --enable-libssh --enable-libzmq --enable-avisynth --enable-sdl2 --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxvid --enable-libaom --enable-libopenjpeg --enable-libvpx --enable-libass --enable-libfreetype --enable-libfribidi --enable-libvidstab --enable-libvmaf --enable-libzimg --enable-amf --enable-cuda-llvm --enable-cuvid --enable-ffnvcodec --enable-nvdec --enable-nvenc --enable-d3d11va --enable-dxva2 --enable-libmfx --enable-libgme --enable-libopenmpt --enable-libopencore-amrwb --enable-libmp3lame --enable-libtheora --enable-libvo-amrwbenc --enable-libgsm --enable-libopencore-amrnb --enable-libopus --enable-libspeex --enable-libvorbis --enable-librubberband
libavutil 56. 70.100 / 56. 70.100
libavcodec 58.134.100 / 58.134.100
libavformat 58. 76.100 / 58. 76.100
libavdevice 58. 13.100 / 58. 13.100
libavfilter 7.110.100 / 7.110.100
libswscale 5. 9.100 / 5. 9.100
libswresample 3. 9.100 / 3. 9.100
libpostproc 55. 9.100 / 55. 9.100
[swscaler @ 000001d610784ec0] Warning: data is not aligned! This can lead to a speed loss
Input #0, dshow, from 'video=OBS-Camera':
Duration: N/A, start: 13755.751000, bitrate: N/A
Stream #0:0: Video: rawvideo (YUY2 / 0x32595559), yuyv422, 1920x1080, 25 fps, 25 tbr, 10000k tbn, 10000k tbc
[dshow @ 000001d61077fc80] real-time buffer [OBS-Camera] [video input] too full or near too full (136% of size: 3041280 [rtbufsize parameter])! frame dropped!
Guessed Channel Layout for Input Stream #1.0 : stereo
Input #1, dshow, from 'audio=OBS-Audio':
Duration: N/A, start: 13755.847000, bitrate: 1411 kb/s
Stream #1:0: Audio: pcm_s16le, 44100 Hz, stereo, s16, 1411 kb/s
Stream mapping:
Stream #0:0 -> #0:0 (rawvideo (native) -> hevc (hevc_nvenc))
Stream #1:0 -> #0:1 (pcm_s16le (native) -> aac (native))
Press [q] to stop, [?] for help
[hevc_nvenc @ 000001d6107f3c80] Specified rc mode is deprecated.
[hevc_nvenc @ 000001d6107f3c80] Use -rc constqp/cbr/vbr, -tune and -multipass instead.
[hevc_nvenc @ 000001d6107f3c80] InitializeEncoder failed: invalid param (8): Preset P1 to P7 not supported with older 2 Pass RC Modes(CBR_HQ, VBR_HQ) and cbr lowdelayEnable NV_ENC_RC_PARAMS::multiPass flag for two pass encoding and set
Error initializing output stream 0:0 -- Error while opening encoder for output stream #0:0 - maybe incorrect parameters such as bit_rate, rate, width or height
Conversion failed!

C:\Windows\system32>


~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

I am way, way outside my comfort zone as to what the returned stuff may mean,but can see "something" is wrong.... :) Something about OBS virtual camera buffer overflow?

g0mjw
Posts: 2311
Joined: Sat Sep 20, 2014 9:15 am

Re: Built a new PC, performance worse than old clunker....

Post by g0mjw » Mon May 30, 2022 4:25 pm

[hevc_nvenc @ 000001d6107f3c80] InitializeEncoder failed: invalid param (8): Preset P1 to P7 not supported with older 2 Pass RC Modes(CBR_HQ, VBR_HQ) and cbr lowdelayEnable NV_ENC_RC_PARAMS::multiPass flag for two pass encoding and set

Try using an older version of ffmpeg, looks like some changes have broken things. Also was it the full version ? It looks like the essentials version which may not have all the options.

Mike

g0mjw
Posts: 2311
Joined: Sat Sep 20, 2014 9:15 am

Re: Built a new PC, performance worse than old clunker....

Post by g0mjw » Mon May 30, 2022 4:39 pm

I just tried it here and it worked fine. I have an older version of ffmpeg, not that old but it doesn't give those errors. The problem is in the way the video profile is called. To find out the new way, (according to the error message you need to replace -rc cbr_hq commands with ones like -rc constqp/cbr/vbr, -tune and -multipass instead. I would try -rc cbr and see if that works before working with the -tune etc. Or, use an older version of ffmpeg...



C:\ffmpeg\bin>
C:\ffmpeg\bin>c:\ffmpeg\bin\ffmpeg -f dshow -i video="OBS-Camera" -thread_queue_size 512 -f dshow -i audio="OBS-Audio" -vcodec hevc_nvenc -s 1920x1080 -bf 0 -pix_fmt yuv420p -b:v 380k -r 15 -preset slow -profile:v main -rc cbr_hq -rc-lookahead 5 -acodec aac -aac_coder twoloop -ar 48000 -ac 1 -b:a 32k -f mpegts -muxrate 495k -streamid 0:256 -streamid 1:257 -metadata service_provider="2E0ILY" -metadata service_name="Bazil" -max_delay 2500000 -pcr_period 40 -pat_period 0.4 "udp://192.168.1.46:8282?pkt_size=1316"
ffmpeg version N-94664-g0821bc4eee Copyright (c) 2000-2019 the FFmpeg developers
built with gcc 9.1.1 (GCC) 20190807
configuration: --enable-gpl --enable-version3 --enable-sdl2 --enable-fontconfig --enable-gnutls --enable-iconv --enable-libass --enable-libdav1d --enable-libbluray --enable-libfreetype --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libopus --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libtheora --enable-libtwolame --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libzimg --enable-lzma --enable-zlib --enable-gmp --enable-libvidstab --enable-libvorbis --enable-libvo-amrwbenc --enable-libmysofa --enable-libspeex --enable-libxvid --enable-libaom --enable-libmfx --enable-amf --enable-ffnvcodec --enable-cuvid --enable-d3d11va --enable-nvenc --enable-nvdec --enable-dxva2 --enable-avisynth --enable-libopenmpt
libavutil 56. 33.100 / 56. 33.100
libavcodec 58. 55.101 / 58. 55.101
libavformat 58. 31.104 / 58. 31.104
libavdevice 58. 9.100 / 58. 9.100
libavfilter 7. 58.101 / 7. 58.101
libswscale 5. 6.100 / 5. 6.100
libswresample 3. 6.100 / 3. 6.100
libpostproc 55. 6.100 / 55. 6.100
[swscaler @ 0000025cafda6980] Warning: data is not aligned! This can lead to a speed loss
Input #0, dshow, from 'video=OBS-Camera':
Duration: N/A, start: 3530.545000, bitrate: N/A
Stream #0:0: Video: rawvideo (YUY2 / 0x32595559), yuyv422, 1920x1080, 30 fps, 30 tbr, 10000k tbn, 10000k tbc
[dshow @ 0000025cafd9ca40] real-time buffer [OBS-Camera] [video input] too full or near too full (136% of size: 3041280 [rtbufsize parameter])! frame dropped!
Last message repeated 4 times
Guessed Channel Layout for Input Stream #1.0 : stereo
Input #1, dshow, from 'audio=OBS-Audio':
Duration: N/A, start: 3530.752000, bitrate: 1411 kb/s
Stream #1:0: Audio: pcm_s16le, 44100 Hz, stereo, s16, 1411 kb/s
Stream mapping:
Stream #0:0 -> #0:0 (rawvideo (native) -> hevc (hevc_nvenc))
Stream #1:0 -> #0:1 (pcm_s16le (native) -> aac (native))
Press [q] to stop, [?] for help
Output #0, mpegts, to 'udp://192.168.1.46:8282?pkt_size=1316':
Metadata:
service_provider: 2E0ILY
service_name : Bazil
encoder : Lavf58.31.104
Stream #0:0: Video: hevc (hevc_nvenc) (Main), yuv420p(progressive), 1920x1080, q=-1--1, 380 kb/s, 15 fps, 90k tbn, 15 tbc
Metadata:
encoder : Lavc58.55.101 hevc_nvenc
Side data:
cpb: bitrate max/min/avg: 0/0/380000 buffer size: 760000 vbv_delay: 18446744073709551615
Stream #0:1: Audio: aac (LC), 48000 Hz, mono, fltp, 32 kb/s
Metadata:
encoder : Lavc58.55.101 aac
[dshow @ 0000025cafd9ca40] real-time buffer [OBS-Camera] [video input] too full or near too full (136% of size: 3041280 [rtbufsize parameter])! frame dropped!
[dshow @ 0000025cafd9ca40] Thread message queue blocking; consider raising the thread_queue_size option (current value: 8)
[dshow @ 0000025cafd9ca40] real-time buffer [OBS-Camera] [video input] too full or near too full (136% of size: 3041280 [rtbufsize parameter])! frame dropped!
[dshow @ 0000025cafd9ca40] real-time buffer [OBS-Camera] [video input] too full or near too full (136% of size: 3041280 [rtbufsize parameter])! frame dropped!
Last message repeated 1 times
[dshow @ 0000025cafd9ca40] real-time buffer [OBS-Camera] [video input] too full or near too full (136% of size: 3041280 [rtbufsize parameter])! frame dropped!
Last message repeated 1 times
frame= 804 fps= 13 q=22.0 Lsize= 3753kB time=00:01:02.06 bitrate= 495.4kbits/s dup=0 drop=792 speed= 1x
video:62kB audio:11kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 5017.509277%
[dshow @ 0000025cafd9ca40] real-time buffer [OBS-Camera] [video input] too full or near too full (136% of size: 3041280 [rtbufsize parameter])! frame dropped!
[aac @ 0000025cafe2dec0] Qavg: 65514.754
[dshow @ 0000025cafd9ca40] real-time buffer [OBS-Camera] [video input] too full or near too full (136% of size: 3041280 [rtbufsize parameter])! frame dropped!
Exiting normally, received signal 2.

C:\ffmpeg\bin>

Basil
Posts: 291
Joined: Tue Sep 10, 2013 7:28 pm

Re: Built a new PC, performance worse than old clunker....

Post by Basil » Mon May 30, 2022 5:00 pm

Thanks again, I'd be far more comfortable leaving the script alone and using the same version of ffmpeg that you are using to be frank. But what nonsense is this? ;) ffmpeg version N-94664-g0821bc4eee Could a more obtuse version scheme be devised, I mean, that's ridiculous :) What's the chances of you bunging your version somewhere I can download it from, or me providing an ftp login to my server? I think I could very easily ****** things up playing with the script! I Googled that version but can see no obvious means of downloading legacy versions.

EDIT: I did notice my version was the "simple" one and downloaded and tested the full one, but it returned the exact same errors that wasn't a fix, you seem to have nailed it with the fact you are running an earlier version, although Linux based stuff always appears to me to be written by geniuses but ones with not the slightest interest in documentation nor backwards compatibility, I have tried Linux several times but always come away with a headache the equivalent of a night out with the late Oliver Reed.
Last edited by Basil on Mon May 30, 2022 5:12 pm, edited 1 time in total.

g0mjw
Posts: 2311
Joined: Sat Sep 20, 2014 9:15 am

Re: Built a new PC, performance worse than old clunker....

Post by g0mjw » Mon May 30, 2022 5:08 pm

After a bit of testing it is clear the issue is the latest version 5 of ffmpeg has broken compatability with older scripts. Just use an earlier version 4. Mine is 4.3.1 from late 2020 and is happy. I could not get the newer version to work with my drivers and they are not that old.

https://www.ffmpeg.org/download.html and try version 4.4.2 and then 4.3.1 if it doesn't work. Software developers love to change things.

Basil
Posts: 291
Joined: Tue Sep 10, 2013 7:28 pm

Re: Built a new PC, performance worse than old clunker....

Post by Basil » Mon May 30, 2022 5:13 pm

OK, our posts and similar thoughts have crossed, I'll play later, thanks and have good evening. Thank you.

G8KOE
Posts: 178
Joined: Fri Aug 09, 2019 8:14 am

Re: Built a new PC, performance worse than old clunker....

Post by G8KOE » Mon May 30, 2022 8:03 pm

Hi,
I had some problems and dropped the _hq
Just used rc=cbr
I don't understand what _hq does but everything worked after deleting it.

73's
Martin

g0mjw
Posts: 2311
Joined: Sat Sep 20, 2014 9:15 am

Re: Built a new PC, performance worse than old clunker....

Post by g0mjw » Tue May 31, 2022 7:33 am

The cbr_hq is the high quality switch to the constant bit rate command, add this to make your images look better at the expense of more GPU/Latency.

This is a moving target as the codecs update, but we probably need to move to the new presets and switches.

https://docs.nvidia.com/video-technolog ... ion-guide/

We want high quality, constant bit rate and low latency. Mutually exclusive.

OLd version -vcodec hevc_nvenc -s 1920x1080 -bf 0 -pix_fmt yuv420p -b:v 380k -r 15 -preset slow -profile:v main -rc cbr_hq -rc-lookahead 5

The closest new setting seems to be preset 4 for pascal architecture GPUs like the 1070. I have not tried it yet.

Mike

Post Reply

Return to “DATV - Digital ATV”