fixes bug with device id provided by user (#171)
* fixes bug when setting env variable * fix for device id
Bu işleme şunda yer alıyor:
işlemeyi yapan:
GitHub
ebeveyn
2a1f1d7dff
işleme
e7be5f2bbf
@@ -167,7 +167,10 @@ int main(int argc, char **argv) {
|
||||
for (int i = 0; i < n_fork; i++) {
|
||||
std::unique_ptr<VideoDemuxer> demuxer(new VideoDemuxer(input_file_path.c_str()));
|
||||
rocDecVideoCodec rocdec_codec_id = AVCodec2RocDecVideoCodec(demuxer->GetCodecID());
|
||||
v_device_id[i] = (i % 2 == 0) ? 0 : sd;
|
||||
if (device_id % 2 == 0)
|
||||
v_device_id[i] = (i % 2 == 0) ? device_id : device_id + sd;
|
||||
else
|
||||
v_device_id[i] = (i % 2 == 0) ? device_id - sd : device_id;
|
||||
std::unique_ptr<RocVideoDecoder> dec(new RocVideoDecoder(v_device_id[i], mem_type, rocdec_codec_id, b_force_zero_latency, p_crop_rect));
|
||||
v_demuxer.push_back(std::move(demuxer));
|
||||
v_viddec.push_back(std::move(dec));
|
||||
|
||||
@@ -174,7 +174,10 @@ int main(int argc, char **argv) {
|
||||
for (int i = 0; i < n_thread; i++) {
|
||||
std::unique_ptr<VideoDemuxer> demuxer(new VideoDemuxer(input_file_path.c_str()));
|
||||
rocDecVideoCodec rocdec_codec_id = AVCodec2RocDecVideoCodec(demuxer->GetCodecID());
|
||||
v_device_id[i] = (i % 2 == 0) ? 0 : sd;
|
||||
if (device_id % 2 == 0)
|
||||
v_device_id[i] = (i % 2 == 0) ? device_id : device_id + sd;
|
||||
else
|
||||
v_device_id[i] = (i % 2 == 0) ? device_id - sd : device_id;
|
||||
std::unique_ptr<RocVideoDecoder> dec(new RocVideoDecoder(v_device_id[i], mem_type, rocdec_codec_id, b_force_zero_latency, p_crop_rect));
|
||||
v_demuxer.push_back(std::move(demuxer));
|
||||
v_viddec.push_back(std::move(dec));
|
||||
|
||||
Yeni konuda referans
Bir kullanıcı engelle