Friday, February 28, 2014

android multimedia player decoding several issues related to


Currently probably know:
. 1 android multimedia framework has two: OpenCore and Stagefright.
2. Android in mediaplayer when decoding using OpenMAX standards.
3 hardware vendors to support hardware decoding via OpenMAX standards.


The question is:
1. Application programmer if you can call the vendor supports hardware decoding capabilities through jni way, if you can, you need to how to do?
2. Application programmer If you want to be a soft decoding support, such as for soft decoding flv, there may allow multimedia framework system call, if you can call what work needs to be done?


I am very grateful for your attention and reply.

<-! Main posts under Banner (D4) -><-! Posts under the main text (D5) ->
Reply:
mark,
Framework can be achieved by changing or using FFMPEG with NDK soft decoding. For example rockplayer soft solution is to use ffmpeg.
http://rockplayer.freecoder.org/tech_cn.html
Reply:
Personal feeling are two ways it
One, to an increase in the framework of its own similar stagefright media framework, your application via JNI transferred, then go to tune its own decoder, such as ffmpeg
Second, his own decoder package can be used as a component stagefright, android application by calling the standard media framework to achieve
Reply:
Add plug-in on the way multimedia framework system only system programmers can do, such as making the system Image can call because of the way the system multimedia framework, the system does not call user-level dynamic libraries. So add soft decoding plug-in-based system on the existing multimedia framework, the application is impossible.

I mainly want to know there is no way you can call multimedia decoding part of the frame system, which is OpenMAX framework of the system.
Reply:
OpenCore and hardware vendors to support itself Stagefright codecs meet openmax standard

If you want to increase the support for other file formats, you need to opencore or SVTAGEFRIGHT some plug-ins to achieve parse file formats, in addition to the software decoder can be made openmax the component so that the framework calls, which are using the C / C + + implementation, and finally so forms, these Chinese upper JAVA APP need to change anything, the order calls mediaplayer class methods can be, and the same as the previous release calls.


Of course, you can not use opencore / stagefright, to achieve their own framework, so hit the Chinese work needs to NDK, JNI technology
Reply:
references, 4th Floor oexpress reply:
OpenCore and hardware vendors to support itself Stagefright codecs meet openmax standard

If you want to increase the support for other file formats, you need to opencore or SVTAGEFRIGHT some plug-ins to achieve parse file formats, in addition to the software decoder can be made openmax the component so that the framework calls, which are using the C / C + + implementation, and finally so forms, these Chinese upper JAVA APP need to change anything, order calling media ......


System so in the case does not call so you do not set user-level application of it, seems to be one. Cfg configuration file, and this file is a system level.

Stagefright OpenCore and supports hardware codec, but he seems to be calling for implementation of the framework underlying OpenMAX, and equipment manufacturers in the driver layer OpenMAX implementation. I mean, can not be called directly by jni OpenMAX the decode function because OpenCore or Stagefright framework to demux and decode all packaged together, in fact demux way to achieve basically the software, the main bottleneck in the decode, if OpenMAX can call directly decode, it can easily achieve similar FLV format videos such "hardware decoding" the.
Reply:
I do not understand why you want to directly call the decode function OpenMAX through jni, so to achieve similar FLV format first DEMUX, and then to get live video BITSTREAM, in order to send data to OPENMAX corresponding decoder component.

OpenMAX jni call directly decode function through the existing framework code is not supported, unless you add a new interface!


Reply:
reference to the 6th floor oexpress reply:
I do not understand why you want to directly call the decode function OpenMAX through jni, so to achieve similar FLV format first DEMUX, However, to get live video BITSTREAM, in order to send data to OPENMAX corresponding decoder component.

OpenMAX jni call directly decode function through the existing framework code is not supported, unless you add a new interface!


I mean how to add support demux the system framework.

If you use a plug-in to support, you need to modify the multimedia framework, at least to modify multimedia framework loaded demux process, and this process is the application layer development can not be achieved (as I understand it, perhaps?), So going to their use in software demux and then call the hardware through OpenMAX decode.
Reply:
This process is the application layer development can not be achieved (as I understand it, perhaps?)

Applications can also be achieved once, you can not call the system who set the framework SO, achieve all their own, as the Chinese are JAVA, low efficiency of no practical significance

Reply:
How do you call the vendor to support hardware decoding hardware decoding capabilities to play a video file it ... and now want to be a player to go first with hardware decoding solution, if the video format is not supported by the hardware decoder format, then himself soft decoding mode solution, so decoding mode on maximum optimization.
I already have a soft decoding mode, the lack of hardware decoding is not going to transfer, seeking large cattle exhibitions.
Reply:
Hello, I am now experiencing problems hardware decoding does not call, do you have a plan yet?
Reply:
Will you later found a way to implement this feature yet?
Reply:
The landlord, how do you do hardware decoding on android, and you encounter the same problem.
Could pointing pointing ~ ~

No comments:

Post a Comment