[Spice-devel] [PATCH 7/7] Add debug output identifying audio codec

Pavel Grunt pgrunt at redhat.com
Fri Apr 7 15:55:00 UTC 2017


On Fri, 2017-04-07 at 10:24 -0500, Jonathon Jongsma wrote:
> It can be useful for debug to know what the codec of the playback
> and
> record channels are, so add a debug-level print statement indicating
> this.
> 
> Resolves: rhbz#1436251
> ---
>  server/sound.c | 20 ++++++++++++++++++++
>  1 file changed, 20 insertions(+)
> 
> diff --git a/server/sound.c b/server/sound.c
> index 6a6d965..eb0220f 100644
> --- a/server/sound.c
> +++ b/server/sound.c
> @@ -314,6 +314,18 @@ static bool
> snd_record_handle_write(RecordChannelClient *record_client, size_t s
>      return TRUE;
>  }
>  
> +static
> +const char* spice_audio_data_mode_to_string(gint mode)
> +{
> +    static const char *str[] = {
I had submitted something similar and it was suggested [0] to use
    static const char *const str[]

[0] https://lists.freedesktop.org/archives/spice-devel/2017-March/0367
76.html

> +        [ SPICE_AUDIO_DATA_MODE_INVALID ] = "invalid",
> +        [ SPICE_AUDIO_DATA_MODE_RAW ] = "raw",
> +        [ SPICE_AUDIO_DATA_MODE_CELT_0_5_1 ] = "celt",
> +        [ SPICE_AUDIO_DATA_MODE_OPUS ] = "opus",
> +    };
> +    return (mode >= 0 && mode < G_N_ELEMENTS(str)) ? str[mode] :
> "unknown audio codec";
> +}
> +
>  static bool
>  record_channel_handle_message(RedChannelClient *rcc, uint16_t type,
> uint32_t size, void *message)
>  {
> @@ -343,6 +355,9 @@ record_channel_handle_message(RedChannelClient
> *rcc, uint16_t type, uint32_t siz
>          }
>          else
>              record_client->mode = mode->mode;
> +
> +        spice_debug("record client %p using mode %s",
> record_client,
> +                    spice_audio_data_mode_to_string(record_client-
> >mode));
>          break;
>      }
>  
> @@ -1061,6 +1076,9 @@ playback_channel_client_constructed(GObject
> *object)
>          }
>      }
>  
> +    spice_debug("playback client %p using mode %s",
> playback_client,
> +                spice_audio_data_mode_to_string(playback_client-
> >mode));
> +
>      if (!red_client_during_migrate_at_target(client)) {
>          on_new_playback_channel_client(channel,
> SND_CHANNEL_CLIENT(playback_client));
>      }
> @@ -1469,6 +1487,8 @@ void snd_set_playback_compression(bool on)
>              if (playback->mode != desired_mode) {
>                  playback->mode = desired_mode;
>                  snd_set_command(now->connection,
> SND_PLAYBACK_MODE_MASK);
> +                spice_debug("playback client %p using mode %s",
> playback,
> +                            spice_audio_data_mode_to_string(playbac
> k->mode));
>              }
>          }
>      }


More information about the Spice-devel mailing list