Re: [FFmpeg-devel] [PATCH] avformat/mxg: return reference counted packets

2018-03-02 Thread James Almer
On 3/2/2018 12:10 PM, wm4 wrote:
> On Tue, 27 Feb 2018 00:09:47 -0300
> James Almer  wrote:
> 
>> Signed-off-by: James Almer 
>> ---
>>  libavformat/mxg.c | 17 +++--
>>  1 file changed, 11 insertions(+), 6 deletions(-)
>>
>> diff --git a/libavformat/mxg.c b/libavformat/mxg.c
>> index 6fbf99cfa3..fe5879ecf0 100644
>> --- a/libavformat/mxg.c
>> +++ b/libavformat/mxg.c
>> @@ -169,11 +169,14 @@ static int mxg_read_packet(AVFormatContext *s, 
>> AVPacket *pkt)
>>  continue;
>>  }
>>  
>> +size = mxg->buffer_ptr - mxg->soi_ptr;
>> +ret = av_new_packet(pkt, size);
>> +if (ret < 0)
>> +return ret;
>> +memcpy(pkt->data, mxg->soi_ptr, size);
>> +
>>  pkt->pts = pkt->dts = mxg->dts;
>>  pkt->stream_index = 0;
>> -pkt->buf  = NULL;
>> -pkt->size = mxg->buffer_ptr - mxg->soi_ptr;
>> -pkt->data = mxg->soi_ptr;
>>  
>>  if (mxg->soi_ptr - mxg->buffer > mxg->cache_size) {
>>  if (mxg->cache_size > 0) {
>> @@ -206,12 +209,14 @@ static int mxg_read_packet(AVFormatContext *s, 
>> AVPacket *pkt)
>>  mxg->buffer_ptr += size;
>>  
>>  if (marker == APP13 && size >= 16) { /* audio data */
>> +ret = av_new_packet(pkt, size - 14);
>> +if (ret < 0)
>> +return ret;
>> +memcpy(pkt->data, startmarker_ptr + 16, size - 14);
>> +
>>  /* time (GMT) of first sample in usec since 1970, 
>> little-endian */
>>  pkt->pts = pkt->dts = AV_RL64(startmarker_ptr + 8);
>>  pkt->stream_index = 1;
>> -pkt->buf  = NULL;
>> -pkt->size = size - 14;
>> -pkt->data = startmarker_ptr + 16;
>>  
>>  if (startmarker_ptr - mxg->buffer > mxg->cache_size) {
>>  if (mxg->cache_size > 0) {
> 
> LGTM if FATE passes.

Pushed, thanks.
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] [PATCH] avformat/mxg: return reference counted packets

2018-03-02 Thread wm4
On Tue, 27 Feb 2018 00:09:47 -0300
James Almer  wrote:

> Signed-off-by: James Almer 
> ---
>  libavformat/mxg.c | 17 +++--
>  1 file changed, 11 insertions(+), 6 deletions(-)
> 
> diff --git a/libavformat/mxg.c b/libavformat/mxg.c
> index 6fbf99cfa3..fe5879ecf0 100644
> --- a/libavformat/mxg.c
> +++ b/libavformat/mxg.c
> @@ -169,11 +169,14 @@ static int mxg_read_packet(AVFormatContext *s, AVPacket 
> *pkt)
>  continue;
>  }
>  
> +size = mxg->buffer_ptr - mxg->soi_ptr;
> +ret = av_new_packet(pkt, size);
> +if (ret < 0)
> +return ret;
> +memcpy(pkt->data, mxg->soi_ptr, size);
> +
>  pkt->pts = pkt->dts = mxg->dts;
>  pkt->stream_index = 0;
> -pkt->buf  = NULL;
> -pkt->size = mxg->buffer_ptr - mxg->soi_ptr;
> -pkt->data = mxg->soi_ptr;
>  
>  if (mxg->soi_ptr - mxg->buffer > mxg->cache_size) {
>  if (mxg->cache_size > 0) {
> @@ -206,12 +209,14 @@ static int mxg_read_packet(AVFormatContext *s, AVPacket 
> *pkt)
>  mxg->buffer_ptr += size;
>  
>  if (marker == APP13 && size >= 16) { /* audio data */
> +ret = av_new_packet(pkt, size - 14);
> +if (ret < 0)
> +return ret;
> +memcpy(pkt->data, startmarker_ptr + 16, size - 14);
> +
>  /* time (GMT) of first sample in usec since 1970, 
> little-endian */
>  pkt->pts = pkt->dts = AV_RL64(startmarker_ptr + 8);
>  pkt->stream_index = 1;
> -pkt->buf  = NULL;
> -pkt->size = size - 14;
> -pkt->data = startmarker_ptr + 16;
>  
>  if (startmarker_ptr - mxg->buffer > mxg->cache_size) {
>  if (mxg->cache_size > 0) {

LGTM if FATE passes.
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] [PATCH] avformat/mxg: return reference counted packets

2018-03-02 Thread James Almer
On 2/27/2018 12:09 AM, James Almer wrote:
> Signed-off-by: James Almer 
> ---
>  libavformat/mxg.c | 17 +++--
>  1 file changed, 11 insertions(+), 6 deletions(-)
> 
> diff --git a/libavformat/mxg.c b/libavformat/mxg.c
> index 6fbf99cfa3..fe5879ecf0 100644
> --- a/libavformat/mxg.c
> +++ b/libavformat/mxg.c
> @@ -169,11 +169,14 @@ static int mxg_read_packet(AVFormatContext *s, AVPacket 
> *pkt)
>  continue;
>  }
>  
> +size = mxg->buffer_ptr - mxg->soi_ptr;
> +ret = av_new_packet(pkt, size);
> +if (ret < 0)
> +return ret;
> +memcpy(pkt->data, mxg->soi_ptr, size);
> +
>  pkt->pts = pkt->dts = mxg->dts;
>  pkt->stream_index = 0;
> -pkt->buf  = NULL;
> -pkt->size = mxg->buffer_ptr - mxg->soi_ptr;
> -pkt->data = mxg->soi_ptr;
>  
>  if (mxg->soi_ptr - mxg->buffer > mxg->cache_size) {
>  if (mxg->cache_size > 0) {
> @@ -206,12 +209,14 @@ static int mxg_read_packet(AVFormatContext *s, AVPacket 
> *pkt)
>  mxg->buffer_ptr += size;
>  
>  if (marker == APP13 && size >= 16) { /* audio data */
> +ret = av_new_packet(pkt, size - 14);
> +if (ret < 0)
> +return ret;
> +memcpy(pkt->data, startmarker_ptr + 16, size - 14);
> +
>  /* time (GMT) of first sample in usec since 1970, 
> little-endian */
>  pkt->pts = pkt->dts = AV_RL64(startmarker_ptr + 8);
>  pkt->stream_index = 1;
> -pkt->buf  = NULL;
> -pkt->size = size - 14;
> -pkt->data = startmarker_ptr + 16;
>  
>  if (startmarker_ptr - mxg->buffer > mxg->cache_size) {
>  if (mxg->cache_size > 0) {

Ping.
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel