Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Next revisionBoth sides next revision
raw [2020/03/30 01:09] – [strides and offsets] yairraw [2020/05/05 02:27] – [strides and offsets] yair
Line 4: Line 4:
  
 **solution**: \\ **solution**: \\
-missing channel in any image format is **just a convention**, we can package a datastream as long as we mind our strides. +a image formats are **just a convention**, internally they are byte(octet) streams. we can re-package a datastream to another format, as long as we mind our strides. 
  
 view the image format as just a stream of octets. here is our stream in Y8 format view the image format as just a stream of octets. here is our stream in Y8 format
Line 15: Line 15:
        +--+--+--+--+ +--+--+--+--+        +--+--+--+--+ +--+--+--+--+
  
 +note the above represents two sequential pixels. 
  
-map the GRAY8 **one plane** source into a quarter width **four plane** RGBA output image\\ +the trick is to use gstreamer built in [[https://gstreamer.freedesktop.org/documentation/additional/design/mediatype-video-raw.html?gi-language=c#formats|format spec]] and let that handle the conventions. 
-we will then remap it to Y8 on the receiving side. \\ +
-the trick is to use gstreamer built in format [[https://gstreamer.freedesktop.org/documentation/additional/design/mediatype-video-raw.html?gi-language=c#formats|design document]] and let it handle the format conventions. +
  
 the [[https://www.collabora.com/news-and-blog/blog/2016/02/16/a-programmers-view-on-digital-images-the-essentials/|hammer]] the [[https://www.collabora.com/news-and-blog/blog/2016/02/16/a-programmers-view-on-digital-images-the-essentials/|hammer]]
Line 72: Line 71:
 ====strides and offsets==== ====strides and offsets====
  
-there are extremes to this approach (yuv). get the hammer and study the [[https://gstreamer.freedesktop.org/documentation/additional/design/mediatype-video-raw.html?gi-language=c#formats|design document]]. +there are caveats to this approach (yuv). get the hammer and study the [[https://gstreamer.freedesktop.org/documentation/additional/design/mediatype-video-raw.html?gi-language=c#formats|design document]]. 
  
  
Line 206: Line 205:
 </hidden> </hidden>
  
-[[https://github.com/torvalds/linux/blob/master/include/uapi/drm/drm_fourcc.h#L174|fourcc]] on linux +[[https://github.com/torvalds/linux/blob/master/include/uapi/drm/drm_fourcc.h#L174|fourcc]] on linux\\ 
 +[[https://docs.microsoft.com/en-us/windows/win32/medfound/image-stride?redirectedfrom=MSDN|MSDN on stride]]