Source=ProRes; render=low quality
Hi, To make a video, I recorded the screen as mkv/h264; then I encoded it as prores as intermediate and finally I rendered the project as mp4/x265. The parts of the project that are not derived from Prores look good; those that concern Prores are darker and above all of poor quality and illegible writing. Can you tell me why? https://streamable.com/x3ay1r
I found the problem. The project with QHD resolution (native) there are no problems in rendering the ProRes. The project in which I rersized the ProRes at FullHD has great quality decay. What's the best way to scale the resolution from 2560x1440 to 1920x1080 while preserving as much quality as possible?
В сообщении от Wednesday 17 June 2020 17:17:22 Andrea paz написал(а):
I found the problem. The project with QHD resolution (native) there are no problems in rendering the ProRes. The project in which I rersized the ProRes at FullHD has great quality decay. What's the best way to scale the resolution from 2560x1440 to 1920x1080 while preserving as much quality as possible?
From wiki .. https://en.wikipedia.org/wiki/Apple_ProRes "ProRes supports different data rates and different resolutions. All ProRes422-variants use Chroma subsampling of 4:2:2 at 10 Bit Color depth." and in Cinelerra there is prores and prores_ks (using 4444 profile). So, _I think_ you better to choose rgb(a)-float colorspace for your project (watch out for serious slowdown) and may be play with minification algorithm, in settings->preferences->playback A-> scaling equation (second part of it controls minification). For example start of this old (11 years old!) Mozilla bug says: https://bugzilla.mozilla.org/show_bug.cgi?id=486918 "Modern browsers should use only Lanczos or at least Bicubic resizing method for scaling images.... Not Nearest Neighbour or Bilinear, which provide bad quality..." so, my guess try bicubic OR Lanczos (of course, be prepared for additional slow-down)
Thanks, Andrew. I remember a post by Phyllis where she indicated that "scaling equation" only works for playback on the timeline and only for X11, not OpenGL. Anyway I tried to use it (X11 and OpenGL), as well as RGBA-FLOAT, 8 and 10bit, increase bit rate, etc. But nothing works. Scaling always leads to bad results. I have a QHD screen, if I use OBS or SimpleScreenRecorder and tell them to go out with FullHD, the results are not good, everything is blurred. But they're not as bad as the resize inside of CinGG. I'm sure I'm wrong, because I'm ignoring something that's fundamental.
В сообщении от Wednesday 17 June 2020 22:43:45 Andrea paz написал(а):
Thanks, Andrew. I remember a post by Phyllis where she indicated that "scaling equation" only works for playback on the timeline and only for X11, not OpenGL. Anyway I tried to use it (X11 and OpenGL), as well as RGBA-FLOAT, 8 and 10bit, increase bit rate, etc. But nothing works. Scaling always leads to bad results.
I have a QHD screen, if I use OBS or SimpleScreenRecorder and tell them to go out with FullHD, the results are not good, everything is blurred. But they're not as bad as the resize inside of CinGG. I'm sure I'm wrong, because I'm ignoring something that's fundamental.
Are you seeing bad scaling at preview (in compositor) or in final render, when viewed with external player? If you see bad scaling only when Cin stopped at specific frame (not playing timeline) in compositor - try to uncheck 'Use direct x11 render' , for X11 video output method - i think it will lead to always-scaled output for compositor ....?
В сообщении от Wednesday 17 June 2020 22:43:45 Andrea paz написал(а):
Thanks, Andrew. I remember a post by Phyllis where she indicated that "scaling equation" only works for playback on the timeline and only for X11, not OpenGL. Anyway I tried to use it (X11 and OpenGL), as well as RGBA-FLOAT, 8 and 10bit, increase bit rate, etc. But nothing works. Scaling always leads to bad results.
I have a QHD screen, if I use OBS or SimpleScreenRecorder and tell them to go out with FullHD, the results are not good, everything is blurred. But they're not as bad as the resize inside of CinGG. I'm sure I'm wrong, because I'm ignoring something that's fundamental.
Also, two more things: try to check YUV Color Space in settings/peferences/appearance .. It was set to BT.601 for me, but I switched it for BT.709 for prores encoding testing ... Also, mplayer with vdpau (and xv?) output converts things slightly differently ... Compare: uest@slax:/dev/shm$ mplayer test.prores MPlayer SVN-r38192-5.5.0 (C) 2000-2020 MPlayer Team 226 audio & 470 video codecs do_connect: could not connect to socket connect: No such file or directory Failed to open LIRC support. You will not be able to use your remote control. Playing test.prores. libavformat version 58.46.101 (internal) libavformat file format detected. [mov,mp4,m4a,3gp,3g2,mj2 @ 0x57658aa0]Protocol name not provided, cannot determine if input is local or a network protocol, buffers and access patterns cannot be configured optimally without knowing the protocol [lavf] stream 0: video (prores), -vid 0 VIDEO: [apcn] 1280x720 24bpp 29.970 fps 48253.2 kbps (5890.3 kbyte/s) ========================================================================== Opening video decoder: [qtvideo] Quicktime Video decoder sh->ImageDesc not set, try -demuxer mov if this fails. Win32 LoadLibrary failed to load: /usr/lib/codecs/QuickTime.qts unable to load QuickTime.qts VDecoder init failed :( Opening video decoder: [ffmpeg] FFmpeg's libavcodec codec family libavcodec version 58.92.100 (internal) Selected video codec: [ffprores] vfm: ffmpeg (FFmpeg Apple ProRes) ========================================================================== Clip info: major_brand: qt minor_version: 512 compatible_brands: qt encoder: Lavf58.46.101 Load subtitles in ./ Audio: no sound Starting playback... Could not find matching colorspace - retrying with -vf scale... Opening video filter: [scale] Movie-Aspect is 1.78:1 - prescaling to correct movie aspect. [swscaler @ 0x578f2460]bicubic scaler, from yuv422p10le to yuv420p using MMXEXT VO: [vdpau] 1280x720 => 1280x720 Planar YV12 [VD_FFMPEG] DRI failure. Movie-Aspect is 1.78:1 - prescaling to correct movie aspect. VO: [vdpau] 1280x720 => 1280x720 Planar YV12 <------ V: 0.0 0/ 0 ??% ??% ??,?% 0 0 [VD_FFMPEG] DRI failure. V: 17.0 0/ 0 3% 38% 0.0% 0 0 V: 29.7 0/ 0 2% 39% 0.0% 0 0 vs guest@slax:/dev/shm$ mplayer test.prores -vo gl MPlayer SVN-r38192-5.5.0 (C) 2000-2020 MPlayer Team 226 audio & 470 video codecs do_connect: could not connect to socket connect: No such file or directory Failed to open LIRC support. You will not be able to use your remote control. Playing test.prores. libavformat version 58.46.101 (internal) libavformat file format detected. [mov,mp4,m4a,3gp,3g2,mj2 @ 0x57691aa0]Protocol name not provided, cannot determine if input is local or a network protocol, buffers and access patterns cannot be configured optimally without knowing the protocol [lavf] stream 0: video (prores), -vid 0 VIDEO: [apcn] 1280x720 24bpp 29.970 fps 48253.2 kbps (5890.3 kbyte/s) [gl] using extended formats. Use -vo gl:nomanyfmts if playback fails. ========================================================================== Opening video decoder: [qtvideo] Quicktime Video decoder sh->ImageDesc not set, try -demuxer mov if this fails. Win32 LoadLibrary failed to load: /usr/lib/codecs/QuickTime.qts unable to load QuickTime.qts VDecoder init failed :( Opening video decoder: [ffmpeg] FFmpeg's libavcodec codec family libavcodec version 58.92.100 (internal) Selected video codec: [ffprores] vfm: ffmpeg (FFmpeg Apple ProRes) ========================================================================== Clip info: major_brand: qt minor_version: 512 compatible_brands: qt encoder: Lavf58.46.101 Load subtitles in ./ Audio: no sound Starting playback... Movie-Aspect is 1.78:1 - prescaling to correct movie aspect. VO: [gl] 1280x720 => 1280x720 Planar 422P 10-bit little-endian Mesa: User error: GL_INVALID_ENUM in glTexParameter(pname=GL_TEXTURE_STORAGE_HINT_APPLE) [VD_FFMPEG] DRI failure. Movie-Aspect is 1.78:1 - prescaling to correct movie aspect. VO: [gl] 1280x720 => 1280x720 Planar 422P 10-bit little-endian <---- V: 0.0 0/ 0 ??% ??% ??,?% 0 0 [VD_FFMPEG] DRI failure. V: 29.7 0/ 0 2% 50% 0.0% 0 0 Also, now exactly you resized your sources? I only used 'auto scale' plugin, on 1080p h264 file, while setting project size to 720p/rgba float/lanczos scaling .. of course it is blurred .... But not sure if it supposed to be *that* blurry. https://yadi.sk/i/uHnAhq2WNzox_w - prores encode, 170 Mb for 30 seconds .... Source file for this one (I cut 30 sec starting from 1 min 03 sec, up to 1 m 33 sec, roughly): https://yadi.sk/i/DGYzIbF_HdLDBA
Sorry I'm late. The colour space is always set at bt709. I get the worst results when I do the downsize from Resources --> Info --> resize. Big artifacts come out that, I imagine, are produced by the use of "nearest". With all the other scaling methods I get a blurred result (almost acceptable, but I don't like it). Like the one you showed me. If I see bad scaling in compositor, then I also see it in rendering (with Vlc or mpv). If you have time/will, try a test. Take a prores and try to render it in prores again. I get a very dark result, like there was a Subtract or Divide overlay...
В сообщении от Friday 19 June 2020 00:20:06 Andrea paz написал(а):
Sorry I'm late. The colour space is always set at bt709. I get the worst results when I do the downsize from Resources --> Info --> resize. Big artifacts come out that, I imagine, are produced by the use of "nearest". With all the other scaling methods I get a blurred result (almost acceptable, but I don't like it). Like the one you showed me. If I see bad scaling in compositor, then I also see it in rendering (with Vlc or mpv). If you have time/will, try a test. Take a prores and try to render it in prores again. I get a very dark result, like there was a Subtract or Divide overlay...
For me reencoding looks ok: https://yadi.sk/i/x9rNV-gPQD4nQw (nearly 250 mb!) vs https://yadi.sk/i/wqpB27EGBGfgjg (nearly 260 mb!) BUT I use ffmpeg from git, not 4.2 ... this is re-encoding done with rgba-8 bit project, not rgba-float: ANG=C cin Cinelerra Infinity - built: Jun 15 2020 06:05:01 git://git.cinelerra-gg.org/goodguy/cinelerra.git (c) 2006-2019 Heroine Virtual Ltd. by Adam Williams 2007-2020 mods for Cinelerra-GG by W.P.Morrow aka goodguy Cinelerra is free software, covered by the GNU General Public License, and you are welcome to change it and/or distribute copies of it under certain conditions. There is absolutely no warranty for Cinelerra. RenderFarmClient::main_loop: client started Render::render_single: Session finished. ** rendered 901 frames in 39.937 secs, 22.561 fps Also, watch out for interlacing in project and asset .. (I set both to not interlaced) Also, look for exact prores codec setting - by default I have matroska_proxy.prores, not sure if it is default or one of my experiments .. I set it back to prores.prores (so you can see textual annotation of various profiles) Probably color-space must be set to, especially (in encoder settings) because right now I can't see it set? file path: /dev/shm/reencode-test.prores 262381282 bytes info: format: mov,mp4,m4a,3gp,3g2,mj2 1 video stream vid0 (0), id 0x000093: video1 prores 1920x1080 29.97 pix yuv422p10le color space:unknown/ range:tv 901+0 frms 30.06 secs 0:00:30.06 major_brand=qt minor_version=512 compatible_brands=qt encoder=Lavf58.46.101 strange, even if I put those encoding parameters via dialogs: colorspace=bt709 color_range=jpeg color_primaries=bt709 color_trc=bt709 I still get color space:unknown/ range:tv in info ...
participants (2)
-
Andrea paz -
Andrew Randrianasulu