Skip to content

Commit 3b9a714

Browse files
eilnmarcan
authored andcommitted
avd: Make experiment display an option
Signed-off-by: Eileen Yoon <[email protected]>
1 parent 16a6b41 commit 3b9a714

2 files changed

Lines changed: 15 additions & 12 deletions

File tree

proxyclient/experiments/avd.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@
2828
parser.add_argument('-a', '--all', action='store_true', help="run all frames")
2929
parser.add_argument('-x', '--stfu', action='store_true')
3030
parser.add_argument('-p', '--poll', action='store_true', help="poll iommu space")
31+
parser.add_argument('-d', '--display', action='store_true', help="display frames")
3132
parser.add_argument('--save-raw', type=str, default="", help="file name to save raw yuv")
3233
parser.add_argument('--save-images', type=str, default="", help="dirname to save images")
3334
args = parser.parse_args()
@@ -72,8 +73,8 @@
7273
if (i == 0):
7374
avd.ioalloc_at(0x0, dec.allocator_top(), stream=0, val=0)
7475
if (args.poll):
75-
avd.iomon.add(0x0, dec.allocator_top())
76-
frame = avd.decoder.decode(dec.ctx, unit, inst)
76+
avd.iomon.add(0x0, 0x100000)
77+
frame = avd.decoder.decode(dec.ctx, unit, inst, args.display)
7778
if (frame != None):
7879
if (args.save_raw):
7980
rawvideo += frame.y_data + frame.uv_data

proxyclient/m1n1/fw/avd/decoder.py

Lines changed: 12 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -99,7 +99,7 @@ def display(self, frame):
9999
def select_disp_frame(self, ctx, sl):
100100
return self.frames[0]
101101

102-
def decode(self, ctx, sl, inst_stream):
102+
def decode(self, ctx, sl, inst_stream, display):
103103
if not inst_stream: return
104104
self.set_payload(ctx, sl)
105105
self.setup_dma(ctx, sl)
@@ -108,15 +108,17 @@ def decode(self, ctx, sl, inst_stream):
108108
self.set_insn(v)
109109
self.get_disp_frame(ctx, sl)
110110
assert(self.avd.avd_r32(0x1104060) == 0x2842108)
111-
if (hasattr(ctx, "fmt")):
112-
frame = self.get_nv12_disp_frame2(ctx, sl)
113-
else:
114-
frame = self.get_nv12_disp_frame(ctx, sl)
115-
self.frames.append(frame)
116-
frame = self.select_disp_frame(ctx, sl)
117-
if (frame != None):
118-
self.display(frame)
119-
return frame
111+
if (display):
112+
if (hasattr(ctx, "fmt")):
113+
frame = self.get_nv12_disp_frame2(ctx, sl)
114+
else:
115+
frame = self.get_nv12_disp_frame(ctx, sl)
116+
self.frames.append(frame)
117+
frame = self.select_disp_frame(ctx, sl)
118+
if (frame != None):
119+
self.display(frame)
120+
return frame
121+
return None
120122

121123
class AVDH265Dec(AVDDec):
122124
def __init__(self, avd):

0 commit comments

Comments
 (0)