Closed Bug 860595 Opened 7 years ago Closed 7 years ago

video decoder not released while power on (power off animation for customization doesn't work)

Categories

(Firefox OS Graveyard :: Gaia::System, defect, critical)

ARM
Gonk (Firefox OS)
defect
Not set
critical

Tracking

(blocking-b2g:tef+, b2g18 fixed, b2g18-v1.0.1 fixed)

VERIFIED FIXED
blocking-b2g tef+
Tracking Status
b2g18 --- fixed
b2g18-v1.0.1 --- fixed

People

(Reporter: yurenju, Assigned: gasolin)

Details

Attachments

(2 files)

Attached video sample animation
tested on otoro.

STR:
1. mkdir a directory called 'distribution' and its subfolder 'power'
2. copy attachment to distribution/power/carrier_power_off.mp4 and carrier_power_on.mp4
3. MOZILLA_OFFICIAL=1 GAIA_DISTRIBUTION_DIR=<path-of-distribution> make production

expected: same power on and power off animation

actually: power on animation is fine, but there is no power off animation
Fred will help on this bug, thank you Fred!
Assignee: yurenju.mozilla → gasolin
after initial testing, I found

power on with png and power off with mp4 works fine, 
power on with mp4 and power off with png works fine, 

but when both with mp4 will cause this issue.
blocking-b2g: tef? → tef+
The console log shows when both power on and power off with mp4:

E/OMXCodec(  573): Attempting to allocate OMX node 'OMX.TI.DUCATI1.VIDEO.DECODER'
E/OMXCodec(  573): Attempting to allocate OMX node 'OMX.Nvidia.h264.decode'
E/OMXCodec(  573): Attempting to allocate OMX node 'OMX.qcom.7x30.video.decoder.avc'
E/OMXCodec(  573): Attempting to allocate OMX node 'OMX.qcom.video.decoder.avc'
E/omx_vdec(  119): Video decoder instance already exists.
E/OMXCodec(  573): Attempting to allocate OMX node 'OMX.ittiam.video.decoder.avc'
E/OMXCodec(  573): Attempting to allocate OMX node 'OMX.TI.Video.Decoder'
E/OMXCodec(  573): Attempting to allocate OMX node 'OMX.SEC.AVC.Decoder'
E/GeckoConsole(  573): [JavaScript Warning: "Media resource app://system.gaiamobile.org/resources/power/carrier_power_off.mp4 could not be decoded." {file: "app://system.gaiamobile.org/index.html" line: 0}]

But its
blocking-b2g: tef+ → tef?
Sorry for unintentional changed the tef tag.
I post comment without reload first.
blocking-b2g: tef? → tef+
error message in comment 3 shows 'Video decoder instance already exists error.
' The error said this mp4 file could not be decoded.
But it works fine while only load it once.

It occurs while set both power on/power off animation as mp4 format.

Want to have more info about what this OMXCodec error message means.
Flags: needinfo?(cku)
Want to have more info about what OMXCodec 'Video decoder instance already exists error.' message means in comment 3
Flags: needinfo?(tlee)
Flags: needinfo?(chung)
Flags: needinfo?(bechen)
Seems duplication, the hardware video decoder issue..
 reference Bug 856542, Bug 831747
Flags: needinfo?(cku)
Flags: needinfo?(chung)
Flags: needinfo?(bechen)
Status: NEW → RESOLVED
Closed: 7 years ago
Resolution: --- → DUPLICATE
Duplicate of bug: 831747
Another critical phenomenon is when use poweron video with mp4, 
the video app will report same error as comment 3 and can't show any video.
I never heard to use mp4 video to use on power off animation. In Firefox OS v1.01, gecko do not handle hw codec arbitration. But applications need to handle it. Camera app and Video app frees hw codec(video tag) when app become background.
(In reply to Sotaro Ikeda [:sotaro] from comment #10)
> I never heard to use mp4 video to use on power off animation. In Firefox OS
> v1.01, gecko do not handle hw codec arbitration. But applications need to
> handle it. Camera app and Video app frees hw codec(video tag) when app
> become background.

reopen from the above comment.
Status: RESOLVED → REOPENED
Resolution: DUPLICATE → ---
(In reply to Sotaro Ikeda [:sotaro] from comment #10)
> I never heard to use mp4 video to use on power off animation. In Firefox OS
> v1.01, gecko do not handle hw codec arbitration. But applications need to
> handle it. Camera app and Video app frees hw codec(video tag) when app
> become background.

Firefox OS v1.01 is implemented on the above policy.
This bug could be fixed by using a WebM or ogv file for the animations. This would use the internal decoders, not stagefright, and would not be blocked on the hardware decoder.
Summary: power off animation for customization doesn't work → video decoder not released while power on (power off animation for customization doesn't work)
The root cause is Bug 831747, which will not be applied in 1.0.1
Attachment #737445 - Flags: review?(alive)
Flags: needinfo?(tlee)
Comment on attachment 737445 [details]
add workaround to release hardware decoder in gaia

r=me
Attachment #737445 - Flags: review?(alive) → review+
merged to master-gaia https://github.com/mozilla-b2g/gaia/commit/dc656c47d1db373866568b318bbc88be315b9138

thanks!
Status: REOPENED → RESOLVED
Closed: 7 years ago7 years ago
Resolution: --- → FIXED
Component: Builds → Gaia::System
Hi Gasolin,

It seems like the fix doesn't land on v1.0.1 branch.
Could you take a look on it?

Thank you.
QA Contact: fyen
Hi John,

Can you help uplift to v1.0.1 and v1-train?
Flags: needinfo?(jhford)
Uplifted commit dc656c47d1db373866568b318bbc88be315b9138 as:
v1-train: 36b655959aefc0d5a6b38ec67fb16ab2cb3c5b95
v1.0.1: fc672073680358413d7e450b9cb00eb9ba00d1ab
Flags: needinfo?(jhford)
Device inari

v1.0.1
gaia 2543428e16a5f1a716bd3e8c646119acba12b524

v1-train
gaia 502653c27d86acbb82e170ccf4d226999458ca84

Verified.
Status: RESOLVED → VERIFIED
You need to log in before you can comment on or make changes to this bug.