.. | .. |
---|
95 | 95 | |
---|
96 | 96 | V4L2Wrapper::~V4L2Wrapper() {} |
---|
97 | 97 | |
---|
98 | | -int V4L2Wrapper::Connect(STREAM_SERIAL ss) { |
---|
| 98 | +int V4L2Wrapper::Connect(STREAM_SERIAL ss, int merge_status) { |
---|
99 | 99 | HAL_LOG_ENTER(); |
---|
100 | 100 | std::lock_guard<std::mutex> lock(connection_lock_); |
---|
101 | 101 | std::string device_path; |
---|
.. | .. |
---|
107 | 107 | case MAIN_STREAM_BLOB: |
---|
108 | 108 | case MAIN_MIRROR_STREAM: |
---|
109 | 109 | case MAIN_MIRROR_STREAM_BLOB: |
---|
110 | | - if (Support_Id == 0) { |
---|
111 | | - device_path = MAIN_STREAM_PATH; |
---|
112 | | - } |
---|
113 | | - tmpss = MAIN_STREAM; |
---|
| 110 | + if (device_id_ == 0 && merge_status) { |
---|
| 111 | + device_path = MAIN_MERGE_STREAM_PATH; |
---|
| 112 | + } else if (device_id_ == 0 && merge_status == 0) { |
---|
| 113 | + device_path = MAIN_STREAM_PATH; |
---|
| 114 | + } |
---|
| 115 | + tmpss = MAIN_STREAM; |
---|
114 | 116 | break; |
---|
115 | 117 | case SUB_0_STREAM: |
---|
116 | 118 | case SUB_0_STREAM_BLOB: |
---|
117 | 119 | case SUB_0_MIRROR_STREAM: |
---|
118 | 120 | case SUB_0_MIRROR_STREAM_BLOB: |
---|
119 | | - if (Support_Id == 0) { |
---|
120 | | - device_path = SUB_0_STREAM_PATH; |
---|
121 | | - } |
---|
122 | | - tmpss = SUB_0_STREAM; |
---|
| 121 | + if (device_id_ == 0 && merge_status) { |
---|
| 122 | + device_path = SUB_0_MERGE_STREAM_PATH; |
---|
| 123 | + } else if (device_id_ == 0 && merge_status == 0) { |
---|
| 124 | + device_path = SUB_0_STREAM_PATH; |
---|
| 125 | + } |
---|
| 126 | + tmpss = SUB_0_STREAM; |
---|
123 | 127 | break; |
---|
124 | 128 | default: |
---|
125 | 129 | HAL_LOGE("Failed to set stream device_path."); |
---|
.. | .. |
---|
141 | 145 | |
---|
142 | 146 | std::shared_ptr<V4L2Stream> stream(V4L2Stream::NewV4L2Stream(device_id_, |
---|
143 | 147 | device_path, |
---|
144 | | - mCameraConfig)); |
---|
| 148 | + mCameraConfig, |
---|
| 149 | + merge_status |
---|
| 150 | + )); |
---|
145 | 151 | if (!stream) { |
---|
146 | 152 | HAL_LOGE("Failed to initialize stream helper."); |
---|
147 | 153 | return -1; |
---|
148 | 154 | } |
---|
149 | 155 | |
---|
150 | | - stream_connection[tmpss].reset(new ConnectionStream(stream)); |
---|
| 156 | + stream_connection[tmpss].reset(new ConnectionStream(stream, merge_status)); |
---|
151 | 157 | if (stream_connection[tmpss]->status()) { |
---|
152 | 158 | HAL_LOGE("Failed to connect to device: %d.", |
---|
153 | 159 | stream_connection[tmpss]->status()); |
---|
.. | .. |
---|
168 | 174 | case MAIN_STREAM_BLOB: |
---|
169 | 175 | case MAIN_MIRROR_STREAM: |
---|
170 | 176 | case MAIN_MIRROR_STREAM_BLOB: |
---|
171 | | - if (device_id_ == 0) { |
---|
172 | | - device_path = MAIN_STREAM_PATH; |
---|
173 | | - } |
---|
| 177 | + //if (device_id_ == 0) { |
---|
| 178 | + // device_path = MAIN_STREAM_PATH; |
---|
| 179 | + //} |
---|
174 | 180 | tmpss = MAIN_STREAM; |
---|
175 | 181 | break; |
---|
176 | 182 | case SUB_0_STREAM: |
---|
177 | 183 | case SUB_0_STREAM_BLOB: |
---|
178 | 184 | case SUB_0_MIRROR_STREAM: |
---|
179 | 185 | case SUB_0_MIRROR_STREAM_BLOB: |
---|
180 | | - if (device_id_ == 0) { |
---|
181 | | - device_path = SUB_0_STREAM_PATH; |
---|
182 | | - } |
---|
| 186 | + //if (device_id_ == 0) { |
---|
| 187 | + // device_path = SUB_0_STREAM_PATH; |
---|
| 188 | + //} |
---|
183 | 189 | tmpss = SUB_0_STREAM; |
---|
184 | 190 | break; |
---|
185 | 191 | default: |
---|
.. | .. |
---|
194 | 200 | return; |
---|
195 | 201 | } |
---|
196 | 202 | |
---|
197 | | - if (device_id_ == 1 && tmpss == MAIN_STREAM) { |
---|
198 | | - device_path = MAIN_FRONT_STREAM_PATH; |
---|
199 | | - } |
---|
200 | | - if (device_id_ == 1 && tmpss == SUB_0_STREAM) { |
---|
201 | | - device_path = SUB_0_FRONT_STREAM_PATH; |
---|
202 | | - } |
---|
| 203 | + //if (device_id_ == 1 && tmpss == MAIN_STREAM) { |
---|
| 204 | + // device_path = MAIN_FRONT_STREAM_PATH; |
---|
| 205 | + //} |
---|
| 206 | + //if (device_id_ == 1 && tmpss == SUB_0_STREAM) { |
---|
| 207 | + // device_path = SUB_0_FRONT_STREAM_PATH; |
---|
| 208 | + //} |
---|
203 | 209 | |
---|
204 | 210 | --connection_count_[tmpss]; |
---|
205 | 211 | if (connection_count_[tmpss] > 0) { |
---|