@@ -366,14 +366,14 @@ def test_get_frame_displayed_at_fails(self):
366
366
frame = decoder .get_frame_displayed_at (100.0 ) # noqa
367
367
368
368
@pytest .mark .parametrize ("stream_index" , [0 , 3 , None ])
369
- def test_get_frames_at (self , stream_index ):
369
+ def test_get_frames_in_range (self , stream_index ):
370
370
decoder = VideoDecoder (NASA_VIDEO .path , stream_index = stream_index )
371
371
372
372
# test degenerate case where we only actually get 1 frame
373
373
ref_frames9 = NASA_VIDEO .get_frame_data_by_range (
374
374
start = 9 , stop = 10 , stream_index = stream_index
375
375
)
376
- frames9 = decoder .get_frames_at (start = 9 , stop = 10 )
376
+ frames9 = decoder .get_frames_in_range (start = 9 , stop = 10 )
377
377
378
378
assert_tensor_equal (ref_frames9 , frames9 .data )
379
379
assert frames9 .pts_seconds [0 ].item () == pytest .approx (
@@ -389,7 +389,7 @@ def test_get_frames_at(self, stream_index):
389
389
ref_frames0_9 = NASA_VIDEO .get_frame_data_by_range (
390
390
start = 0 , stop = 10 , stream_index = stream_index
391
391
)
392
- frames0_9 = decoder .get_frames_at (start = 0 , stop = 10 )
392
+ frames0_9 = decoder .get_frames_in_range (start = 0 , stop = 10 )
393
393
assert frames0_9 .data .shape == torch .Size (
394
394
[
395
395
10 ,
@@ -412,7 +412,7 @@ def test_get_frames_at(self, stream_index):
412
412
ref_frames0_8_2 = NASA_VIDEO .get_frame_data_by_range (
413
413
start = 0 , stop = 10 , step = 2 , stream_index = stream_index
414
414
)
415
- frames0_8_2 = decoder .get_frames_at (start = 0 , stop = 10 , step = 2 )
415
+ frames0_8_2 = decoder .get_frames_in_range (start = 0 , stop = 10 , step = 2 )
416
416
assert frames0_8_2 .data .shape == torch .Size (
417
417
[
418
418
5 ,
@@ -434,13 +434,13 @@ def test_get_frames_at(self, stream_index):
434
434
)
435
435
436
436
# test numpy.int64 for indices
437
- frames0_8_2 = decoder .get_frames_at (
437
+ frames0_8_2 = decoder .get_frames_in_range (
438
438
start = numpy .int64 (0 ), stop = numpy .int64 (10 ), step = numpy .int64 (2 )
439
439
)
440
440
assert_tensor_equal (ref_frames0_8_2 , frames0_8_2 .data )
441
441
442
442
# an empty range is valid!
443
- empty_frames = decoder .get_frames_at (5 , 5 )
443
+ empty_frames = decoder .get_frames_in_range (5 , 5 )
444
444
assert_tensor_equal (
445
445
empty_frames .data ,
446
446
NASA_VIDEO .get_empty_chw_tensor (stream_index = stream_index ),
@@ -456,10 +456,10 @@ def test_get_frames_at(self, stream_index):
456
456
(
457
457
lambda decoder : decoder [0 ],
458
458
lambda decoder : decoder .get_frame_at (0 ).data ,
459
- lambda decoder : decoder .get_frames_at (0 , 4 ).data ,
459
+ lambda decoder : decoder .get_frames_in_range (0 , 4 ).data ,
460
460
lambda decoder : decoder .get_frame_displayed_at (0 ).data ,
461
461
# TODO: uncomment once D60001893 lands
462
- # lambda decoder: decoder.get_frames_displayed_at (0, 1).data,
462
+ # lambda decoder: decoder.get_frames_displayed_in_range (0, 1).data,
463
463
),
464
464
)
465
465
def test_dimension_order (self , dimension_order , frame_getter ):
@@ -487,7 +487,7 @@ def test_get_frames_by_pts_in_range(self, stream_index):
487
487
decoder = VideoDecoder (NASA_VIDEO .path , stream_index = stream_index )
488
488
489
489
# Note that we are comparing the results of VideoDecoder's method:
490
- # get_frames_displayed_at ()
490
+ # get_frames_displayed_in_range ()
491
491
# With the testing framework's method:
492
492
# get_frame_data_by_range()
493
493
# That is, we are testing the correctness of a pts-based range against an index-
@@ -504,7 +504,7 @@ def test_get_frames_by_pts_in_range(self, stream_index):
504
504
# value for frame 5 that we have access to on the Python side is slightly less than the pts
505
505
# value on the C++ side. This test still produces the correct result because a slightly
506
506
# less value still falls into the correct window.
507
- frames0_4 = decoder .get_frames_displayed_at (
507
+ frames0_4 = decoder .get_frames_displayed_in_range (
508
508
decoder .get_frame_at (0 ).pts_seconds , decoder .get_frame_at (5 ).pts_seconds
509
509
)
510
510
assert_tensor_equal (
@@ -513,15 +513,15 @@ def test_get_frames_by_pts_in_range(self, stream_index):
513
513
)
514
514
515
515
# Range where the stop seconds is about halfway between pts values for two frames.
516
- also_frames0_4 = decoder .get_frames_displayed_at (
516
+ also_frames0_4 = decoder .get_frames_displayed_in_range (
517
517
decoder .get_frame_at (0 ).pts_seconds ,
518
518
decoder .get_frame_at (4 ).pts_seconds + HALF_DURATION ,
519
519
)
520
520
assert_tensor_equal (also_frames0_4 .data , frames0_4 .data )
521
521
522
522
# Again, the intention here is to provide the exact values we care about. In practice, our
523
523
# pts values are slightly smaller, so we nudge the start upwards.
524
- frames5_9 = decoder .get_frames_displayed_at (
524
+ frames5_9 = decoder .get_frames_displayed_in_range (
525
525
decoder .get_frame_at (5 ).pts_seconds ,
526
526
decoder .get_frame_at (10 ).pts_seconds ,
527
527
)
@@ -533,7 +533,7 @@ def test_get_frames_by_pts_in_range(self, stream_index):
533
533
# Range where we provide start_seconds and stop_seconds that are different, but
534
534
# also should land in the same window of time between two frame's pts values. As
535
535
# a result, we should only get back one frame.
536
- frame6 = decoder .get_frames_displayed_at (
536
+ frame6 = decoder .get_frames_displayed_in_range (
537
537
decoder .get_frame_at (6 ).pts_seconds ,
538
538
decoder .get_frame_at (6 ).pts_seconds + HALF_DURATION ,
539
539
)
@@ -543,7 +543,7 @@ def test_get_frames_by_pts_in_range(self, stream_index):
543
543
)
544
544
545
545
# Very small range that falls in the same frame.
546
- frame35 = decoder .get_frames_displayed_at (
546
+ frame35 = decoder .get_frames_displayed_in_range (
547
547
decoder .get_frame_at (35 ).pts_seconds ,
548
548
decoder .get_frame_at (35 ).pts_seconds + 1e-10 ,
549
549
)
@@ -555,7 +555,7 @@ def test_get_frames_by_pts_in_range(self, stream_index):
555
555
# Single frame where the start seconds is before frame i's pts, and the stop is
556
556
# after frame i's pts, but before frame i+1's pts. In that scenario, we expect
557
557
# to see frames i-1 and i.
558
- frames7_8 = decoder .get_frames_displayed_at (
558
+ frames7_8 = decoder .get_frames_displayed_in_range (
559
559
NASA_VIDEO .get_frame_info (8 , stream_index = stream_index ).pts_seconds
560
560
- HALF_DURATION ,
561
561
NASA_VIDEO .get_frame_info (8 , stream_index = stream_index ).pts_seconds
@@ -567,7 +567,7 @@ def test_get_frames_by_pts_in_range(self, stream_index):
567
567
)
568
568
569
569
# Start and stop seconds are the same value, which should not return a frame.
570
- empty_frame = decoder .get_frames_displayed_at (
570
+ empty_frame = decoder .get_frames_displayed_in_range (
571
571
NASA_VIDEO .get_frame_info (4 , stream_index = stream_index ).pts_seconds ,
572
572
NASA_VIDEO .get_frame_info (4 , stream_index = stream_index ).pts_seconds ,
573
573
)
@@ -583,7 +583,7 @@ def test_get_frames_by_pts_in_range(self, stream_index):
583
583
)
584
584
585
585
# Start and stop seconds land within the first frame.
586
- frame0 = decoder .get_frames_displayed_at (
586
+ frame0 = decoder .get_frames_displayed_in_range (
587
587
NASA_VIDEO .get_frame_info (0 , stream_index = stream_index ).pts_seconds ,
588
588
NASA_VIDEO .get_frame_info (0 , stream_index = stream_index ).pts_seconds
589
589
+ HALF_DURATION ,
@@ -595,7 +595,7 @@ def test_get_frames_by_pts_in_range(self, stream_index):
595
595
596
596
# We should be able to get all frames by giving the beginning and ending time
597
597
# for the stream.
598
- all_frames = decoder .get_frames_displayed_at (
598
+ all_frames = decoder .get_frames_displayed_in_range (
599
599
decoder .metadata .begin_stream_seconds , decoder .metadata .end_stream_seconds
600
600
)
601
601
assert_tensor_equal (all_frames .data , decoder [:])
@@ -604,13 +604,13 @@ def test_get_frames_by_pts_in_range_fails(self):
604
604
decoder = VideoDecoder (NASA_VIDEO .path )
605
605
606
606
with pytest .raises (ValueError , match = "Invalid start seconds" ):
607
- frame = decoder .get_frames_displayed_at (100.0 , 1.0 ) # noqa
607
+ frame = decoder .get_frames_displayed_in_range (100.0 , 1.0 ) # noqa
608
608
609
609
with pytest .raises (ValueError , match = "Invalid start seconds" ):
610
- frame = decoder .get_frames_displayed_at (20 , 23 ) # noqa
610
+ frame = decoder .get_frames_displayed_in_range (20 , 23 ) # noqa
611
611
612
612
with pytest .raises (ValueError , match = "Invalid stop seconds" ):
613
- frame = decoder .get_frames_displayed_at (0 , 23 ) # noqa
613
+ frame = decoder .get_frames_displayed_in_range (0 , 23 ) # noqa
614
614
615
615
616
616
if __name__ == "__main__" :
0 commit comments