message: Remove command line argument related to container
diff: @@ -18,7 +18,6 @@ class GStreamerPipeline
  "{h help usage ? | | print help messages }"
  "{m mode | | coding mode (supported: encode, decode) }"
  "{p pipeline |default | pipeline name (supported: 'default', 'gst-basic', 'gst-vaapi', 'gst-libav', 'ffmpeg') }"
  - "{ct container |mp4 | container name (supported: 'mp4', 'mov', 'avi', 'mkv') }"
  "{cd codec |h264 | codec name (supported: 'h264', 'h265', 'mpeg2', 'mpeg4', 'mjpeg', 'vp8') }"
  "{f file path | | path to file }"
  "{vr resolution |720p | video resolution for encoding (supported: '720p', '1080p', '4k') }"
  @@ -30,24 +29,29 @@ class GStreamerPipeline
  if (cmd_parser->has("help"))
  {
  cmd_parser->printMessage();
  - exit_code = -1;
  + CV_Error(Error::StsBadArg, "Called help.");
  }
  fast_measure = cmd_parser->has("fast"); // fast measure fps
  fix_fps = cmd_parser->get<int>("fps"); // fixed frame per second
  pipeline = cmd_parser->get<string>("pipeline"), // gstreamer pipeline type
  - container = cmd_parser->get<string>("container"), // container type
  mode = cmd_parser->get<string>("mode"), // coding mode
  codec = cmd_parser->get<string>("codec"), // codec type
  file_name = cmd_parser->get<string>("file"), // path to videofile
  resolution = cmd_parser->get<string>("resolution"); // video resolution
  + size_t found = file_name.rfind(".");
  + if (found != string::npos)
  + {
  + container = file_name.substr(found + 1); // container type
  + }
  + else { CV_Error(Error::StsBadArg, "Can not parse container extension."); }
  +
  if (!cmd_parser->check())
  {
  cmd_parser->printErrors();
  - exit_code = -1;
  + CV_Error(Error::StsBadArg, "Failed parse arguments.");
  }
  - exit_code = 0;
  }
  ~GStreamerPipeline() { delete cmd_parser; }
  @@ -55,7 +59,6 @@ class GStreamerPipeline
  // Start pipeline
  int run()
  {
  - if (exit_code < 0) { return exit_code; }
  if (mode == "decode") { if (createDecodePipeline() < 0) return -1; }
  else if (mode == "encode") { if (createEncodePipeline() < 0) return -1; }
  else
  @@ -423,7 +426,6 @@ class GStreamerPipeline
  resolution; // video resolution
  int fix_fps; // fixed frame per second
  Size fix_size; // fixed frame size
  - int exit_code;
  VideoWriter wrt;
  VideoCapture cap;
  ostringstream stream_pipeline;
  @@ -431,7 +433,15 @@ class GStreamerPipeline
  };
  int main(int argc, char *argv[])
  +{
  + try
  {
  GStreamerPipeline pipe(argc, argv);
  return pipe.run();
  }
  + catch(const Exception& e)
  + {
  + cerr << e.what() << endl;
  + return 1;
  + }
  +}
  