Commit graph

83 commits

Author SHA1 Message Date
Ram Mohan M
99d23a09f1 move duplicate code to common
Test: make vts -j99 BUILD_GOOGLE_VTS=true TARGET_PRODUCT=aosp_arm64 \
&& vts-tradefed run commandAndExit vts \
--skip-all-system-status-check --primary-abi-only \
--skip-preconditions --module VtsHalMediaOmxV1_0Test -l INFO

Bug: 62894603

Change-Id: I4f9bec22c6437935f49603f11d27642ef2135382
2017-06-27 03:54:14 -07:00
Ram Mohan M
1bb4cc080b bug fix: pass comp name information to port reconfiguration at all calls
This is a follow up for 553f633762ef748d04717c3cc4b4dbfecb203620 commit

Test: make vts -j99 BUILD_GOOGLE_VTS=true TARGET_PRODUCT=aosp_arm64 \
&& vts-tradefed run commandAndExit vts \
--skip-all-system-status-check --primary-abi-only \
--skip-preconditions --module VtsHalMediaOmxV1_0Test -l INFO

Bug: 62893665

Change-Id: Ic979964bff9c2240e9d9469238882efa86467399
2017-06-22 02:17:27 -07:00
Ram Mohan M
b7ae92bacb bug fix: configure output port frame dimensions
frame dimensions are configured for input port but not output port.
As a result in qcom encoder components, the encoded image is getting
downsized to default dimensions configured for output port. This is now
corrected.

Test: make vts -j30 BUILD_GOOGLE_VTS=true TARGET_PRODUCT=aosp_arm64 &&
vts-tradefed run commandAndExit vts --skip-all-system-status-check
--primary-abi-only --skip-preconditions --module VtsHalMediaOmxV1_0Test
-l INFO

Bug: 62669756
Change-Id: Ib38006edbc82427d322632534ca78d78c5f30eff
2017-06-16 16:26:41 -07:00
Ram Mohan M
c36d38fb55 Increase Timeout for dequeue message
am: 4e39ff9235

Change-Id: If484fa82b3215380f17057e5cadbb6fb42685f81
2017-06-10 05:19:54 +00:00
Ram Mohan M
4e39ff9235 Increase Timeout for dequeue message
In vp9 encoder component, the callback responses are being recevied
after timeout. This is seen only in vp9. Even when no buffer processing
is done, Flush test, state transitions test fail due to slow responses.
This behavior is not seen in other components. This requires deeper
understanding of what is main culprit. But for now increase the timeout

Test: VtsHalMediaOmxV1_0Host
Bug: 37501531
Change-Id: I08abfefcf0cb38d312a4a2dc10908e24f88c54fd
2017-06-09 20:08:13 -07:00
Ram Mohan M
db3214fb49 Merge "bug fix: fix encoder input port configuration issues" into oc-dev
am: 7d1592a732

Change-Id: I82164b85e4ad3d2a3f363c14526fb3645ec47397
2017-06-10 01:28:45 +00:00
Ram Mohan M
e808bef25e Merge "bug fix: configure input port format before setInputSurface" into oc-dev
am: bd5b6f8535

Change-Id: Ic894f1553d826ab1887535e2e70dfce889e715e6
2017-06-10 01:28:41 +00:00
Ram Mohan M
3b79a2102f choose input color format between 420p, 420sp
am: 1d273b3bcf

Change-Id: I6ffeed6b9bba24936e446efb2c508338180c04b9
2017-06-10 01:28:36 +00:00
TreeHugger Robot
7d1592a732 Merge "bug fix: fix encoder input port configuration issues" into oc-dev 2017-06-10 01:23:30 +00:00
TreeHugger Robot
bd5b6f8535 Merge "bug fix: configure input port format before setInputSurface" into oc-dev 2017-06-10 01:23:30 +00:00
Ram Mohan M
1d273b3bcf choose input color format between 420p, 420sp
Test: VtsHalMediaOmxV1_0Host
Bug: 37501531
Change-Id: I5fc2f5c69ca545f2ca0b444ce89a8c970f2ff98e
2017-06-09 07:48:25 -07:00
Ram Mohan M
8cbb07a5f6 Merge "AudioDec Test: Ignore output port configuration" into oc-dev
am: 11e9b588c4

Change-Id: Ib50f2f61385a5382d7f9f24608c93682594dfa1e
2017-06-09 03:17:20 +00:00
Ram Mohan M
72ba614357 Merge "VideoEnc Test: extend lockYCbCr() to hal yuv formats" into oc-dev
am: 452fe6aef2

Change-Id: I9c89448a47eb1c0280a0282b9534911886279179
2017-06-09 03:17:16 +00:00
Ram Mohan M
2e6a7a08f7 Merge "Vts AudioDec Test: Disable EOSTest_M" into oc-dev
am: a12a573955

Change-Id: I437d8e59167209e86d1f8679e7ff2486fbf81c1a
2017-06-09 03:17:13 +00:00
TreeHugger Robot
11e9b588c4 Merge "AudioDec Test: Ignore output port configuration" into oc-dev 2017-06-09 03:12:08 +00:00
TreeHugger Robot
452fe6aef2 Merge "VideoEnc Test: extend lockYCbCr() to hal yuv formats" into oc-dev 2017-06-09 03:12:08 +00:00
TreeHugger Robot
a12a573955 Merge "Vts AudioDec Test: Disable EOSTest_M" into oc-dev 2017-06-09 03:12:08 +00:00
Ram Mohan M
951c9212fb bug fix: configure input port format before setInputSurface
Test: VtsHalMediaOmxV1_0Host
Bug: 37501531
Change-Id: I7b48bf240a243b0b25c1c5e0f36c858b04271194
2017-06-08 16:13:22 -07:00
Ram Mohan M
79312c8aa2 bug fix: fix encoder input port configuration issues
1. Number of P frames being INT_MAX - 1 is misleading few components.
avoid this value
2. enumerate level: The level information is obtained from
enumerateProfileandLevel. Now the component supports up to this level
or 1 step below this level is unclear. This is causing few problems in
the configuration of input port.
3. Disable few error checks for index types that are not universally
supported

Test: VtsHalMediaOmxV1_0Host
Bug: 37501531
Change-Id: I0c3220ec8d17d3527fa5fdae1a2f9c5add11a5de
2017-06-08 16:11:09 -07:00
Zhuoyao Zhang
d56b3083dd Merge "Vts Omx Tests: Disable test that are not IOMX compatible" into oc-dev
am: 6fe8953866

Change-Id: If733f379b1433fc1c86754a9cba772cdf2034f12
2017-06-08 16:29:00 +00:00
Zhuoyao Zhang
ca7c33143d Merge "Omx vts tests" into oc-dev
am: 2e2e255125

Change-Id: I47b2613f0cfaf1f237bbdc432262b46fc3de3b9f
2017-06-08 16:28:23 +00:00
Ram Mohan M
59197e8cf9 AudioDec Test: Ignore output port configuration
audio dec components vorbis, opus and raw undergo auto output port
configuration and donot allow client to configure. By pass output port
configuration for these components

Test: VtsHalMediaOmxV1_0Host
Bug: 37501531
Change-Id: Ib1539b36589db5bdf1b6d82fcd0c50ba420a0299
2017-06-08 05:25:29 -07:00
Ram Mohan M
2b7a309e25 VideoEnc Test: extend lockYCbCr() to hal yuv formats
Test: VtsHalMediaOmxV1_0Host
Bug: 37501531
Change-Id: I4661f41a92aac44e8a8d2721dfebbd25045fbe1c
2017-06-08 05:23:50 -07:00
Ram Mohan M
5052e189e9 Vts AudioDec Test: Disable EOSTest_M
Sending first buffer as EOS, is not supported across all components.
We will revisit this fixture at a later stage

Test: VtsHalMediaOmxV1_0Host
Bug: 37501531
Change-Id: Ic9f59f7b0a5291710bc50710ef054b0c0c49ca98
2017-06-08 05:02:28 -07:00
Ram Mohan M
2aedf7596d Vts Omx Tests: Disable test that are not IOMX compatible
Android IOMX differs slightly from OMX. Disable tests that are not
needed (for now). We will revisit them at a later stage

Bug:32023356
Bug:37501531

Test: make vts.

Change-Id: Iad71d72a4a66d621f415731d2c0e1a3794ed3524
2017-06-07 17:53:26 -07:00
Ram Mohan M
f0e839e0e7 Omx vts tests
Bug:32023356
Test: make vts.

cleanup: move duplicate code to common

moved code shared across application to common and
removed duplicate code

Change-Id: I2dacb9d72bdf545addd2cc377dd4342c92f50f11

restrict secure component testing to VTS*ComponentTest

Change-Id: I1d2878408df2e4cbe31b3b47a3d6500a90692a7a

Master Test: test component node alloc/dealloc

Change-Id: I89ef853cf5a9f6b0a0af9e25ef484968aec614f6

Component Test: fix dispatchMsg test fixture

Change-Id: Ie1068a5d73a3a573e552cf023c9c7dc78a43ea59

AudioDec Test : missing csd in opus resource files

opus decoder test resource files have a missing csd. This is causing
timestamp list empty test to fail. This is fixed

Change-Id: I6ae3b241fbf3e384943a0e6e80838a45c1fc6687

Change-Id: Ie7775456542f12d5f5d87dded4b0a57fd0723037
2017-06-07 17:50:50 -07:00
Yi Kong
15ec48374b Fix build, put back 'this' capture
'this' capture is not unused, need to put back.

This was due to a bad manual merge.

Test: build
Change-Id: I35f7ddbe7bf8a3b57ea8a83f334afee2156109f6
2017-06-07 14:20:31 -07:00
Chih-Hung Hsieh
d3bc681f26 Remove unused lambda capture
New clang compiler gives warning to unused lambda captures.
Apply clang-format.

Bug: 37423073
Test: Build

Change-Id: Icdf019df1a6c9dcadeb35551377d7afa09eebb3e
(cherry picked from commit 7eb57b60ab)
2017-06-07 12:57:20 -07:00
Zhuoyao Zhang
176c564b54 Merge "Omx vts tests." into oc-dev
am: 89ed70727d

Change-Id: I83ae4865778f42a768a556bebfc6524cbfbc0918
2017-06-06 18:36:48 +00:00
Ram Mohan M
92fb9ab603 Omx vts tests.
Bug:32023356
Test: make vts.

bug fix : fix issues in port reconfiguration

soft and vendor omx components communicate differently. The existing
design doesnt cover this. This is now fixed

Change-Id: I898e60c93961f468e749ab5f13db996c5fd53967

add support for additional color formats

tested encoder for bgra & 420sp color format inputs.
added code to get/set encoder latency.
some more necessary code cleanup.

Change-Id: I05b79d0a7706e20afaf91c88caf3e523c98b4540

IOmxBufferSource callback tests

Change-Id: I2826597c6ab110a0bf52290e3c52ff3fb3c6ea23
2017-05-31 12:53:37 -07:00
Zhuoyao Zhang
77a91e8f08 Merge "Omx vts test." into oc-dev
am: 9a9c8da39b

Change-Id: I4ac6e9ffe3ccd4b473d7355c1c18df14f31cfc3e
2017-05-26 00:26:02 +00:00
Ram Mohan M
ccc194cffd Omx vts test.
Bug:32023356
Test: make vts.

Merged-In: I83b454b999203fb94bc4cc50c91bd99f788131b3

secure buffer allocation for secure components

As of now, we see a crash in encoder test application on secure components
This is due to nullptr access. setting property media.mediadrmservice.enable
to 1 causes a different crash sigabrt(). In decoder securebufferallocation
call passes but we havent done anything with it. This commit needs more work.

Change-Id: I19127e39ad7daf66ac5277406e3857ec45c99e0a

add debug code

This can come in handy to view the decoded/encoded content or
for computation of psnr

Change-Id: I80e60349c76c02e5098df667223a0227f59b8324

video encoder test with anw input buffer

In this commit, anw buffers are provided as input for encoding
as opposed to byte buffers. In process IOmxNode, IGraphicBufferSource api
calls are tested

Change-Id: I7ec4af0746fe59221de42e56b344852d8fadc4f2

add support for additional color formats

Change-Id: Ia88ef9c95882958a68fee5cc68e146c3502a1b48

add eos and timestamp deviation test to video encoder

Change-Id: I9ebeaa53a986ec3f8a2ef55306877aec808d2add

add metamode support for video decoders

Change-Id: I7d6d6991cdc0ed36241d0e99c7a23675664acb10

add a timeout while processing input buffers

do not wait on input buffers processing to complete for an
indefinite amount of time. wait for a predefined duration and
leave

Change-Id: Icceaf0737a52e62f47bc052367e7ddbdc1868a46

move duplicate code to a library

move routines common across audio, video, component folders to a static
library

Change-Id: I55bf21e47571490e989b52b82c48c6e9a4b23745

add end of stream test for audio encoder

add eos test for audio encoder and some more code cleanup

Change-Id: I9d670ed53f6bba5802f919ec915e67bb0fa83518

Ensure all the buffers allocated are cycled

use all buffers provided by the component (even if it is greater than the
number of buffers needed by the bitstream)

Change-Id: I83b454b999203fb94bc4cc50c91bd99f788131b3

move duplicate code to a library - II

Change-Id: I375603feb9da303adc6a2d75ef59e43a11c3bd6d

Change-Id: I83b454b999203fb94bc4cc50c91bd99f788131b3
(cherry picked from commit 1da607c513)
2017-05-25 17:07:10 -07:00
TreeHugger Robot
daa038e999 Merge "Move media_profiles_V1_0.dtd to hardware/interfaces" into oc-dev 2017-05-22 23:53:36 +00:00
Steven Moreland
f203167814 Update makefiles. (2/2)
am: 76cfb84140

Change-Id: I24d21438a5b2f447d2160929c6ff6e17b2b66820
2017-05-22 17:15:20 +00:00
Steven Moreland
76cfb84140 Update makefiles. (2/2)
Adds default configuration for all hals.

Bug: 38415912
Test: pass
Change-Id: Idd1f3a2b7b16ad956d31784a513e93a066cdd02e
2017-05-19 15:54:03 -07:00
Pawin Vongmasa
644fd569bd Move media_profiles_V1_0.dtd to hardware/interfaces
Test: media_profiles_V1_0.dtd exists in system/etc
Bug: 36430270
Merged-In: I43d6eb68cc866a280cbe24fcf0f0af75a3c3ae67
Change-Id: I43d6eb68cc866a280cbe24fcf0f0af75a3c3ae67
2017-05-19 01:11:59 -07:00
Pawin Vongmasa
d30c749adb Move media_profiles_V1_0.dtd to hardware/interfaces
Test: media_profiles_V1_0.dtd exists in system/etc
Bug: 36430270
Merged-In: I43d6eb68cc866a280cbe24fcf0f0af75a3c3ae67
Change-Id: I43d6eb68cc866a280cbe24fcf0f0af75a3c3ae67
2017-05-18 20:42:26 -07:00
Zhuoyao Zhang
640d3f330a Merge "Omx vts tests." into oc-dev
am: 1d619f743d

Change-Id: I80b3c97d186f56210b761e1cd642c209e5071358
2017-05-16 00:08:54 +00:00
Zhuoyao Zhang
1d619f743d Merge "Omx vts tests." into oc-dev 2017-05-15 23:10:37 +00:00
Ram Mohan M
a558d9d5fd Omx vts tests.
Bug: 32023356
Test: make vts.

cover basic encoder & decoder test to all components

Till the previous commit, few components went untested.
This commit covers all softomx components.

Test: tested on softomx components

Change-Id: I4c996a3743a6190d9c6d4c835aa89daefdc14658

enumerate profile and level for encoder components

Change-Id: I4b9d3b3106d33a0241a7e36bd7189c1b3ef40ef0

bug fix: omx android compile as 32bit on 64bit platforms

thanks lajos

Change-Id: If11b20eeb6a75319f9e0cd6a62524dadab2ba8af

Add more VTS tests for IOmxStore and IOmxNode

Change-Id: I3401025b4f0b821f469222707c75b49fe4f0b0c5

avoid false flagging of errors

If testing of the given component is not supported application do not flag
an error, instead exit gracefully.

Change-Id: Ic91a92614d18b204cc50b7d8f6dc1a0ca81ff782

Add support for g711, gsm and raw audio decoder components

Change-Id: Ied70abdabb397a7a63e13293a8b35365a6b23e4f

split eos test

the eos test in decoders handles three different cases. These are now
separated in to different test fixtures.

Change-Id: I30c102109ce60a345f878d03d481337462fc817f

Change-Id: I3401025b4f0b821f469222707c75b49fe4f0b0c5
2017-05-14 14:55:57 -07:00
Steven Moreland
a32ebce372 Update makefiles for c++-sources and c++-headers. (2/2)
am: bc71124120

Change-Id: Icf36068a4d863a8520854c7a83e51f960c188e12
2017-05-11 00:48:55 +00:00
Steven Moreland
bc71124120 Update makefiles for c++-sources and c++-headers. (2/2)
Test: pass
Bug: 38174080
Change-Id: Icad451f9f9ad5f46412356a4171a8a1222f8e545
2017-05-09 19:58:43 -07:00
Zhuoyao Zhang
d4e4937388 Merge "Omx VTS tests" into oc-dev
am: 9ec2c9e099

Change-Id: I59f8401168779e7b06302e6ab5ea939c7c116877
2017-05-03 16:31:23 +00:00
Ram Mohan M
23c658f118 Omx VTS tests
Bug: 32023356
Test: make vts.

preload elementary stream information during decoding

instead of using extractor to get the frame boundaries, frame
flags and timestamp information, they are read from a metadata
file in the resources directory on demand. Instead of doing it
on demand, we load the entire file information and use it. This
modification comes in handy for future test fixtures

Change-Id: I3a434018111eb66008f17c24b4c2c16d0db22ed1

bug fix: wait on input consumption

after queuing all the frames that need to be processed by
the component, the application continues its job of deinitializing
the component before ensuring all the inputs were decoded.
This is corrected.

Change-Id: I09a11fd5badabe2889ba243383145be07be51953

add end of stream test for audio decoder

component is provided an input with nFlags field set OMX_BUFFERFLAG_EOS.
the application expects this flag to be returned via one of its output
buffers. this flag is passed to the component at different timings to test
the robustness.

Change-Id: I00e3fdd5ef50d93f2620d8b0e9fc3c358de428d7

add timestamp deviation test for decoder components

the list of timestamps received from the component is
compared with the list provided to the component for any
differences

Change-Id: Ifcc16b7a00f58e1c1dfdba9f538d307ddcbfcc71

add option to configure resource files path

default location of resource files is /sdcard/media/. client can provide
choice of this location via the option -P.

example: VtsHalMediaOmxV1_0TargetVideoDecTest -C <component> -R <role> -P /sdcard/res/

Change-Id: Ib8d3af03c19a171e3bbb9839f7e331cbe576b24b

add flush test for audio & video dec components

while decoding a group of frames, flush call is made and it is
checked if all the i/o buffers are sent back to client. we then
seek to the next keyframe and test for decoding. monotonous
increase of timestamps is ensured.

Change-Id: Id48c76c157ebdfdefd3003e57519da3bd9715973
2017-05-02 23:44:26 -07:00
Steven Moreland
5c63b11f76 Remove redundant dependencies
android.hidl.base@1.0 and android.hidl.manager@1.0 are built into libhidltransport.

Test: links
Bug: 33276472
Merged-In: I08aaad80f7e2fc262aa3a8b66fe932e8133a928d
Change-Id: I08aaad80f7e2fc262aa3a8b66fe932e8133a928d
2017-05-02 15:29:30 -07:00
Ram Mohan M
f9c4003fcd Basic audio/video encoder/decoder test.
Bug: 32023356
TODO: cleanup the test code b/37719510

ComponentTest :-
1. allocatePortBuffers cleanup
2. More than one test fixture performs State transitions
(Loaded <-> Idle <-> Execute). So, this is moved to a routine and
invoked when needed.
3. Dispatch input/output buffers code section is moved to a routine
4. Seperated Test fixtures StateTransitions_Flush
5. Added Doc string
6. Test component port population

AudioDecTest :-
1. Backport Cleanup changes from ComponentTest to AudioDecTest
2. Added elementary streams for the following codecs mp3, amr-nb &
Updated paths to elementary streams in audio decoder test

Test: Tested ComponentTest and AudioDecTest for mp3

Change-Id: I90decde4dfab55c3d456dfd88b474dd5abe8eebc

List Available components (roles) in android media framework

Change-Id: I210665843e997e60b167f2d680c87b1cc4f90c58

add README.md

Change-Id: I3a2a057d10b18f4f374928a996b8b4ea4b084770

add basic video decoder tests

for a given component test for successful decoding of an input clip

Test: tested for softavc decoder

Change-Id: I2f4c034c34a456e1ed0c2d32ef381ca48aeda8ff

add basic audio encoder tests

for a given component, test for successful encoding of an input clip

Test: tested on softaac, softamrnb, softamrwb & softflac components

Change-Id: I05f5646ffed37143a21ea72f0fd782c2bb5c4d82

add basic video encoder tests

For a given component test successful encoding of nframes of a
raw video clip

Test: tested on softavc encoder.
Change-Id: Ia1d754061e8362f6c08a2be3d6384c95589a36de
2017-04-26 21:49:04 +00:00
Pawin Vongmasa
0048c96885 Make setTimeLapseConfig take frequencies instead of periods.
Test: Manual use of Camera, Movies, Photos and YouTube apps.

Test: With CtsMediaTestCases.apk installed,
adb shell am instrument -e size small -w
'android.media.cts/android.support.test.runner.AndroidJUnitRunner'

Bug: 37302530
Change-Id: I63ba807955c2e2a7ec7f6ecc2d8a832f252c0c1b
2017-04-20 18:28:55 -07:00
Hangyu Kuang
171bbf5ecb media: Add getStopTimeOffsetUs in GraphicBufferSource.
Test: Compiles
Bug: 35925528
Change-Id: Ie469e42c986211540880f04a5e47efc090817ba8
2017-04-20 18:17:51 -07:00
Andreas Huber
6fa374ad30 Changed the naming scheme for Treble java libraries (both static and dynamic)
android.hardware.foo@1.0-java => android.hardware.foo-V1.0-java

Bug: 37207894
Test: make
Change-Id: I177f4cfd42f635aaf096107af8309d1a82ed41c0
Merged-In: I8b91881dfaf507c0d852d56ebbb53ff0987e5a34
2017-04-13 15:23:46 -07:00
Zhuoyao Zhang
9eeda9561f Merge "media.omx VTS test baseline" into oc-dev 2017-04-13 19:24:29 +00:00