| 73 | // :: Command line / config parsing |
| 74 | |
| 75 | bool parseParameters( int argc, |
| 76 | char* argv[], |
| 77 | PCCDecoderParameters& decoderParams, |
| 78 | PCCMetricsParameters& metricsParams, |
| 79 | PCCConformanceParameters& conformanceParams ) { |
| 80 | namespace po = df::program_options_lite; |
| 81 | |
| 82 | bool print_help = false; |
| 83 | size_t ignore = 1024; |
| 84 | |
| 85 | // The definition of the program/config options, along with default values. |
| 86 | // |
| 87 | // NB: when updating the following tables: |
| 88 | // (a) please keep to 80-columns for easier reading at a glance, |
| 89 | // (b) do not vertically align values -- it breaks quickly |
| 90 | // |
| 91 | // clang-format off |
| 92 | po::Options opts; |
| 93 | opts.addOptions() |
| 94 | ( "help", print_help, false, "This help text") |
| 95 | ( "c,config", po::parseConfigFile, "Configuration file name") |
| 96 | |
| 97 | // i/o |
| 98 | ( "compressedStreamPath", |
| 99 | decoderParams.compressedStreamPath_, |
| 100 | decoderParams.compressedStreamPath_, |
| 101 | "Output(encoder)/Input(decoder) compressed bitstream") |
| 102 | ( "reconstructedDataPath", |
| 103 | decoderParams.reconstructedDataPath_, |
| 104 | decoderParams.reconstructedDataPath_, |
| 105 | "Output decoded pointcloud. Multi-frame sequences may be represented by %04i") |
| 106 | |
| 107 | // sequence configuration |
| 108 | ( "startFrameNumber", |
| 109 | decoderParams.startFrameNumber_, |
| 110 | decoderParams.startFrameNumber_,"Fist frame number in sequence to encode/decode") |
| 111 | |
| 112 | // colour space conversion |
| 113 | ( "colorTransform", |
| 114 | decoderParams.colorTransform_, |
| 115 | decoderParams.colorTransform_,"The colour transform to be applied:\n" |
| 116 | " 0: none\n" |
| 117 | " 1: RGB to YCbCr (Rec.709)") |
| 118 | ( "colorSpaceConversionPath", |
| 119 | decoderParams.colorSpaceConversionPath_, |
| 120 | decoderParams.colorSpaceConversionPath_, |
| 121 | "Path to the HDRConvert. If unset, an internal color space onversion is used") |
| 122 | ( "inverseColorSpaceConversionConfig", |
| 123 | decoderParams.inverseColorSpaceConversionConfig_, |
| 124 | decoderParams.inverseColorSpaceConversionConfig_, |
| 125 | "HDRConvert configuration file used for YUV420 to RGB444 conversion") |
| 126 | ( "videoDecoderOccupancyPath", |
| 127 | decoderParams.videoDecoderOccupancyPath_, |
| 128 | decoderParams.videoDecoderOccupancyPath_, |
| 129 | "Occupancy video decoder executable") |
| 130 | ( "videoDecoderGeometryPath", |
| 131 | decoderParams.videoDecoderGeometryPath_, |
| 132 | decoderParams.videoDecoderGeometryPath_, |
no test coverage detected