On Sun, Mar 08, 2015 at 11:56:34AM +0100, Thomas Volkert wrote:
> ---
>  libavformat/dump.c | 29 +++++++++++++++++++++++++++++
>  1 file changed, 29 insertions(+)
> 
> diff --git a/libavformat/dump.c b/libavformat/dump.c
> index 56b37ff..9801042 100644
> --- a/libavformat/dump.c
> +++ b/libavformat/dump.c
> @@ -291,6 +291,31 @@ static void dump_stereo3d(void *ctx, AVPacketSideData 
> *sd)
>          av_log(ctx, AV_LOG_INFO, " (inverted)");
>  }
>  
> +static void dump_audio_service_type(void *ctx, AVPacketSideData *sd)
> +{
> +    enum AVAudioServiceType *ast;
> +
> +    if (sd->size < sizeof(*ast)) {
> +        av_log(ctx, AV_LOG_INFO, "invalid data");
> +        return;
> +    }
> +
> +    ast = (enum AVAudioServiceType *)sd->data;
> +
> +    switch (*ast) {
> +    case AV_AUDIO_SERVICE_TYPE_MAIN:              av_log(ctx, AV_LOG_INFO, 
> "Main Audio Service"); break;
> +    case AV_AUDIO_SERVICE_TYPE_EFFECTS:           av_log(ctx, AV_LOG_INFO, 
> "Effects");            break;
> +    case AV_AUDIO_SERVICE_TYPE_VISUALLY_IMPAIRED: av_log(ctx, AV_LOG_INFO, 
> "Visually Impaired");  break;
> +    case AV_AUDIO_SERVICE_TYPE_HEARING_IMPAIRED:  av_log(ctx, AV_LOG_INFO, 
> "Hearing Impaired");   break;
> +    case AV_AUDIO_SERVICE_TYPE_DIALOGUE:          av_log(ctx, AV_LOG_INFO, 
> "Dialogue");           break;
> +    case AV_AUDIO_SERVICE_TYPE_COMMENTARY:        av_log(ctx, AV_LOG_INFO, 
> "Commentary");         break;
> +    case AV_AUDIO_SERVICE_TYPE_EMERGENCY:         av_log(ctx, AV_LOG_INFO, 
> "Emergency");          break;
> +    case AV_AUDIO_SERVICE_TYPE_VOICE_OVER:        av_log(ctx, AV_LOG_INFO, 
> "Voice Over");         break;
> +    case AV_AUDIO_SERVICE_TYPE_KARAOKE:           av_log(ctx, AV_LOG_INFO, 
> "Karaoke");            break;
> +    default:                                      av_log(ctx, AV_LOG_INFO, 
> "unknown");            break;
> +    }
> +}
> +
>  static void dump_sidedata(void *ctx, AVStream *st, const char *indent)
>  {
>      int i;
> @@ -328,6 +353,10 @@ static void dump_sidedata(void *ctx, AVStream *st, const 
> char *indent)
>              av_log(ctx, AV_LOG_INFO, "stereo3d: ");
>              dump_stereo3d(ctx, &sd);
>              break;
> +        case AV_PKT_DATA_AUDIO_SERVICE_TYPE:
> +            av_log(ctx, AV_LOG_INFO, "audio svc type  : ");
> +            dump_audio_service_type(ctx, &sd);
> +            break;
>          default:
>              av_log(ctx, AV_LOG_WARNING,
>                     "unknown side data type %d (%d bytes)", sd.type, sd.size);

Factorize it with ashowinfo instead of copying the code.

You can add a public helper returning the string.

-- 
Clément B.

Attachment: pgp1f_FpsdxVd.pgp
Description: PGP signature

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

Reply via email to