|  | <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> | 
|  | <html> | 
|  | <head> | 
|  | <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> | 
|  | <title>jpegparser: GStreamer Bad Plugins 1.0 Library Reference Manual</title> | 
|  | <meta name="generator" content="DocBook XSL Stylesheets V1.78.1"> | 
|  | <link rel="home" href="index.html" title="GStreamer Bad Plugins 1.0 Library Reference Manual"> | 
|  | <link rel="up" href="codecparsers.html" title="Bitstream parsing Library"> | 
|  | <link rel="prev" href="gst-plugins-bad-libs-h264parser.html" title="h264parser"> | 
|  | <link rel="next" href="gst-plugins-bad-libs-mpegvideoparser.html" title="mpegvideoparser"> | 
|  | <meta name="generator" content="GTK-Doc V1.24 (XML mode)"> | 
|  | <link rel="stylesheet" href="style.css" type="text/css"> | 
|  | </head> | 
|  | <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"> | 
|  | <table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle"> | 
|  | <td width="100%" align="left" class="shortcuts"> | 
|  | <a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> | 
|  | <a href="#gst-plugins-bad-libs-jpegparser.description" class="shortcut">Description</a></span> | 
|  | </td> | 
|  | <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td> | 
|  | <td><a accesskey="u" href="codecparsers.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td> | 
|  | <td><a accesskey="p" href="gst-plugins-bad-libs-h264parser.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td> | 
|  | <td><a accesskey="n" href="gst-plugins-bad-libs-mpegvideoparser.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td> | 
|  | </tr></table> | 
|  | <div class="refentry"> | 
|  | <a name="gst-plugins-bad-libs-jpegparser"></a><div class="titlepage"></div> | 
|  | <div class="refnamediv"><table width="100%"><tr> | 
|  | <td valign="top"> | 
|  | <h2><span class="refentrytitle"><a name="gst-plugins-bad-libs-jpegparser.top_of_page"></a>jpegparser</span></h2> | 
|  | <p>jpegparser — Convenience library for JPEG bitstream parsing.</p> | 
|  | </td> | 
|  | <td class="gallery_image" valign="top" align="right"></td> | 
|  | </tr></table></div> | 
|  | <div class="refsect1"> | 
|  | <a name="gst-plugins-bad-libs-jpegparser.functions"></a><h2>Functions</h2> | 
|  | <div class="informaltable"><table width="100%" border="0"> | 
|  | <colgroup> | 
|  | <col width="150px" class="functions_return"> | 
|  | <col class="functions_name"> | 
|  | </colgroup> | 
|  | <tbody> | 
|  | <tr> | 
|  | <td class="function_type"> | 
|  | <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> | 
|  | </td> | 
|  | <td class="function_name"> | 
|  | <a class="link" href="gst-plugins-bad-libs-jpegparser.html#gst-jpeg-parse" title="gst_jpeg_parse ()">gst_jpeg_parse</a> <span class="c_punctuation">()</span> | 
|  | </td> | 
|  | </tr> | 
|  | <tr> | 
|  | <td class="function_type"> | 
|  | <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> | 
|  | </td> | 
|  | <td class="function_name"> | 
|  | <a class="link" href="gst-plugins-bad-libs-jpegparser.html#gst-jpeg-segment-parse-frame-header" title="gst_jpeg_segment_parse_frame_header ()">gst_jpeg_segment_parse_frame_header</a> <span class="c_punctuation">()</span> | 
|  | </td> | 
|  | </tr> | 
|  | <tr> | 
|  | <td class="function_type"> | 
|  | <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> | 
|  | </td> | 
|  | <td class="function_name"> | 
|  | <a class="link" href="gst-plugins-bad-libs-jpegparser.html#gst-jpeg-segment-parse-scan-header" title="gst_jpeg_segment_parse_scan_header ()">gst_jpeg_segment_parse_scan_header</a> <span class="c_punctuation">()</span> | 
|  | </td> | 
|  | </tr> | 
|  | <tr> | 
|  | <td class="function_type"> | 
|  | <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> | 
|  | </td> | 
|  | <td class="function_name"> | 
|  | <a class="link" href="gst-plugins-bad-libs-jpegparser.html#gst-jpeg-segment-parse-huffman-table" title="gst_jpeg_segment_parse_huffman_table ()">gst_jpeg_segment_parse_huffman_table</a> <span class="c_punctuation">()</span> | 
|  | </td> | 
|  | </tr> | 
|  | <tr> | 
|  | <td class="function_type"> | 
|  | <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> | 
|  | </td> | 
|  | <td class="function_name"> | 
|  | <a class="link" href="gst-plugins-bad-libs-jpegparser.html#gst-jpeg-segment-parse-quantization-table" title="gst_jpeg_segment_parse_quantization_table ()">gst_jpeg_segment_parse_quantization_table</a> <span class="c_punctuation">()</span> | 
|  | </td> | 
|  | </tr> | 
|  | <tr> | 
|  | <td class="function_type"> | 
|  | <a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> | 
|  | </td> | 
|  | <td class="function_name"> | 
|  | <a class="link" href="gst-plugins-bad-libs-jpegparser.html#gst-jpeg-segment-parse-restart-interval" title="gst_jpeg_segment_parse_restart_interval ()">gst_jpeg_segment_parse_restart_interval</a> <span class="c_punctuation">()</span> | 
|  | </td> | 
|  | </tr> | 
|  | <tr> | 
|  | <td class="function_type"> | 
|  | <span class="returnvalue">void</span> | 
|  | </td> | 
|  | <td class="function_name"> | 
|  | <a class="link" href="gst-plugins-bad-libs-jpegparser.html#gst-jpeg-get-default-quantization-tables" title="gst_jpeg_get_default_quantization_tables ()">gst_jpeg_get_default_quantization_tables</a> <span class="c_punctuation">()</span> | 
|  | </td> | 
|  | </tr> | 
|  | <tr> | 
|  | <td class="function_type"> | 
|  | <span class="returnvalue">void</span> | 
|  | </td> | 
|  | <td class="function_name"> | 
|  | <a class="link" href="gst-plugins-bad-libs-jpegparser.html#gst-jpeg-get-default-huffman-tables" title="gst_jpeg_get_default_huffman_tables ()">gst_jpeg_get_default_huffman_tables</a> <span class="c_punctuation">()</span> | 
|  | </td> | 
|  | </tr> | 
|  | </tbody> | 
|  | </table></div> | 
|  | </div> | 
|  | <div class="refsect1"> | 
|  | <a name="gst-plugins-bad-libs-jpegparser.other"></a><h2>Types and Values</h2> | 
|  | <div class="informaltable"><table width="100%" border="0"> | 
|  | <colgroup> | 
|  | <col width="150px" class="name"> | 
|  | <col class="description"> | 
|  | </colgroup> | 
|  | <tbody> | 
|  | <tr> | 
|  | <td class="define_keyword">#define</td> | 
|  | <td class="function_name"><a class="link" href="gst-plugins-bad-libs-jpegparser.html#GST-JPEG-MAX-FRAME-COMPONENTS:CAPS" title="GST_JPEG_MAX_FRAME_COMPONENTS">GST_JPEG_MAX_FRAME_COMPONENTS</a></td> | 
|  | </tr> | 
|  | <tr> | 
|  | <td class="define_keyword">#define</td> | 
|  | <td class="function_name"><a class="link" href="gst-plugins-bad-libs-jpegparser.html#GST-JPEG-MAX-SCAN-COMPONENTS:CAPS" title="GST_JPEG_MAX_SCAN_COMPONENTS">GST_JPEG_MAX_SCAN_COMPONENTS</a></td> | 
|  | </tr> | 
|  | <tr> | 
|  | <td class="define_keyword">#define</td> | 
|  | <td class="function_name"><a class="link" href="gst-plugins-bad-libs-jpegparser.html#GST-JPEG-MAX-QUANT-ELEMENTS:CAPS" title="GST_JPEG_MAX_QUANT_ELEMENTS">GST_JPEG_MAX_QUANT_ELEMENTS</a></td> | 
|  | </tr> | 
|  | <tr> | 
|  | <td class="define_keyword">#define</td> | 
|  | <td class="function_name"><a class="link" href="gst-plugins-bad-libs-jpegparser.html#GST-JPEG-MARKER-SOF-MIN:CAPS" title="GST_JPEG_MARKER_SOF_MIN">GST_JPEG_MARKER_SOF_MIN</a></td> | 
|  | </tr> | 
|  | <tr> | 
|  | <td class="define_keyword">#define</td> | 
|  | <td class="function_name"><a class="link" href="gst-plugins-bad-libs-jpegparser.html#GST-JPEG-MARKER-SOF-MAX:CAPS" title="GST_JPEG_MARKER_SOF_MAX">GST_JPEG_MARKER_SOF_MAX</a></td> | 
|  | </tr> | 
|  | <tr> | 
|  | <td class="define_keyword">#define</td> | 
|  | <td class="function_name"><a class="link" href="gst-plugins-bad-libs-jpegparser.html#GST-JPEG-MARKER-APP-MIN:CAPS" title="GST_JPEG_MARKER_APP_MIN">GST_JPEG_MARKER_APP_MIN</a></td> | 
|  | </tr> | 
|  | <tr> | 
|  | <td class="define_keyword">#define</td> | 
|  | <td class="function_name"><a class="link" href="gst-plugins-bad-libs-jpegparser.html#GST-JPEG-MARKER-APP-MAX:CAPS" title="GST_JPEG_MARKER_APP_MAX">GST_JPEG_MARKER_APP_MAX</a></td> | 
|  | </tr> | 
|  | <tr> | 
|  | <td class="define_keyword">#define</td> | 
|  | <td class="function_name"><a class="link" href="gst-plugins-bad-libs-jpegparser.html#GST-JPEG-MARKER-RST-MIN:CAPS" title="GST_JPEG_MARKER_RST_MIN">GST_JPEG_MARKER_RST_MIN</a></td> | 
|  | </tr> | 
|  | <tr> | 
|  | <td class="define_keyword">#define</td> | 
|  | <td class="function_name"><a class="link" href="gst-plugins-bad-libs-jpegparser.html#GST-JPEG-MARKER-RST-MAX:CAPS" title="GST_JPEG_MARKER_RST_MAX">GST_JPEG_MARKER_RST_MAX</a></td> | 
|  | </tr> | 
|  | <tr> | 
|  | <td class="datatype_keyword">enum</td> | 
|  | <td class="function_name"><a class="link" href="gst-plugins-bad-libs-jpegparser.html#GstJpegEntropyCodingMode" title="enum GstJpegEntropyCodingMode">GstJpegEntropyCodingMode</a></td> | 
|  | </tr> | 
|  | <tr> | 
|  | <td class="datatype_keyword">enum</td> | 
|  | <td class="function_name"><a class="link" href="gst-plugins-bad-libs-jpegparser.html#GstJpegProfile" title="enum GstJpegProfile">GstJpegProfile</a></td> | 
|  | </tr> | 
|  | <tr> | 
|  | <td class="datatype_keyword">struct</td> | 
|  | <td class="function_name"><a class="link" href="gst-plugins-bad-libs-jpegparser.html#GstJpegSegment" title="struct GstJpegSegment">GstJpegSegment</a></td> | 
|  | </tr> | 
|  | <tr> | 
|  | <td class="datatype_keyword">struct</td> | 
|  | <td class="function_name"><a class="link" href="gst-plugins-bad-libs-jpegparser.html#GstJpegFrameHdr" title="struct GstJpegFrameHdr">GstJpegFrameHdr</a></td> | 
|  | </tr> | 
|  | <tr> | 
|  | <td class="datatype_keyword">struct</td> | 
|  | <td class="function_name"><a class="link" href="gst-plugins-bad-libs-jpegparser.html#GstJpegFrameComponent" title="struct GstJpegFrameComponent">GstJpegFrameComponent</a></td> | 
|  | </tr> | 
|  | <tr> | 
|  | <td class="datatype_keyword">struct</td> | 
|  | <td class="function_name"><a class="link" href="gst-plugins-bad-libs-jpegparser.html#GstJpegScanHdr" title="struct GstJpegScanHdr">GstJpegScanHdr</a></td> | 
|  | </tr> | 
|  | <tr> | 
|  | <td class="datatype_keyword">struct</td> | 
|  | <td class="function_name"><a class="link" href="gst-plugins-bad-libs-jpegparser.html#GstJpegScanComponent" title="struct GstJpegScanComponent">GstJpegScanComponent</a></td> | 
|  | </tr> | 
|  | <tr> | 
|  | <td class="datatype_keyword">struct</td> | 
|  | <td class="function_name"><a class="link" href="gst-plugins-bad-libs-jpegparser.html#GstJpegHuffmanTables" title="struct GstJpegHuffmanTables">GstJpegHuffmanTables</a></td> | 
|  | </tr> | 
|  | <tr> | 
|  | <td class="datatype_keyword">struct</td> | 
|  | <td class="function_name"><a class="link" href="gst-plugins-bad-libs-jpegparser.html#GstJpegHuffmanTable" title="struct GstJpegHuffmanTable">GstJpegHuffmanTable</a></td> | 
|  | </tr> | 
|  | <tr> | 
|  | <td class="datatype_keyword">struct</td> | 
|  | <td class="function_name"><a class="link" href="gst-plugins-bad-libs-jpegparser.html#GstJpegQuantTable" title="struct GstJpegQuantTable">GstJpegQuantTable</a></td> | 
|  | </tr> | 
|  | </tbody> | 
|  | </table></div> | 
|  | </div> | 
|  | <div class="refsect1"> | 
|  | <a name="gst-plugins-bad-libs-jpegparser.includes"></a><h2>Includes</h2> | 
|  | <pre class="synopsis">#include <gst/codecparsers/gstjpegparser.h> | 
|  | </pre> | 
|  | </div> | 
|  | <div class="refsect1"> | 
|  | <a name="gst-plugins-bad-libs-jpegparser.description"></a><h2>Description</h2> | 
|  | <div class="refsect2"> | 
|  | <a name="id-1.2.4.4.6.2"></a><p> | 
|  | Provides useful functions for parsing JPEG images | 
|  | </p> | 
|  | </div> | 
|  | </div> | 
|  | <div class="refsect1"> | 
|  | <a name="gst-plugins-bad-libs-jpegparser.functions_details"></a><h2>Functions</h2> | 
|  | <div class="refsect2"> | 
|  | <a name="gst-jpeg-parse"></a><h3>gst_jpeg_parse ()</h3> | 
|  | <pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> | 
|  | gst_jpeg_parse (<em class="parameter"><code><a class="link" href="gst-plugins-bad-libs-jpegparser.html#GstJpegSegment" title="struct GstJpegSegment"><span class="type">GstJpegSegment</span></a> *seg</code></em>, | 
|  | <em class="parameter"><code>const <span class="type">guint8</span> *data</code></em>, | 
|  | <em class="parameter"><code><span class="type">gsize</span> size</code></em>, | 
|  | <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> offset</code></em>);</pre> | 
|  | <p>Parses the JPEG bitstream contained in <em class="parameter"><code>data</code></em> | 
|  | , and returns the | 
|  | detected segment as a <a class="link" href="gst-plugins-bad-libs-jpegparser.html#GstJpegSegment" title="struct GstJpegSegment"><span class="type">GstJpegSegment</span></a>.</p> | 
|  | <p>Note that a valid segment may be returned with a length that exceeds | 
|  | the available data. It is up to the caller to make sure there's enough | 
|  | data available when parsing the segment.</p> | 
|  | <div class="refsect3"> | 
|  | <a name="id-1.2.4.4.7.2.6"></a><h4>Parameters</h4> | 
|  | <div class="informaltable"><table width="100%" border="0"> | 
|  | <colgroup> | 
|  | <col width="150px" class="parameters_name"> | 
|  | <col class="parameters_description"> | 
|  | <col width="200px" class="parameters_annotations"> | 
|  | </colgroup> | 
|  | <tbody> | 
|  | <tr> | 
|  | <td class="parameter_name"><p>segment</p></td> | 
|  | <td class="parameter_description"><p> pointer to a <a class="link" href="gst-plugins-bad-libs-jpegparser.html#GstJpegSegment" title="struct GstJpegSegment"><span class="type">GstJpegSegment</span></a> structure to fill in. </p></td> | 
|  | <td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span></td> | 
|  | </tr> | 
|  | <tr> | 
|  | <td class="parameter_name"><p>data</p></td> | 
|  | <td class="parameter_description"><p>The data to parse</p></td> | 
|  | <td class="parameter_annotations"> </td> | 
|  | </tr> | 
|  | <tr> | 
|  | <td class="parameter_name"><p>size</p></td> | 
|  | <td class="parameter_description"><p>The size of <em class="parameter"><code>data</code></em> | 
|  | </p></td> | 
|  | <td class="parameter_annotations"> </td> | 
|  | </tr> | 
|  | <tr> | 
|  | <td class="parameter_name"><p>offset</p></td> | 
|  | <td class="parameter_description"><p>The offset from which to start parsing</p></td> | 
|  | <td class="parameter_annotations"> </td> | 
|  | </tr> | 
|  | </tbody> | 
|  | </table></div> | 
|  | </div> | 
|  | <div class="refsect3"> | 
|  | <a name="id-1.2.4.4.7.2.7"></a><h4>Returns</h4> | 
|  | <p> TRUE if a packet start code was found.</p> | 
|  | </div> | 
|  | <p class="since">Since: 1.6</p> | 
|  | </div> | 
|  | <hr> | 
|  | <div class="refsect2"> | 
|  | <a name="gst-jpeg-segment-parse-frame-header"></a><h3>gst_jpeg_segment_parse_frame_header ()</h3> | 
|  | <pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> | 
|  | gst_jpeg_segment_parse_frame_header (<em class="parameter"><code>const <a class="link" href="gst-plugins-bad-libs-jpegparser.html#GstJpegSegment" title="struct GstJpegSegment"><span class="type">GstJpegSegment</span></a> *segment</code></em>, | 
|  | <em class="parameter"><code><a class="link" href="gst-plugins-bad-libs-jpegparser.html#GstJpegFrameHdr" title="struct GstJpegFrameHdr"><span class="type">GstJpegFrameHdr</span></a> *frame_hdr</code></em>);</pre> | 
|  | <p>Parses the <em class="parameter"><code>frame_hdr</code></em> | 
|  | JPEG frame header structure members from <em class="parameter"><code>segment</code></em> | 
|  | .</p> | 
|  | <p>The caller must make sure there is enough data for the whole segment | 
|  | available.</p> | 
|  | <div class="refsect3"> | 
|  | <a name="id-1.2.4.4.7.3.6"></a><h4>Parameters</h4> | 
|  | <div class="informaltable"><table width="100%" border="0"> | 
|  | <colgroup> | 
|  | <col width="150px" class="parameters_name"> | 
|  | <col class="parameters_description"> | 
|  | <col width="200px" class="parameters_annotations"> | 
|  | </colgroup> | 
|  | <tbody> | 
|  | <tr> | 
|  | <td class="parameter_name"><p>segment</p></td> | 
|  | <td class="parameter_description"><p>the JPEG segment</p></td> | 
|  | <td class="parameter_annotations"> </td> | 
|  | </tr> | 
|  | <tr> | 
|  | <td class="parameter_name"><p>frame_hdr</p></td> | 
|  | <td class="parameter_description"><p> The <a class="link" href="gst-plugins-bad-libs-jpegparser.html#GstJpegFrameHdr" title="struct GstJpegFrameHdr"><span class="type">GstJpegFrameHdr</span></a> structure to fill in. </p></td> | 
|  | <td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span></td> | 
|  | </tr> | 
|  | </tbody> | 
|  | </table></div> | 
|  | </div> | 
|  | <div class="refsect3"> | 
|  | <a name="id-1.2.4.4.7.3.7"></a><h4>Returns</h4> | 
|  | <p> TRUE if the frame header was correctly parsed.</p> | 
|  | </div> | 
|  | <p class="since">Since: 1.6</p> | 
|  | </div> | 
|  | <hr> | 
|  | <div class="refsect2"> | 
|  | <a name="gst-jpeg-segment-parse-scan-header"></a><h3>gst_jpeg_segment_parse_scan_header ()</h3> | 
|  | <pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> | 
|  | gst_jpeg_segment_parse_scan_header (<em class="parameter"><code>const <a class="link" href="gst-plugins-bad-libs-jpegparser.html#GstJpegSegment" title="struct GstJpegSegment"><span class="type">GstJpegSegment</span></a> *segment</code></em>, | 
|  | <em class="parameter"><code><a class="link" href="gst-plugins-bad-libs-jpegparser.html#GstJpegScanHdr" title="struct GstJpegScanHdr"><span class="type">GstJpegScanHdr</span></a> *scan_hdr</code></em>);</pre> | 
|  | <p>Parses the <em class="parameter"><code>scan_hdr</code></em> | 
|  | JPEG scan header structure members from <em class="parameter"><code>segment</code></em> | 
|  | .</p> | 
|  | <p>The caller must make sure there is enough data for the whole segment | 
|  | available.</p> | 
|  | <div class="refsect3"> | 
|  | <a name="id-1.2.4.4.7.4.6"></a><h4>Parameters</h4> | 
|  | <div class="informaltable"><table width="100%" border="0"> | 
|  | <colgroup> | 
|  | <col width="150px" class="parameters_name"> | 
|  | <col class="parameters_description"> | 
|  | <col width="200px" class="parameters_annotations"> | 
|  | </colgroup> | 
|  | <tbody> | 
|  | <tr> | 
|  | <td class="parameter_name"><p>segment</p></td> | 
|  | <td class="parameter_description"><p>the JPEG segment</p></td> | 
|  | <td class="parameter_annotations"> </td> | 
|  | </tr> | 
|  | <tr> | 
|  | <td class="parameter_name"><p>scan_hdr</p></td> | 
|  | <td class="parameter_description"><p> The <a class="link" href="gst-plugins-bad-libs-jpegparser.html#GstJpegScanHdr" title="struct GstJpegScanHdr"><span class="type">GstJpegScanHdr</span></a> structure to fill in. </p></td> | 
|  | <td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span></td> | 
|  | </tr> | 
|  | </tbody> | 
|  | </table></div> | 
|  | </div> | 
|  | <div class="refsect3"> | 
|  | <a name="id-1.2.4.4.7.4.7"></a><h4>Returns</h4> | 
|  | <p> TRUE if the scan header was correctly parsed</p> | 
|  | </div> | 
|  | <p class="since">Since: 1.6</p> | 
|  | </div> | 
|  | <hr> | 
|  | <div class="refsect2"> | 
|  | <a name="gst-jpeg-segment-parse-huffman-table"></a><h3>gst_jpeg_segment_parse_huffman_table ()</h3> | 
|  | <pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> | 
|  | gst_jpeg_segment_parse_huffman_table (<em class="parameter"><code>const <a class="link" href="gst-plugins-bad-libs-jpegparser.html#GstJpegSegment" title="struct GstJpegSegment"><span class="type">GstJpegSegment</span></a> *segment</code></em>, | 
|  | <em class="parameter"><code><a class="link" href="gst-plugins-bad-libs-jpegparser.html#GstJpegHuffmanTables" title="struct GstJpegHuffmanTables"><span class="type">GstJpegHuffmanTables</span></a> *huff_tables</code></em>);</pre> | 
|  | <p>Parses the JPEG Huffman table structure members from <em class="parameter"><code>segment</code></em> | 
|  | .</p> | 
|  | <p>The caller must make sure there is enough data for the whole segment | 
|  | available.</p> | 
|  | <p>Note: <em class="parameter"><code>huf_tables</code></em> | 
|  | represents the complete set of possible Huffman | 
|  | tables. However, the parser will only write to the Huffman table | 
|  | specified by the table destination identifier (Th). While doing so, | 
|  | the <em class="parameter"><code>valid</code></em> | 
|  | flag of the specified Huffman table will also be set to | 
|  | <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>;</p> | 
|  | <div class="refsect3"> | 
|  | <a name="id-1.2.4.4.7.5.7"></a><h4>Parameters</h4> | 
|  | <div class="informaltable"><table width="100%" border="0"> | 
|  | <colgroup> | 
|  | <col width="150px" class="parameters_name"> | 
|  | <col class="parameters_description"> | 
|  | <col width="200px" class="parameters_annotations"> | 
|  | </colgroup> | 
|  | <tbody> | 
|  | <tr> | 
|  | <td class="parameter_name"><p>segment</p></td> | 
|  | <td class="parameter_description"><p>the JPEG segment</p></td> | 
|  | <td class="parameter_annotations"> </td> | 
|  | </tr> | 
|  | <tr> | 
|  | <td class="parameter_name"><p>huff_tables</p></td> | 
|  | <td class="parameter_description"><p> The <a class="link" href="gst-plugins-bad-libs-jpegparser.html#GstJpegHuffmanTables" title="struct GstJpegHuffmanTables"><span class="type">GstJpegHuffmanTables</span></a> structure to fill in. </p></td> | 
|  | <td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span></td> | 
|  | </tr> | 
|  | </tbody> | 
|  | </table></div> | 
|  | </div> | 
|  | <div class="refsect3"> | 
|  | <a name="id-1.2.4.4.7.5.8"></a><h4>Returns</h4> | 
|  | <p> TRUE if the Huffman table was correctly parsed.</p> | 
|  | </div> | 
|  | <p class="since">Since: 1.6</p> | 
|  | </div> | 
|  | <hr> | 
|  | <div class="refsect2"> | 
|  | <a name="gst-jpeg-segment-parse-quantization-table"></a><h3>gst_jpeg_segment_parse_quantization_table ()</h3> | 
|  | <pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> | 
|  | gst_jpeg_segment_parse_quantization_table | 
|  | (<em class="parameter"><code>const <a class="link" href="gst-plugins-bad-libs-jpegparser.html#GstJpegSegment" title="struct GstJpegSegment"><span class="type">GstJpegSegment</span></a> *segment</code></em>, | 
|  | <em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-bad-libs/html/gst-plugins-bad-libs-jpegparser.html#GstJpegQuantTable"><span class="type">GstJpegQuantTables</span></a> *quant_tables</code></em>);</pre> | 
|  | <p>Parses the JPEG quantization table structure members from <em class="parameter"><code>segment</code></em> | 
|  | .</p> | 
|  | <p>The caller must make sure there is enough data for the whole segment | 
|  | available.</p> | 
|  | <p>Note: <em class="parameter"><code>quant_tables</code></em> | 
|  | represents the complete set of possible | 
|  | quantization tables. However, the parser will only write to the | 
|  | quantization table specified by the table destination identifier | 
|  | (Tq). While doing so, the <em class="parameter"><code>valid</code></em> | 
|  | flag of the specified quantization | 
|  | table will also be set to <a href="https://developer.gnome.org/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>.</p> | 
|  | <div class="refsect3"> | 
|  | <a name="id-1.2.4.4.7.6.7"></a><h4>Parameters</h4> | 
|  | <div class="informaltable"><table width="100%" border="0"> | 
|  | <colgroup> | 
|  | <col width="150px" class="parameters_name"> | 
|  | <col class="parameters_description"> | 
|  | <col width="200px" class="parameters_annotations"> | 
|  | </colgroup> | 
|  | <tbody> | 
|  | <tr> | 
|  | <td class="parameter_name"><p>segment</p></td> | 
|  | <td class="parameter_description"><p>the JPEG segment</p></td> | 
|  | <td class="parameter_annotations"> </td> | 
|  | </tr> | 
|  | <tr> | 
|  | <td class="parameter_name"><p>quant_tables</p></td> | 
|  | <td class="parameter_description"><p> The <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-bad-libs/html/gst-plugins-bad-libs-jpegparser.html#GstJpegQuantTable"><span class="type">GstJpegQuantTables</span></a> structure to fill in. </p></td> | 
|  | <td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span></td> | 
|  | </tr> | 
|  | </tbody> | 
|  | </table></div> | 
|  | </div> | 
|  | <div class="refsect3"> | 
|  | <a name="id-1.2.4.4.7.6.8"></a><h4>Returns</h4> | 
|  | <p> TRUE if the quantization table was correctly parsed.</p> | 
|  | </div> | 
|  | <p class="since">Since: 1.6</p> | 
|  | </div> | 
|  | <hr> | 
|  | <div class="refsect2"> | 
|  | <a name="gst-jpeg-segment-parse-restart-interval"></a><h3>gst_jpeg_segment_parse_restart_interval ()</h3> | 
|  | <pre class="programlisting"><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> | 
|  | gst_jpeg_segment_parse_restart_interval | 
|  | (<em class="parameter"><code>const <a class="link" href="gst-plugins-bad-libs-jpegparser.html#GstJpegSegment" title="struct GstJpegSegment"><span class="type">GstJpegSegment</span></a> *segment</code></em>, | 
|  | <em class="parameter"><code><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> *interval</code></em>);</pre> | 
|  | <p>The caller must make sure there is enough data for the whole segment | 
|  | available.</p> | 
|  | <div class="refsect3"> | 
|  | <a name="id-1.2.4.4.7.7.5"></a><h4>Parameters</h4> | 
|  | <div class="informaltable"><table width="100%" border="0"> | 
|  | <colgroup> | 
|  | <col width="150px" class="parameters_name"> | 
|  | <col class="parameters_description"> | 
|  | <col width="200px" class="parameters_annotations"> | 
|  | </colgroup> | 
|  | <tbody> | 
|  | <tr> | 
|  | <td class="parameter_name"><p>segment</p></td> | 
|  | <td class="parameter_description"><p>the JPEG segment</p></td> | 
|  | <td class="parameter_annotations"> </td> | 
|  | </tr> | 
|  | <tr> | 
|  | <td class="parameter_name"><p>interval</p></td> | 
|  | <td class="parameter_description"><p> The parsed restart interval value. </p></td> | 
|  | <td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span></td> | 
|  | </tr> | 
|  | </tbody> | 
|  | </table></div> | 
|  | </div> | 
|  | <div class="refsect3"> | 
|  | <a name="id-1.2.4.4.7.7.6"></a><h4>Returns</h4> | 
|  | <p> TRUE if the restart interval value was correctly parsed.</p> | 
|  | </div> | 
|  | <p class="since">Since: 1.6</p> | 
|  | </div> | 
|  | <hr> | 
|  | <div class="refsect2"> | 
|  | <a name="gst-jpeg-get-default-quantization-tables"></a><h3>gst_jpeg_get_default_quantization_tables ()</h3> | 
|  | <pre class="programlisting"><span class="returnvalue">void</span> | 
|  | gst_jpeg_get_default_quantization_tables | 
|  | (<em class="parameter"><code><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-bad-libs/html/gst-plugins-bad-libs-jpegparser.html#GstJpegQuantTable"><span class="type">GstJpegQuantTables</span></a> *quant_tables</code></em>);</pre> | 
|  | </div> | 
|  | <hr> | 
|  | <div class="refsect2"> | 
|  | <a name="gst-jpeg-get-default-huffman-tables"></a><h3>gst_jpeg_get_default_huffman_tables ()</h3> | 
|  | <pre class="programlisting"><span class="returnvalue">void</span> | 
|  | gst_jpeg_get_default_huffman_tables (<em class="parameter"><code><a class="link" href="gst-plugins-bad-libs-jpegparser.html#GstJpegHuffmanTables" title="struct GstJpegHuffmanTables"><span class="type">GstJpegHuffmanTables</span></a> *huff_tables</code></em>);</pre> | 
|  | <p>Fills in <em class="parameter"><code>huf_tables</code></em> | 
|  | with the default AC/DC Huffman tables, as | 
|  | specified by the JPEG standard.</p> | 
|  | <div class="refsect3"> | 
|  | <a name="id-1.2.4.4.7.9.5"></a><h4>Parameters</h4> | 
|  | <div class="informaltable"><table width="100%" border="0"> | 
|  | <colgroup> | 
|  | <col width="150px" class="parameters_name"> | 
|  | <col class="parameters_description"> | 
|  | <col width="200px" class="parameters_annotations"> | 
|  | </colgroup> | 
|  | <tbody><tr> | 
|  | <td class="parameter_name"><p>huf_tables</p></td> | 
|  | <td class="parameter_description"><p> The default DC/AC Huffman tables to fill in. </p></td> | 
|  | <td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span></td> | 
|  | </tr></tbody> | 
|  | </table></div> | 
|  | </div> | 
|  | <p class="since">Since: 1.6</p> | 
|  | </div> | 
|  | </div> | 
|  | <div class="refsect1"> | 
|  | <a name="gst-plugins-bad-libs-jpegparser.other_details"></a><h2>Types and Values</h2> | 
|  | <div class="refsect2"> | 
|  | <a name="GST-JPEG-MAX-FRAME-COMPONENTS:CAPS"></a><h3>GST_JPEG_MAX_FRAME_COMPONENTS</h3> | 
|  | <pre class="programlisting">#define GST_JPEG_MAX_FRAME_COMPONENTS   256 | 
|  | </pre> | 
|  | <p>Maximum number of image components in a frame (Nf).</p> | 
|  | <p class="since">Since: 1.6</p> | 
|  | </div> | 
|  | <hr> | 
|  | <div class="refsect2"> | 
|  | <a name="GST-JPEG-MAX-SCAN-COMPONENTS:CAPS"></a><h3>GST_JPEG_MAX_SCAN_COMPONENTS</h3> | 
|  | <pre class="programlisting">#define GST_JPEG_MAX_SCAN_COMPONENTS    4 | 
|  | </pre> | 
|  | <p>Maximum number of image components in a scan (Ns).</p> | 
|  | <p class="since">Since: 1.6</p> | 
|  | </div> | 
|  | <hr> | 
|  | <div class="refsect2"> | 
|  | <a name="GST-JPEG-MAX-QUANT-ELEMENTS:CAPS"></a><h3>GST_JPEG_MAX_QUANT_ELEMENTS</h3> | 
|  | <pre class="programlisting">#define GST_JPEG_MAX_QUANT_ELEMENTS     64 | 
|  | </pre> | 
|  | <p>Number of elements in the quantization table.</p> | 
|  | <p class="since">Since: 1.6</p> | 
|  | </div> | 
|  | <hr> | 
|  | <div class="refsect2"> | 
|  | <a name="GST-JPEG-MARKER-SOF-MIN:CAPS"></a><h3>GST_JPEG_MARKER_SOF_MIN</h3> | 
|  | <pre class="programlisting">#define GST_JPEG_MARKER_SOF_MIN GST_JPEG_MARKER_SOF0 | 
|  | </pre> | 
|  | </div> | 
|  | <hr> | 
|  | <div class="refsect2"> | 
|  | <a name="GST-JPEG-MARKER-SOF-MAX:CAPS"></a><h3>GST_JPEG_MARKER_SOF_MAX</h3> | 
|  | <pre class="programlisting">#define GST_JPEG_MARKER_SOF_MAX GST_JPEG_MARKER_SOF15 | 
|  | </pre> | 
|  | </div> | 
|  | <hr> | 
|  | <div class="refsect2"> | 
|  | <a name="GST-JPEG-MARKER-APP-MIN:CAPS"></a><h3>GST_JPEG_MARKER_APP_MIN</h3> | 
|  | <pre class="programlisting">#define GST_JPEG_MARKER_APP_MIN GST_JPEG_MARKER_APP0 | 
|  | </pre> | 
|  | </div> | 
|  | <hr> | 
|  | <div class="refsect2"> | 
|  | <a name="GST-JPEG-MARKER-APP-MAX:CAPS"></a><h3>GST_JPEG_MARKER_APP_MAX</h3> | 
|  | <pre class="programlisting">#define GST_JPEG_MARKER_APP_MAX GST_JPEG_MARKER_APP15 | 
|  | </pre> | 
|  | </div> | 
|  | <hr> | 
|  | <div class="refsect2"> | 
|  | <a name="GST-JPEG-MARKER-RST-MIN:CAPS"></a><h3>GST_JPEG_MARKER_RST_MIN</h3> | 
|  | <pre class="programlisting">#define GST_JPEG_MARKER_RST_MIN GST_JPEG_MARKER_RST0 | 
|  | </pre> | 
|  | </div> | 
|  | <hr> | 
|  | <div class="refsect2"> | 
|  | <a name="GST-JPEG-MARKER-RST-MAX:CAPS"></a><h3>GST_JPEG_MARKER_RST_MAX</h3> | 
|  | <pre class="programlisting">#define GST_JPEG_MARKER_RST_MAX GST_JPEG_MARKER_RST7 | 
|  | </pre> | 
|  | </div> | 
|  | <hr> | 
|  | <div class="refsect2"> | 
|  | <a name="GstJpegEntropyCodingMode"></a><h3>enum GstJpegEntropyCodingMode</h3> | 
|  | <p>JPEG entropy coding mode.</p> | 
|  | <div class="refsect3"> | 
|  | <a name="id-1.2.4.4.8.11.4"></a><h4>Members</h4> | 
|  | <div class="informaltable"><table width="100%" border="0"> | 
|  | <colgroup> | 
|  | <col width="300px" class="enum_members_name"> | 
|  | <col class="enum_members_description"> | 
|  | <col width="200px" class="enum_members_annotations"> | 
|  | </colgroup> | 
|  | <tbody> | 
|  | <tr> | 
|  | <td class="enum_member_name"><p><a name="GST-JPEG-ENTROPY-CODING-HUFFMAN:CAPS"></a>GST_JPEG_ENTROPY_CODING_HUFFMAN</p></td> | 
|  | <td class="enum_member_description"> | 
|  | <p>Huffman coding</p> | 
|  | </td> | 
|  | <td class="enum_member_annotations"> </td> | 
|  | </tr> | 
|  | <tr> | 
|  | <td class="enum_member_name"><p><a name="GST-JPEG-ENTROPY-CODING-ARITHMETIC:CAPS"></a>GST_JPEG_ENTROPY_CODING_ARITHMETIC</p></td> | 
|  | <td class="enum_member_description"> | 
|  | <p>arithmetic coding</p> | 
|  | </td> | 
|  | <td class="enum_member_annotations"> </td> | 
|  | </tr> | 
|  | </tbody> | 
|  | </table></div> | 
|  | </div> | 
|  | <p class="since">Since: 1.6</p> | 
|  | </div> | 
|  | <hr> | 
|  | <div class="refsect2"> | 
|  | <a name="GstJpegProfile"></a><h3>enum GstJpegProfile</h3> | 
|  | <p>JPEG encoding processes.</p> | 
|  | <div class="refsect3"> | 
|  | <a name="id-1.2.4.4.8.12.4"></a><h4>Members</h4> | 
|  | <div class="informaltable"><table width="100%" border="0"> | 
|  | <colgroup> | 
|  | <col width="300px" class="enum_members_name"> | 
|  | <col class="enum_members_description"> | 
|  | <col width="200px" class="enum_members_annotations"> | 
|  | </colgroup> | 
|  | <tbody> | 
|  | <tr> | 
|  | <td class="enum_member_name"><p><a name="GST-JPEG-PROFILE-BASELINE:CAPS"></a>GST_JPEG_PROFILE_BASELINE</p></td> | 
|  | <td class="enum_member_description"> | 
|  | <p>Baseline DCT</p> | 
|  | </td> | 
|  | <td class="enum_member_annotations"> </td> | 
|  | </tr> | 
|  | <tr> | 
|  | <td class="enum_member_name"><p><a name="GST-JPEG-PROFILE-EXTENDED:CAPS"></a>GST_JPEG_PROFILE_EXTENDED</p></td> | 
|  | <td class="enum_member_description"> | 
|  | <p>Extended sequential DCT</p> | 
|  | </td> | 
|  | <td class="enum_member_annotations"> </td> | 
|  | </tr> | 
|  | <tr> | 
|  | <td class="enum_member_name"><p><a name="GST-JPEG-PROFILE-PROGRESSIVE:CAPS"></a>GST_JPEG_PROFILE_PROGRESSIVE</p></td> | 
|  | <td class="enum_member_description"> | 
|  | <p>Progressive DCT</p> | 
|  | </td> | 
|  | <td class="enum_member_annotations"> </td> | 
|  | </tr> | 
|  | <tr> | 
|  | <td class="enum_member_name"><p><a name="GST-JPEG-PROFILE-LOSSLESS:CAPS"></a>GST_JPEG_PROFILE_LOSSLESS</p></td> | 
|  | <td class="enum_member_description"> | 
|  | <p>Lossless (sequential)</p> | 
|  | </td> | 
|  | <td class="enum_member_annotations"> </td> | 
|  | </tr> | 
|  | </tbody> | 
|  | </table></div> | 
|  | </div> | 
|  | <p class="since">Since: 1.6</p> | 
|  | </div> | 
|  | <hr> | 
|  | <div class="refsect2"> | 
|  | <a name="GstJpegSegment"></a><h3>struct GstJpegSegment</h3> | 
|  | <pre class="programlisting">struct GstJpegSegment { | 
|  | GstJpegMarker marker; | 
|  | const guint8 *data; | 
|  | guint offset; | 
|  | gssize size; | 
|  | }; | 
|  | </pre> | 
|  | <p>A structure that contains the type of a segment, its offset and its size.</p> | 
|  | <div class="refsect3"> | 
|  | <a name="id-1.2.4.4.8.13.5"></a><h4>Members</h4> | 
|  | <div class="informaltable"><table width="100%" border="0"> | 
|  | <colgroup> | 
|  | <col width="300px" class="struct_members_name"> | 
|  | <col class="struct_members_description"> | 
|  | <col width="200px" class="struct_members_annotations"> | 
|  | </colgroup> | 
|  | <tbody> | 
|  | <tr> | 
|  | <td class="struct_member_name"><p><span class="type">GstJpegMarker</span> <em class="structfield"><code><a name="GstJpegSegment.marker"></a>marker</code></em>;</p></td> | 
|  | <td class="struct_member_description"><p>The type of the segment that starts at <em class="parameter"><code>offset</code></em> | 
|  | </p></td> | 
|  | <td class="struct_member_annotations"> </td> | 
|  | </tr> | 
|  | <tr> | 
|  | <td class="struct_member_name"><p>const <span class="type">guint8</span> *<em class="structfield"><code><a name="GstJpegSegment.data"></a>data</code></em>;</p></td> | 
|  | <td class="struct_member_description"><p>the data containing the jpeg segment starting at <em class="parameter"><code>offset</code></em> | 
|  | </p></td> | 
|  | <td class="struct_member_annotations"> </td> | 
|  | </tr> | 
|  | <tr> | 
|  | <td class="struct_member_name"><p><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> <em class="structfield"><code><a name="GstJpegSegment.offset"></a>offset</code></em>;</p></td> | 
|  | <td class="struct_member_description"><p>The offset to the segment start in bytes. This is the | 
|  | exact start of the segment, no marker code included</p></td> | 
|  | <td class="struct_member_annotations"> </td> | 
|  | </tr> | 
|  | <tr> | 
|  | <td class="struct_member_name"><p><span class="type">gssize</span> <em class="structfield"><code><a name="GstJpegSegment.size"></a>size</code></em>;</p></td> | 
|  | <td class="struct_member_description"><p>The size of the segment in bytes, or -1 if the end was not | 
|  | found. It is the exact size of the segment, without the sync byte and | 
|  | marker code but including any length bytes.</p></td> | 
|  | <td class="struct_member_annotations"> </td> | 
|  | </tr> | 
|  | </tbody> | 
|  | </table></div> | 
|  | </div> | 
|  | <p class="since">Since: 1.6</p> | 
|  | </div> | 
|  | <hr> | 
|  | <div class="refsect2"> | 
|  | <a name="GstJpegFrameHdr"></a><h3>struct GstJpegFrameHdr</h3> | 
|  | <pre class="programlisting">struct GstJpegFrameHdr { | 
|  | guint8 sample_precision;              /* 2 .. 16      */ | 
|  | guint16 width;                        /* 1 .. 65535   */ | 
|  | guint16 height;                       /* 0 .. 65535   */ | 
|  | guint8 num_components;                /* 1 .. 255     */ | 
|  | GstJpegFrameComponent components[GST_JPEG_MAX_FRAME_COMPONENTS]; | 
|  | }; | 
|  | </pre> | 
|  | <p>Frame header.</p> | 
|  | <div class="refsect3"> | 
|  | <a name="id-1.2.4.4.8.14.5"></a><h4>Members</h4> | 
|  | <div class="informaltable"><table width="100%" border="0"> | 
|  | <colgroup> | 
|  | <col width="300px" class="struct_members_name"> | 
|  | <col class="struct_members_description"> | 
|  | <col width="200px" class="struct_members_annotations"> | 
|  | </colgroup> | 
|  | <tbody> | 
|  | <tr> | 
|  | <td class="struct_member_name"><p><span class="type">guint8</span> <em class="structfield"><code><a name="GstJpegFrameHdr.sample-precision"></a>sample_precision</code></em>;</p></td> | 
|  | <td class="struct_member_description"><p>Sample precision (P)</p></td> | 
|  | <td class="struct_member_annotations"> </td> | 
|  | </tr> | 
|  | <tr> | 
|  | <td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="GstJpegFrameHdr.width"></a>width</code></em>;</p></td> | 
|  | <td class="struct_member_description"><p>Number of samples per line (X)</p></td> | 
|  | <td class="struct_member_annotations"> </td> | 
|  | </tr> | 
|  | <tr> | 
|  | <td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="GstJpegFrameHdr.height"></a>height</code></em>;</p></td> | 
|  | <td class="struct_member_description"><p>Number of lines (Y)</p></td> | 
|  | <td class="struct_member_annotations"> </td> | 
|  | </tr> | 
|  | <tr> | 
|  | <td class="struct_member_name"><p><span class="type">guint8</span> <em class="structfield"><code><a name="GstJpegFrameHdr.num-components"></a>num_components</code></em>;</p></td> | 
|  | <td class="struct_member_description"><p>Number of image components in frame (Nf)</p></td> | 
|  | <td class="struct_member_annotations"> </td> | 
|  | </tr> | 
|  | <tr> | 
|  | <td class="struct_member_name"><p><a class="link" href="gst-plugins-bad-libs-jpegparser.html#GstJpegFrameComponent" title="struct GstJpegFrameComponent"><span class="type">GstJpegFrameComponent</span></a> <em class="structfield"><code><a name="GstJpegFrameHdr.components"></a>components</code></em>[GST_JPEG_MAX_FRAME_COMPONENTS];</p></td> | 
|  | <td class="struct_member_description"><p>Image components</p></td> | 
|  | <td class="struct_member_annotations"> </td> | 
|  | </tr> | 
|  | </tbody> | 
|  | </table></div> | 
|  | </div> | 
|  | <p class="since">Since: 1.6</p> | 
|  | </div> | 
|  | <hr> | 
|  | <div class="refsect2"> | 
|  | <a name="GstJpegFrameComponent"></a><h3>struct GstJpegFrameComponent</h3> | 
|  | <pre class="programlisting">struct GstJpegFrameComponent { | 
|  | guint8 identifier;                    /* 0 .. 255     */ | 
|  | guint8 horizontal_factor;             /* 1 .. 4       */ | 
|  | guint8 vertical_factor;               /* 1 .. 4       */ | 
|  | guint8 quant_table_selector;          /* 0 .. 3       */ | 
|  | }; | 
|  | </pre> | 
|  | <p>Component-specification parameters.</p> | 
|  | <div class="refsect3"> | 
|  | <a name="id-1.2.4.4.8.15.5"></a><h4>Members</h4> | 
|  | <div class="informaltable"><table width="100%" border="0"> | 
|  | <colgroup> | 
|  | <col width="300px" class="struct_members_name"> | 
|  | <col class="struct_members_description"> | 
|  | <col width="200px" class="struct_members_annotations"> | 
|  | </colgroup> | 
|  | <tbody> | 
|  | <tr> | 
|  | <td class="struct_member_name"><p><span class="type">guint8</span> <em class="structfield"><code><a name="GstJpegFrameComponent.identifier"></a>identifier</code></em>;</p></td> | 
|  | <td class="struct_member_description"><p>Component identifier (Ci)</p></td> | 
|  | <td class="struct_member_annotations"> </td> | 
|  | </tr> | 
|  | <tr> | 
|  | <td class="struct_member_name"><p><span class="type">guint8</span> <em class="structfield"><code><a name="GstJpegFrameComponent.horizontal-factor"></a>horizontal_factor</code></em>;</p></td> | 
|  | <td class="struct_member_description"><p>Horizontal sampling factor (Hi)</p></td> | 
|  | <td class="struct_member_annotations"> </td> | 
|  | </tr> | 
|  | <tr> | 
|  | <td class="struct_member_name"><p><span class="type">guint8</span> <em class="structfield"><code><a name="GstJpegFrameComponent.vertical-factor"></a>vertical_factor</code></em>;</p></td> | 
|  | <td class="struct_member_description"><p>Vertical sampling factor (Vi)</p></td> | 
|  | <td class="struct_member_annotations"> </td> | 
|  | </tr> | 
|  | <tr> | 
|  | <td class="struct_member_name"><p><span class="type">guint8</span> <em class="structfield"><code><a name="GstJpegFrameComponent.quant-table-selector"></a>quant_table_selector</code></em>;</p></td> | 
|  | <td class="struct_member_description"><p>Quantization table destination selector (Tqi)</p></td> | 
|  | <td class="struct_member_annotations"> </td> | 
|  | </tr> | 
|  | </tbody> | 
|  | </table></div> | 
|  | </div> | 
|  | <p class="since">Since: 1.6</p> | 
|  | </div> | 
|  | <hr> | 
|  | <div class="refsect2"> | 
|  | <a name="GstJpegScanHdr"></a><h3>struct GstJpegScanHdr</h3> | 
|  | <pre class="programlisting">struct GstJpegScanHdr { | 
|  | guint8 num_components;                /* 1 .. 4       */ | 
|  | GstJpegScanComponent components[GST_JPEG_MAX_SCAN_COMPONENTS]; | 
|  | }; | 
|  | </pre> | 
|  | <p>Scan header.</p> | 
|  | <div class="refsect3"> | 
|  | <a name="id-1.2.4.4.8.16.5"></a><h4>Members</h4> | 
|  | <div class="informaltable"><table width="100%" border="0"> | 
|  | <colgroup> | 
|  | <col width="300px" class="struct_members_name"> | 
|  | <col class="struct_members_description"> | 
|  | <col width="200px" class="struct_members_annotations"> | 
|  | </colgroup> | 
|  | <tbody> | 
|  | <tr> | 
|  | <td class="struct_member_name"><p><span class="type">guint8</span> <em class="structfield"><code><a name="GstJpegScanHdr.num-components"></a>num_components</code></em>;</p></td> | 
|  | <td class="struct_member_description"><p>Number of image components in scan (Ns)</p></td> | 
|  | <td class="struct_member_annotations"> </td> | 
|  | </tr> | 
|  | <tr> | 
|  | <td class="struct_member_name"><p><a class="link" href="gst-plugins-bad-libs-jpegparser.html#GstJpegScanComponent" title="struct GstJpegScanComponent"><span class="type">GstJpegScanComponent</span></a> <em class="structfield"><code><a name="GstJpegScanHdr.components"></a>components</code></em>[GST_JPEG_MAX_SCAN_COMPONENTS];</p></td> | 
|  | <td class="struct_member_description"><p>Image components</p></td> | 
|  | <td class="struct_member_annotations"> </td> | 
|  | </tr> | 
|  | </tbody> | 
|  | </table></div> | 
|  | </div> | 
|  | <p class="since">Since: 1.6</p> | 
|  | </div> | 
|  | <hr> | 
|  | <div class="refsect2"> | 
|  | <a name="GstJpegScanComponent"></a><h3>struct GstJpegScanComponent</h3> | 
|  | <pre class="programlisting">struct GstJpegScanComponent { | 
|  | guint8 component_selector;          /* 0 .. 255     */ | 
|  | guint8 dc_selector;                 /* 0 .. 3       */ | 
|  | guint8 ac_selector;                 /* 0 .. 3       */ | 
|  | }; | 
|  | </pre> | 
|  | <p>Component-specification parameters.</p> | 
|  | <div class="refsect3"> | 
|  | <a name="id-1.2.4.4.8.17.5"></a><h4>Members</h4> | 
|  | <div class="informaltable"><table width="100%" border="0"> | 
|  | <colgroup> | 
|  | <col width="300px" class="struct_members_name"> | 
|  | <col class="struct_members_description"> | 
|  | <col width="200px" class="struct_members_annotations"> | 
|  | </colgroup> | 
|  | <tbody> | 
|  | <tr> | 
|  | <td class="struct_member_name"><p><span class="type">guint8</span> <em class="structfield"><code><a name="GstJpegScanComponent.component-selector"></a>component_selector</code></em>;</p></td> | 
|  | <td class="struct_member_description"><p>Scan component selector (Csj)</p></td> | 
|  | <td class="struct_member_annotations"> </td> | 
|  | </tr> | 
|  | <tr> | 
|  | <td class="struct_member_name"><p><span class="type">guint8</span> <em class="structfield"><code><a name="GstJpegScanComponent.dc-selector"></a>dc_selector</code></em>;</p></td> | 
|  | <td class="struct_member_description"><p>DC entropy coding table destination selector (Tdj)</p></td> | 
|  | <td class="struct_member_annotations"> </td> | 
|  | </tr> | 
|  | <tr> | 
|  | <td class="struct_member_name"><p><span class="type">guint8</span> <em class="structfield"><code><a name="GstJpegScanComponent.ac-selector"></a>ac_selector</code></em>;</p></td> | 
|  | <td class="struct_member_description"><p>AC entropy coding table destination selector (Taj)</p></td> | 
|  | <td class="struct_member_annotations"> </td> | 
|  | </tr> | 
|  | </tbody> | 
|  | </table></div> | 
|  | </div> | 
|  | <p class="since">Since: 1.6</p> | 
|  | </div> | 
|  | <hr> | 
|  | <div class="refsect2"> | 
|  | <a name="GstJpegHuffmanTables"></a><h3>struct GstJpegHuffmanTables</h3> | 
|  | <pre class="programlisting">struct GstJpegHuffmanTables { | 
|  | GstJpegHuffmanTable dc_tables[GST_JPEG_MAX_SCAN_COMPONENTS]; | 
|  | GstJpegHuffmanTable ac_tables[GST_JPEG_MAX_SCAN_COMPONENTS]; | 
|  | }; | 
|  | </pre> | 
|  | <p>Helper data structure that holds all AC/DC Huffman tables used to | 
|  | decode an image.</p> | 
|  | <div class="refsect3"> | 
|  | <a name="id-1.2.4.4.8.18.5"></a><h4>Members</h4> | 
|  | <div class="informaltable"><table width="100%" border="0"> | 
|  | <colgroup> | 
|  | <col width="300px" class="struct_members_name"> | 
|  | <col class="struct_members_description"> | 
|  | <col width="200px" class="struct_members_annotations"> | 
|  | </colgroup> | 
|  | <tbody> | 
|  | <tr> | 
|  | <td class="struct_member_name"><p><a class="link" href="gst-plugins-bad-libs-jpegparser.html#GstJpegHuffmanTable" title="struct GstJpegHuffmanTable"><span class="type">GstJpegHuffmanTable</span></a> <em class="structfield"><code><a name="GstJpegHuffmanTables.dc-tables"></a>dc_tables</code></em>[GST_JPEG_MAX_SCAN_COMPONENTS];</p></td> | 
|  | <td class="struct_member_description"><p>DC Huffman tables</p></td> | 
|  | <td class="struct_member_annotations"> </td> | 
|  | </tr> | 
|  | <tr> | 
|  | <td class="struct_member_name"><p><a class="link" href="gst-plugins-bad-libs-jpegparser.html#GstJpegHuffmanTable" title="struct GstJpegHuffmanTable"><span class="type">GstJpegHuffmanTable</span></a> <em class="structfield"><code><a name="GstJpegHuffmanTables.ac-tables"></a>ac_tables</code></em>[GST_JPEG_MAX_SCAN_COMPONENTS];</p></td> | 
|  | <td class="struct_member_description"><p>AC Huffman tables</p></td> | 
|  | <td class="struct_member_annotations"> </td> | 
|  | </tr> | 
|  | </tbody> | 
|  | </table></div> | 
|  | </div> | 
|  | <p class="since">Since: 1.6</p> | 
|  | </div> | 
|  | <hr> | 
|  | <div class="refsect2"> | 
|  | <a name="GstJpegHuffmanTable"></a><h3>struct GstJpegHuffmanTable</h3> | 
|  | <pre class="programlisting">struct GstJpegHuffmanTable { | 
|  | guint8 huf_bits[16]; | 
|  | guint8 huf_values[256]; | 
|  | gboolean valid; | 
|  | }; | 
|  | </pre> | 
|  | <p>Huffman table.</p> | 
|  | <div class="refsect3"> | 
|  | <a name="id-1.2.4.4.8.19.5"></a><h4>Members</h4> | 
|  | <div class="informaltable"><table width="100%" border="0"> | 
|  | <colgroup> | 
|  | <col width="300px" class="struct_members_name"> | 
|  | <col class="struct_members_description"> | 
|  | <col width="200px" class="struct_members_annotations"> | 
|  | </colgroup> | 
|  | <tbody> | 
|  | <tr> | 
|  | <td class="struct_member_name"><p><span class="type">guint8</span> <em class="structfield"><code><a name="GstJpegHuffmanTable.huf-bits"></a>huf_bits</code></em>[16];</p></td> | 
|  | <td class="struct_member_description"><p>Number of Huffman codes of length i + 1 (Li)</p></td> | 
|  | <td class="struct_member_annotations"> </td> | 
|  | </tr> | 
|  | <tr> | 
|  | <td class="struct_member_name"><p><span class="type">guint8</span> <em class="structfield"><code><a name="GstJpegHuffmanTable.huf-values"></a>huf_values</code></em>[256];</p></td> | 
|  | <td> </td> | 
|  | <td> </td> | 
|  | </tr> | 
|  | <tr> | 
|  | <td class="struct_member_name"><p><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> <em class="structfield"><code><a name="GstJpegHuffmanTable.valid"></a>valid</code></em>;</p></td> | 
|  | <td class="struct_member_description"><p>If the Huffman table is valid, which means it has already | 
|  | been parsed</p></td> | 
|  | <td class="struct_member_annotations"> </td> | 
|  | </tr> | 
|  | </tbody> | 
|  | </table></div> | 
|  | </div> | 
|  | <p class="since">Since: 1.6</p> | 
|  | </div> | 
|  | <hr> | 
|  | <div class="refsect2"> | 
|  | <a name="GstJpegQuantTable"></a><h3>struct GstJpegQuantTable</h3> | 
|  | <pre class="programlisting">struct GstJpegQuantTable { | 
|  | guint8 quant_precision; | 
|  | guint16 quant_table[GST_JPEG_MAX_QUANT_ELEMENTS]; | 
|  | gboolean valid; | 
|  | }; | 
|  | </pre> | 
|  | <p>Quantization table.</p> | 
|  | <div class="refsect3"> | 
|  | <a name="id-1.2.4.4.8.20.5"></a><h4>Members</h4> | 
|  | <div class="informaltable"><table width="100%" border="0"> | 
|  | <colgroup> | 
|  | <col width="300px" class="struct_members_name"> | 
|  | <col class="struct_members_description"> | 
|  | <col width="200px" class="struct_members_annotations"> | 
|  | </colgroup> | 
|  | <tbody> | 
|  | <tr> | 
|  | <td class="struct_member_name"><p><span class="type">guint8</span> <em class="structfield"><code><a name="GstJpegQuantTable.quant-precision"></a>quant_precision</code></em>;</p></td> | 
|  | <td class="struct_member_description"><p>Quantization table element precision (Pq)</p></td> | 
|  | <td class="struct_member_annotations"> </td> | 
|  | </tr> | 
|  | <tr> | 
|  | <td class="struct_member_name"><p><span class="type">guint16</span> <em class="structfield"><code><a name="GstJpegQuantTable.quant-table"></a>quant_table</code></em>[GST_JPEG_MAX_QUANT_ELEMENTS];</p></td> | 
|  | <td class="struct_member_description"><p>Quantization table elements (Qk)</p></td> | 
|  | <td class="struct_member_annotations"> </td> | 
|  | </tr> | 
|  | <tr> | 
|  | <td class="struct_member_name"><p><a href="https://developer.gnome.org/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> <em class="structfield"><code><a name="GstJpegQuantTable.valid"></a>valid</code></em>;</p></td> | 
|  | <td class="struct_member_description"><p>If the quantization table is valid, which means it has | 
|  | already been parsed</p></td> | 
|  | <td class="struct_member_annotations"> </td> | 
|  | </tr> | 
|  | </tbody> | 
|  | </table></div> | 
|  | </div> | 
|  | <p class="since">Since: 1.6</p> | 
|  | </div> | 
|  | </div> | 
|  | </div> | 
|  | <div class="footer"> | 
|  | <hr>Generated by GTK-Doc V1.24</div> | 
|  | </body> | 
|  | </html> |