I've made Android support encoding Qcelp well successfully. Thank you all.

david


2009/4/1 david 1 <david...@gmail.com>

> So far, I've tested the 'RunCompressedTest' and 'RunUnCompressedTest'
> respectively by using the below test command lines, and relative log being
> printed, too.
>
> Case 1 :
> # test_pvauthorengine -audio amrtestinput.amr -output /sdcard/1.amr
> -audioconfigfile /sdcard/amr.cfg -test 11 11
> SDK Labeled: PVDEV_CORE_RELEASE_6.101.1.1 built on 20090121
> PVAuthorEngine Unit Test
> [test range from: 11 to: 11]
> Input audio file name:amrtestinput.amr
>   Input video filename:
>   Output filename:/sdcard/1.amr
>   Audio Configfile name:/sdcard/amr.cfg
>   Video Configfilename:
>   Test case range 11 to 11
>
> Starting Test 11: AMR Input to .amr Test
> ERROR: Leave Occurred! Reason 103
>
> Case 2:
> # test_pvauthorengine -test 207 207 -source pcm16testinput.pcm -output
> /sdcard/1.amr
> SDK Labeled: PVDEV_CORE_RELEASE_6.101.1.1 built on 20090121
> PVAuthorEngine Unit Test
> [test range from: 207 to: 207]
> Source type unknown so setting to unknown and have the player engine
> recognize it
> Begin test with the following parameters:
> Input File Name : pcm16testinput.pcm
> Output File Name: /sdcard/1.amr,
> Video Encoder: /x-pvmf/video/encode/mp4,
> Audio Encoder: /x-pvmf/audio/encode/amr-nb,
> Composer: /x-pvmf/ff-mux/amr-nb
> Starting Test 207:
> Test:207: PCM16 to ARM Test
> Test output begins
> Number of tests: 0
> Successes: 0
> Failures: 0
> Errors: 0
> Test output ends
>
> The above 2 results show that the two case all failed to execute the
> recording procedure for .amr even though the .pcm & .amr input data are
> provided respectively. Is it correct that if I do not think that the
> Recording function of OpenCore is ready presently? If that is not the truth,
> could you please provide me a way with which I could experience this
> recording of PV? It's very necessary & critical for me to go further to add
> QCELP recorder to OpenCore. Thanks a lot.
>
> david
>
> 2009/4/1 rktb <yend...@pv.com>
>
>>
>> Ok...it is more involved than I originally thought. The below is the
>> format:
>>
>>    /*
>>     * Some of the compressed inputs need a log file to go along with
>> the bitstream. This logfile is provided
>>     * using the "-audiologfile" or "-videologfile" commandline
>> option. In case of audio and video bitstreams
>>     * the log file format is as follows:
>>     *  unsigned int(32) total_num_samples;
>>     *  unsigned int(32) avg_bitrate; // could be 0 if not available
>>     *  unsigned int(32) timescale; //this is the timescale of all
>> sample timestamps below
>>     *  unsigned int(32) max_sample_size; // could be 0 if not
>> available
>>     *  unsigned int(32) config_size; //could be 0 for streams that
>> have no config, say AMR
>>     *  unsigned int(32) height; //zero if it is audio stream
>>     *  unsigned int(32) width; //zero if it is audio stream
>>     *  unsigned int(32) frame_rate; //zero if audio stream
>>     *  for (j=0; j < total_num_samples; j++)
>>     *  {
>>     *     unsigned int(32) sample_length_in_bytes;
>>     *     unsigned int(32) sample_timestamp;
>>     *  }
>>     */
>>
>> Just to confirm, are you trying to use compressed input? It looks like
>> you are taking a .amr file and trying to compose a .amr file again. Is
>> that what you intend to do?
>>
>> -Ravi
>>
>> On Mar 31, 7:03 pm, david 1 <david...@gmail.com> wrote:
>> > many thanks for your quick reply anyway and being anxious for your
>> further
>> > info.
>> >
>> > david
>> >
>> > 2009/3/31 rktb <yend...@pv.com>
>> >
>> >
>> >
>> > > hmm... this is unfamiliar territory. and I can't find it either :). I
>> > > will make an action item on my end to get this documented.
>> >
>> > > For now,  you can look at the API LoadAudioConfiguration() that
>> > > attempts to read the the config file. From here, it looks like the
>> > > file requires 3 lines of data:
>> > > 1st line -- No. of audio samples
>> > > 2nd line -- Average bitrate
>> > > 3rd line -- Timescale
>> >
>> > > Please try that and I will try to get more concrete information.
>> >
>> > > -Ravi
>> >
>> > > On Mar 31, 2:41 am, david <david...@gmail.com> wrote:
>> > > > Hi rktb,
>> >
>> > > > Thanks for your response.
>> >
>> > > > Now trying to record .amr by using test_pvauthorengine appended with
>> '-
>> > > > audio amrtestinput.amr -output /sdcard/1.amr -test 11 11', but
>> always
>> > > > failed at 'Audio Config File not available!!! Specify
>> -audioconfigfile
>> > > > <filename>'. What does the configure file look like? I'm sorry I
>> can't
>> > > > find out such the file or a sample of it in the OpenCore package. If
>> I
>> > > > should create it myself, with what format should I comply? THANKS in
>> > > > advance.
>> >
>> > > > david
>> >
>> > > > On Mar 23, 8:06 pm, rktb <yend...@pv.com> wrote:
>> >
>> > > > > Ahh..you wanted AAC composer as a reference. Sorry...missed that
>> > > > > point.
>> >
>> > > > > Yes. You would require support composing a new format. The
>> > > > > implementation, would however depend on the actual format. For
>> very
>> > > > > simple formats such as AMR and AAC, there is no need for any true
>> > > > > composing. What is required is to directly dump the output of the
>> > > > > encoder to a file, and hence, in such cases, we use the file
>> output
>> > > > > node that will serve as the *composer*. On the other hand, in
>> cases
>> > > > > where there is a requirement for a *container* that is not
>> obtained as
>> > > > > part of the encoder output, you would require a composer (and an
>> > > > > associating node). mp4 composer is one such example.
>> >
>> > > > > Now, I am not aware of the QCELP format. So, you would need to
>> make a
>> > > > > decision whether or not it requires a composer or not. Or, you
>> could
>> > > > > discuss it here and we can come to a common solution.
>> >
>> > > > > Hope that helps,
>> > > > > Ravi
>> >
>> > > > > On Mar 23, 12:23 am, David Wan <david...@gmail.com> wrote:
>> >
>> > > > > > I'm sorry if this is a newbie question.
>> > > > > > The truth is I plan to let PVAuthor support the recording of
>> QCELP.
>> > > > > > According to the info of pvauthor found on Google, it seems that
>> a
>> > > composer
>> > > > > > for qcelp is necessary.  But I'm  not sure of that. I'm sorry I
>> have
>> > > no
>> > > > > > sense where I should start to handle this issue. As you
>> mentioned,
>> > > does ADIF
>> > > > > > or ADTS suffice? Could you please specify more detail? THANKS.
>> >
>> > > > > > 2009/3/23 rktb <yend...@pv.com>
>> >
>> > > > > > > AAC can be composed in two ways. (i) In a mp4 container, which
>> then
>> > > > > > > uses mp4 composer. And, (ii) as ADIF or ADTS format, which
>> then
>> > > uses
>> > > > > > > the fileoutput node. There is no specific composer required.
>> >
>> > > > > > > Please note: You still require an AAC encoder, which is not
>> part of
>> > > > > > > OpenCORE.
>> >
>> > > > > > > -Ravi
>> >
>> > > > > > > On Mar 22, 9:19 pm, david <david...@gmail.com> wrote:
>> > > > > > > > Hi Rktb,
>> >
>> > > > > > > > According to your announce - 'Added support for authoring
>> files
>> > > with
>> > > > > > > > AAC audio', can I think that there should be a composer for
>> AAC
>> > > > > > > > enclosed in this latest package? But I do not find it even
>> though
>> > > I've
>> > > > > > > > 'repo sync' for several times.
>> >
>> > > > > > > > The real issue I'm facing is that I want to create a
>> composer for
>> > > > > > > > QCELP, but the only one sample of composer existing in
>> OpenCore
>> > > is the
>> > > > > > > > one for MP4. It's complicated and have nothing with QCELP, I
>> > > think.
>> > > > > > > > So, I want to get the latest version for the AAC composer
>> and get
>> > > > > > > > reference to it to create QCELP's composer.
>> >
>> > > > > > > > Could you please help me this issue? THANKS.
>> >
>> > > > > > > > On Mar 23, 9:43 am, david <david...@gmail.com> wrote:
>> >
>> > > > > > > > > Great, many thanks to you.
>> >
>> > > > > > > > > On Mar 21, 3:51 pm, rktb <yend...@pv.com> wrote:
>> >
>> > > > > > > > > > fyi...2.1 release was renamed 2.01. And, there is an
>> update
>> > > to that
>> > > > > > > > > > release as well, i.e., we are now at OpenCORE 2.02.
>> >
>> > > > > > > > > > The latest using "repo sync" would get you 2.02.
>> >
>> > > > > > > > > > -Ravi
>> >
>> > > > > > > > > > On Mar 21, 1:50 am, david <david...@gmail.com> wrote:
>> >
>> > > > > > > > > > > Hi, I'm a newbie on Android & OpenCore. And now I got
>> the
>> > > OpenCore
>> > > > > > > 2.0
>> > > > > > > > > > > source by using 'repo sync'. But I don't know how to
>> get
>> > > this
>> > > > > > > > > > > latest    version 2.1 of OpenCore. Could you help me
>> with
>> > > this?
>> > > > > > > Thanks
>> > > > > > > > > > > a lot.
>> >
>> > > > > > > > > > > On Feb 26, 10:27 pm, GregS <sherw...@pv.com> wrote:
>> >
>> > > > > > > > > > > > OpenCORE 2.1 has been released and is now available
>> on
>> > > the master
>> > > > > > > > > > > > branch.  There is a git tag "v2.1" marking the
>> version.
>> > >  It
>> > > > > > > contains a
>> > > > > > > > > > > > number of new features and improvements on top of
>> the
>> > > OpenCORE
>> > > > > > > 2.0
>> > > > > > > > > > > > release that happened about 1 month ago.  Here's a
>> link
>> > > to the
>> > > > > > > > > > > > previous announcement in case you missed it:
>> >
>> > >
>> http://groups.google.com/group/android-framework/browse_thread/thread....
>> > > > > > > > > > > > Below is a description of the changes that have been
>> > > introduced
>> > > > > > > since
>> > > > > > > > > > > > then as part of OpenCORE 2.1:
>> >
>> > > > > > > > > > > > New Features
>> > > > > > > > > > > > * OpenMAX Codec-related:
>> > > > > > > > > > > >   - Introduced the OMXConfigParser API to help in
>> > > determining
>> > > > > > > > > > > >     which OpenMAX components can support the input
>> > > bitstream.
>> > > > > > > > > > > >     It is used to narrow the list of candidate
>> OpenMAX
>> > > components
>> > > > > > > > > > > >     to be used for playback.  See the OpenMAX Core
>> > > Integration
>> > > > > > > Guide
>> > > > > > > > > > > >     document in the doc directory for more
>> information.
>> > > > > > > > > > > >   - Added OMX AAC encoder support in the OMX
>> encoder.
>> > > > > > > > > > > >   - Modified to use separate component roles for
>> AMR-NB
>> > > and
>> > > > > > > AMR-WB as
>> > > > > > > > > > > >     described in the OpenMAX IL spec version 1.1.2.
>> > > > > > > > > > > >   - Added support for a new buffer format for
>> H.264/AVC
>> > > decode
>> > > > > > > and
>> > > > > > > > > > > > encode
>> > > > > > > > > > > >     to allow passing multiple NALs in a single
>> buffer.
>> > >  The
>> > > > > > > format
>> > > > > > > > > > > > uses
>> > > > > > > > > > > >     OMX_OTHER_EXTRADATA structure defined in section
>> > > 4.2.33 of
>> > > > > > > the
>> > > > > > > > > > > >     OpenMAX IL spec version 1.1.2 to pass NAL
>> lengths.
>> > >  See the
>> > > > > > > > > > > >     OpenMAX Core Integration Guide document in the
>> doc
>> > > directory
>> > > > > > > > > > > >     for more information.
>> > > > > > > > > > > > * Author-related:
>> > > > > > > > > > > >   - Added support for authoring files with AAC
>> audio.
>> > > > > > > > > > > >   - Added support for authoring AMR-WB audio to
>> MP4/3GP
>> > > files and
>> > > > > > > > > > > >     IETF storage format.
>> > > > > > > > > > > >   - Added support for writing to an open file
>> descriptor
>> > > as an
>> > > > > > > option
>> > > > > > > > > > > >     instead of simply providing a filename.  The
>> file
>> > > descriptor
>> > > > > > > > > > > > option
>> > > > > > > > > > > >     is useful for cases where another process needs
>> to
>> > > open the
>> > > > > > > file
>> > > > > > > > > > > > because
>> > > > > > > > > > > >     of permissions.
>> > > > > > > > > > > > * Added large file support in OSCL (i.e., 64-bit
>> file
>> > > size/offset
>> > > > > > > > > > > > support)
>> > > > > > > > > > > >   to handle files greater than 2 GiB on filesystems
>> that
>> > > support
>> > > > > > > it.
>> > > > > > > > > > > > * Added rotation support in the 32-bit
>> color-conversion
>> > > class.
>> >
>> > > > > > > > > > > > Improvements
>> > > > > > > > > > > > * Removed dynamically loaded modules from the
>> prelink map
>> > > to
>> > > > > > > avoid
>> > > > > > > > > > > > clutter
>> > > > > > > > > > > >   and to make both the prelink map and loadable
>> modules
>> > > easier to
>> > > > > > > > > > > > manage.
>> > > > > > > > > > > >   There may be an issue if a single instance of
>> process
>> > > tries to
>> > > > > > > load
>> > > > > > > > > > > >   libraries not in the prelink map more than 256
>> times
>> > > > > > > (Seehttp://code.google.com/p/android/issues/detail?id=2042).
>> > > > > > > > > > > > * Update to the MP3 Decoder to fix security issue
>> > > > > > > (oCERT_2009-002,
>> > > > > > > > > > > > CVE-2009-0475)
>> > > > > > > > > > > > * Renamed the OSCL config directory linux_nj to
>> android
>> > > to match
>> > > > > > > the
>> > > > > > > > > > > > platform name.
>> > > > > > > > > > > >   Replaced all references of nj with android in the
>> > > codebase.
>> > > > > > > > > > > > * General security improvements found from static
>> > > analysis in the
>> > > > > > > > > > > > following areas:
>> > > > > > > > > > > >   - Buffer and type overruns and underruns
>> > > > > > > > > > > >   - Null pointer references
>> > > > > > > > > > > > * Refactored the jitter buffer node into a more
>> modular
>> > > > > > > architecture
>> > > > > > > > > > > > for
>> > > > > > > > > > > >   better support of different streaming use-cases
>> and
>> > > protocols.
>> > > > > > > > > > > > * Fixed an issue in the MP3 decoder when decoding
>> for
>> > > very of
>> > > > > > > long
>> > > > > > > > > > > >   durations (over 2 GiB of data).
>> > > > > > > > > > > > * General improvements found during 3GPP
>> packet-switched
>> > > > > > > streaming
>> > > > > > > > > > > >   interoperability testing.
>> > > > > > > > > > > > * General improvements and resolution of issues
>> found
>> > > from module
>> > > > > > > > > > > >   level and engine (player, author, 2-way) level
>> unit
>> > > testing.
>> >
>> > > > > > > > > > > > New APIs / behaviors
>> > > > > > > > > > > > * Added support in the player engine to cancel a
>> single
>> > > pending
>> >
>> > ...
>> >
>> > read more ยป
>> >>
>>
>

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"android-framework" group.
To post to this group, send email to android-framework@googlegroups.com
To unsubscribe from this group, send email to 
android-framework+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/android-framework?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to