Welcome to Doom9's Forum, THE in-place to be for everyone interested in DVD conversion.

Before you start posting please read the forum rules. By posting to this forum you agree to abide by the rules.

 

Go Back   Doom9's Forum > Video Encoding > New and alternative video codecs
Register FAQ Calendar Today's Posts Search

Reply
 
Thread Tools Search this Thread Display Modes
Old 4th July 2015, 21:45   #381  |  Link
poisondeathray
Registered User
 
Join Date: Sep 2007
Posts: 5,377
You should definitely test end to end what kind of results you are getting. For 10bit tests, using a gradient makes it easy to see the problem

I usually start on the ends (input and final output), and if something is wrong, work towards the middle tracing each step to find out where something went wrong. For some software / host applications there is no solution except to use their "preferred" uncompressed format (for some applications, they do not handle huffyuv, lagarith, ut video , magic yuv , etc... as lossless YUV ,or at the correct bit depth). That' s not really the codec developers fault IMO

Quote:
I prefer the FourCC that was used ...
Maybe you missed, it but the point of my earlier "offtopic" statement was that some software handle certain fourcc's better than others. I would argue it matters less what you prefer - I would argue you should use what works better in that specific workflow or software title. In windows software , for YUV 4:2:2, UYVY is almost always the "preferred" format . YUY2 almost always gets converted to RGB internally. Similarly for 4:2:0 , IYUV (and sometimes I420) is usually the preferred format . YV12 almost always gets converted to RGB internally
poisondeathray is offline   Reply With Quote
Old 5th July 2015, 18:21   #382  |  Link
Ignus2
Registered User
 
Join Date: Dec 2005
Posts: 250
I now have just a very little time to answer, but I write as the discussion begins to touch on too many subjects concerning various codecs and YUV formats in ingest systems, which does not directly concern codec development, but rather workflow and system setup, so I think it is getting slightly offtopic.

May I suggest to start a new thread in some other category on doom9 and continue the discussion there? That way maybe more people would be able to provide feedback as well!

I also would very much like to reflect upon the recent posts, but unfortunately I cannot do that now, as I'm not at home for a few weeks.

Thanks!

Greets,
I.
__________________
http://magicyuv.com - MagicYUV: a new fast lossless video codec for the 4K and multi-core era...
Ignus2 is offline   Reply With Quote
Old 20th July 2015, 13:49   #383  |  Link
easy2Bcheesy
Moderator
 
easy2Bcheesy's Avatar
 
Join Date: Feb 2002
Posts: 643
Hi,

Just bought a Blackmagic Intensity 4K for capturing PS4, Xbox One etc at 1080p60.

Annoyingly the only way to get a picture via DirectShow is using the r210 colourspace - which does not seem to be supported by any codec! Would it be possible to incorporate downsampling support for r210 into MagicYUV?
easy2Bcheesy is offline   Reply With Quote
Old 20th July 2015, 14:39   #384  |  Link
raffriff42
Retried Guesser
 
raffriff42's Avatar
 
Join Date: Jun 2012
Posts: 1,373
Quote:
Originally Posted by easy2Bcheesy View Post
r210 colourspace - which does not seem to be supported by any codec!
ffmpeg supports it -
Code:
C:\ffmpeg\bin>ffmpeg -codecs | find "r210"
ffmpeg version N-70664-ga47c2a1 Copyright (c) 2000-2015 the FFmpeg developers
[...]
 DEVI.S r210                 Uncompressed RGB 10-bit

C:\ffmpeg\bin>
(and therefore probably ffmpegsource for avisynth & ffmpeg input for virtualdub)
raffriff42 is offline   Reply With Quote
Old 20th July 2015, 15:13   #385  |  Link
easy2Bcheesy
Moderator
 
easy2Bcheesy's Avatar
 
Join Date: Feb 2002
Posts: 643
Would that work for real-time capture though?
easy2Bcheesy is offline   Reply With Quote
Old 20th July 2015, 15:31   #386  |  Link
ChiDragon
Registered User
 
ChiDragon's Avatar
 
Join Date: Sep 2005
Location: Vancouver
Posts: 600
Quote:
Originally Posted by easy2Bcheesy View Post
Annoyingly the only way to get a picture via DirectShow is using the r210 colourspace
Sadly, a quote from Blackmagic support indicates that lack of any RGB -> YUV conversion is a deliberate part of the architecture, so it seems they will never support it. Sure would be nice if they added a note somewhere in the specs that they removed a popular feature (available with nearly every other HDMI capture device) as part of this "upgrade" from the Intensity Pro.

Quote:
If you are capturing from HDMI, please note that the behaviour of the Intensity Pro 4K is a bit different to the Intensity Pro.
DeckLink 4K devices (which include the Intensity Pro 4K) require an application to explicitly set the pixel format for capture over HDMI that matches the video source. If you specified YUV for capture and the feed was RGB, the older Intensity Pro would automatically convert the pixel format.
However the Intensity Pro 4K does not. So if you have a RGB HDMI video source, you need to set capture for RGB
(bmdFormat10BitRGB) with the Intensity Pro 4K, however you can get away with selecting 8-bit YUV (bmdFormat8BitYUV) or 10-bit YUV (bmdFormat10BitYUV) with the Intensity Pro.
The ridiculous thing about this is that the card actually does support conversion from RGB HDMI sources if the resolution is 480p/i! Probably 576p/i too though I haven't tested. Media Express lets you select every format with no problem when resolution is "NTSC", while the DirectShow interface actually forces you to capture "NTSC RGB" in YUV as there is no driver support for RGB capture at NTSC size.

However, there is good news. I discovered yesterday that the v10.4.1 driver/firmware update added support for "A RGB32" if you use the "Blackmagic WDM Capture" interface instead of "Decklink Video Capture" -- so thank goodness, we no longer have to use 10-bit RGB to capture 8-bit RGB sources... (v10.4.2 was released on Tuesday but I haven't tried it yet.)

It's still a bit of a pain in the ass to get the RGB32 capture working in VirtualDub. The Capture Pin for this driver version has a bug where the Frame Rate for HDYC, A RGB32, and r210 reverts to 25.000 no matter what you pick. The workaround is this:
  1. Video -> Capture filter.
  2. Video Format -> Override Video Mode.
  3. Manually set Display Mode to the exact resolution/frame rate and Pixel Format to "8 bit BGRA".
  4. Video -> Capture Pin.
  5. Manually type in the exact frame rate and hit Apply or OK.
  6. At this point, for me there is no often no image at all. Toggle from Video -> Overlay to Video -> Preview or vice-versa to restore the image.
  7. Now you can set to Overlay or Preview mode, whichever you prefer, and capture with any codec that supports RGB32, including those that convert to YUV.
  8. The overridden Video Mode is not saved, but all other settings are. When you close and reopen VirtualDub's capture mode, you will need to manually change the settings in Capture filter again, but you should then immediately get the image without any more steps.

I'm still trying to figure out which lossless codec and Disk I/O buffer settings might actually allow me to capture to my regular 5400RPM 4TB SATA drive without dropped frames when there are complex scenes.

Last edited by ChiDragon; 20th July 2015 at 15:38.
ChiDragon is offline   Reply With Quote
Old 20th July 2015, 15:46   #387  |  Link
easy2Bcheesy
Moderator
 
easy2Bcheesy's Avatar
 
Join Date: Feb 2002
Posts: 643
Lossless 4:2:2 can hit a max (in my experience) 140MB/s, which may well be beyond your 5400rpm drive.

I am on Blackmagic 10.4.2 and alas I don't see any Blackmagic WDM capture interface in either VirtualDub or (my preferred tool), AmaRecTV.

I'm on Windows 8.1 if that makes any difference.

EDIT: 10.4.1 has the correct filter - giving it a go!

EDIT 2: Okay, so it works in VirtualDub, which is OK. I don't have to change the capture FPS either, it defaults to 59.94. However, turning on real-time audio preview kills the video preview in all modes. I don't suppose you could take a look at AmaRecTV?

Last edited by easy2Bcheesy; 20th July 2015 at 16:11.
easy2Bcheesy is offline   Reply With Quote
Old 20th July 2015, 16:07   #388  |  Link
ChiDragon
Registered User
 
ChiDragon's Avatar
 
Join Date: Sep 2005
Location: Vancouver
Posts: 600
I seem to be averaging only 77MB/sec when capturing RGB -> lossless 4:2:2 but still getting random frame drops. Lossless RGB is more in the 90-100 range and giving me more "consistent" drops. The drive has been benchmarked with a min write speed of 83.2 and average 122 (it's actually 5900RPM, not that it makes a difference). It could understand if it was suddenly dropping off because it was hitting the far edge of the disk, but it's the random nature that confuses me.

AmaRecTV showed all the various pixel types so it seemed like it would be easier, but when I tried to capture it just failed with some error message. I didn't bother to troubleshoot.

They really removed it with 10.4.2? Ridiculous. That's like how RGB capture was broken completely with 10.4 after working okay with 10.3.7. Glad I didn't hop on the update bandwagon or I would have missed seeing this feature entirely.

Quote:
Originally Posted by easy2Bcheesy View Post
EDIT 2: Okay, so it works in VirtualDub, which is OK. I don't have to change the capture FPS either, it defaults to 59.94. However, turning on real-time audio preview kills the video preview in all modes.
Hmm, there is no difference for me when I "Enable audio playback" (they both display with a very poor frame rate for me when fed 1080p). Audio is set to "Capture device" and the format is 16-bit stereo. I'm way back at VirtualDub v1.9.10 but I doubt that gives me any advantage.

Last edited by ChiDragon; 20th July 2015 at 16:26.
ChiDragon is offline   Reply With Quote
Old 20th July 2015, 20:26   #389  |  Link
Bloax
The speed of stupid
 
Bloax's Avatar
 
Join Date: Sep 2011
Posts: 317
Quote:
Originally Posted by ChiDragon View Post
IThe drive has been benchmarked with a min write speed of 83.2 and average 122 (it's actually 5900RPM, not that it makes a difference). I could understand if it was suddenly dropping off because it was hitting the far edge of the disk, but it's the random nature that confuses me.
The random nature is likely explained by the framedrops occuring when you hit a slow sector on the drive.
And yes, sectors are not equal on a drive - especially later in their life.

You can take a look at it by running a "read" surface test using HDDScan.
Bloax is offline   Reply With Quote
Old 20th July 2015, 20:45   #390  |  Link
benwaggoner
Moderator
 
Join Date: Jan 2006
Location: Portland, OR
Posts: 4,770
This is definitely a job for RAID.
__________________
Ben Waggoner
Principal Video Specialist, Amazon Prime Video

My Compression Book
benwaggoner is offline   Reply With Quote
Old 23rd July 2015, 21:26   #391  |  Link
kolak
Registered User
 
Join Date: Nov 2004
Location: Poland
Posts: 2,843
Quote:
Originally Posted by easy2Bcheesy View Post
Hi,

Just bought a Blackmagic Intensity 4K for capturing PS4, Xbox One etc at 1080p60.

Annoyingly the only way to get a picture via DirectShow is using the r210 colourspace - which does not seem to be supported by any codec! Would it be possible to incorporate downsampling support for r210 into MagicYUV?
Magicyuv has native support for r210 pixel format (and also AJA's R10k which is almost the same), but not in public/free version. This is one of the pro features which I convinced Ignus2 to implement.

You could try to force BM to output RGB 8bit instead of 10bit.
kolak is offline   Reply With Quote
Old 26th July 2015, 17:47   #392  |  Link
ChiDragon
Registered User
 
ChiDragon's Avatar
 
Join Date: Sep 2005
Location: Vancouver
Posts: 600
Quote:
Originally Posted by Ignus2 View Post
There is no need to read the docs, as I can read the source code as well. What I have said is:
"If there is no in-codec color-space conversion involved, you get back the same result whether interlaced encoding is turned on or not."
Which is verifiable by reading the HuffYUV sources. HuffYUV does no blending of fields whatsoever if you give it YUY2 and ask YUY2 back. It will give you back the same result if you encode and decode in the same colorspace whether interlaced encoding is turned on or not.
Going back a bit in the thread, but it occurred to me that since [the non-libavcodec versions of] Huffyuv only operate with YUY2 and RGB (no YV12), the presence of interlacing shouldn't even affect colorspace conversion for them.
ChiDragon is offline   Reply With Quote
Old 26th July 2015, 18:48   #393  |  Link
easy2Bcheesy
Moderator
 
easy2Bcheesy's Avatar
 
Join Date: Feb 2002
Posts: 643
Quote:
Originally Posted by kolak View Post
Magicyuv has native support for r210 pixel format (and also AJA's R10k which is almost the same), but not in public/free version. This is one of the pro features which I convinced Ignus2 to implement.

You could try to force BM to output RGB 8bit instead of 10bit.
Does the pro version offer the ability to process r210 input but capture in RGB24, YUY2 or YV12? The BM device is literally padding those two extra bits per channel as the consoles don't output 10-bit RGB.

ChiDragon's technique for forcing 8-bit RGB works, but it is not ideal.
easy2Bcheesy is offline   Reply With Quote
Old 27th July 2015, 09:29   #394  |  Link
kolak
Registered User
 
Join Date: Nov 2004
Location: Poland
Posts: 2,843
No, there is no 10<->8bit conversion and this is done sort of on purpose. Decoder will decode r210 back to r210 or rbg64a/rgb48, so only to "better" pixel formats.
kolak is offline   Reply With Quote
Old 27th July 2015, 10:17   #395  |  Link
pandy
Registered User
 
Join Date: Mar 2006
Posts: 1,049
Quote:
Originally Posted by raffriff42 View Post
ffmpeg supports it -
Code:
C:\ffmpeg\bin>ffmpeg -codecs | find "r210"
ffmpeg version N-70664-ga47c2a1 Copyright (c) 2000-2015 the FFmpeg developers
[...]
 DEVI.S r210                 Uncompressed RGB 10-bit

C:\ffmpeg\bin>
(and therefore probably ffmpegsource for avisynth & ffmpeg input for virtualdub)
And FFV1 can be used instead MagicYUV also ffmpeg can provide conversion from 10 to 8 bits (with dithering?) - so why not try to capture with ffmpeg ?

I've try few times and it works (capture)...
pandy is offline   Reply With Quote
Old 27th July 2015, 18:58   #396  |  Link
ChiDragon
Registered User
 
ChiDragon's Avatar
 
Join Date: Sep 2005
Location: Vancouver
Posts: 600
FFV1 is much, much too slow for 1080p60 in realtime.
ChiDragon is offline   Reply With Quote
Old 28th July 2015, 08:25   #397  |  Link
kolak
Registered User
 
Join Date: Nov 2004
Location: Poland
Posts: 2,843
But new huffyuv in ffmpeg not
kolak is offline   Reply With Quote
Old 28th July 2015, 17:29   #398  |  Link
ChiDragon
Registered User
 
ChiDragon's Avatar
 
Join Date: Sep 2005
Location: Vancouver
Posts: 600
It only converts to YUY2/YV12, not RGB. :\
ChiDragon is offline   Reply With Quote
Old 28th July 2015, 18:59   #399  |  Link
kolak
Registered User
 
Join Date: Nov 2004
Location: Poland
Posts: 2,843
Ffmpeg version supports up to 12bit RGB and with -vf pix_fmt you can convert between maaany pixel formats.
You probably talking about 'old' huffyuv in ffmpeg, not new one- 'ffvhuff'.

Last edited by kolak; 28th July 2015 at 19:02.
kolak is offline   Reply With Quote
Old 29th July 2015, 21:48   #400  |  Link
ChiDragon
Registered User
 
ChiDragon's Avatar
 
Join Date: Sep 2005
Location: Vancouver
Posts: 600
[Sorry for all the OT, Ignus2.] How can you use that with VirtualDub or another capture app? The newest ffdshow-tryouts version that I found only offers those two formats for "FFVH".
ChiDragon is offline   Reply With Quote
Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +1. The time now is 03:49.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.