Jetson Inference
DNN Vision Library
gstUtility.h
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2017, NVIDIA CORPORATION. All rights reserved.
3  *
4  * Permission is hereby granted, free of charge, to any person obtaining a
5  * copy of this software and associated documentation files (the "Software"),
6  * to deal in the Software without restriction, including without limitation
7  * the rights to use, copy, modify, merge, publish, distribute, sublicense,
8  * and/or sell copies of the Software, and to permit persons to whom the
9  * Software is furnished to do so, subject to the following conditions:
10  *
11  * The above copyright notice and this permission notice shall be included in
12  * all copies or substantial portions of the Software.
13  *
14  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15  * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
17  * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18  * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
19  * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
20  * DEALINGS IN THE SOFTWARE.
21  */
22 
23 #ifndef __GSTREAMER_UTILITY_H__
24 #define __GSTREAMER_UTILITY_H__
25 
26 #include <gst/gst.h>
27 #include <sstream>
28 
29 #include "videoOptions.h"
30 #include "NvInfer.h"
31 
32 
37 #define LOG_GSTREAMER "[gstreamer] "
38 
39 
45 bool gstreamerInit();
46 
52 gboolean gst_message_print(_GstBus* bus, _GstMessage* message, void* user_data);
53 
59 videoOptions::Codec gst_parse_codec( GstStructure* caps );
60 
66 imageFormat gst_parse_format( GstStructure* caps );
67 
73 const char* gst_codec_to_string( videoOptions::Codec codec );
74 
80 const char* gst_format_to_string( imageFormat format );
81 
87 bool gst_build_filesink( const URI& uri, videoOptions::Codec codec, std::ostringstream& pipeline );
88 
95 
102 
109 
110 
111 #endif
gst_parse_format
imageFormat gst_parse_format(GstStructure *caps)
gst_parse_format
gst_parse_codec
videoOptions::Codec gst_parse_codec(GstStructure *caps)
gst_parse_codec
gst_message_print
gboolean gst_message_print(_GstBus *bus, _GstMessage *message, void *user_data)
gst_message_print
videoOptions::Codec
Codec
Video codecs.
Definition: videoOptions.h:198
gst_select_decoder
const char * gst_select_decoder(videoOptions::Codec codec, videoOptions::CodecType &type)
gst_select_decoder
gst_default_codec
videoOptions::CodecType gst_default_codec()
gst_default_codec
URI
Resource URI of a video device, IP stream, or file/directory.
Definition: URI.h:101
gst_codec_to_string
const char * gst_codec_to_string(videoOptions::Codec codec)
gst_codec_to_string
gst_select_encoder
const char * gst_select_encoder(videoOptions::Codec codec, videoOptions::CodecType &type)
gst_select_decoder
gstreamerInit
bool gstreamerInit()
gstreamerInit
videoOptions::CodecType
CodecType
Video codec engines.
Definition: videoOptions.h:227
gst_build_filesink
bool gst_build_filesink(const URI &uri, videoOptions::Codec codec, std::ostringstream &pipeline)
gst_build_filesink
videoOptions.h
imageFormat
imageFormat
The imageFormat enum is used to identify the pixel format and colorspace of an image.
Definition: imageFormat.h:49
gst_format_to_string
const char * gst_format_to_string(imageFormat format)
gst_format_to_string