Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
View | Details | Raw Unified | Return to bug 230509 | Differences between
and this patch

Collapse All | Expand All

(-)libogmrip/ogmrip-mplayer.c.orig (-31 / +39 lines)
Lines 968-1005 Link Here
968
ogmrip_mencoder_container_append_audio_file (OGMRipContainer *container, 
968
ogmrip_mencoder_container_append_audio_file (OGMRipContainer *container, 
969
    const gchar *filename, guint demuxer, gint language, GPtrArray *argv)
969
    const gchar *filename, guint demuxer, gint language, GPtrArray *argv)
970
{
970
{
971
  struct stat buf;
971
  if (filename)
972
973
  if (g_stat (filename, &buf) == 0 && buf.st_size > 0)
974
  {
972
  {
975
    if (MPLAYER_CHECK_VERSION (1,0,0,8))
973
    struct stat buf;
976
    {
977
      g_ptr_array_add (argv, g_strdup ("-audiofile"));
978
      g_ptr_array_add (argv, g_strdup (filename));
979
974
980
      if (demuxer != OGMRIP_AUDIO_DEMUXER_AUTO)
975
    if (g_stat (filename, &buf) == 0 && buf.st_size > 0)
981
      {
982
        g_ptr_array_add (argv, g_strdup ("-audio-demuxer"));
983
        g_ptr_array_add (argv, g_strdup ("rawaudio"));
984
        g_ptr_array_add (argv, g_strdup ("-rawaudio"));
985
        g_ptr_array_add (argv, g_strdup_printf ("format=0x%x", demuxer));
986
      }
987
    }
988
    else
989
    {
976
    {
990
      if (demuxer == OGMRIP_AUDIO_DEMUXER_AUTO)
977
      if (MPLAYER_CHECK_VERSION (1,0,0,8))
991
      {
978
      {
992
        g_ptr_array_add (argv, g_strdup ("-audiofile"));
979
        g_ptr_array_add (argv, g_strdup ("-audiofile"));
993
        g_ptr_array_add (argv, g_strdup (filename));
980
        g_ptr_array_add (argv, g_strdup (filename));
981
982
        if (demuxer != OGMRIP_AUDIO_DEMUXER_AUTO)
983
        {
984
          g_ptr_array_add (argv, g_strdup ("-audio-demuxer"));
985
          g_ptr_array_add (argv, g_strdup ("rawaudio"));
986
          g_ptr_array_add (argv, g_strdup ("-rawaudio"));
987
          g_ptr_array_add (argv, g_strdup_printf ("format=0x%x", demuxer));
988
        }
994
      }
989
      }
995
      else
990
      else if (demuxer == OGMRIP_AUDIO_DEMUXER_AUTO)
996
      {
991
      {
997
        gchar *dirname, *new_name;
992
        g_ptr_array_add (argv, g_strdup ("-audiofile"));
998
993
        g_ptr_array_add (argv, g_strdup (filename));
999
        dirname = g_path_get_dirname (filename);
1000
        new_name = g_build_filename (dirname, "frameno.avi", NULL);
1001
        ogmrip_fs_rename (filename, new_name, NULL);
1002
        strcpy ((gchar *) filename, new_name);
1003
      }
994
      }
1004
    }
995
    }
1005
  }
996
  }
Lines 1011-1032 Link Here
1011
{
1002
{
1012
  gchar *input;
1003
  gchar *input;
1013
1004
1014
  input = (gchar *) ogmrip_codec_get_output (codec);
1005
  input = g_strdup (ogmrip_codec_get_output (codec));
1015
1006
1016
  if (ogmrip_plugin_get_audio_codec_format (G_OBJECT_TYPE (codec)) == OGMRIP_FORMAT_AAC)
1007
  if (ogmrip_plugin_get_audio_codec_format (G_OBJECT_TYPE (codec)) == OGMRIP_FORMAT_AAC)
1017
  {
1008
  {
1018
    gchar *str;
1009
    g_ptr_array_add (argv, g_strdup ("-fafmttag"));
1010
    g_ptr_array_add (argv, g_strdup ("0x706D"));
1011
  }
1012
  else if (!MPLAYER_CHECK_VERSION (1,0,0,8) && demuxer != OGMRIP_AUDIO_DEMUXER_AUTO)
1013
  {
1014
    gchar *filename;
1019
1015
1020
    str = g_strconcat (input, ".aac", NULL);
1016
    filename = g_path_get_basename (input);
1021
    ogmrip_fs_rename (input, str, NULL);
1017
    if (!g_str_equal (filename, "frameno.avi"))
1018
    {
1019
      gchar *dirname, *new_name;
1020
1021
      dirname = g_path_get_dirname (input);
1022
      new_name = g_build_filename (dirname, "frameno.avi", NULL);
1023
      g_free (dirname);
1024
1025
      ogmrip_fs_rename (input, new_name, NULL);
1026
      ogmrip_codec_set_output (codec, new_name);
1027
      g_free (new_name);
1022
1028
1023
    ogmrip_codec_set_output (codec, str);
1029
      g_free (input);
1024
    input = str;
1030
      input = NULL;
1031
    }
1032
    g_free (filename);
1025
  }
1033
  }
1026
1034
1027
  ogmrip_mencoder_container_append_audio_file (container, input, demuxer, language, argv);
1035
  ogmrip_mencoder_container_append_audio_file (container, input, demuxer, language, argv);
1028
1036
1029
  if (ogmrip_plugin_get_audio_codec_format (G_OBJECT_TYPE (codec)) == OGMRIP_FORMAT_AAC)
1037
  if (input)
1030
    g_free (input);
1038
    g_free (input);
1031
}
1039
}
1032
1040

Return to bug 230509