On Aug 14, 2012, at 11:05 AM, Diego Biurrun wrote:

> On Mon, Aug 13, 2012 at 08:35:48PM +0200, Sebastien Zwickert wrote:
>> Note that the symbols used to run the hardware decoder in asynchronous mode
>> has been marked as deprecated and will be dropped at a future version dump.
>> ---
>> libavcodec/vda.c          |  105 +++++++++++++++++++++++++++-----------------
>> libavcodec/vda.h          |   48 +++++++++++++++++++--
>> libavcodec/vda_h264.c     |   11 +++-
>> libavcodec/vda_internal.h |    4 ++
>> libavcodec/version.h      |    3 +
>> 5 files changed, 123 insertions(+), 48 deletions(-)
>> 
>> --- a/libavcodec/vda.c
>> +++ b/libavcodec/vda.c
>> @@ -95,35 +95,42 @@ static void vda_decoder_callback(void *vda_hw_ctx,
>> 
>> +        if (!(new_frame = av_mallocz(sizeof(vda_frame))))
> 
> av_mallocz(sizeof(*new_frame)) would be better.
> But you are just moving that line, so this likely belongs in
> a separate patch.

I'll send a separate patch to improve this.

>> --- a/libavcodec/vda.h
>> +++ b/libavcodec/vda.h
>> @@ -47,8 +52,11 @@
>> 
>> +#if FF_API_VDA_ASYNC
>> /**
>> - *  This structure is used to store a decoded frame information and data.
>> + * This structure is used to store a decoded frame information and data.
> 
> Drop the "a", there is no such thing as "an information", information has
> no singular.

Done.

>> @@ -92,8 +101,27 @@ struct vda_context {
>> 
>>     /**
>> +    * The Core Video pixel buffer that contains the current image data.
>> +    *
>> +    * encoding: unused
>> +    * decoding: Set by libavcodec. Unset by user.
>> +    */
>> +    CVPixelBufferRef    cv_buffer;
>> +
>> +    /**
>> +    * An integer value that indicates whether use the hardware decoder in 
>> synchronous mode.
> 
> whether to use
> 
> Also, that line is long.

Smaller syntax used.

> 
>> @@ -102,11 +130,13 @@ struct vda_context {
>>     /**
>>     * Mutex for locking queue operations.
>>     *
>> +    * @deprecated Use synchronous decoding mode.
>> +    *
>>     * - encoding: unused
>>     * - decoding: Set/Unset by libavcodec.
>>     */
>>     pthread_mutex_t     queue_mutex;
>> -
>> +#endif
>>     /**
>>     * The frame width.
> 
> Looks like stray empty line removal.

Fixed.

>> @@ -163,11 +193,21 @@ int ff_vda_create_decoder(struct vda_context *vda_ctx,
>> 
>> -/** Return the top frame of the queue. */
>> +#if FF_API_VDA_ASYNC
>> +/**
>> +* Return the top frame of the queue
> 
> End sentences in a period.

Done.

>> --- a/libavcodec/vda_h264.c
>> +++ b/libavcodec/vda_h264.c
>> @@ -73,9 +73,14 @@ static int end_frame(AVCodecContext *avctx)
>> 
>> +    if (vda_ctx->use_sync_decoding) {
>> +        status = ff_vda_sync_decode(vda_ctx);
>> +        frame->data[3] = (void*)vda_ctx->cv_buffer;
> 
> Gah, void* cast.

To avoid a compilation warning.


--
Sebastien Zwickert.

_______________________________________________
libav-devel mailing list
[email protected]
https://lists.libav.org/mailman/listinfo/libav-devel

Reply via email to