1 /*
2 * Copyright (C) 2024 Huawei Device Co., Ltd.
3 * Licensed under the Apache License, Version 2.0 (the "License");
4 * you may not use this file except in compliance with the License.
5 * You may obtain a copy of the License at
6 *
7 * http://www.apache.org/licenses/LICENSE-2.0
8 *
9 * Unless required by applicable law or agreed to in writing, software
10 * distributed under the License is distributed on an "AS IS" BASIS,
11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 * See the License for the specific language governing permissions and
13 * limitations under the License.
14 */
15
16 #include "gtest/gtest.h"
17
18 #include "native_avcodec_base.h"
19 #include "native_avdemuxer.h"
20 #include "native_avformat.h"
21 #include "native_avsource.h"
22 #include "native_avmemory.h"
23
24 #include <iostream>
25 #include <cstdio>
26 #include <string>
27 #include <fcntl.h>
28 #include <cmath>
29 #include <thread>
30 #include <random>
31 namespace OHOS {
32 namespace Media {
33 class DemuxerRandomSeekNdkTest : public testing::Test {
34 public:
35 // SetUpTestCase: Called before all test cases
36 static void SetUpTestCase(void);
37 // TearDownTestCase: Called after all test case
38 static void TearDownTestCase(void);
39 // SetUp: Called before each test cases
40 void SetUp(void);
41 // TearDown: Called after each test cases
42 void TearDown(void);
43 };
44
45 static OH_AVMemory *memory = nullptr;
46 static OH_AVSource *source = nullptr;
47 static OH_AVDemuxer *demuxer = nullptr;
48 static OH_AVFormat *sourceFormat = nullptr;
49 static OH_AVFormat *trackFormat = nullptr;
50 static OH_AVBuffer *avBuffer = nullptr;
51 static OH_AVFormat *format = nullptr;
52 static int32_t g_trackCount;
53 static int32_t g_width = 3840;
54 static int32_t g_height = 2160;
55 constexpr int32_t THOUSAND = 1000.0;
56 constexpr int32_t SEEKTIMES = 10;
SetUpTestCase()57 void DemuxerRandomSeekNdkTest::SetUpTestCase() {}
TearDownTestCase()58 void DemuxerRandomSeekNdkTest::TearDownTestCase() {}
SetUp()59 void DemuxerRandomSeekNdkTest::SetUp()
60 {
61 memory = OH_AVMemory_Create(g_width * g_height);
62 g_trackCount = 0;
63 }
TearDown()64 void DemuxerRandomSeekNdkTest::TearDown()
65 {
66 if (trackFormat != nullptr) {
67 OH_AVFormat_Destroy(trackFormat);
68 trackFormat = nullptr;
69 }
70
71 if (sourceFormat != nullptr) {
72 OH_AVFormat_Destroy(sourceFormat);
73 sourceFormat = nullptr;
74 }
75 if (format != nullptr) {
76 OH_AVFormat_Destroy(format);
77 format = nullptr;
78 }
79
80 if (memory != nullptr) {
81 OH_AVMemory_Destroy(memory);
82 memory = nullptr;
83 }
84 if (source != nullptr) {
85 OH_AVSource_Destroy(source);
86 source = nullptr;
87 }
88 if (demuxer != nullptr) {
89 OH_AVDemuxer_Destroy(demuxer);
90 demuxer = nullptr;
91 }
92 if (avBuffer != nullptr) {
93 OH_AVBuffer_Destroy(avBuffer);
94 avBuffer = nullptr;
95 }
96 }
97 } // namespace Media
98 } // namespace OHOS
99
100 using namespace std;
101 using namespace OHOS;
102 using namespace OHOS::Media;
103 using namespace testing::ext;
104 std::random_device rd;
105
GetFileSize(const char * fileName)106 static int64_t GetFileSize(const char *fileName)
107 {
108 int64_t fileSize = 0;
109 if (fileName != nullptr) {
110 struct stat fileStatus {};
111 if (stat(fileName, &fileStatus) == 0) {
112 fileSize = static_cast<int64_t>(fileStatus.st_size);
113 }
114 }
115 return fileSize;
116 }
117
CheckSeekResult(const char * fileName,uint32_t seekCount)118 static void CheckSeekResult(const char *fileName, uint32_t seekCount)
119 {
120 int64_t duration = 0;
121 OH_AVCodecBufferAttr attr;
122 int fd = open(fileName, O_RDONLY);
123 int64_t size = GetFileSize(fileName);
124 cout << fileName << "-------" << fd << "-------" << size << endl;
125 source = OH_AVSource_CreateWithFD(fd, 0, size);
126 ASSERT_NE(source, nullptr);
127 demuxer = OH_AVDemuxer_CreateWithSource(source);
128 ASSERT_NE(demuxer, nullptr);
129 sourceFormat = OH_AVSource_GetSourceFormat(source);
130 ASSERT_NE(sourceFormat, nullptr);
131 ASSERT_TRUE(OH_AVFormat_GetIntValue(sourceFormat, OH_MD_KEY_TRACK_COUNT, &g_trackCount));
132 cout << "g_trackCount----" << g_trackCount << endl;
133 ASSERT_TRUE(OH_AVFormat_GetLongValue(sourceFormat, OH_MD_KEY_DURATION, &duration));
134 cout << "duration----" << duration << endl;
135 srand(time(NULL));
136 for (int32_t index = 0; index < g_trackCount; index++) {
137 ASSERT_EQ(AV_ERR_OK, OH_AVDemuxer_SelectTrackByID(demuxer, index));
138 for (int32_t i = 0; i < seekCount; i++) {
139 if (duration != 0) {
140 ASSERT_EQ(AV_ERR_OK, OH_AVDemuxer_SeekToTime(demuxer, (rd() % duration) / THOUSAND,
141 (OH_AVSeekMode)((rd() % 1) +1)));
142 }
143 ASSERT_EQ(AV_ERR_OK, OH_AVDemuxer_ReadSample(demuxer, index, memory, &attr));
144 }
145 }
146 close(fd);
147 fd = -1;
148 }
149
150 /**
151 * @tc.number : DEMUXER_RANDOM_SEEK_0001
152 * @tc.name : demuxer random seek, 01_video_audio.mp4
153 * @tc.desc : function test
154 */
155 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0001, TestSize.Level0)
156 {
157 CheckSeekResult("/data/test/media/01_video_audio.mp4", SEEKTIMES);
158 }
159
160 /**
161 * @tc.number : DEMUXER_RANDOM_SEEK_0002
162 * @tc.name : demuxer random seek, avc_mp3.flv
163 * @tc.desc : function test
164 */
165 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0002, TestSize.Level0)
166 {
167 CheckSeekResult("/data/test/media/avc_mp3.flv", SEEKTIMES);
168 }
169
170 /**
171 * @tc.number : DEMUXER_RANDOM_SEEK_0003
172 * @tc.name : demuxer random seek, avc_mp3_error.flv
173 * @tc.desc : function test
174 */
175 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0003, TestSize.Level2)
176 {
177 CheckSeekResult("/data/test/media/avc_mp3_error.flv", SEEKTIMES);
178 }
179
180 /**
181 * @tc.number : DEMUXER_RANDOM_SEEK_0004
182 * @tc.name : demuxer random seek, avcc_10sec.mp4
183 * @tc.desc : function test
184 */
185 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0004, TestSize.Level2)
186 {
187 CheckSeekResult("/data/test/media/avcc_10sec.mp4", SEEKTIMES);
188 }
189
190 /**
191 * @tc.number : DEMUXER_RANDOM_SEEK_0005
192 * @tc.name : demuxer random seek, demuxer_parser_2_layer_frame_avc.mp4
193 * @tc.desc : function test
194 */
195 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0005, TestSize.Level0)
196 {
197 CheckSeekResult("/data/test/media/demuxer_parser_2_layer_frame_avc.mp4", SEEKTIMES);
198 }
199
200 /**
201 * @tc.number : DEMUXER_RANDOM_SEEK_0006
202 * @tc.name : demuxer random seek, demuxer_parser_2_layer_frame_hevc.mp4
203 * @tc.desc : function test
204 */
205 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0006, TestSize.Level2)
206 {
207 CheckSeekResult("/data/test/media/demuxer_parser_2_layer_frame_hevc.mp4", SEEKTIMES);
208 }
209
210 /**
211 * @tc.number : DEMUXER_RANDOM_SEEK_0007
212 * @tc.name : demuxer random seek, demuxer_parser_3_layer_frame_avc.mp4
213 * @tc.desc : function test
214 */
215 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0007, TestSize.Level2)
216 {
217 CheckSeekResult("/data/test/media/demuxer_parser_3_layer_frame_avc.mp4", SEEKTIMES);
218 }
219
220 /**
221 * @tc.number : DEMUXER_RANDOM_SEEK_0008
222 * @tc.name : demuxer random seek, demuxer_parser_3_layer_frame_hevc.mp4
223 * @tc.desc : function test
224 */
225 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0008, TestSize.Level2)
226 {
227 CheckSeekResult("/data/test/media/demuxer_parser_3_layer_frame_hevc.mp4", SEEKTIMES);
228 }
229
230 /**
231 * @tc.number : DEMUXER_RANDOM_SEEK_0009
232 * @tc.name : demuxer random seek, demuxer_parser_4_layer_frame_avc.mp4
233 * @tc.desc : function test
234 */
235 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0009, TestSize.Level2)
236 {
237 CheckSeekResult("/data/test/media/demuxer_parser_4_layer_frame_avc.mp4", SEEKTIMES);
238 }
239
240 /**
241 * @tc.number : DEMUXER_RANDOM_SEEK_0010
242 * @tc.name : demuxer random seek, demuxer_parser_4_layer_frame_hevc.mp4
243 * @tc.desc : function test
244 */
245 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0010, TestSize.Level2)
246 {
247 CheckSeekResult("/data/test/media/demuxer_parser_4_layer_frame_hevc.mp4", SEEKTIMES);
248 }
249
250 /**
251 * @tc.number : DEMUXER_RANDOM_SEEK_0011
252 * @tc.name : demuxer random seek, demuxer_parser_all_i_frame_avc.mp4
253 * @tc.desc : function test
254 */
255 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0011, TestSize.Level1)
256 {
257 CheckSeekResult("/data/test/media/demuxer_parser_all_i_frame_avc.mp4", SEEKTIMES);
258 }
259
260 /**
261 * @tc.number : DEMUXER_RANDOM_SEEK_0012
262 * @tc.name : demuxer random seek, demuxer_parser_all_i_frame_hevc.mp4
263 * @tc.desc : function test
264 */
265 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0012, TestSize.Level1)
266 {
267 CheckSeekResult("/data/test/media/demuxer_parser_all_i_frame_hevc.mp4", SEEKTIMES);
268 }
269
270 /**
271 * @tc.number : DEMUXER_RANDOM_SEEK_0013
272 * @tc.name : demuxer random seek, demuxer_parser_ipb_frame_avc.mp4
273 * @tc.desc : function test
274 */
275 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0013, TestSize.Level0)
276 {
277 CheckSeekResult("/data/test/media/demuxer_parser_ipb_frame_avc.mp4", SEEKTIMES);
278 }
279
280 /**
281 * @tc.number : DEMUXER_RANDOM_SEEK_0014
282 * @tc.name : demuxer random seek, demuxer_parser_ipb_frame_hevc.mp4
283 * @tc.desc : function test
284 */
285 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0014, TestSize.Level0)
286 {
287 CheckSeekResult("/data/test/media/demuxer_parser_ipb_frame_hevc.mp4", SEEKTIMES);
288 }
289
290 /**
291 * @tc.number : DEMUXER_RANDOM_SEEK_0015
292 * @tc.name : demuxer random seek, demuxer_parser_ltr_frame_avc.mp4
293 * @tc.desc : function test
294 */
295 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0015, TestSize.Level2)
296 {
297 CheckSeekResult("/data/test/media/demuxer_parser_ltr_frame_avc.mp4", SEEKTIMES);
298 }
299
300 /**
301 * @tc.number : DEMUXER_RANDOM_SEEK_0016
302 * @tc.name : demuxer random seek, demuxer_parser_ltr_frame_hevc.mp4
303 * @tc.desc : function test
304 */
305 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0016, TestSize.Level2)
306 {
307 CheckSeekResult("/data/test/media/demuxer_parser_ltr_frame_hevc.mp4", SEEKTIMES);
308 }
309
310 /**
311 * @tc.number : DEMUXER_RANDOM_SEEK_0017
312 * @tc.name : demuxer random seek, demuxer_parser_one_i_frame_avc.mp4
313 * @tc.desc : function test
314 */
315 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0017, TestSize.Level0)
316 {
317 CheckSeekResult("/data/test/media/demuxer_parser_one_i_frame_avc.mp4", SEEKTIMES);
318 }
319
320 /**
321 * @tc.number : DEMUXER_RANDOM_SEEK_0018
322 * @tc.name : demuxer random seek, demuxer_parser_one_i_frame_hevc.mp4
323 * @tc.desc : function test
324 */
325 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0018, TestSize.Level1)
326 {
327 CheckSeekResult("/data/test/media/demuxer_parser_one_i_frame_hevc.mp4", SEEKTIMES);
328 }
329
330 /**
331 * @tc.number : DEMUXER_RANDOM_SEEK_0019
332 * @tc.name : demuxer random seek, demuxer_parser_one_i_frame_no_audio_avc.mp4
333 * @tc.desc : function test
334 */
335 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0019, TestSize.Level2)
336 {
337 CheckSeekResult("/data/test/media/demuxer_parser_one_i_frame_no_audio_avc.mp4", SEEKTIMES);
338 }
339
340 /**
341 * @tc.number : DEMUXER_RANDOM_SEEK_0020
342 * @tc.name : demuxer random seek, demuxer_parser_one_i_frame_no_audio_hevc.mp4
343 * @tc.desc : function test
344 */
345 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0020, TestSize.Level2)
346 {
347 CheckSeekResult("/data/test/media/demuxer_parser_one_i_frame_no_audio_hevc.mp4", SEEKTIMES);
348 }
349
350 /**
351 * @tc.number : DEMUXER_RANDOM_SEEK_0021
352 * @tc.name : demuxer random seek, demuxer_parser_sdtp_frame_avc.mp4
353 * @tc.desc : function test
354 */
355 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0021, TestSize.Level2)
356 {
357 CheckSeekResult("/data/test/media/demuxer_parser_sdtp_frame_avc.mp4", SEEKTIMES);
358 }
359
360 /**
361 * @tc.number : DEMUXER_RANDOM_SEEK_0022
362 * @tc.name : demuxer random seek, demuxer_parser_sdtp_frame_hevc.mp4
363 * @tc.desc : function test
364 */
365 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0022, TestSize.Level2)
366 {
367 CheckSeekResult("/data/test/media/demuxer_parser_sdtp_frame_hevc.mp4", SEEKTIMES);
368 }
369
370 /**
371 * @tc.number : DEMUXER_RANDOM_SEEK_0023
372 * @tc.name : demuxer random seek, double_hevc.mp4
373 * @tc.desc : function test
374 */
375 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0023, TestSize.Level1)
376 {
377 CheckSeekResult("/data/test/media/double_hevc.mp4", SEEKTIMES);
378 }
379
380 /**
381 * @tc.number : DEMUXER_RANDOM_SEEK_0024
382 * @tc.name : demuxer random seek, double_vivid.mp4
383 * @tc.desc : function test
384 */
385 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0024, TestSize.Level2)
386 {
387 CheckSeekResult("/data/test/media/double_vivid.mp4", SEEKTIMES);
388 }
389
390 /**
391 * @tc.number : DEMUXER_RANDOM_SEEK_0026
392 * @tc.name : demuxer random seek, h264_aac_640.ts
393 * @tc.desc : function test
394 */
395 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0026, TestSize.Level2)
396 {
397 CheckSeekResult("/data/test/media/h264_aac_640.ts", SEEKTIMES);
398 }
399
400 /**
401 * @tc.number : DEMUXER_RANDOM_SEEK_0027
402 * @tc.name : demuxer random seek, h264_aac_1280.ts
403 * @tc.desc : function test
404 */
405 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0027, TestSize.Level2)
406 {
407 CheckSeekResult("/data/test/media/h264_aac_1280.ts", SEEKTIMES);
408 }
409
410 /**
411 * @tc.number : DEMUXER_RANDOM_SEEK_0028
412 * @tc.name : demuxer random seek, h264_aac_1920.ts
413 * @tc.desc : function test
414 */
415 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0028, TestSize.Level2)
416 {
417 CheckSeekResult("/data/test/media/h264_aac_1920.ts", SEEKTIMES);
418 }
419
420 /**
421 * @tc.number : DEMUXER_RANDOM_SEEK_0029
422 * @tc.name : demuxer random seek, h264_mp3_3mevx_fmp4.mp4
423 * @tc.desc : function test
424 */
425 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0029, TestSize.Level1)
426 {
427 CheckSeekResult("/data/test/media/h264_mp3_3mevx_fmp4.mp4", SEEKTIMES);
428 }
429
430 /**
431 * @tc.number : DEMUXER_RANDOM_SEEK_0030
432 * @tc.name : demuxer random seek, h265_aac_1mvex_fmp4.mp4
433 * @tc.desc : function test
434 */
435 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0030, TestSize.Level2)
436 {
437 CheckSeekResult("/data/test/media/h265_aac_1mvex_fmp4.mp4", SEEKTIMES);
438 }
439
440 /**
441 * @tc.number : DEMUXER_RANDOM_SEEK_0032
442 * @tc.name : demuxer random seek, h265_mp3_640.ts
443 * @tc.desc : function test
444 */
445 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0032, TestSize.Level2)
446 {
447 CheckSeekResult("/data/test/media/h265_mp3_640.ts", SEEKTIMES);
448 }
449
450 /**
451 * @tc.number : DEMUXER_RANDOM_SEEK_0033
452 * @tc.name : demuxer random seek, h265_mp3_1280.ts
453 * @tc.desc : function test
454 */
455 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0033, TestSize.Level2)
456 {
457 CheckSeekResult("/data/test/media/h265_mp3_1280.ts", SEEKTIMES);
458 }
459
460 /**
461 * @tc.number : DEMUXER_RANDOM_SEEK_0034
462 * @tc.name : demuxer random seek, h265_mp3_1920.ts
463 * @tc.desc : function test
464 */
465 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0034, TestSize.Level2)
466 {
467 CheckSeekResult("/data/test/media/h265_mp3_1920.ts", SEEKTIMES);
468 }
469
470 /**
471 * @tc.number : DEMUXER_RANDOM_SEEK_0035
472 * @tc.name : demuxer random seek, hevc_pcm_a.flv
473 * @tc.desc : function test
474 */
475 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0035, TestSize.Level2)
476 {
477 CheckSeekResult("/data/test/media/hevc_pcm_a.flv", SEEKTIMES);
478 }
479
480 /**
481 * @tc.number : DEMUXER_RANDOM_SEEK_0036
482 * @tc.name : demuxer random seek, hevc_v.ts
483 * @tc.desc : function test
484 */
485 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0036, TestSize.Level2)
486 {
487 CheckSeekResult("/data/test/media/hevc_v.ts", SEEKTIMES);
488 }
489
490 /**
491 * @tc.number : DEMUXER_RANDOM_SEEK_0037
492 * @tc.name : demuxer random seek, hevc_v_a.ts
493 * @tc.desc : function test
494 */
495 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0037, TestSize.Level2)
496 {
497 CheckSeekResult("/data/test/media/hevc_v_a.ts", SEEKTIMES);
498 }
499
500 /**
501 * @tc.number : DEMUXER_RANDOM_SEEK_0038
502 * @tc.name : demuxer random seek, hvcc.mp4
503 * @tc.desc : function test
504 */
505 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0038, TestSize.Level1)
506 {
507 CheckSeekResult("/data/test/media/hvcc.mp4", SEEKTIMES);
508 }
509
510 /**
511 * @tc.number : DEMUXER_RANDOM_SEEK_0039
512 * @tc.name : demuxer random seek, m4a_fmp4.mp4
513 * @tc.desc : function test
514 */
515 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0039, TestSize.Level2)
516 {
517 CheckSeekResult("/data/test/media/m4a_fmp4.mp4", SEEKTIMES);
518 }
519
520 /**
521 * @tc.number : DEMUXER_RANDOM_SEEK_0040
522 * @tc.name : demuxer random seek, m4v_fmp4.mp4
523 * @tc.desc : function test
524 */
525 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0040, TestSize.Level2)
526 {
527 CheckSeekResult("/data/test/media/m4v_fmp4.mp4", SEEKTIMES);
528 }
529
530 /**
531 * @tc.number : DEMUXER_RANDOM_SEEK_0041
532 * @tc.name : demuxer random seek, mkv.mkv
533 * @tc.desc : function test
534 */
535 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0041, TestSize.Level1)
536 {
537 CheckSeekResult("/data/test/media/mkv.mkv", SEEKTIMES);
538 }
539
540 /**
541 * @tc.number : DEMUXER_RANDOM_SEEK_0042
542 * @tc.name : demuxer random seek, MP3_avcc_10sec.bin
543 * @tc.desc : function test
544 */
545 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0042, TestSize.Level2)
546 {
547 CheckSeekResult("/data/test/media/MP3_avcc_10sec.bin", SEEKTIMES);
548 }
549
550 /**
551 * @tc.number : DEMUXER_RANDOM_SEEK_0043
552 * @tc.name : demuxer random seek, MP3_OGG_48000_1.bin
553 * @tc.desc : function test
554 */
555 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0043, TestSize.Level2)
556 {
557 CheckSeekResult("/data/test/media/MP3_OGG_48000_1.bin", SEEKTIMES);
558 }
559
560 /**
561 * @tc.number : DEMUXER_RANDOM_SEEK_0044
562 * @tc.name : demuxer random seek, mpeg2.mp4
563 * @tc.desc : function test
564 */
565 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0044, TestSize.Level2)
566 {
567 CheckSeekResult("/data/test/media/mpeg2.mp4", SEEKTIMES);
568 }
569
570 /**
571 * @tc.number : DEMUXER_RANDOM_SEEK_0045
572 * @tc.name : demuxer random seek, noPermission.mp4
573 * @tc.desc : function test
574 */
575 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0045, TestSize.Level2)
576 {
577 CheckSeekResult("/data/test/media/noPermission.mp4", SEEKTIMES);
578 }
579
580 /**
581 * @tc.number : DEMUXER_RANDOM_SEEK_0046
582 * @tc.name : demuxer random seek, NoTimedmetadataAudio.mp4
583 * @tc.desc : function test
584 */
585 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0046, TestSize.Level2)
586 {
587 CheckSeekResult("/data/test/media/NoTimedmetadataAudio.mp4", SEEKTIMES);
588 }
589
590 /**
591 * @tc.number : DEMUXER_RANDOM_SEEK_0047
592 * @tc.name : demuxer random seek, single_60.mp4
593 * @tc.desc : function test
594 */
595 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0047, TestSize.Level2)
596 {
597 CheckSeekResult("/data/test/media/single_60.mp4", SEEKTIMES);
598 }
599
600 /**
601 * @tc.number : DEMUXER_RANDOM_SEEK_0048
602 * @tc.name : demuxer random seek, single_rk.mp4
603 * @tc.desc : function test
604 */
605 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0048, TestSize.Level2)
606 {
607 CheckSeekResult("/data/test/media/single_rk.mp4", SEEKTIMES);
608 }
609
610 /**
611 * @tc.number : DEMUXER_RANDOM_SEEK_0054
612 * @tc.name : demuxer random seek, test_264_B_Gop25_4sec.mp4
613 * @tc.desc : function test
614 */
615 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0054, TestSize.Level2)
616 {
617 CheckSeekResult("/data/test/media/test_264_B_Gop25_4sec.mp4", SEEKTIMES);
618 }
619
620 /**
621 * @tc.number : DEMUXER_RANDOM_SEEK_0055
622 * @tc.name : demuxer random seek, test_265_B_Gop25_4sec.mp4
623 * @tc.desc : function test
624 */
625 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0055, TestSize.Level2)
626 {
627 CheckSeekResult("/data/test/media/test_265_B_Gop25_4sec.mp4", SEEKTIMES);
628 }
629
630 /**
631 * @tc.number : DEMUXER_RANDOM_SEEK_0056
632 * @tc.name : demuxer random seek, test_video_avcc_10sec.bin
633 * @tc.desc : function test
634 */
635 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0056, TestSize.Level1)
636 {
637 CheckSeekResult("/data/test/media/test_video_avcc_10sec.bin", SEEKTIMES);
638 }
639
640 /**
641 * @tc.number : DEMUXER_RANDOM_SEEK_0057
642 * @tc.name : demuxer random seek, Timedmetadata1Track0.mp4
643 * @tc.desc : function test
644 */
645 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0057, TestSize.Level2)
646 {
647 CheckSeekResult("/data/test/media/Timedmetadata1Track0.mp4", SEEKTIMES);
648 }
649
650 /**
651 * @tc.number : DEMUXER_RANDOM_SEEK_0058
652 * @tc.name : demuxer random seek, Timedmetadata1Track1.mp4
653 * @tc.desc : function test
654 */
655 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0058, TestSize.Level2)
656 {
657 CheckSeekResult("/data/test/media/Timedmetadata1Track1.mp4", SEEKTIMES);
658 }
659
660 /**
661 * @tc.number : DEMUXER_RANDOM_SEEK_0059
662 * @tc.name : demuxer random seek, Timedmetadata1Track2.mp4
663 * @tc.desc : function test
664 */
665 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0059, TestSize.Level2)
666 {
667 CheckSeekResult("/data/test/media/Timedmetadata1Track2.mp4", SEEKTIMES);
668 }
669
670 /**
671 * @tc.number : DEMUXER_RANDOM_SEEK_0060
672 * @tc.name : demuxer random seek, Timedmetadata2Track2.mp4
673 * @tc.desc : function test
674 */
675 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0060, TestSize.Level2)
676 {
677 CheckSeekResult("/data/test/media/Timedmetadata2Track2.mp4", SEEKTIMES);
678 }
679
680 /**
681 * @tc.number : DEMUXER_RANDOM_SEEK_0061
682 * @tc.name : demuxer random seek, TimedmetadataAudio.mp4
683 * @tc.desc : function test
684 */
685 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0061, TestSize.Level2)
686 {
687 CheckSeekResult("/data/test/media/TimedmetadataAudio.mp4", SEEKTIMES);
688 }
689
690 /**
691 * @tc.number : DEMUXER_RANDOM_SEEK_0062
692 * @tc.name : demuxer random seek, TimedmetadataVideo.mp4
693 * @tc.desc : function test
694 */
695 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0062, TestSize.Level2)
696 {
697 CheckSeekResult("/data/test/media/TimedmetadataVideo.mp4", SEEKTIMES);
698 }
699
700 /**
701 * @tc.number : DEMUXER_RANDOM_SEEK_0063
702 * @tc.name : demuxer random seek, ts_video.ts
703 * @tc.desc : function test
704 */
705 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0063, TestSize.Level1)
706 {
707 CheckSeekResult("/data/test/media/ts_video.ts", SEEKTIMES);
708 }
709
710 /**
711 * @tc.number : DEMUXER_RANDOM_SEEK_0064
712 * @tc.name : demuxer random seek, video_2audio.mp4
713 * @tc.desc : function test
714 */
715 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0064, TestSize.Level2)
716 {
717 CheckSeekResult("/data/test/media/video_2audio.mp4", SEEKTIMES);
718 }
719
720 /**
721 * @tc.number : DEMUXER_RANDOM_SEEK_0065
722 * @tc.name : demuxer random seek, video_9audio.mp4
723 * @tc.desc : function test
724 */
725 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0065, TestSize.Level2)
726 {
727 CheckSeekResult("/data/test/media/video_9audio.mp4", SEEKTIMES);
728 }
729
730 /**
731 * @tc.number : DEMUXER_RANDOM_SEEK_0071
732 * @tc.name : demuxer random seek, xm.mp4
733 * @tc.desc : function test
734 */
735 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0071, TestSize.Level2)
736 {
737 CheckSeekResult("/data/test/media/xm.mp4", SEEKTIMES);
738 }
739
740 /**
741 * @tc.number : DEMUXER_RANDOM_SEEK_0072
742 * @tc.name : demuxer random seek, AAC_48000_1.aac
743 * @tc.desc : function test
744 */
745 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0072, TestSize.Level2)
746 {
747 CheckSeekResult("/data/test/media/audio/AAC_48000_1.aac", SEEKTIMES);
748 }
749
750 /**
751 * @tc.number : DEMUXER_RANDOM_SEEK_0073
752 * @tc.name : demuxer random seek, amr_nb_8000_1.amr
753 * @tc.desc : function test
754 */
755 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0073, TestSize.Level2)
756 {
757 CheckSeekResult("/data/test/media/audio/amr_nb_8000_1.amr", SEEKTIMES);
758 }
759
760 /**
761 * @tc.number : DEMUXER_RANDOM_SEEK_0074
762 * @tc.name : demuxer random seek, amr_wb_16000_1.amr
763 * @tc.desc : function test
764 */
765 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0074, TestSize.Level2)
766 {
767 CheckSeekResult("/data/test/media/audio/amr_wb_16000_1.amr", SEEKTIMES);
768 }
769
770 /**
771 * @tc.number : DEMUXER_RANDOM_SEEK_0075
772 * @tc.name : demuxer random seek, ape.ape
773 * @tc.desc : function test
774 */
775 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0075, TestSize.Level2)
776 {
777 CheckSeekResult("/data/test/media/audio/ape.ape", SEEKTIMES);
778 }
779
780 /**
781 * @tc.number : DEMUXER_RANDOM_SEEK_0076
782 * @tc.name : demuxer random seek, feff_bom.mp3
783 * @tc.desc : function test
784 */
785 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0076, TestSize.Level2)
786 {
787 CheckSeekResult("/data/test/media/audio/feff_bom.mp3", SEEKTIMES);
788 }
789
790 /**
791 * @tc.number : DEMUXER_RANDOM_SEEK_0077
792 * @tc.name : demuxer random seek, fffe_bom.mp3
793 * @tc.desc : function test
794 */
795 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0077, TestSize.Level2)
796 {
797 CheckSeekResult("/data/test/media/audio/fffe_bom.mp3", SEEKTIMES);
798 }
799
800 /**
801 * @tc.number : DEMUXER_RANDOM_SEEK_0078
802 * @tc.name : demuxer random seek, FLAC_48000_1.flac
803 * @tc.desc : function test
804 */
805 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0078, TestSize.Level2)
806 {
807 CheckSeekResult("/data/test/media/audio/FLAC_48000_1.flac", SEEKTIMES);
808 }
809
810 /**
811 * @tc.number : DEMUXER_RANDOM_SEEK_0079
812 * @tc.name : demuxer random seek, M4A_48000_1.m4a
813 * @tc.desc : function test
814 */
815 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0079, TestSize.Level2)
816 {
817 CheckSeekResult("/data/test/media/audio/M4A_48000_1.m4a", SEEKTIMES);
818 }
819
820 /**
821 * @tc.number : DEMUXER_RANDOM_SEEK_0080
822 * @tc.name : demuxer random seek, MP3_48000_1.mp3
823 * @tc.desc : function test
824 */
825 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0080, TestSize.Level2)
826 {
827 CheckSeekResult("/data/test/media/audio/MP3_48000_1.mp3", SEEKTIMES);
828 }
829
830 /**
831 * @tc.number : DEMUXER_RANDOM_SEEK_0081
832 * @tc.name : demuxer random seek, nonstandard_bom.mp3
833 * @tc.desc : function test
834 */
835 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0081, TestSize.Level2)
836 {
837 CheckSeekResult("/data/test/media/audio/nonstandard_bom.mp3", SEEKTIMES);
838 }
839
840 /**
841 * @tc.number : DEMUXER_RANDOM_SEEK_0082
842 * @tc.name : demuxer random seek, OGG_48000_1.ogg
843 * @tc.desc : function test
844 */
845 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0082, TestSize.Level2)
846 {
847 CheckSeekResult("/data/test/media/audio/OGG_48000_1.ogg", SEEKTIMES);
848 }
849
850 /**
851 * @tc.number : DEMUXER_RANDOM_SEEK_0083
852 * @tc.name : demuxer random seek, wav_48000_1.wav
853 * @tc.desc : function test
854 */
855 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0083, TestSize.Level2)
856 {
857 CheckSeekResult("/data/test/media/audio/wav_48000_1.wav", SEEKTIMES);
858 }
859
860 /**
861 * @tc.number : DEMUXER_RANDOM_SEEK_0084
862 * @tc.name : demuxer random seek, wav_audio_test_1562.wav
863 * @tc.desc : function test
864 */
865 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0084, TestSize.Level2)
866 {
867 CheckSeekResult("/data/test/media/audio/wav_audio_test_1562.wav", SEEKTIMES);
868 }
869
870 /**
871 * @tc.number : DEMUXER_RANDOM_SEEK_0085
872 * @tc.name : demuxer random seek, wav_audio_test_202406290859.wav
873 * @tc.desc : function test
874 */
875 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0085, TestSize.Level2)
876 {
877 CheckSeekResult("/data/test/media/audio/wav_audio_test_202406290859.wav", SEEKTIMES);
878 }
879
880 /**
881 * @tc.number : DEMUXER_RANDOM_SEEK_0086
882 * @tc.name : demuxer random seek, H264_base@5_1920_1080_30_AAC_48K_1.mov
883 * @tc.desc : function test
884 */
885 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0086, TestSize.Level2)
886 {
887 CheckSeekResult("/data/test/media/H264_base@5_1920_1080_30_AAC_48K_1.mov", SEEKTIMES);
888 }
889
890 /**
891 * @tc.number : DEMUXER_RANDOM_SEEK_0087
892 * @tc.name : demuxer random seek, H264_main@4_1280_720_60_MP2_44.1K_2.mov
893 * @tc.desc : function test
894 */
895 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0087, TestSize.Level2)
896 {
897 CheckSeekResult("/data/test/media/H264_main@4_1280_720_60_MP2_44.1K_2.mov", SEEKTIMES);
898 }
899
900 /**
901 * @tc.number : DEMUXER_RANDOM_SEEK_0088
902 * @tc.name : demuxer random seek, H264_high@5.1_3840_2160_30_MP3_48K_1.mov
903 * @tc.desc : function test
904 */
905 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0088, TestSize.Level2)
906 {
907 CheckSeekResult("/data/test/media/H264_high@5.1_3840_2160_30_MP3_48K_1.mov", SEEKTIMES);
908 }
909
910 /**
911 * @tc.number : DEMUXER_RANDOM_SEEK_0089
912 * @tc.name : demuxer random seek, H264_h444@5.1_1920_1080_60_vorbis_32K_2.mov
913 * @tc.desc : function test
914 */
915 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0089, TestSize.Level2)
916 {
917 CheckSeekResult("/data/test/media/H264_h444@5.1_1920_1080_60_vorbis_32K_2.mov", SEEKTIMES);
918 }
919
920 /**
921 * @tc.number : DEMUXER_RANDOM_SEEK_0090
922 * @tc.name : demuxer random seek, H264_main@3_720_480_30_PCM_48K_24_1.mov
923 * @tc.desc : function test
924 */
925 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0090, TestSize.Level2)
926 {
927 CheckSeekResult("/data/test/media/H264_main@3_720_480_30_PCM_48K_24_1.mov", SEEKTIMES);
928 }
929
930 /**
931 * @tc.number : DEMUXER_RANDOM_SEEK_0091
932 * @tc.name : demuxer random seek, H265_main@4_1920_1080_30_AAC_44.1K_2.mov
933 * @tc.desc : function test
934 */
935 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0091, TestSize.Level2)
936 {
937 CheckSeekResult("/data/test/media/H265_main@4_1920_1080_30_AAC_44.1K_2.mov", SEEKTIMES);
938 }
939
940 /**
941 * @tc.number : DEMUXER_RANDOM_SEEK_0092
942 * @tc.name : demuxer random seek, H265_main10@4.1_1280_720_60_MP2_48K_1.mov
943 * @tc.desc : function test
944 */
945 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0092, TestSize.Level2)
946 {
947 CheckSeekResult("/data/test/media/H265_main10@4.1_1280_720_60_MP2_48K_1.mov", SEEKTIMES);
948 }
949
950 /**
951 * @tc.number : DEMUXER_RANDOM_SEEK_0093
952 * @tc.name : demuxer random seek, H265_main10@5_1920_1080_60_MP3_44.1K_2.mov
953 * @tc.desc : function test
954 */
955 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0093, TestSize.Level2)
956 {
957 CheckSeekResult("/data/test/media/H265_main10@5_1920_1080_60_MP3_44.1K_2.mov", SEEKTIMES);
958 }
959
960 /**
961 * @tc.number : DEMUXER_RANDOM_SEEK_0094
962 * @tc.name : demuxer random seek, H265_main@5_3840_2160_30_vorbis_48K_1.mov
963 * @tc.desc : function test
964 */
965 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0094, TestSize.Level2)
966 {
967 CheckSeekResult("/data/test/media/H265_main@5_3840_2160_30_vorbis_48K_1.mov", SEEKTIMES);
968 }
969
970 /**
971 * @tc.number : DEMUXER_RANDOM_SEEK_0095
972 * @tc.name : demuxer random seek, H265_main10@5.1_3840_2160_60_PCM(mulaw)_48K_16_2.mov
973 * @tc.desc : function test
974 */
975 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0095, TestSize.Level2)
976 {
977 CheckSeekResult("/data/test/media/H265_main10@5.1_3840_2160_60_PCM(mulaw)_48K_16_2.mov", SEEKTIMES);
978 }
979
980 /**
981 * @tc.number : DEMUXER_RANDOM_SEEK_0096
982 * @tc.name : demuxer random seek, MPEG4_SP@5_720_480_30_AAC_32K_1.mov
983 * @tc.desc : function test
984 */
985 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0096, TestSize.Level2)
986 {
987 CheckSeekResult("/data/test/media/MPEG4_SP@5_720_480_30_AAC_32K_1.mov", SEEKTIMES);
988 }
989
990 /**
991 * @tc.number : DEMUXER_RANDOM_SEEK_0097
992 * @tc.name : demuxer random seek, MPEG4_SP@6_1280_720_30_MP2_32K_2.mov
993 * @tc.desc : function test
994 */
995 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0097, TestSize.Level2)
996 {
997 CheckSeekResult("/data/test/media/MPEG4_SP@6_1280_720_30_MP2_32K_2.mov", SEEKTIMES);
998 }
999
1000 /**
1001 * @tc.number : DEMUXER_RANDOM_SEEK_0098
1002 * @tc.name : demuxer random seek, MPEG4_ASP@3_352_288_30_MP3_32K_1.mov
1003 * @tc.desc : function test
1004 */
1005 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0098, TestSize.Level2)
1006 {
1007 CheckSeekResult("/data/test/media/MPEG4_ASP@3_352_288_30_MP3_32K_1.mov", SEEKTIMES);
1008 }
1009
1010 /**
1011 * @tc.number : DEMUXER_RANDOM_SEEK_0099
1012 * @tc.name : demuxer random seek, MPEG4_ASP@4_720_576_30_Vorbis_44.1K_2.mov
1013 * @tc.desc : function test
1014 */
1015 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0099, TestSize.Level2)
1016 {
1017 CheckSeekResult("/data/test/media/MPEG4_ASP@4_720_576_30_Vorbis_44.1K_2.mov", SEEKTIMES);
1018 }
1019
1020 /**
1021 * @tc.number : DEMUXER_RANDOM_SEEK_0100
1022 * @tc.name : demuxer random seek, MPEG4_Core@2_1920_1080_30_PCM(mulaw)_44.1K_16_1.mov
1023 * @tc.desc : function test
1024 */
1025 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0100, TestSize.Level2)
1026 {
1027 CheckSeekResult("/data/test/media/MPEG4_Core@2_1920_1080_30_PCM(mulaw)_44.1K_16_1.mov", SEEKTIMES);
1028 }
1029
1030 /**
1031 * @tc.number : DEMUXER_RANDOM_SEEK_0101
1032 * @tc.name : demuxer random seek, H264_base@5_1920_1080_30_MP2_44.1K_1.mpg
1033 * @tc.desc : function test
1034 */
1035 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0101, TestSize.Level2)
1036 {
1037 CheckSeekResult("/data/test/media/H264_base@5_1920_1080_30_MP2_44.1K_1.mpg", SEEKTIMES);
1038 }
1039
1040 /**
1041 * @tc.number : DEMUXER_RANDOM_SEEK_0102
1042 * @tc.name : demuxer random seek, H264_h444p@5.1_1920_1080_60_MP2_48K_2.mpg
1043 * @tc.desc : function test
1044 */
1045 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0102, TestSize.Level2)
1046 {
1047 CheckSeekResult("/data/test/media/H264_h444p@5.1_1920_1080_60_MP2_48K_2.mpg", SEEKTIMES);
1048 }
1049
1050 /**
1051 * @tc.number : DEMUXER_RANDOM_SEEK_0103
1052 * @tc.name : demuxer random seek, H264_high@5.1_3840_2160_30_MP3_44.1K_1.mpg
1053 * @tc.desc : function test
1054 */
1055 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0103, TestSize.Level2)
1056 {
1057 CheckSeekResult("/data/test/media/H264_high@5.1_3840_2160_30_MP3_44.1K_1.mpg", SEEKTIMES);
1058 }
1059
1060 /**
1061 * @tc.number : DEMUXER_RANDOM_SEEK_0104
1062 * @tc.name : demuxer random seek, H264_main@4.2_1280_720_60_MP3_32K_2.mpg
1063 * @tc.desc : function test
1064 */
1065 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0104, TestSize.Level2)
1066 {
1067 CheckSeekResult("/data/test/media/H264_main@4.2_1280_720_60_MP3_32K_2.mpg", SEEKTIMES);
1068 }
1069
1070 /**
1071 * @tc.number : DEMUXER_RANDOM_SEEK_0105
1072 * @tc.name : demuxer random seek, MPEG2_422p_1280_720_60_MP3_32K_1.mpg
1073 * @tc.desc : function test
1074 */
1075 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0105, TestSize.Level2)
1076 {
1077 CheckSeekResult("/data/test/media/MPEG2_422p_1280_720_60_MP3_32K_1.mpg", SEEKTIMES);
1078 }
1079
1080 /**
1081 * @tc.number : DEMUXER_RANDOM_SEEK_0106
1082 * @tc.name : demuxer random seek, MPEG2_high_720_480_30_MP2_32K_2.mpg
1083 * @tc.desc : function test
1084 */
1085 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0106, TestSize.Level2)
1086 {
1087 CheckSeekResult("/data/test/media/MPEG2_high_720_480_30_MP2_32K_2.mpg", SEEKTIMES);
1088 }
1089
1090 /**
1091 * @tc.number : DEMUXER_RANDOM_SEEK_0107
1092 * @tc.name : demuxer random seek, MPEG2_main_352_288_30_MP2_44.1K_1.mpg
1093 * @tc.desc : function test
1094 */
1095 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0107, TestSize.Level2)
1096 {
1097 CheckSeekResult("/data/test/media/MPEG2_main_352_288_30_MP2_44.1K_1.mpg", SEEKTIMES);
1098 }
1099
1100 /**
1101 * @tc.number : DEMUXER_RANDOM_SEEK_0108
1102 * @tc.name : demuxer random seek, MPEG2_main_1920_1080_30_MP3_48K_2.mpg
1103 * @tc.desc : function test
1104 */
1105 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0108, TestSize.Level2)
1106 {
1107 CheckSeekResult("/data/test/media/MPEG2_main_1920_1080_30_MP3_48K_2.mpg", SEEKTIMES);
1108 }
1109
1110 /**
1111 * @tc.number : DEMUXER_RANDOM_SEEK_0109
1112 * @tc.name : demuxer random seek, MPEG2_simple_320_240_24_MP3_48K_2.mpg
1113 * @tc.desc : function test
1114 */
1115 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_RANDOM_SEEK_0109, TestSize.Level2)
1116 {
1117 CheckSeekResult("/data/test/media/MPEG2_simple_320_240_24_MP3_48K_2.mpg", SEEKTIMES);
1118 }
1119
1120 /**
1121 * @tc.number : DEMUXER_AVI_RANDOM_SEEK_0100
1122 * @tc.name : demuxer random seek,AVI_H263_baseline@level10_352_288_AAC_2.avi
1123 * @tc.desc : function test
1124 */
1125 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_AVI_RANDOM_SEEK_0100, TestSize.Level2)
1126 {
1127 CheckSeekResult("/data/test/media/AVI_H263_baseline@level10_352_288_AAC_2.avi", SEEKTIMES);
1128 }
1129
1130 /**
1131 * @tc.number : DEMUXER_AVI_RANDOM_SEEK_0200
1132 * @tc.name : demuxer random seek, AVI_H263_baseline@level20_352_288_MP2_1.avi
1133 * @tc.desc : function test
1134 */
1135 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_AVI_RANDOM_SEEK_0200, TestSize.Level2)
1136 {
1137 CheckSeekResult("/data/test/media/AVI_H263_baseline@level20_352_288_MP2_1.avi", SEEKTIMES);
1138 }
1139
1140 /**
1141 * @tc.number : DEMUXER_AVI_RANDOM_SEEK_0300
1142 * @tc.name : demuxer random seek, AVI_H263_baseline@level60_704_576_MP3_2.avi
1143 * @tc.desc : function test
1144 */
1145 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_AVI_RANDOM_SEEK_0300, TestSize.Level2)
1146 {
1147 CheckSeekResult("/data/test/media/AVI_H263_baseline@level60_704_576_MP3_2.avi", SEEKTIMES);
1148 }
1149
1150 /**
1151 * @tc.number : DEMUXER_AVI_RANDOM_SEEK_0400
1152 * @tc.name : demuxer random seek, AVI_H263_baseline@level70_1408_1152_PCM_mulaw_1.avi
1153 * @tc.desc : function test
1154 */
1155 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_AVI_RANDOM_SEEK_0400, TestSize.Level2)
1156 {
1157 CheckSeekResult("/data/test/media/AVI_H263_baseline@level70_1408_1152_PCM_mulaw_1.avi", SEEKTIMES);
1158 }
1159
1160 /**
1161 * @tc.number : DEMUXER_AVI_RANDOM_SEEK_0500
1162 * @tc.name : demuxer random seek, AVI_H264_baseline@level4.1_1280_720_AAC_2.avi
1163 * @tc.desc : function test
1164 */
1165 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_AVI_RANDOM_SEEK_0500, TestSize.Level2)
1166 {
1167 CheckSeekResult("/data/test/media/AVI_H264_constrained_baseline@level4.1_1280_720_AAC_2.avi", SEEKTIMES);
1168 }
1169
1170 /**
1171 * @tc.number : DEMUXER_AVI_RANDOM_SEEK_0600
1172 * @tc.name : demuxer random seek, AVI_H264_main@level5_1920_1080_PM2_1.avi
1173 * @tc.desc : function test
1174 */
1175 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_AVI_RANDOM_SEEK_0600, TestSize.Level2)
1176 {
1177 CheckSeekResult("/data/test/media/AVI_H264_main@level5_1920_1080_MP2_1.avi", SEEKTIMES);
1178 }
1179
1180 /**
1181 * @tc.number : DEMUXER_AVI_RANDOM_SEEK_0700
1182 * @tc.name : demuxer random seek, AVI_H264_high@level5.1_1920_1080_PM3_2.avi
1183 * @tc.desc : function test
1184 */
1185 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_AVI_RANDOM_SEEK_0700, TestSize.Level2)
1186 {
1187 CheckSeekResult("/data/test/media/AVI_H264_high@level5.1_1920_1080_MP3_2.avi", SEEKTIMES);
1188 }
1189
1190 /**
1191 * @tc.number : DEMUXER_AVI_RANDOM_SEEK_0800
1192 * @tc.name : demuxer random seek, AVI_H264_h422@level5.1_2560_1920_PCM_mulaw_1.avi
1193 * @tc.desc : function test
1194 */
1195 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_AVI_RANDOM_SEEK_0800, TestSize.Level2)
1196 {
1197 CheckSeekResult("/data/test/media/AVI_H264_high@level5_2560_1920_PCM_mulaw_1.avi", SEEKTIMES);
1198 }
1199
1200 /**
1201 * @tc.number : DEMUXER_AVI_RANDOM_SEEK_0900
1202 * @tc.name : demuxer random seek, AVI_MPEG2_simple@low_320_240_AAC_2.avi
1203 * @tc.desc : function test
1204 */
1205 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_AVI_RANDOM_SEEK_0900, TestSize.Level2)
1206 {
1207 CheckSeekResult("/data/test/media/AVI_MPEG2_simple@low_320_240_AAC_2.avi", SEEKTIMES);
1208 }
1209
1210 /**
1211 * @tc.number : DEMUXER_AVI_RANDOM_SEEK_1000
1212 * @tc.name : demuxer random seek, AVI_MPEG2_main@mian_720_480_MP2_1.avi
1213 * @tc.desc : function test
1214 */
1215 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_AVI_RANDOM_SEEK_1000, TestSize.Level2)
1216 {
1217 CheckSeekResult("/data/test/media/AVI_MPEG2_main@mian_640_480_MP2_1.avi", SEEKTIMES);
1218 }
1219
1220 /**
1221 * @tc.number : DEMUXER_AVI_RANDOM_SEEK_1100
1222 * @tc.name : demuxer random seek, AVI_MPEG2_high@high_1440_1080_MP3_2.avi
1223 * @tc.desc : function test
1224 */
1225 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_AVI_RANDOM_SEEK_1100, TestSize.Level2)
1226 {
1227 CheckSeekResult("/data/test/media/AVI_MPEG2_simple@main_640_480_MP3_2.avi", SEEKTIMES);
1228 }
1229
1230 /**
1231 * @tc.number : DEMUXER_AVI_RANDOM_SEEK_1200
1232 * @tc.name : demuxer random seek, AVI_MPEG2_422P@high_1920_1080_PCM_s24_1.avi
1233 * @tc.desc : function test
1234 */
1235 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_AVI_RANDOM_SEEK_1200, TestSize.Level2)
1236 {
1237 CheckSeekResult("/data/test/media/AVI_MPEG2_422P@high_1920_1080_PCM_s24_1.avi", SEEKTIMES);
1238 }
1239
1240 /**
1241 * @tc.number : DEMUXER_AVI_RANDOM_SEEK_1300
1242 * @tc.name : demuxer random seek, AVI_MPEG4_simple@level5_720_480_AAC_2.avi
1243 * @tc.desc : function test
1244 */
1245 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_AVI_RANDOM_SEEK_1300, TestSize.Level2)
1246 {
1247 CheckSeekResult("/data/test/media/AVI_MPEG4_simple@level1_640_480_AAC_2.avi", SEEKTIMES);
1248 }
1249
1250 /**
1251 * @tc.number : DEMUXER_AVI_RANDOM_SEEK_1400
1252 * @tc.name : demuxer random seek, AVI_MPEG4_advanced_simple@level6_1280_720_MP2_1.avi
1253 * @tc.desc : function test
1254 */
1255 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_AVI_RANDOM_SEEK_1400, TestSize.Level2)
1256 {
1257 CheckSeekResult("/data/test/media/AVI_MPEG4_advanced_simple@level6_1280_720_MP2_1.avi", SEEKTIMES);
1258 }
1259
1260 /**
1261 * @tc.number : DEMUXER_AVI_RANDOM_SEEK_1500
1262 * @tc.name : demuxer random seek, AVI_MPEG4_advanced_simple@level3_352_288_MP3_2.avi
1263 * @tc.desc : function test
1264 */
1265 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_AVI_RANDOM_SEEK_1500, TestSize.Level2)
1266 {
1267 CheckSeekResult("/data/test/media/AVI_MPEG4_advanced_simple@level3_352_288_MP3_2.avi", SEEKTIMES);
1268 }
1269
1270 /**
1271 * @tc.number : DEMUXER_AVI_RANDOM_SEEK_1600
1272 * @tc.name : demuxer random seek, AVI_MPEG4_main@level5_720_576_PCM_s32_1.avi
1273 * @tc.desc : function test
1274 */
1275 HWTEST_F(DemuxerRandomSeekNdkTest, DEMUXER_AVI_RANDOM_SEEK_1600, TestSize.Level2)
1276 {
1277 CheckSeekResult("/data/test/media/AVI_MPEG4_main@level5_720_576_PCM_s32_1.avi", SEEKTIMES);
1278 }