diff -Nru xcfa-4.3.8/aclocal.m4 xcfa-5.0.1/aclocal.m4 --- xcfa-4.3.8/aclocal.m4 2014-01-31 12:25:42.000000000 +0000 +++ xcfa-5.0.1/aclocal.m4 2015-02-26 10:57:21.000000000 +0000 @@ -1,6 +1,6 @@ -# generated automatically by aclocal 1.14.1 -*- Autoconf -*- +# generated automatically by aclocal 1.15 -*- Autoconf -*- -# Copyright (C) 1996-2013 Free Software Foundation, Inc. +# Copyright (C) 1996-2014 Free Software Foundation, Inc. # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -21,7 +21,7 @@ To do so, use the procedure documented by the package, typically 'autoreconf'.])]) # gettext.m4 serial 66 (gettext-0.18.2) -dnl Copyright (C) 1995-2013 Free Software Foundation, Inc. +dnl Copyright (C) 1995-2014 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. @@ -422,8 +422,8 @@ dnl Usage: AM_GNU_GETTEXT_VERSION([gettext-version]) AC_DEFUN([AM_GNU_GETTEXT_VERSION], []) -# iconv.m4 serial 18 (gettext-0.18.2) -dnl Copyright (C) 2000-2002, 2007-2013 Free Software Foundation, Inc. +# iconv.m4 serial 19 (gettext-0.18.2) +dnl Copyright (C) 2000-2002, 2007-2014 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. @@ -496,27 +496,33 @@ if test $am_cv_lib_iconv = yes; then LIBS="$LIBS $LIBICONV" fi - AC_RUN_IFELSE( - [AC_LANG_SOURCE([[ + am_cv_func_iconv_works=no + for ac_iconv_const in '' 'const'; do + AC_RUN_IFELSE( + [AC_LANG_PROGRAM( + [[ #include #include -int main () -{ - int result = 0; + +#ifndef ICONV_CONST +# define ICONV_CONST $ac_iconv_const +#endif + ]], + [[int result = 0; /* Test against AIX 5.1 bug: Failures are not distinguishable from successful returns. */ { iconv_t cd_utf8_to_88591 = iconv_open ("ISO8859-1", "UTF-8"); if (cd_utf8_to_88591 != (iconv_t)(-1)) { - static const char input[] = "\342\202\254"; /* EURO SIGN */ + static ICONV_CONST char input[] = "\342\202\254"; /* EURO SIGN */ char buf[10]; - const char *inptr = input; + ICONV_CONST char *inptr = input; size_t inbytesleft = strlen (input); char *outptr = buf; size_t outbytesleft = sizeof (buf); size_t res = iconv (cd_utf8_to_88591, - (char **) &inptr, &inbytesleft, + &inptr, &inbytesleft, &outptr, &outbytesleft); if (res == 0) result |= 1; @@ -529,14 +535,14 @@ iconv_t cd_ascii_to_88591 = iconv_open ("ISO8859-1", "646"); if (cd_ascii_to_88591 != (iconv_t)(-1)) { - static const char input[] = "\263"; + static ICONV_CONST char input[] = "\263"; char buf[10]; - const char *inptr = input; + ICONV_CONST char *inptr = input; size_t inbytesleft = strlen (input); char *outptr = buf; size_t outbytesleft = sizeof (buf); size_t res = iconv (cd_ascii_to_88591, - (char **) &inptr, &inbytesleft, + &inptr, &inbytesleft, &outptr, &outbytesleft); if (res == 0) result |= 2; @@ -548,14 +554,14 @@ iconv_t cd_88591_to_utf8 = iconv_open ("UTF-8", "ISO-8859-1"); if (cd_88591_to_utf8 != (iconv_t)(-1)) { - static const char input[] = "\304"; + static ICONV_CONST char input[] = "\304"; static char buf[2] = { (char)0xDE, (char)0xAD }; - const char *inptr = input; + ICONV_CONST char *inptr = input; size_t inbytesleft = 1; char *outptr = buf; size_t outbytesleft = 1; size_t res = iconv (cd_88591_to_utf8, - (char **) &inptr, &inbytesleft, + &inptr, &inbytesleft, &outptr, &outbytesleft); if (res != (size_t)(-1) || outptr - buf > 1 || buf[1] != (char)0xAD) result |= 4; @@ -568,14 +574,14 @@ iconv_t cd_88591_to_utf8 = iconv_open ("utf8", "iso88591"); if (cd_88591_to_utf8 != (iconv_t)(-1)) { - static const char input[] = "\304rger mit b\366sen B\374bchen ohne Augenma\337"; + static ICONV_CONST char input[] = "\304rger mit b\366sen B\374bchen ohne Augenma\337"; char buf[50]; - const char *inptr = input; + ICONV_CONST char *inptr = input; size_t inbytesleft = strlen (input); char *outptr = buf; size_t outbytesleft = sizeof (buf); size_t res = iconv (cd_88591_to_utf8, - (char **) &inptr, &inbytesleft, + &inptr, &inbytesleft, &outptr, &outbytesleft); if ((int)res > 0) result |= 8; @@ -595,17 +601,14 @@ && iconv_open ("utf8", "eucJP") == (iconv_t)(-1)) result |= 16; return result; -}]])], - [am_cv_func_iconv_works=yes], - [am_cv_func_iconv_works=no], - [ -changequote(,)dnl - case "$host_os" in - aix* | hpux*) am_cv_func_iconv_works="guessing no" ;; - *) am_cv_func_iconv_works="guessing yes" ;; - esac -changequote([,])dnl - ]) +]])], + [am_cv_func_iconv_works=yes], , + [case "$host_os" in + aix* | hpux*) am_cv_func_iconv_works="guessing no" ;; + *) am_cv_func_iconv_works="guessing yes" ;; + esac]) + test "$am_cv_func_iconv_works" = no || break + done LIBS="$am_save_LIBS" ]) case "$am_cv_func_iconv_works" in @@ -692,7 +695,7 @@ ]) # intlmacosx.m4 serial 5 (gettext-0.18.2) -dnl Copyright (C) 2004-2013 Free Software Foundation, Inc. +dnl Copyright (C) 2004-2014 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. @@ -749,7 +752,7 @@ ]) # lib-ld.m4 serial 6 -dnl Copyright (C) 1996-2003, 2009-2013 Free Software Foundation, Inc. +dnl Copyright (C) 1996-2003, 2009-2014 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. @@ -869,7 +872,7 @@ ]) # lib-link.m4 serial 26 (gettext-0.18.2) -dnl Copyright (C) 2001-2013 Free Software Foundation, Inc. +dnl Copyright (C) 2001-2014 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. @@ -1647,7 +1650,7 @@ ]) # lib-prefix.m4 serial 7 (gettext-0.18) -dnl Copyright (C) 2001-2005, 2008-2013 Free Software Foundation, Inc. +dnl Copyright (C) 2001-2005, 2008-2014 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. @@ -1872,7 +1875,7 @@ ]) # nls.m4 serial 5 (gettext-0.18) -dnl Copyright (C) 1995-2003, 2005-2006, 2008-2013 Free Software Foundation, +dnl Copyright (C) 1995-2003, 2005-2006, 2008-2014 Free Software Foundation, dnl Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, @@ -2119,8 +2122,8 @@ AS_VAR_IF([$1], [""], [$5], [$4])dnl ])# PKG_CHECK_VAR -# po.m4 serial 21 (gettext-0.18.3) -dnl Copyright (C) 1995-2013 Free Software Foundation, Inc. +# po.m4 serial 24 (gettext-0.19) +dnl Copyright (C) 1995-2014 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. @@ -2151,7 +2154,7 @@ dnl Release version of the gettext macros. This is used to ensure that dnl the gettext macros and po/Makefile.in.in are in sync. - AC_SUBST([GETTEXT_MACRO_VERSION], [0.18]) + AC_SUBST([GETTEXT_MACRO_VERSION], [0.19]) dnl Perform the following tests also if --disable-nls has been given, dnl because they are needed for "make dist" to work. @@ -2574,7 +2577,7 @@ ]) # progtest.m4 serial 7 (gettext-0.18.2) -dnl Copyright (C) 1996-2003, 2005, 2008-2013 Free Software Foundation, Inc. +dnl Copyright (C) 1996-2003, 2005, 2008-2014 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. @@ -2665,7 +2668,7 @@ AC_SUBST([$1])dnl ]) -# Copyright (C) 2002-2013 Free Software Foundation, Inc. +# Copyright (C) 2002-2014 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -2677,10 +2680,10 @@ # generated from the m4 files accompanying Automake X.Y. # (This private macro should not be called outside this file.) AC_DEFUN([AM_AUTOMAKE_VERSION], -[am__api_version='1.14' +[am__api_version='1.15' dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to dnl require some minimum version. Point them to the right macro. -m4_if([$1], [1.14.1], [], +m4_if([$1], [1.15], [], [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl ]) @@ -2696,14 +2699,14 @@ # Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced. # This function is AC_REQUIREd by AM_INIT_AUTOMAKE. AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION], -[AM_AUTOMAKE_VERSION([1.14.1])dnl +[AM_AUTOMAKE_VERSION([1.15])dnl m4_ifndef([AC_AUTOCONF_VERSION], [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl _AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))]) # AM_AUX_DIR_EXPAND -*- Autoconf -*- -# Copyright (C) 2001-2013 Free Software Foundation, Inc. +# Copyright (C) 2001-2014 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -2748,15 +2751,14 @@ # configured tree to be moved without reconfiguration. AC_DEFUN([AM_AUX_DIR_EXPAND], -[dnl Rely on autoconf to set up CDPATH properly. -AC_PREREQ([2.50])dnl -# expand $ac_aux_dir to an absolute path -am_aux_dir=`cd $ac_aux_dir && pwd` +[AC_REQUIRE([AC_CONFIG_AUX_DIR_DEFAULT])dnl +# Expand $ac_aux_dir to an absolute path. +am_aux_dir=`cd "$ac_aux_dir" && pwd` ]) # AM_CONDITIONAL -*- Autoconf -*- -# Copyright (C) 1997-2013 Free Software Foundation, Inc. +# Copyright (C) 1997-2014 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -2787,7 +2789,7 @@ Usually this means the macro was only invoked conditionally.]]) fi])]) -# Copyright (C) 1999-2013 Free Software Foundation, Inc. +# Copyright (C) 1999-2014 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -2978,7 +2980,7 @@ # Generate code to set up dependency tracking. -*- Autoconf -*- -# Copyright (C) 1999-2013 Free Software Foundation, Inc. +# Copyright (C) 1999-2014 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -3054,7 +3056,7 @@ # Do all the work for Automake. -*- Autoconf -*- -# Copyright (C) 1996-2013 Free Software Foundation, Inc. +# Copyright (C) 1996-2014 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -3144,8 +3146,8 @@ # # AC_SUBST([mkdir_p], ['$(MKDIR_P)']) -# We need awk for the "check" target. The system "awk" is bad on -# some platforms. +# We need awk for the "check" target (and possibly the TAP driver). The +# system "awk" is bad on some platforms. AC_REQUIRE([AC_PROG_AWK])dnl AC_REQUIRE([AC_PROG_MAKE_SET])dnl AC_REQUIRE([AM_SET_LEADING_DOT])dnl @@ -3218,7 +3220,11 @@ END AC_MSG_ERROR([Your 'rm' program is bad, sorry.]) fi -fi]) +fi +dnl The trailing newline in this macro's definition is deliberate, for +dnl backward compatibility and to allow trailing 'dnl'-style comments +dnl after the AM_INIT_AUTOMAKE invocation. See automake bug#16841. +]) dnl Hook into '_AC_COMPILER_EXEEXT' early to learn its expansion. Do not dnl add the conditional right here, as _AC_COMPILER_EXEEXT may be further @@ -3247,7 +3253,7 @@ done echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count]) -# Copyright (C) 2001-2013 Free Software Foundation, Inc. +# Copyright (C) 2001-2014 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -3258,7 +3264,7 @@ # Define $install_sh. AC_DEFUN([AM_PROG_INSTALL_SH], [AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl -if test x"${install_sh}" != xset; then +if test x"${install_sh+set}" != xset; then case $am_aux_dir in *\ * | *\ *) install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;; @@ -3268,7 +3274,7 @@ fi AC_SUBST([install_sh])]) -# Copyright (C) 2003-2013 Free Software Foundation, Inc. +# Copyright (C) 2003-2014 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -3289,7 +3295,7 @@ # Check to see how 'make' treats includes. -*- Autoconf -*- -# Copyright (C) 2001-2013 Free Software Foundation, Inc. +# Copyright (C) 2001-2014 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -3339,7 +3345,7 @@ # Fake the existence of programs that GNU maintainers use. -*- Autoconf -*- -# Copyright (C) 1997-2013 Free Software Foundation, Inc. +# Copyright (C) 1997-2014 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -3378,7 +3384,7 @@ # Helper functions for option handling. -*- Autoconf -*- -# Copyright (C) 2001-2013 Free Software Foundation, Inc. +# Copyright (C) 2001-2014 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -3407,7 +3413,7 @@ AC_DEFUN([_AM_IF_OPTION], [m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])]) -# Copyright (C) 1999-2013 Free Software Foundation, Inc. +# Copyright (C) 1999-2014 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -3454,7 +3460,7 @@ # For backward compatibility. AC_DEFUN_ONCE([AM_PROG_CC_C_O], [AC_REQUIRE([AC_PROG_CC])]) -# Copyright (C) 2001-2013 Free Software Foundation, Inc. +# Copyright (C) 2001-2014 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -3473,7 +3479,7 @@ # Check to make sure that the build environment is sane. -*- Autoconf -*- -# Copyright (C) 1996-2013 Free Software Foundation, Inc. +# Copyright (C) 1996-2014 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -3554,7 +3560,7 @@ rm -f conftest.file ]) -# Copyright (C) 2009-2013 Free Software Foundation, Inc. +# Copyright (C) 2009-2014 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -3614,7 +3620,7 @@ _AM_SUBST_NOTMAKE([AM_BACKSLASH])dnl ]) -# Copyright (C) 2001-2013 Free Software Foundation, Inc. +# Copyright (C) 2001-2014 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -3642,7 +3648,7 @@ INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s" AC_SUBST([INSTALL_STRIP_PROGRAM])]) -# Copyright (C) 2006-2013 Free Software Foundation, Inc. +# Copyright (C) 2006-2014 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -3661,7 +3667,7 @@ # Check how to create a tarball. -*- Autoconf -*- -# Copyright (C) 2004-2013 Free Software Foundation, Inc. +# Copyright (C) 2004-2014 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, diff -Nru xcfa-4.3.8/AUTHORS xcfa-5.0.1/AUTHORS --- xcfa-4.3.8/AUTHORS 2010-08-06 23:09:07.000000000 +0000 +++ xcfa-5.0.1/AUTHORS 2015-02-05 10:46:38.000000000 +0000 @@ -1 +1,15 @@ -B U L I N Claude - fr + + __ __ ___ _ ___ _ _ _ _ _ + \ \/ / / __|___ _ ___ _____ _ _| |_ | __(_) |___ /_\ _ _ __| (_)___ + > < | (__/ _ \ ' \ V / -_) '_| _| | _|| | / -_) / _ \ || / _` | / _ \ + /_/\_\ \___\___/_||_\_/\___|_| \__| |_| |_|_\___| /_/ \_\_,_\__,_|_\___/ + + + + ======================================== + | | + | AUTHORS | + | | + ======================================== + B U L I N Claude - fr + diff -Nru xcfa-4.3.8/ChangeLog xcfa-5.0.1/ChangeLog --- xcfa-4.3.8/ChangeLog 2014-01-20 16:05:12.000000000 +0000 +++ xcfa-5.0.1/ChangeLog 2015-03-01 17:18:20.000000000 +0000 @@ -12,7 +12,20 @@ | | ======================================== - + ======================================== + | 5.0.1 | + ======================================== + - re-encoding unit [ poche_web.c ] function [ void pocheweb_analyze_file_html( void ) ] + o Image search option on the Web + - Correction [ Debian Bug report logs - # 756600 ] + o https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=756600 + + ======================================== + | 5.0.0 | + ======================================== + - Recoding xcfa with gtk-3 + - Xcfa exist in command line under the name: XCFA_CLI + ======================================== | 4.3.8 | | 4.3.8~beta0 .. 4.3.8~beta2 | diff -Nru xcfa-4.3.8/config.h.in xcfa-5.0.1/config.h.in --- xcfa-4.3.8/config.h.in 2014-01-31 12:25:56.000000000 +0000 +++ xcfa-5.0.1/config.h.in 2015-02-26 11:00:54.000000000 +0000 @@ -18,7 +18,7 @@ /* Define for enable static libarry */ #undef ENABLE_STATIC_LIBRARY -/* Define if you have vte.h in /usr/include/vte-0.0/vte/vte.h */ +/* Define if you have vte.h in /usr/include/vte-2.91/vte/vte.h */ #undef FILE_ARCH_VTE_H_IS_OK /* Define if you have vte.h in /usr/include/vte/vte.h */ @@ -94,8 +94,8 @@ /* Define to 1 if you have the `tag_c' library (-ltag_c). */ #undef HAVE_LIBTAG_C -/* Define to 1 if you have the `vte' library (-lvte). */ -#undef HAVE_LIBVTE +/* Define to 1 if you have the `vte-2.91' library (-lvte-2.91). */ +#undef HAVE_LIBVTE_2_91 /* Define to 1 if you have the header file. */ #undef HAVE_LOCALE_H diff -Nru xcfa-4.3.8/configure xcfa-5.0.1/configure --- xcfa-4.3.8/configure 2014-01-31 12:25:43.000000000 +0000 +++ xcfa-5.0.1/configure 2015-02-26 10:57:21.000000000 +0000 @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.69 for xcfa 4.3.8. +# Generated by GNU Autoconf 2.69 for xcfa 5.0.1. # # Report bugs to . # @@ -580,8 +580,8 @@ # Identity of this package. PACKAGE_NAME='xcfa' PACKAGE_TARNAME='xcfa' -PACKAGE_VERSION='4.3.8' -PACKAGE_STRING='xcfa 4.3.8' +PACKAGE_VERSION='5.0.1' +PACKAGE_STRING='xcfa 5.0.1' PACKAGE_BUGREPORT='http://www.xcfa.tuxfamily.org/' PACKAGE_URL='http://www.xcfa.tuxfamily.org/' @@ -1327,7 +1327,7 @@ # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures xcfa 4.3.8 to adapt to many kinds of systems. +\`configure' configures xcfa 5.0.1 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1401,7 +1401,7 @@ if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of xcfa 4.3.8:";; + short | recursive ) echo "Configuration of xcfa 5.0.1:";; esac cat <<\_ACEOF @@ -1521,7 +1521,7 @@ test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -xcfa configure 4.3.8 +xcfa configure 5.0.1 generated by GNU Autoconf 2.69 Copyright (C) 2012 Free Software Foundation, Inc. @@ -2058,7 +2058,7 @@ This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by xcfa $as_me 4.3.8, which was +It was created by xcfa $as_me 5.0.1, which was generated by GNU Autoconf 2.69. Invocation command line was $ $0 $@ @@ -2408,7 +2408,7 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu -am__api_version='1.14' +am__api_version='1.15' ac_aux_dir= for ac_dir in "$srcdir" "$srcdir/.." "$srcdir/../.."; do @@ -2609,8 +2609,8 @@ ac_script='s/[\\$]/&&/g;s/;s,x,x,$//' program_transform_name=`$as_echo "$program_transform_name" | sed "$ac_script"` -# expand $ac_aux_dir to an absolute path -am_aux_dir=`cd $ac_aux_dir && pwd` +# Expand $ac_aux_dir to an absolute path. +am_aux_dir=`cd "$ac_aux_dir" && pwd` if test x"${MISSING+set}" != xset; then case $am_aux_dir in @@ -2629,7 +2629,7 @@ $as_echo "$as_me: WARNING: 'missing' script is too old or missing" >&2;} fi -if test x"${install_sh}" != xset; then +if test x"${install_sh+set}" != xset; then case $am_aux_dir in *\ * | *\ *) install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;; @@ -2923,7 +2923,7 @@ # Define the identity of the package. PACKAGE='xcfa' - VERSION='4.3.8' + VERSION='5.0.1' cat >>confdefs.h <<_ACEOF @@ -2957,8 +2957,8 @@ # mkdir_p='$(MKDIR_P)' -# We need awk for the "check" target. The system "awk" is bad on -# some platforms. +# We need awk for the "check" target (and possibly the TAP driver). The +# system "awk" is bad on some platforms. # Always define AMTAR for backward compatibility. Yes, it's still used # in the wild :-( We should find a proper way to deprecate it ... AMTAR='$${TAR-tar}' @@ -3016,6 +3016,7 @@ fi fi + ac_config_headers="$ac_config_headers config.h" @@ -5058,7 +5059,7 @@ - GETTEXT_MACRO_VERSION=0.18 + GETTEXT_MACRO_VERSION=0.19 @@ -6517,36 +6518,42 @@ if test $am_cv_lib_iconv = yes; then LIBS="$LIBS $LIBICONV" fi - if test "$cross_compiling" = yes; then : - - case "$host_os" in - aix* | hpux*) am_cv_func_iconv_works="guessing no" ;; - *) am_cv_func_iconv_works="guessing yes" ;; - esac - + am_cv_func_iconv_works=no + for ac_iconv_const in '' 'const'; do + if test "$cross_compiling" = yes; then : + case "$host_os" in + aix* | hpux*) am_cv_func_iconv_works="guessing no" ;; + *) am_cv_func_iconv_works="guessing yes" ;; + esac else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #include -int main () + +#ifndef ICONV_CONST +# define ICONV_CONST $ac_iconv_const +#endif + +int +main () { - int result = 0; +int result = 0; /* Test against AIX 5.1 bug: Failures are not distinguishable from successful returns. */ { iconv_t cd_utf8_to_88591 = iconv_open ("ISO8859-1", "UTF-8"); if (cd_utf8_to_88591 != (iconv_t)(-1)) { - static const char input[] = "\342\202\254"; /* EURO SIGN */ + static ICONV_CONST char input[] = "\342\202\254"; /* EURO SIGN */ char buf[10]; - const char *inptr = input; + ICONV_CONST char *inptr = input; size_t inbytesleft = strlen (input); char *outptr = buf; size_t outbytesleft = sizeof (buf); size_t res = iconv (cd_utf8_to_88591, - (char **) &inptr, &inbytesleft, + &inptr, &inbytesleft, &outptr, &outbytesleft); if (res == 0) result |= 1; @@ -6559,14 +6566,14 @@ iconv_t cd_ascii_to_88591 = iconv_open ("ISO8859-1", "646"); if (cd_ascii_to_88591 != (iconv_t)(-1)) { - static const char input[] = "\263"; + static ICONV_CONST char input[] = "\263"; char buf[10]; - const char *inptr = input; + ICONV_CONST char *inptr = input; size_t inbytesleft = strlen (input); char *outptr = buf; size_t outbytesleft = sizeof (buf); size_t res = iconv (cd_ascii_to_88591, - (char **) &inptr, &inbytesleft, + &inptr, &inbytesleft, &outptr, &outbytesleft); if (res == 0) result |= 2; @@ -6578,14 +6585,14 @@ iconv_t cd_88591_to_utf8 = iconv_open ("UTF-8", "ISO-8859-1"); if (cd_88591_to_utf8 != (iconv_t)(-1)) { - static const char input[] = "\304"; + static ICONV_CONST char input[] = "\304"; static char buf[2] = { (char)0xDE, (char)0xAD }; - const char *inptr = input; + ICONV_CONST char *inptr = input; size_t inbytesleft = 1; char *outptr = buf; size_t outbytesleft = 1; size_t res = iconv (cd_88591_to_utf8, - (char **) &inptr, &inbytesleft, + &inptr, &inbytesleft, &outptr, &outbytesleft); if (res != (size_t)(-1) || outptr - buf > 1 || buf[1] != (char)0xAD) result |= 4; @@ -6598,14 +6605,14 @@ iconv_t cd_88591_to_utf8 = iconv_open ("utf8", "iso88591"); if (cd_88591_to_utf8 != (iconv_t)(-1)) { - static const char input[] = "\304rger mit b\366sen B\374bchen ohne Augenma\337"; + static ICONV_CONST char input[] = "\304rger mit b\366sen B\374bchen ohne Augenma\337"; char buf[50]; - const char *inptr = input; + ICONV_CONST char *inptr = input; size_t inbytesleft = strlen (input); char *outptr = buf; size_t outbytesleft = sizeof (buf); size_t res = iconv (cd_88591_to_utf8, - (char **) &inptr, &inbytesleft, + &inptr, &inbytesleft, &outptr, &outbytesleft); if ((int)res > 0) result |= 8; @@ -6625,17 +6632,20 @@ && iconv_open ("utf8", "eucJP") == (iconv_t)(-1)) result |= 16; return result; + + ; + return 0; } _ACEOF if ac_fn_c_try_run "$LINENO"; then : am_cv_func_iconv_works=yes -else - am_cv_func_iconv_works=no fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ conftest.$ac_objext conftest.beam conftest.$ac_ext fi + test "$am_cv_func_iconv_works" = no || break + done LIBS="$am_save_LIBS" fi @@ -7597,36 +7607,42 @@ if test $am_cv_lib_iconv = yes; then LIBS="$LIBS $LIBICONV" fi - if test "$cross_compiling" = yes; then : - - case "$host_os" in - aix* | hpux*) am_cv_func_iconv_works="guessing no" ;; - *) am_cv_func_iconv_works="guessing yes" ;; - esac - + am_cv_func_iconv_works=no + for ac_iconv_const in '' 'const'; do + if test "$cross_compiling" = yes; then : + case "$host_os" in + aix* | hpux*) am_cv_func_iconv_works="guessing no" ;; + *) am_cv_func_iconv_works="guessing yes" ;; + esac else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #include -int main () + +#ifndef ICONV_CONST +# define ICONV_CONST $ac_iconv_const +#endif + +int +main () { - int result = 0; +int result = 0; /* Test against AIX 5.1 bug: Failures are not distinguishable from successful returns. */ { iconv_t cd_utf8_to_88591 = iconv_open ("ISO8859-1", "UTF-8"); if (cd_utf8_to_88591 != (iconv_t)(-1)) { - static const char input[] = "\342\202\254"; /* EURO SIGN */ + static ICONV_CONST char input[] = "\342\202\254"; /* EURO SIGN */ char buf[10]; - const char *inptr = input; + ICONV_CONST char *inptr = input; size_t inbytesleft = strlen (input); char *outptr = buf; size_t outbytesleft = sizeof (buf); size_t res = iconv (cd_utf8_to_88591, - (char **) &inptr, &inbytesleft, + &inptr, &inbytesleft, &outptr, &outbytesleft); if (res == 0) result |= 1; @@ -7639,14 +7655,14 @@ iconv_t cd_ascii_to_88591 = iconv_open ("ISO8859-1", "646"); if (cd_ascii_to_88591 != (iconv_t)(-1)) { - static const char input[] = "\263"; + static ICONV_CONST char input[] = "\263"; char buf[10]; - const char *inptr = input; + ICONV_CONST char *inptr = input; size_t inbytesleft = strlen (input); char *outptr = buf; size_t outbytesleft = sizeof (buf); size_t res = iconv (cd_ascii_to_88591, - (char **) &inptr, &inbytesleft, + &inptr, &inbytesleft, &outptr, &outbytesleft); if (res == 0) result |= 2; @@ -7658,14 +7674,14 @@ iconv_t cd_88591_to_utf8 = iconv_open ("UTF-8", "ISO-8859-1"); if (cd_88591_to_utf8 != (iconv_t)(-1)) { - static const char input[] = "\304"; + static ICONV_CONST char input[] = "\304"; static char buf[2] = { (char)0xDE, (char)0xAD }; - const char *inptr = input; + ICONV_CONST char *inptr = input; size_t inbytesleft = 1; char *outptr = buf; size_t outbytesleft = 1; size_t res = iconv (cd_88591_to_utf8, - (char **) &inptr, &inbytesleft, + &inptr, &inbytesleft, &outptr, &outbytesleft); if (res != (size_t)(-1) || outptr - buf > 1 || buf[1] != (char)0xAD) result |= 4; @@ -7678,14 +7694,14 @@ iconv_t cd_88591_to_utf8 = iconv_open ("utf8", "iso88591"); if (cd_88591_to_utf8 != (iconv_t)(-1)) { - static const char input[] = "\304rger mit b\366sen B\374bchen ohne Augenma\337"; + static ICONV_CONST char input[] = "\304rger mit b\366sen B\374bchen ohne Augenma\337"; char buf[50]; - const char *inptr = input; + ICONV_CONST char *inptr = input; size_t inbytesleft = strlen (input); char *outptr = buf; size_t outbytesleft = sizeof (buf); size_t res = iconv (cd_88591_to_utf8, - (char **) &inptr, &inbytesleft, + &inptr, &inbytesleft, &outptr, &outbytesleft); if ((int)res > 0) result |= 8; @@ -7705,17 +7721,20 @@ && iconv_open ("utf8", "eucJP") == (iconv_t)(-1)) result |= 16; return result; + + ; + return 0; } _ACEOF if ac_fn_c_try_run "$LINENO"; then : am_cv_func_iconv_works=yes -else - am_cv_func_iconv_works=no fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ conftest.$ac_objext conftest.beam conftest.$ac_ext fi + test "$am_cv_func_iconv_works" = no || break + done LIBS="$am_save_LIBS" fi @@ -9795,8 +9814,9 @@ # # gtk support +# gtk+-3.0 glib-2.0 # -pkg_modules="gtk+-2.0 cairo glib-2.0 gthread-2.0" +pkg_modules="gtk+-3.0 cairo glib-2.0 gthread-2.0" @@ -10249,13 +10269,13 @@ # # vte support # -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for vte_terminal_feed in -lvte" >&5 -$as_echo_n "checking for vte_terminal_feed in -lvte... " >&6; } -if ${ac_cv_lib_vte_vte_terminal_feed+:} false; then : +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for vte_terminal_feed in -lvte-2.91" >&5 +$as_echo_n "checking for vte_terminal_feed in -lvte-2.91... " >&6; } +if ${ac_cv_lib_vte_2_91_vte_terminal_feed+:} false; then : $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS -LIBS="-lvte $LIBS" +LIBS="-lvte-2.91 $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ @@ -10275,22 +10295,22 @@ } _ACEOF if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_vte_vte_terminal_feed=yes + ac_cv_lib_vte_2_91_vte_terminal_feed=yes else - ac_cv_lib_vte_vte_terminal_feed=no + ac_cv_lib_vte_2_91_vte_terminal_feed=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_vte_vte_terminal_feed" >&5 -$as_echo "$ac_cv_lib_vte_vte_terminal_feed" >&6; } -if test "x$ac_cv_lib_vte_vte_terminal_feed" = xyes; then : +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_vte_2_91_vte_terminal_feed" >&5 +$as_echo "$ac_cv_lib_vte_2_91_vte_terminal_feed" >&6; } +if test "x$ac_cv_lib_vte_2_91_vte_terminal_feed" = xyes; then : cat >>confdefs.h <<_ACEOF -#define HAVE_LIBVTE 1 +#define HAVE_LIBVTE_2_91 1 _ACEOF - LIBS="-lvte $LIBS" + LIBS="-lvte-2.91 $LIBS" else @@ -10308,7 +10328,7 @@ # for win_vte.c: directory vte.h ? # FILE_DEBIAN_VTE_H="/usr/include/vte/vte.h" -FILE_ARCH_VTE_H="/usr/include/vte-0.0/vte/vte.h" +FILE_ARCH_VTE_H="/usr/include/vte-2.91/vte/vte.h" FILE_FW_VTE_H="/usr/include/vte-2.90/vte/vte.h" if test -f $FILE_DEBIAN_VTE_H; then @@ -10351,7 +10371,7 @@ ;; esac -ac_config_files="$ac_config_files po/Makefile.in lib/Makefile Makefile src/Makefile man/Makefile pixmaps/Makefile menu/Makefile mime/Makefile glade/Makefile desktop/Makefile" +ac_config_files="$ac_config_files po/Makefile.in po_cli/Makefile.in lib/Makefile Makefile src/Makefile man/Makefile pixmaps/Makefile menu/Makefile mime/Makefile glade/Makefile desktop/Makefile src_cli/Makefile" cat >confcache <<\_ACEOF @@ -10888,7 +10908,7 @@ # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by xcfa $as_me 4.3.8, which was +This file was extended by xcfa $as_me 5.0.1, which was generated by GNU Autoconf 2.69. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -10955,7 +10975,7 @@ cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_version="\\ -xcfa config.status 4.3.8 +xcfa config.status 5.0.1 configured by $0, generated by GNU Autoconf 2.69, with options \\"\$ac_cs_config\\" @@ -11095,6 +11115,7 @@ "depfiles") CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;; "po-directories") CONFIG_COMMANDS="$CONFIG_COMMANDS po-directories" ;; "po/Makefile.in") CONFIG_FILES="$CONFIG_FILES po/Makefile.in" ;; + "po_cli/Makefile.in") CONFIG_FILES="$CONFIG_FILES po_cli/Makefile.in" ;; "lib/Makefile") CONFIG_FILES="$CONFIG_FILES lib/Makefile" ;; "Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;; "src/Makefile") CONFIG_FILES="$CONFIG_FILES src/Makefile" ;; @@ -11104,6 +11125,7 @@ "mime/Makefile") CONFIG_FILES="$CONFIG_FILES mime/Makefile" ;; "glade/Makefile") CONFIG_FILES="$CONFIG_FILES glade/Makefile" ;; "desktop/Makefile") CONFIG_FILES="$CONFIG_FILES desktop/Makefile" ;; + "src_cli/Makefile") CONFIG_FILES="$CONFIG_FILES src_cli/Makefile" ;; *) as_fn_error $? "invalid argument: \`$ac_config_target'" "$LINENO" 5;; esac @@ -11946,7 +11968,7 @@ the_hostname=`hostname` -pkg_config_modversion_gtk=`pkg-config --modversion gtk+-2.0` +pkg_config_modversion_gtk=`pkg-config --modversion gtk+-3.0` pkg_config_modversion_cairo=`pkg-config --modversion cairo` pkg_config_modversion_glib=`pkg-config --modversion glib-2.0` pkg_config_modversion_gthread=`pkg-config --modversion gthread-2.0` @@ -11976,6 +11998,7 @@ WITH ANSI COMPILATE ............. : $enable_ansi CFLAGS .......................... : $CFLAGS INSTALL ......................... : $prefix/bin/xcfa + INSTALL ......................... : $prefix/bin/xcfa_cli Options parameters: ------------------- @@ -12014,6 +12037,7 @@ WITH ANSI COMPILATE ............. : $enable_ansi CFLAGS .......................... : $CFLAGS INSTALL ......................... : $prefix/bin/xcfa + INSTALL ......................... : $prefix/bin/xcfa_cli Options parameters: ------------------- diff -Nru xcfa-4.3.8/configure.ac xcfa-5.0.1/configure.ac --- xcfa-4.3.8/configure.ac 2014-01-31 12:25:38.000000000 +0000 +++ xcfa-5.0.1/configure.ac 2015-02-26 10:57:00.000000000 +0000 @@ -6,7 +6,7 @@ # AC_INIT([xcfa], - [4.3.8], + [5.0.1], [http://www.xcfa.tuxfamily.org/], [xcfa], [http://www.xcfa.tuxfamily.org/]) @@ -200,8 +200,9 @@ # # gtk support +# gtk+-3.0 glib-2.0 # -pkg_modules="gtk+-2.0 cairo glib-2.0 gthread-2.0" +pkg_modules="gtk+-3.0 cairo glib-2.0 gthread-2.0" PKG_CHECK_MODULES(PACKAGE, [$pkg_modules]) AC_SUBST(PACKAGE_CFLAGS) AC_SUBST(PACKAGE_LIBS) @@ -258,7 +259,7 @@ # # vte support # -AC_CHECK_LIB([vte], [vte_terminal_feed],, +AC_CHECK_LIB([vte-2.91], [vte_terminal_feed],, [ echo "***" echo "*** Please, install libvte-dev development headers" @@ -270,12 +271,12 @@ # for win_vte.c: directory vte.h ? # FILE_DEBIAN_VTE_H="/usr/include/vte/vte.h" -FILE_ARCH_VTE_H="/usr/include/vte-0.0/vte/vte.h" +FILE_ARCH_VTE_H="/usr/include/vte-2.91/vte/vte.h" FILE_FW_VTE_H="/usr/include/vte-2.90/vte/vte.h" if test -f $FILE_DEBIAN_VTE_H; then AC_DEFINE([FILE_DEBIAN_VTE_H_IS_OK], 1, [Define if you have vte.h in /usr/include/vte/vte.h]) elif test -f $FILE_ARCH_VTE_H; then - AC_DEFINE([FILE_ARCH_VTE_H_IS_OK], 1, [Define if you have vte.h in /usr/include/vte-0.0/vte/vte.h]) + AC_DEFINE([FILE_ARCH_VTE_H_IS_OK], 1, [Define if you have vte.h in /usr/include/vte-2.91/vte/vte.h]) elif test -f $FILE_FW_VTE_H; then AC_DEFINE([FILE_FW_VTE_H_IS_OK], 1, [Define if you have vte.h in /usr/include/vte-2.90/vte/vte.h]) fi @@ -309,6 +310,7 @@ AC_CONFIG_FILES([ po/Makefile.in +po_cli/Makefile.in lib/Makefile Makefile src/Makefile @@ -318,12 +320,13 @@ mime/Makefile glade/Makefile desktop/Makefile +src_cli/Makefile ]) AC_OUTPUT the_hostname=`hostname` -pkg_config_modversion_gtk=`pkg-config --modversion gtk+-2.0` +pkg_config_modversion_gtk=`pkg-config --modversion gtk+-3.0` pkg_config_modversion_cairo=`pkg-config --modversion cairo` pkg_config_modversion_glib=`pkg-config --modversion glib-2.0` pkg_config_modversion_gthread=`pkg-config --modversion gthread-2.0` @@ -353,6 +356,7 @@ WITH ANSI COMPILATE ............. : $enable_ansi CFLAGS .......................... : $CFLAGS INSTALL ......................... : $prefix/bin/xcfa + INSTALL ......................... : $prefix/bin/xcfa_cli Options parameters: ------------------- diff -Nru xcfa-4.3.8/debian/changelog xcfa-5.0.1/debian/changelog --- xcfa-4.3.8/debian/changelog 2014-04-10 14:24:24.000000000 +0000 +++ xcfa-5.0.1/debian/changelog 2015-05-10 20:42:00.000000000 +0000 @@ -1,3 +1,19 @@ +xcfa (5.0.1-1ubuntu1) wily; urgency=medium + + * debian/patches/link-libm.patch: Link xcfa_cli against -lm to fix FTBFS with + ld --as-needed. + * debian/{control,rules}: Use dh-autoreconf to apply the above change. + + -- Logan Rosen Sun, 10 May 2015 21:29:28 +0100 + +xcfa (5.0.1-1) unstable; urgency=medium + + * New upstream release. + * Update GTK build dep to compile against GTK-3.0 + * Bump Standards. + + -- Alessio Treglia Sun, 26 Apr 2015 21:50:52 +0100 + xcfa (4.3.8-1) unstable; urgency=low * New usptream release. diff -Nru xcfa-4.3.8/debian/control xcfa-5.0.1/debian/control --- xcfa-4.3.8/debian/control 2014-04-10 14:23:58.000000000 +0000 +++ xcfa-5.0.1/debian/control 2015-05-10 20:30:53.000000000 +0000 @@ -1,18 +1,19 @@ Source: xcfa Section: sound Priority: optional -Maintainer: Debian Multimedia Maintainers +Maintainer: Ubuntu Developers +XSBC-Original-Maintainer: Debian Multimedia Maintainers Uploaders: Alessio Treglia Build-Depends: - autotools-dev (>= 20100122.1~), debhelper (>= 9~), + dh-autoreconf, libasound2-dev, libcurl4-gnutls-dev, - libgtk2.0-dev, + libgtk-3-dev, libtagc0-dev, - libvte-dev -Standards-Version: 3.9.5 + libvte-2.91-dev +Standards-Version: 3.9.6 Homepage: http://www.xcfa.tuxfamily.org/ Vcs-Git: git://anonscm.debian.org/pkg-multimedia/xcfa.git Vcs-Browser: http://anonscm.debian.org/gitweb/?p=pkg-multimedia/xcfa.git diff -Nru xcfa-4.3.8/debian/patches/link-libm.patch xcfa-5.0.1/debian/patches/link-libm.patch --- xcfa-4.3.8/debian/patches/link-libm.patch 1970-01-01 00:00:00.000000000 +0000 +++ xcfa-5.0.1/debian/patches/link-libm.patch 2015-05-10 20:32:22.000000000 +0000 @@ -0,0 +1,11 @@ +--- a/src_cli/Makefile.am ++++ b/src_cli/Makefile.am +@@ -32,6 +32,8 @@ + wav.c \ + global.h + ++xcfa_cli_LDADD=-lm ++ + datadir = @datadir@ + localedir = $(datadir)/locale + DEFS = -DLOCALEDIR="$(localedir)" @DEFS@ diff -Nru xcfa-4.3.8/debian/patches/series xcfa-5.0.1/debian/patches/series --- xcfa-4.3.8/debian/patches/series 1970-01-01 00:00:00.000000000 +0000 +++ xcfa-5.0.1/debian/patches/series 2015-05-10 20:41:14.000000000 +0000 @@ -0,0 +1 @@ +link-libm.patch diff -Nru xcfa-4.3.8/debian/rules xcfa-5.0.1/debian/rules --- xcfa-4.3.8/debian/rules 2014-04-10 14:23:15.000000000 +0000 +++ xcfa-5.0.1/debian/rules 2015-05-10 20:30:41.000000000 +0000 @@ -3,7 +3,7 @@ export LDFLAGS+=-Wl,--as-needed %: - dh $@ --parallel --with autotools_dev + dh $@ --parallel --with autoreconf override_dh_auto_configure: dh_auto_configure -- --enable-debug diff -Nru xcfa-4.3.8/desktop/Makefile.in xcfa-5.0.1/desktop/Makefile.in --- xcfa-4.3.8/desktop/Makefile.in 2014-01-31 12:25:45.000000000 +0000 +++ xcfa-5.0.1/desktop/Makefile.in 2015-03-01 14:14:56.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.14.1 from Makefile.am. +# Makefile.in generated by automake 1.15 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2013 Free Software Foundation, Inc. +# Copyright (C) 1994-2014 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -15,7 +15,17 @@ @SET_MAKE@ VPATH = @srcdir@ -am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)' +am__is_gnu_make = { \ + if test -z '$(MAKELEVEL)'; then \ + false; \ + elif test -n '$(MAKE_HOST)'; then \ + true; \ + elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \ + true; \ + else \ + false; \ + fi; \ +} am__make_running_with_option = \ case $${target_option-} in \ ?) ;; \ @@ -79,11 +89,11 @@ build_triplet = @build@ host_triplet = @host@ subdir = desktop -DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) +DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON) mkinstalldirs = $(install_sh) -d CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = @@ -137,6 +147,7 @@ am__installdirs = "$(DESTDIR)$(desktopdir)" DATA = $(desktop_DATA) am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) +am__DIST_COMMON = $(srcdir)/Makefile.in DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ AMTAR = @AMTAR@ @@ -287,7 +298,6 @@ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu desktop/Makefile'; \ $(am__cd) $(top_srcdir) && \ $(AUTOMAKE) --gnu desktop/Makefile -.PRECIOUS: Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ *config.status*) \ @@ -480,6 +490,8 @@ pdf-am ps ps-am tags-am uninstall uninstall-am \ uninstall-desktopDATA +.PRECIOUS: Makefile + # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. diff -Nru xcfa-4.3.8/glade/Makefile.am xcfa-5.0.1/glade/Makefile.am --- xcfa-4.3.8/glade/Makefile.am 2011-02-12 09:43:28.000000000 +0000 +++ xcfa-5.0.1/glade/Makefile.am 2015-01-31 13:09:48.000000000 +0000 @@ -1,10 +1,10 @@ # # glade/Makefile.am # -AUTOMAKE_OPTIONS= gnu -EXTRA_DIST = xcfa.glade +AUTOMAKE_OPTIONS= gnu +EXTRA_DIST = xcfa.glade xcfa_win_about.glade xcfa_win_info.glade xcfa_win_reader.glade xcfa_win_scan.glade xcfa_win_treeview.glade gladedir = $(datadir)/xcfa/glade -glade_DATA = xcfa.glade +glade_DATA = $(EXTRA_DIST) uninstall: rm -rf "$(DESTDIR)$(datadir)/xcfa/"; diff -Nru xcfa-4.3.8/glade/Makefile.in xcfa-5.0.1/glade/Makefile.in --- xcfa-4.3.8/glade/Makefile.in 2014-01-31 12:25:45.000000000 +0000 +++ xcfa-5.0.1/glade/Makefile.in 2015-03-01 14:14:56.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.14.1 from Makefile.am. +# Makefile.in generated by automake 1.15 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2013 Free Software Foundation, Inc. +# Copyright (C) 1994-2014 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -15,7 +15,17 @@ @SET_MAKE@ VPATH = @srcdir@ -am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)' +am__is_gnu_make = { \ + if test -z '$(MAKELEVEL)'; then \ + false; \ + elif test -n '$(MAKE_HOST)'; then \ + true; \ + elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \ + true; \ + else \ + false; \ + fi; \ +} am__make_running_with_option = \ case $${target_option-} in \ ?) ;; \ @@ -79,11 +89,11 @@ build_triplet = @build@ host_triplet = @host@ subdir = glade -DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) +DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON) mkinstalldirs = $(install_sh) -d CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = @@ -137,6 +147,7 @@ am__installdirs = "$(DESTDIR)$(gladedir)" DATA = $(glade_DATA) am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) +am__DIST_COMMON = $(srcdir)/Makefile.in DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ AMTAR = @AMTAR@ @@ -268,10 +279,10 @@ # # glade/Makefile.am # -AUTOMAKE_OPTIONS = gnu -EXTRA_DIST = xcfa.glade +AUTOMAKE_OPTIONS = gnu +EXTRA_DIST = xcfa.glade xcfa_win_about.glade xcfa_win_info.glade xcfa_win_reader.glade xcfa_win_scan.glade xcfa_win_treeview.glade gladedir = $(datadir)/xcfa/glade -glade_DATA = xcfa.glade +glade_DATA = $(EXTRA_DIST) all: all-am .SUFFIXES: @@ -287,7 +298,6 @@ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu glade/Makefile'; \ $(am__cd) $(top_srcdir) && \ $(AUTOMAKE) --gnu glade/Makefile -.PRECIOUS: Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ *config.status*) \ @@ -479,6 +489,8 @@ pdf-am ps ps-am tags-am uninstall uninstall-am \ uninstall-gladeDATA +.PRECIOUS: Makefile + uninstall: rm -rf "$(DESTDIR)$(datadir)/xcfa/"; diff -Nru xcfa-4.3.8/glade/xcfa.glade xcfa-5.0.1/glade/xcfa.glade --- xcfa-4.3.8/glade/xcfa.glade 2013-02-01 13:36:16.000000000 +0000 +++ xcfa-5.0.1/glade/xcfa.glade 2015-02-06 09:58:18.000000000 +0000 @@ -1,38 +1,81 @@ - + + - - + + + 100 + 100 + 1 + 1 + + + 100 + 100 + 1 + 1 + + + 9999 + 1 + 1 + 1 + + + 999 + 2 + 1 + 1 + + + 1 + 99999 + 1 + 1 + 1 + + + -24 + -6 + -10 + 1 + 1 + 800 520 + False GDK_EXPOSURE_MASK | GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_MOTION_MASK | GDK_BUTTON1_MOTION_MASK | GDK_BUTTON2_MOTION_MASK | GDK_BUTTON3_MOTION_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | GDK_KEY_PRESS_MASK | GDK_KEY_RELEASE_MASK | GDK_ENTER_NOTIFY_MASK | GDK_LEAVE_NOTIFY_MASK | GDK_FOCUS_CHANGE_MASK | GDK_STRUCTURE_MASK | GDK_PROPERTY_CHANGE_MASK | GDK_VISIBILITY_NOTIFY_MASK | GDK_PROXIMITY_IN_MASK | GDK_PROXIMITY_OUT_MASK | GDK_SUBSTRUCTURE_MASK | GDK_SCROLL_MASK - all - - - - - + + + + + - + True + False vertical True + False True - Fichier + False + File True + False True - Quitter + False + Quit True + - @@ -42,17 +85,20 @@ True - Outils + False + Tools True True + False True - Visibilite des champs + False + Visibility fields True - + @@ -62,17 +108,20 @@ True - Aide + False + Help True + False True - A propos + False + About True + - @@ -92,40 +141,49 @@ 528 True True - + - + True + False 5 vertical - + True + False True + False 5 0 in True + False - + True + False True + False 5 - + True - - + False + + + False + True 0 @@ -135,19 +193,22 @@ True False 5 - + True + False 0 0 - + True + False 2 True + False gtk-cdrom @@ -159,7 +220,8 @@ True - Lecture + False + Read True @@ -186,7 +248,8 @@ True - <b>Choix du peripherique / Lecture du DVD</b> + False + <b>Choosing the peripheral / DVD playback</b> True @@ -200,15 +263,18 @@ True + False 5 0 in True + False - + True + False 5 @@ -217,10 +283,12 @@ True False True - - + + + True + True 0 @@ -231,43 +299,52 @@ True - <b> Destination des fichiers </b> + False + <b> File Destination </b> True + True + True 1 True + False 5 0 in True + False - + True + False 5 True True False - - + + True + False gtk-save + False + True 0 @@ -278,6 +355,7 @@ True + False <b> Eject </b> True @@ -301,42 +379,48 @@ True True 5 - automatic - automatic in - + + True + True 5 1 - + True + False - + True + False True + False 0 in True + False 5 True + False 5 - + True - + False + @@ -346,7 +430,8 @@ True - <b> Normaliser </b> + False + <b> Normalize </b> True @@ -361,33 +446,39 @@ True + False 0 in True + False - + True + False True True False 5 - + True + False 0 0 - + True + False 2 True + False gtk-undo @@ -399,7 +490,8 @@ True - Deplier + False + Unfold True @@ -425,19 +517,22 @@ True False 5 - + True + False 0 0 - + True + False 2 True + False gtk-redo @@ -449,7 +544,8 @@ True - Replier + False + Fold True @@ -476,6 +572,7 @@ True + False True @@ -490,27 +587,34 @@ True + False 0 in True + False 5 - + True + False 5 True + False - + True - + False + + False + True 5 0 @@ -518,14 +622,18 @@ True + False - + True - + False + + False + True 5 1 @@ -537,6 +645,7 @@ True + False <b> Vers 2CH: Sub / Ambiance </b> True @@ -552,30 +661,35 @@ True + False 0 in True + False True True False 5 - + True + False 0 0 - + True + False 2 True + False gtk-execute @@ -587,7 +701,8 @@ True - Extraire + False + Extraction True @@ -607,6 +722,7 @@ True + False True @@ -619,8 +735,8 @@ - False - False + True + True 0 @@ -636,6 +752,7 @@ True + False DVD @@ -643,45 +760,47 @@ - + True + False 5 vertical - + True + False True + False 5 0 in True + False - + True + False True + False 5 - + True - liststore10 - - - - - - 0 - - + False + + + False + True 0 @@ -691,20 +810,23 @@ True False 5 - - + + True + False 0 0 - + True + False 2 True + False gtk-cdrom @@ -716,6 +838,7 @@ True + False Lecture True @@ -743,7 +866,8 @@ True - <b>Choix du peripherique / Lecture du CD</b> + False + <b>Choosing the peripheral / CD playback</b> True @@ -757,15 +881,18 @@ True + False 5 0 in True + False - + True + False 5 @@ -774,10 +901,12 @@ True False True - - + + + True + True 0 @@ -788,47 +917,56 @@ True - <b> Destination des fichiers </b> + False + <b> File Destination </b> True + True + True 1 True + False 5 0 in True + False - + True + False 5 True True False - - + + True + False 0 0 - + True + False 2 True + False gtk-save @@ -840,6 +978,7 @@ True + False True @@ -854,6 +993,8 @@ + False + True 0 @@ -864,6 +1005,7 @@ True + False <b> Eject </b> True @@ -887,15 +1029,15 @@ True True 5 - automatic - automatic in - + + True + True 5 1 @@ -905,242 +1047,208 @@ True True True - + True True - - + + - + True - 4 - 4 + False - + True - 0 - <i>Titre:</i> + False + <i>Title:</i> True - GTK_FILL - + 0 + 0 - + True - 0 + False <i>Album:</i> True + 0 1 - 2 - GTK_FILL - - + True - 0 - <i>Artiste:</i> + False + <i>Artist:</i> True + 0 2 - 3 - GTK_FILL - - + True - 0 - <i>Annee:</i> + False + <i>Comment:</i> + True + + + 0 + 3 + + + + + True + False + <i>Year:</i> True 2 - 3 - GTK_FILL - + 0 - + True - 0 + False <i>Genre:</i> True 2 - 3 1 - 2 - GTK_FILL - - + True - 0 - <i>Piste:</i> + False + <i>Track:</i> True 2 - 3 2 - 3 - GTK_FILL - - + True - 0 + False <i>*.m3u et xspf:</i> True 2 - 3 3 - 4 - GTK_FILL - True True - - + True + 1 - 2 - + 0 True True - - + 1 - 2 1 - 2 - True True - - + 1 - 2 2 - 3 - True True - - + 1 - 2 3 - 4 - - + True True - adjustment8 - 1 - - + 3 - 4 - GTK_FILL - + 3 - + True True - adjustment7 - 1 - - + True + + 3 - 4 - 2 - 3 - GTK_FILL - + 0 - + True True - - + + 3 - 4 - 3 - 4 - GTK_FILL - + 2 - + True + False + True True True - - - + - False - False + True + True 0 @@ -1149,38 +1257,25 @@ True True True - + - + True + False gtk-info + False + True 1 3 - 4 1 - 2 - GTK_FILL - - - - - True - 0 - <i>Commentaire:</i> - True - - - 3 - 4 - GTK_FILL @@ -1188,19 +1283,22 @@ True - Modification des tags Freedb + False + Editing tags Freedb False - + True + False vertical True + False %a [ %a="Artist" ] %b [ %b="Album" ] @@ -1218,6 +1316,8 @@ True + False + True 0 @@ -1225,8 +1325,8 @@ True True - - + + False @@ -1242,7 +1342,8 @@ True - Arrangement des titres du CD + False + Arrangement of CD titles 1 @@ -1250,35 +1351,42 @@ - + True + False - + True + False True + False 0 in True + False - + True + False vertical - + True + False - Creation d'un fichier unique au format: + Creation of a single file format: True True False True + 0.5 True - + False @@ -1289,14 +1397,18 @@ True + False - + True - + False + + True + True 1 @@ -1308,12 +1420,15 @@ - + True + False True - et dont le nom sera: + False + and whose name will be: + 0.040000000000000001 False @@ -1325,27 +1440,32 @@ True True - - + + + True + True 1 + False + True 1 - Ecriture du fichier cue + Writing the cue file True True False True + 0.5 True - + False @@ -1360,33 +1480,41 @@ True - <b> Au moins deux selections colonne Wav </b> + False + <b> At least two selections column Wav </b> True + True + True 0 True + False 0 in True + False - + True + False vertical True - Creation d'un fichier cue -unique depuis une lecture -du cd audio + False + +Creating a cue file from a single +reading audio cd + False @@ -1395,26 +1523,30 @@ - + True + False True True False - + True + False 0 0 - + True + False 2 True + False gtk-cdrom @@ -1426,7 +1558,8 @@ True - Creation fichier cue uniquement + False + File Creation cue only True @@ -1441,7 +1574,8 @@ - False + True + True 0 @@ -1459,17 +1593,22 @@ True + False <b> Creation Cue cd </b> True + True + True 1 + True + True 5 0 @@ -1482,7 +1621,8 @@ True - Creation d'un fichier unique + False +   Creation of a single file 2 @@ -1494,7 +1634,8 @@ True - <b>Gestion des tags, titres et fichiers cue</b> + False + <b>Management of tags, titles and cue files</b> True @@ -1507,29 +1648,35 @@ - + True + False - + True + False - + True + False True + False 5 0 in True + False 5 - + True - - + False + + @@ -1537,57 +1684,61 @@ True - <b> Normaliser </b> + False + <b> normalize </b> True + False + True 0 True + False 5 0 in - + True + False True + False 5 5 True + False 5 - + True - liststore9 - - - - - - 0 - - + False + + + False + True 0 True + False 5 5 @@ -1596,12 +1747,14 @@ True True definit le serveur a contacter pour les recherches titre - - + + + False + True 1 @@ -1609,19 +1762,21 @@ 70 True + False 5 5 True True - - + + False + True 2 @@ -1631,19 +1786,22 @@ True False Parametres par defaut - + True + False 0 0 - + True + False 2 True + False gtk-refresh @@ -1655,6 +1813,7 @@ True + False True @@ -1669,6 +1828,8 @@ + False + True 3 @@ -1677,12 +1838,15 @@ True - <b> Serveur </b> + False + <b> Server </b> True + False + True 1 @@ -1696,26 +1860,21 @@ True + False 5 0 in True + False 5 - + True - Choix parmis les differentes bases de donnees pour le CD. - liststore12 - - - - - - 0 - - + False + + @@ -1723,6 +1882,7 @@ True + False 0.4699999988079071 <b>DiscId</b> True @@ -1738,12 +1898,14 @@ True + False 5 0 in True + False 5 5 @@ -1752,20 +1914,23 @@ True True 5 - - + + True + False 0 0 - + True + False 2 True + False gtk-execute @@ -1777,7 +1942,8 @@ True - Extraire + False + Extract True @@ -1797,12 +1963,14 @@ True + False True False + True 2 @@ -1814,20 +1982,25 @@ - + True + False - + True + False True + False label_duree_cd True center - + + False + True 0 @@ -1839,14 +2012,18 @@ True center True - + + False + True 1 + False + True 0 @@ -1860,6 +2037,7 @@ False + True 3 @@ -1871,6 +2049,7 @@ True + False CD @@ -1879,41 +2058,48 @@ - + True + False 5 vertical - + True + False True + False 5 0 in True + False 5 True True False - + True + False 0 0 - + True + False 2 True + False gtk-open @@ -1925,6 +2111,7 @@ True + False True @@ -1944,7 +2131,8 @@ True - <b> Importer </b> + False + <b> Import </b> True @@ -1958,29 +2146,36 @@ True + False 5 0 in True + False 5 - + True + False True True + False - + True - - + False + + + False + True 0 @@ -1991,43 +2186,51 @@ True - <b> Destination des conversions </b> + False + <b> Destination conversions </b> True + True + True 1 True + False 5 0 in True + False 5 True True False - + True + False 0 0 - + True + False 2 True + False gtk-clear @@ -2039,6 +2242,7 @@ True + False True @@ -2058,7 +2262,8 @@ True - <b> Nettoyer </b> + False + <b> Clean up </b> True @@ -2077,29 +2282,32 @@ - + True + False + vertical True True bottom - + - + True + False vertical True + False True True - automatic - automatic + True in - + @@ -2107,30 +2315,40 @@ + True + True 0 - + True + False 5 vertical - + True + False True + False + False + True 0 True + False + False + True 1 @@ -2140,19 +2358,22 @@ True False 5 - + True + False 0 0 - + True + False 2 True + False gtk-execute @@ -2164,6 +2385,7 @@ True + False Appliquer les modifications True @@ -2192,24 +2414,20 @@ - + True + False True + False 5 - + True - liststore8 - - - - - - 0 - - + False + + @@ -2222,7 +2440,8 @@ True - <b> Normalise: </b> + False + <b> Normalize: </b> True @@ -2234,12 +2453,14 @@ True + False 5 - + True - - + False + + @@ -2252,7 +2473,8 @@ True - <b> Choix niveau dBFS: </b> + False + <b> Level selection dBFS: </b> True @@ -2267,8 +2489,8 @@ True adjustment6 1 - - + + False @@ -2286,15 +2508,19 @@ True - + False + + False + True 2 False + True 1 @@ -2303,27 +2529,28 @@ True - Fichiers + False + File False - + True + False vertical True + False True True - automatic - automatic in - + @@ -2331,17 +2558,23 @@ + True + True 0 - + True + False True + False + False + True 0 @@ -2351,19 +2584,22 @@ True True 5 - + True + False 0 0 - + True + False 2 True + False gtk-execute @@ -2375,7 +2611,8 @@ True - Appliquer les modifications + False + Apply changes True @@ -2391,12 +2628,14 @@ False + True 1 False + True 1 @@ -2408,6 +2647,7 @@ True + False Wav @@ -2416,20 +2656,20 @@ - + True + False vertical True + False True True - automatic - automatic in - + @@ -2437,18 +2677,24 @@ + True + True 5 0 - + True + False True + False + False + True 0 @@ -2458,19 +2704,22 @@ True True 5 - + True + False 0 0 - + True + False 2 True + False gtk-execute @@ -2482,7 +2731,8 @@ True - Appliquer + False + Apply True @@ -2508,19 +2758,22 @@ True True 5 - + True + False 0 0 - + True + False 2 True + False gtk-clear @@ -2532,7 +2785,8 @@ True - Effacer + False + Delete True @@ -2568,6 +2822,7 @@ True + False Mp3-Ogg @@ -2576,20 +2831,20 @@ - + True + False vertical True + False True True - automatic - automatic in - + @@ -2597,231 +2852,236 @@ + True + True 0 - + True + False 5 True - + True - 4 - 4 - + False + - + True - 0 - Titre: + False + Title: - GTK_FILL - + 0 + 0 - + True - 0 + False Album: + 0 1 - 2 - GTK_FILL - - + True - 0 - Artiste: + False + Artist: + 0 2 - 3 - GTK_FILL - - + True - 0 - Commentaire: + False + Comment: + 0 3 - 4 - GTK_FILL - - + True - 0 - Annee: + False + Year: 2 - 3 - GTK_FILL - + 0 - + True - 0 + False Genre: 2 - 3 1 - 2 - GTK_FILL - - + True - 0 - Piste: + False + Track: 2 - 3 2 - 3 - GTK_FILL - - + True - 0 + False Modif.: 2 - 3 3 - 4 - GTK_FILL - True True - - + True + 1 - 2 - + 0 True True - - + 1 - 2 1 - 2 - True True - - + 1 - 2 2 - 3 - True True - - + 1 - 2 3 - 4 - - + True - True - adjustment4 - 1 - - + False + + + True + True + True + + + + False + True + 0 + + + + + True + True + True + + + + True + False + gtk-info + + + + + False + True + 1 + + 3 - 4 - 2 - 3 - GTK_FILL - GTK_FILL + 1 True True - adjustment3 - 1 - - + True + + + + 3 + 0 + + + + + True + True + 3 - 4 - GTK_FILL - GTK_FILL + 2 - + True + False True + False <b>0</b> True - + + True + True 0 @@ -2829,90 +3089,62 @@ True True - False - + True + - + True - 0 - 0 + False - + True - 2 - - - True - gtk-execute - - - False - False - 0 - - - - - True - Appliquer - True - - - False - False - 1 - - + False + Apply + + True + True + 0 + + + + + True + False + gtk-apply + + + False + True + 1 + False - False + True 1 3 - 4 3 - 4 - GTK_FILL - GTK_FILL - - - - - True - - - True - - - - - - - 3 - 4 - 1 - 2 - GTK_FILL - GTK_FILL False + True 0 False + True 1 @@ -2924,6 +3156,7 @@ True + False Tags @@ -2933,11 +3166,15 @@ + True + True 0 + True + True 1 @@ -2949,7 +3186,8 @@ True - Fichiers + False + Files 2 @@ -2957,40 +3195,47 @@ - + True + False vertical - + True + False True + False 5 0 in True + False 5 True True False - + True + False 0 0 - + True + False 2 True + False gtk-open @@ -3002,6 +3247,7 @@ True + False True @@ -3021,7 +3267,8 @@ True - <b> Importer </b> + False + <b> Import </b> True @@ -3035,16 +3282,19 @@ True + False 5 0 in True + False 5 - + True + False button1 @@ -3052,10 +3302,12 @@ True False True - - + + + True + True 0 @@ -3066,12 +3318,15 @@ True - <b> Destination des fichiers </b> + False + <b>   File Destination </b> True + True + True 1 @@ -3083,24 +3338,28 @@ - + True + False 5 vertical True + False True - - + False + + 18 True + False gnome-stock-blank - + @@ -3108,25 +3367,29 @@ False + True 0 True + False True + False GDK_EXPOSURE_MASK | GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_MOTION_MASK | GDK_BUTTON1_MOTION_MASK | GDK_BUTTON2_MOTION_MASK | GDK_BUTTON3_MOTION_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | GDK_KEY_PRESS_MASK | GDK_KEY_RELEASE_MASK | GDK_ENTER_NOTIFY_MASK | GDK_LEAVE_NOTIFY_MASK | GDK_FOCUS_CHANGE_MASK | GDK_STRUCTURE_MASK | GDK_PROPERTY_CHANGE_MASK | GDK_VISIBILITY_NOTIFY_MASK | GDK_PROXIMITY_IN_MASK | GDK_PROXIMITY_OUT_MASK | GDK_SUBSTRUCTURE_MASK | GDK_SCROLL_MASK - - + + 18 True + False GDK_EXPOSURE_MASK | GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_MOTION_MASK | GDK_BUTTON1_MOTION_MASK | GDK_BUTTON2_MOTION_MASK | GDK_BUTTON3_MOTION_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | GDK_KEY_PRESS_MASK | GDK_KEY_RELEASE_MASK | GDK_ENTER_NOTIFY_MASK | GDK_LEAVE_NOTIFY_MASK | GDK_FOCUS_CHANGE_MASK | GDK_STRUCTURE_MASK | GDK_PROPERTY_CHANGE_MASK | GDK_VISIBILITY_NOTIFY_MASK | GDK_PROXIMITY_IN_MASK | GDK_PROXIMITY_OUT_MASK | GDK_SUBSTRUCTURE_MASK | GDK_SCROLL_MASK gnome-stock-blank - + @@ -3134,21 +3397,25 @@ False + True 1 True + False + GDK_EXPOSURE_MASK | GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_MOTION_MASK | GDK_BUTTON1_MOTION_MASK | GDK_BUTTON2_MOTION_MASK | GDK_BUTTON3_MOTION_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | GDK_KEY_PRESS_MASK | GDK_KEY_RELEASE_MASK | GDK_ENTER_NOTIFY_MASK | GDK_LEAVE_NOTIFY_MASK | GDK_FOCUS_CHANGE_MASK | GDK_STRUCTURE_MASK | GDK_PROPERTY_CHANGE_MASK | GDK_VISIBILITY_NOTIFY_MASK | GDK_PROXIMITY_IN_MASK | GDK_PROXIMITY_OUT_MASK | GDK_SUBSTRUCTURE_MASK | GDK_SCROLL_MASK | GDK_TOUCH_MASK | GDK_SMOOTH_SCROLL_MASK queue none True - GDK_EXPOSURE_MASK | GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_MOTION_MASK | GDK_BUTTON1_MOTION_MASK | GDK_BUTTON2_MOTION_MASK | GDK_BUTTON3_MOTION_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | GDK_KEY_PRESS_MASK | GDK_KEY_RELEASE_MASK | GDK_ENTER_NOTIFY_MASK | GDK_LEAVE_NOTIFY_MASK | GDK_FOCUS_CHANGE_MASK | GDK_STRUCTURE_MASK | GDK_PROPERTY_CHANGE_MASK | GDK_VISIBILITY_NOTIFY_MASK | GDK_PROXIMITY_IN_MASK | GDK_PROXIMITY_OUT_MASK | GDK_SUBSTRUCTURE_MASK | GDK_SCROLL_MASK - all - - + False + GDK_EXPOSURE_MASK | GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_MOTION_MASK | GDK_BUTTON1_MOTION_MASK | GDK_BUTTON2_MOTION_MASK | GDK_BUTTON3_MOTION_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | GDK_KEY_PRESS_MASK | GDK_KEY_RELEASE_MASK | GDK_ENTER_NOTIFY_MASK | GDK_LEAVE_NOTIFY_MASK | GDK_FOCUS_CHANGE_MASK | GDK_STRUCTURE_MASK | GDK_PROPERTY_CHANGE_MASK | GDK_VISIBILITY_NOTIFY_MASK | GDK_PROXIMITY_IN_MASK | GDK_PROXIMITY_OUT_MASK | GDK_SUBSTRUCTURE_MASK | GDK_SCROLL_MASK | GDK_TOUCH_MASK | GDK_SMOOTH_SCROLL_MASK + True + + True @@ -3156,62 +3423,68 @@ True True True - GDK_EXPOSURE_MASK | GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_MOTION_MASK | GDK_BUTTON1_MOTION_MASK | GDK_BUTTON2_MOTION_MASK | GDK_BUTTON3_MOTION_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | GDK_KEY_PRESS_MASK | GDK_KEY_RELEASE_MASK | GDK_ENTER_NOTIFY_MASK | GDK_LEAVE_NOTIFY_MASK | GDK_FOCUS_CHANGE_MASK | GDK_STRUCTURE_MASK | GDK_PROPERTY_CHANGE_MASK | GDK_VISIBILITY_NOTIFY_MASK | GDK_PROXIMITY_IN_MASK | GDK_PROXIMITY_OUT_MASK | GDK_SUBSTRUCTURE_MASK | GDK_SCROLL_MASK - all gnome-stock-blank - + + True + True 2 True + False - + True - True - never - True - - - - + False + + False + False 3 + True + True 1 - + True + False + vertical - + True + False True + False 0 in True + False - + True + False vertical @@ -3219,19 +3492,22 @@ True False Lecture de 5 secondes apres le marqueur de debut - + True + False 0 0 - + True + False 2 True + False gtk-goto-last @@ -3243,6 +3519,7 @@ True + False True @@ -3258,18 +3535,21 @@ False + True 0 True + False Index de debut 00h00m00s True False + True 5 1 @@ -3281,30 +3561,36 @@ True + False True False + True 0 True + False 0 in True + False - + True + False vertical - + True + False True @@ -3312,19 +3598,22 @@ True False lecture - + True + False 0 0 - + True + False 2 True + False gtk-media-play @@ -3336,6 +3625,7 @@ True + False True @@ -3351,6 +3641,7 @@ False + True 0 @@ -3360,19 +3651,22 @@ True False Pause - + True + False 0 0 - + True + False 2 True + False gtk-media-pause @@ -3384,6 +3678,7 @@ True + False True @@ -3399,6 +3694,7 @@ False + True 1 @@ -3412,11 +3708,13 @@ True + False Index de lecture label False + True 5 1 @@ -3428,26 +3726,31 @@ True + False True False + True 1 True + False 0 in True + False - + True + False vertical @@ -3455,19 +3758,22 @@ True False Lecture de 5 secondes avant le marqueur de fin - + True + False 0 0 - + True + False 2 True + False gtk-goto-first @@ -3479,6 +3785,7 @@ True + False True @@ -3494,18 +3801,21 @@ False + True 0 True + False Index de fin 00h00m00s True False + True 5 1 @@ -3517,45 +3827,56 @@ True + False True False + True 2 True + False 0 in True + False - + True + False vertical True + False Plage True + False + True 0 True + False Duree de la plage active 00h00m00s True + False + True 9 1 @@ -3567,26 +3888,31 @@ True + False True False + True 3 True + False 0 in True + False True + False True @@ -3595,25 +3921,31 @@ True + False True + True + True 4 True + False 0 in True + False - + True + False vertical @@ -3621,19 +3953,22 @@ True False Suprimer tous les marqueurs pour les remplacer par un marqueur unique - + True + False 0 0 - + True + False 2 True + False gtk-clear @@ -3645,6 +3980,7 @@ True + False True @@ -3674,26 +4010,31 @@ True + False True False + True 5 True + False 0 in True + False - + True + False vertical @@ -3701,19 +4042,22 @@ True False Le fichier CUE sera enregistre vers 'Destination des fichiers'. - + True + False 0 0 - + True + False 2 True + False gtk-cdrom @@ -3725,7 +4069,8 @@ True - Production fichier Cue + False + Production Cue file True @@ -3751,19 +4096,22 @@ True False Le resultat du Split sera dirige vers 'Destination des fichiers'. - + True + False 0 0 - + True + False 2 True + False gtk-execute @@ -3775,6 +4123,7 @@ True + False Split True @@ -3791,6 +4140,7 @@ False + True 1 @@ -3801,17 +4151,21 @@ True + False True False + True 6 + False + True 0 @@ -3830,6 +4184,7 @@ True + False Split @@ -3838,18 +4193,21 @@ - + True + False vertical - + True True 100 + True - + 360 True + False 6 vertical @@ -3858,27 +4216,32 @@ True + False 2 0 in - + True + False True + False 5 True True - - - + + + + True + True 0 @@ -3889,10 +4252,11 @@ True Importation du titre du CD. 5 - + True + False gtk-cdrom @@ -3908,7 +4272,8 @@ True - <b>Titre CD</b> + False + <b>Title CD</b> True @@ -3920,18 +4285,20 @@ - + True + False True True True Choix d'une nouvelle police. - + True + False gtk-select-font @@ -3949,10 +4316,11 @@ True True Texte gras. - + True + False gtk-bold @@ -3970,10 +4338,11 @@ True True Texte italique. - + True + False gtk-italic @@ -3986,14 +4355,15 @@ - + True - Apres une lecture de CD et un ajout d'etiquette, ce menu permet la mise en forme des titres, auteurs ... - - + False + + - 1 + True + True 3 @@ -4003,10 +4373,11 @@ True True Ajouter du texte editable. - + True + False gtk-add @@ -4028,24 +4399,24 @@ True + False 2 0 in True + False True True 5 - automatic - automatic True True - + @@ -4055,27 +4426,33 @@ True - <b>Texte</b> + False + <b>Text</b> True + True + True 3 - + True + False 2 0 in - + True + False True + False 5 5 @@ -4083,19 +4460,22 @@ True True Saisissez ici un critere de recherche d'images. - - - + + + + True + True 0 True + False True @@ -4103,10 +4483,11 @@ True Importation des images depuis le Web. 5 - + True + False gtk-yes @@ -4124,7 +4505,8 @@ True - <b>Import images web</b> + False + <b>Import web images </b> True @@ -4142,25 +4524,31 @@ - - 600 + True - True - automatic - automatic + False - + True - queue + True + in + - + True - GDK_EXPOSURE_MASK | GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_MOTION_MASK | GDK_BUTTON1_MOTION_MASK | GDK_BUTTON2_MOTION_MASK | GDK_BUTTON3_MOTION_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | GDK_KEY_PRESS_MASK | GDK_KEY_RELEASE_MASK | GDK_ENTER_NOTIFY_MASK | GDK_LEAVE_NOTIFY_MASK | GDK_FOCUS_CHANGE_MASK | GDK_STRUCTURE_MASK | GDK_PROPERTY_CHANGE_MASK | GDK_VISIBILITY_NOTIFY_MASK | GDK_PROXIMITY_IN_MASK | GDK_PROXIMITY_OUT_MASK | GDK_SUBSTRUCTURE_MASK | GDK_SCROLL_MASK - - - - - + False + + + True + False + GDK_EXPOSURE_MASK | GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_MOTION_MASK | GDK_BUTTON1_MOTION_MASK | GDK_BUTTON2_MOTION_MASK | GDK_BUTTON3_MOTION_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | GDK_KEY_PRESS_MASK | GDK_KEY_RELEASE_MASK | GDK_ENTER_NOTIFY_MASK | GDK_LEAVE_NOTIFY_MASK | GDK_FOCUS_CHANGE_MASK | GDK_STRUCTURE_MASK | GDK_PROPERTY_CHANGE_MASK | GDK_VISIBILITY_NOTIFY_MASK | GDK_PROXIMITY_IN_MASK | GDK_PROXIMITY_OUT_MASK | GDK_SUBSTRUCTURE_MASK | GDK_SCROLL_MASK | GDK_TOUCH_MASK | GDK_SMOOTH_SCROLL_MASK + + + + + + + @@ -4168,27 +4556,31 @@ True - False + True + True + True 0 - + True + False True True True Supprimer l'image en selection - + True + False gtk-clear @@ -4206,10 +4598,11 @@ True True AJouter de nouvelles images. - + True + False Ouvre un fichier gtk-open @@ -4228,10 +4621,11 @@ True True Enregistrer la page au format png. - + True + False Sauvegarde le fichier gtk-save @@ -4250,10 +4644,11 @@ True True Diminution de l'echelle. - + True + False Reduit l'agrandissement gtk-zoom-out @@ -4272,10 +4667,11 @@ True True Echelle a 100%. - + True + False Remet l'echelle a 100% gtk-zoom-100 @@ -4294,10 +4690,11 @@ True True Augmentation de l'echelle. - + True + False Augmente l'agrandissement gtk-zoom-in @@ -4316,10 +4713,11 @@ True True Echelle compatible avec la taille de la fenetre. - + True + False Adapte l'echelle a la taille de la fenetre gtk-zoom-fit @@ -4338,9 +4736,11 @@ True True Emplacement de sauvegarde des fichiers. - + + True + True 2 7 @@ -4350,19 +4750,20 @@ True True Nom (sans extention) du fichier a sauvegarder. - - - + + + False - False + True 8 True + False label @@ -4374,6 +4775,7 @@ False + True 1 @@ -4386,8 +4788,9 @@ True + False queue - + @@ -4396,6 +4799,7 @@ False + True 2 @@ -4407,6 +4811,7 @@ True + False Pochette @@ -4420,31 +4825,37 @@ True 5 left - + - + True + False vertical - + True + False True + False 5 0 in True + False - + True + False 5 50 True + False 0 0.4699999988079071 Nice @@ -4458,22 +4869,19 @@ True + False - + True - liststore5 - - - - - - 0 - - + False + + + True + True 1 @@ -4484,40 +4892,49 @@ True - <b>Priorite systeme</b> + False + <b>Priority system</b> True + True + True 0 False + True 0 True + False 5 0 in True + False - + True + False 5 vertical True - <i><b>Indiquez</b> ici le dossier sur votre systeme qui servira de lieu -de stockage provisoire pendant les differentes conversions.</i> + False + +<i><b>Enter</b> here the folder on your system that will serve as +temporary storage for the different conversions.</i> True @@ -4534,8 +4951,8 @@ True False True - - + + False @@ -4550,37 +4967,43 @@ True - <b>Dossier provisoire des conversions</b> + False + <b>Provisional file conversions</b> True False + True 1 True + False 5 0 in True + False - + True + False 5 True True False + 0.5 True - - + + False @@ -4595,10 +5018,12 @@ True True True - - + + + True + True 1 @@ -4609,7 +5034,8 @@ True - <b>Jouer une musique en fin de tache</b> + False + <b>Playing a job end music</b> True @@ -4628,6 +5054,7 @@ True + False General @@ -4635,31 +5062,38 @@ - + True + False vertical - + True + False - + True + False vertical True + False 5 0 in True + False - + True + False - + True + False vertical @@ -4669,12 +5103,15 @@ False 5 True + 0.5 True True - - + + + False + True 0 @@ -4685,13 +5122,16 @@ True False 5 + 0.5 True True radiobutton_extract_with_cdparanoia - - + + + False + True 1 @@ -4707,15 +5147,19 @@ 0.47999998927116394 True radiobutton_extract_with_cdparanoia - - + + + False + True 2 + False + True 0 @@ -4727,12 +5171,15 @@ False 5 True + 0.5 True radiobutton_extract_with_cdparanoia - - + + + False + True 1 @@ -4743,37 +5190,46 @@ True + False <b> Extraction cd-audio avec: </b> True + True + True 0 + True + True 0 - + 174 True + False vertical True + False 5 0 in True + False - + True + False vertical @@ -4781,19 +5237,22 @@ True False 5 - + True + False 0 0 - + True + False 2 True + False gtk-connect @@ -4805,6 +5264,7 @@ True + False <b>HomePage</b> True True @@ -4832,19 +5292,22 @@ True False 5 - + True + False 0 0 - + True + False 2 True + False gtk-connect @@ -4856,6 +5319,7 @@ True + False <b>ManPage</b> True True @@ -4884,6 +5348,7 @@ True + False <b>Web cdparanoia</b> True @@ -4905,44 +5370,53 @@ False + False 0 True + False 5 0 in True + False 5 - + True + False True True False 5 + 0.5 True - - + + False + True 0 True + False <i>Le fichier <b>LogExpertMode.txt</b> sera cree dans le dossier des extractions</i> True + False + True 1 @@ -4953,7 +5427,8 @@ True - <b>Generation d'un rapport pour: cdparanoia mode expert multi passes</b> + False + <b>Generation of a report for: cdparanoia mode expert multi passes</b> True @@ -4967,35 +5442,44 @@ True + False 5 0 in True + False - + True + False 5 vertical - + True + False True - <b>%a</b> - artiste <b>%b</b> - titre de l'album <b>%c</b> - numero de la piste -<b>%d</b> - titre de la chanson <b>%e</b> - annee <b>%g</b> - genre + False + <b>%a</b> - artist <b>%b</b> - titre de l'album <b>%c</b> - numero de la piste +<b>%d</b> - titre de la chanson <b>%e</b> - year <b>%g</b> - genre <b>%na</b> - <b>n</b>o <b>a</b>ccent <b>%Tl</b> - <b>T</b>etsumaki <b>l</b>ower -<b>%u</b> - remplacement de caracteres: <b>%u(AB=C) %u( =_)</b> +<b>%u</b> - replacement characters: <b>%u(AB=C) %u( =_)</b> True + False + True 0 + False + False 0 @@ -5003,9 +5487,9 @@ True True - - - + + + False @@ -5015,8 +5499,9 @@ - + True + False 5 @@ -5025,9 +5510,11 @@ label_dossier_cdaudio_exemple True True - + + False + True 0 @@ -5045,6 +5532,7 @@ True + False <b>Dossier de stockage</b> True @@ -5059,8 +5547,11 @@ True + False + False + True 3 @@ -5072,6 +5563,7 @@ True + False CD @@ -5080,37 +5572,45 @@ - + True + False vertical - + True + False - + True + False vertical True + False 5 0 in True + False - + True + False vertical - + True + False 5 180 True + False 0 ABR / CBR / VBR / VBR-NEW @@ -5123,39 +5623,39 @@ True + False - + True - liststore4 - - - - - - 0 - - + False + + + True + True 1 False + True 0 - + True + False 5 100 True + False 0 Debit @@ -5168,39 +5668,39 @@ True + False - + True - liststore3 - - - - - - 0 - - + False + + + True + True 1 False + True 1 - + True + False 5 100 True + False 0 Mode @@ -5213,21 +5713,26 @@ True + False - + True - - + False + + + True + True 1 False + True 2 @@ -5238,6 +5743,7 @@ True + False <b> Lame (fichier mp3): </b> True @@ -5245,55 +5751,67 @@ False + True 0 True + False + False + True 1 + True + True 0 - + 174 True + False vertical True + False 5 0 in True + False True True False 5 - + True + False 0 0 - + True + False 2 True + False gtk-dialog-info @@ -5305,6 +5823,7 @@ True + False Par defaut True @@ -5325,6 +5844,7 @@ True + False <b>Options LAME</b> True @@ -5339,15 +5859,18 @@ True + False 5 0 in True + False - + True + False vertical @@ -5355,19 +5878,22 @@ True False 5 - + True + False 0 0 - + True + False 2 True + False gtk-connect @@ -5379,6 +5905,7 @@ True + False <b>Site officiel</b> True True @@ -5406,19 +5933,22 @@ True False 5 - + True + False 0 0 - + True + False 2 True + False gtk-connect @@ -5430,6 +5960,7 @@ True + False <b>Wiki mp3</b> True True @@ -5457,20 +5988,23 @@ True False 5 - + True + False 0 0 5 - + True + False 2 True + False gtk-connect @@ -5482,6 +6016,7 @@ True + False <b>Wiki </b> True True @@ -5509,20 +6044,23 @@ True False 5 - + True + False 0 0 5 - + True + False 2 True + False gtk-connect @@ -5534,6 +6072,7 @@ True + False <b>ManPage</b> True True @@ -5562,12 +6101,15 @@ True + False <b>Web Lame</b> True + False + True 1 @@ -5581,37 +6123,44 @@ False + True 0 True + False + True + True 1 True + False 5 0 in True + False - + True + False 5 vertical True True - - + + False @@ -5621,12 +6170,14 @@ - + True + False 5 True + False <b>[</b> True @@ -5643,15 +6194,18 @@ <b>string option interne</b> True True - + + True + True 1 True + False <b>]</b> True @@ -5663,6 +6217,8 @@ + False + True 5 1 @@ -5674,7 +6230,8 @@ True - <b> Options experts, definies par l'utilisateur - lame (wav -> mp3) </b> + False + <b> Experts options defined by the user- lame (wav -> mp3) </b> True @@ -5693,6 +6250,7 @@ True + False Mp3 @@ -5701,135 +6259,120 @@ - + True + False vertical - + True + False - + True + False vertical True + False 5 0 in True + False - + True - 3 - 2 + False + True - + True - 5 - - - True - - - - + False + Debit - 1 - 2 - 2 - 3 - GTK_FILL - GTK_FILL + 0 + 0 - + True - 5 - - - True - - - - + False + Mode flux (streaming) - 1 - 2 + 0 1 - 2 - GTK_FILL - GTK_FILL - - 160 + True - 0 - Mode + False + Mode + 0 2 - 3 - GTK_FILL - - - 160 + True - 0 - Mode flux (streaming) + False + + + True + False + + + + - 1 - 2 - GTK_FILL - + 1 + 0 - + True - 5 + False - + True - liststore2 - - - - - - 0 - - + False + + 1 - 2 - GTK_FILL + 1 - - 160 + True - 0 - Debit + False + + + True + False + + + + - GTK_FILL - + 1 + 2 @@ -5839,6 +6382,7 @@ True + False <b> Oggenc (fichier ogg): </b> True @@ -5853,49 +6397,60 @@ True + False + False + True 1 + True + True 0 - + 174 True + False vertical True + False 5 0 in True + False True True False 5 - + True + False 0 0 - + True + False 2 True + False gtk-dialog-info @@ -5907,6 +6462,7 @@ True + False Par defaut True @@ -5927,6 +6483,7 @@ True + False <b>Options OGGENC</b> True @@ -5941,15 +6498,18 @@ True + False 5 0 in True + False - + True + False vertical @@ -5957,19 +6517,22 @@ True False 5 - + True + False 0 0 - + True + False 2 True + False gtk-connect @@ -5981,6 +6544,7 @@ True + False <b>Wiki</b> True True @@ -6008,20 +6572,23 @@ True False 5 - + True + False 0 0 15 - + True + False 2 True + False gtk-connect @@ -6033,6 +6600,7 @@ True + False <b>ManPage</b> True True @@ -6061,55 +6629,66 @@ True + False <b>Web Oggenc</b> True + False + True 1 False + True 1 False + True 0 True + False + True + True 1 True + False 5 0 in True + False - + True + False 5 vertical True True - - + + False @@ -6119,12 +6698,14 @@ - + True + False 5 True + False <b>[</b> True @@ -6141,15 +6722,18 @@ <b>string option interne</b> True True - + + True + True 1 True + False <b>]</b> True @@ -6161,6 +6745,8 @@ + False + True 5 1 @@ -6172,7 +6758,8 @@ True - <b> Options experts, definies par l'utilisateur - oggenc (wav -> ogg) </b> + False + <b> Experts options defined by the user - oggenc (wav -> ogg) </b> True @@ -6191,6 +6778,7 @@ True + False Oggenc @@ -6199,32 +6787,39 @@ - + True + False vertical - + True + False - + True + False vertical True + False 5 0 in True + False - + True + False 150 True + False 0 Taux de compression @@ -6238,23 +6833,20 @@ True + False 5 - + True - liststore1 - - - - - - 0 - - + False + + + True + True 1 @@ -6265,6 +6857,7 @@ True + False <b> Flac (fichier flac): </b> True @@ -6272,55 +6865,67 @@ False + True 0 True + False + False + True 1 + True + True 0 - + 174 True + False vertical True + False 5 0 in True + False True True False 5 - + True + False 0 0 - + True + False 2 True + False gtk-dialog-info @@ -6332,6 +6937,7 @@ True + False Par defaut True @@ -6352,6 +6958,7 @@ True + False <b>Options FLAC</b> True @@ -6366,15 +6973,18 @@ True + False 5 0 in True + False - + True + False vertical @@ -6382,19 +6992,22 @@ True False 5 - + True + False 0 0 - + True + False 2 True + False gtk-connect @@ -6406,6 +7019,7 @@ True + False <b>Site officiel</b> True True @@ -6433,19 +7047,22 @@ True False 5 - + True + False 0 0 - + True + False 2 True + False gtk-connect @@ -6457,6 +7074,7 @@ True + False <b>Framasoft</b> True True @@ -6484,19 +7102,22 @@ True False 5 - + True + False 0 0 - + True + False 2 True + False gtk-connect @@ -6508,6 +7129,7 @@ True + False <b>ManPage</b> True True @@ -6536,6 +7158,7 @@ True + False <b>Web Flac</b> True @@ -6557,37 +7180,44 @@ False + True 0 True + False + True + True 1 True + False 5 0 in True + False - + True + False 5 vertical True True - - + + False @@ -6597,12 +7227,14 @@ - + True + False 5 True + False <b>[</b> True @@ -6619,15 +7251,18 @@ <b>string option interne</b> True True - + + True + True 1 True + False <b>]</b> True @@ -6639,6 +7274,8 @@ + False + True 5 1 @@ -6650,13 +7287,15 @@ True - <b> Options experts, definies par l'utilisateur - flac (wav -> flac) </b> + False + <b> Experts options defined by the user- flac (wav -> flac) </b> True False + True 2 @@ -6668,6 +7307,7 @@ True + False Flac @@ -6676,32 +7316,39 @@ - + True + False vertical - + True + False - + True + False vertical True + False 5 0 in True + False - + True + False 100 True + False 0 Qualite @@ -6714,16 +7361,20 @@ True + False 5 - + True - - + False + + + True + True 1 @@ -6734,6 +7385,7 @@ True + False <b> Mac (fichier ape): </b> True @@ -6748,49 +7400,60 @@ True + False + False + True 1 + True + True 0 - + 174 True + False vertical True + False 5 0 in True + False True True False 5 - + True + False 0 0 - + True + False 2 True + False gtk-dialog-info @@ -6802,6 +7465,7 @@ True + False Par defaut True @@ -6822,43 +7486,51 @@ True + False <b>Options MAC</b> True + False + True 0 True + False 5 0 in True + False True True False 5 - + True + False 0 0 - + True + False 2 True + False gtk-connect @@ -6870,6 +7542,7 @@ True + False <b>Wiki</b> True True @@ -6891,12 +7564,15 @@ True + False <b>Web Mac</b> True + False + True 1 @@ -6910,37 +7586,44 @@ False + True 0 True + False + True + True 1 True + False 5 0 in True + False - + True + False 5 vertical True True - - + + False @@ -6950,12 +7633,14 @@ - + True + False 5 True + False <b>[</b> True @@ -6972,15 +7657,18 @@ <b>string option interne</b> True True - + + True + True 1 True + False <b>]</b> True @@ -6992,6 +7680,8 @@ + False + True 5 1 @@ -7003,13 +7693,15 @@ True - <b> Options experts, definies par l'utilisateur - mac (wav -> ape) </b> + False + <b> Experts options defined by the user - mac (wav -> ape) </b> True False + True 2 @@ -7021,6 +7713,7 @@ True + False Mac @@ -7029,37 +7722,45 @@ - + True + False vertical - + True + False - + True + False vertical True + False 5 0 in - + True + False vertical True + False 5 - + True + False 120 True + False 0 Compression @@ -7073,15 +7774,19 @@ True + False - + True - - + False + + + True + True 1 @@ -7089,20 +7794,25 @@ + False + True 0 True + False - + True + False 5 120 True + False 0 Son @@ -7116,15 +7826,19 @@ True + False - + True - - + False + + + True + True 1 @@ -7132,20 +7846,25 @@ + False + True 1 True + False - + True + False 5 200 True + False 0 Mode hybride @@ -7159,15 +7878,19 @@ True + False - + True - - + False + + + True + True 1 @@ -7175,20 +7898,25 @@ + False + True 2 True + False - + True + False 5 200 True + False 0 Fichier de correction @@ -7202,15 +7930,19 @@ True + False - + True - - + False + + + True + True 1 @@ -7218,20 +7950,25 @@ + False + True 3 True + False - + True + False 5 200 True + False 0 Compression maximum @@ -7245,15 +7982,19 @@ True + False - + True - - + False + + + True + True 1 @@ -7261,20 +8002,25 @@ + False + True 4 True + False - + True + False 5 200 True + False 0 Signature MD5 @@ -7288,15 +8034,19 @@ True + False - + True - - + False + + + True + True 1 @@ -7304,20 +8054,25 @@ + False + True 5 True + False - + True + False 5 200 True + False 0 Extra encode processing @@ -7331,15 +8086,19 @@ True + False - + True - - + False + + + True + True 1 @@ -7347,6 +8106,8 @@ + False + True 6 @@ -7355,6 +8116,7 @@ True + False <b> WavPack (fichier wv): </b> True @@ -7369,49 +8131,60 @@ True + False + False + True 1 + True + True 0 - + 174 True + False vertical True + False 5 0 in True + False True True False 5 - + True + False 0 0 - + True + False 2 True + False gtk-dialog-info @@ -7423,6 +8196,7 @@ True + False Par defaut True @@ -7443,6 +8217,7 @@ True + False <b>Options WAVPACK</b> True @@ -7457,15 +8232,18 @@ True + False 5 0 in True + False - + True + False vertical @@ -7473,19 +8251,22 @@ True False 5 - + True + False 0 0 - + True + False 2 True + False gtk-connect @@ -7497,6 +8278,7 @@ True + False <b>Wiki</b> True True @@ -7513,6 +8295,8 @@ + False + True 0 @@ -7522,19 +8306,22 @@ True False 5 - + True + False 0 0 - + True + False 2 True + False gtk-connect @@ -7546,6 +8333,7 @@ True + False <b>ManPage</b> True True @@ -7562,6 +8350,8 @@ + False + True 1 @@ -7572,6 +8362,7 @@ True + False <b>Web Wavpack</b> True @@ -7593,37 +8384,44 @@ False + True 0 True + False + True + True 1 True + False 5 0 in True + False - + True + False 5 vertical True True - - + + False @@ -7633,12 +8431,14 @@ - + True + False 5 True + False <b>[</b> True @@ -7655,15 +8455,18 @@ <b>string option interne</b> True True - + + True + True 1 True + False <b>]</b> True @@ -7675,6 +8478,8 @@ + False + True 5 1 @@ -7686,13 +8491,15 @@ True - <b> Options experts, definies par l'utilisateur - wavpack (wav -> wv) </b> + False + <b> Experts options defined by the user - wavpack (wav -> wv) </b> True False + True 2 @@ -7704,6 +8511,7 @@ True + False Wavpack @@ -7712,41 +8520,51 @@ - + True + False vertical - + True + False - + True + False vertical True + False 5 0 in True + False 5 - + True + False True + False - + True - - + False + + + True + True 0 @@ -7757,6 +8575,7 @@ True + False <b> MusePack (fichier mpc): </b> True @@ -7771,49 +8590,60 @@ True + False + False + True 1 + True + True 0 - + 174 True + False vertical True + False 5 0 in True + False True True False 5 - + True + False 0 0 - + True + False 2 True + False gtk-dialog-info @@ -7825,6 +8655,7 @@ True + False Par defaut True @@ -7845,27 +8676,33 @@ True + False <b>Options MUSEPACK</b> True + False + True 0 True + False 5 0 in True + False - + True + False vertical @@ -7873,19 +8710,22 @@ True False 5 - + True + False 0 0 - + True + False 2 True + False gtk-connect @@ -7897,6 +8737,7 @@ True + False <b>Site officiel</b> True True @@ -7924,19 +8765,22 @@ True False 5 - + True + False 0 0 - + True + False 2 True + False gtk-connect @@ -7948,6 +8792,7 @@ True + False <b>Framasoft</b> True True @@ -7976,12 +8821,15 @@ True + False <b>Web Musepack</b> True + False + True 1 @@ -7995,37 +8843,44 @@ False + True 0 True + False + True + True 1 True + False 5 0 in True + False - + True + False 5 vertical True True - - + + False @@ -8035,12 +8890,14 @@ - + True + False 5 True + False <b>[</b> True @@ -8057,15 +8914,18 @@ <b>string option interne</b> True True - + + True + True 1 True + False <b>]</b> True @@ -8077,6 +8937,8 @@ + False + True 5 1 @@ -8088,13 +8950,15 @@ True - <b> Options experts, definies par l'utilisateur - musepack (wav -> mpc) </b> + False + <b> Experts options defined by the user- musepack (wav -> mpc) </b> True False + True 2 @@ -8106,6 +8970,7 @@ True + False Musepack @@ -8114,134 +8979,127 @@ - + True + False vertical - + True + False - + True + False vertical True + False 5 0 in - + True + False vertical - + True - 3 - 2 + False + True - + True - - - True - - - - + False + Conteneur - 1 - 2 - 2 - 3 - GTK_FILL - GTK_FILL - 5 - 5 + 0 + 0 - + True - - - True - - - - + False + VBR / ABR - 1 - 2 + 0 1 - 2 - GTK_FILL - GTK_FILL - 5 - 5 - + True - - - True - - - - + False + Qualite VBR / Debit ABR - 1 - 2 - GTK_FILL - 5 - 5 + 0 + 2 - + True - 0 - Qualite VBR / Debit ABR + False + + + True + False + + + + + 1 2 - 3 - GTK_FILL - - + True - 0 - VBR / ABR + False + + + True + False + + + + + 1 1 - 2 - GTK_FILL - - - 180 + True - 0 - Conteneur + False + + + True + False + + + + - GTK_FILL - + 1 + 0 + False + True 0 @@ -8250,61 +9108,75 @@ True + False <b> Faac (fichier .m4a): </b> True + False + True 0 True + False + False + True 1 + True + True 0 - + 174 True + False vertical True + False 5 0 in True + False True True False 5 - + True + False 0 0 - + True + False 2 True + False gtk-dialog-info @@ -8316,6 +9188,7 @@ True + False Par defaut True @@ -8336,6 +9209,7 @@ True + False <b>Options FAAC</b> True @@ -8350,15 +9224,18 @@ True + False 5 0 in True + False - + True + False vertical @@ -8366,19 +9243,22 @@ True False 5 - + True + False 0 0 - + True + False 2 True + False gtk-connect @@ -8390,6 +9270,7 @@ True + False <b>Site officiel</b> True True @@ -8417,20 +9298,23 @@ True False 5 - + True + False 0 0 15 - + True + False 2 True + False gtk-connect @@ -8442,6 +9326,7 @@ True + False <b>Web Info</b> True True @@ -8469,20 +9354,23 @@ True False 5 - + True + False 0 0 15 - + True + False 2 True + False gtk-connect @@ -8494,6 +9382,7 @@ True + False <b>ManPage</b> True True @@ -8522,6 +9411,7 @@ True + False <b>Web Faac</b> True @@ -8550,31 +9440,37 @@ True + False + True + True 1 True + False 5 0 in True + False - + True + False 5 vertical True True - - + + False @@ -8584,12 +9480,14 @@ - + True + False 5 True + False <b>[</b> True @@ -8606,15 +9504,18 @@ <b>string option interne</b> True True - + + True + True 1 True + False <b>]</b> True @@ -8626,6 +9527,8 @@ + False + True 5 1 @@ -8637,7 +9540,8 @@ True - <b> Options experts, definies par l'utilisateur - faac (wav -> m4a) </b> + False + <b> Experts options defined by the user - faac (wav -> m4a) </b> True @@ -8656,6 +9560,7 @@ True + False Faac @@ -8664,101 +9569,98 @@ - + True + False vertical - + True + False - + True + False vertical True + False 5 0 in - + True + False + True - + True - 2 - 2 + False + True - + True - - - True - - - - + False + Mono: Qualite en kbit/s - 1 - 2 - GTK_FILL - GTK_FILL - 5 - 5 + 0 + 0 - + True - - - True - - - - + False + Stereo: Qualite en kbit/s - 1 - 2 + 0 1 - 2 - GTK_FILL - 5 - 5 - - 210 + True - 0 - Stereo: Qualite en kbit/s + False + + + True + False + + + + + 1 1 - 2 - GTK_FILL - - - 210 + True - 0 - Mono: Qualite en kbit/s + False + + + True + False + + + + - GTK_FILL - + 1 + 0 False - False + True 0 @@ -8767,6 +9669,7 @@ True + False <b> AacplusEnc (fichier .aac): </b> True @@ -8781,49 +9684,60 @@ True + False + False + True 1 + True + True 0 - + 174 True + False vertical True + False 5 0 in True + False True True False 5 - + True + False 0 0 - + True + False 2 True + False gtk-dialog-info @@ -8835,6 +9749,7 @@ True + False Par defaut True @@ -8855,6 +9770,7 @@ True + False <b>Options AacPlusEnc</b> True @@ -8869,15 +9785,18 @@ True + False 5 0 in True + False - + True + False vertical @@ -8885,19 +9804,22 @@ True False 5 - + True + False 0 0 - + True + False 2 True + False gtk-connect @@ -8909,6 +9831,7 @@ True + False <b>Site officiel</b> True True @@ -8936,20 +9859,23 @@ True False 5 - + True + False 0 0 15 - + True + False 2 True + False gtk-connect @@ -8961,6 +9887,7 @@ True + False <b>Web Info</b> True True @@ -8988,20 +9915,23 @@ True False 5 - + True + False 0 0 15 - + True + False 2 True + False gtk-connect @@ -9013,6 +9943,7 @@ True + False <b>ManPage</b> True True @@ -9041,6 +9972,7 @@ True + False <b>Web AacPlusEnc</b> True @@ -9069,8 +10001,11 @@ True + False + False + True 1 @@ -9082,6 +10017,7 @@ True + False AacplusEnc @@ -9090,21 +10026,25 @@ - + True + False vertical True + False 5 0 in True + False - + True + False vertical @@ -9114,9 +10054,10 @@ False 5 True + 0.5 True - - + + False @@ -9132,9 +10073,10 @@ False 5 True + 0.5 True - - + + False @@ -9150,9 +10092,10 @@ False 5 True + 0.5 True - - + + False @@ -9168,9 +10111,10 @@ False 5 True + 0.5 True - - + + False @@ -9186,9 +10130,10 @@ False 5 True + 0.5 True - - + + False @@ -9204,9 +10149,10 @@ False 5 True + 0.5 True - - + + False @@ -9222,9 +10168,10 @@ False 5 True + 0.5 True - - + + False @@ -9239,6 +10186,7 @@ True + False <b> Exportation de </b> True @@ -9246,6 +10194,7 @@ False + True 0 @@ -9257,6 +10206,7 @@ True + False Tags @@ -9272,6 +10222,7 @@ True + False Preferences @@ -9280,18 +10231,20 @@ - + True + False vertical True True 5 - + - + True + False 5 vertical @@ -9299,34 +10252,38 @@ True True 5 - automatic - automatic in - + + True + True 0 - + True + False vertical - + True + False True + False 5 0 in True + False SCAN @@ -9334,7 +10291,7 @@ True False True - + @@ -9342,28 +10299,34 @@ True + False <b> Installation </b> True + True + True 0 True + False 5 0 in True + False True - + False + @@ -9371,12 +10334,15 @@ True - <b> Votre systeme utilise ... </b> + False + <b> Your system use ... </b> True + True + True 1 @@ -9390,25 +10356,31 @@ True + False 5 0 in True + False - + True + False True + False -<b><i>Pour installer les programmes externes requis, -veuillez utiliser l'installateur de votre distribution Gnu/Linux.</i></b> +<b><i>To install the required external programs +Please use the installer to your distribution Gnu / Linux.</i></b> True + True + True 0 @@ -9420,12 +10392,13 @@ False Le programme XCFA_INSTALL_ALL ecrit en Perl vous sera utile en ligne de commande pour une installation des programmes complementaire. 5 - + True + False gtk-network - 5 + 5 @@ -9442,12 +10415,15 @@ True + False <b> Informations </b> True + False + True 1 @@ -9463,35 +10439,43 @@ True - Application externes + False + External application False - + True + False 5 vertical 10 True + False 0 in True + False 5 - + True + False True + False + False + True 0 @@ -9499,10 +10483,12 @@ True True - - + + + False + True 1 @@ -9510,21 +10496,27 @@ 100 True + False 0.10000000149011612 True right + False + True 2 True + False <i>parametres:</i> True + False + True 3 @@ -9536,10 +10528,12 @@ konqueror : newTab iceweasel : -new-window -new-tab - - + + + False + True 4 @@ -9550,6 +10544,7 @@ True + False <b>Navigateur</b> True @@ -9565,20 +10560,26 @@ True + False 0 in True + False 4 - + True + False True + False + False + True 0 @@ -9586,10 +10587,12 @@ True True - - + + + False + True 1 @@ -9597,21 +10600,27 @@ 100 True + False 0.10000000894069672 True right + False + True 2 True + False <i>parametres:</i> True + False + True 3 @@ -9619,10 +10628,12 @@ True True - - + + + False + True 4 @@ -9633,6 +10644,7 @@ True + False <b>Lecteurs audio</b> True @@ -9653,7 +10665,8 @@ True - Navigateurs / Lecteurs audio + False +   Browsers / Audio Players 1 @@ -9662,6 +10675,8 @@ + True + True 0 @@ -9673,6 +10688,7 @@ True + False Applications externes @@ -9682,21 +10698,28 @@ + True + True 5 1 - + True + False + True True + False <b>label472</b> True - + + False + True 0 @@ -9710,4873 +10733,4 @@ - - 411 - 5 - Scan en cours ... - False - True - center-on-parent - dialog - False - - - - - True - vertical - 2 - - - True - 5 - vertical - - - True - - - True - gtk-execute - 6 - - - False - False - 0 - - - - - True - <b>Scan du support en cours ...</b> - True - center - - - - 5 - 1 - - - - - 0 - - - - - True - - - - False - 5 - 1 - - - - - True - True - - - 150 - True - True - automatic - automatic - - - - - - - - - True - Detail extraction mode expert - - - - - False - False - 2 - - - - - 1 - - - - - True - end - - - gtk-cancel - True - True - True - True - - - - False - False - 0 - - - - - False - end - 0 - - - - - - button_cancel_windscan - - - - Modification des champs - False - True - center-on-parent - - - - - True - 2 - vertical - - - True - 5 - - - True - gtk-dialog-info - 5 - - - 0 - - - - - True - -<b>Modification des champs</b> - - True - - - 1 - - - - - False - False - 0 - - - - - True - vertical - - - True - True - 5 - left - - - - True - 5 - - - 120 - True - 0 - in - - - True - - - True - 5 - vertical - - - Titre - True - True - False - True - True - - - - False - False - 0 - - - - - Play - True - True - False - True - True - - - - False - False - 1 - - - - - Temps - True - True - False - True - True - - - - False - False - 2 - - - - - Format - True - True - False - True - True - - - - False - False - 3 - - - - - Choix - True - True - False - True - True - - - - False - False - 4 - - - - - Normalise - True - True - False - True - True - - - - False - False - 5 - - - - - Nom - True - True - False - True - True - - - - False - False - 6 - - - - - - - - - True - <b> Visibilite </b> - True - - - - - 0 - - - - - 143 - True - 0 - in - - - True - - - True - 5 - vertical - - - Nom a gauche - True - True - False - True - True - - - - False - False - 0 - - - - - Nom au centre - True - True - False - True - True - True - radiobutton_nameleft_dvd - - - - False - False - 1 - - - - - Nom a droite - True - True - False - True - True - radiobutton_nameleft_dvd - - - - False - False - 2 - - - - - - - - - True - True - - - - - 1 - - - - - - - True - DVD - - - False - - - - - True - 5 - - - 140 - True - 0 - in - - - True - - - True - 5 - vertical - - - Play - True - True - False - True - True - - - - False - False - 0 - - - - - Wav - True - True - False - True - True - - - - False - False - 1 - - - - - Flac - True - True - False - True - True - - - - False - False - 2 - - - - - Ape - True - True - False - True - True - - - - False - False - 3 - - - - - Wavpack - True - True - False - True - True - - - - False - False - 4 - - - - - Ogg - True - True - False - True - True - - - - False - False - 5 - - - - - M4a - True - True - False - True - True - - - - False - False - 6 - - - - - Aac - True - True - False - True - True - - - - False - False - 7 - - - - - Musepack - True - True - False - True - True - - - - False - False - 8 - - - - - Mp3 - True - True - False - True - True - - - - False - False - 9 - - - - - Num - True - True - False - True - True - - - - False - False - 10 - - - - - Time - True - True - False - True - True - - - - False - False - 11 - - - - - Normalise - True - True - False - True - True - - - - False - False - 12 - - - - - Nom - True - True - False - True - True - - - - False - False - 13 - - - - - - - - - True - <b> Visibilite </b> - True - - - - - 0 - - - - - 140 - True - 0 - in - - - True - - - True - 5 - vertical - - - Nom a gauche - True - True - False - True - True - - - - False - False - 0 - - - - - Nom au centre - True - True - False - True - True - True - radiobutton_nameleft_cd - - - - False - False - 1 - - - - - Nom a droite - True - True - False - True - True - radiobutton_nameleft_cd - - - - False - False - 2 - - - - - - - - - True - True - - - - - 1 - - - - - 1 - - - - - True - CD - - - 1 - False - - - - - True - 5 - - - 120 - True - 0 - in - - - True - - - True - 5 - vertical - - - Play - True - True - False - True - True - - - - False - False - 0 - - - - - Trash - True - True - False - True - True - - - - False - False - 1 - - - - - Type - True - True - False - True - True - - - - False - False - 2 - - - - - Wav - True - True - False - True - True - - - - False - False - 3 - - - - - Flac - True - True - False - True - True - - - - False - False - 4 - - - - - Ape - True - True - False - True - True - - - - False - False - 5 - - - - - Wavpack - True - True - False - True - True - - - - False - False - 6 - - - - - Ogg - True - True - False - True - True - - - - False - False - 7 - - - - - M4a - True - True - False - True - True - - - - False - False - 8 - - - - - Aac - True - True - False - True - True - - - - False - False - 9 - - - - - Musepack - True - True - False - True - True - - - - False - False - 10 - - - - - Mp3 - True - True - False - True - True - - - - False - False - 11 - - - - - Time - True - True - False - True - True - - - - False - False - 12 - - - - - Normalise - True - True - False - True - True - - - - False - False - 13 - - - - - Replaygain - True - True - False - True - True - - - - False - False - 14 - - - - - Nom - True - True - False - True - True - - - - False - False - 15 - - - - - - - - - True - <b> Visibilite </b> - True - - - - - 0 - - - - - 130 - True - 0 - in - - - True - - - True - 5 - vertical - - - Nom a gauche - True - True - False - True - True - - - - False - False - 0 - - - - - Nom au centre - True - True - False - True - True - True - radiobutton_nameleft_allfile - - - - False - False - 1 - - - - - Nom a droite - True - True - False - True - True - radiobutton_nameleft_allfile - - - - False - False - 2 - - - - - - - - - True - True - - - - - 1 - - - - - 2 - - - - - True - CONVERSIONS - - - 2 - False - - - - - True - 5 - - - 120 - True - 0 - in - - - True - - - True - 5 - vertical - - - Hertz - True - True - False - True - True - - - - False - False - 0 - - - - - New Hertz - True - True - False - True - True - - - - False - False - 1 - - - - - Voie - True - True - False - True - True - - - - False - False - 2 - - - - - New Voie - True - True - False - True - True - - - - False - False - 3 - - - - - Bits - True - True - False - True - True - - - - False - False - 4 - - - - - New Bits - True - True - False - True - True - - - - False - False - 5 - - - - - Nom - True - True - False - True - True - - - - False - False - 6 - - - - - - - - - True - <b> Visibilite </b> - True - - - - - 0 - - - - - 130 - True - 0 - in - - - True - - - True - 5 - vertical - - - Nom a gauche - True - True - False - True - True - - - - False - False - 0 - - - - - Nom au centre - True - True - False - True - True - True - radiobutton_nameleft_wav - - - - False - False - 1 - - - - - Nom a droite - True - True - False - True - True - radiobutton_nameleft_wav - - - - False - False - 2 - - - - - - - - - True - True - - - - - 1 - - - - - 3 - - - - - True - WAV - - - 3 - False - - - - - True - 5 - - - 120 - True - 0 - in - - - True - - - True - 5 - vertical - - - Type - True - True - False - True - True - - - - False - False - 0 - - - - - Bitrate - True - True - False - True - True - - - - False - False - 1 - - - - - New Bitrate - True - True - False - True - True - - - - False - False - 2 - - - - - Size - True - True - False - True - True - - - - False - False - 3 - - - - - Time - True - True - False - True - True - - - - False - False - 4 - - - - - Nom - True - True - False - True - True - - - - False - False - 5 - - - - - - - - - True - <b> Visibilite </b> - True - - - - - 0 - - - - - 130 - True - 0 - in - - - True - 1 - - - True - 5 - vertical - - - Nom a gauche - True - True - False - True - True - - - - False - False - 0 - - - - - Nom au centre - True - True - False - True - True - True - radiobutton_nameleft_mp3ogg - - - - False - False - 1 - - - - - Nom a droite - True - True - False - True - True - radiobutton_nameleft_mp3ogg - - - - False - False - 2 - - - - - - - - - True - True - - - - - 1 - - - - - 4 - - - - - True - MP3-OGG - - - 4 - False - - - - - True - 5 - - - 120 - True - 0 - in - - - True - - - True - 5 - vertical - - - Type - True - True - False - True - True - - - - False - False - 0 - - - - - Time - True - True - False - True - True - - - - False - False - 1 - - - - - Nom - True - True - False - True - True - - - - False - False - 2 - - - - - - - - - - - - True - <b> Visibilite </b> - True - - - - - 0 - - - - - 130 - True - 0 - in - - - True - 1 - - - True - 5 - vertical - - - Nom a gauche - True - True - False - True - True - - - - False - False - 0 - - - - - Nom au centre - True - True - False - True - True - True - radiobutton_nameleft_tags - - - - False - False - 1 - - - - - Nom a droite - True - True - False - True - True - radiobutton_nameleft_tags - - - - False - False - 2 - - - - - - - - - True - True - - - - - 1 - - - - - 5 - - - - - True - TAGS - - - 5 - False - - - - - 0 - - - - - True - - - True - True - False - 5 - - - - True - 0 - 0 - - - True - 2 - - - True - gtk-redo - - - False - False - 0 - - - - - True - Selection globale - True - - - False - False - 1 - - - - - - - - - 0 - - - - - True - True - False - 5 - - - - True - 0 - 0 - - - True - 2 - - - True - gtk-clear - - - False - False - 0 - - - - - True - Deselection globale - True - - - False - False - 1 - - - - - - - - - 1 - - - - - False - False - 1 - - - - - True - True - False - 5 - - - - True - 0 - 0 - - - True - 2 - - - True - gtk-quit - - - False - False - 0 - - - - - True - Retour - True - - - False - False - 1 - - - - - - - - - False - False - 2 - - - - - 1 - - - - - - - 464 - False - center-on-parent - - - - - True - vertical - - - True - 5 - - - gtk-quit - True - True - True - True - - - - False - False - 0 - - - - - gtk-media-play - 110 - True - True - True - True - - - - False - False - 1 - - - - - gtk-media-pause - 110 - True - True - True - True - - - - False - False - 2 - - - - - True - - - - - - - 3 - - - - - False - False - 0 - - - - - - - About X Convert File Audio - False - True - center-on-parent - - - - - True - vertical - - - True - True - 5 - - - True - vertical - - - True - gtk-missing-image - - - - 0 - - - - - True - 0 - in - - - True - - - True - True - - - - - - - - True - True - - - - - 1 - - - - - True - - - True - 0 - in - - - True - - - True - True - - - - - - - - True - <b>Author</b> - True - - - - - 0 - - - - - True - 0 - in - - - True - - - True - 10 - gtk-missing-image - - - - - - - - True - <b>Licence</b> - True - - - - - False - 1 - - - - - 2 - - - - - - - True - Informations - - - False - - - - - True - True - automatic - automatic - - - True - queue - - - True - True - True - - - - - - - - 1 - - - - - True - Machine - - - 3 - False - - - - - True - True - automatic - automatic - - - True - - - True - vertical - - - True - True - True - - - - False - False - 0 - - - - - - - - True - 9 - 4 - - - True - 0 - @Shankarius -@Dzef - True - - - 2 - 3 - GTK_FILL - - - - - - True - 0 - -Stephane de la Linuxerie -@xens - True - - - 2 - 3 - 1 - 2 - GTK_FILL - - - - - - True - 0 - -@Bapoumba -@Shankarius -@Dzef -Guillaume -Gerry Butler - True - - - 2 - 3 - 2 - 3 - GTK_FILL - - - - - - True - 0 - -Karsten Mehrhoff - True - - - 2 - 3 - 3 - 4 - GTK_FILL - - - - - - True - 0 - <b>Ingenieurs du son</b> - - True - True - - - 1 - 2 - GTK_FILL - - - - - - True - 0 - -<b>Graphisme</b> - - True - True - - - 1 - 2 - 1 - 2 - GTK_FILL - - - - - - True - 0 - <b>Traduction Anglaise</b> - - - - True - True - - - 1 - 2 - 2 - 3 - GTK_FILL - - - - - - True - 0 - -<b>Traduction Allemande</b> - True - True - - - 1 - 2 - 3 - 4 - GTK_FILL - - - - - - True - 0 - - - 1 - 2 - GTK_FILL - - - - - - True - 0 - - - 2 - 3 - GTK_FILL - - - - - - True - 0 - - - 3 - 4 - GTK_FILL - - - - - - True - 0 - - - 4 - 5 - GTK_FILL - - - - - - True - 0 - - - 5 - 6 - GTK_FILL - - - - - - True - 0 - - - 6 - 7 - GTK_FILL - - - - - - True - 0 - - - - - - - - True - 0 - - - 3 - 4 - - - - - - True - 0 - - - 3 - 4 - 1 - 2 - GTK_FILL - - - - - - True - 0 - - - 3 - 4 - 2 - 3 - GTK_FILL - - - - - - True - 0 - - - 3 - 4 - 3 - 4 - GTK_FILL - - - - - - True - 0 - - - 3 - 4 - 4 - 5 - GTK_FILL - - - - - - True - 0 - - - 3 - 4 - 5 - 6 - GTK_FILL - - - - - - True - 0 - - - 3 - 4 - 6 - 7 - GTK_FILL - - - - - - True - 0 - - - 7 - 8 - GTK_FILL - - - - - - True - 0 - - - 3 - 4 - 7 - 8 - GTK_FILL - - - - - - True - 0 - -<b>Codeur Xcfa</b> - True - True - - - 1 - 2 - 7 - 8 - GTK_FILL - - - - - - True - 0 - -@b52 alias @xcfaudio - True - - - 2 - 3 - 7 - 8 - GTK_FILL - - - - - - True - 0 - -<b>ElementSpeak pour Xcfa</b> - True - True - - - 1 - 2 - 6 - 7 - GTK_FILL - - - - - - True - 0 - -@Shankarius - True - - - 2 - 3 - 6 - 7 - GTK_FILL - - - - - - True - 0 - -<b>Codeur pages Web</b> - True - True - - - 1 - 2 - 5 - 6 - GTK_FILL - - - - - - True - 0 - -@zarer - True - - - 2 - 3 - 5 - 6 - GTK_FILL - - - - - - True - 0 - -<b>Traduction Italienne</b> - True - True - - - 1 - 2 - 4 - 5 - GTK_FILL - - - - - - True - 0 - -Guillaume -Vincenzo Romano - True - - - 2 - 3 - 4 - 5 - GTK_FILL - - - - - - - - - - - - - - - - - - 2 - - - - - True - - - True - 0 - - - 0 - - - - - True - 0 - - -<b>Pages a visiter</b> - - True - - - False - False - 1 - - - - - True - 0 - - - 2 - - - - - 3 - - - - - True - 12 - 3 - - - True - 0 - - - 1 - 2 - GTK_FILL - - - - - - True - 0 - - - 2 - 3 - GTK_FILL - - - - - - True - 0 - - - 3 - 4 - GTK_FILL - - - - - - True - 0 - - - 4 - 5 - GTK_FILL - - - - - - True - 0 - - - 5 - 6 - GTK_FILL - - - - - - True - 0 - - - 6 - 7 - GTK_FILL - - - - - - True - 0 - - - 7 - 8 - GTK_FILL - - - - - - True - 0 - - - 8 - 9 - GTK_FILL - - - - - - True - 0 - - - 9 - 10 - GTK_FILL - - - - - - True - 0 - - - 10 - 11 - GTK_FILL - - - - - - True - 0 - - - 2 - 3 - 1 - 2 - GTK_FILL - - - - - - True - 0 - - - 2 - 3 - 2 - 3 - GTK_FILL - - - - - - True - 0 - - - 2 - 3 - 3 - 4 - GTK_FILL - - - - - - True - 0 - - - 2 - 3 - 4 - 5 - GTK_FILL - - - - - - True - 0 - - - 2 - 3 - 5 - 6 - GTK_FILL - - - - - - True - 0 - - - 2 - 3 - 6 - 7 - GTK_FILL - - - - - - True - 0 - - - 2 - 3 - 7 - 8 - GTK_FILL - - - - - - True - 0 - - - 2 - 3 - 8 - 9 - GTK_FILL - - - - - - True - 0 - - - 2 - 3 - 9 - 10 - GTK_FILL - - - - - - True - 0 - - - 2 - 3 - 10 - 11 - GTK_FILL - - - - - - True - True - False - 3 - - - - True - 0 - 0 - - - True - 2 - - - True - gtk-connect - - - False - False - 0 - - - - - True - Linux On The Root - True - - - False - False - 1 - - - - - - - - - 1 - 2 - 1 - 2 - GTK_FILL - - - - - - True - True - False - 3 - - - - True - 0 - 0 - - - True - 2 - - - True - gtk-connect - - - False - False - 0 - - - - - True - Frugalware - True - - - False - False - 1 - - - - - - - - - 1 - 2 - 2 - 3 - GTK_FILL - - - - - - True - True - False - 3 - - - - True - 0 - 0 - - - True - 2 - - - True - gtk-connect - - - False - False - 0 - - - - - True - Road2Mayotte - True - - - False - False - 1 - - - - - - - - - 1 - 2 - 3 - 4 - GTK_FILL - - - - - - True - True - False - 3 - - - - True - 0 - 0 - - - True - 2 - - - True - gtk-connect - - - False - False - 0 - - - - - True - La Linuxerie - True - - - False - False - 1 - - - - - - - - - 1 - 2 - 4 - 5 - GTK_FILL - - - - - - True - True - False - 3 - - - - True - 0 - 0 - - - True - 2 - - - True - gtk-connect - - - False - False - 0 - - - - - True - Audioptimisation by Dzef - True - - - False - False - 1 - - - - - - - - - 1 - 2 - 5 - 6 - GTK_FILL - - - - - - True - True - False - 3 - - - - True - 0 - 0 - - - True - 2 - - - True - gtk-connect - - - False - False - 0 - - - - - True - Tuxfamily - True - - - False - False - 1 - - - - - - - - - 1 - 2 - 6 - 7 - GTK_FILL - - - - - - True - True - False - 3 - - - - True - 0 - 0 - - - True - 2 - - - True - gtk-connect - - - False - False - 0 - - - - - True - Framasoft - True - - - False - False - 1 - - - - - - - - - 1 - 2 - 7 - 8 - GTK_FILL - - - - - - True - True - False - 3 - - - - True - 0 - 0 - - - True - 2 - - - True - gtk-connect - - - False - False - 0 - - - - - True - Ekd (EnKoDeur-Mixeur) - True - - - False - False - 1 - - - - - - - - - 1 - 2 - 8 - 9 - GTK_FILL - - - - - - True - True - False - 3 - - - - True - 0 - 0 - - - True - 2 - - - True - gtk-connect - - - False - False - 0 - - - - - True - Bishop's page - True - - - False - False - 1 - - - - - - - - - 1 - 2 - 9 - 10 - GTK_FILL - - - - - - True - True - False - 3 - - - - True - 0 - 0 - - - True - 2 - - - True - gtk-connect - - - False - False - 0 - - - - - True - Je suis libre - True - - - False - False - 1 - - - - - - - - - 1 - 2 - 10 - 11 - GTK_FILL - - - - - - True - 0 - - - - - - - - True - 0 - - - 2 - 3 - - - - - - True - True - False - 3 - - - - True - 0 - 0 - - - True - 2 - - - True - gtk-connect - - - False - False - 0 - - - - - True - Debian Multimedia - True - - - False - False - 1 - - - - - - - - - 1 - 2 - - - - - - True - 0 - - - 11 - 12 - GTK_FILL - - - - - - True - 0 - - - 2 - 3 - 11 - 12 - GTK_FILL - - - - - - True - True - True - 3 - - - - True - 0 - 0 - - - True - 2 - - - True - gtk-connect - - - False - False - 0 - - - - - True - Alessio Treglia - True - - - False - False - 1 - - - - - - - - - 1 - 2 - 11 - 12 - GTK_FILL - - - - - - False - False - 4 - - - - - True - - - True - 0 - - - 0 - - - - - True - -<b>Forum</b> - - True - - - False - False - 1 - - - - - True - 0 - - - 2 - - - - - 5 - - - - - True - 3 - 3 - - - True - True - False - 3 - - - - True - 0 - 0 - - - True - 2 - - - True - gtk-connect - - - False - False - 0 - - - - - True - XCFA Vorstellung - True - - - False - False - 1 - - - - - - - - - 1 - 2 - 1 - 2 - GTK_FILL - - - - - - True - True - False - 3 - - - - True - 0 - 0 - - - True - 2 - - - True - gtk-connect - - - False - False - 0 - - - - - True - XCFA LinuxForen.de - True - - - False - False - 1 - - - - - - - - - 1 - 2 - 2 - 3 - GTK_FILL - - - - - - True - 0 - - - 2 - 3 - - - - - - True - 0 - - - 1 - 2 - - - - - - True - 0 - - - GTK_FILL - - - - - - True - 0 - - - 2 - 3 - 1 - 2 - GTK_FILL - - - - - - True - 0 - - - 2 - 3 - 2 - 3 - GTK_FILL - - - - - - True - 0 - - - 2 - 3 - - - - - - True - True - False - 3 - - - - True - 0 - 0 - - - True - 2 - - - True - gtk-connect - - - False - False - 0 - - - - - True - Forum Xcfa - True - - - False - False - 1 - - - - - - - - - 1 - 2 - - - - - - 6 - - - - - True - - - True - 0 - - - 0 - - - - - True - -<b>Documentation</b> - - True - - - False - False - 1 - - - - - True - 0 - - - 2 - - - - - 7 - - - - - True - 6 - 3 - - - True - 0 - - - 1 - 2 - GTK_FILL - - - - - - True - 0 - - - 2 - 3 - GTK_FILL - - - - - - True - 0 - - - 3 - 4 - GTK_FILL - - - - - - True - 0 - - - 4 - 5 - GTK_FILL - - - - - - True - 0 - - - 5 - 6 - GTK_FILL - - - - - - True - 0 - - - 2 - 3 - 1 - 2 - GTK_FILL - - - - - - True - 0 - - - 2 - 3 - 2 - 3 - GTK_FILL - - - - - - True - 0 - - - 2 - 3 - 3 - 4 - GTK_FILL - - - - - - True - 0 - - - 2 - 3 - 4 - 5 - GTK_FILL - - - - - - True - 0 - - - 2 - 3 - 5 - 6 - GTK_FILL - - - - - - True - 0 - - - - - - - - True - 0 - - - 2 - 3 - - - - - - True - True - False - 3 - - - - True - 0 - 0 - - - True - 2 - - - True - gtk-connect - - - False - False - 0 - - - - - True - Wiki Xcfa par Shankarius - True - - - False - False - 1 - - - - - - - - - 1 - 2 - GTK_FILL - - - - - - True - True - False - 3 - - - - True - 0 - 0 - - - True - 2 - - - True - gtk-connect - - - False - False - 0 - - - - - True - Doc Xcfa par Patachon - True - - - False - False - 1 - - - - - - - - - 1 - 2 - 1 - 2 - GTK_FILL - - - - - - True - True - False - 2 - - - - True - 0 - 0 - - - True - 2 - - - True - gtk-connect - - - False - False - 0 - - - - - True - Ogg Vorbis explique par Shankarius - True - - - False - False - 1 - - - - - - - - - 1 - 2 - 2 - 3 - GTK_FILL - - - - - - True - True - False - 3 - - - - True - 0 - 0 - - - True - 2 - - - True - gtk-connect - - - False - False - 0 - - - - - True - La normalisation expliquee par Dzef - True - - - False - False - 1 - - - - - - - - - 1 - 2 - 3 - 4 - GTK_FILL - - - - - - True - True - False - 3 - - - - True - 0 - 0 - - - True - 2 - - - True - gtk-connect - - - False - False - 0 - - - - - True - Xcfa sur Linux On The Root - True - - - False - False - 1 - - - - - - - - - 1 - 2 - 4 - 5 - GTK_FILL - - - - - - - - - 8 - - - - - - - - - 2 - - - - - True - Contributions - - - 2 - False - - - - - True - True - automatic - automatic - in - - - True - True - - - - - - 3 - - - - - True - License - - - 3 - False - - - - - 0 - - - - - True - 5 - - - OK - True - True - True - True - False - half - True - - - - 0 - - - - - True - True - False - none - False - - - - True - 0 - 0 - - - True - 2 - - - True - gtk-connect - - - False - False - 0 - - - - - True - Xcfa sur le web - True - - - - False - False - 1 - - - - - - - - - False - False - 1 - - - - - False - False - 1 - - - - - - - False - True - center-always - - - - - True - 5 - vertical - - - True - - - True - vertical - - - True - 11 - 10 - gtk-dialog-warning - 6 - - - False - False - 0 - - - - - - - - False - 0 - - - - - True - vertical - - - True - True - center - - - 0 - - - - - True - True - - - 1 - - - - - 1 - - - - - 0 - - - - - True - True - - - gtk-quit - True - True - True - True - - - - False - False - 0 - - - - - False - False - 1 - - - - - - - 100 - 100 - 1 - 1 - - - 100 - 100 - 1 - 1 - - - 1 - 9999 - 1 - 1 - - - 2 - 999 - 1 - 1 - - - 1 - 1 - 99999 - 1 - 1 - - - -10 - -24 - -6 - 1 - 1 - - - 1 - 999 - 1 - 1 - - - 1962 - 9999 - 1 - 1 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff -Nru xcfa-4.3.8/glade/xcfa_win_about.glade xcfa-5.0.1/glade/xcfa_win_about.glade --- xcfa-4.3.8/glade/xcfa_win_about.glade 1970-01-01 00:00:00.000000000 +0000 +++ xcfa-5.0.1/glade/xcfa_win_about.glade 2015-02-27 16:43:20.000000000 +0000 @@ -0,0 +1,2564 @@ + + + + + + False + About X Convert File Audio + False + True + center-on-parent + + + + + True + False + vertical + + + True + True + 5 + + + True + False + vertical + + + True + False + gtk-missing-image + + + + False + True + 0 + + + + + True + False + 0 + in + + + True + False + + + True + False + True + + + + + + + + True + False + True + + + + + False + True + 1 + + + + + True + False + + + True + False + 0 + in + + + True + False + + + True + False + True + + + + + + + + True + False + <b>Author</b> + True + + + + + True + True + 0 + + + + + True + False + 0 + in + + + True + False + + + True + False + 10 + gtk-missing-image + + + + + + + + True + False + <b>Licence</b> + True + + + + + False + True + 1 + + + + + False + True + 2 + + + + + + + True + False + Informations + + + False + + + + + True + True + + + True + False + queue + + + True + False + True + True + + + + + + + + 1 + + + + + True + False + Machine + + + 3 + False + + + + + True + True + + + True + False + + + True + False + vertical + + + True + False + True + True + + + + False + False + 0 + + + + + + + + True + False + 9 + 4 + + + + + + + + + + + + + + + True + False + 0 + @Shankarius +@Dzef + True + + + 2 + 3 + GTK_FILL + + + + + + True + False + 0 + +Stephane de la Linuxerie +@xens + True + + + 2 + 3 + 1 + 2 + GTK_FILL + + + + + + True + False + 0 + +@Bapoumba +@Shankarius +@Dzef +Guillaume +Gerry Butler + True + + + 2 + 3 + 2 + 3 + GTK_FILL + + + + + + True + False + 0 + +Karsten Mehrhoff + True + + + 2 + 3 + 3 + 4 + GTK_FILL + + + + + + True + False + 0 + <b>Ingenieurs du son</b> + + True + True + + + 1 + 2 + GTK_FILL + + + + + + True + False + 0 + +<b>Graphisme</b> + + True + True + + + 1 + 2 + 1 + 2 + GTK_FILL + + + + + + True + False + 0 + <b>Traduction Anglaise</b> + + + + True + True + + + 1 + 2 + 2 + 3 + GTK_FILL + + + + + + True + False + 0 + +<b>Traduction Allemande</b> + True + True + + + 1 + 2 + 3 + 4 + GTK_FILL + + + + + + True + False + 0 + + + 1 + 2 + GTK_FILL + + + + + + True + False + 0 + + + 2 + 3 + GTK_FILL + + + + + + True + False + 0 + + + 3 + 4 + GTK_FILL + + + + + + True + False + 0 + + + 4 + 5 + GTK_FILL + + + + + + True + False + 0 + + + 5 + 6 + GTK_FILL + + + + + + True + False + 0 + + + 6 + 7 + GTK_FILL + + + + + + True + False + 0 + + + + + + + + True + False + 0 + + + 3 + 4 + + + + + + True + False + 0 + + + 3 + 4 + 1 + 2 + GTK_FILL + + + + + + True + False + 0 + + + 3 + 4 + 2 + 3 + GTK_FILL + + + + + + True + False + 0 + + + 3 + 4 + 3 + 4 + GTK_FILL + + + + + + True + False + 0 + + + 3 + 4 + 4 + 5 + GTK_FILL + + + + + + True + False + 0 + + + 3 + 4 + 5 + 6 + GTK_FILL + + + + + + True + False + 0 + + + 3 + 4 + 6 + 7 + GTK_FILL + + + + + + True + False + 0 + + + 7 + 8 + GTK_FILL + + + + + + True + False + 0 + + + 3 + 4 + 7 + 8 + GTK_FILL + + + + + + True + False + 0 + +<b>Codeur Xcfa</b> + True + True + + + 1 + 2 + 7 + 8 + GTK_FILL + + + + + + True + False + 0 + +@b52 alias @xcfaudio + True + + + 2 + 3 + 7 + 8 + GTK_FILL + + + + + + True + False + 0 + +<b>ElementSpeak pour Xcfa</b> + True + True + + + 1 + 2 + 6 + 7 + GTK_FILL + + + + + + True + False + 0 + +@Shankarius + True + + + 2 + 3 + 6 + 7 + GTK_FILL + + + + + + True + False + 0 + +<b>Codeur pages Web</b> + True + True + + + 1 + 2 + 5 + 6 + GTK_FILL + + + + + + True + False + 0 + +@zarer + True + + + 2 + 3 + 5 + 6 + GTK_FILL + + + + + + True + False + 0 + +<b>Traduction Italienne</b> + True + True + + + 1 + 2 + 4 + 5 + GTK_FILL + + + + + + True + False + 0 + +Guillaume +Vincenzo Romano + True + + + 2 + 3 + 4 + 5 + GTK_FILL + + + + + + False + True + 2 + + + + + True + False + + + True + False + 0 + + + False + True + 0 + + + + + True + False + 0 + + +<b>Pages a visiter</b> + + True + + + False + False + 1 + + + + + True + False + 0 + + + False + True + 2 + + + + + False + True + 3 + + + + + True + False + 10 + 3 + + + True + False + 0 + + + 1 + 2 + GTK_FILL + + + + + + True + False + 0 + + + 2 + 3 + GTK_FILL + + + + + + True + False + 0 + + + 3 + 4 + GTK_FILL + + + + + + True + False + 0 + + + 4 + 5 + GTK_FILL + + + + + + True + False + 0 + + + 5 + 6 + GTK_FILL + + + + + + True + False + 0 + + + 6 + 7 + GTK_FILL + + + + + + True + False + 0 + + + 7 + 8 + GTK_FILL + + + + + + True + False + 0 + + + 8 + 9 + GTK_FILL + + + + + + True + False + 0 + + + 9 + 10 + GTK_FILL + + + + + + True + False + 0 + + + 2 + 3 + 1 + 2 + GTK_FILL + + + + + + True + False + 0 + + + 2 + 3 + 2 + 3 + GTK_FILL + + + + + + True + False + 0 + + + 2 + 3 + 3 + 4 + GTK_FILL + + + + + + True + False + 0 + + + 2 + 3 + 4 + 5 + GTK_FILL + + + + + + True + False + 0 + + + 2 + 3 + 5 + 6 + GTK_FILL + + + + + + True + False + 0 + + + 2 + 3 + 6 + 7 + GTK_FILL + + + + + + True + False + 0 + + + 2 + 3 + 7 + 8 + GTK_FILL + + + + + + True + False + 0 + + + 2 + 3 + 8 + 9 + GTK_FILL + + + + + + True + False + 0 + + + 2 + 3 + 9 + 10 + GTK_FILL + + + + + + True + True + False + 3 + + + + True + False + 0 + 0 + + + True + False + 2 + + + True + False + gtk-connect + + + False + False + 0 + + + + + True + False + Linux On The Root + True + + + False + False + 1 + + + + + + + + + 1 + 2 + 1 + 2 + GTK_FILL + + + + + + True + True + False + 3 + + + + True + False + 0 + 0 + + + True + False + 2 + + + True + False + gtk-connect + + + False + False + 0 + + + + + True + False + Frugalware + True + + + False + False + 1 + + + + + + + + + 1 + 2 + 2 + 3 + GTK_FILL + + + + + + True + True + False + 3 + + + + True + False + 0 + 0 + + + True + False + 2 + + + True + False + gtk-connect + + + False + False + 0 + + + + + True + False + Road2Mayotte + True + + + False + False + 1 + + + + + + + + + 1 + 2 + 3 + 4 + GTK_FILL + + + + + + True + True + False + 3 + + + + True + False + 0 + 0 + + + True + False + 2 + + + True + False + gtk-connect + + + False + False + 0 + + + + + True + False + La Linuxerie + True + + + False + False + 1 + + + + + + + + + 1 + 2 + 4 + 5 + GTK_FILL + + + + + + True + True + False + 3 + + + + True + False + 0 + 0 + + + True + False + 2 + + + True + False + gtk-connect + + + False + False + 0 + + + + + True + False + Tuxfamily + True + + + False + False + 1 + + + + + + + + + 1 + 2 + 6 + 7 + GTK_FILL + + + + + + True + True + False + 3 + + + + True + False + 0 + 0 + + + True + False + 2 + + + True + False + gtk-connect + + + False + False + 0 + + + + + True + False + Framasoft + True + + + False + False + 1 + + + + + + + + + 1 + 2 + 7 + 8 + GTK_FILL + + + + + + True + True + False + 3 + + + + True + False + 0 + 0 + + + True + False + 2 + + + True + False + gtk-connect + + + False + False + 0 + + + + + True + False + Ekd (EnKoDeur-Mixeur) + True + + + False + False + 1 + + + + + + + + + 1 + 2 + 8 + 9 + GTK_FILL + + + + + + True + False + 0 + + + + + + + + True + False + 0 + + + 2 + 3 + + + + + + True + True + False + 3 + + + + True + False + 0 + 0 + + + True + False + 2 + + + True + False + gtk-connect + + + False + False + 0 + + + + + True + False + Debian Multimedia + True + + + False + False + 1 + + + + + + + + + 1 + 2 + + + + + + True + True + False + 3 + + + + True + False + 0 + 0 + + + True + False + 2 + + + True + False + gtk-connect + + + False + False + 0 + + + + + True + False + Je suis libre + True + + + False + False + 1 + + + + + + + + + 1 + 2 + 9 + 10 + GTK_FILL + + + + + + True + True + True + 3 + + + + True + False + 0 + 0 + + + True + False + 2 + + + True + False + gtk-connect + + + False + False + 0 + + + + + True + False + Alessio Treglia + True + + + False + False + 1 + + + + + + + + + 1 + 2 + 5 + 6 + GTK_FILL + + + + + + False + False + 4 + + + + + True + False + + + True + False + 0 + + + False + True + 0 + + + + + True + False + +<b>Forum</b> + + True + + + False + False + 1 + + + + + True + False + 0 + + + False + True + 2 + + + + + False + True + 5 + + + + + True + False + 2 + 3 + + + True + False + 0 + + + 1 + 2 + + + + + + True + False + 0 + + + GTK_FILL + + + + + + True + False + 0 + + + 2 + 3 + 1 + 2 + GTK_FILL + + + + + + True + False + 0 + + + 2 + 3 + + + + + + True + True + False + 3 + + + + True + False + 0 + 0 + + + True + False + 2 + + + True + False + gtk-connect + + + False + False + 0 + + + + + True + False + Forum Xcfa + True + + + False + False + 1 + + + + + + + + + 1 + 2 + + + + + + True + True + False + 3 + + + + True + False + 0 + 0 + + + True + False + 2 + + + True + False + gtk-connect + + + False + False + 0 + + + + + True + False + XCFA LinuxForen.de + True + + + False + False + 1 + + + + + + + + + 1 + 2 + 1 + 2 + GTK_FILL + + + + + + False + True + 6 + + + + + True + False + + + True + False + 0 + + + False + True + 0 + + + + + True + False + +<b>Documentation</b> + + True + + + False + False + 1 + + + + + True + False + 0 + + + False + True + 2 + + + + + False + True + 7 + + + + + True + False + 6 + 3 + + + + + + True + False + 0 + + + 1 + 2 + GTK_FILL + + + + + + True + False + 0 + + + 2 + 3 + GTK_FILL + + + + + + True + False + 0 + + + 3 + 4 + GTK_FILL + + + + + + True + False + 0 + + + 4 + 5 + GTK_FILL + + + + + + True + False + 0 + + + 5 + 6 + GTK_FILL + + + + + + True + False + 0 + + + 2 + 3 + 1 + 2 + GTK_FILL + + + + + + True + False + 0 + + + 2 + 3 + 2 + 3 + GTK_FILL + + + + + + True + False + 0 + + + 2 + 3 + 3 + 4 + GTK_FILL + + + + + + True + False + 0 + + + 2 + 3 + 4 + 5 + GTK_FILL + + + + + + True + False + 0 + + + 2 + 3 + 5 + 6 + GTK_FILL + + + + + + True + False + 0 + + + + + + + + True + False + 0 + + + 2 + 3 + + + + + + True + True + False + 3 + + + + True + False + 0 + 0 + + + True + False + 2 + + + True + False + gtk-connect + + + False + False + 0 + + + + + True + False + Wiki Xcfa par Shankarius + True + + + False + False + 1 + + + + + + + + + 1 + 2 + GTK_FILL + + + + + + True + True + False + 3 + + + + True + False + 0 + 0 + + + True + False + 2 + + + True + False + gtk-connect + + + False + False + 0 + + + + + True + False + Doc Xcfa par Patachon + True + + + False + False + 1 + + + + + + + + + 1 + 2 + 1 + 2 + GTK_FILL + + + + + + True + True + False + 2 + + + + True + False + 0 + 0 + + + True + False + 2 + + + True + False + gtk-connect + + + False + False + 0 + + + + + True + False + Ogg Vorbis explique par Shankarius + True + + + False + False + 1 + + + + + + + + + 1 + 2 + 2 + 3 + GTK_FILL + + + + + + True + True + False + 3 + + + + True + False + 0 + 0 + + + True + False + 2 + + + True + False + gtk-connect + + + False + False + 0 + + + + + True + False + La normalisation expliquee par Dzef + True + + + False + False + 1 + + + + + + + + + 1 + 2 + 3 + 4 + GTK_FILL + + + + + + True + True + False + 3 + + + + True + False + 0 + 0 + + + True + False + 2 + + + True + False + gtk-connect + + + False + False + 0 + + + + + True + False + Xcfa sur Linux On The Root + True + + + False + False + 1 + + + + + + + + + 1 + 2 + 4 + 5 + GTK_FILL + + + + + + False + True + 8 + + + + + + + + + 2 + + + + + True + False + Contributions + + + 2 + False + + + + + True + True + in + + + True + True + + + + + + 3 + + + + + True + False + License + + + 3 + False + + + + + False + True + 0 + + + + + True + False + 5 + + + OK + True + True + True + True + False + half + True + + + + True + True + 0 + + + + + True + True + False + none + False + + + + True + False + 0 + 0 + + + True + False + 2 + + + True + False + gtk-connect + + + False + False + 0 + + + + + True + False + Xcfa sur le web + True + + + + False + False + 1 + + + + + + + + + False + False + 1 + + + + + False + False + 1 + + + + + + diff -Nru xcfa-4.3.8/glade/xcfa_win_info.glade xcfa-5.0.1/glade/xcfa_win_info.glade --- xcfa-4.3.8/glade/xcfa_win_info.glade 1970-01-01 00:00:00.000000000 +0000 +++ xcfa-5.0.1/glade/xcfa_win_info.glade 2015-01-30 15:54:19.000000000 +0000 @@ -0,0 +1,126 @@ + + + + + + False + False + True + center-always + + + + + True + False + 5 + vertical + + + True + False + + + True + False + vertical + + + True + False + 11 + 10 + gtk-dialog-warning + 6 + + + False + False + 0 + + + + + + + + False + True + 0 + + + + + True + False + vertical + + + True + False + True + center + + + False + True + 0 + + + + + True + False + True + + + False + True + 1 + + + + + False + True + 1 + + + + + False + True + 0 + + + + + True + False + True + + + gtk-quit + True + True + True + True + + + + False + False + 0 + + + + + False + False + 1 + + + + + + diff -Nru xcfa-4.3.8/glade/xcfa_win_reader.glade xcfa-5.0.1/glade/xcfa_win_reader.glade --- xcfa-4.3.8/glade/xcfa_win_reader.glade 1970-01-01 00:00:00.000000000 +0000 +++ xcfa-5.0.1/glade/xcfa_win_reader.glade 2015-01-30 16:53:39.000000000 +0000 @@ -0,0 +1,94 @@ + + + + + + 464 + False + False + center-on-parent + + + + + True + False + vertical + + + True + False + 5 + + + gtk-quit + True + True + True + True + + + + False + False + 0 + + + + + gtk-media-play + 110 + True + True + True + True + + + + False + False + 1 + + + + + gtk-media-pause + 110 + True + True + True + True + + + + False + False + 2 + + + + + True + False + + + + + + + False + True + 3 + + + + + False + False + 0 + + + + + + diff -Nru xcfa-4.3.8/glade/xcfa_win_scan.glade xcfa-5.0.1/glade/xcfa_win_scan.glade --- xcfa-4.3.8/glade/xcfa_win_scan.glade 1970-01-01 00:00:00.000000000 +0000 +++ xcfa-5.0.1/glade/xcfa_win_scan.glade 2015-01-30 16:08:33.000000000 +0000 @@ -0,0 +1,151 @@ + + + + + + 411 + False + 5 + Scan en cours ... + False + True + center-on-parent + dialog + + + + + True + False + vertical + 2 + + + True + False + end + + + gtk-cancel + True + True + True + True + + + + False + False + 0 + + + + + False + False + end + 0 + + + + + True + False + 5 + vertical + + + True + False + + + True + False + gtk-execute + 6 + + + False + False + 0 + + + + + True + False + <b>Scan du support en cours ...</b> + True + center + + + + False + True + 5 + 1 + + + + + False + True + 0 + + + + + True + False + + + + False + True + 5 + 1 + + + + + True + True + + + 150 + True + True + + + + + + + + + True + False + Detail extraction mode expert + + + + + False + False + 2 + + + + + False + True + 1 + + + + + + button_cancel_windscan + + + diff -Nru xcfa-4.3.8/glade/xcfa_win_treeview.glade xcfa-5.0.1/glade/xcfa_win_treeview.glade --- xcfa-4.3.8/glade/xcfa_win_treeview.glade 1970-01-01 00:00:00.000000000 +0000 +++ xcfa-5.0.1/glade/xcfa_win_treeview.glade 2015-01-31 13:08:32.000000000 +0000 @@ -0,0 +1,2039 @@ + + + + + + False + Modification des champs + False + True + center-on-parent + + + + + True + False + 2 + vertical + + + True + False + 5 + + + True + False + gtk-dialog-info + 5 + + + False + True + 0 + + + + + True + False + +<b>Modification des champs</b> + + True + + + False + True + 1 + + + + + False + False + 0 + + + + + True + False + vertical + + + True + True + 5 + left + + + + True + False + 5 + + + 120 + True + False + 0 + in + + + True + False + + + True + False + 5 + vertical + + + Titre + True + True + False + True + 0.5 + True + + + + False + False + 0 + + + + + Play + True + True + False + True + 0.5 + True + + + + False + False + 1 + + + + + Temps + True + True + False + True + 0.5 + True + + + + False + False + 2 + + + + + Format + True + True + False + True + 0.5 + True + + + + False + False + 3 + + + + + Choix + True + True + False + True + 0.5 + True + + + + False + False + 4 + + + + + Normalise + True + True + False + True + 0.5 + True + + + + False + False + 5 + + + + + Nom + True + True + False + True + 0.5 + True + + + + False + False + 6 + + + + + + + + + True + False + <b> Visibilite </b> + True + + + + + False + True + 0 + + + + + 143 + True + False + 0 + in + + + True + False + + + True + False + 5 + vertical + + + Nom a gauche + True + True + False + True + 0.5 + True + + + + False + False + 0 + + + + + Nom au centre + True + True + False + True + 0.5 + True + True + radiobutton_nameleft_dvd + + + + False + False + 1 + + + + + Nom a droite + True + True + False + True + 0.5 + True + radiobutton_nameleft_dvd + + + + False + False + 2 + + + + + + + + + True + False + True + + + + + False + True + 1 + + + + + + + True + False + DVD + + + False + + + + + True + False + 5 + + + 140 + True + False + 0 + in + + + True + False + + + True + False + 5 + vertical + + + Play + True + True + False + True + 0.5 + True + + + + False + False + 0 + + + + + Wav + True + True + False + True + 0.5 + True + + + + False + False + 1 + + + + + Flac + True + True + False + True + 0.5 + True + + + + False + False + 2 + + + + + Ape + True + True + False + True + 0.5 + True + + + + False + False + 3 + + + + + Wavpack + True + True + False + True + 0.5 + True + + + + False + False + 4 + + + + + Ogg + True + True + False + True + 0.5 + True + + + + False + False + 5 + + + + + M4a + True + True + False + True + 0.5 + True + + + + False + False + 6 + + + + + Aac + True + True + False + True + 0.5 + True + + + + False + False + 7 + + + + + Musepack + True + True + False + True + 0.5 + True + + + + False + False + 8 + + + + + Mp3 + True + True + False + True + 0.5 + True + + + + False + False + 9 + + + + + Num + True + True + False + True + 0.5 + True + + + + False + False + 10 + + + + + Time + True + True + False + True + 0.5 + True + + + + False + False + 11 + + + + + Normalise + True + True + False + True + 0.5 + True + + + + False + False + 12 + + + + + Nom + True + True + False + True + 0.5 + True + + + + False + False + 13 + + + + + + + + + True + False + <b> Visibilite </b> + True + + + + + False + True + 0 + + + + + 140 + True + False + 0 + in + + + True + False + + + True + False + 5 + vertical + + + Nom a gauche + True + True + False + True + 0.5 + True + + + + False + False + 0 + + + + + Nom au centre + True + True + False + True + 0.5 + True + True + radiobutton_nameleft_cd + + + + False + False + 1 + + + + + Nom a droite + True + True + False + True + 0.5 + True + radiobutton_nameleft_cd + + + + False + False + 2 + + + + + + + + + True + False + True + + + + + False + True + 1 + + + + + 1 + + + + + True + False + CD + + + 1 + False + + + + + True + False + 5 + + + 120 + True + False + 0 + in + + + True + False + + + True + False + 5 + vertical + + + Play + True + True + False + True + 0.5 + True + + + + False + False + 0 + + + + + Trash + True + True + False + True + 0.5 + True + + + + False + False + 1 + + + + + Type + True + True + False + True + 0.5 + True + + + + False + False + 2 + + + + + Wav + True + True + False + True + 0.5 + True + + + + False + False + 3 + + + + + Flac + True + True + False + True + 0.5 + True + + + + False + False + 4 + + + + + Ape + True + True + False + True + 0.5 + True + + + + False + False + 5 + + + + + Wavpack + True + True + False + True + 0.5 + True + + + + False + False + 6 + + + + + Ogg + True + True + False + True + 0.5 + True + + + + False + False + 7 + + + + + M4a + True + True + False + True + 0.5 + True + + + + False + False + 8 + + + + + Aac + True + True + False + True + 0.5 + True + + + + False + False + 9 + + + + + Musepack + True + True + False + True + 0.5 + True + + + + False + False + 10 + + + + + Mp3 + True + True + False + True + 0.5 + True + + + + False + False + 11 + + + + + Time + True + True + False + True + 0.5 + True + + + + False + False + 12 + + + + + Normalise + True + True + False + True + 0.5 + True + + + + False + False + 13 + + + + + Replaygain + True + True + False + True + 0.5 + True + + + + False + False + 14 + + + + + Nom + True + True + False + True + 0.5 + True + + + + False + False + 15 + + + + + + + + + True + False + <b> Visibilite </b> + True + + + + + False + True + 0 + + + + + 130 + True + False + 0 + in + + + True + False + + + True + False + 5 + vertical + + + Nom a gauche + True + True + False + True + 0.5 + True + + + + False + False + 0 + + + + + Nom au centre + True + True + False + True + 0.5 + True + True + radiobutton_nameleft_allfile + + + + False + False + 1 + + + + + Nom a droite + True + True + False + True + 0.5 + True + radiobutton_nameleft_allfile + + + + False + False + 2 + + + + + + + + + True + False + True + + + + + False + True + 1 + + + + + 2 + + + + + True + False + CONVERSIONS + + + 2 + False + + + + + True + False + 5 + + + 120 + True + False + 0 + in + + + True + False + + + True + False + 5 + vertical + + + Hertz + True + True + False + True + 0.5 + True + + + + False + False + 0 + + + + + New Hertz + True + True + False + True + 0.5 + True + + + + False + False + 1 + + + + + Voie + True + True + False + True + 0.5 + True + + + + False + False + 2 + + + + + New Voie + True + True + False + True + 0.5 + True + + + + False + False + 3 + + + + + Bits + True + True + False + True + 0.5 + True + + + + False + False + 4 + + + + + New Bits + True + True + False + True + 0.5 + True + + + + False + False + 5 + + + + + Nom + True + True + False + True + 0.5 + True + + + + False + False + 6 + + + + + + + + + True + False + <b> Visibilite </b> + True + + + + + False + True + 0 + + + + + 130 + True + False + 0 + in + + + True + False + + + True + False + 5 + vertical + + + Nom a gauche + True + True + False + True + 0.5 + True + + + + False + False + 0 + + + + + Nom au centre + True + True + False + True + 0.5 + True + True + radiobutton_nameleft_wav + + + + False + False + 1 + + + + + Nom a droite + True + True + False + True + 0.5 + True + radiobutton_nameleft_wav + + + + False + False + 2 + + + + + + + + + True + False + True + + + + + False + True + 1 + + + + + 3 + + + + + True + False + WAV + + + 3 + False + + + + + True + False + 5 + + + 120 + True + False + 0 + in + + + True + False + + + True + False + 5 + vertical + + + Type + True + True + False + True + 0.5 + True + + + + False + False + 0 + + + + + Bitrate + True + True + False + True + 0.5 + True + + + + False + False + 1 + + + + + New Bitrate + True + True + False + True + 0.5 + True + + + + False + False + 2 + + + + + Size + True + True + False + True + 0.5 + True + + + + False + False + 3 + + + + + Time + True + True + False + True + 0.5 + True + + + + False + False + 4 + + + + + Nom + True + True + False + True + 0.5 + True + + + + False + False + 5 + + + + + + + + + True + False + <b> Visibilite </b> + True + + + + + False + True + 0 + + + + + 130 + True + False + 0 + in + + + True + False + 1 + + + True + False + 5 + vertical + + + Nom a gauche + True + True + False + True + 0.5 + True + + + + False + False + 0 + + + + + Nom au centre + True + True + False + True + 0.5 + True + True + radiobutton_nameleft_mp3ogg + + + + False + False + 1 + + + + + Nom a droite + True + True + False + True + 0.5 + True + radiobutton_nameleft_mp3ogg + + + + False + False + 2 + + + + + + + + + True + False + True + + + + + False + True + 1 + + + + + 4 + + + + + True + False + MP3-OGG + + + 4 + False + + + + + True + False + 5 + + + 120 + True + False + 0 + in + + + True + False + + + True + False + 5 + vertical + + + Type + True + True + False + True + 0.5 + True + + + + False + False + 0 + + + + + Time + True + True + False + True + 0.5 + True + + + + False + False + 1 + + + + + Nom + True + True + False + True + 0.5 + True + + + + False + False + 2 + + + + + + + + + + + + True + False + <b> Visibilite </b> + True + + + + + False + True + 0 + + + + + 130 + True + False + 0 + in + + + True + False + 1 + + + True + False + 5 + vertical + + + Nom a gauche + True + True + False + True + 0.5 + True + + + + False + False + 0 + + + + + Nom au centre + True + True + False + True + 0.5 + True + True + radiobutton_nameleft_tags + + + + False + False + 1 + + + + + Nom a droite + True + True + False + True + 0.5 + True + radiobutton_nameleft_tags + + + + False + False + 2 + + + + + + + + + True + False + True + + + + + False + True + 1 + + + + + 5 + + + + + True + False + TAGS + + + 5 + False + + + + + False + True + 0 + + + + + True + False + + + True + True + False + 5 + + + + True + False + 0 + 0 + + + True + False + 2 + + + True + False + gtk-redo + + + False + False + 0 + + + + + True + False + Selection globale + True + + + False + False + 1 + + + + + + + + + False + True + 0 + + + + + True + True + False + 5 + + + + True + False + 0 + 0 + + + True + False + 2 + + + True + False + gtk-clear + + + False + False + 0 + + + + + True + False + Deselection globale + True + + + False + False + 1 + + + + + + + + + False + True + 1 + + + + + False + False + 1 + + + + + True + True + False + 5 + + + + True + False + 0 + 0 + + + True + False + 2 + + + True + False + gtk-quit + + + False + False + 0 + + + + + True + False + Retour + True + + + False + False + 1 + + + + + + + + + False + False + 2 + + + + + False + True + 1 + + + + + + diff -Nru xcfa-4.3.8/lib/combo.c xcfa-5.0.1/lib/combo.c --- xcfa-4.3.8/lib/combo.c 2013-03-21 11:00:05.000000000 +0000 +++ xcfa-5.0.1/lib/combo.c 2015-02-10 10:32:03.000000000 +0000 @@ -3,7 +3,7 @@ * project : xcfa * with : Gtk-2 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - Creation d'une base de programmation en langage C de type GNU avec les autotools * GNU General Public License @@ -43,113 +43,19 @@ #endif #include -#include -#include -#include -#include -#include -#include -#include #include "lib.h" -typedef struct { - GtkComboBox *combo; - gboolean Bool; -} ALLOC; - -GList *ListAlloc = NULL; - - -// REMOVE ALLOC COMBO -// -void libcombo_remove (void) -{ - GList *list = NULL; - ALLOC *New = NULL; - gint NbList = 0; - - list = g_list_first (ListAlloc); - while (list) { - if (NULL != (New = (ALLOC *)list->data)) { - g_free (New); - New = NULL; - list->data = NULL; - - NbList ++; - } - list = g_list_next (list); - } - g_list_free (ListAlloc); - ListAlloc = NULL; - if( TRUE == OptionsCommandLine.BoolVerboseMode ) - g_print ("\tRemove: %d\n", NbList); -} -// ALLOC COMBO -// -void libcombo_alloc (GtkComboBox *p_combo) -{ - GtkListStore *store = NULL; - GtkCellRenderer *renderer = NULL; - GList *list = NULL; - ALLOC *New = NULL; - gboolean BoolInListe = FALSE; - - // CHERCHE SI PAS DANS LA LISTE - list = g_list_first (ListAlloc); - while (list) { - if ((New = (ALLOC *)list->data) != NULL) { - if (New->combo == p_combo) { - BoolInListe = TRUE; - break; - } - } - list = g_list_next (list); - } - // SI PAS DANS LA LISTE ALORS INSERTION - if (BoolInListe == FALSE) { - New = (ALLOC *)g_malloc0 (sizeof(ALLOC)); - New->combo = p_combo; - New->Bool = FALSE; - ListAlloc = g_list_append (ListAlloc, New); - } - - // RECUP OU CREATION DE store - list = g_list_first (ListAlloc); - while (list) { - if ((New = (ALLOC *)list->data) != NULL) { - if (New->combo == p_combo) { - if (New->Bool == FALSE) { - store = gtk_list_store_new (1, G_TYPE_STRING); - gtk_combo_box_set_model (GTK_COMBO_BOX(p_combo), GTK_TREE_MODEL(store)); - renderer = gtk_cell_renderer_text_new (); - gtk_cell_layout_pack_start (GTK_CELL_LAYOUT(p_combo), renderer, TRUE); - gtk_cell_layout_set_attributes (GTK_CELL_LAYOUT(p_combo), renderer, "text", 0, NULL); - New->Bool = TRUE; - } - else { - store = GTK_LIST_STORE (gtk_combo_box_get_model(p_combo)); - gtk_list_store_clear (store); - } - break; - } - } - list = g_list_next (list); - } -} // OPTIONS REMOVE COMBO -// libcombo_remove_options (GTK_COMBO_BOX ()); // void libcombo_remove_options (GtkComboBox *p_combo) { gint Index; - while (TRUE) { Index = gtk_combo_box_get_active (GTK_COMBO_BOX (p_combo)); if (Index == -1) break; - gtk_combo_box_remove_text (GTK_COMBO_BOX (p_combo), Index); - + gtk_combo_box_text_remove (GTK_COMBO_BOX_TEXT(p_combo), Index); gtk_combo_box_set_active (GTK_COMBO_BOX (p_combo), 0); } } diff -Nru xcfa-4.3.8/lib/file_is.c xcfa-5.0.1/lib/file_is.c --- xcfa-4.3.8/lib/file_is.c 2013-03-21 11:00:05.000000000 +0000 +++ xcfa-5.0.1/lib/file_is.c 2015-02-10 10:32:11.000000000 +0000 @@ -3,7 +3,7 @@ * project : xcfa * with : Gtk-2 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - Creation d'une base de programmation en langage C de type GNU avec les autotools * GNU General Public License @@ -96,6 +96,8 @@ break; } } + g_free( buf ); + buf = NULL; return( bool_signature ); } @@ -126,7 +128,8 @@ break; } } - + g_free( buf ); + buf = NULL; return( bool_signature ); } // FILE IS WAV ? @@ -246,10 +249,8 @@ bool_signature = TRUE; } } - g_free (buf); buf = NULL; - return (bool_signature); } // FILE IS OGG ? @@ -291,10 +292,8 @@ } } } - g_free (buf); buf = NULL; - return (bool_signature); } // FILE IS MPC ? @@ -341,10 +340,8 @@ } } } - - g_free (buf); + g_free( buf ); buf = NULL; - return (bool_signature); } // FILE IS AC3 ? @@ -368,7 +365,7 @@ BoolSignature = TRUE; } - g_free (buf); + g_free( buf ); buf = NULL; return (BoolSignature); @@ -469,9 +466,8 @@ } } */ - g_free (buf); + g_free( buf ); buf = NULL; - return (bool_signature); } // FILE IS FLAC ? @@ -500,9 +496,8 @@ break; } } - g_free (buf); + g_free( buf ); buf = NULL; - return (bool_signature); } /***************************************************************************************** @@ -562,9 +557,8 @@ } } } - g_free (buf); + g_free( buf ); buf = NULL; - return (bool_signature); } // FILE IS AIFF ? @@ -618,10 +612,8 @@ bool_signature = TRUE; } } - - g_free (buf); + g_free( buf ); buf = NULL; - return (bool_signature); } // FILE IS DTS ? @@ -718,9 +710,8 @@ break; } } - g_free (buf); + g_free( buf ); buf = NULL; - return (bool_signature); } // diff -Nru xcfa-4.3.8/lib/lib.c xcfa-5.0.1/lib/lib.c --- xcfa-4.3.8/lib/lib.c 2014-01-20 15:38:05.000000000 +0000 +++ xcfa-5.0.1/lib/lib.c 2015-02-10 10:32:20.000000000 +0000 @@ -3,7 +3,7 @@ * project : xcfa * with : Gtk-2 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - Creation d'une base de programmation en langage C de type GNU avec les autotools * GNU General Public License @@ -45,6 +45,7 @@ #include #include #include + #include #include #include @@ -123,7 +124,7 @@ { gchar *Path = NULL; gint NumPath = 0; - + /* if (NewRepTmp != NULL) { Path = g_strdup_printf ("%s/%s", SrcTmp, NewRepTmp); @@ -135,7 +136,7 @@ } return ((gchar *)Path); */ - // FIXED + // FIXED // Mon, 20 Jan 2014 16:33:36 +0100 // Plusieurs instances de XCFA peuvent être activées sans collision pour les conversions et extractions // @@ -153,7 +154,7 @@ } NumPath ++; } - + return( (gchar *)Path ); } // SUPPRESSION D UN DOSSIER TEMPORAIRE @@ -383,6 +384,7 @@ } gchar *libutils_get_datas_on_disk (void) { + /* FILE *fp = NULL; gchar *buf = NULL; size_t size; @@ -400,6 +402,24 @@ g_unlink ("/tmp/data_xcfa.txt"); return ((gchar *)buf); + */ + FILE *fp = NULL; + gchar *buf = NULL; + size_t size; + + if( (size = libutils_get_size_file( "/tmp/data_xcfa.txt" )) > 10 ) { + buf = (gchar *)g_malloc0 (sizeof(gchar) * (size + 10)); + if ((fp = fopen ("/tmp/data_xcfa.txt", "r")) != NULL) { + size = fread (buf, 1, size, fp); + fclose (fp); + } else { + g_free (buf); + buf = NULL; + } + } + g_unlink ("/tmp/data_xcfa.txt"); + + return ((gchar *)buf); } // TRUE SI ECRITURE OK SINON FALSE // diff -Nru xcfa-4.3.8/lib/lib.h xcfa-5.0.1/lib/lib.h --- xcfa-4.3.8/lib/lib.h 2013-03-21 11:00:07.000000000 +0000 +++ xcfa-5.0.1/lib/lib.h 2015-02-10 10:32:27.000000000 +0000 @@ -3,7 +3,7 @@ * project : xcfa * with : Gtk-2 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License @@ -35,6 +35,8 @@ #ifndef libH_h #define libH_h 1 + + // /usr/include/gtk-2.0/gdk/gdkkeysyms.h typedef struct { gboolean BoolVerboseMode; @@ -100,8 +102,6 @@ // COMBO.C // -void libcombo_remove (void); -void libcombo_alloc (GtkComboBox *p_combo); void libcombo_remove_options (GtkComboBox *p_combo); // UTF8.C diff -Nru xcfa-4.3.8/lib/Makefile.in xcfa-5.0.1/lib/Makefile.in --- xcfa-4.3.8/lib/Makefile.in 2014-01-31 12:25:45.000000000 +0000 +++ xcfa-5.0.1/lib/Makefile.in 2015-03-01 14:14:56.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.14.1 from Makefile.am. +# Makefile.in generated by automake 1.15 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2013 Free Software Foundation, Inc. +# Copyright (C) 1994-2014 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -15,7 +15,17 @@ @SET_MAKE@ VPATH = @srcdir@ -am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)' +am__is_gnu_make = { \ + if test -z '$(MAKELEVEL)'; then \ + false; \ + elif test -n '$(MAKE_HOST)'; then \ + true; \ + elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \ + true; \ + else \ + false; \ + fi; \ +} am__make_running_with_option = \ case $${target_option-} in \ ?) ;; \ @@ -79,12 +89,11 @@ build_triplet = @build@ host_triplet = @host@ subdir = lib -DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \ - $(top_srcdir)/depcomp ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) +DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON) mkinstalldirs = $(install_sh) -d CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = @@ -155,6 +164,7 @@ done | $(am__uniquify_input)` ETAGS = etags CTAGS = ctags +am__DIST_COMMON = $(srcdir)/Makefile.in $(top_srcdir)/depcomp DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ AMTAR = @AMTAR@ @@ -316,7 +326,6 @@ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu lib/Makefile'; \ $(am__cd) $(top_srcdir) && \ $(AUTOMAKE) --gnu lib/Makefile -.PRECIOUS: Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ *config.status*) \ @@ -569,6 +578,8 @@ mostlyclean-generic pdf pdf-am ps ps-am tags tags-am uninstall \ uninstall-am +.PRECIOUS: Makefile + # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. diff -Nru xcfa-4.3.8/lib/utf8.c xcfa-5.0.1/lib/utf8.c --- xcfa-4.3.8/lib/utf8.c 2013-03-21 11:00:05.000000000 +0000 +++ xcfa-5.0.1/lib/utf8.c 2015-02-10 10:32:39.000000000 +0000 @@ -3,7 +3,7 @@ * project : xcfa * with : Gtk-2 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - Creation d'une base de programmation en langage C de type GNU avec les autotools * GNU General Public License diff -Nru xcfa-4.3.8/lib/xdg.c xcfa-5.0.1/lib/xdg.c --- xcfa-4.3.8/lib/xdg.c 2013-03-21 11:00:05.000000000 +0000 +++ xcfa-5.0.1/lib/xdg.c 2015-02-10 10:32:46.000000000 +0000 @@ -3,7 +3,7 @@ * project : xcfa * with : Gtk-2 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - Creation d'une base de programmation en langage C de type GNU avec les autotools * GNU General Public License diff -Nru xcfa-4.3.8/Makefile.am xcfa-5.0.1/Makefile.am --- xcfa-4.3.8/Makefile.am 2012-01-23 19:46:32.000000000 +0000 +++ xcfa-5.0.1/Makefile.am 2015-02-05 17:21:49.000000000 +0000 @@ -1,6 +1,6 @@ # # Makefile.am # -SUBDIRS = po lib src man pixmaps menu mime glade desktop +SUBDIRS = po po_cli lib src man pixmaps menu mime glade desktop src_cli ACLOCAL_AMFLAGS = -I m4 EXTRA_DIST = config.rpath m4/ChangeLog autogen.sh diff -Nru xcfa-4.3.8/Makefile.in xcfa-5.0.1/Makefile.in --- xcfa-4.3.8/Makefile.in 2014-01-31 12:25:45.000000000 +0000 +++ xcfa-5.0.1/Makefile.in 2015-03-01 14:14:56.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.14.1 from Makefile.am. +# Makefile.in generated by automake 1.15 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2013 Free Software Foundation, Inc. +# Copyright (C) 1994-2014 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -14,7 +14,17 @@ @SET_MAKE@ VPATH = @srcdir@ -am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)' +am__is_gnu_make = { \ + if test -z '$(MAKELEVEL)'; then \ + false; \ + elif test -n '$(MAKE_HOST)'; then \ + true; \ + elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \ + true; \ + else \ + false; \ + fi; \ +} am__make_running_with_option = \ case $${target_option-} in \ ?) ;; \ @@ -78,16 +88,12 @@ build_triplet = @build@ host_triplet = @host@ subdir = . -DIST_COMMON = INSTALL NEWS README AUTHORS ChangeLog \ - $(srcdir)/Makefile.in $(srcdir)/Makefile.am \ - $(top_srcdir)/configure $(am__configure_deps) \ - $(srcdir)/config.h.in ABOUT-NLS COPYING TODO compile \ - config.guess config.rpath config.sub depcomp install-sh \ - missing ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) +DIST_COMMON = $(srcdir)/Makefile.am $(top_srcdir)/configure \ + $(am__configure_deps) $(am__DIST_COMMON) am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \ configure.lineno config.status.lineno mkinstalldirs = $(install_sh) -d @@ -151,6 +157,10 @@ CTAGS = ctags CSCOPE = cscope DIST_SUBDIRS = $(SUBDIRS) +am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/config.h.in \ + ABOUT-NLS AUTHORS COPYING ChangeLog INSTALL NEWS README TODO \ + compile config.guess config.rpath config.sub depcomp \ + install-sh missing DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) distdir = $(PACKAGE)-$(VERSION) top_distdir = $(distdir) @@ -323,7 +333,7 @@ # # Makefile.am # -SUBDIRS = po lib src man pixmaps menu mime glade desktop +SUBDIRS = po po_cli lib src man pixmaps menu mime glade desktop src_cli ACLOCAL_AMFLAGS = -I m4 EXTRA_DIST = config.rpath m4/ChangeLog autogen.sh all: config.h @@ -345,7 +355,6 @@ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu Makefile'; \ $(am__cd) $(top_srcdir) && \ $(AUTOMAKE) --gnu Makefile -.PRECIOUS: Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ *config.status*) \ @@ -567,15 +576,15 @@ $(am__post_remove_distdir) dist-tarZ: distdir - @echo WARNING: "Support for shar distribution archives is" \ - "deprecated." >&2 + @echo WARNING: "Support for distribution archives compressed with" \ + "legacy program 'compress' is deprecated." >&2 @echo WARNING: "It will be removed altogether in Automake 2.0" >&2 tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z $(am__post_remove_distdir) dist-shar: distdir - @echo WARNING: "Support for distribution archives compressed with" \ - "legacy program 'compress' is deprecated." >&2 + @echo WARNING: "Support for shar distribution archives is" \ + "deprecated." >&2 @echo WARNING: "It will be removed altogether in Automake 2.0" >&2 shar $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).shar.gz $(am__post_remove_distdir) @@ -611,17 +620,17 @@ esac chmod -R a-w $(distdir) chmod u+w $(distdir) - mkdir $(distdir)/_build $(distdir)/_inst + mkdir $(distdir)/_build $(distdir)/_build/sub $(distdir)/_inst chmod a-w $(distdir) test -d $(distdir)/_build || exit 0; \ dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \ && dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \ && am__cwd=`pwd` \ - && $(am__cd) $(distdir)/_build \ - && ../configure \ + && $(am__cd) $(distdir)/_build/sub \ + && ../../configure \ $(AM_DISTCHECK_CONFIGURE_FLAGS) \ $(DISTCHECK_CONFIGURE_FLAGS) \ - --srcdir=.. --prefix="$$dc_install_base" \ + --srcdir=../.. --prefix="$$dc_install_base" \ && $(MAKE) $(AM_MAKEFLAGS) \ && $(MAKE) $(AM_MAKEFLAGS) dvi \ && $(MAKE) $(AM_MAKEFLAGS) check \ @@ -796,6 +805,8 @@ mostlyclean-generic pdf pdf-am ps ps-am tags tags-am uninstall \ uninstall-am +.PRECIOUS: Makefile + # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. diff -Nru xcfa-4.3.8/man/Makefile.am xcfa-5.0.1/man/Makefile.am --- xcfa-4.3.8/man/Makefile.am 2011-01-30 12:02:35.000000000 +0000 +++ xcfa-5.0.1/man/Makefile.am 2015-02-05 11:45:42.000000000 +0000 @@ -2,11 +2,13 @@ # man/Makefile.am # AUTOMAKE_OPTIONS= gnu -man1_MANS = xcfa.gz -EXTRA_DIST = compilate_manpage.txt xcfa.gz +man1_MANS = xcfa.gz xcfa_cli.1.gz +EXTRA_DIST = compilate_manpage.txt xcfa.gz xcfa_cli.1.gz all: @true uninstall: - rm -f "$(DESTDIR)$(datadir)/man/man1/xcfa.1"; + rm -f "$(DESTDIR)$(datadir)/man/man1/xcfa.1"; + rm -f "$(DESTDIR)$(datadir)/man/man1/xcfa_cli.1.1"; + diff -Nru xcfa-4.3.8/man/Makefile.in xcfa-5.0.1/man/Makefile.in --- xcfa-4.3.8/man/Makefile.in 2014-01-31 12:25:45.000000000 +0000 +++ xcfa-5.0.1/man/Makefile.in 2015-03-01 14:14:56.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.14.1 from Makefile.am. +# Makefile.in generated by automake 1.15 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2013 Free Software Foundation, Inc. +# Copyright (C) 1994-2014 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -14,7 +14,17 @@ @SET_MAKE@ VPATH = @srcdir@ -am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)' +am__is_gnu_make = { \ + if test -z '$(MAKELEVEL)'; then \ + false; \ + elif test -n '$(MAKE_HOST)'; then \ + true; \ + elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \ + true; \ + else \ + false; \ + fi; \ +} am__make_running_with_option = \ case $${target_option-} in \ ?) ;; \ @@ -78,11 +88,11 @@ build_triplet = @build@ host_triplet = @host@ subdir = man -DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) +DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON) mkinstalldirs = $(install_sh) -d CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = @@ -138,6 +148,7 @@ NROFF = nroff MANS = $(man1_MANS) am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) +am__DIST_COMMON = $(srcdir)/Makefile.in DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ AMTAR = @AMTAR@ @@ -270,8 +281,8 @@ # man/Makefile.am # AUTOMAKE_OPTIONS = gnu -man1_MANS = xcfa.gz -EXTRA_DIST = compilate_manpage.txt xcfa.gz +man1_MANS = xcfa.gz xcfa_cli.1.gz +EXTRA_DIST = compilate_manpage.txt xcfa.gz xcfa_cli.1.gz all: all-am .SUFFIXES: @@ -287,7 +298,6 @@ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu man/Makefile'; \ $(am__cd) $(top_srcdir) && \ $(AUTOMAKE) --gnu man/Makefile -.PRECIOUS: Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ *config.status*) \ @@ -501,12 +511,15 @@ pdf-am ps ps-am tags-am uninstall uninstall-am uninstall-man \ uninstall-man1 +.PRECIOUS: Makefile + all: @true uninstall: - rm -f "$(DESTDIR)$(datadir)/man/man1/xcfa.1"; + rm -f "$(DESTDIR)$(datadir)/man/man1/xcfa.1"; + rm -f "$(DESTDIR)$(datadir)/man/man1/xcfa_cli.1.1"; # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. Binary files /tmp/U9mREQ24T4/xcfa-4.3.8/man/xcfa_cli.1.gz and /tmp/9PqOMEw8oW/xcfa-5.0.1/man/xcfa_cli.1.gz differ Binary files /tmp/U9mREQ24T4/xcfa-4.3.8/man/xcfa.gz and /tmp/9PqOMEw8oW/xcfa-5.0.1/man/xcfa.gz differ diff -Nru xcfa-4.3.8/menu/Makefile.in xcfa-5.0.1/menu/Makefile.in --- xcfa-4.3.8/menu/Makefile.in 2014-01-31 12:25:45.000000000 +0000 +++ xcfa-5.0.1/menu/Makefile.in 2015-03-01 14:14:56.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.14.1 from Makefile.am. +# Makefile.in generated by automake 1.15 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2013 Free Software Foundation, Inc. +# Copyright (C) 1994-2014 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -15,7 +15,17 @@ @SET_MAKE@ VPATH = @srcdir@ -am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)' +am__is_gnu_make = { \ + if test -z '$(MAKELEVEL)'; then \ + false; \ + elif test -n '$(MAKE_HOST)'; then \ + true; \ + elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \ + true; \ + else \ + false; \ + fi; \ +} am__make_running_with_option = \ case $${target_option-} in \ ?) ;; \ @@ -79,11 +89,11 @@ build_triplet = @build@ host_triplet = @host@ subdir = menu -DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) +DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON) mkinstalldirs = $(install_sh) -d CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = @@ -137,6 +147,7 @@ am__installdirs = "$(DESTDIR)$(menudir)" DATA = $(menu_DATA) am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) +am__DIST_COMMON = $(srcdir)/Makefile.in DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ AMTAR = @AMTAR@ @@ -287,7 +298,6 @@ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu menu/Makefile'; \ $(am__cd) $(top_srcdir) && \ $(AUTOMAKE) --gnu menu/Makefile -.PRECIOUS: Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ *config.status*) \ @@ -480,6 +490,8 @@ pdf-am ps ps-am tags-am uninstall uninstall-am \ uninstall-menuDATA +.PRECIOUS: Makefile + # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. diff -Nru xcfa-4.3.8/mime/Makefile.in xcfa-5.0.1/mime/Makefile.in --- xcfa-4.3.8/mime/Makefile.in 2014-01-31 12:25:45.000000000 +0000 +++ xcfa-5.0.1/mime/Makefile.in 2015-03-01 14:14:56.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.14.1 from Makefile.am. +# Makefile.in generated by automake 1.15 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2013 Free Software Foundation, Inc. +# Copyright (C) 1994-2014 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -15,7 +15,17 @@ @SET_MAKE@ VPATH = @srcdir@ -am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)' +am__is_gnu_make = { \ + if test -z '$(MAKELEVEL)'; then \ + false; \ + elif test -n '$(MAKE_HOST)'; then \ + true; \ + elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \ + true; \ + else \ + false; \ + fi; \ +} am__make_running_with_option = \ case $${target_option-} in \ ?) ;; \ @@ -79,11 +89,11 @@ build_triplet = @build@ host_triplet = @host@ subdir = mime -DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) +DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON) mkinstalldirs = $(install_sh) -d CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = @@ -137,6 +147,7 @@ am__installdirs = "$(DESTDIR)$(mimedir)" DATA = $(mime_DATA) am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) +am__DIST_COMMON = $(srcdir)/Makefile.in DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ AMTAR = @AMTAR@ @@ -287,7 +298,6 @@ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu mime/Makefile'; \ $(am__cd) $(top_srcdir) && \ $(AUTOMAKE) --gnu mime/Makefile -.PRECIOUS: Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ *config.status*) \ @@ -480,6 +490,8 @@ pdf-am ps ps-am tags-am uninstall uninstall-am \ uninstall-mimeDATA +.PRECIOUS: Makefile + # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. diff -Nru xcfa-4.3.8/NEWS xcfa-5.0.1/NEWS --- xcfa-4.3.8/NEWS 2010-08-06 23:10:32.000000000 +0000 +++ xcfa-5.0.1/NEWS 2015-02-05 10:46:01.000000000 +0000 @@ -1 +1,14 @@ -Read ChangeLog + + __ __ ___ _ ___ _ _ _ _ _ + \ \/ / / __|___ _ ___ _____ _ _| |_ | __(_) |___ /_\ _ _ __| (_)___ + > < | (__/ _ \ ' \ V / -_) '_| _| | _|| | / -_) / _ \ || / _` | / _ \ + /_/\_\ \___\___/_||_\_/\___|_| \__| |_| |_|_\___| /_/ \_\_,_\__,_|_\___/ + + + + ======================================== + | | + | NEWS | + | | + ======================================== + see: Changelog diff -Nru xcfa-4.3.8/pixmaps/Makefile.in xcfa-5.0.1/pixmaps/Makefile.in --- xcfa-4.3.8/pixmaps/Makefile.in 2014-01-31 12:25:46.000000000 +0000 +++ xcfa-5.0.1/pixmaps/Makefile.in 2015-03-01 14:14:56.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.14.1 from Makefile.am. +# Makefile.in generated by automake 1.15 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2013 Free Software Foundation, Inc. +# Copyright (C) 1994-2014 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -15,7 +15,17 @@ @SET_MAKE@ VPATH = @srcdir@ -am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)' +am__is_gnu_make = { \ + if test -z '$(MAKELEVEL)'; then \ + false; \ + elif test -n '$(MAKE_HOST)'; then \ + true; \ + elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \ + true; \ + else \ + false; \ + fi; \ +} am__make_running_with_option = \ case $${target_option-} in \ ?) ;; \ @@ -79,11 +89,11 @@ build_triplet = @build@ host_triplet = @host@ subdir = pixmaps -DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) +DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON) mkinstalldirs = $(install_sh) -d CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = @@ -137,6 +147,7 @@ am__installdirs = "$(DESTDIR)$(pixmapsdir)" DATA = $(pixmaps_DATA) am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) +am__DIST_COMMON = $(srcdir)/Makefile.in DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ AMTAR = @AMTAR@ @@ -290,7 +301,6 @@ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu pixmaps/Makefile'; \ $(am__cd) $(top_srcdir) && \ $(AUTOMAKE) --gnu pixmaps/Makefile -.PRECIOUS: Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ *config.status*) \ @@ -482,6 +492,8 @@ pdf-am ps ps-am tags-am uninstall uninstall-am \ uninstall-pixmapsDATA +.PRECIOUS: Makefile + uninstall: rm -rf "$(DESTDIR)$(datadir)/pixmaps/xcfa"; Binary files /tmp/U9mREQ24T4/xcfa-4.3.8/po/de.gmo and /tmp/9PqOMEw8oW/xcfa-5.0.1/po/de.gmo differ diff -Nru xcfa-4.3.8/po/de.po xcfa-5.0.1/po/de.po --- xcfa-4.3.8/po/de.po 2014-01-31 12:25:57.000000000 +0000 +++ xcfa-5.0.1/po/de.po 2015-03-01 17:00:50.000000000 +0000 @@ -5,151 +5,100 @@ # msgid "" msgstr "" -"Project-Id-Version: xcfa 4.2.8\n" +"Project-Id-Version: xcfa 5.0.0\n" "Report-Msgid-Bugs-To: xcfa@tuxfamily.org\n" -"POT-Creation-Date: 2014-01-31 13:25+0100\n" -"PO-Revision-Date: 2009-08-02 19:09+0100\n" +"POT-Creation-Date: 2015-03-01 18:00+0100\n" +"PO-Revision-Date: 2015-02-06 16:42+0100\n" "Last-Translator: BULIN Claude xcfa@tuxfamily.org\n" "Language-Team: xcfa-Team\n" -"Language: \n" +"Language: de_DE\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Poedit-Language: German\n" -"X-Poedit-Country: GERMANY\n" +"X-Generator: Poedit 1.7.3\n" -#: src/cd_audio.c:812 src/dvd.c:680 src/dvd.c:1324 -msgid "MPLAYER deja en action" -msgstr "Track-Auswahl" +#: src/cd_audio.c:814 src/dvd.c:686 src/dvd.c:1345 +msgid "MPLAYER already in action" +msgstr "Beschreibung" -#: src/cd_audio.c:813 src/dvd.c:681 src/dvd.c:1325 -msgid "MPLAYER est deja utilise !!" +#: src/cd_audio.c:815 src/dvd.c:687 src/dvd.c:1346 +msgid "MPLAYER is already in use !!" msgstr "MPlayer ist bereits im Einsatz" -#: src/cd_audio.c:1224 src/cd_audio.c:1230 src/dvd.c:867 src/file.c:2827 -msgid "(Click Droit = Menu) / En attente de selection." -msgstr "(Rechtsklick = Menü) / Bitte eine Auswahl treffen." - -#: src/cd_audio.c:1227 src/file.c:2824 -msgid "Le programme externe d'extraction est absent." -msgstr "Das externe Programm Extraktion fehlt." - -#: src/cd_audio.c:1233 src/file.c:2830 -msgid "(Click Droit = Menu) / En attente de selection. Le fichier existe." -msgstr "(Rechtsklick = Menü) / Bitte eine Auswahl treffen. Datei existiert." +#: src/cd_audio.c:1227 src/cd_audio.c:1233 src/file.c:2837 +msgid "(Right click = Menu) / Waiting for selection." +msgstr "(Right Click = Menu) / Anzahl der Titel Select (Kanäle)" + +#: src/cd_audio.c:1230 +msgid "The external ripping program is missing." +msgstr "Die externe Ripping-Programm fehlt." -#: src/cd_audio.c:1236 src/file.c:2833 -msgid "(Click Droit = Menu) / En selection." -msgstr "(Rechtsklick = Menü) / Auswahl" +#: src/cd_audio.c:1236 +msgid "(Right click = Menu) / Waiting for Selection. File exists.." +msgstr "(Rechtsklick = Menü) / Auswahl. Datei existiert." + +#: src/cd_audio.c:1239 +msgid "(Right click = Menu) / Selected files." +msgstr "(Right Click = Menu) / Anzahl der Titel Select (Kanäle)" -#: src/cd_audio.c:1239 src/file.c:2839 -msgid "(Click Droit = Menu) / Selection avec options expert." +#: src/cd_audio.c:1242 src/file.c:2849 +msgid "(Right click = Menu) / Selection - expert mode." msgstr "(Rechtsklick = Menü) / Auswahl im Expertenmodus." -#: src/cd_audio.c:1242 src/file.c:2836 -msgid "(Click Droit = Menu) / En selection. Le fichier existe." +#: src/cd_audio.c:1245 src/file.c:2846 +msgid "(Right click = Menu) / Selected files. File exists." msgstr "(Rechtsklick = Menü) / Auswahl. Datei existiert." -#: src/cd_audio.c:1245 src/file.c:2842 -msgid "" -"(Click Droit = Menu) / Selection avec options expert. Le fichier existe." +#: src/cd_audio.c:1248 src/file.c:2852 +msgid "(Right click = Menu) / Selection - expert mode. File exists." msgstr "(Rechtsklick = Menü) / Auswahl im Expertenmodus. Datei existiert." -#: src/cd_audio.c:1254 +#: src/cd_audio.c:1257 msgid "" -"(Click Droit = Menu) / Possibilite d'ajustement INDIVIDUEL ou COLLECTIF " -"maximal du volume" +"(Right click = Menu) / Possibilities for individual adaptation or maximum " +"collection volume" msgstr "" -"(Rechtsklick = Menü) / Möglichkeiten zur individuellen Anpassung oder " +"(Right click = Menu) / Möglichkeiten zur individuellen Anpassung oder " "maximale Auffangvolumen" -#: src/cd_audio.c:1259 -msgid "(Click Droit = Menu) / Ajustement INDIVIDUEL maximal du volume" -msgstr "(Rechtsklick = Menü) / Individuelle maximale Lautstärke" - #: src/cd_audio.c:1262 -msgid "(Click Droit = Menu) / Ajustement COLLECTIF maximal du volume" -msgstr "(Rechtsklick = Menü) / COLLECTIVE maximale Lautstärke" - -#: src/cd_audio.c:1502 src/dvd.c:1099 src/file.c:3137 src/translate.c:331 -#: src/translate.c:342 src/translate.c:361 -msgid "Play" -msgstr "Play" - -#: src/cd_audio.c:1543 src/file.c:3202 src/translate.c:343 src/translate.c:364 -msgid "Wav" -msgstr "Wav" - -#: src/cd_audio.c:1564 src/file.c:3221 src/translate.c:344 src/translate.c:365 -msgid "Flac" -msgstr "Flac" - -#: src/cd_audio.c:1584 src/file.c:3240 src/translate.c:345 src/translate.c:366 -msgid "Ape" -msgstr "Ape" - -#: src/cd_audio.c:1604 src/file.c:3259 -msgid "WavP" -msgstr "WavP" - -#: src/cd_audio.c:1624 src/file.c:3278 src/translate.c:347 src/translate.c:368 -msgid "Ogg" -msgstr "Ogg" - -#: src/cd_audio.c:1645 src/file.c:3297 src/translate.c:348 src/translate.c:369 -msgid "M4a" -msgstr "M4a" - -#: src/cd_audio.c:1666 src/file.c:3316 src/translate.c:349 src/translate.c:370 -msgid "Aac" -msgstr "Aac" - -#: src/cd_audio.c:1686 src/file.c:3335 -msgid "Mpc" -msgstr "Mpc" - -#: src/cd_audio.c:1706 src/file.c:3354 src/translate.c:351 src/translate.c:372 -msgid "Mp3" -msgstr "Mp3" - -#: src/cd_audio.c:1727 src/translate.c:352 -msgid "Num" -msgstr "Nr." +msgid "(Right click = Menu) / INDIVIDUAL maximum volume adjustment" +msgstr "" +"(Right click = Menu) / Möglichkeiten zur individuellen Anpassung oder " +"maximale Auffangvolumen" -#: src/cd_audio.c:1742 src/translate.c:353 src/translate.c:373 -#: src/translate.c:398 src/translate.c:406 -msgid "Time" -msgstr "Dauer" +#: src/cd_audio.c:1265 +msgid "(Right click = Menu) / COLLECTIVE maximum volume adjustment" +msgstr "" +"(Right click = Menu) / Möglichkeiten zur individuellen Anpassung oder " +"maximale Auffangvolumen" -#: src/cd_audio.c:1757 src/dvd.c:1167 src/file.c:3390 src/translate.c:335 -#: src/translate.c:354 src/translate.c:374 +#: src/cd_audio.c:1764 src/dvd.c:1187 src/file.c:3403 +#: glade/xcfa_win_treeview.glade:180 glade/xcfa_win_treeview.glade:560 +#: glade/xcfa_win_treeview.glade:961 msgid "Normalise" msgstr "Normalisieren" -#: src/cd_audio.c:1782 src/dvd.c:1187 src/file.c:3432 src/file_mp3ogg.c:958 -#: src/file_tags.c:1191 src/file_wav.c:824 src/prg_init.c:609 -#: src/translate.c:336 src/translate.c:355 src/translate.c:376 -#: src/translate.c:388 src/translate.c:399 src/translate.c:407 -msgid "Nom" +#: src/cd_audio.c:1789 src/dvd.c:1207 src/file.c:3445 src/file_mp3ogg.c:964 +#: src/file_tags.c:1253 src/file_wav.c:830 src/prg_init.c:609 +msgid "Name" msgstr "Name" -#: src/cd_audio.c:2511 -msgid " Parametrage CDDB: [ Nom du serveur ]" +#: src/cd_audio.c:2517 +msgid " Setting up CDDB: [ Server name ]" msgstr " Einrichten CDDB: [ Server name ]" -#: src/cd_audio.c:2520 -msgid " Parametrage PROXY: [ serveur ] [ port ]" +#: src/cd_audio.c:2526 +msgid " Proxy settings: [ server ] [ port ] " msgstr " Proxy-Einstellungen: [ server ] [ port ]" -#: src/cd_audio.c:2530 src/translate.c:95 -msgid " Serveur " -msgstr " Server " +#: src/cd_audio.c:2536 glade/xcfa.glade:1842 +msgid " Server " +msgstr " Auswurf " #: src/cd_audio_extract.c:673 #, c-format -msgid "" -"[Erreur du segment numero: %d]\n" -"%d) Lecture PASS 1/2\n" +msgid "[Error on segment #%d] %d) Playing PASS 1/2\n" msgstr "" "[Fehler im Segment Nummer: %d]\n" "%d) Lesedurchgang 1/2\n" @@ -157,7 +106,7 @@ #: src/cd_audio_extract.c:680 #, c-format msgid "" -"--> Deja %d fois 2 lectures du segment %d!\n" +"--> Segment %d already read two %d times!\n" " Abandon :/\n" msgstr "" "--> Bereits %d Mal das Segment %d doppelt gelesen\n" @@ -165,28 +114,28 @@ #: src/cd_audio_extract.c:700 #, c-format -msgid "%d) Lecture PASS 2/2\n" +msgid "%d) Read PASS 2/2\n" msgstr "%d) Lesedurchang 2 von 2\n" #: src/cd_audio_extract.c:780 #, c-format msgid "" "\n" -"[Piste: %d]\n" +"[Track: %d]\n" msgstr "" "\n" -"[Track: %d]\n" +"[Spur: %d]\n" #: src/cd_audio_extract.c:784 -msgid "Extraction mode expert PASS 1/2\n" +msgid "Ripping expert mode PASS 1/2\n" msgstr "- Rippen im Expertenmodus (Durchgang 1 von 2)\n" #: src/cd_audio_extract.c:795 -msgid "Extraction mode expert PASS 2/2\n" +msgid "Ripping expert mode PASS 2/2\n" msgstr "- Rippen im Expertenmodus (Durchgang 2 von 2)\n" #: src/cd_audio_extract.c:803 -msgid "Controle du contenu des fichiers extraits\n" +msgid "Control the content of the extracted files\n" msgstr "-- Überprüfung der gerippten Dateien\n" #: src/cd_audio_extract.c:1710 src/cd_audio_extract.c:1712 @@ -200,16 +149,16 @@ #: src/cd_audio_extract.c:1712 src/dvd_extract.c:414 src/file_action.c:185 #: src/file_mp3ogg_conv.c:331 src/file_wav_conv.c:345 -msgid "Arret par l'utilisateur" -msgstr "Vom User angehalten" +msgid "Stop by user" +msgstr "Schauen Sie vorbei Benutzer" #: src/cd_audio_extract.c:1983 -msgid "Nom de fichier unique absent" +msgid "File name not found" msgstr "Dateiname nicht gefunden" #: src/cd_audio_extract.c:1984 -msgid "Veuillez saisir un nom pour le fichier unique" -msgstr "Bitte geben Sie einen Namen für die Datei an" +msgid "Please enter a file name" +msgstr "Bitte geben Sie einen Dateinamen" #: src/cd_audio_toc.c:156 msgid "cdda2wav and icedax NOT FOUND" @@ -252,16 +201,16 @@ msgstr "Bitte installieren Sie das Paket [ cd-discid ]" #: src/cd_audio_toc.c:203 -msgid "ERREUR datas proxy" +msgid "ERROR datas proxy" msgstr "ERROR Daten Proxy" #: src/cd_audio_toc.c:204 -msgid "Veuillez renseigner les champs du proxy" -msgstr "Bitte füllen Sie alle Felder Proxy" +msgid "Please complete all fields proxy" +msgstr "Bitte füllen Sie alle Felder Proxy-" #: src/cd_curl.c:734 src/web.c:187 -msgid "La liaison internet est absente" -msgstr "Es besteht keine Internetverbindung" +msgid "A web connection is missing" +msgstr "Ist eine Internetverbindung fehlt" #: src/cd_curl.c:1204 msgid "Couldn't find CD" @@ -271,134 +220,128 @@ msgid "No Audio CD" msgstr "Keine Audio-CD" -#: src/dvd.c:859 +#: src/dvd.c:877 msgid "" -"(Click Droit = Menu) / PEAK-ALBUM: Amplification maximale du volume pour un " -"groupe de fichiers en respectant les ecarts de niveau entre chacun d'eux." +"(Right click = Menu) / Maximum volume amplification of a group of files " +"keeping the level difference between each of them." msgstr "" -"(Rechtsklick = Menü) / PEAK-ALBUM: Verstärkung der maximalen Lautstärke für " -"eine Gruppe von Dateien, wobei die Unterschiede zwischen den einzelnen " -"berücksichtigt werden." +"(Right click = Menu) / Maximalvolumen Amplifikation einer Gruppe von " +"Dateien halten die Pegeldifferenz zwischen jedem von ihnen." -#: src/dvd.c:862 -msgid "" -"(Click Droit = Menu) / PEAK: Amplification maximale du volume pour chaque de " -"fichier." -msgstr "(Rechtsklick = Menü) / PEAK: Maximale Lautstärke für jede Datei." +#: src/dvd.c:882 src/file.c:2882 +msgid "PEAK: Maximum volume amplification of each file." +msgstr "PEAK: Maximale Lautstärke Verstärkung der einzelnen Dateien." + +#: src/dvd.c:887 +msgid "(Right click = Menu) / ReplayGain: Waiting for selection." +msgstr "(Rechtsklick = Menü) / ReplayGain: Warten auf Auswahl." -#: src/dvd.c:900 src/dvd.c:920 -msgid "En attente de selection. Un click activera la conversion vers 2 canaux." +#: src/dvd.c:920 src/dvd.c:940 +msgid "" +"Waiting for selection. A click will activate the conversion to 2 channels." msgstr "" "Warte auf Ihre Auswahl. Ein Klick aktiviert die Konvertierung in 2 Kanäle." -#: src/dvd.c:912 -msgid "Conversion vers 2 canaux." +#: src/dvd.c:932 +msgid "Conversion to 2 channels." msgstr "Konvertierung in 2 Kanälen" -#: src/dvd.c:924 +#: src/dvd.c:944 #, c-format -msgid "Conversion vers %s canaux." +msgid "Conversion to %s channels." msgstr "Konvertierung in %s Kanäle" -#: src/dvd.c:929 +#: src/dvd.c:949 #, c-format msgid "" -"Conversion vers 2 canaux. Un second click activera la conversion vers %s " -"canaux." +"Conversion to 2 channels. A second click will activate the conversion to %s " +"channels." msgstr "" "Konvertierung in 2 Kanäle. Ein zweiter Klick aktiviert die Konvertierung in " "%s Kanäle." -#: src/dvd.c:944 -msgid "Musique en ecoute." -msgstr "Musik hören." - -#: src/dvd.c:947 -msgid "Musique en attente." -msgstr "Warte auf die Datei." +#: src/dvd.c:964 +msgid "Playing music." +msgstr "Musikwiedergabe." + +#: src/dvd.c:967 +msgid "Music paused." +msgstr "Musik angehalten." -#: src/dvd.c:962 +#: src/dvd.c:982 #, c-format msgid "Total selection%s: %d, 2ch: %d" msgstr "Komplette Auswahl %s: %d, 2ch: %d" -#: src/dvd.c:963 +#: src/dvd.c:983 msgid "s" msgstr "s" -#: src/dvd.c:969 -msgid "Ce fichier ne peut etre extrait !" -msgstr "Diese Datei kann nicht gerippt werden!" +#: src/dvd.c:989 +msgid "This file can not be ripped !" +msgstr " Diese Datei kann nicht gerissen werden! " -#: src/dvd.c:1087 -msgid "Titres" +#: src/dvd.c:1107 +msgid "Titles" msgstr "Titel" -#: src/dvd.c:1111 src/file.c:3373 src/file_mp3ogg.c:943 src/file_tags.c:1175 -#: src/translate.c:332 -msgid "Temps" +#: src/dvd.c:1119 glade/xcfa_win_treeview.glade:112 +#: glade/xcfa_win_treeview.glade:356 glade/xcfa_win_treeview.glade:740 +msgid "Play" +msgstr "Play" + +#: src/dvd.c:1131 src/file.c:3386 src/file_mp3ogg.c:949 src/file_tags.c:1237 +#: glade/xcfa_win_treeview.glade:543 glade/xcfa_win_treeview.glade:944 +#: glade/xcfa_win_treeview.glade:1491 glade/xcfa_win_treeview.glade:1689 +msgid "Time" msgstr "Dauer" -#: src/dvd.c:1123 src/translate.c:333 +#: src/dvd.c:1143 glade/xcfa_win_treeview.glade:146 msgid "Format" msgstr "Format" -#: src/dvd.c:1135 src/translate.c:334 -msgid "Choix" +#: src/dvd.c:1155 +msgid "Choice" msgstr "Auswahl" -#: src/dvd.c:1249 -msgid "Fichier structure DVD" +#: src/dvd.c:1267 +msgid "DVD file structure" msgstr "Dateienstruktur der DVD" -#: src/dvd.c:1299 -msgid "Le DVD est absent du lecteur." -msgstr "Der DVD-Player ist nicht vorhanden." - -#: src/dvd.c:1335 -msgid "Scan ..." -msgstr "Scan ..." +#: src/dvd.c:1320 +msgid "The DVD player is absent." +msgstr "Sox und Mplayer abwesend" -#: src/dvd.c:1385 -msgid "lsdvd est absent !" +#: src/dvd.c:1410 +msgid "lsdvd is missing !" msgstr "lsdvd fehlt !" -#: src/dvd.c:1386 -msgid "Il faut installer le programme: lsdvd" +#: src/dvd.c:1411 +msgid "You must install the program: lsdvd" msgstr "Sie müssen das Programm installieren: lsdvd" #: src/dvd_extract.c:412 src/dvd_extract.c:414 -msgid "XCFA: Extraction DVD" -msgstr "XCFA: Rippen der DVD" +msgid "XCFA: DVD rip" +msgstr "XCFA: DVD rip" -#: src/dvd_read.c:263 +#: src/dvd_read.c:226 #, c-format -msgid "Titre [%02d ** ]" +msgid "Title [%02d ** ]" msgstr "Titel [%02d ** ]" -#: src/dvd_read.c:266 +#: src/dvd_read.c:227 #, c-format -msgid "Titre [%02d]" +msgid "Title [%02d]" msgstr "Titel [%02d]" -#: src/dvd_read.c:310 +#: src/dvd_read.c:252 #, c-format -msgid "Fichier_complet_%02d_%s" -msgstr "Datei_komplett_%02d_%s" - -#: src/dvd_read.c:355 -#, c-format -msgid "Chapitre: [%02d]" +msgid "Chapter: [%02d]" msgstr "Abschnitt: [%02d]" -#: src/dvd_read.c:401 -#, c-format -msgid "Titre_%02d_Chapitre_%02d_audio_%02d_%s" -msgstr "Titel_%02d_Abschnitt_%02d_Audio_%02d_%s" - #: src/file_action.c:183 src/file_action.c:185 -msgid "XCFA: Traitement fichiers" -msgstr "XCFA: Verarbeitung von Dateien" +msgid "XCFA: Processing files" +msgstr "XCFA: Verarbeitungsdateien" #: src/file_analyze.c:731 msgid "Package checkmp3 (mp3check) NOT FOUND !" @@ -406,149 +349,145 @@ #: src/file_analyze.c:732 msgid "" -"Veuillez installer checkmp3 ou mp3check pour\n" -"la prise en compte des fichiers mp3" +"Please install or checkmp3 mp3check for\n" +"consideration of mp3 files" msgstr "" "Bitte installieren oder checkmp3 mp3check\n" "zur Prüfung von mp3-Dateien" # c-format -#: src/file.c:328 +#: src/file.c:327 #, c-format -msgid "Total fichiers: %d, Selections: %d" +msgid "Total files: %d, Selections: %d" msgstr "Gesamte Dateien: %d, Auswahl: %d" -#: src/file.c:442 -msgid "CAPACITE DOSSIER TEMPORAIRE TROP FAIBLE" -msgstr "Kapazität im temporärem Verzeichnis zu gering" - -#: src/file.c:443 -msgid "Pas assez de place dans le dossier temporaire" -msgstr "Nicht genügend Platz im temporären Verzeichnis" +#: src/file.c:441 +msgid "TEMPORARY CAPACITY TOO LOW" +msgstr "TEMPORARY Leistung zu gering" + +#: src/file.c:442 src/file.c:2875 +msgid "WARNING: Not enough space available in the temp folder." +msgstr "WARNUNG: Nicht genug Speicher im temporären Ordner." -#: src/file.c:449 -msgid "Veuillez deselectionner des PeakGroup." +#: src/file.c:448 +msgid "Please deselect PeakGroup." msgstr "Bitte deaktivieren Sie die PeakGroup." -#: src/file.c:1433 -msgid "Conversion(s) vers la source" +#: src/file.c:1431 +msgid "Conversion(s) to source" msgstr "Konvertierung(en) von der Ausgangsdatei" -#: src/file.c:1434 -msgid "Choix d'une nouvelle destination" -msgstr "Neue Auswahl des Verzeichnisses" +#: src/file.c:1432 +msgid "Select a new destination" +msgstr "Wählen Sie ein neues Ziel" -#: src/file.c:1504 +#: src/file.c:1501 msgid "Select type: --" msgstr "Typ auswählen: --" -#: src/file.c:1589 +#: src/file.c:1584 msgid "Peak/album" msgstr "Peak/Album" -#: src/file.c:1590 +#: src/file.c:1585 msgid "Peak" msgstr "Peak" -#: src/file.c:1591 +#: src/file.c:1586 msgid "Mix (scan)Rms/album" msgstr "Mix (scan)Rms/Album" -#: src/file.c:1592 +#: src/file.c:1587 msgid "Fix (scan)Rms" msgstr "Fix (scan)Rms" -#: src/file.c:2851 +#: src/file.c:2834 +msgid "The external ripping program is missing" +msgstr "Die externe Ripping-Programm fehlt" + +#: src/file.c:2840 +msgid "(Right click = Menu) / Waiting for Selection. File exists." +msgstr "(Rechtsklick = Menü) / Auswahl. Datei existiert." + +#: src/file.c:2843 +msgid "(Right click = Menu) / Selected files" +msgstr "(Rechtsklick = Menü) / Auswahl" + +#: src/file.c:2861 #, c-format -msgid "MAX FICHIERS ATTEINT = %d" +msgid "MAX FILES REACHED = %d" msgstr "FILES ERREICHT MAX =% d" -#: src/file.c:2861 -msgid "Normalise: En attente de selection." +#: src/file.c:2871 +msgid "Normalise: Waiting for selection." msgstr "Normalisierte: Warten auf Auswahl." -#: src/file.c:2865 -msgid "ATTENTION: Pas assez de place dans le dossier temporaire." -msgstr "ACHTUNG: Nicht genug Speicher im temporären Ordner." - -#: src/file.c:2868 +#: src/file.c:2878 msgid "" -"PEAK-ALBUM: Amplification maximale du volume pour un groupe de fichiers en " -"respectant les ecarts de niveau entre chacun d'eux." +"PEAK-ALBUM: Maximum volume amplification for a group of files according to " +"the deviations in level between them" msgstr "" -"PEAK-ALBUM: Verstärkung der maximalen Lautstärke für eine Gruppe von " -"Dateien, wobei die Unterschiede zwischen den einzelnen berücksichtigt werden." +"PEAK-ALBUM: Maximale Lautstärke Verstärkung für eine Gruppe von Dateien nach " +"den Abweichungen in der Höhe zwischen ihnen" -#: src/file.c:2872 -msgid "PEAK: Amplification maximale du volume pour chaque de fichier." -msgstr "PEAK: Maximale Lautstärke für jede Datei." - -#: src/file.c:2875 +#: src/file.c:2885 msgid "" -"RMS-ALBUM: Ajustement du volume moyen pour un groupe de fichiers en " -"respectant les ecarts de niveau moyen entre chacun d'eux." +"RMS-ALBUM: Adjusting the average volume for a group of files according to " +"the average level of deviation between them." msgstr "" -"RMS-ALBUM: Einstellen der Lautstärke für eine Gruppe von Dateien, wobei die " -"Abweichungen von der mittleren Lautstärke bei jeder von ihnen respektiert " -"wird" +"RMS-ALBUM: Einstellen des durchschnittlichen Volumens für eine Gruppe von " +"Dateien nach dem Durchschnittsniveau der Abweichung zwischen ihnen." -#: src/file.c:2878 -msgid "RMS: Ajustement du volume moyen de chaque de fichier." -msgstr "RMS: Einstellen der mittleren Lautstärke jeder einzelnen Datei" +#: src/file.c:2888 +msgid "RMS: Average volume amplification of each file." +msgstr "RMS: Normal Volumenverstärkung der einzelnen Dateien." -#: src/file.c:2892 -msgid "(Click Droit = Menu) / ReplayGain: En attente de selection." +#: src/file.c:2902 +msgid "(Right Click = Menu) / ReplayGain: Waiting for selection." msgstr "(Rechtsklick = Menü) / ReplayGain: Warten auf Auswahl." -#: src/file.c:2895 -msgid "(Click Droit = Menu) / Mode piste." +#: src/file.c:2905 +msgid "(Right Click = Menu) / Track mode." msgstr "(Rechtsklick = Menü) / Trackmodus" -#: src/file.c:2898 -msgid "(Click Droit = Menu) / Mode album." +#: src/file.c:2908 +msgid "(Right Click = Menu) / Album mode." msgstr "(Rechtsklick = Menü) / Albummodus" -#: src/file.c:2901 -msgid "(Click Droit = Menu) / Mode effacer." -msgstr "(Rechtsklick = Menü) / Löschmodus" +#: src/file.c:2911 +msgid "(Right Click = Menu) / Erase mode." +msgstr "(Rechtsklick = Menü) / Auswahl" -#: src/file.c:3013 +#: src/file.c:3026 msgid "" -"(Click Droit = Menu) / Cliquez ici pour envoyer ce fichier apres traitement " -"a la corbeille" -msgstr "" -"(Rechtsklick = Menü) / Klicken Sie hier, um diese Datei in den Papierkorb " -"senden nach der Behandlung" +"(Click Droit = Menu) / Click here to send the processed file to the trash" +msgstr "(Rechtsklick = Menü) / Auswahl der Kodierung und der Bitrate" -#: src/file.c:3016 +#: src/file.c:3029 msgid "" -"(Click Droit = Menu) / Ce fichier sera dirige apres traitement vers la " -"corbeille" +"(Right Click = Menu) / This file will be sent to the trash after processing" msgstr "" -"(Rechtsklick = Menü) / Diese Datei wird in den Papierkorb nach der " -"Behandlung gerichtet werden" +"(Right Click = Menu) / Diese Datei wird in den Papierkorb nach der " +"Verarbeitung gesendet werden" -#: src/file.c:3150 src/file_trash.c:359 src/translate.c:362 +#: src/file.c:3163 src/file_trash.c:208 glade/xcfa_win_treeview.glade:757 msgid "Trash" msgstr "Papierkorb" -#: src/file.c:3170 src/file_mp3ogg.c:883 src/file_tags.c:1160 -#: src/translate.c:363 src/translate.c:394 src/translate.c:405 +#: src/file.c:3183 src/file_mp3ogg.c:889 src/file_tags.c:1222 +#: glade/xcfa_win_treeview.glade:774 glade/xcfa_win_treeview.glade:1423 +#: glade/xcfa_win_treeview.glade:1672 msgid "Type" msgstr "Typ" -#: src/file.c:3409 -msgid "ReplayGain" -msgstr "Lautstärkepegel" - -#: src/file_conv.c:1187 src/file_mp3ogg_conv.c:336 -msgid "Erreur depuis MPLAYER !" +#: src/file_conv.c:1187 +msgid "Error since MPLAYER !" msgstr "Fehler da MPlayer !" #: src/file_conv.c:1188 src/file_conv.c:1200 src/file_mp3ogg_conv.c:337 #: src/file_mp3ogg_conv.c:349 -msgid "Vous pouvez activer XCFA en ligne de commande avec: " -msgstr "Sie können XCFA Befehlszeile mit ermöglichen: " +msgid "You can enable XCFA command line with: " +msgstr "Sie können XCFA Kommandozeile aktivieren: " #: src/file_conv.c:1190 src/file_conv.c:1202 src/file_mp3ogg_conv.c:339 #: src/file_mp3ogg_conv.c:351 @@ -556,50 +495,54 @@ msgstr "$ xcfa -verbose" #: src/file_conv.c:1192 src/file_mp3ogg_conv.c:341 -msgid "pour consulter le type d'erreur renvoye par mplayer." +msgid "to see the type of error returned by mplayer." msgstr "auf die Art des Fehlers durch mplayer kehrte zu sehen." -#: src/file_conv.c:1199 src/file_mp3ogg_conv.c:348 -msgid "Erreur depuis SOX !" +#: src/file_conv.c:1199 +msgid "Error since SOX !" msgstr "Fehler seit SOX !" #: src/file_conv.c:1204 src/file_mp3ogg_conv.c:353 -msgid "pour consulter le type d'erreur renvoye par sox." +msgid "to see the type of error returned by sox." msgstr "auf die Art des Fehlers siehe kehrte von sox" -#: src/file_mp3ogg.c:668 -msgid "Click droit: acces popup" +#: src/file_mp3ogg.c:670 +msgid "Right click: access popup" msgstr "Rechte Maustaste: Popup-Zugang" -#: src/file_mp3ogg.c:899 src/translate.c:395 -msgid "Bitrate" -msgstr "Bitrate" - -#: src/file_mp3ogg.c:915 -msgid "Nouveau bitrate" +#: src/file_mp3ogg.c:921 +msgid "New bitrate" msgstr "Neue Bitrate" -#: src/file_mp3ogg.c:929 -msgid "Taille" +#: src/file_mp3ogg.c:935 glade/xcfa_win_treeview.glade:1474 +msgid "Size" msgstr "Dauer" #: src/file_mp3ogg_conv.c:329 src/file_mp3ogg_conv.c:331 -msgid "XCFA: Modification bitrate" -msgstr "XCFA: Modifizierung der Bitrate" +msgid "XCFA: Bitrate change" +msgstr "XCFA: Verarbeitung von Dateien" + +#: src/file_mp3ogg_conv.c:336 +msgid "Error from MPLAYER !" +msgstr "Fehler da MPlayer !" + +#: src/file_mp3ogg_conv.c:348 +msgid "Error from SOX !" +msgstr "Fehler seit SOX !" #: src/file_mp3ogg_conv.c:432 #, c-format -msgid " ATTENTION: Il faut installer %s%s%s" +msgid " WARNING : you need to install %s%s%s" msgstr " ACHTUNG: Bitte installieren Sie %s%s%s" #: src/file_mp3ogg_conv.c:440 #, c-format -msgid " ATTENTION: Il faut installer %s%s" +msgid " WARNING : you need to install %s%s" msgstr " ACHTUNG: Bitte installieren Sie %s%s" #: src/file_mp3ogg_conv.c:447 #, c-format -msgid " ATTENTION: Il faut installer %s" +msgid " WARNING : you need to install %s" msgstr " ACHTUNG: Bitte installieren Sie %s" #: src/file_mp3ogg_conv.c:454 @@ -607,359 +550,347 @@ msgstr "Package NOT FOUND !" #: src/fileselect.c:105 -msgid "Choix d'un dossier de destination" +msgid "Choosing a destination folder" msgstr "Die Wahl eines Zielordner" #: src/fileselect.c:106 -msgid "Choix d'un fichier CUE WAV FLAC OGG MP3 APE WMA" +msgid "Choosing a file CUE WAV FLAC OGG MP3 APE WMA" msgstr "Import der Dateien CUE WAV FLAC OGG MP3 APE WMA" #: src/fileselect.c:107 -msgid "Choix d'un fichier musical" +msgid "Choosing a file musical" msgstr "Auswahl einer Musikdatei" -#: src/fileselect.c:108 -msgid "Choix d'un fichier" -msgstr "Durch Auswahl einer Datei" - -#: src/fileselect.c:109 -msgid "Choix de fichiers" -msgstr "Import der Dateien" +#: src/fileselect.c:108 src/fileselect.c:109 +msgid "Choosing a file" +msgstr "Auswählen eines Datei" #: src/fileselect.c:110 -msgid "Choix de fichiers WAV" -msgstr "Import der Dateien WAV" +msgid "Choosing a WAV file" +msgstr "Die Auswahl einer WAV-Datei" #: src/fileselect.c:111 -msgid "Choix de fichiers MP3/OGG" -msgstr "Import der Dateien MP3/OGG" +msgid "Choosing a MP3 OGG file" +msgstr "Die Wahl eines MP3 OGG-Datei" #: src/fileselect.c:112 -msgid "Choix de fichiers FLAC MPC OGG MP3" +msgid "Choosing a FLAC MPC OGG MP3 file" msgstr "Import der Dateien FLAC MPC OGG MP3" #: src/fileselect.c:113 -msgid "Importer des images pour la pochette" -msgstr "Bilddateien für das Cover importieren" +msgid "Import pictures for the cover" +msgstr "Importieren von Bildern für die Abdeckung" #: src/fileselect.c:114 -msgid "Choix d'un chemin de stockage des images" -msgstr "Die Wahl eines Speicherpfad der Bilder" +msgid "Choosing an Image Storage path" +msgstr "Auswählen eines Bildspeicherpfad" #: src/fileselect.c:115 -msgid "Choix d'un lieu de sauvegarde" -msgstr "Die Wahl eines Lagerort" +msgid "Choosing a place for backup" +msgstr "Wahl eines Aufstellungsorts für die Sicherung" + +#: src/fileselect.c:396 src/fileselect.c:415 src/fileselect.c:703 +msgid "Cancel" +msgstr "stornieren" + +#: src/fileselect.c:398 src/fileselect.c:417 src/fileselect.c:705 +msgid "Open" +msgstr "geöffnet" -#: src/fileselect.c:472 src/fileselect.c:595 src/fileselect.c:605 -#: src/fileselect.c:628 +#: src/fileselect.c:494 src/fileselect.c:617 src/fileselect.c:627 +#: src/fileselect.c:650 msgid "All Files (*.*)" msgstr "Alle Dateien (*.*)" -#: src/file_trash.c:360 +#: src/file_trash.c:211 msgid "Trash files ..." msgstr "Trash files ..." -#: src/file_wav.c:483 -msgid "(Click Droit = Menu) / Choix de la frequence" +#: src/file_wav.c:485 +msgid "(Right Click = Menu) / Select frequency" msgstr "(Rechtsklick = Menü) / Frequenzauswahl" -#: src/file_wav.c:486 -msgid "(Click Droit = Menu) / Choix du nombre de pistes (voies)" -msgstr "(Rechtsklick = Menü) / Auswahl der Tracks (Wege)" +#: src/file_wav.c:488 +msgid "(Right Click = Menu) / Select number of tracks (channels)" +msgstr "(Right Click = Menu) / Anzahl der Titel Select (Kanäle)" -#: src/file_wav.c:489 -msgid "(Click Droit = Menu) / Choix du codage en nombre de bits" -msgstr "(Rechtsklick = Menü) / Auswahl der Kodierung und der Bitrate" +#: src/file_wav.c:491 +msgid "(Right Click = Menu) / Encoding selection in number of bits" +msgstr "(Rechtsklick = Menü) / Auswahl. Datei existiert." -#: src/file_wav.c:733 -msgid "Frequence" +#: src/file_wav.c:739 +msgid "Frequency" msgstr "Frequenz" -#: src/file_wav.c:749 -msgid "FREQUENCE" +#: src/file_wav.c:755 +msgid "FREQUENCY" msgstr "FREQUENZ" -#: src/file_wav.c:763 -msgid "Piste" -msgstr "Spuren" - -#: src/file_wav.c:779 -msgid "PISTE" -msgstr "SPUREN" +#: src/file_wav.c:769 +msgid "Track" +msgstr "Spur" + +#: src/file_wav.c:785 +msgid "TRACK" +msgstr "TRACK" -#: src/file_wav.c:793 +#: src/file_wav.c:799 msgid "Quantification" msgstr "Quantisierung" -#: src/file_wav.c:809 +#: src/file_wav.c:815 msgid "QUANTIFICATION" msgstr "QUANTISIERUNG" #: src/file_wav_conv.c:261 #, c-format -msgid "%s Copie fichier: %d%%" +msgid "%s Copy file: %d%%" msgstr "%s Kopiere Datei: %d%%" #: src/file_wav_conv.c:271 #, c-format -msgid "%s Restitution fichier: %d%%" +msgid "%s Return file: %d%%" msgstr "%s Rückgabe-Datei: %d%%" #: src/file_wav_conv.c:281 #, c-format -msgid "%s Traitement Sox: %d%%" +msgid "%s Use Sox: %d%%" msgstr "%s Sox-Verabeitung: %d%%" #: src/file_wav_conv.c:298 #, c-format -msgid "%s Traitement Mplayer: %d%%" +msgid "%s Use Mplayer: %d%%" msgstr "%s Mplayer-Verarbeitung: %d%%" #: src/file_wav_conv.c:343 src/file_wav_conv.c:345 msgid "XCFA: Conversions WAV TO WAV" msgstr "XCFA: Konvertieren von WAV zu WAV" -#: src/main.c:398 -msgid "= Adressage memoire invalide\n" -msgstr "= Ungültiger Adressraum\n" - -#: src/main.c:401 -msgid "= Vous avez probablement trouve un bug dans XCFA\n" -msgstr "= Sie haben möglicherweise einen Bug in XCFA gefunden\n" - -#: src/main.c:786 -msgid "MODE ADMINISTRATEUR" +#: src/main.c:775 +msgid "ADMINISTRATOR MODE" msgstr "Administrator-Modus" -#: src/main.c:788 -msgid " Vous ne devriez pas utiliser " -msgstr " Sie sollten nicht " +#: src/main.c:777 +msgid " You should not use " +msgstr " Sie sollten nicht " -#: src/main.c:790 -msgid " XCFA sous ROOT !" +#: src/main.c:779 +msgid " XCFA under ROOT !" msgstr " XCFA als Root ! " -#: src/options.c:171 -msgid "ERREUR: Lieu de stockage non autorise !" -msgstr "FEHLER: Speicherort ist nicht zulässig !" - -#: src/options.c:172 -msgid "Veuillez recommencer." -msgstr "Bitte versuchen Sie es erneut." +#: src/options.c:169 +msgid "ERROR : storage location not permitted !" +msgstr "ERROR: Speicherort nicht zulässig!" + +#: src/options.c:170 +msgid "Please start again." +msgstr "Bitte starten Sie erneut." #: src/options_cd.c:122 -msgid "Pour evaluer les templates, vous devez activer une lecture de cdaudio" -msgstr "Zur Beurteilung der Vorlagen, müssen Sie eine Lesung cdaudio" +msgid "To assess the templates, you must enable a reading cdaudio" +msgstr "Um die Vorlagen zu bewerten, müssen Sie eine Lese cdaudio aktivieren" -#: src/options_faac.c:96 +#: src/options_faac.c:94 msgid "Transport Stream (ADTS) - Extension .aac" msgstr "Transport-Stream (ADTS) - *.aac" -#: src/options_faac.c:97 +#: src/options_faac.c:95 msgid "MPEG-4 File Format (MP4) - Extension .m4a" msgstr "MPEG-4 Dateienformat (MP4) - *.m4a" -#: src/options_flac.c:67 -msgid "0 (Rapide)" +#: src/options_flac.c:65 +msgid "0 (Fast)" msgstr "0 (Schnell)" -#: src/options_flac.c:75 -msgid "8 (Lent)" +#: src/options_flac.c:73 +msgid "8 (Low)" msgstr "8 (Langsam)" -#: src/options_mp3.c:279 -msgid "V0 (meilleure qualite)" +#: src/options_mp3.c:276 +msgid "V0 (Best quality)" msgstr "V0 (Beste Qualität)" -#: src/options_mp3.c:288 -msgid "V9 (moins bonne qualite)" +#: src/options_mp3.c:285 +msgid "V9 (Poor quality)" msgstr "V9 (Weniger gute Qualität)" -#: src/options_musepack.c:70 +#: src/options_musepack.c:68 msgid "telephone: lowest quality : 32 .. 48 kbit/s" msgstr "32...48 kbit/s - Telefon: Geringste Klangqualität" -#: src/options_musepack.c:71 +#: src/options_musepack.c:69 msgid "thumb : low quality/internet : 58 .. 86 kbit/s" msgstr "58...86 kbit/s - Thumb: Geringe Klangqualität (Internet)" -#: src/options_musepack.c:72 +#: src/options_musepack.c:70 msgid "radio : medium (MP3) quality : 112 .. 152 kbit/s" msgstr "112...152 kbit/s - Radio: Mittlere Klangqualität (MP3)" -#: src/options_musepack.c:73 +#: src/options_musepack.c:71 msgid "standard : high quality (dflt) : 142 .. 184 kbit/s" msgstr "142...184 kbit/s - Standard: Hohe Klangqualität (dflt)" -#: src/options_musepack.c:74 +#: src/options_musepack.c:72 msgid "xtreme : extreme high quality : 168 .. 212 kbit/s" msgstr "168...212 kbit/s - Xtreme: Extrem hohe Klangqualität" -#: src/options_musepack.c:75 +#: src/options_musepack.c:73 msgid "insane : extreme high quality : 232 .. 268 kbit/s" msgstr "232...268 kbit/s - Insane: Extrem hohe Klangqualität" -#: src/options_musepack.c:76 +#: src/options_musepack.c:74 msgid "braindead : extreme high quality : 232 .. 278 kbit/s" msgstr "232...278 kbit/s - Brainded: Extrem hohe Klangqualität" -#: src/options_oggenc.c:138 -msgid "Qualite -1 (Moins bonne qualite)" +#: src/options_oggenc.c:137 +msgid "Quality -1 (Poor quality)" msgstr "Klangqualität -1 (Weniger gute Qualität)" -#: src/options_oggenc.c:139 src/popup.c:1219 -msgid "Qualite 0" +#: src/options_oggenc.c:138 src/popup.c:1294 +msgid "Quality 0" msgstr "Klangqualität 0" -#: src/options_oggenc.c:140 src/popup.c:1219 -msgid "Qualite 1" +#: src/options_oggenc.c:139 src/popup.c:1294 +msgid "Quality 1" msgstr "Klangqualität 1" -#: src/options_oggenc.c:141 src/popup.c:1219 -msgid "Qualite 2" +#: src/options_oggenc.c:140 src/popup.c:1294 +msgid "Quality 2" msgstr "Klangqualität 2" -#: src/options_oggenc.c:142 -msgid "Qualite 3" +#: src/options_oggenc.c:141 +msgid "Quality 3" msgstr "Klangqualität 3" -#: src/options_oggenc.c:143 src/popup.c:1220 -msgid "Qualite 4" +#: src/options_oggenc.c:142 src/popup.c:1295 +msgid "Quality 4" msgstr "Klangqualität 4" -#: src/options_oggenc.c:144 src/popup.c:1220 -msgid "Qualite 5" +#: src/options_oggenc.c:143 src/popup.c:1295 +msgid "Quality 5" msgstr "Klangqualität 5" -#: src/options_oggenc.c:145 src/popup.c:1220 -msgid "Qualite 6" +#: src/options_oggenc.c:144 src/popup.c:1295 +msgid "Quality 6" msgstr "Klangqualität 6" -#: src/options_oggenc.c:146 src/popup.c:1220 -msgid "Qualite 7" +#: src/options_oggenc.c:145 src/popup.c:1295 +msgid "Quality 7" msgstr "Klangqualität 7" -#: src/options_oggenc.c:147 src/popup.c:1221 -msgid "Qualite 8" +#: src/options_oggenc.c:146 src/popup.c:1296 +msgid "Quality 8" msgstr "Klangqualität 8" -#: src/options_oggenc.c:148 src/popup.c:1221 -msgid "Qualite 9" +#: src/options_oggenc.c:147 src/popup.c:1296 +msgid "Quality 9" msgstr "Klangqualität 9" -#: src/options_oggenc.c:149 -msgid "Qualite 10 (Meilleure qualite)" +#: src/options_oggenc.c:148 +msgid "Quality 10 (Best quality)" msgstr "Klangqualität 10 (Beste Qualität)" -#: src/options_oggenc.c:179 src/options_wavpack.c:181 -#: src/options_wavpack.c:204 src/options_wavpack.c:227 src/popup.c:1223 -msgid "Oui" -msgstr "Ja" - -#: src/options_oggenc.c:180 src/options_wavpack.c:148 -#: src/options_wavpack.c:180 src/options_wavpack.c:203 -#: src/options_wavpack.c:226 src/options_wavpack.c:247 src/popup.c:1223 -msgid "Non" -msgstr "Nein" - -#: src/options_oggenc.c:201 -msgid "Mono force" -msgstr "Mono erzwingen" +#: src/options_oggenc.c:176 src/options_wavpack.c:173 +#: src/options_wavpack.c:194 src/options_wavpack.c:215 src/popup.c:1298 +msgid "Yes" +msgstr "ja" + +#: src/options_oggenc.c:177 src/options_wavpack.c:142 +#: src/options_wavpack.c:172 src/options_wavpack.c:193 +#: src/options_wavpack.c:214 src/options_wavpack.c:233 src/popup.c:1298 +msgid "No" +msgstr "No" + +#: src/options_oggenc.c:196 +msgid "Force mono" +msgstr "Force mono" -#: src/options_oggenc.c:202 +#: src/options_oggenc.c:197 msgid "Stereo" msgstr "Stereo" -#: src/options_wavpack.c:100 -msgid "Mode normal" -msgstr "Normal-Modus" +#: src/options_wavpack.c:98 +msgid "Standard" +msgstr "Standard" + +#: src/options_wavpack.c:99 +msgid "Fast (Faster encode and decode)" +msgstr "Fast (Faster Codieren und Decodieren)" -#: src/options_wavpack.c:101 -msgid "Mode rapide de compression" -msgstr "Schnelle Komprimierung" - -#: src/options_wavpack.c:102 -msgid "Bonne qualite de compression" +#: src/options_wavpack.c:100 +msgid "High quality (Better compression ratio)" msgstr "Gute Komprimierung" -#: src/options_wavpack.c:103 -msgid "Meilleure qualite de compression" -msgstr "Beste Komprimierung" +#: src/options_wavpack.c:101 +msgid "Very high quality (Best compression but slowest)" +msgstr "Sehr hohe Qualität (beste Kompression, aber am langsamsten)" -#: src/options_wavpack.c:129 +#: src/options_wavpack.c:125 msgid "stereo left/right" msgstr "Stereo (Links/Rechts)" -#: src/options_wavpack.c:130 +#: src/options_wavpack.c:126 msgid "stereo mid/side" msgstr "Stereo (Mitte/Seiten)" -#: src/options_wavpack.c:248 +#: src/options_wavpack.c:234 msgid "1 (fast / rapide)" msgstr "1 (Schnell)" -#: src/options_wavpack.c:253 +#: src/options_wavpack.c:239 msgid "6 (very slow / tres lent)" msgstr "6 (Sehr langsam)" -#: src/play_file.c:108 -msgid "PAS de lecteur audio present" -msgstr "Es ist kein Internet-Browser installiert" +#: src/play_file.c:107 +msgid "NO audio player present" +msgstr "NO vorhanden Audio-Player" -#: src/play_file.c:109 -msgid "Veuillez installez un lecteur audio." -msgstr "Bitte deaktivieren Sie die PeakGroup." +#: src/play_file.c:108 +msgid "Please install an audio player." +msgstr "Bitte installieren Sie das Paket [ cdparanoia ]" -#: src/poche_dir.c:430 +#: src/poche_dir.c:433 msgid "" "Utilisez le glisser / deplacer - Effacer une image avec Ctrl + " "Click" msgstr "" "Drag / Drop - löschen Sie ein Bild mit Strg +Click" -#: src/poche_save.c:111 -msgid "Nom de fichier absent !!" -msgstr "File Name fehlt !!" +#: src/poche_save.c:117 +msgid "File name not found !!" +msgstr "Dateiname nicht gefunden !!" -#: src/poche_save.c:112 src/poche_web.c:353 src/poche_web.c:375 -msgid "Pour resoudre ce probleme:" +#: src/poche_save.c:118 src/poche_web.c:330 src/poche_web.c:352 +msgid "To solve this problem :" msgstr "Um dieses Problem zu lösen:" -#: src/poche_save.c:115 -msgid "Saisissez un nom de fichier sans extention" +#: src/poche_save.c:121 +msgid "Enter a file name without extension" msgstr "Geben Sie einen Dateinamen ohne Erweiterung" -#: src/poche_save.c:126 -msgid "Sauvegarde aux formats PDF et PostScript" -msgstr "Speichern als PDF und PostScript" - -#: src/poche_save.c:151 -msgid "Sauvegarde au format PNG" -msgstr "Speichern als PNG" +#: src/poche_save.c:131 +msgid "Saving to PDF" +msgstr "Speichern in PDF" -#: src/poche_web.c:352 -msgid "Aucun fichier trouve !" +#: src/poche_web.c:329 +msgid "No file found !" msgstr "Keine Datei gefunden!" -#: src/poche_web.c:356 -msgid "Modifiez la chaine de recherche et" -msgstr "Ändern Sie bitte die Suchbegriff und" - -#: src/poche_web.c:358 src/poche_web.c:380 -msgid "recommencez." -msgstr "versuchen Sie es erneut." - -#: src/poche_web.c:374 -msgid "Critere de recherche absent !!" -msgstr "Suchkriterien fehlt" - -#: src/poche_web.c:378 -msgid "Saisissez une chaine de recherche et" -msgstr "Geben Sie einen Suchbegriff ein und" - -#: src/poche_web.c:387 -msgid "[Recherche des fichiers images]" -msgstr "[Suche nach Bild-Dateien]" +#: src/poche_web.c:333 src/poche_web.c:355 +msgid "Modify the search parameters and" +msgstr "Ändern Sie die Suchparameter und" + +#: src/poche_web.c:335 src/poche_web.c:357 +msgid "start again." +msgstr "wieder anfangen." + +#: src/poche_web.c:351 +msgid "Search criteria away !!" +msgstr "Suchkriterien weg !!" + +#: src/poche_web.c:369 +msgid "[Search images files]" +msgstr "[Bilder-Dateien anzeigen]" #: src/popup.c:81 src/popup.c:100 msgid " Deselection globale" @@ -1030,145 +961,77 @@ msgid " Selection verticale " msgstr " Senkrecht alles auswählen " -#: src/popup.c:489 -msgid "1 piste" -msgstr "1 Tonspur" - -#: src/popup.c:492 -msgid "2 pistes" -msgstr "2 Tonspuren" - -#: src/popup.c:495 -msgid "4 pistes" -msgstr "4 Tanspuren" - -#: src/popup.c:498 -msgid "6 pistes" -msgstr "6 Tonspuren" - -#: src/popup.c:504 src/popup.c:619 src/popup.c:716 -msgid "Valeur d'origine" -msgstr "Ursprünglicher Wert" - -#: src/popup.c:592 -msgid " 8000 Hertz" -msgstr " 8000 Hertz" - -#: src/popup.c:595 -msgid "22000 Hertz" -msgstr "22000 Hertz" - -#: src/popup.c:598 -msgid "32000 Hertz" -msgstr "32000 Hertz" - -#: src/popup.c:601 -msgid "44056 Hertz" -msgstr "44056 Hertz" - -#: src/popup.c:604 -msgid "44100 Hertz" -msgstr "44100 Hertz" - -#: src/popup.c:607 -msgid "48000 Hertz" -msgstr "48000 Hertz" - -#: src/popup.c:610 -msgid "88200 Hertz" -msgstr "88200 Hertz" - -#: src/popup.c:613 -msgid "96000 Hertz" -msgstr "96000 Hertz" - -#: src/popup.c:698 -msgid " 8 bits" -msgstr " 8 bits" - -#: src/popup.c:701 -msgid "16 bits" -msgstr "16 bits" - -#: src/popup.c:704 -msgid "24 bits" -msgstr "24 bits" - -#: src/popup.c:707 -msgid "32 bits" -msgstr "32 bits" - -#: src/popup.c:710 -msgid "64 bits" -msgstr "64 bits" +#: src/popup.c:504 src/popup.c:619 src/popup.c:715 +msgid "Original value" +msgstr "ursprünglichen Wert" #: src/popup.c:765 -msgid "Selecteur suivant" -msgstr "Nach Auswahl" +msgid "Next selector" +msgstr "Index Lesung" #: src/popup.c:769 -msgid "Selecteur precedant" -msgstr "Selector vor" +msgid "Previous selector" +msgstr "Vorherige Wahl" #: src/popup.c:777 -msgid "Supprimer la plage active" +msgid "Delete the active range" msgstr "Löschen Sie den aktiven Bereich" -#: src/popup.c:849 -msgid "Retourner horizontalement" -msgstr "Horizontal spiegeln" +#: src/popup.c:850 +msgid "Flip Horizontal" +msgstr " Waagerecht alles auswählen" -#: src/popup.c:853 -msgid "Retourner verticalement" +#: src/popup.c:854 +msgid "Flip Vertical" msgstr "Vertikal spiegeln" -#: src/popup.c:861 -msgid "Image au premier plan" -msgstr "Bild im Vordergrund" +#: src/popup.c:862 +msgid "Foreground image" +msgstr "Vordergrundbild" -#: src/popup.c:865 -msgid "Image au dessus" +#: src/popup.c:866 +msgid "Image above" msgstr "Bild oben" -#: src/popup.c:869 -msgid "Image en dessous" +#: src/popup.c:870 +msgid "Image below" msgstr "Bild unten" -#: src/popup.c:873 -msgid "Image au dernier plan" +#: src/popup.c:874 +msgid "Image to the background" msgstr "Bild in den Hintergrund" -#: src/popup.c:881 -msgid "Effacer l'image" +#: src/popup.c:882 +msgid "Clear image" msgstr "Klares Bild" -#: src/popup.c:918 -msgid "Supprimer l'image de la liste" -msgstr "Bild entfernen aus der Liste" - -#: src/popup.c:1036 -msgid "V0 [ meilleure qualite ]" -msgstr "V0 [ Beste Qualität ]" +#: src/popup.c:920 +msgid "Remove image from the list" +msgstr "Bild aus der Liste entfernen" -#: src/popup.c:1036 src/popup.c:1039 -msgid "V4 [ defaut ]" +#: src/popup.c:1111 +msgid "V0 [ best quality ]" +msgstr "V0 (Beste Qualität)" + +#: src/popup.c:1111 src/popup.c:1114 +msgid "V4 [ default ]" msgstr "V4 [ Standard ]" -#: src/popup.c:1036 -msgid "V9 [ moins bonne qualite ]" +#: src/popup.c:1111 +msgid "V9 [ Lower quality ]" msgstr "V9 [ Schlechte Qualität ]" -#: src/popup.c:1219 -msgid "Qualite -1 [ Moins bonne qualite ]" -msgstr "Klangqualität -1 [ Weniger gute Qualität ]" +#: src/popup.c:1294 +msgid "Quality -1 [ Lower quality ]" +msgstr "Klangqualität -1 (Weniger gute Qualität)" -#: src/popup.c:1220 -msgid "Qualite 3 [ Defaut ]" +#: src/popup.c:1295 +msgid "Quality 3 [ Defaut ]" msgstr "Klangqualität 3 [ Standard ]" -#: src/popup.c:1221 -msgid "Qualite 10 [ Meilleure qualite ]" -msgstr "Klangqualität 10 [ Beste Qualität ]" +#: src/popup.c:1296 +msgid "Quality 10 [ Best Quality ]" +msgstr "Klangqualität 10 (Beste Qualität)" #: src/prg_init.c:85 msgid " Decode ATSC A/52 audio streams" @@ -1262,27 +1125,27 @@ "Audiodatenkompression." #: src/prg_init.c:357 -msgid " ... les paquets: deb " +msgid " ... Packets: deb " msgstr " ...folgende Pakete: deb " #: src/prg_init.c:363 -msgid " ... les paquets: tgz " +msgid " ... Packets: tgz " msgstr " ...folgende Pakete: tgz " #: src/prg_init.c:369 -msgid " ... les paquets: fpm " +msgid " ... Packets: fpm " msgstr " ...folgende Pakete: fpm " #: src/prg_init.c:375 -msgid " ... les paquets: rpm " +msgid " ... Packets: rpm " msgstr " ...folgende Pakete: rpm " #: src/prg_init.c:381 -msgid " ... les paquets: pkg.tar.xz " +msgid " ... Packets: pkg.tar.xz " msgstr " ...folgende Pakete: pkg.tar.xz " #: src/prg_init.c:387 -msgid " ... les paquets: ? " +msgid " ... Packets: ? " msgstr " ... Pakete: ? " #: src/prg_init.c:623 @@ -1290,287 +1153,343 @@ msgstr "Status" #: src/prg_init.c:637 -msgid "Paquet" -msgstr "Pakete" +msgid "Packets" +msgstr "Packets" #: src/prg_init.c:652 msgid "Action" msgstr "Beschreibung" #: src/scan.c:259 -msgid "PACKAGE dvd+rw-tools ABSENT" +msgid "PACKAGE dvd+rw-tools is missing" msgstr "Paket dvd + rw-tools ABSENT" #: src/scan.c:260 -msgid "Le package 'dvd+rw-tools' est absent" -msgstr "Das Paket »imagemagick« fehlt" +msgid "The package 'imagemagick' is missing" +msgstr "Das Paket 'imagemagick' fehlt" #: src/scan.c:262 -msgid "de votre systeme !" +msgid "on your system !" msgstr "auf Ihrem System !" -#: src/scan.c:264 -msgid "Veuillez l'installer car j'ai besoin de" -msgstr "Bitte installieren Sie es und versuchen es erneut." +#: src/scan.c:264 src/split.c:438 +msgid "Please install it and resume" +msgstr "Bitte installieren Sie ihn und setzen" #: src/scan.c:266 -msgid "'dvd+rw-mediainfo' pour identifier le(s)" +msgid "'Dvd + rw-mediainfo' to identify the" msgstr "DVD + RW-mediainfo 'zu identifizieren" #: src/scan.c:268 -msgid "lecteur(s) de cd / dvd." +msgid "reader of cd / dvd." msgstr "CD / DVD." -#: src/split.c:279 +#: src/split.c:297 msgid "" -"Menu: Click droit / Ajout plage: Click bouton centre / Zoom: Ctrl+Scroll" +"Menu: right click / Adding track: Click the center button / Zoom: Ctrl" +"+Scroll" msgstr "" "Menü: Rechter Mausklick / Hinzufügen Titel: Klicken Sie auf die mittlere / " "Zoom: Ctrl+ScrollTaste" -#: src/split.c:282 -msgid "Ajout plage: Click bouton centre / Zoom: Ctrl+Scroll" +#: src/split.c:300 +msgid "Adding track: Click the center button / Zoom: Ctrl+Scroll" msgstr "" "Hinzufügen Titel: Klicken Sie auf die mittlere Taste / Zoom: Ctrl+Scroll" -#: src/split.c:286 -msgid "" -"Pret pour l'import d'un fichier CUE, WAV, FLAC, OGG, MP3, APE, WMA" +#: src/split.c:304 +msgid "Ready for imports and a CUE file, WAV, FLAC, OGG, MP3, APE, WMA" msgstr "" "Bereit für die Einfuhr und eine CUE Datei, WAV, FLAC, OGG, MP3, APE, WMA" -#: src/split.c:356 src/split.c:385 -msgid "Ce fichier appartient a XCFA" +#: src/split.c:378 src/split.c:407 +msgid "This file belongs XCFA" msgstr "Diese Datei gehört XCFA" -#: src/split.c:357 src/split.c:386 -msgid "Selectionnez un autre fichier." +#: src/split.c:379 src/split.c:408 +msgid "Select another file." msgstr "Wählen Sie eine andere Datei." -#: src/split.c:365 -msgid "Fichier vide" -msgstr "Leere Datei" +#: src/split.c:387 +msgid "Empty file" +msgstr "leere Datei" -#: src/split.c:366 -msgid "Le fichier ne contient aucune donnee !!!" +#: src/split.c:388 +msgid "The file contains no data !!!" msgstr "Die Datei enthält keine Daten !!!" -#: src/split.c:411 -msgid "Sox et Mplayer absents" +#: src/split.c:433 +msgid "Sox and Mplayer not found" msgstr "Sox und Mplayer abwesend" -#: src/split.c:412 -msgid "Sox et Mplayer sont absents de votre" -msgstr "Sox und Mplayer sind aus Deinem" +#: src/split.c:434 +msgid "Sox et Mplayer are not found" +msgstr "Sox und Mplayer abwesend" -#: src/split.c:414 -msgid "configuration." +#: src/split.c:436 +msgid "in your configuration." msgstr "Konfiguration." -#: src/split.c:416 -msgid "Veuillez les installer pour pouvoir continuer." -msgstr "Bitte installieren Sie es und versuchen es erneut." - -#: src/split.c:467 -msgid "Erreur de choix de fichier" -msgstr "Import der Dateien" - -#: src/split.c:468 -msgid "Veuillez selectionner un fichier de type WAV FLAC MP3 OGG APE" -msgstr "Bitte wählen Sie einen Dateityp MP3 WAV OGG FLAC APE" +#: src/split.c:491 +msgid "Error file select" +msgstr "Lesefehler !" + +#: src/split.c:492 +msgid "Please select a file type of MP3 WAV OGG FLAC APE" +msgstr "Bitte wählen Sie einen Dateityp von MP3 WAV OGG FLAC APE" -#: src/split.c:505 src/split.c:579 -msgid "Mauvais type de fichier" +#: src/split.c:530 src/split.c:602 +msgid "Wrong type of file" msgstr "Falscher Dateityp" -#: src/split.c:506 src/split.c:580 +#: src/split.c:531 src/split.c:603 msgid "" -"Les types de fichiers acceptes\n" -"sont: WAV FLAC MP3 OGG APE WMA CUE" +"File types accepted\n" +"sare: WAV FLAC MP3 OGG APE WMA CUE" msgstr "" "Dateitypen werden akzeptiert:\n" "WAV FLAC MP3 OGG APE WMA CUE" -#: src/split_conv.c:313 src/split_conv.c:330 -msgid "Erreur SOX" -msgstr "Fehler SOX" +#: src/split_conv.c:316 src/split_conv.c:333 +msgid "SOX Error" +msgstr "SOX Fehler" -#: src/split_conv.c:314 src/split_conv.c:331 -msgid "Le programme SOX de votre distribution" +#: src/split_conv.c:317 src/split_conv.c:334 +msgid "The SOX program on your distribution" msgstr "Die SOX-Programm auf Ihrem Vertrieb" -#: src/split_conv.c:316 src/split_conv.c:333 -msgid "a generer une erreur pendant la conversion." +#: src/split_conv.c:319 src/split_conv.c:336 +msgid "has generated an error during conversion." msgstr "einen Fehler generiert hat während der Konvertierung." #: src/split_cue.c:116 -msgid "Erreur de lecture !" -msgstr "Lesefehler !" +msgid "Misreading !" +msgstr "Verlesen!" -#: src/split_cue.c:177 src/split_cue.c:187 src/split_cue.c:197 -msgid "Erreur" +#: src/split_cue.c:177 src/split_cue.c:187 src/split_cue.c:196 +msgid "Error" msgstr "Fehler" #: src/split_cue.c:178 -msgid "Aucun fichier de musique associe au cue-file !" -msgstr "Keine Musik mit dem Queue-Datei zugeordnet Datei !" +msgid "No music file associated with the cue-file" +msgstr "Kein Musikdatei mit dem Queue-Datei verknüpft" #: src/split_cue.c:188 -msgid "Pas de fichier WAV dans le cue-file !" -msgstr "Keine WAV-Datei in der Cue-Datei !" +msgid "No WAV file in the cue-file" +msgstr "Nein WAV-Datei in der Cue-Datei" -#: src/split_cue.c:198 -msgid "Aucun fichier de musique associe dans le dossier" -msgstr "Keine Musik-Datei in dem Ordner zugeordnet" +#: src/split_cue.c:197 +msgid "No music file in the folder associated" +msgstr "Keine Datei in dem Ordner verbunden" -#: src/split_cue.c:200 -msgid "du cue-file" +#: src/split_cue.c:199 +msgid "of cue-file" msgstr "die Cue-Datei" -#: src/split_cue.c:294 -msgid "Erreur de donnees dans le fichier CUE" +#: src/split_cue.c:293 +msgid "Data errors in the CUE file" msgstr "Datenfehler in der CUE-Datei" -#: src/split_cue.c:295 -msgid "La solution est d'importer le fichier de" +#: src/split_cue.c:294 +msgid "The solution is to import the file" msgstr "Die Lösung ist, die Datei zu importieren" -#: src/split_cue.c:297 -msgid "musique qui sera reconnu et pre-decoupe" -msgstr "Musik, die erkannt und Vorzerkleinerung" - -#: src/split_cue.c:299 -msgid "dans le module Split." -msgstr "Split im Modul." - -#: src/split_cue.c:301 -msgid "Il ne restera qu'a ajuster les plages pour" -msgstr "Wir werden nur bis zu den Stränden einstellen" +#: src/split_cue.c:296 +msgid "music that will be recognized and pre-cutting" +msgstr "Musik, die erkannt werden und Vorzerkleinerung" + +#: src/split_cue.c:298 +msgid "in the split module." +msgstr "im Split-Modul." + +#: src/split_cue.c:300 +msgid "We will just adjust to the beaches" +msgstr "Wir werden nur zu den Stränden einstellen" -#: src/split_cue.c:303 -msgid "generer un nouveau cue-file ou des decoupes" +#: src/split_cue.c:302 +msgid "generate a new cue-file or cuts" msgstr "Wir werden nur bis zu den Stränden einstellen..." -#: src/split_cue.c:305 -msgid "correspondant aux plages." +#: src/split_cue.c:304 +msgid "corresponding to the beaches." msgstr "der Gleise." #: src/split_selector.c:136 -msgid "Suppression pendant la lecture impossible" -msgstr "Löschen während der Wiedergabe nicht" +msgid "Deleting not during playback" +msgstr "Während der Wiedergabe Löschen nicht" -#: src/split_selector.c:229 src/split_selector.c:235 src/split_selector.c:289 -#: src/split_selector.c:295 src/split_selector.c:352 src/split_selector.c:359 -#: src/split_selector.c:429 src/split_selector.c:435 -msgid "Temps inferieur a 5 secondes entre marqueur et curseur !" +#: src/split_selector.c:231 src/split_selector.c:237 src/split_selector.c:291 +#: src/split_selector.c:297 src/split_selector.c:354 src/split_selector.c:361 +#: src/split_selector.c:431 src/split_selector.c:437 +msgid "Time of less than 5 seconds between marker and cursor !" msgstr "Zeit von weniger als 5 Sekunden zwischen Marker und Cursor !" -#: src/translate.c:51 -msgid "Fichier" +#: src/web.c:173 src/web.c:234 +msgid "No web browser" +msgstr "Kein Web-Browser" + +#: src/web.c:174 src/web.c:235 +msgid "No Web access: no web browser" +msgstr "Kein Web-Zugriff: kein Web-Browser" + +#: src/web.c:176 src/web.c:237 +msgid "found in your system." +msgstr "Gefunden in Ihrem System." + +#: src/web.c:178 src/web.c:239 +msgid "Please install a web browser." +msgstr "Bitte installieren Sie das Paket [ icedax ]" + +#: src/web.c:188 +msgid "You need to enable web access" +msgstr "Sie müssen Web-Zugriff aktivieren" + +#: src/web.c:249 +msgid "Application is missing." +msgstr "Die Anwendung ist nicht vorhanden." + +#: src/web.c:250 +msgid "Please install : " +msgstr "Bitte installieren : " + +#: src/win_about.c:124 +msgid " Xcfa on the web" +msgstr " xcfa im Web " + +#: src/win_about.c:174 +msgid "" +"\n" +"Au tout debut:\n" +"\n" +"Serres Patrick, Hamann Regis, Fabien Gregis, @Dzef, @alteo_gange, \n" +"@Leonux, @zarer, @Shankarius, @bishop, @Ludo, @Patachonf,\n" +"... ;-)\n" +"\n" +"" +msgstr "" +"\n" +"Zuerst:\n" +"\n" +"Serres Patrick, Hamann Regis, Fabien Gregis, @Dzef, @alteo_gange, \n" +"@Leonux, @zarer, @Shankarius, @bishop, @Ludo, @Patachonf,\n" +"... ;-)\n" +"\n" +"" + +#: src/win_scan.c:170 +msgid "Waiting ..." +msgstr "Warte ..." + +#: glade/xcfa.glade:66 glade/xcfa.glade:2533 +msgid "File" msgstr "Datei" -#: src/translate.c:52 -msgid "Quitter" +#: glade/xcfa.glade:75 +msgid "Quit" msgstr "Beenden" -#: src/translate.c:53 -msgid "Outils" -msgstr "Extras" +#: glade/xcfa.glade:89 +msgid "Tools" +msgstr "Tools" -#: src/translate.c:54 -msgid "Visibilite des champs" +#: glade/xcfa.glade:99 +msgid "Visibility fields" msgstr "Sichtbare Felder" -#: src/translate.c:55 -msgid "Aide" -msgstr "Hilfe" - -#: src/translate.c:56 -msgid "A propos" -msgstr "Über Xcfa" - -#: src/translate.c:57 src/translate.c:67 -msgid "Lecture" -msgstr "Einlesen" +#: glade/xcfa.glade:112 +msgid "Help" +msgstr "Help" + +#: glade/xcfa.glade:121 +msgid "About" +msgstr "About" + +#: glade/xcfa.glade:224 +msgid "Read" +msgstr "Read" -#: src/translate.c:58 -msgid " Choix du peripherique / Lecture du DVD " +#: glade/xcfa.glade:252 +msgid " Choosing the peripheral / DVD playback " msgstr " Laufwerksauswahl / Einlesen der DVD " -#: src/translate.c:59 src/translate.c:69 src/translate.c:125 -msgid " Destination des fichiers " -msgstr " Zielverzeichnis der Datei(en) " +#: glade/xcfa.glade:303 glade/xcfa.glade:921 +msgid " File Destination " +msgstr " Installation " -#: src/translate.c:60 src/translate.c:70 +#: glade/xcfa.glade:359 glade/xcfa.glade:1009 msgid " Eject " msgstr " Auswurf " -#: src/translate.c:61 src/translate.c:92 -msgid " Normaliser " +#: glade/xcfa.glade:434 +msgid " Normalize " msgstr " Normalisieren " -#: src/translate.c:62 -msgid "Deplier" -msgstr "Ausklappen" - -#: src/translate.c:63 -msgid "Replier" -msgstr "Einklappen" +#: glade/xcfa.glade:494 +msgid "Unfold" +msgstr "entfalten" + +#: glade/xcfa.glade:548 +msgid "Fold" +msgstr "falten" -#: src/translate.c:64 +#: glade/xcfa.glade:649 msgid " Vers 2CH: Sub / Ambiance " msgstr " In 2CH: Sub / Ambiente " -#: src/translate.c:65 src/translate.c:98 -msgid "Extraire" -msgstr "Rippen" +#: glade/xcfa.glade:705 +msgid "Extraction" +msgstr "XCFA: Rippen der CD" -#: src/translate.c:66 +#: glade/xcfa.glade:756 msgid " DVD " msgstr " DVD " -#: src/translate.c:68 -msgid " Choix du peripherique / Lecture du CD " +#: glade/xcfa.glade:842 +msgid "Lecture" +msgstr "Einlesen" + +#: glade/xcfa.glade:870 +msgid " Choosing the peripheral / CD playback " msgstr " Laufwerksauswahl / Einlesen der CD " -#: src/translate.c:71 -msgid "Titre:" +#: glade/xcfa.glade:1065 +msgid "Title:" msgstr " Titel:" -#: src/translate.c:72 +#: glade/xcfa.glade:1077 msgid "Album:" msgstr " Album:" -#: src/translate.c:73 -msgid "Artiste:" +#: glade/xcfa.glade:1089 +msgid "Artist:" msgstr " Interpret:" -#: src/translate.c:74 -msgid " Annee:" -msgstr " Jahr:" +#: glade/xcfa.glade:1101 +msgid "Comment:" +msgstr " Kommentar:" + +#: glade/xcfa.glade:1113 +msgid " Year:" +msgstr "Year:" -#: src/translate.c:75 +#: glade/xcfa.glade:1125 msgid " Genre:" msgstr "Genre:" -#: src/translate.c:76 -msgid " Piste:" +#: glade/xcfa.glade:1137 +msgid " Track:" msgstr " Track:" -#: src/translate.c:77 +#: glade/xcfa.glade:1149 msgid " *.m3u et xspf: " msgstr " *.m3u und xspf: " -#: src/translate.c:78 -msgid "Commentaire:" -msgstr " Kommentar:" - -#: src/translate.c:79 -msgid " Modification des tags Freedb " -msgstr " Bearbeiten der Tags " +#: glade/xcfa.glade:1287 +msgid "Editing tags Freedb" +msgstr "Bearbeiten der Tags" -#: src/translate.c:80 +#: glade/xcfa.glade:1302 msgid "" "%a [ %a=\"Artist\" ]\n" "\n" @@ -1596,7 +1515,7 @@ "In den Feldern 'Titel', da [ Ändern FreeDB tag ]\n" "das Zeichen oder Zeichen zu erhalten muss vorangestellt werdenZeichen %" -#: src/translate.c:81 +#: glade/xcfa.glade:1312 msgid "" "%a - artiste %b - titre " "de l'album %c - numero de la piste\n" @@ -1616,403 +1535,413 @@ "%u - Ersetzen von Zeichen: %u(AB=C) %u( =_) %Tl - " "Tetsumaki lower" -#: src/translate.c:82 -msgid " Arrangement des titres du CD " +#: glade/xcfa.glade:1346 +msgid " Arrangement of CD titles" msgstr "Anzeige-/Speicher-Layout beim Rippen" -#: src/translate.c:83 -msgid "Creation d'un fichier unique au format: " +#: glade/xcfa.glade:1382 +msgid "Creation of a single file format: " msgstr "Erstellen der eindeutigen Datei im Format:" -#: src/translate.c:84 -msgid " et dont le nom sera: " -msgstr " mit dem Namen: " - -#: src/translate.c:85 -msgid "Ecriture du fichier cue" -msgstr "Die Cue-Datei schreiben" +#: glade/xcfa.glade:1430 +msgid " and whose name will be: " +msgstr " und dessen Name wird sein:" + +#: glade/xcfa.glade:1461 +msgid "Writing the cue file" +msgstr "Schreiben Sie die Cue-Datei" -#: src/translate.c:86 -msgid " Au moins deux selections colonne Wav " +#: glade/xcfa.glade:1484 +msgid " At least two selections column Wav " msgstr " Min. zwei Aktivierungen in der Spalte Wav " -#: src/translate.c:87 +#: glade/xcfa.glade:1514 msgid "" -"Creation d'un fichier cue\n" -"unique depuis une lecture\n" -"du cd audio" +"\n" +"Creating a cue file from a single\n" +"reading audio cd\n" msgstr "" -"Erstellen einer eindeutigen\n" -"CUE-Datei durch das Einlesen\n" -"der Audio-CD." +"\n" +"Erstellen eines Cue-Datei aus einer \n" +"Lesen audio cd \n" -#: src/translate.c:88 -msgid "Creation fichier cue uniquement" -msgstr "Erstellen der eindeutigen CUE-Datei " +#: glade/xcfa.glade:1562 +msgid "File Creation cue only" +msgstr "Nur Dateierstellung Cue" -#: src/translate.c:89 +#: glade/xcfa.glade:1597 msgid " Creation Cue cd " msgstr " Erstellen der CD-CUE-Date " -#: src/translate.c:90 -msgid " Creation d'un fichier unique " -msgstr " Schaffung einer einzigen Datei " +#: glade/xcfa.glade:1625 +msgid "  Creation of a single file" +msgstr "Schaffung einer einzigen DateiFaux ?" -#: src/translate.c:91 -msgid "Gestion des tags, titres et fichiers cue" +#: glade/xcfa.glade:1638 +msgid "Management of tags, titles and cue files" msgstr "Verwalten der Titel, Tags und CUE-Datei" -#: src/translate.c:93 +#: glade/xcfa.glade:1688 +msgid " normalize " +msgstr " Normalisieren " + +#: glade/xcfa.glade:1749 msgid "definit le serveur a contacter pour les recherches titre" msgstr "Legt die Portnummer für den Titel Lookups verwendet werden" -#: src/translate.c:94 +#: glade/xcfa.glade:1788 msgid "Parametres par defaut" msgstr "Default-Parameter" -#: src/translate.c:96 -msgid "Choix parmis les differentes bases de donnees pour le CD." -msgstr "Wahl zwischen verschiedenen Datenbanken für die CD." - -#: src/translate.c:97 +#: glade/xcfa.glade:1887 msgid "DiscId" msgstr "DiscId" -#: src/translate.c:99 +#: glade/xcfa.glade:1946 +msgid "Extract" +msgstr "XCFA: Rippen der CD" + +#: glade/xcfa.glade:2053 msgid " CD " msgstr " CD " -#: src/translate.c:100 src/translate.c:124 -msgid " Importer " +#: glade/xcfa.glade:2135 glade/xcfa.glade:3271 +msgid " Import " msgstr " Import " -#: src/translate.c:101 -msgid " Destination des conversions " +#: glade/xcfa.glade:2190 +msgid " Destination conversions " msgstr " Zielverzeichnis für die Konvertierung " -#: src/translate.c:102 -msgid " Nettoyer " -msgstr " Löschen " +#: glade/xcfa.glade:2266 +msgid " Clean up " +msgstr " Erstellen der CD-CUE-Date " -#: src/translate.c:103 src/translate.c:107 +#: glade/xcfa.glade:2389 msgid "Appliquer les modifications" msgstr " Änderungen anwenden" -#: src/translate.c:104 -msgid " Normalise: " +#: glade/xcfa.glade:2444 +msgid " Normalize: " msgstr " Normalisiere: " -#: src/translate.c:105 -msgid " Choix niveau dBFS: " -msgstr " Neuauswahl dBFS: " - -#: src/translate.c:106 src/translate.c:123 -msgid " Fichiers " -msgstr " Dateien " +#: glade/xcfa.glade:2477 +msgid " Level selection dBFS: " +msgstr " Ebene Auswahl dBFS: " + +#: glade/xcfa.glade:2615 +msgid "Apply changes" +msgstr "Änderungen übernehmen" -#: src/translate.c:108 +#: glade/xcfa.glade:2651 msgid " Wav " msgstr "Wav" -#: src/translate.c:109 src/translate.c:121 -msgid "Appliquer" -msgstr "Anwenden" - -#: src/translate.c:110 -msgid "Effacer" -msgstr "Löschen" +#: glade/xcfa.glade:2735 +msgid "Apply" +msgstr "Sich Bewerben" + +#: glade/xcfa.glade:2789 +msgid "Delete" +msgstr "löschen" -#: src/translate.c:111 +#: glade/xcfa.glade:2826 msgid " Mp3-Ogg " msgstr " Mp3-Ogg " -#: src/translate.c:112 -msgid "Titre:" +#: glade/xcfa.glade:2875 +msgid "Title:" msgstr "Titel:" -#: src/translate.c:113 +#: glade/xcfa.glade:2886 msgid "Album:" msgstr "Album:" -#: src/translate.c:114 -msgid "Artiste:" +#: glade/xcfa.glade:2897 +msgid "Artist:" msgstr "Interpret:" -#: src/translate.c:115 -msgid "Commentaire:" +#: glade/xcfa.glade:2908 +msgid "Comment:" msgstr "Kommentar:" -#: src/translate.c:116 -msgid " Annee:" -msgstr " Jahr:" +#: glade/xcfa.glade:2919 +msgid " Year:" +msgstr " Jahr:" -#: src/translate.c:117 +#: glade/xcfa.glade:2930 msgid " Genre:" msgstr " Genre:" -#: src/translate.c:118 -msgid " Piste:" +#: glade/xcfa.glade:2941 +msgid " Track:" msgstr " Track:" -#: src/translate.c:119 +#: glade/xcfa.glade:2952 msgid " Modif.:" msgstr " Modif.:" -#: src/translate.c:120 +#: glade/xcfa.glade:3078 msgid "0" msgstr "0" -#: src/translate.c:122 src/translate.c:309 +#: glade/xcfa.glade:3102 +msgid "Apply " +msgstr "Anwenden" + +#: glade/xcfa.glade:3160 glade/xcfa.glade:10210 msgid " Tags " msgstr " Tags" -#: src/translate.c:126 +#: glade/xcfa.glade:3190 +msgid " Files " +msgstr "Alle Dateien (*.*)" + +#: glade/xcfa.glade:3322 +msgid "   File Destination " +msgstr " Zielverzeichnis der Datei(en) " + +#: glade/xcfa.glade:3494 msgid "Lecture de 5 secondes apres le marqueur de debut" msgstr "Reading 5 Sekunden nach Beginn Marker" -#: src/translate.c:127 +#: glade/xcfa.glade:3546 msgid "Index de debut" msgstr "Index Start" -#: src/translate.c:128 src/translate.c:135 src/translate.c:138 +#: glade/xcfa.glade:3547 glade/xcfa.glade:3813 glade/xcfa.glade:3874 msgid "00h00m00s" msgstr "00h00m00s" -#: src/translate.c:129 +#: glade/xcfa.glade:3600 msgid "lecture" msgstr "Lesung" -#: src/translate.c:130 +#: glade/xcfa.glade:3653 msgid "Pause" msgstr "Pause" -#: src/translate.c:131 +#: glade/xcfa.glade:3712 msgid "Index de lecture" msgstr "Index Lesung" -#: src/translate.c:132 src/translate.c:171 +#: glade/xcfa.glade:3713 glade/xcfa.glade:4767 msgid "label" msgstr "label" -#: src/translate.c:133 +#: glade/xcfa.glade:3760 msgid "Lecture de 5 secondes avant le marqueur de fin" msgstr "Reading von 5 Sekunden vor dem Ende Marker" -#: src/translate.c:134 +#: glade/xcfa.glade:3812 msgid "Index de fin" msgstr "End-Index" -#: src/translate.c:136 +#: glade/xcfa.glade:3860 msgid "Plage" msgstr "Beach" -#: src/translate.c:137 +#: glade/xcfa.glade:3873 msgid "Duree de la plage active" msgstr "Länge der aktiven Strand" -#: src/translate.c:139 +#: glade/xcfa.glade:3955 msgid "Suprimer tous les marqueurs pour les remplacer par un marqueur unique" msgstr "" "Wischen Sie alle Markierungen und ersetzen Sie sie mit einem einzigen Marker" -#: src/translate.c:140 +#: glade/xcfa.glade:4044 msgid "Le fichier CUE sera enregistre vers 'Destination des fichiers'." msgstr "CUE Datei aufgezeichnet werden 'Ziel-Datei'." -#: src/translate.c:141 -msgid "Production fichier Cue" +#: glade/xcfa.glade:4073 +msgid "Production Cue file" msgstr "Produktion Cue-Datei" -#: src/translate.c:142 +#: glade/xcfa.glade:4098 msgid "Le resultat du Split sera dirige vers 'Destination des fichiers'." msgstr "Das Ergebnis der Split wird in Richtung 'Destination file '." -#: src/translate.c:143 +#: glade/xcfa.glade:4127 msgid "Split" msgstr "Splitten" -#: src/translate.c:144 +#: glade/xcfa.glade:4188 msgid " Split " msgstr " Splitten " -#: src/translate.c:145 +#: glade/xcfa.glade:4253 msgid "Importation du titre du CD." msgstr "Importieren Sie die CD-Titel." -#: src/translate.c:146 -msgid "Titre CD" +#: glade/xcfa.glade:4276 +msgid "Title CD" msgstr "Titel CD" -#: src/translate.c:147 +#: glade/xcfa.glade:4296 msgid "Choix d'une nouvelle police." msgstr "Die Wahl eines neuen Schriftart." -#: src/translate.c:148 +#: glade/xcfa.glade:4318 msgid "Texte gras." msgstr "Bold Text." -#: src/translate.c:149 +#: glade/xcfa.glade:4340 msgid "Texte italique." msgstr "Kursiv gedruckt." -#: src/translate.c:150 -msgid "" -"Apres une lecture de CD et un ajout d'etiquette, ce menu permet la mise en " -"forme des titres, auteurs ..." -msgstr "" -"Nach dem Lesen einer CD und fügen Sie ein Label, ermöglicht dieses Menü die " -"Formatierung der Titel, Autoren ..." - -#: src/translate.c:151 +#: glade/xcfa.glade:4375 msgid "Ajouter du texte editable." msgstr "Fügen Sie Text editierbar." -#: src/translate.c:152 -msgid "Texte" +#: glade/xcfa.glade:4430 +msgid "Text" msgstr "Text" -#: src/translate.c:153 +#: glade/xcfa.glade:4462 msgid "Saisissez ici un critere de recherche d'images." msgstr "Geben Sie hier eine Suche nach Bildern." -#: src/translate.c:154 +#: glade/xcfa.glade:4484 msgid "Importation des images depuis le Web." msgstr "Importieren von Bildern aus dem Web." -#: src/translate.c:155 -msgid "Import images web" +#: glade/xcfa.glade:4509 +msgid "Import web images " msgstr "Import von Bildern auf Webseiten" -#: src/translate.c:156 +#: glade/xcfa.glade:4578 msgid "Supprimer l'image en selection" msgstr "Löschen Sie die Bildauswahl" -#: src/translate.c:157 +#: glade/xcfa.glade:4600 msgid "AJouter de nouvelles images." msgstr "Fügen Sie neue Bilder." -#: src/translate.c:158 +#: glade/xcfa.glade:4606 msgid "Ouvre un fichier" msgstr "Öffnen einer Datei" -#: src/translate.c:159 +#: glade/xcfa.glade:4623 msgid "Enregistrer la page au format png." msgstr "Seite speichern png." -#: src/translate.c:160 +#: glade/xcfa.glade:4629 msgid "Sauvegarde le fichier" msgstr "Speichern Sie die Datei" -#: src/translate.c:161 +#: glade/xcfa.glade:4646 msgid "Diminution de l'echelle." msgstr "Reduction in der Skala." -#: src/translate.c:162 +#: glade/xcfa.glade:4652 msgid "Reduit l'agrandissement" msgstr "Reduzierte Expansion" -#: src/translate.c:163 +#: glade/xcfa.glade:4669 msgid "Echelle a 100%." msgstr "Mensur 100%." -#: src/translate.c:164 +#: glade/xcfa.glade:4675 msgid "Remet l'echelle a 100%" msgstr "Gibt die Skala bei 100%" -#: src/translate.c:165 +#: glade/xcfa.glade:4692 msgid "Augmentation de l'echelle." msgstr "Erhöhung der Skala." -#: src/translate.c:166 +#: glade/xcfa.glade:4698 msgid "Augmente l'agrandissement" msgstr "Zunehmende Ausweitung" -#: src/translate.c:167 +#: glade/xcfa.glade:4715 msgid "Echelle compatible avec la taille de la fenetre." msgstr "Skala mit der Größe des Fensters." -#: src/translate.c:168 +#: glade/xcfa.glade:4721 msgid "Adapte l'echelle a la taille de la fenetre" msgstr "Passt die Waage, um die Größe des Fensters" -#: src/translate.c:169 +#: glade/xcfa.glade:4738 msgid "Emplacement de sauvegarde des fichiers." msgstr "Backup-Standort-Dateien." -#: src/translate.c:170 +#: glade/xcfa.glade:4752 msgid "Nom (sans extention) du fichier a sauvegarder." msgstr "Name (ohne Verlängerung) Datei gespeichert wird." -#: src/translate.c:172 +#: glade/xcfa.glade:4815 msgid " Pochette " msgstr " Cover " -#: src/translate.c:173 +#: glade/xcfa.glade:4861 msgid "Nice" msgstr "Nice" -#: src/translate.c:174 -msgid " Priorite systeme " +#: glade/xcfa.glade:4896 +msgid " Priority system " msgstr " Systempriorität " -#: src/translate.c:175 +#: glade/xcfa.glade:4935 msgid "" -"Indiquez ici le dossier sur votre systeme qui servira de lieu\n" -"de stockage provisoire pendant les differentes conversions.\n" +"\n" +"Enter here the folder on your system that will serve as\n" +"temporary storage for the different conversions.\n" msgstr "" +"\n" "Geben Sie hier den Ordner auf Ihrem System an, den Xcfa zur " "temporären\n" " Zwischenspeicherung während der Konvertierung benutzen soll.\n" -#: src/translate.c:176 -msgid " Dossier provisoire des conversions " +#: glade/xcfa.glade:4971 +msgid " Provisional file conversions " msgstr " Temporärer Konvertierungsordner " -#: src/translate.c:177 +#: glade/xcfa.glade:5017 msgid "button" msgstr "button" -#: src/translate.c:178 -msgid " Jouer une musique en fin de tache " -msgstr " Abspielen von Musik am Ende der Aufgabe " +#: glade/xcfa.glade:5038 +msgid " Playing a job end music " +msgstr " Spielen einen Job Ende Musik " -#: src/translate.c:179 +#: glade/xcfa.glade:5058 msgid " General " msgstr " Allgemein " -#: src/translate.c:180 +#: glade/xcfa.glade:5100 msgid "cdparanoia" msgstr "cdparanoia" -#: src/translate.c:181 +#: glade/xcfa.glade:5120 msgid "cdparanoia mode expert" msgstr "cdparanoia Expertenmodus" -#: src/translate.c:182 +#: glade/xcfa.glade:5140 msgid "cdparanoia mode expert multi passes" msgstr "cdparanoia Expertenmodus Multi-Pass" -#: src/translate.c:183 +#: glade/xcfa.glade:5168 msgid "cdda2wav / icedax" msgstr "cdda2wav / icedax" -#: src/translate.c:184 +#: glade/xcfa.glade:5194 msgid " Extraction cd-audio avec: " msgstr " Rippen der Audio-CD mit: " -#: src/translate.c:185 +#: glade/xcfa.glade:5268 msgid "HomePage" msgstr "Homepage" -#: src/translate.c:186 +#: glade/xcfa.glade:5323 msgid "ManPage " msgstr "Handbuch " -#: src/translate.c:187 +#: glade/xcfa.glade:5352 msgid " Web cdparanoia " msgstr " cdparanoia im Web " -#: src/translate.c:188 +#: glade/xcfa.glade:5414 msgid "" "Le fichier LogExpertMode.txt sera cree dans le dossier des " "extractions" @@ -2020,21 +1949,20 @@ "Die Datei LogExpertMode.txt werden in dem Ordner erstellt " "werdenExtraktionen" -#: src/translate.c:189 -msgid "" -"Generation d'un rapport pour: cdparanoia mode expert multi passes" +#: glade/xcfa.glade:5431 +msgid "Generation of a report for: cdparanoia mode expert multi passes" msgstr "" "Erstellung eines Reports für: cdparanoia Experten-Modus Multi-Pass" -#: src/translate.c:190 +#: glade/xcfa.glade:5467 msgid "" -"%a - artiste %b - titre " +"%a - artist %b - titre " "de l'album %c - numero de la piste\n" "%d - titre de la chanson %e - " -"annee %g - genre\n" +"year %g - genre\n" "%na - no accent %Tl " "- Tetsumaki lower\n" -"%u - remplacement de caracteres: %u(AB=C) %u( =_)" +"%u - replacement characters: %u(AB=C) %u( =_)" msgstr "" "%a - Künstler %b - " "Albumtitel %c - Titelnummer\n" @@ -2044,389 +1972,375 @@ "- Tetsumaki lower\n" "%u - Ersetzung von Zeichen: %u(AB=C) %u( =_)" -#: src/translate.c:191 +#: glade/xcfa.glade:5536 msgid " Dossier de stockage " msgstr " Verzeichnis zum Speichern " -#: src/translate.c:192 +#: glade/xcfa.glade:5567 msgid " CD " msgstr " CD " -#: src/translate.c:193 +#: glade/xcfa.glade:5615 msgid "ABR / CBR / VBR / VBR-NEW" msgstr "ABR / CBR / VBR / VBR-NEW" -#: src/translate.c:194 +#: glade/xcfa.glade:5660 glade/xcfa.glade:6295 msgid "Debit" msgstr "Bitrate" -#: src/translate.c:195 +#: glade/xcfa.glade:5705 glade/xcfa.glade:6317 msgid "Mode" msgstr "Modus" -#: src/translate.c:196 +#: glade/xcfa.glade:5747 msgid " Lame (fichier mp3): " msgstr " Lame (mp3-Datei): " -#: src/translate.c:197 src/translate.c:213 src/translate.c:225 -#: src/translate.c:238 src/translate.c:255 src/translate.c:266 -#: src/translate.c:280 src/translate.c:294 +#: glade/xcfa.glade:5827 glade/xcfa.glade:6466 glade/xcfa.glade:6941 +#: glade/xcfa.glade:7469 glade/xcfa.glade:8200 glade/xcfa.glade:8659 +#: glade/xcfa.glade:9192 glade/xcfa.glade:9753 msgid "Par defaut" msgstr " Standard " -#: src/translate.c:198 +#: glade/xcfa.glade:5848 msgid " Options LAME " msgstr " LAME-Optionen " -#: src/translate.c:199 src/translate.c:227 src/translate.c:268 +#: glade/xcfa.glade:5909 glade/xcfa.glade:7023 glade/xcfa.glade:8741 msgid "Site officiel" msgstr " Offizielle Seite " -#: src/translate.c:200 +#: glade/xcfa.glade:5964 msgid "Wiki mp3 " msgstr " mp3-Wiki " -#: src/translate.c:201 +#: glade/xcfa.glade:6020 msgid "Wiki " msgstr " Lame-Wiki " -#: src/translate.c:202 +#: glade/xcfa.glade:6076 msgid "ManPage " msgstr "Handbuch " -#: src/translate.c:203 +#: glade/xcfa.glade:6105 msgid " Web Lame " msgstr " Lame im Web " -#: src/translate.c:204 src/translate.c:218 src/translate.c:231 -#: src/translate.c:242 src/translate.c:260 src/translate.c:271 -#: src/translate.c:286 +#: glade/xcfa.glade:6181 glade/xcfa.glade:6709 glade/xcfa.glade:7238 +#: glade/xcfa.glade:7644 glade/xcfa.glade:8442 glade/xcfa.glade:8901 +#: glade/xcfa.glade:9491 msgid "[" msgstr "[" -#: src/translate.c:205 src/translate.c:219 src/translate.c:232 -#: src/translate.c:243 src/translate.c:261 src/translate.c:272 -#: src/translate.c:287 +#: glade/xcfa.glade:6194 glade/xcfa.glade:6722 glade/xcfa.glade:7251 +#: glade/xcfa.glade:7657 glade/xcfa.glade:8455 glade/xcfa.glade:8914 +#: glade/xcfa.glade:9504 msgid "string option interne" msgstr "string option interne" -#: src/translate.c:206 src/translate.c:220 src/translate.c:233 -#: src/translate.c:244 src/translate.c:262 src/translate.c:273 -#: src/translate.c:288 +#: glade/xcfa.glade:6209 glade/xcfa.glade:6737 glade/xcfa.glade:7266 +#: glade/xcfa.glade:7672 glade/xcfa.glade:8470 glade/xcfa.glade:8929 +#: glade/xcfa.glade:9519 msgid "]" msgstr "]" -#: src/translate.c:207 -msgid "" -" Options experts, definies par l'utilisateur - lame (wav -> mp3) " +#: glade/xcfa.glade:6234 +msgid " Experts options defined by the user- lame (wav -> mp3) " msgstr " Benutzerdefinierte Experten-Optionen - lame (wav > mp3) " -#: src/translate.c:208 +#: glade/xcfa.glade:6254 msgid " Mp3 " msgstr " Mp3 " -#: src/translate.c:209 -msgid " Mode" -msgstr " Modus" - -#: src/translate.c:210 -msgid " Mode flux (streaming)" -msgstr " Flux-Modus (Streaming)" - -#: src/translate.c:211 -msgid " Debit" -msgstr " Bitrate" +#: glade/xcfa.glade:6306 +msgid "Mode flux (streaming)" +msgstr "Flux-Modus (Streaming)" -#: src/translate.c:212 +#: glade/xcfa.glade:6386 msgid " Oggenc (fichier ogg): " msgstr " Oggenc (ogg-Datei): " -#: src/translate.c:214 +#: glade/xcfa.glade:6487 msgid " Options OGGENC " msgstr " OGGENC-Optionen " -#: src/translate.c:215 +#: glade/xcfa.glade:6548 msgid "Wiki " msgstr "Wiki " -#: src/translate.c:216 src/translate.c:258 src/translate.c:284 -#: src/translate.c:298 +#: glade/xcfa.glade:6604 glade/xcfa.glade:8337 glade/xcfa.glade:9386 +#: glade/xcfa.glade:9947 msgid "ManPage" msgstr "Handbuch" -#: src/translate.c:217 +#: glade/xcfa.glade:6633 msgid " Web Oggenc " msgstr " Oggenc im Web " -#: src/translate.c:221 -msgid "" -" Options experts, definies par l'utilisateur - oggenc (wav -> ogg) " +#: glade/xcfa.glade:6762 +msgid " Experts options defined by the user - oggenc (wav -> ogg) " msgstr " Benutzerdefinierte Experten-Optionen - oggenc (wav > ogg) " -#: src/translate.c:222 +#: glade/xcfa.glade:6782 msgid " Oggenc " msgstr " Oggenc " -#: src/translate.c:223 +#: glade/xcfa.glade:6824 msgid "Taux de compression" msgstr " Komprimierungslevel" -#: src/translate.c:224 +#: glade/xcfa.glade:6861 msgid " Flac (fichier flac): " msgstr " Flac (flac-Datei): " -#: src/translate.c:226 +#: glade/xcfa.glade:6962 msgid " Options FLAC " msgstr " FLAC-Optionen" -#: src/translate.c:228 src/translate.c:269 +#: glade/xcfa.glade:7078 glade/xcfa.glade:8796 msgid "Framasoft " msgstr "Framasoft " -#: src/translate.c:229 +#: glade/xcfa.glade:7133 msgid "ManPage " msgstr "Handbuch " -#: src/translate.c:230 +#: glade/xcfa.glade:7162 msgid " Web Flac " msgstr " Flac im Web " -#: src/translate.c:234 -msgid "" -" Options experts, definies par l'utilisateur - flac (wav -> flac) " +#: glade/xcfa.glade:7291 +msgid " Experts options defined by the user- flac (wav -> flac) " msgstr " Benutzerdefinierte Experten-Optionen - flac (wav > flac) " -#: src/translate.c:235 +#: glade/xcfa.glade:7311 msgid " Flac " msgstr " Flac " -#: src/translate.c:236 +#: glade/xcfa.glade:7353 msgid " Qualite" msgstr " Qualität" -#: src/translate.c:237 +#: glade/xcfa.glade:7389 msgid " Mac (fichier ape): " msgstr " Mac (ape-Datei): " -#: src/translate.c:239 +#: glade/xcfa.glade:7490 msgid " Options MAC " msgstr " MAC-Optionen " -#: src/translate.c:240 +#: glade/xcfa.glade:7546 msgid "Wiki" msgstr "Wiki" -#: src/translate.c:241 +#: glade/xcfa.glade:7568 msgid " Web Mac " msgstr " Mac im Web " -#: src/translate.c:245 -msgid " Options experts, definies par l'utilisateur - mac (wav -> ape) " +#: glade/xcfa.glade:7697 +msgid " Experts options defined by the user - mac (wav -> ape) " msgstr " Benutzerdefinierte Experten-Optionen - mac (wav > ape) " -#: src/translate.c:246 +#: glade/xcfa.glade:7717 msgid " Mac " msgstr " Mac " -#: src/translate.c:247 +#: glade/xcfa.glade:7765 msgid "Compression" msgstr "Komprimierung" -#: src/translate.c:248 +#: glade/xcfa.glade:7817 msgid "Son" msgstr "Kanalaufteilung" -#: src/translate.c:249 +#: glade/xcfa.glade:7869 msgid "Mode hybride" msgstr "Hybridmodus" -#: src/translate.c:250 +#: glade/xcfa.glade:7921 msgid "Fichier de correction" msgstr "Korrekturdatei" -#: src/translate.c:251 +#: glade/xcfa.glade:7973 msgid "Compression maximum" msgstr "Maximale Kompression" -#: src/translate.c:252 +#: glade/xcfa.glade:8025 msgid "Signature MD5" msgstr "MD5-Signatur" -#: src/translate.c:253 +#: glade/xcfa.glade:8077 msgid "Extra encode processing" msgstr "Extra-Kodierungs-Verarbeitung" -#: src/translate.c:254 +#: glade/xcfa.glade:8120 msgid " WavPack (fichier wv): " msgstr " Wavpack (wv-Datei): " -#: src/translate.c:256 +#: glade/xcfa.glade:8221 msgid " Options WAVPACK " msgstr " WAVPACK-Optionen " -#: src/translate.c:257 +#: glade/xcfa.glade:8282 msgid "Wiki " msgstr "Wiki " -#: src/translate.c:259 +#: glade/xcfa.glade:8366 msgid " Web Wavpack " msgstr " Wavpack im Web " -#: src/translate.c:263 -msgid "" -" Options experts, definies par l'utilisateur - wavpack (wav -> wv) " +#: glade/xcfa.glade:8495 +msgid " Experts options defined by the user - wavpack (wav -> wv) " msgstr " Benutzerdefinierte Experten-Optionen - wavpack (wav > wv) " -#: src/translate.c:264 +#: glade/xcfa.glade:8515 msgid " Wavpack " msgstr " Wavpack " -#: src/translate.c:265 +#: glade/xcfa.glade:8579 msgid " MusePack (fichier mpc): " msgstr " Musepack (mpc-Datei): " -#: src/translate.c:267 +#: glade/xcfa.glade:8680 msgid " Options MUSEPACK " msgstr " MUSEPACK-Optionen " -#: src/translate.c:270 +#: glade/xcfa.glade:8825 msgid " Web Musepack " msgstr " Musepack im Web " -#: src/translate.c:274 -msgid "" -" Options experts, definies par l'utilisateur - musepack (wav -> mpc) " +#: glade/xcfa.glade:8954 +msgid " Experts options defined by the user- musepack (wav -> mpc) " msgstr " Benutzerdefinierte Experten-Optionen - musepack (wav > mpc) " -#: src/translate.c:275 +#: glade/xcfa.glade:8974 msgid " Musepack " msgstr " Musepack " -#: src/translate.c:276 -msgid " Qualite VBR / Debit ABR" -msgstr " VBR-Qualität / ABR-Bitrate" - -#: src/translate.c:277 -msgid " VBR / ABR" -msgstr " VBR / ABR" - -#: src/translate.c:278 -msgid " Conteneur" -msgstr " Container" +#: glade/xcfa.glade:9016 +msgid "Conteneur" +msgstr "Container" + +#: glade/xcfa.glade:9027 +msgid "VBR / ABR" +msgstr "VBR / ABR" + +#: glade/xcfa.glade:9038 +msgid "Qualite VBR / Debit ABR" +msgstr "VBR-Qualität / ABR-Bitrate" -#: src/translate.c:279 +#: glade/xcfa.glade:9112 msgid " Faac (fichier .m4a): " msgstr " Faac (m4a-Datei): " -#: src/translate.c:281 +#: glade/xcfa.glade:9213 msgid " Options FAAC " msgstr " Faac-Optionen " -#: src/translate.c:282 src/translate.c:296 +#: glade/xcfa.glade:9274 glade/xcfa.glade:9835 msgid "Site officiel " msgstr "Offizielle Seite " -#: src/translate.c:283 src/translate.c:297 +#: glade/xcfa.glade:9330 glade/xcfa.glade:9891 msgid "Web Info " msgstr "Infos im Web" -#: src/translate.c:285 +#: glade/xcfa.glade:9415 msgid " Web Faac " msgstr " Faac im Web " -#: src/translate.c:289 -msgid "" -" Options experts, definies par l'utilisateur - faac (wav -> m4a) " +#: glade/xcfa.glade:9544 +msgid " Experts options defined by the user - faac (wav -> m4a) " msgstr " Benutzerdefinierte Experten-Optionen - faac (wav > m4a) " -#: src/translate.c:290 +#: glade/xcfa.glade:9564 msgid " Faac " msgstr " Faac " -#: src/translate.c:291 -msgid " Stereo: Qualite en kbit/s" -msgstr " Stereo (Qualität in kbit/s)" - -#: src/translate.c:292 -msgid " Mono: Qualite en kbit/s" -msgstr " Mono (Qualität in kbit/s)" +#: glade/xcfa.glade:9606 +msgid "Mono: Qualite en kbit/s" +msgstr "Mono (Qualität in kbit/s)" + +#: glade/xcfa.glade:9617 +msgid "Stereo: Qualite en kbit/s" +msgstr "Stereo (Qualität in kbit/s)" -#: src/translate.c:293 +#: glade/xcfa.glade:9673 msgid " AacplusEnc (fichier .aac): " msgstr " AacplusEnc (aac-Datei): " -#: src/translate.c:295 +#: glade/xcfa.glade:9774 msgid " Options AacPlusEnc " msgstr " AacPlusEnc-Optionen " -#: src/translate.c:299 +#: glade/xcfa.glade:9976 msgid " Web AacPlusEnc " msgstr " AacPlusEnc im Web " -#: src/translate.c:300 +#: glade/xcfa.glade:10021 msgid " AacplusEnc " msgstr " AacplusEnc " -#: src/translate.c:301 +#: glade/xcfa.glade:10051 msgid "Artiste" msgstr "Interpret" -#: src/translate.c:302 src/translate.c:330 +#: glade/xcfa.glade:10070 glade/xcfa_win_treeview.glade:95 msgid "Titre" msgstr "Titel" -#: src/translate.c:303 +#: glade/xcfa.glade:10089 msgid "Album" msgstr "Album" -#: src/translate.c:304 +#: glade/xcfa.glade:10108 msgid "Numero" msgstr "Nummer" -#: src/translate.c:305 +#: glade/xcfa.glade:10127 msgid "Genre" msgstr "Genre" -#: src/translate.c:306 +#: glade/xcfa.glade:10146 msgid "Annee" msgstr "Jahr" -#: src/translate.c:307 +#: glade/xcfa.glade:10165 msgid "Commentaire" msgstr "Kommentar" -#: src/translate.c:308 +#: glade/xcfa.glade:10190 msgid " Exportation de " msgstr " Export von " -#: src/translate.c:310 +#: glade/xcfa.glade:10226 msgid " Preferences " msgstr " Einstellungen " -#: src/translate.c:311 +#: glade/xcfa.glade:10289 msgid "SCAN" msgstr "SCAN" -#: src/translate.c:312 +#: glade/xcfa.glade:10303 msgid " Installation " msgstr " Installation " -#: src/translate.c:313 -msgid " Votre systeme utilise ... " +#: glade/xcfa.glade:10338 +msgid " Your system use ... " msgstr " Ihr System benutzt... " -#: src/translate.c:314 +#: glade/xcfa.glade:10375 msgid "" "\n" -"Pour installer les programmes externes requis,\n" -"veuillez utiliser l'installateur de votre distribution Gnu/Linux.\n" +"To install the required external programs\n" +"Please use the installer to your distribution Gnu / Linux.\n" msgstr "" "\n" "So installieren Sie die benötigten externen Programme:\n" "Bitte verwenden Sie das Installationsprogramm Ihrer GNU-/Linux-Distribution." "\n" -#: src/translate.c:315 +#: glade/xcfa.glade:10393 msgid "" "Le programme XCFA_INSTALL_ALL ecrit en Perl vous sera utile en ligne de " "commande pour une installation des programmes complementaire." @@ -2434,19 +2348,19 @@ "Das Programm XCFA_INSTALL_ALL in Perl geschrieben von Nutzen sein wird auf " "der Kommandozeile für die Installation von Zusatzprogrammen" -#: src/translate.c:316 +#: glade/xcfa.glade:10419 msgid " Informations " msgstr " Informationen " -#: src/translate.c:317 -msgid " Application externes " -msgstr " Externe Programme " +#: glade/xcfa.glade:10443 +msgid " External application " +msgstr " External application " -#: src/translate.c:318 src/translate.c:321 +#: glade/xcfa.glade:10514 glade/xcfa.glade:10618 msgid "parametres:" msgstr "Parameter:" -#: src/translate.c:319 +#: glade/xcfa.glade:10527 msgid "" "\n" " konqueror : newTab\n" @@ -2456,171 +2370,47 @@ " konqueror : newTab\n" " iceweasel : -new-window -new-tab \n" -#: src/translate.c:320 +#: glade/xcfa.glade:10548 msgid "Navigateur" msgstr "Browser" -#: src/translate.c:322 +#: glade/xcfa.glade:10648 msgid "Lecteurs audio" msgstr "Audio-Player" -#: src/translate.c:323 -msgid " Navigateurs / Lecteurs audio " -msgstr " Browser / Audio-Player" +#: glade/xcfa.glade:10669 +msgid "  Browsers / Audio Players " +msgstr "Browser / Audio-Wiedergabe" -#: src/translate.c:324 +#: glade/xcfa.glade:10692 msgid " Applications externes " msgstr " Externe Programme " -#: src/translate.c:325 -msgid "Scan en cours ..." -msgstr "Scan in progress ..." - -#: src/translate.c:326 -msgid "Scan du support en cours ..." -msgstr "Scan der aktuellen Unterstützung ..." - -#: src/translate.c:327 -msgid "Detail extraction mode expert" -msgstr "Detail Retrieval Experten-Modus" - -#: src/translate.c:328 -msgid "Modification des champs" -msgstr "Einstellungen für Felder" - -#: src/translate.c:329 -msgid "" -"\n" -"Modification des champs\n" -msgstr "" -"\n" -"Einstellungen für Felder\n" - -#: src/translate.c:337 src/translate.c:356 src/translate.c:377 -#: src/translate.c:389 src/translate.c:400 src/translate.c:408 -msgid " Visibilite " -msgstr " Sichtbar " - -#: src/translate.c:338 src/translate.c:357 src/translate.c:378 -#: src/translate.c:390 src/translate.c:401 src/translate.c:409 -msgid "Nom a gauche" -msgstr "Name links" - -#: src/translate.c:339 src/translate.c:358 src/translate.c:379 -#: src/translate.c:391 src/translate.c:402 src/translate.c:410 -msgid "Nom au centre" -msgstr "Name zentriert" - -#: src/translate.c:340 src/translate.c:359 src/translate.c:380 -#: src/translate.c:392 src/translate.c:403 src/translate.c:411 -msgid "Nom a droite" -msgstr "Name rechts" - -#: src/translate.c:341 -msgid "DVD" -msgstr "DVD" - -#: src/translate.c:346 src/translate.c:367 -msgid "Wavpack" -msgstr "Wavpack" - -#: src/translate.c:350 src/translate.c:371 -msgid "Musepack" -msgstr "Musepack" - -#: src/translate.c:360 -msgid "CD" -msgstr "CD" - -#: src/translate.c:375 -msgid "Replaygain" -msgstr "Replaygain" - -#: src/translate.c:381 -msgid "CONVERSIONS" -msgstr "Konvertierungen" - -#: src/translate.c:382 -msgid "Hertz" -msgstr "Hertz" - -#: src/translate.c:383 -msgid "New Hertz" -msgstr "Hertz neu" - -#: src/translate.c:384 -msgid "Voie" -msgstr "Voice" - -#: src/translate.c:385 -msgid "New Voie" -msgstr "Neu Voice" - -#: src/translate.c:386 -msgid "Bits" -msgstr "Bits" - -#: src/translate.c:387 -msgid "New Bits" -msgstr "Neue Bits" - -#: src/translate.c:393 -msgid "WAV" -msgstr "WAV" - -#: src/translate.c:396 -msgid "New Bitrate" -msgstr "Neue Bitrate" - -#: src/translate.c:397 -msgid "Size" -msgstr "Dauer" - -#: src/translate.c:404 -msgid "MP3-OGG" -msgstr "MP3-OGG" - -#: src/translate.c:412 -msgid "TAGS" -msgstr "TAGS" - -#: src/translate.c:413 -msgid "Selection globale" -msgstr "Alles auswählen" - -#: src/translate.c:414 -msgid "Deselection globale" -msgstr "Alles abwählen" - -#: src/translate.c:415 -msgid "Retour" -msgstr "Zurück" - -#: src/translate.c:416 +#: glade/xcfa_win_about.glade:7 msgid "About X Convert File Audio" msgstr "Über X Convert File Audio" -#: src/translate.c:417 +#: glade/xcfa_win_about.glade:103 msgid "Author" msgstr "Autor" -#: src/translate.c:418 +#: glade/xcfa_win_about.glade:139 msgid "Licence" msgstr "Licence" -#: src/translate.c:419 +#: glade/xcfa_win_about.glade:163 msgid " Informations " msgstr " Informationen " -#: src/translate.c:420 +#: glade/xcfa_win_about.glade:198 msgid " Machine " msgstr " Computer " -#: src/translate.c:421 +#: glade/xcfa_win_about.glade:333 msgid "Ingenieurs du son\n" msgstr "Toningenieur\n" -#: src/translate.c:422 +#: glade/xcfa_win_about.glade:350 msgid "" "\n" "Graphisme\n" @@ -2628,7 +2418,7 @@ "\n" "Graphisme\n" -#: src/translate.c:423 +#: glade/xcfa_win_about.glade:370 msgid "" "Traduction Anglaise\n" "\n" @@ -2638,7 +2428,7 @@ "\n" "\n" -#: src/translate.c:424 +#: glade/xcfa_win_about.glade:391 msgid "" "\n" "Traduction Allemande" @@ -2646,7 +2436,7 @@ "\n" "Traduction Allemande" -#: src/translate.c:425 +#: glade/xcfa_win_about.glade:628 msgid "" "\n" "Codeur Xcfa" @@ -2654,7 +2444,7 @@ "\n" "Xcfa-Programmierung " -#: src/translate.c:426 +#: glade/xcfa_win_about.glade:665 msgid "" "\n" "ElementSpeak pour Xcfa " @@ -2662,7 +2452,7 @@ "\n" "ElementSpeak für Xcfa " -#: src/translate.c:427 +#: glade/xcfa_win_about.glade:702 msgid "" "\n" "Codeur pages Web" @@ -2670,7 +2460,7 @@ "\n" "Webseitengestaltung" -#: src/translate.c:428 +#: glade/xcfa_win_about.glade:739 msgid "" "\n" "Traduction Italienne" @@ -2678,7 +2468,7 @@ "\n" "Italienische Übersetzung" -#: src/translate.c:429 +#: glade/xcfa_win_about.glade:800 msgid "" "\n" "\n" @@ -2688,51 +2478,43 @@ "\n" "Webseiten-Empfehlungen\n" -#: src/translate.c:430 +#: glade/xcfa_win_about.glade:1123 msgid "Linux On The Root" msgstr "Linux On The Root" -#: src/translate.c:431 +#: glade/xcfa_win_about.glade:1180 msgid "Frugalware" msgstr "Frugalware" -#: src/translate.c:432 +#: glade/xcfa_win_about.glade:1237 msgid "Road2Mayotte" msgstr "Road2Mayotte" -#: src/translate.c:433 +#: glade/xcfa_win_about.glade:1294 msgid "La Linuxerie" msgstr "La Linuxerie" -#: src/translate.c:434 -msgid "Audioptimisation by Dzef" -msgstr "Audioptimisation von Dzef" - -#: src/translate.c:435 +#: glade/xcfa_win_about.glade:1351 msgid "Tuxfamily" msgstr "Tuxfamily" -#: src/translate.c:436 +#: glade/xcfa_win_about.glade:1408 msgid "Framasoft" msgstr "Framasoft" -#: src/translate.c:437 +#: glade/xcfa_win_about.glade:1465 msgid "Ekd (EnKoDeur-Mixeur)" msgstr "Ekd (EnKoDeur-Mixeur)" -#: src/translate.c:438 -msgid "Bishop's page" -msgstr "Bishops Seite" +#: glade/xcfa_win_about.glade:1544 +msgid "Debian Multimedia" +msgstr "Debian Multimedia" -#: src/translate.c:439 +#: glade/xcfa_win_about.glade:1598 msgid "Je suis libre" msgstr "Je suis libr" -#: src/translate.c:440 -msgid "Debian Multimedia" -msgstr "Debian Multimedia" - -#: src/translate.c:441 +#: glade/xcfa_win_about.glade:1705 msgid "" "\n" "Forum\n" @@ -2740,19 +2522,15 @@ "\n" "Foren\n" -#: src/translate.c:442 -msgid "XCFA Vorstellung " -msgstr "XCFA Vorstellung " +#: glade/xcfa_win_about.glade:1825 +msgid "Forum Xcfa" +msgstr "Xcfa-Forum" -#: src/translate.c:443 +#: glade/xcfa_win_about.glade:1879 msgid "XCFA LinuxForen.de" msgstr "XCFA LinuxForen.de" -#: src/translate.c:444 -msgid "Forum Xcfa" -msgstr "Xcfa-Forum" - -#: src/translate.c:445 +#: glade/xcfa_win_about.glade:1929 msgid "" "\n" "Documentation\n" @@ -2760,133 +2538,217 @@ "\n" "Dokumentation\n" -#: src/translate.c:446 +#: glade/xcfa_win_about.glade:2164 msgid "Wiki Xcfa par Shankarius" msgstr "Xcfa-Wiki von Shankarius" -#: src/translate.c:447 +#: glade/xcfa_win_about.glade:2219 msgid "Doc Xcfa par Patachon" msgstr "Xcfa-Anleitung von Patachon" -#: src/translate.c:448 +#: glade/xcfa_win_about.glade:2276 msgid "Ogg Vorbis explique par Shankarius" msgstr "Ogg Vorbis erklärt von Shankarius" -#: src/translate.c:449 +#: glade/xcfa_win_about.glade:2333 msgid "La normalisation expliquee par Dzef" msgstr "Die Normalisierung erklärt von Dzef" -#: src/translate.c:450 +#: glade/xcfa_win_about.glade:2390 msgid "Xcfa sur Linux On The Root" msgstr "Xcfa auf Linux On The Root" -#: src/translate.c:451 +#: glade/xcfa_win_about.glade:2433 msgid " Contributions " msgstr " Beiträge" -#: src/translate.c:452 +#: glade/xcfa_win_about.glade:2461 msgid " License " msgstr " Lizenz " -#: src/translate.c:453 +#: glade/xcfa_win_about.glade:2482 msgid "OK" msgstr "OK" -#: src/web.c:173 src/web.c:234 -msgid "PAS de navigateur present" -msgstr "Es ist kein Internet-Browser installiert" - -#: src/web.c:174 -msgid "L'acces au web est impossible car aucun navigateur" -msgstr "Ein Zugriff auf das Web ist nicht möglich, da ein Webbrowser" - -#: src/web.c:176 -msgid "n'est present dans votre configuration." -msgstr "nicht in Ihrer Konfiguration vorhanden ist." - -#: src/web.c:178 -msgid "Veuillez installez un navigateur." -msgstr "Installieren Sie bitte einen Internet-Browser." - -#: src/web.c:188 -msgid "Vous devez ouvrir l'acces internet" -msgstr "Sie müssen einen Internet-Zugang einstellen" - -#: src/web.c:236 -msgid " L'acces au web est impossible car aucun navigateur" -msgstr " Ein Zugriff auf das Web ist nicht möglich, da ein Webbrowser" - -#: src/web.c:238 -msgid " n'est present dans votre configuration." -msgstr " nicht in Ihrer Konfiguration vorhanden ist." - -#: src/web.c:240 -msgid " Veuillez installez un navigateur." -msgstr " Installieren Sie bitte einen Internet-Browser." +#: glade/xcfa_win_scan.glade:9 +msgid "Scan en cours ..." +msgstr "Scan in progress ..." -#: src/web.c:250 -msgid "L'application est absente." -msgstr "Die Anwendung ist nicht vorhanden." +#: glade/xcfa_win_scan.glade:77 +msgid "Scan du support en cours ..." +msgstr "Scan der aktuellen Unterstützung ..." -#: src/web.c:251 -msgid "Veuillez installer : " -msgstr "Bitte installieren : " +#: glade/xcfa_win_scan.glade:128 +msgid "Detail extraction mode expert" +msgstr "Detail Retrieval Experten-Modus" -#: src/win_about.c:130 -msgid " Xcfa sur le web" -msgstr " xcfa im Web " +#: glade/xcfa_win_treeview.glade:7 +msgid "Modification des champs" +msgstr "Einstellungen für Felder" -#: src/win_about.c:180 +#: glade/xcfa_win_treeview.glade:41 msgid "" "\n" -"Au tout debut:\n" -"\n" -"Serres Patrick, Hamann Regis, Fabien Gregis, @Dzef, @alteo_gange, \n" -"@Leonux, @zarer, @Shankarius, @bishop, @Ludo, @Patachonf,\n" -"... ;-)\n" -"\n" -"" +"Modification des champs\n" msgstr "" "\n" -"Zuerst:\n" -"\n" -"Serres Patrick, Hamann Regis, Fabien Gregis, @Dzef, @alteo_gange, \n" -"@Leonux, @zarer, @Shankarius, @bishop, @Ludo, @Patachonf,\n" -"... ;-)\n" -"\n" -"" +"Einstellungen für Felder\n" -#: src/win_scan.c:161 -msgid "Waiting ..." -msgstr "Warte ..." +#: glade/xcfa_win_treeview.glade:129 +msgid "Temps" +msgstr "Dauer" + +#: glade/xcfa_win_treeview.glade:163 +msgid "Choix" +msgstr "Auswahl" + +#: glade/xcfa_win_treeview.glade:197 glade/xcfa_win_treeview.glade:577 +#: glade/xcfa_win_treeview.glade:995 glade/xcfa_win_treeview.glade:1260 +#: glade/xcfa_win_treeview.glade:1508 glade/xcfa_win_treeview.glade:1706 +msgid "Nom" +msgstr "Name" + +#: glade/xcfa_win_treeview.glade:220 glade/xcfa_win_treeview.glade:600 +#: glade/xcfa_win_treeview.glade:1018 glade/xcfa_win_treeview.glade:1283 +#: glade/xcfa_win_treeview.glade:1531 glade/xcfa_win_treeview.glade:1732 +msgid " Visibilite " +msgstr " Sichtbar " + +#: glade/xcfa_win_treeview.glade:250 glade/xcfa_win_treeview.glade:630 +#: glade/xcfa_win_treeview.glade:1048 glade/xcfa_win_treeview.glade:1313 +#: glade/xcfa_win_treeview.glade:1562 glade/xcfa_win_treeview.glade:1763 +msgid "Nom a gauche" +msgstr "Name links" + +#: glade/xcfa_win_treeview.glade:267 glade/xcfa_win_treeview.glade:647 +#: glade/xcfa_win_treeview.glade:1065 glade/xcfa_win_treeview.glade:1330 +#: glade/xcfa_win_treeview.glade:1579 glade/xcfa_win_treeview.glade:1780 +msgid "Nom au centre" +msgstr "Name zentriert" + +#: glade/xcfa_win_treeview.glade:286 glade/xcfa_win_treeview.glade:666 +#: glade/xcfa_win_treeview.glade:1084 glade/xcfa_win_treeview.glade:1349 +#: glade/xcfa_win_treeview.glade:1598 glade/xcfa_win_treeview.glade:1799 +msgid "Nom a droite" +msgstr "Name rechts" + +#: glade/xcfa_win_treeview.glade:326 +msgid "DVD" +msgstr "DVD" + +#: glade/xcfa_win_treeview.glade:373 glade/xcfa_win_treeview.glade:791 +msgid "Wav" +msgstr "Wav" + +#: glade/xcfa_win_treeview.glade:390 glade/xcfa_win_treeview.glade:808 +msgid "Flac" +msgstr "Flac" + +#: glade/xcfa_win_treeview.glade:407 glade/xcfa_win_treeview.glade:825 +msgid "Ape" +msgstr "Ape" + +#: glade/xcfa_win_treeview.glade:424 glade/xcfa_win_treeview.glade:842 +msgid "Wavpack" +msgstr "Wavpack" + +#: glade/xcfa_win_treeview.glade:441 glade/xcfa_win_treeview.glade:859 +msgid "Ogg" +msgstr "Ogg" + +#: glade/xcfa_win_treeview.glade:458 glade/xcfa_win_treeview.glade:876 +msgid "M4a" +msgstr "M4a" + +#: glade/xcfa_win_treeview.glade:475 glade/xcfa_win_treeview.glade:893 +msgid "Aac" +msgstr "Aac" + +#: glade/xcfa_win_treeview.glade:492 glade/xcfa_win_treeview.glade:910 +msgid "Musepack" +msgstr "Musepack" + +#: glade/xcfa_win_treeview.glade:509 glade/xcfa_win_treeview.glade:927 +msgid "Mp3" +msgstr "Mp3" + +#: glade/xcfa_win_treeview.glade:526 +msgid "Num" +msgstr "Nr." + +#: glade/xcfa_win_treeview.glade:709 +msgid "CD" +msgstr "CD" + +#: glade/xcfa_win_treeview.glade:978 +msgid "Replaygain" +msgstr "Replaygain" -#~ msgid "Quantification" -#~ msgstr "Quantisierung" +#: glade/xcfa_win_treeview.glade:1127 +msgid "CONVERSIONS" +msgstr "Konvertierungen" -#~ msgid "Voie" -#~ msgstr "Voice" +#: glade/xcfa_win_treeview.glade:1158 +msgid "Hertz" +msgstr "Hertz" -#~ msgid " Frequence - Hertz " -#~ msgstr " Frequenz - Hertz " +#: glade/xcfa_win_treeview.glade:1175 +msgid "New Hertz" +msgstr "Hertz neu" -#~ msgid "Cellule" -#~ msgstr "Zelle" +#: glade/xcfa_win_treeview.glade:1192 +msgid "Voie" +msgstr "Voice" -#~ msgid "Colonne" -#~ msgstr "Spalte" +#: glade/xcfa_win_treeview.glade:1209 +msgid "New Voie" +msgstr "Neu Voice" -#~ msgid " Cacher Xcfa " -#~ msgstr " Verstecken Xcfa " +#: glade/xcfa_win_treeview.glade:1226 +msgid "Bits" +msgstr "Bits" + +#: glade/xcfa_win_treeview.glade:1243 +msgid "New Bits" +msgstr "Neue Bits" + +#: glade/xcfa_win_treeview.glade:1392 +msgid "WAV" +msgstr "WAV" + +#: glade/xcfa_win_treeview.glade:1440 +msgid "Bitrate" +msgstr "Bitrate" + +#: glade/xcfa_win_treeview.glade:1457 +msgid "New Bitrate" +msgstr "Neue Bitrate" + +#: glade/xcfa_win_treeview.glade:1641 +msgid "MP3-OGG" +msgstr "MP3-OGG" + +#: glade/xcfa_win_treeview.glade:1842 +msgid "TAGS" +msgstr "TAGS" + +#: glade/xcfa_win_treeview.glade:1894 +msgid "Selection globale" +msgstr "Alles auswählen" + +#: glade/xcfa_win_treeview.glade:1948 +msgid "Deselection globale" +msgstr "Alles abwählen" + +#: glade/xcfa_win_treeview.glade:2009 +msgid "Retour" +msgstr "Zurück" -#~ msgid " Montrer Xcfa " -#~ msgstr " Show Xcfa " +#~ msgid "Audioptimisation by Dzef" +#~ msgstr "Audioptimisation von Dzef" -#~ msgid " Quitter Xcfa " -#~ msgstr " Beenden Xcfa " +#~ msgid "Bishop's page" +#~ msgstr "Bishops Seite" -#~ msgid "" -#~ "XCFA\n" -#~ "Programme pour convertir les fichiers audio." -#~ msgstr "" -#~ "XCFA\n" -#~ "Programm zur Konvertierung von Audio-Dateien." +#~ msgid "XCFA Vorstellung " +#~ msgstr "XCFA Vorstellung " Binary files /tmp/U9mREQ24T4/xcfa-4.3.8/po/en_GB.gmo and /tmp/9PqOMEw8oW/xcfa-5.0.1/po/en_GB.gmo differ diff -Nru xcfa-4.3.8/po/en_GB.po xcfa-5.0.1/po/en_GB.po --- xcfa-4.3.8/po/en_GB.po 2014-01-31 12:25:57.000000000 +0000 +++ xcfa-5.0.1/po/en_GB.po 2015-03-01 17:00:50.000000000 +0000 @@ -5,157 +5,102 @@ # msgid "" msgstr "" -"Project-Id-Version: xcfa 4.2.8\n" +"Project-Id-Version: xcfa 5.0.0\n" "Report-Msgid-Bugs-To: xcfa@tuxfamily.org\n" -"POT-Creation-Date: 2014-01-31 13:25+0100\n" -"PO-Revision-Date: 2010-08-21 18:45+0100\n" +"POT-Creation-Date: 2015-03-01 18:00+0100\n" +"PO-Revision-Date: 2015-02-06 15:48+0100\n" "Last-Translator: Gerry Butler \n" "Language-Team: English \n" -"Language: en\n" +"Language: en_GB\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" +"X-Generator: Poedit 1.7.3\n" -#: src/cd_audio.c:812 src/dvd.c:680 src/dvd.c:1324 -msgid "MPLAYER deja en action" +#: src/cd_audio.c:814 src/dvd.c:686 src/dvd.c:1345 +msgid "MPLAYER already in action" msgstr "MPLAYER already in action" -#: src/cd_audio.c:813 src/dvd.c:681 src/dvd.c:1325 -msgid "MPLAYER est deja utilise !!" +#: src/cd_audio.c:815 src/dvd.c:687 src/dvd.c:1346 +msgid "MPLAYER is already in use !!" msgstr "MPLAYER is already in use !!" -#: src/cd_audio.c:1224 src/cd_audio.c:1230 src/dvd.c:867 src/file.c:2827 -msgid "(Click Droit = Menu) / En attente de selection." +#: src/cd_audio.c:1227 src/cd_audio.c:1233 src/file.c:2837 +msgid "(Right click = Menu) / Waiting for selection." msgstr "(Right click = Menu) / Waiting for selection." -#: src/cd_audio.c:1227 src/file.c:2824 -msgid "Le programme externe d'extraction est absent." -msgstr "The external ripping program is missing" - -#: src/cd_audio.c:1233 src/file.c:2830 -msgid "(Click Droit = Menu) / En attente de selection. Le fichier existe." -msgstr "(Right click = Menu) / Waiting for Selection. File exists." +#: src/cd_audio.c:1230 +msgid "The external ripping program is missing." +msgstr "The external ripping program is missing." + +#: src/cd_audio.c:1236 +msgid "(Right click = Menu) / Waiting for Selection. File exists.." +msgstr "(Right click = Menu) / Waiting for Selection. File exists.." + +#: src/cd_audio.c:1239 +msgid "(Right click = Menu) / Selected files." +msgstr "(Right click = Menu) / Selected files." -#: src/cd_audio.c:1236 src/file.c:2833 -msgid "(Click Droit = Menu) / En selection." -msgstr "(Right click = Menu) / Selected files" - -#: src/cd_audio.c:1239 src/file.c:2839 -msgid "(Click Droit = Menu) / Selection avec options expert." +#: src/cd_audio.c:1242 src/file.c:2849 +msgid "(Right click = Menu) / Selection - expert mode." msgstr "(Right click = Menu) / Selection - expert mode." -#: src/cd_audio.c:1242 src/file.c:2836 -msgid "(Click Droit = Menu) / En selection. Le fichier existe." +#: src/cd_audio.c:1245 src/file.c:2846 +msgid "(Right click = Menu) / Selected files. File exists." msgstr "(Right click = Menu) / Selected files. File exists." -#: src/cd_audio.c:1245 src/file.c:2842 -msgid "" -"(Click Droit = Menu) / Selection avec options expert. Le fichier existe." +#: src/cd_audio.c:1248 src/file.c:2852 +msgid "(Right click = Menu) / Selection - expert mode. File exists." msgstr "(Right click = Menu) / Selection - expert mode. File exists." -#: src/cd_audio.c:1254 +#: src/cd_audio.c:1257 msgid "" -"(Click Droit = Menu) / Possibilite d'ajustement INDIVIDUEL ou COLLECTIF " -"maximal du volume" +"(Right click = Menu) / Possibilities for individual adaptation or maximum " +"collection volume" msgstr "" "(Right click = Menu) / Possibilities for individual adaptation or maximum " "collection volume" -#: src/cd_audio.c:1259 -msgid "(Click Droit = Menu) / Ajustement INDIVIDUEL maximal du volume" -msgstr "(Click Droit = Menu) / INDIVIDUAL maximum volume adjustment" - #: src/cd_audio.c:1262 -msgid "(Click Droit = Menu) / Ajustement COLLECTIF maximal du volume" -msgstr "(Click Droit = Menu) / COLLECTIVE maximum volume adjustment" - -#: src/cd_audio.c:1502 src/dvd.c:1099 src/file.c:3137 src/translate.c:331 -#: src/translate.c:342 src/translate.c:361 -msgid "Play" -msgstr "Play" - -#: src/cd_audio.c:1543 src/file.c:3202 src/translate.c:343 src/translate.c:364 -msgid "Wav" -msgstr "Wav" - -#: src/cd_audio.c:1564 src/file.c:3221 src/translate.c:344 src/translate.c:365 -msgid "Flac" -msgstr "Flac" - -#: src/cd_audio.c:1584 src/file.c:3240 src/translate.c:345 src/translate.c:366 -msgid "Ape" -msgstr "Ape" - -#: src/cd_audio.c:1604 src/file.c:3259 -msgid "WavP" -msgstr "WavP" - -#: src/cd_audio.c:1624 src/file.c:3278 src/translate.c:347 src/translate.c:368 -msgid "Ogg" -msgstr "Ogg" - -#: src/cd_audio.c:1645 src/file.c:3297 src/translate.c:348 src/translate.c:369 -msgid "M4a" -msgstr "M4a" +msgid "(Right click = Menu) / INDIVIDUAL maximum volume adjustment" +msgstr "(Right click = Menu) / INDIVIDUAL maximum volume adjustment" -#: src/cd_audio.c:1666 src/file.c:3316 src/translate.c:349 src/translate.c:370 -msgid "Aac" -msgstr "Aac" - -#: src/cd_audio.c:1686 src/file.c:3335 -msgid "Mpc" -msgstr "Mpc" - -#: src/cd_audio.c:1706 src/file.c:3354 src/translate.c:351 src/translate.c:372 -msgid "Mp3" -msgstr "Mp3" - -#: src/cd_audio.c:1727 src/translate.c:352 -msgid "Num" -msgstr "Num" - -#: src/cd_audio.c:1742 src/translate.c:353 src/translate.c:373 -#: src/translate.c:398 src/translate.c:406 -msgid "Time" -msgstr "Time" - -#: src/cd_audio.c:1757 src/dvd.c:1167 src/file.c:3390 src/translate.c:335 -#: src/translate.c:354 src/translate.c:374 +#: src/cd_audio.c:1265 +msgid "(Right click = Menu) / COLLECTIVE maximum volume adjustment" +msgstr "(Right click = Menu) / COLLECTIVE maximum volume adjustment" + +#: src/cd_audio.c:1764 src/dvd.c:1187 src/file.c:3403 +#: glade/xcfa_win_treeview.glade:180 glade/xcfa_win_treeview.glade:560 +#: glade/xcfa_win_treeview.glade:961 msgid "Normalise" msgstr "Normalise" -#: src/cd_audio.c:1782 src/dvd.c:1187 src/file.c:3432 src/file_mp3ogg.c:958 -#: src/file_tags.c:1191 src/file_wav.c:824 src/prg_init.c:609 -#: src/translate.c:336 src/translate.c:355 src/translate.c:376 -#: src/translate.c:388 src/translate.c:399 src/translate.c:407 -msgid "Nom" +#: src/cd_audio.c:1789 src/dvd.c:1207 src/file.c:3445 src/file_mp3ogg.c:964 +#: src/file_tags.c:1253 src/file_wav.c:830 src/prg_init.c:609 +msgid "Name" msgstr "Name" -#: src/cd_audio.c:2511 -msgid " Parametrage CDDB: [ Nom du serveur ]" +#: src/cd_audio.c:2517 +msgid " Setting up CDDB: [ Server name ]" msgstr " Setting up CDDB: [ Server name ]" -#: src/cd_audio.c:2520 -msgid " Parametrage PROXY: [ serveur ] [ port ]" +#: src/cd_audio.c:2526 +msgid " Proxy settings: [ server ] [ port ] " msgstr " Proxy settings: [ server ] [ port ] " -#: src/cd_audio.c:2530 src/translate.c:95 -msgid " Serveur " +#: src/cd_audio.c:2536 glade/xcfa.glade:1842 +msgid " Server " msgstr " Server " #: src/cd_audio_extract.c:673 #, c-format -msgid "" -"[Erreur du segment numero: %d]\n" -"%d) Lecture PASS 1/2\n" -msgstr "" -"[Error on segment #%d]\n" -"%d) Playing PASS 1/2\n" +msgid "[Error on segment #%d] %d) Playing PASS 1/2\n" +msgstr "[Error on segment #%d] %d) Playing PASS 1/2\n" #: src/cd_audio_extract.c:680 #, c-format msgid "" -"--> Deja %d fois 2 lectures du segment %d!\n" +"--> Segment %d already read two %d times!\n" " Abandon :/\n" msgstr "" "--> Segment %d already read two %d times!\n" @@ -163,50 +108,50 @@ #: src/cd_audio_extract.c:700 #, c-format -msgid "%d) Lecture PASS 2/2\n" +msgid "%d) Read PASS 2/2\n" msgstr "%d) Read PASS 2/2\n" #: src/cd_audio_extract.c:780 #, c-format msgid "" "\n" -"[Piste: %d]\n" +"[Track: %d]\n" msgstr "" "\n" "[Track: %d]\n" #: src/cd_audio_extract.c:784 -msgid "Extraction mode expert PASS 1/2\n" +msgid "Ripping expert mode PASS 1/2\n" msgstr "Ripping expert mode PASS 1/2\n" #: src/cd_audio_extract.c:795 -msgid "Extraction mode expert PASS 2/2\n" +msgid "Ripping expert mode PASS 2/2\n" msgstr "Ripping expert mode PASS 2/2\n" #: src/cd_audio_extract.c:803 -msgid "Controle du contenu des fichiers extraits\n" +msgid "Control the content of the extracted files\n" msgstr "Control the content of the extracted files\n" #: src/cd_audio_extract.c:1710 src/cd_audio_extract.c:1712 msgid "XCFA: Extraction CD" -msgstr "XCFA: CD Ripping" +msgstr "XCFA: Extraction CD" #: src/cd_audio_extract.c:1710 src/dvd_extract.c:412 src/file_action.c:183 #: src/file_mp3ogg_conv.c:329 src/file_wav_conv.c:343 msgid "Ok" -msgstr "Okay" +msgstr "Ok" #: src/cd_audio_extract.c:1712 src/dvd_extract.c:414 src/file_action.c:185 #: src/file_mp3ogg_conv.c:331 src/file_wav_conv.c:345 -msgid "Arret par l'utilisateur" -msgstr "Stopped by user" +msgid "Stop by user" +msgstr "Stop by user" #: src/cd_audio_extract.c:1983 -msgid "Nom de fichier unique absent" +msgid "File name not found" msgstr "File name not found" #: src/cd_audio_extract.c:1984 -msgid "Veuillez saisir un nom pour le fichier unique" +msgid "Please enter a file name" msgstr "Please enter a file name" #: src/cd_audio_toc.c:156 @@ -247,18 +192,18 @@ #: src/cd_audio_toc.c:189 msgid "Please, install packages [ cd-discid ]" -msgstr "Please, install package [ cd-discid ]" +msgstr "Please, install packages [ cd-discid ]" #: src/cd_audio_toc.c:203 -msgid "ERREUR datas proxy" +msgid "ERROR datas proxy" msgstr "ERROR datas proxy" #: src/cd_audio_toc.c:204 -msgid "Veuillez renseigner les champs du proxy" +msgid "Please complete all fields proxy" msgstr "Please complete all fields proxy" #: src/cd_curl.c:734 src/web.c:187 -msgid "La liaison internet est absente" +msgid "A web connection is missing" msgstr "A web connection is missing" #: src/cd_curl.c:1204 @@ -269,133 +214,127 @@ msgid "No Audio CD" msgstr "No Audio CD" -#: src/dvd.c:859 +#: src/dvd.c:877 msgid "" -"(Click Droit = Menu) / PEAK-ALBUM: Amplification maximale du volume pour un " -"groupe de fichiers en respectant les ecarts de niveau entre chacun d'eux." +"(Right click = Menu) / Maximum volume amplification of a group of files " +"keeping the level difference between each of them." msgstr "" "(Right click = Menu) / Maximum volume amplification of a group of files " -"keeping the level difference between each of them" +"keeping the level difference between each of them." -#: src/dvd.c:862 -msgid "" -"(Click Droit = Menu) / PEAK: Amplification maximale du volume pour chaque de " -"fichier." -msgstr "" -"(Right click = Menu) / PEAK: Maximum volume amplification for each file" +#: src/dvd.c:882 src/file.c:2882 +msgid "PEAK: Maximum volume amplification of each file." +msgstr "PEAK: Maximum volume amplification of each file." + +#: src/dvd.c:887 +msgid "(Right click = Menu) / ReplayGain: Waiting for selection." +msgstr "(Right click = Menu) / ReplayGain: Waiting for selection." -#: src/dvd.c:900 src/dvd.c:920 -msgid "En attente de selection. Un click activera la conversion vers 2 canaux." +#: src/dvd.c:920 src/dvd.c:940 +msgid "" +"Waiting for selection. A click will activate the conversion to 2 channels." msgstr "" "Waiting for selection. A click will activate the conversion to 2 channels." -#: src/dvd.c:912 -msgid "Conversion vers 2 canaux." +#: src/dvd.c:932 +msgid "Conversion to 2 channels." msgstr "Conversion to 2 channels." -#: src/dvd.c:924 +#: src/dvd.c:944 #, c-format -msgid "Conversion vers %s canaux." +msgid "Conversion to %s channels." msgstr "Conversion to %s channels." -#: src/dvd.c:929 +#: src/dvd.c:949 #, c-format msgid "" -"Conversion vers 2 canaux. Un second click activera la conversion vers %s " -"canaux." +"Conversion to 2 channels. A second click will activate the conversion to %s " +"channels." msgstr "" "Conversion to 2 channels. A second click will activate the conversion to %s " "channels." -#: src/dvd.c:944 -msgid "Musique en ecoute." +#: src/dvd.c:964 +msgid "Playing music." msgstr "Playing music." -#: src/dvd.c:947 -msgid "Musique en attente." +#: src/dvd.c:967 +msgid "Music paused." msgstr "Music paused." -#: src/dvd.c:962 +#: src/dvd.c:982 #, c-format msgid "Total selection%s: %d, 2ch: %d" msgstr "Total selection%s: %d, 2ch: %d" -#: src/dvd.c:963 +#: src/dvd.c:983 msgid "s" msgstr "s" -#: src/dvd.c:969 -msgid "Ce fichier ne peut etre extrait !" +#: src/dvd.c:989 +msgid "This file can not be ripped !" msgstr "This file can not be ripped !" -#: src/dvd.c:1087 -msgid "Titres" -msgstr "Titls" +#: src/dvd.c:1107 +msgid "Titles" +msgstr "Titles" -#: src/dvd.c:1111 src/file.c:3373 src/file_mp3ogg.c:943 src/file_tags.c:1175 -#: src/translate.c:332 -msgid "Temps" +#: src/dvd.c:1119 glade/xcfa_win_treeview.glade:112 +#: glade/xcfa_win_treeview.glade:356 glade/xcfa_win_treeview.glade:740 +msgid "Play" +msgstr "Play" + +#: src/dvd.c:1131 src/file.c:3386 src/file_mp3ogg.c:949 src/file_tags.c:1237 +#: glade/xcfa_win_treeview.glade:543 glade/xcfa_win_treeview.glade:944 +#: glade/xcfa_win_treeview.glade:1491 glade/xcfa_win_treeview.glade:1689 +msgid "Time" msgstr "Time" -#: src/dvd.c:1123 src/translate.c:333 +#: src/dvd.c:1143 glade/xcfa_win_treeview.glade:146 msgid "Format" msgstr "Format" -#: src/dvd.c:1135 src/translate.c:334 -msgid "Choix" +#: src/dvd.c:1155 +msgid "Choice" msgstr "Choice" -#: src/dvd.c:1249 -msgid "Fichier structure DVD" +#: src/dvd.c:1267 +msgid "DVD file structure" msgstr "DVD file structure" -#: src/dvd.c:1299 -msgid "Le DVD est absent du lecteur." +#: src/dvd.c:1320 +msgid "The DVD player is absent." msgstr "The DVD player is absent." -#: src/dvd.c:1335 -msgid "Scan ..." -msgstr "Scan ..." - -#: src/dvd.c:1385 -msgid "lsdvd est absent !" +#: src/dvd.c:1410 +msgid "lsdvd is missing !" msgstr "lsdvd is missing !" -#: src/dvd.c:1386 -msgid "Il faut installer le programme: lsdvd" +#: src/dvd.c:1411 +msgid "You must install the program: lsdvd" msgstr "You must install the program: lsdvd" #: src/dvd_extract.c:412 src/dvd_extract.c:414 -msgid "XCFA: Extraction DVD" +msgid "XCFA: DVD rip" msgstr "XCFA: DVD rip" -#: src/dvd_read.c:263 +#: src/dvd_read.c:226 #, c-format -msgid "Titre [%02d ** ]" +msgid "Title [%02d ** ]" msgstr "Title [%02d ** ]" -#: src/dvd_read.c:266 +#: src/dvd_read.c:227 #, c-format -msgid "Titre [%02d]" +msgid "Title [%02d]" msgstr "Title [%02d]" -#: src/dvd_read.c:310 -#, c-format -msgid "Fichier_complet_%02d_%s" -msgstr "Completed_file_%02d_%s" - -#: src/dvd_read.c:355 +#: src/dvd_read.c:252 #, c-format -msgid "Chapitre: [%02d]" +msgid "Chapter: [%02d]" msgstr "Chapter: [%02d]" -#: src/dvd_read.c:401 -#, c-format -msgid "Titre_%02d_Chapitre_%02d_audio_%02d_%s" -msgstr "Title_%02d_Chapter_%02d_audio_%02d_%s" - #: src/file_action.c:183 src/file_action.c:185 -msgid "XCFA: Traitement fichiers" +msgid "XCFA: Processing files" msgstr "XCFA: Processing files" #: src/file_analyze.c:731 @@ -404,145 +343,144 @@ #: src/file_analyze.c:732 msgid "" -"Veuillez installer checkmp3 ou mp3check pour\n" -"la prise en compte des fichiers mp3" +"Please install or checkmp3 mp3check for\n" +"consideration of mp3 files" msgstr "" "Please install or checkmp3 mp3check for\n" "consideration of mp3 files" -#: src/file.c:328 +#: src/file.c:327 #, c-format -msgid "Total fichiers: %d, Selections: %d" -msgstr "Total files: %d, Selected: %d" +msgid "Total files: %d, Selections: %d" +msgstr "Total files: %d, Selections: %d" -#: src/file.c:442 -msgid "CAPACITE DOSSIER TEMPORAIRE TROP FAIBLE" +#: src/file.c:441 +msgid "TEMPORARY CAPACITY TOO LOW" msgstr "TEMPORARY CAPACITY TOO LOW" -#: src/file.c:443 -msgid "Pas assez de place dans le dossier temporaire" +#: src/file.c:442 src/file.c:2875 +msgid "WARNING: Not enough space available in the temp folder." msgstr "WARNING: Not enough space available in the temp folder." -#: src/file.c:449 -msgid "Veuillez deselectionner des PeakGroup." +#: src/file.c:448 +msgid "Please deselect PeakGroup." msgstr "Please deselect PeakGroup." -#: src/file.c:1433 -msgid "Conversion(s) vers la source" +#: src/file.c:1431 +msgid "Conversion(s) to source" msgstr "Conversion(s) to source" -#: src/file.c:1434 -msgid "Choix d'une nouvelle destination" +#: src/file.c:1432 +msgid "Select a new destination" msgstr "Select a new destination" -#: src/file.c:1504 +#: src/file.c:1501 msgid "Select type: --" -msgstr "Select type: -" +msgstr "Select type: --" -#: src/file.c:1589 +#: src/file.c:1584 msgid "Peak/album" msgstr "Peak/album" -#: src/file.c:1590 +#: src/file.c:1585 msgid "Peak" msgstr "Peak" -#: src/file.c:1591 +#: src/file.c:1586 msgid "Mix (scan)Rms/album" msgstr "Mix (scan)Rms/album" -#: src/file.c:1592 +#: src/file.c:1587 msgid "Fix (scan)Rms" msgstr "Fix (scan)Rms" -#: src/file.c:2851 +#: src/file.c:2834 +msgid "The external ripping program is missing" +msgstr "The external ripping program is missing" + +#: src/file.c:2840 +msgid "(Right click = Menu) / Waiting for Selection. File exists." +msgstr "(Right click = Menu) / Waiting for Selection. File exists." + +#: src/file.c:2843 +msgid "(Right click = Menu) / Selected files" +msgstr "(Right click = Menu) / Selected files" + +#: src/file.c:2861 #, c-format -msgid "MAX FICHIERS ATTEINT = %d" +msgid "MAX FILES REACHED = %d" msgstr "MAX FILES REACHED = %d" -#: src/file.c:2861 -msgid "Normalise: En attente de selection." +#: src/file.c:2871 +msgid "Normalise: Waiting for selection." msgstr "Normalise: Waiting for selection." -#: src/file.c:2865 -msgid "ATTENTION: Pas assez de place dans le dossier temporaire." -msgstr "WARNING: Not enough space available in the temp folder." - -#: src/file.c:2868 +#: src/file.c:2878 msgid "" -"PEAK-ALBUM: Amplification maximale du volume pour un groupe de fichiers en " -"respectant les ecarts de niveau entre chacun d'eux." +"PEAK-ALBUM: Maximum volume amplification for a group of files according to " +"the deviations in level between them" msgstr "" "PEAK-ALBUM: Maximum volume amplification for a group of files according to " "the deviations in level between them" -#: src/file.c:2872 -msgid "PEAK: Amplification maximale du volume pour chaque de fichier." -msgstr "PEAK: Maximum volume amplification of each file." - -#: src/file.c:2875 +#: src/file.c:2885 msgid "" -"RMS-ALBUM: Ajustement du volume moyen pour un groupe de fichiers en " -"respectant les ecarts de niveau moyen entre chacun d'eux." +"RMS-ALBUM: Adjusting the average volume for a group of files according to " +"the average level of deviation between them." msgstr "" "RMS-ALBUM: Adjusting the average volume for a group of files according to " "the average level of deviation between them." -#: src/file.c:2878 -msgid "RMS: Ajustement du volume moyen de chaque de fichier." +#: src/file.c:2888 +msgid "RMS: Average volume amplification of each file." msgstr "RMS: Average volume amplification of each file." -#: src/file.c:2892 -msgid "(Click Droit = Menu) / ReplayGain: En attente de selection." -msgstr "(Click Droit = Menu) / ReplayGain: Waiting for selection." - -#: src/file.c:2895 -msgid "(Click Droit = Menu) / Mode piste." -msgstr "(Click Droit = Menu) / Track mode." - -#: src/file.c:2898 -msgid "(Click Droit = Menu) / Mode album." -msgstr "(Click Droit = Menu) / Album mode." - -#: src/file.c:2901 -msgid "(Click Droit = Menu) / Mode effacer." -msgstr "(Click Droit = Menu) / Erase mode." +#: src/file.c:2902 +msgid "(Right Click = Menu) / ReplayGain: Waiting for selection." +msgstr "(Right Click = Menu) / ReplayGain: Waiting for selection." + +#: src/file.c:2905 +msgid "(Right Click = Menu) / Track mode." +msgstr "(Right Click = Menu) / Track mode." + +#: src/file.c:2908 +msgid "(Right Click = Menu) / Album mode." +msgstr "(Right Click = Menu) / Album mode." + +#: src/file.c:2911 +msgid "(Right Click = Menu) / Erase mode." +msgstr "(Right Click = Menu) / Erase mode." -#: src/file.c:3013 +#: src/file.c:3026 msgid "" -"(Click Droit = Menu) / Cliquez ici pour envoyer ce fichier apres traitement " -"a la corbeille" +"(Click Droit = Menu) / Click here to send the processed file to the trash" msgstr "" "(Click Droit = Menu) / Click here to send the processed file to the trash" -#: src/file.c:3016 +#: src/file.c:3029 msgid "" -"(Click Droit = Menu) / Ce fichier sera dirige apres traitement vers la " -"corbeille" +"(Right Click = Menu) / This file will be sent to the trash after processing" msgstr "" "(Right Click = Menu) / This file will be sent to the trash after processing" -#: src/file.c:3150 src/file_trash.c:359 src/translate.c:362 +#: src/file.c:3163 src/file_trash.c:208 glade/xcfa_win_treeview.glade:757 msgid "Trash" msgstr "Trash" -#: src/file.c:3170 src/file_mp3ogg.c:883 src/file_tags.c:1160 -#: src/translate.c:363 src/translate.c:394 src/translate.c:405 +#: src/file.c:3183 src/file_mp3ogg.c:889 src/file_tags.c:1222 +#: glade/xcfa_win_treeview.glade:774 glade/xcfa_win_treeview.glade:1423 +#: glade/xcfa_win_treeview.glade:1672 msgid "Type" msgstr "Type" -#: src/file.c:3409 -msgid "ReplayGain" -msgstr "ReplayGain" - -#: src/file_conv.c:1187 src/file_mp3ogg_conv.c:336 -msgid "Erreur depuis MPLAYER !" +#: src/file_conv.c:1187 +msgid "Error since MPLAYER !" msgstr "Error since MPLAYER !" #: src/file_conv.c:1188 src/file_conv.c:1200 src/file_mp3ogg_conv.c:337 #: src/file_mp3ogg_conv.c:349 -msgid "Vous pouvez activer XCFA en ligne de commande avec: " -msgstr "You can enable XCFA command line with: " +msgid "You can enable XCFA command line with: " +msgstr "You can enable XCFA command line with: " #: src/file_conv.c:1190 src/file_conv.c:1202 src/file_mp3ogg_conv.c:339 #: src/file_mp3ogg_conv.c:351 @@ -550,50 +488,54 @@ msgstr "$ xcfa -verbose" #: src/file_conv.c:1192 src/file_mp3ogg_conv.c:341 -msgid "pour consulter le type d'erreur renvoye par mplayer." +msgid "to see the type of error returned by mplayer." msgstr "to see the type of error returned by mplayer." -#: src/file_conv.c:1199 src/file_mp3ogg_conv.c:348 -msgid "Erreur depuis SOX !" +#: src/file_conv.c:1199 +msgid "Error since SOX !" msgstr "Error since SOX !" #: src/file_conv.c:1204 src/file_mp3ogg_conv.c:353 -msgid "pour consulter le type d'erreur renvoye par sox." +msgid "to see the type of error returned by sox." msgstr "to see the type of error returned by sox." -#: src/file_mp3ogg.c:668 -msgid "Click droit: acces popup" +#: src/file_mp3ogg.c:670 +msgid "Right click: access popup" msgstr "Right click: access popup" -#: src/file_mp3ogg.c:899 src/translate.c:395 -msgid "Bitrate" -msgstr "Bitrate" - -#: src/file_mp3ogg.c:915 -msgid "Nouveau bitrate" +#: src/file_mp3ogg.c:921 +msgid "New bitrate" msgstr "New bitrate" -#: src/file_mp3ogg.c:929 -msgid "Taille" +#: src/file_mp3ogg.c:935 glade/xcfa_win_treeview.glade:1474 +msgid "Size" msgstr "Size" #: src/file_mp3ogg_conv.c:329 src/file_mp3ogg_conv.c:331 -msgid "XCFA: Modification bitrate" +msgid "XCFA: Bitrate change" msgstr "XCFA: Bitrate change" +#: src/file_mp3ogg_conv.c:336 +msgid "Error from MPLAYER !" +msgstr "Error from MPLAYER !" + +#: src/file_mp3ogg_conv.c:348 +msgid "Error from SOX !" +msgstr "Error from SOX !" + #: src/file_mp3ogg_conv.c:432 #, c-format -msgid " ATTENTION: Il faut installer %s%s%s" +msgid " WARNING : you need to install %s%s%s" msgstr " WARNING : you need to install %s%s%s" #: src/file_mp3ogg_conv.c:440 #, c-format -msgid " ATTENTION: Il faut installer %s%s" +msgid " WARNING : you need to install %s%s" msgstr " WARNING : you need to install %s%s" #: src/file_mp3ogg_conv.c:447 #, c-format -msgid " ATTENTION: Il faut installer %s" +msgid " WARNING : you need to install %s" msgstr " WARNING : you need to install %s" #: src/file_mp3ogg_conv.c:454 @@ -601,371 +543,360 @@ msgstr "Package NOT FOUND !" #: src/fileselect.c:105 -msgid "Choix d'un dossier de destination" -msgstr "Select a destination folder" +msgid "Choosing a destination folder" +msgstr "Choosing a destination folder" #: src/fileselect.c:106 -msgid "Choix d'un fichier CUE WAV FLAC OGG MP3 APE WMA" -msgstr "Select CUE WAV FLAC OGG MP3 APE WMA files" +msgid "Choosing a file CUE WAV FLAC OGG MP3 APE WMA" +msgstr "Choosing a file CUE WAV FLAC OGG MP3 APE WMA" #: src/fileselect.c:107 -msgid "Choix d'un fichier musical" -msgstr "Selecting a music file" +msgid "Choosing a file musical" +msgstr "Choosing a file musical" -#: src/fileselect.c:108 -msgid "Choix d'un fichier" -msgstr "Select a file" - -#: src/fileselect.c:109 -msgid "Choix de fichiers" -msgstr "Select files" +#: src/fileselect.c:108 src/fileselect.c:109 +msgid "Choosing a file" +msgstr "Choosing a file" #: src/fileselect.c:110 -msgid "Choix de fichiers WAV" -msgstr "Select a WAV file" +msgid "Choosing a WAV file" +msgstr "Choosing a WAV file" #: src/fileselect.c:111 -msgid "Choix de fichiers MP3/OGG" -msgstr "Select MP3/OGG file" +msgid "Choosing a MP3 OGG file" +msgstr "Choosing a MP3 OGG file" #: src/fileselect.c:112 -msgid "Choix de fichiers FLAC MPC OGG MP3" -msgstr "Select FLAC MPC OGG MP3 files" +msgid "Choosing a FLAC MPC OGG MP3 file" +msgstr "Choosing a FLAC MPC OGG MP3 file" #: src/fileselect.c:113 -msgid "Importer des images pour la pochette" -msgstr "Import images for the cover" +msgid "Import pictures for the cover" +msgstr "Import pictures for the cover" #: src/fileselect.c:114 -msgid "Choix d'un chemin de stockage des images" -msgstr "Select location for image storage" +msgid "Choosing an Image Storage path" +msgstr "Choosing an Image Storage path" #: src/fileselect.c:115 -msgid "Choix d'un lieu de sauvegarde" -msgstr "Select a backup location" +msgid "Choosing a place for backup" +msgstr "Choosing a place for backup" + +#: src/fileselect.c:396 src/fileselect.c:415 src/fileselect.c:703 +msgid "Cancel" +msgstr "Cancel" + +#: src/fileselect.c:398 src/fileselect.c:417 src/fileselect.c:705 +msgid "Open" +msgstr "Open" -#: src/fileselect.c:472 src/fileselect.c:595 src/fileselect.c:605 -#: src/fileselect.c:628 +#: src/fileselect.c:494 src/fileselect.c:617 src/fileselect.c:627 +#: src/fileselect.c:650 msgid "All Files (*.*)" msgstr "All Files (*.*)" -#: src/file_trash.c:360 +#: src/file_trash.c:211 msgid "Trash files ..." msgstr "Trash files ..." -#: src/file_wav.c:483 -msgid "(Click Droit = Menu) / Choix de la frequence" +#: src/file_wav.c:485 +msgid "(Right Click = Menu) / Select frequency" msgstr "(Right Click = Menu) / Select frequency" -#: src/file_wav.c:486 -msgid "(Click Droit = Menu) / Choix du nombre de pistes (voies)" +#: src/file_wav.c:488 +msgid "(Right Click = Menu) / Select number of tracks (channels)" msgstr "(Right Click = Menu) / Select number of tracks (channels)" -#: src/file_wav.c:489 -msgid "(Click Droit = Menu) / Choix du codage en nombre de bits" +#: src/file_wav.c:491 +msgid "(Right Click = Menu) / Encoding selection in number of bits" msgstr "(Right Click = Menu) / Encoding selection in number of bits" -#: src/file_wav.c:733 -msgid "Frequence" +#: src/file_wav.c:739 +msgid "Frequency" msgstr "Frequency" -#: src/file_wav.c:749 -msgid "FREQUENCE" +#: src/file_wav.c:755 +msgid "FREQUENCY" msgstr "FREQUENCY" -#: src/file_wav.c:763 -msgid "Piste" +#: src/file_wav.c:769 +msgid "Track" msgstr "Track" -#: src/file_wav.c:779 -msgid "PISTE" +#: src/file_wav.c:785 +msgid "TRACK" msgstr "TRACK" -#: src/file_wav.c:793 +#: src/file_wav.c:799 msgid "Quantification" msgstr "Quantification" -#: src/file_wav.c:809 +#: src/file_wav.c:815 msgid "QUANTIFICATION" msgstr "QUANTIFICATION" #: src/file_wav_conv.c:261 #, c-format -msgid "%s Copie fichier: %d%%" +msgid "%s Copy file: %d%%" msgstr "%s Copy file: %d%%" #: src/file_wav_conv.c:271 #, c-format -msgid "%s Restitution fichier: %d%%" +msgid "%s Return file: %d%%" msgstr "%s Return file: %d%%" #: src/file_wav_conv.c:281 #, c-format -msgid "%s Traitement Sox: %d%%" +msgid "%s Use Sox: %d%%" msgstr "%s Use Sox: %d%%" #: src/file_wav_conv.c:298 #, c-format -msgid "%s Traitement Mplayer: %d%%" +msgid "%s Use Mplayer: %d%%" msgstr "%s Use Mplayer: %d%%" #: src/file_wav_conv.c:343 src/file_wav_conv.c:345 msgid "XCFA: Conversions WAV TO WAV" msgstr "XCFA: Conversions WAV TO WAV" -#: src/main.c:398 -msgid "= Adressage memoire invalide\n" -msgstr "= Invalid memory address\n" - -#: src/main.c:401 -msgid "= Vous avez probablement trouve un bug dans XCFA\n" -msgstr "= You've probably found a bug in XCFA\n" - -#: src/main.c:786 -msgid "MODE ADMINISTRATEUR" +#: src/main.c:775 +msgid "ADMINISTRATOR MODE" msgstr "ADMINISTRATOR MODE" -#: src/main.c:788 -msgid " Vous ne devriez pas utiliser " -msgstr " You should not use " +#: src/main.c:777 +msgid " You should not use " +msgstr " You should not use " -#: src/main.c:790 -msgid " XCFA sous ROOT !" +#: src/main.c:779 +msgid " XCFA under ROOT !" msgstr " XCFA under ROOT !" -#: src/options.c:171 -msgid "ERREUR: Lieu de stockage non autorise !" +#: src/options.c:169 +msgid "ERROR : storage location not permitted !" msgstr "ERROR : storage location not permitted !" -#: src/options.c:172 -msgid "Veuillez recommencer." +#: src/options.c:170 +msgid "Please start again." msgstr "Please start again." #: src/options_cd.c:122 -msgid "Pour evaluer les templates, vous devez activer une lecture de cdaudio" +msgid "To assess the templates, you must enable a reading cdaudio" msgstr "To assess the templates, you must enable a reading cdaudio" -#: src/options_faac.c:96 +#: src/options_faac.c:94 msgid "Transport Stream (ADTS) - Extension .aac" msgstr "Transport Stream (ADTS) - Extension .aac" -#: src/options_faac.c:97 +#: src/options_faac.c:95 msgid "MPEG-4 File Format (MP4) - Extension .m4a" msgstr "MPEG-4 File Format (MP4) - Extension .m4a" -#: src/options_flac.c:67 -msgid "0 (Rapide)" +#: src/options_flac.c:65 +msgid "0 (Fast)" msgstr "0 (Fast)" -#: src/options_flac.c:75 -msgid "8 (Lent)" -msgstr "8 (Slow)" - -#: src/options_mp3.c:279 -msgid "V0 (meilleure qualite)" -msgstr "V0·····(Best quality)" - -#: src/options_mp3.c:288 -msgid "V9 (moins bonne qualite)" -msgstr "V9·····(Poor quality)" +#: src/options_flac.c:73 +msgid "8 (Low)" +msgstr "8 (Low)" + +#: src/options_mp3.c:276 +msgid "V0 (Best quality)" +msgstr "V0 (Best quality)" + +#: src/options_mp3.c:285 +msgid "V9 (Poor quality)" +msgstr "V9 (Poor quality)" -#: src/options_musepack.c:70 +#: src/options_musepack.c:68 msgid "telephone: lowest quality : 32 .. 48 kbit/s" -msgstr "Phone: (Lowest quality) : 32 .. 48 kbit/s" +msgstr "telephone: lowest quality : 32 .. 48 kbit/s" -#: src/options_musepack.c:71 +#: src/options_musepack.c:69 msgid "thumb : low quality/internet : 58 .. 86 kbit/s" msgstr "thumb : low quality/internet : 58 .. 86 kbit/s" -#: src/options_musepack.c:72 +#: src/options_musepack.c:70 msgid "radio : medium (MP3) quality : 112 .. 152 kbit/s" msgstr "radio : medium (MP3) quality : 112 .. 152 kbit/s" -#: src/options_musepack.c:73 +#: src/options_musepack.c:71 msgid "standard : high quality (dflt) : 142 .. 184 kbit/s" msgstr "standard : high quality (dflt) : 142 .. 184 kbit/s" -#: src/options_musepack.c:74 +#: src/options_musepack.c:72 msgid "xtreme : extreme high quality : 168 .. 212 kbit/s" msgstr "xtreme : extreme high quality : 168 .. 212 kbit/s" -#: src/options_musepack.c:75 +#: src/options_musepack.c:73 msgid "insane : extreme high quality : 232 .. 268 kbit/s" msgstr "insane : extreme high quality : 232 .. 268 kbit/s" -#: src/options_musepack.c:76 +#: src/options_musepack.c:74 msgid "braindead : extreme high quality : 232 .. 278 kbit/s" msgstr "braindead : extreme high quality : 232 .. 278 kbit/s" -#: src/options_oggenc.c:138 -msgid "Qualite -1 (Moins bonne qualite)" +#: src/options_oggenc.c:137 +msgid "Quality -1 (Poor quality)" msgstr "Quality -1 (Poor quality)" -#: src/options_oggenc.c:139 src/popup.c:1219 -msgid "Qualite 0" +#: src/options_oggenc.c:138 src/popup.c:1294 +msgid "Quality 0" msgstr "Quality 0" -#: src/options_oggenc.c:140 src/popup.c:1219 -msgid "Qualite 1" +#: src/options_oggenc.c:139 src/popup.c:1294 +msgid "Quality 1" msgstr "Quality 1" -#: src/options_oggenc.c:141 src/popup.c:1219 -msgid "Qualite 2" +#: src/options_oggenc.c:140 src/popup.c:1294 +msgid "Quality 2" msgstr "Quality 2" -#: src/options_oggenc.c:142 -msgid "Qualite 3" +#: src/options_oggenc.c:141 +msgid "Quality 3" msgstr "Quality 3" -#: src/options_oggenc.c:143 src/popup.c:1220 -msgid "Qualite 4" +#: src/options_oggenc.c:142 src/popup.c:1295 +msgid "Quality 4" msgstr "Quality 4" -#: src/options_oggenc.c:144 src/popup.c:1220 -msgid "Qualite 5" +#: src/options_oggenc.c:143 src/popup.c:1295 +msgid "Quality 5" msgstr "Quality 5" -#: src/options_oggenc.c:145 src/popup.c:1220 -msgid "Qualite 6" +#: src/options_oggenc.c:144 src/popup.c:1295 +msgid "Quality 6" msgstr "Quality 6" -#: src/options_oggenc.c:146 src/popup.c:1220 -msgid "Qualite 7" +#: src/options_oggenc.c:145 src/popup.c:1295 +msgid "Quality 7" msgstr "Quality 7" -#: src/options_oggenc.c:147 src/popup.c:1221 -msgid "Qualite 8" +#: src/options_oggenc.c:146 src/popup.c:1296 +msgid "Quality 8" msgstr "Quality 8" -#: src/options_oggenc.c:148 src/popup.c:1221 -msgid "Qualite 9" +#: src/options_oggenc.c:147 src/popup.c:1296 +msgid "Quality 9" msgstr "Quality 9" -#: src/options_oggenc.c:149 -msgid "Qualite 10 (Meilleure qualite)" +#: src/options_oggenc.c:148 +msgid "Quality 10 (Best quality)" msgstr "Quality 10 (Best quality)" -#: src/options_oggenc.c:179 src/options_wavpack.c:181 -#: src/options_wavpack.c:204 src/options_wavpack.c:227 src/popup.c:1223 -msgid "Oui" +#: src/options_oggenc.c:176 src/options_wavpack.c:173 +#: src/options_wavpack.c:194 src/options_wavpack.c:215 src/popup.c:1298 +msgid "Yes" msgstr "Yes" -#: src/options_oggenc.c:180 src/options_wavpack.c:148 -#: src/options_wavpack.c:180 src/options_wavpack.c:203 -#: src/options_wavpack.c:226 src/options_wavpack.c:247 src/popup.c:1223 -msgid "Non" +#: src/options_oggenc.c:177 src/options_wavpack.c:142 +#: src/options_wavpack.c:172 src/options_wavpack.c:193 +#: src/options_wavpack.c:214 src/options_wavpack.c:233 src/popup.c:1298 +msgid "No" msgstr "No" -#: src/options_oggenc.c:201 -msgid "Mono force" +#: src/options_oggenc.c:196 +msgid "Force mono" msgstr "Force mono" -#: src/options_oggenc.c:202 +#: src/options_oggenc.c:197 msgid "Stereo" msgstr "Stereo" -#: src/options_wavpack.c:100 -msgid "Mode normal" +#: src/options_wavpack.c:98 +msgid "Standard" msgstr "Standard" -#: src/options_wavpack.c:101 -msgid "Mode rapide de compression" +#: src/options_wavpack.c:99 +msgid "Fast (Faster encode and decode)" msgstr "Fast (Faster encode and decode)" -#: src/options_wavpack.c:102 -msgid "Bonne qualite de compression" +#: src/options_wavpack.c:100 +msgid "High quality (Better compression ratio)" msgstr "High quality (Better compression ratio)" -#: src/options_wavpack.c:103 -msgid "Meilleure qualite de compression" +#: src/options_wavpack.c:101 +msgid "Very high quality (Best compression but slowest)" msgstr "Very high quality (Best compression but slowest)" -#: src/options_wavpack.c:129 +#: src/options_wavpack.c:125 msgid "stereo left/right" msgstr "stereo left/right" -#: src/options_wavpack.c:130 +#: src/options_wavpack.c:126 msgid "stereo mid/side" msgstr "stereo mid/side" -#: src/options_wavpack.c:248 +#: src/options_wavpack.c:234 msgid "1 (fast / rapide)" -msgstr "1 (fast)" +msgstr "1 (fast / rapide)" -#: src/options_wavpack.c:253 +#: src/options_wavpack.c:239 msgid "6 (very slow / tres lent)" -msgstr "6 (very slow)" +msgstr "6 (very slow / tres lent)" -#: src/play_file.c:108 -msgid "PAS de lecteur audio present" +#: src/play_file.c:107 +msgid "NO audio player present" msgstr "NO audio player present" -#: src/play_file.c:109 -msgid "Veuillez installez un lecteur audio." -msgstr "Please install an audio player" +#: src/play_file.c:108 +msgid "Please install an audio player." +msgstr "Please install an audio player." -#: src/poche_dir.c:430 +#: src/poche_dir.c:433 msgid "" "Utilisez le glisser / deplacer - Effacer une image avec Ctrl + " "Click" msgstr "" -"Use drag / drop - delete an image with Ctrl +Click" +"Utilisez le glisser / deplacer - Effacer une image avec Ctrl + " +"Click" -#: src/poche_save.c:111 -msgid "Nom de fichier absent !!" +#: src/poche_save.c:117 +msgid "File name not found !!" msgstr "File name not found !!" -#: src/poche_save.c:112 src/poche_web.c:353 src/poche_web.c:375 -msgid "Pour resoudre ce probleme:" +#: src/poche_save.c:118 src/poche_web.c:330 src/poche_web.c:352 +msgid "To solve this problem :" msgstr "To solve this problem :" -#: src/poche_save.c:115 -msgid "Saisissez un nom de fichier sans extention" +#: src/poche_save.c:121 +msgid "Enter a file name without extension" msgstr "Enter a file name without extension" -#: src/poche_save.c:126 -msgid "Sauvegarde aux formats PDF et PostScript" -msgstr "Saving to PDF and PostScript" - -#: src/poche_save.c:151 -msgid "Sauvegarde au format PNG" -msgstr "Saving as PNG" +#: src/poche_save.c:131 +msgid "Saving to PDF" +msgstr "Saving to PDF" -#: src/poche_web.c:352 -msgid "Aucun fichier trouve !" +#: src/poche_web.c:329 +msgid "No file found !" msgstr "No file found !" -#: src/poche_web.c:356 -msgid "Modifiez la chaine de recherche et" +#: src/poche_web.c:333 src/poche_web.c:355 +msgid "Modify the search parameters and" msgstr "Modify the search parameters and" -#: src/poche_web.c:358 src/poche_web.c:380 -msgid "recommencez." -msgstr "start again" +#: src/poche_web.c:335 src/poche_web.c:357 +msgid "start again." +msgstr "start again." -#: src/poche_web.c:374 -msgid "Critere de recherche absent !!" +#: src/poche_web.c:351 +msgid "Search criteria away !!" msgstr "Search criteria away !!" -#: src/poche_web.c:378 -msgid "Saisissez une chaine de recherche et" -msgstr "Enter a search string and" - -#: src/poche_web.c:387 -msgid "[Recherche des fichiers images]" +#: src/poche_web.c:369 +msgid "[Search images files]" msgstr "[Search images files]" #: src/popup.c:81 src/popup.c:100 msgid " Deselection globale" -msgstr " Deselect all" +msgstr " Deselection globale" #: src/popup.c:82 src/popup.c:101 src/popup.c:162 msgid " Deselection verticale" -msgstr " Vertically deselect" +msgstr " Deselection verticale" #: src/popup.c:83 src/popup.c:102 msgid " Deselection horizontale" -msgstr " Horizontally deselect" +msgstr " Deselection horizontale" #: src/popup.c:84 src/popup.c:87 src/popup.c:103 src/popup.c:106 #: src/popup.c:120 src/popup.c:133 src/popup.c:147 @@ -974,195 +905,127 @@ #: src/popup.c:85 src/popup.c:104 msgid " Selection verticale" -msgstr " Vertically select" +msgstr " Selection verticale" #: src/popup.c:86 src/popup.c:105 msgid " Selection Expert verticale" -msgstr " Vertical expert select" +msgstr " Selection Expert verticale" #: src/popup.c:88 src/popup.c:107 msgid " Selection horizontale" -msgstr " Horizontally select" +msgstr " Selection horizontale" #: src/popup.c:89 src/popup.c:108 msgid " Selection Expert horizontale " -msgstr " Horizontal expert select" +msgstr " Selection Expert horizontale " #: src/popup.c:119 src/popup.c:132 msgid " Deselection verticale " -msgstr " Vertically deselect " +msgstr " Deselection verticale " #: src/popup.c:121 src/popup.c:134 msgid " Selection verticale " -msgstr " Vertically select " +msgstr " Selection verticale " #: src/popup.c:145 msgid "---SELECTION VERTICALE-----" -msgstr "---VERTICAL SELECTION------" +msgstr "---SELECTION VERTICALE-----" #: src/popup.c:146 msgid " Deselection verticale " -msgstr " Vertically deselect " +msgstr " Deselection verticale " #: src/popup.c:148 msgid " Selection PISTE " -msgstr " TRACK selection " +msgstr " Selection PISTE " #: src/popup.c:149 msgid " Selection ALBUM " -msgstr " ALBUM selection " +msgstr " Selection ALBUM " #: src/popup.c:150 msgid " Selection NETTOYER " -msgstr " ERASE selection " +msgstr " Selection NETTOYER " #: src/popup.c:161 msgid "---MENU TRASH--------------" -msgstr "---TRASH MENU--------------" +msgstr "---MENU TRASH--------------" #: src/popup.c:163 msgid " Selection verticale " -msgstr " Vertically select " +msgstr " Selection verticale " -#: src/popup.c:489 -msgid "1 piste" -msgstr "1 track" - -#: src/popup.c:492 -msgid "2 pistes" -msgstr "2 track" - -#: src/popup.c:495 -msgid "4 pistes" -msgstr "4 track" - -#: src/popup.c:498 -msgid "6 pistes" -msgstr "6 track" - -#: src/popup.c:504 src/popup.c:619 src/popup.c:716 -msgid "Valeur d'origine" +#: src/popup.c:504 src/popup.c:619 src/popup.c:715 +msgid "Original value" msgstr "Original value" -#: src/popup.c:592 -msgid " 8000 Hertz" -msgstr " 8000 Hertz" - -#: src/popup.c:595 -msgid "22000 Hertz" -msgstr "22000 Hertz" - -#: src/popup.c:598 -msgid "32000 Hertz" -msgstr "32000 Hertz" - -#: src/popup.c:601 -msgid "44056 Hertz" -msgstr "44056 Hertz" - -#: src/popup.c:604 -msgid "44100 Hertz" -msgstr "44100 Hertz" - -#: src/popup.c:607 -msgid "48000 Hertz" -msgstr "48000 Hertz" - -#: src/popup.c:610 -msgid "88200 Hertz" -msgstr "88200 Hertz" - -#: src/popup.c:613 -msgid "96000 Hertz" -msgstr "96000 Hertz" - -#: src/popup.c:698 -msgid " 8 bits" -msgstr " 8 bits" - -#: src/popup.c:701 -msgid "16 bits" -msgstr "16 bits" - -#: src/popup.c:704 -msgid "24 bits" -msgstr "24 bits" - -#: src/popup.c:707 -msgid "32 bits" -msgstr "32 bits" - -#: src/popup.c:710 -msgid "64 bits" -msgstr "64 bits" - #: src/popup.c:765 -msgid "Selecteur suivant" -msgstr "Following selector" +msgid "Next selector" +msgstr "Next selector" #: src/popup.c:769 -msgid "Selecteur precedant" +msgid "Previous selector" msgstr "Previous selector" #: src/popup.c:777 -msgid "Supprimer la plage active" +msgid "Delete the active range" msgstr "Delete the active range" -#: src/popup.c:849 -msgid "Retourner horizontalement" +#: src/popup.c:850 +msgid "Flip Horizontal" msgstr "Flip Horizontal" -#: src/popup.c:853 -msgid "Retourner verticalement" +#: src/popup.c:854 +msgid "Flip Vertical" msgstr "Flip Vertical" -#: src/popup.c:861 -msgid "Image au premier plan" +#: src/popup.c:862 +msgid "Foreground image" msgstr "Foreground image" -#: src/popup.c:865 -msgid "Image au dessus" +#: src/popup.c:866 +msgid "Image above" msgstr "Image above" -#: src/popup.c:869 -msgid "Image en dessous" +#: src/popup.c:870 +msgid "Image below" msgstr "Image below" -#: src/popup.c:873 -msgid "Image au dernier plan" +#: src/popup.c:874 +msgid "Image to the background" msgstr "Image to the background" -#: src/popup.c:881 -msgid "Effacer l'image" +#: src/popup.c:882 +msgid "Clear image" msgstr "Clear image" -#: src/popup.c:918 -msgid "Supprimer l'image de la liste" +#: src/popup.c:920 +msgid "Remove image from the list" msgstr "Remove image from the list" -#: src/popup.c:1036 -msgid "V0 [ meilleure qualite ]" +#: src/popup.c:1111 +msgid "V0 [ best quality ]" msgstr "V0 [ best quality ]" -#: src/popup.c:1036 src/popup.c:1039 -msgid "V4 [ defaut ]" +#: src/popup.c:1111 src/popup.c:1114 +msgid "V4 [ default ]" msgstr "V4 [ default ]" -#: src/popup.c:1036 -msgid "V9 [ moins bonne qualite ]" -msgstr "V9 [ worst quality ]" - -#: src/popup.c:1219 -msgid "Qualite -1 [ Moins bonne qualite ]" -msgstr "Quality -1 [ worst quality ]" - -#: src/popup.c:1220 -msgid "Qualite 3 [ Defaut ]" -msgstr "Quality 3 [ Default ]" - -#: src/popup.c:1221 -msgid "Qualite 10 [ Meilleure qualite ]" -msgstr "Quality 10 [ Best quality ]" +#: src/popup.c:1111 +msgid "V9 [ Lower quality ]" +msgstr "V9 [ Lower quality ]" + +#: src/popup.c:1294 +msgid "Quality -1 [ Lower quality ]" +msgstr "Quality -1 [ Lower quality ]" + +#: src/popup.c:1295 +msgid "Quality 3 [ Defaut ]" +msgstr "Quality 3 [ Defaut ]" + +#: src/popup.c:1296 +msgid "Quality 10 [ Best Quality ]" +msgstr "Quality 10 [ Best Quality ]" #: src/prg_init.c:85 msgid " Decode ATSC A/52 audio streams" @@ -1174,7 +1037,7 @@ #: src/prg_init.c:107 src/prg_init.c:173 msgid " Extracteur cd audio" -msgstr " InCrEdible Digital Audio eXtractor" +msgstr " Extracteur cd audio" #: src/prg_init.c:118 msgid " Read CD and get CDDB discid information" @@ -1182,27 +1045,27 @@ #: src/prg_init.c:129 msgid " Cherche des renseignements sur les formats mp3" -msgstr " Check validity of mp3s" +msgstr " Cherche des renseignements sur les formats mp3" #: src/prg_init.c:140 msgid " Audio Codeur freeware" -msgstr " MPEG-4 and MPEG-2 AAC encoder" +msgstr " Audio Codeur freeware" #: src/prg_init.c:151 msgid " MPEG-4 AAC decodeur" -msgstr " MPEG-4 AAC decoder" +msgstr " MPEG-4 AAC decodeur" #: src/prg_init.c:162 msgid " Conversion wav : flac" -msgstr " Create wav to flac" +msgstr " Conversion wav : flac" #: src/prg_init.c:184 msgid " Conversion wav : mp3" -msgstr " Create mp3 audio files" +msgstr " Conversion wav : mp3" #: src/prg_init.c:195 msgid " Cherche les informations d'un dvd" -msgstr " Read the contents of a DVD" +msgstr " Cherche les informations d'un dvd" #: src/prg_init.c:207 msgid " Monkey's Audio Console Front End : APE" @@ -1214,15 +1077,15 @@ #: src/prg_init.c:241 msgid " Lecteur et extracteur" -msgstr " Video and audio player" +msgstr " Lecteur et extracteur" #: src/prg_init.c:252 msgid " Normaliseur de fichier mp3" -msgstr " Lossless mp3 normaliser" +msgstr " Normaliseur de fichier mp3" #: src/prg_init.c:263 msgid " Normaliseur de fichier wav" -msgstr " wav file normaliser" +msgstr " Normaliseur de fichier wav" #: src/prg_init.c:274 msgid " A program to send desktop notifications" @@ -1230,58 +1093,58 @@ #: src/prg_init.c:285 msgid " Forte compression au format wave" -msgstr " High compression for waveform files" +msgstr " Forte compression au format wave" #: src/prg_init.c:296 msgid " Decoupage de fichiers sans decodage" -msgstr " Split mp3/ogg without decoding" +msgstr " Decoupage de fichiers sans decodage" #: src/prg_init.c:307 msgid " Transformation universelle de fichiers son" -msgstr " Sound eXchange, the Swiss Army knife of audio manipulation" +msgstr " Transformation universelle de fichiers son" #: src/prg_init.c:318 msgid " Conversion wav : ogg" -msgstr " Convert wav : ogg" +msgstr " Conversion wav : ogg" #: src/prg_init.c:329 msgid " Normaliseur de fichier ogg" -msgstr " ogg file normaliser" +msgstr " Normaliseur de fichier ogg" #: src/prg_init.c:340 msgid " WAVPACK Hybrid Lossless Audio Compressor" -msgstr " Wavpack Hybrid Lossless Audio Compressor" +msgstr " WAVPACK Hybrid Lossless Audio Compressor" #: src/prg_init.c:357 -msgid " ... les paquets: deb " -msgstr " ... Packets: deb " +msgid " ... Packets: deb " +msgstr " ... Packets: deb " #: src/prg_init.c:363 -msgid " ... les paquets: tgz " -msgstr " ... Packets: tgz " +msgid " ... Packets: tgz " +msgstr " ... Packets: tgz " #: src/prg_init.c:369 -msgid " ... les paquets: fpm " -msgstr " ... Packets: fpm " +msgid " ... Packets: fpm " +msgstr " ... Packets: fpm " #: src/prg_init.c:375 -msgid " ... les paquets: rpm " -msgstr " ... Packets: rpm " +msgid " ... Packets: rpm " +msgstr " ... Packets: rpm " #: src/prg_init.c:381 -msgid " ... les paquets: pkg.tar.xz " +msgid " ... Packets: pkg.tar.xz " msgstr " ... Packets: pkg.tar.xz " #: src/prg_init.c:387 -msgid " ... les paquets: ? " -msgstr " ... Packets: ?" +msgid " ... Packets: ? " +msgstr " ... Packets: ? " #: src/prg_init.c:623 msgid "Status" msgstr "Status" #: src/prg_init.c:637 -msgid "Paquet" +msgid "Packets" msgstr "Packets" #: src/prg_init.c:652 @@ -1289,276 +1152,332 @@ msgstr "Action" #: src/scan.c:259 -msgid "PACKAGE dvd+rw-tools ABSENT" +msgid "PACKAGE dvd+rw-tools is missing" msgstr "PACKAGE dvd+rw-tools is missing" #: src/scan.c:260 -msgid "Le package 'dvd+rw-tools' est absent" +msgid "The package 'imagemagick' is missing" msgstr "The package 'imagemagick' is missing" #: src/scan.c:262 -msgid "de votre systeme !" +msgid "on your system !" msgstr "on your system !" -#: src/scan.c:264 -msgid "Veuillez l'installer car j'ai besoin de" +#: src/scan.c:264 src/split.c:438 +msgid "Please install it and resume" msgstr "Please install it and resume" #: src/scan.c:266 -msgid "'dvd+rw-mediainfo' pour identifier le(s)" +msgid "'Dvd + rw-mediainfo' to identify the" msgstr "'Dvd + rw-mediainfo' to identify the" #: src/scan.c:268 -msgid "lecteur(s) de cd / dvd." +msgid "reader of cd / dvd." msgstr "reader of cd / dvd." -#: src/split.c:279 +#: src/split.c:297 msgid "" -"Menu: Click droit / Ajout plage: Click bouton centre / Zoom: Ctrl+Scroll" +"Menu: right click / Adding track: Click the center button / Zoom: Ctrl" +"+Scroll" msgstr "" "Menu: right click / Adding track: Click the center button / Zoom: Ctrl" "+Scroll" -#: src/split.c:282 -msgid "Ajout plage: Click bouton centre / Zoom: Ctrl+Scroll" +#: src/split.c:300 +msgid "Adding track: Click the center button / Zoom: Ctrl+Scroll" msgstr "Adding track: Click the center button / Zoom: Ctrl+Scroll" -#: src/split.c:286 -msgid "" -"Pret pour l'import d'un fichier CUE, WAV, FLAC, OGG, MP3, APE, WMA" +#: src/split.c:304 +msgid "Ready for imports and a CUE file, WAV, FLAC, OGG, MP3, APE, WMA" msgstr "Ready for imports and a CUE file, WAV, FLAC, OGG, MP3, APE, WMA" -#: src/split.c:356 src/split.c:385 -msgid "Ce fichier appartient a XCFA" +#: src/split.c:378 src/split.c:407 +msgid "This file belongs XCFA" msgstr "This file belongs XCFA" -#: src/split.c:357 src/split.c:386 -msgid "Selectionnez un autre fichier." +#: src/split.c:379 src/split.c:408 +msgid "Select another file." msgstr "Select another file." -#: src/split.c:365 -msgid "Fichier vide" +#: src/split.c:387 +msgid "Empty file" msgstr "Empty file" -#: src/split.c:366 -msgid "Le fichier ne contient aucune donnee !!!" +#: src/split.c:388 +msgid "The file contains no data !!!" msgstr "The file contains no data !!!" -#: src/split.c:411 -msgid "Sox et Mplayer absents" -msgstr "Sox and Mplayer is missing" - -#: src/split.c:412 -msgid "Sox et Mplayer sont absents de votre" -msgstr "Sox and Mplayer is missing" - -#: src/split.c:414 -msgid "configuration." -msgstr "configuration." - -#: src/split.c:416 -msgid "Veuillez les installer pour pouvoir continuer." -msgstr "Please install it and resume" +#: src/split.c:433 +msgid "Sox and Mplayer not found" +msgstr "Sox and Mplayer not found" + +#: src/split.c:434 +msgid "Sox et Mplayer are not found" +msgstr "Sox et Mplayer are not found" + +#: src/split.c:436 +msgid "in your configuration." +msgstr "in your configuration." -#: src/split.c:467 -msgid "Erreur de choix de fichier" +#: src/split.c:491 +msgid "Error file select" msgstr "Error file select" -#: src/split.c:468 -msgid "Veuillez selectionner un fichier de type WAV FLAC MP3 OGG APE" +#: src/split.c:492 +msgid "Please select a file type of MP3 WAV OGG FLAC APE" msgstr "Please select a file type of MP3 WAV OGG FLAC APE" -#: src/split.c:505 src/split.c:579 -msgid "Mauvais type de fichier" +#: src/split.c:530 src/split.c:602 +msgid "Wrong type of file" msgstr "Wrong type of file" -#: src/split.c:506 src/split.c:580 +#: src/split.c:531 src/split.c:603 msgid "" -"Les types de fichiers acceptes\n" -"sont: WAV FLAC MP3 OGG APE WMA CUE" +"File types accepted\n" +"sare: WAV FLAC MP3 OGG APE WMA CUE" msgstr "" "File types accepted\n" -"are: WAV FLAC MP3 OGG APE WMA CUE" +"sare: WAV FLAC MP3 OGG APE WMA CUE" -#: src/split_conv.c:313 src/split_conv.c:330 -msgid "Erreur SOX" +#: src/split_conv.c:316 src/split_conv.c:333 +msgid "SOX Error" msgstr "SOX Error" -#: src/split_conv.c:314 src/split_conv.c:331 -msgid "Le programme SOX de votre distribution" +#: src/split_conv.c:317 src/split_conv.c:334 +msgid "The SOX program on your distribution" msgstr "The SOX program on your distribution" -#: src/split_conv.c:316 src/split_conv.c:333 -msgid "a generer une erreur pendant la conversion." -msgstr "has generated an error during conversion" +#: src/split_conv.c:319 src/split_conv.c:336 +msgid "has generated an error during conversion." +msgstr "has generated an error during conversion." #: src/split_cue.c:116 -msgid "Erreur de lecture !" +msgid "Misreading !" msgstr "Misreading !" -#: src/split_cue.c:177 src/split_cue.c:187 src/split_cue.c:197 -msgid "Erreur" +#: src/split_cue.c:177 src/split_cue.c:187 src/split_cue.c:196 +msgid "Error" msgstr "Error" #: src/split_cue.c:178 -msgid "Aucun fichier de musique associe au cue-file !" +msgid "No music file associated with the cue-file" msgstr "No music file associated with the cue-file" #: src/split_cue.c:188 -msgid "Pas de fichier WAV dans le cue-file !" +msgid "No WAV file in the cue-file" msgstr "No WAV file in the cue-file" -#: src/split_cue.c:198 -msgid "Aucun fichier de musique associe dans le dossier" +#: src/split_cue.c:197 +msgid "No music file in the folder associated" msgstr "No music file in the folder associated" -#: src/split_cue.c:200 -msgid "du cue-file" +#: src/split_cue.c:199 +msgid "of cue-file" msgstr "of cue-file" -#: src/split_cue.c:294 -msgid "Erreur de donnees dans le fichier CUE" +#: src/split_cue.c:293 +msgid "Data errors in the CUE file" msgstr "Data errors in the CUE file" -#: src/split_cue.c:295 -msgid "La solution est d'importer le fichier de" +#: src/split_cue.c:294 +msgid "The solution is to import the file" msgstr "The solution is to import the file" -#: src/split_cue.c:297 -msgid "musique qui sera reconnu et pre-decoupe" +#: src/split_cue.c:296 +msgid "music that will be recognized and pre-cutting" msgstr "music that will be recognized and pre-cutting" -#: src/split_cue.c:299 -msgid "dans le module Split." -msgstr "Split in the module." +#: src/split_cue.c:298 +msgid "in the split module." +msgstr "in the split module." -#: src/split_cue.c:301 -msgid "Il ne restera qu'a ajuster les plages pour" +#: src/split_cue.c:300 +msgid "We will just adjust to the beaches" msgstr "We will just adjust to the beaches" -#: src/split_cue.c:303 -msgid "generer un nouveau cue-file ou des decoupes" +#: src/split_cue.c:302 +msgid "generate a new cue-file or cuts" msgstr "generate a new cue-file or cuts" -#: src/split_cue.c:305 -msgid "correspondant aux plages." +#: src/split_cue.c:304 +msgid "corresponding to the beaches." msgstr "corresponding to the beaches." #: src/split_selector.c:136 -msgid "Suppression pendant la lecture impossible" +msgid "Deleting not during playback" msgstr "Deleting not during playback" -#: src/split_selector.c:229 src/split_selector.c:235 src/split_selector.c:289 -#: src/split_selector.c:295 src/split_selector.c:352 src/split_selector.c:359 -#: src/split_selector.c:429 src/split_selector.c:435 -msgid "Temps inferieur a 5 secondes entre marqueur et curseur !" +#: src/split_selector.c:231 src/split_selector.c:237 src/split_selector.c:291 +#: src/split_selector.c:297 src/split_selector.c:354 src/split_selector.c:361 +#: src/split_selector.c:431 src/split_selector.c:437 +msgid "Time of less than 5 seconds between marker and cursor !" msgstr "Time of less than 5 seconds between marker and cursor !" -#: src/translate.c:51 -msgid "Fichier" +#: src/web.c:173 src/web.c:234 +msgid "No web browser" +msgstr "No web browser" + +#: src/web.c:174 src/web.c:235 +msgid "No Web access: no web browser" +msgstr "No Web access: no web browser" + +#: src/web.c:176 src/web.c:237 +msgid "found in your system." +msgstr "found in your system." + +#: src/web.c:178 src/web.c:239 +msgid "Please install a web browser." +msgstr "Please install a web browser." + +#: src/web.c:188 +msgid "You need to enable web access" +msgstr "You need to enable web access" + +#: src/web.c:249 +msgid "Application is missing." +msgstr "Application is missing." + +#: src/web.c:250 +msgid "Please install : " +msgstr "Please install : " + +#: src/win_about.c:124 +msgid " Xcfa on the web" +msgstr " Xcfa on the web" + +#: src/win_about.c:174 +msgid "" +"\n" +"Au tout debut:\n" +"\n" +"Serres Patrick, Hamann Regis, Fabien Gregis, @Dzef, @alteo_gange, \n" +"@Leonux, @zarer, @Shankarius, @bishop, @Ludo, @Patachonf,\n" +"... ;-)\n" +"\n" +"" +msgstr "" +"\n" +"Au tout debut:\n" +"\n" +"Serres Patrick, Hamann Regis, Fabien Gregis, @Dzef, @alteo_gange, \n" +"@Leonux, @zarer, @Shankarius, @bishop, @Ludo, @Patachonf,\n" +"... ;-)\n" +"\n" +"" + +#: src/win_scan.c:170 +msgid "Waiting ..." +msgstr "Waiting ..." + +#: glade/xcfa.glade:66 glade/xcfa.glade:2533 +msgid "File" msgstr "File" -#: src/translate.c:52 -msgid "Quitter" +#: glade/xcfa.glade:75 +msgid "Quit" msgstr "Quit" -#: src/translate.c:53 -msgid "Outils" +#: glade/xcfa.glade:89 +msgid "Tools" msgstr "Tools" -#: src/translate.c:54 -msgid "Visibilite des champs" -msgstr "Visible fields" +#: glade/xcfa.glade:99 +msgid "Visibility fields" +msgstr "Visibility fields" -#: src/translate.c:55 -msgid "Aide" +#: glade/xcfa.glade:112 +msgid "Help" msgstr "Help" -#: src/translate.c:56 -msgid "A propos" +#: glade/xcfa.glade:121 +msgid "About" msgstr "About" -#: src/translate.c:57 src/translate.c:67 -msgid "Lecture" -msgstr "Play" - -#: src/translate.c:58 -msgid " Choix du peripherique / Lecture du DVD " -msgstr " DVD player / Import files " - -#: src/translate.c:59 src/translate.c:69 src/translate.c:125 -msgid " Destination des fichiers " -msgstr " Save location: " +#: glade/xcfa.glade:224 +msgid "Read" +msgstr "Read" + +#: glade/xcfa.glade:252 +msgid " Choosing the peripheral / DVD playback " +msgstr " Choosing the peripheral / DVD playback " + +#: glade/xcfa.glade:303 glade/xcfa.glade:921 +msgid " File Destination " +msgstr " File Destination " -#: src/translate.c:60 src/translate.c:70 +#: glade/xcfa.glade:359 glade/xcfa.glade:1009 msgid " Eject " msgstr " Eject " -#: src/translate.c:61 src/translate.c:92 -msgid " Normaliser " -msgstr " Normalise " +#: glade/xcfa.glade:434 +msgid " Normalize " +msgstr " Normalize " -#: src/translate.c:62 -msgid "Deplier" +#: glade/xcfa.glade:494 +msgid "Unfold" msgstr "Unfold" -#: src/translate.c:63 -msgid "Replier" +#: glade/xcfa.glade:548 +msgid "Fold" msgstr "Fold" -#: src/translate.c:64 +#: glade/xcfa.glade:649 msgid " Vers 2CH: Sub / Ambiance " -msgstr " 2CH: Sub / Ambiance " +msgstr " Vers 2CH: Sub / Ambiance " -#: src/translate.c:65 src/translate.c:98 -msgid "Extraire" -msgstr "Rip" +#: glade/xcfa.glade:705 +msgid "Extraction" +msgstr "Extraction" -#: src/translate.c:66 +#: glade/xcfa.glade:756 msgid " DVD " msgstr " DVD " -#: src/translate.c:68 -msgid " Choix du peripherique / Lecture du CD " -msgstr " CD player " +#: glade/xcfa.glade:842 +msgid "Lecture" +msgstr "Lecture" + +#: glade/xcfa.glade:870 +msgid " Choosing the peripheral / CD playback " +msgstr " Choosing the peripheral / CD playback " -#: src/translate.c:71 -msgid "Titre:" +#: glade/xcfa.glade:1065 +msgid "Title:" msgstr "Title:" -#: src/translate.c:72 +#: glade/xcfa.glade:1077 msgid "Album:" msgstr "Album:" -#: src/translate.c:73 -msgid "Artiste:" +#: glade/xcfa.glade:1089 +msgid "Artist:" msgstr "Artist:" -#: src/translate.c:74 -msgid " Annee:" -msgstr "Year :" +#: glade/xcfa.glade:1101 +msgid "Comment:" +msgstr "Comment:" + +#: glade/xcfa.glade:1113 +msgid " Year:" +msgstr " Year:" -#: src/translate.c:75 +#: glade/xcfa.glade:1125 msgid " Genre:" -msgstr "Genre :" +msgstr " Genre:" -#: src/translate.c:76 -msgid " Piste:" -msgstr "Track:" +#: glade/xcfa.glade:1137 +msgid " Track:" +msgstr " Track:" -#: src/translate.c:77 +#: glade/xcfa.glade:1149 msgid " *.m3u et xspf: " -msgstr "m3u and xspf: " - -#: src/translate.c:78 -msgid "Commentaire:" -msgstr "Comment:" +msgstr " *.m3u et xspf: " -#: src/translate.c:79 -msgid " Modification des tags Freedb " -msgstr " Freedb tags modification " +#: glade/xcfa.glade:1287 +msgid "Editing tags Freedb" +msgstr "Editing tags Freedb" -#: src/translate.c:80 +#: glade/xcfa.glade:1302 msgid "" "%a [ %a=\"Artist\" ]\n" "\n" @@ -1576,14 +1495,15 @@ "\n" "%b [ %b=\"Album\" ]\n" "\n" -"TI% - Tetsumaki lower\n" +"%Tl - Tetsumaki lower\n" "\n" -"Converts the string to lowercase except for the first character\n" +"Transforme la chaine en minuscule sauf le premier caractere.\n" "\n" -"In the fields 'Title' since [Changing FreeDB tag]\n" -"the character or characters to be retained must be preceded bycharacter %" +"Dans le champs 'Titre' depuis [ Modification des tags FreeDB ],\n" +"le ou les caracteres devant etre conserves doivent etre precedes par le " +"caractere %" -#: src/translate.c:81 +#: glade/xcfa.glade:1312 msgid "" "%a - artiste %b - titre " "de l'album %c - numero de la piste\n" @@ -1594,839 +1514,837 @@ "%u - remplacement de caracteres: %u(AB=C) %u( =_) %Tl - Tetsumaki lower" msgstr "" -"%a - artist %b - album " -"title %c - track number\n" -"%d - track title %e - " -"year %g - genre\n" -"%f - create an m3u and xspf file %na - no accent\n" -"%u - replace special characters: %u(AB=C) %u( =_) %Tl - Tetsumaki lower" +"%a - artiste %b - titre " +"de l'album %c - numero de la piste\n" +"%d - titre de la chanson %e - " +"annee %g - genre\n" +"%f - creation d'un fichier *.m3u et *." +"xspf %na - no accent\n" +"%u - remplacement de caracteres: %u(AB=C) %u( =_) %Tl - Tetsumaki lower" -#: src/translate.c:82 -msgid " Arrangement des titres du CD " -msgstr " Arrangement of CD titles " +#: glade/xcfa.glade:1346 +msgid " Arrangement of CD titles" +msgstr " Arrangement of CD titles" -#: src/translate.c:83 -msgid "Creation d'un fichier unique au format: " -msgstr "Create a single file in the format: " +#: glade/xcfa.glade:1382 +msgid "Creation of a single file format: " +msgstr "Creation of a single file format: " -#: src/translate.c:84 -msgid " et dont le nom sera: " -msgstr " Named: " +#: glade/xcfa.glade:1430 +msgid " and whose name will be: " +msgstr " and whose name will be: " -#: src/translate.c:85 -msgid "Ecriture du fichier cue" -msgstr "Write cue file" +#: glade/xcfa.glade:1461 +msgid "Writing the cue file" +msgstr "Writing the cue file" -#: src/translate.c:86 -msgid " Au moins deux selections colonne Wav " -msgstr " Make at least two selections in the Wav column " +#: glade/xcfa.glade:1484 +msgid " At least two selections column Wav " +msgstr " At least two selections column Wav " -#: src/translate.c:87 +#: glade/xcfa.glade:1514 msgid "" -"Creation d'un fichier cue\n" -"unique depuis une lecture\n" -"du cd audio" +"\n" +"Creating a cue file from a single\n" +"reading audio cd\n" msgstr "" -"Create a single cue\n" -"file from an audio-CD" +"\n" +"Creating a cue file from a single\n" +"reading audio cd\n" -#: src/translate.c:88 -msgid "Creation fichier cue uniquement" -msgstr "Create cue file" +#: glade/xcfa.glade:1562 +msgid "File Creation cue only" +msgstr "File Creation cue only" -#: src/translate.c:89 +#: glade/xcfa.glade:1597 msgid " Creation Cue cd " -msgstr " CD cue file creation " +msgstr " Creation Cue cd " + +#: glade/xcfa.glade:1625 +msgid "  Creation of a single file" +msgstr "  Creation of a single file" -#: src/translate.c:90 -msgid " Creation d'un fichier unique " -msgstr " Creating a single file " +#: glade/xcfa.glade:1638 +msgid "Management of tags, titles and cue files" +msgstr "Management of tags, titles and cue files" -#: src/translate.c:91 -msgid "Gestion des tags, titres et fichiers cue" -msgstr "Tags, titles and cue files management" +#: glade/xcfa.glade:1688 +msgid " normalize " +msgstr " normalize " -#: src/translate.c:93 +#: glade/xcfa.glade:1749 msgid "definit le serveur a contacter pour les recherches titre" -msgstr "Sets the server to be contacted for title lookups" +msgstr "definit le serveur a contacter pour les recherches titre" -#: src/translate.c:94 +#: glade/xcfa.glade:1788 msgid "Parametres par defaut" -msgstr "Default parameters" +msgstr "Parametres par defaut" -#: src/translate.c:96 -msgid "Choix parmis les differentes bases de donnees pour le CD." -msgstr "Choice among different databases for the CD." - -#: src/translate.c:97 +#: glade/xcfa.glade:1887 msgid "DiscId" msgstr "DiscId" -#: src/translate.c:99 +#: glade/xcfa.glade:1946 +msgid "Extract" +msgstr "Extract" + +#: glade/xcfa.glade:2053 msgid " CD " msgstr " CD " -#: src/translate.c:100 src/translate.c:124 -msgid " Importer " +#: glade/xcfa.glade:2135 glade/xcfa.glade:3271 +msgid " Import " msgstr " Import " -#: src/translate.c:101 -msgid " Destination des conversions " -msgstr " Export converted files: " - -#: src/translate.c:102 -msgid " Nettoyer " -msgstr " Clear " +#: glade/xcfa.glade:2190 +msgid " Destination conversions " +msgstr " Destination conversions " + +#: glade/xcfa.glade:2266 +msgid " Clean up " +msgstr " Clean up " -#: src/translate.c:103 src/translate.c:107 +#: glade/xcfa.glade:2389 msgid "Appliquer les modifications" -msgstr "Apply the changes" +msgstr "Appliquer les modifications" -#: src/translate.c:104 -msgid " Normalise: " -msgstr " Normalise: " - -#: src/translate.c:105 -msgid " Choix niveau dBFS: " -msgstr " dBFS level: " +#: glade/xcfa.glade:2444 +msgid " Normalize: " +msgstr " Normalize: " -#: src/translate.c:106 src/translate.c:123 -msgid " Fichiers " -msgstr " Files " +#: glade/xcfa.glade:2477 +msgid " Level selection dBFS: " +msgstr " Level selection dBFS: " + +#: glade/xcfa.glade:2615 +msgid "Apply changes" +msgstr "Apply changes" -#: src/translate.c:108 +#: glade/xcfa.glade:2651 msgid " Wav " msgstr " Wav " -#: src/translate.c:109 src/translate.c:121 -msgid "Appliquer" +#: glade/xcfa.glade:2735 +msgid "Apply" msgstr "Apply" -#: src/translate.c:110 -msgid "Effacer" -msgstr "Clear" +#: glade/xcfa.glade:2789 +msgid "Delete" +msgstr "Delete" -#: src/translate.c:111 +#: glade/xcfa.glade:2826 msgid " Mp3-Ogg " msgstr " Mp3-Ogg " -#: src/translate.c:112 -msgid "Titre:" +#: glade/xcfa.glade:2875 +msgid "Title:" msgstr "Title:" -#: src/translate.c:113 +#: glade/xcfa.glade:2886 msgid "Album:" msgstr "Album:" -#: src/translate.c:114 -msgid "Artiste:" +#: glade/xcfa.glade:2897 +msgid "Artist:" msgstr "Artist:" -#: src/translate.c:115 -msgid "Commentaire:" +#: glade/xcfa.glade:2908 +msgid "Comment:" msgstr "Comment:" -#: src/translate.c:116 -msgid " Annee:" +#: glade/xcfa.glade:2919 +msgid " Year:" msgstr " Year:" -#: src/translate.c:117 +#: glade/xcfa.glade:2930 msgid " Genre:" msgstr " Genre:" -#: src/translate.c:118 -msgid " Piste:" +#: glade/xcfa.glade:2941 +msgid " Track:" msgstr " Track:" -#: src/translate.c:119 +#: glade/xcfa.glade:2952 msgid " Modif.:" -msgstr " Edit:" +msgstr " Modif.:" -#: src/translate.c:120 +#: glade/xcfa.glade:3078 msgid "0" msgstr "0" -#: src/translate.c:122 src/translate.c:309 +#: glade/xcfa.glade:3102 +msgid "Apply " +msgstr "Apply " + +#: glade/xcfa.glade:3160 glade/xcfa.glade:10210 msgid " Tags " msgstr " Tags " -#: src/translate.c:126 +#: glade/xcfa.glade:3190 +msgid " Files " +msgstr " Files " + +#: glade/xcfa.glade:3322 +msgid "   File Destination " +msgstr "   File Destination " + +#: glade/xcfa.glade:3494 msgid "Lecture de 5 secondes apres le marqueur de debut" -msgstr "Reading 5 seconds after the beginning marker" +msgstr "Lecture de 5 secondes apres le marqueur de debut" -#: src/translate.c:127 +#: glade/xcfa.glade:3546 msgid "Index de debut" -msgstr "Index start" +msgstr "Index de debut" -#: src/translate.c:128 src/translate.c:135 src/translate.c:138 +#: glade/xcfa.glade:3547 glade/xcfa.glade:3813 glade/xcfa.glade:3874 msgid "00h00m00s" msgstr "00h00m00s" -#: src/translate.c:129 +#: glade/xcfa.glade:3600 msgid "lecture" -msgstr "Play" +msgstr "lecture" -#: src/translate.c:130 +#: glade/xcfa.glade:3653 msgid "Pause" msgstr "Pause" -#: src/translate.c:131 +#: glade/xcfa.glade:3712 msgid "Index de lecture" -msgstr "Index reading" +msgstr "Index de lecture" -#: src/translate.c:132 src/translate.c:171 +#: glade/xcfa.glade:3713 glade/xcfa.glade:4767 msgid "label" msgstr "label" -#: src/translate.c:133 +#: glade/xcfa.glade:3760 msgid "Lecture de 5 secondes avant le marqueur de fin" -msgstr "Reading of 5 seconds before the end marker" +msgstr "Lecture de 5 secondes avant le marqueur de fin" -#: src/translate.c:134 +#: glade/xcfa.glade:3812 msgid "Index de fin" -msgstr "End index" +msgstr "Index de fin" -#: src/translate.c:136 +#: glade/xcfa.glade:3860 msgid "Plage" msgstr "Plage" -#: src/translate.c:137 +#: glade/xcfa.glade:3873 msgid "Duree de la plage active" -msgstr "Length of the active beach" +msgstr "Duree de la plage active" -#: src/translate.c:139 +#: glade/xcfa.glade:3955 msgid "Suprimer tous les marqueurs pour les remplacer par un marqueur unique" -msgstr "Wipe all markers and replace them with a single marker" +msgstr "Suprimer tous les marqueurs pour les remplacer par un marqueur unique" -#: src/translate.c:140 +#: glade/xcfa.glade:4044 msgid "Le fichier CUE sera enregistre vers 'Destination des fichiers'." -msgstr "CUE file to be recorded 'Destination file'." +msgstr "Le fichier CUE sera enregistre vers 'Destination des fichiers'." -#: src/translate.c:141 -msgid "Production fichier Cue" -msgstr "Generate CUE file" +#: glade/xcfa.glade:4073 +msgid "Production Cue file" +msgstr "Production Cue file" -#: src/translate.c:142 +#: glade/xcfa.glade:4098 msgid "Le resultat du Split sera dirige vers 'Destination des fichiers'." -msgstr "The result of the Split will be heading for 'Destination file'." +msgstr "Le resultat du Split sera dirige vers 'Destination des fichiers'." -#: src/translate.c:143 +#: glade/xcfa.glade:4127 msgid "Split" msgstr "Split" -#: src/translate.c:144 +#: glade/xcfa.glade:4188 msgid " Split " msgstr " Split " -#: src/translate.c:145 +#: glade/xcfa.glade:4253 msgid "Importation du titre du CD." -msgstr "Import the CD title." +msgstr "Importation du titre du CD." -#: src/translate.c:146 -msgid "Titre CD" +#: glade/xcfa.glade:4276 +msgid "Title CD" msgstr "Title CD" -#: src/translate.c:147 +#: glade/xcfa.glade:4296 msgid "Choix d'une nouvelle police." -msgstr "Choosing a new font." +msgstr "Choix d'une nouvelle police." -#: src/translate.c:148 +#: glade/xcfa.glade:4318 msgid "Texte gras." -msgstr "Bold text." +msgstr "Texte gras." -#: src/translate.c:149 +#: glade/xcfa.glade:4340 msgid "Texte italique." -msgstr "Italic text." +msgstr "Texte italique." -#: src/translate.c:150 -msgid "" -"Apres une lecture de CD et un ajout d'etiquette, ce menu permet la mise en " -"forme des titres, auteurs ..." -msgstr "" -"After reading a CD and add a label, this menu allows the formatting of " -"titles, authors ..." - -#: src/translate.c:151 +#: glade/xcfa.glade:4375 msgid "Ajouter du texte editable." -msgstr "Add text editable." +msgstr "Ajouter du texte editable." -#: src/translate.c:152 -msgid "Texte" +#: glade/xcfa.glade:4430 +msgid "Text" msgstr "Text" -#: src/translate.c:153 +#: glade/xcfa.glade:4462 msgid "Saisissez ici un critere de recherche d'images." -msgstr "Enter here a search of images." +msgstr "Saisissez ici un critere de recherche d'images." -#: src/translate.c:154 +#: glade/xcfa.glade:4484 msgid "Importation des images depuis le Web." -msgstr "Importing images from the Web." +msgstr "Importation des images depuis le Web." -#: src/translate.c:155 -msgid "Import images web" -msgstr "Import web images" +#: glade/xcfa.glade:4509 +msgid "Import web images " +msgstr "Import web images " -#: src/translate.c:156 +#: glade/xcfa.glade:4578 msgid "Supprimer l'image en selection" -msgstr "Delete the image selection" +msgstr "Supprimer l'image en selection" -#: src/translate.c:157 +#: glade/xcfa.glade:4600 msgid "AJouter de nouvelles images." -msgstr "Add new images." +msgstr "AJouter de nouvelles images." -#: src/translate.c:158 +#: glade/xcfa.glade:4606 msgid "Ouvre un fichier" -msgstr "Open a file" +msgstr "Ouvre un fichier" -#: src/translate.c:159 +#: glade/xcfa.glade:4623 msgid "Enregistrer la page au format png." -msgstr "Save Page png." +msgstr "Enregistrer la page au format png." -#: src/translate.c:160 +#: glade/xcfa.glade:4629 msgid "Sauvegarde le fichier" -msgstr "Saving the file" +msgstr "Sauvegarde le fichier" -#: src/translate.c:161 +#: glade/xcfa.glade:4646 msgid "Diminution de l'echelle." -msgstr "Reduction in the scale." +msgstr "Diminution de l'echelle." -#: src/translate.c:162 +#: glade/xcfa.glade:4652 msgid "Reduit l'agrandissement" -msgstr "Reduced expansion" +msgstr "Reduit l'agrandissement" -#: src/translate.c:163 +#: glade/xcfa.glade:4669 msgid "Echelle a 100%." -msgstr "Scale 100%." +msgstr "Echelle a 100%." -#: src/translate.c:164 +#: glade/xcfa.glade:4675 msgid "Remet l'echelle a 100%" -msgstr "Gives the scale at 100%" +msgstr "Remet l'echelle a 100%" -#: src/translate.c:165 +#: glade/xcfa.glade:4692 msgid "Augmentation de l'echelle." -msgstr "Increase in scale." +msgstr "Augmentation de l'echelle." -#: src/translate.c:166 +#: glade/xcfa.glade:4698 msgid "Augmente l'agrandissement" -msgstr "Increasing expansion" +msgstr "Augmente l'agrandissement" -#: src/translate.c:167 +#: glade/xcfa.glade:4715 msgid "Echelle compatible avec la taille de la fenetre." -msgstr "Scale compatible with the size of the window." +msgstr "Echelle compatible avec la taille de la fenetre." -#: src/translate.c:168 +#: glade/xcfa.glade:4721 msgid "Adapte l'echelle a la taille de la fenetre" -msgstr "Adjusts the scale to the size of the window" +msgstr "Adapte l'echelle a la taille de la fenetre" -#: src/translate.c:169 +#: glade/xcfa.glade:4738 msgid "Emplacement de sauvegarde des fichiers." -msgstr "Backup location files." +msgstr "Emplacement de sauvegarde des fichiers." -#: src/translate.c:170 +#: glade/xcfa.glade:4752 msgid "Nom (sans extention) du fichier a sauvegarder." -msgstr "Name (without extension) file is saved." +msgstr "Nom (sans extention) du fichier a sauvegarder." -#: src/translate.c:172 +#: glade/xcfa.glade:4815 msgid " Pochette " -msgstr " CD Cover " +msgstr " Pochette " -#: src/translate.c:173 +#: glade/xcfa.glade:4861 msgid "Nice" msgstr "Nice" -#: src/translate.c:174 -msgid " Priorite systeme " -msgstr " System priority " +#: glade/xcfa.glade:4896 +msgid " Priority system " +msgstr " Priority system " -#: src/translate.c:175 +#: glade/xcfa.glade:4935 msgid "" -"Indiquez ici le dossier sur votre systeme qui servira de lieu\n" -"de stockage provisoire pendant les differentes conversions.\n" -msgstr "Enter the location of the temporary folder to be used by XCFA\n" +"\n" +"Enter here the folder on your system that will serve as\n" +"temporary storage for the different conversions.\n" +msgstr "" +"\n" +"Enter here the folder on your system that will serve as\n" +"temporary storage for the different conversions.\n" -#: src/translate.c:176 -msgid " Dossier provisoire des conversions " -msgstr " Conversions temporary folder " +#: glade/xcfa.glade:4971 +msgid " Provisional file conversions " +msgstr " Provisional file conversions " -#: src/translate.c:177 +#: glade/xcfa.glade:5017 msgid "button" msgstr "button" -#: src/translate.c:178 -msgid " Jouer une musique en fin de tache " -msgstr " Play music at the end of task " +#: glade/xcfa.glade:5038 +msgid " Playing a job end music " +msgstr " Playing a job end music " -#: src/translate.c:179 +#: glade/xcfa.glade:5058 msgid " General " msgstr " General " -#: src/translate.c:180 +#: glade/xcfa.glade:5100 msgid "cdparanoia" msgstr "cdparanoia" -#: src/translate.c:181 +#: glade/xcfa.glade:5120 msgid "cdparanoia mode expert" -msgstr "cdparanoia expert mode" +msgstr "cdparanoia mode expert" -#: src/translate.c:182 +#: glade/xcfa.glade:5140 msgid "cdparanoia mode expert multi passes" -msgstr "cdparanoia expert mode multi pass" +msgstr "cdparanoia mode expert multi passes" -#: src/translate.c:183 +#: glade/xcfa.glade:5168 msgid "cdda2wav / icedax" msgstr "cdda2wav / icedax" -#: src/translate.c:184 +#: glade/xcfa.glade:5194 msgid " Extraction cd-audio avec: " -msgstr " Rip audio-CD with: " +msgstr " Extraction cd-audio avec: " -#: src/translate.c:185 +#: glade/xcfa.glade:5268 msgid "HomePage" -msgstr "Home Page" +msgstr "HomePage" -#: src/translate.c:186 +#: glade/xcfa.glade:5323 msgid "ManPage " -msgstr "Man Page " +msgstr "ManPage " -#: src/translate.c:187 +#: glade/xcfa.glade:5352 msgid " Web cdparanoia " msgstr " Web cdparanoia " -#: src/translate.c:188 +#: glade/xcfa.glade:5414 msgid "" "Le fichier LogExpertMode.txt sera cree dans le dossier des " "extractions" msgstr "" -"LogExpertMode.txt file will be created in the folder extractions" +"Le fichier LogExpertMode.txt sera cree dans le dossier des " +"extractions" -#: src/translate.c:189 -msgid "" -"Generation d'un rapport pour: cdparanoia mode expert multi passes" -msgstr "Generation of a report for: cdparanoia expert mode multi pass" +#: glade/xcfa.glade:5431 +msgid "Generation of a report for: cdparanoia mode expert multi passes" +msgstr "Generation of a report for: cdparanoia mode expert multi passes" -#: src/translate.c:190 +#: glade/xcfa.glade:5467 msgid "" -"%a - artiste %b - titre " +"%a - artist %b - titre " "de l'album %c - numero de la piste\n" "%d - titre de la chanson %e - " -"annee %g - genre\n" +"year %g - genre\n" "%na - no accent %Tl " "- Tetsumaki lower\n" -"%u - remplacement de caracteres: %u(AB=C) %u( =_)" +"%u - replacement characters: %u(AB=C) %u( =_)" msgstr "" -"%a - artist %b - album " -"title %c - track number\n" -"%d - track title %e - " +"%a - artist %b - titre " +"de l'album %c - numero de la piste\n" +"%d - titre de la chanson %e - " "year %g - genre\n" "%na - no accent %Tl " "- Tetsumaki lower\n" -"%u - replacing characters: %u(AB=C) %u( =_)" +"%u - replacement characters: %u(AB=C) %u( =_)" -#: src/translate.c:191 +#: glade/xcfa.glade:5536 msgid " Dossier de stockage " -msgstr " File storage " +msgstr " Dossier de stockage " -#: src/translate.c:192 +#: glade/xcfa.glade:5567 msgid " CD " msgstr " CD " -#: src/translate.c:193 +#: glade/xcfa.glade:5615 msgid "ABR / CBR / VBR / VBR-NEW" msgstr "ABR / CBR / VBR / VBR-NEW" -#: src/translate.c:194 +#: glade/xcfa.glade:5660 glade/xcfa.glade:6295 msgid "Debit" -msgstr "Bitrate" +msgstr "Debit" -#: src/translate.c:195 +#: glade/xcfa.glade:5705 glade/xcfa.glade:6317 msgid "Mode" msgstr "Mode" -#: src/translate.c:196 +#: glade/xcfa.glade:5747 msgid " Lame (fichier mp3): " -msgstr " Lame (mp3 file): " +msgstr " Lame (fichier mp3): " -#: src/translate.c:197 src/translate.c:213 src/translate.c:225 -#: src/translate.c:238 src/translate.c:255 src/translate.c:266 -#: src/translate.c:280 src/translate.c:294 +#: glade/xcfa.glade:5827 glade/xcfa.glade:6466 glade/xcfa.glade:6941 +#: glade/xcfa.glade:7469 glade/xcfa.glade:8200 glade/xcfa.glade:8659 +#: glade/xcfa.glade:9192 glade/xcfa.glade:9753 msgid "Par defaut" -msgstr "Default" +msgstr "Par defaut" -#: src/translate.c:198 +#: glade/xcfa.glade:5848 msgid " Options LAME " -msgstr " LAME Options " +msgstr " Options LAME " -#: src/translate.c:199 src/translate.c:227 src/translate.c:268 +#: glade/xcfa.glade:5909 glade/xcfa.glade:7023 glade/xcfa.glade:8741 msgid "Site officiel" -msgstr "Official website" +msgstr "Site officiel" -#: src/translate.c:200 +#: glade/xcfa.glade:5964 msgid "Wiki mp3 " -msgstr "mp3 wiki " +msgstr "Wiki mp3 " -#: src/translate.c:201 +#: glade/xcfa.glade:6020 msgid "Wiki " -msgstr "Lame wiki " +msgstr "Wiki " -#: src/translate.c:202 +#: glade/xcfa.glade:6076 msgid "ManPage " -msgstr "Man Page " +msgstr "ManPage " -#: src/translate.c:203 +#: glade/xcfa.glade:6105 msgid " Web Lame " -msgstr " Lame " +msgstr " Web Lame " -#: src/translate.c:204 src/translate.c:218 src/translate.c:231 -#: src/translate.c:242 src/translate.c:260 src/translate.c:271 -#: src/translate.c:286 +#: glade/xcfa.glade:6181 glade/xcfa.glade:6709 glade/xcfa.glade:7238 +#: glade/xcfa.glade:7644 glade/xcfa.glade:8442 glade/xcfa.glade:8901 +#: glade/xcfa.glade:9491 msgid "[" msgstr "[" -#: src/translate.c:205 src/translate.c:219 src/translate.c:232 -#: src/translate.c:243 src/translate.c:261 src/translate.c:272 -#: src/translate.c:287 +#: glade/xcfa.glade:6194 glade/xcfa.glade:6722 glade/xcfa.glade:7251 +#: glade/xcfa.glade:7657 glade/xcfa.glade:8455 glade/xcfa.glade:8914 +#: glade/xcfa.glade:9504 msgid "string option interne" -msgstr "internal string option" +msgstr "string option interne" -#: src/translate.c:206 src/translate.c:220 src/translate.c:233 -#: src/translate.c:244 src/translate.c:262 src/translate.c:273 -#: src/translate.c:288 +#: glade/xcfa.glade:6209 glade/xcfa.glade:6737 glade/xcfa.glade:7266 +#: glade/xcfa.glade:7672 glade/xcfa.glade:8470 glade/xcfa.glade:8929 +#: glade/xcfa.glade:9519 msgid "]" msgstr "]" -#: src/translate.c:207 -msgid "" -" Options experts, definies par l'utilisateur - lame (wav -> mp3) " -msgstr " User-defined expert options - lame (wav -> mp3) " +#: glade/xcfa.glade:6234 +msgid " Experts options defined by the user- lame (wav -> mp3) " +msgstr " Experts options defined by the user- lame (wav -> mp3) " -#: src/translate.c:208 +#: glade/xcfa.glade:6254 msgid " Mp3 " msgstr " Mp3 " -#: src/translate.c:209 -msgid " Mode" -msgstr " Mode" - -#: src/translate.c:210 -msgid " Mode flux (streaming)" -msgstr " Streaming" +#: glade/xcfa.glade:6306 +msgid "Mode flux (streaming)" +msgstr "Mode flux (streaming)" -#: src/translate.c:211 -msgid " Debit" -msgstr "Bitrate" - -#: src/translate.c:212 +#: glade/xcfa.glade:6386 msgid " Oggenc (fichier ogg): " -msgstr " Oggenc (ogg file): " +msgstr " Oggenc (fichier ogg): " -#: src/translate.c:214 +#: glade/xcfa.glade:6487 msgid " Options OGGENC " -msgstr " OGGENC Options " +msgstr " Options OGGENC " -#: src/translate.c:215 +#: glade/xcfa.glade:6548 msgid "Wiki " msgstr "Wiki " -#: src/translate.c:216 src/translate.c:258 src/translate.c:284 -#: src/translate.c:298 +#: glade/xcfa.glade:6604 glade/xcfa.glade:8337 glade/xcfa.glade:9386 +#: glade/xcfa.glade:9947 msgid "ManPage" -msgstr "Man Page" +msgstr "ManPage" -#: src/translate.c:217 +#: glade/xcfa.glade:6633 msgid " Web Oggenc " -msgstr " Oggenc " +msgstr " Web Oggenc " -#: src/translate.c:221 -msgid "" -" Options experts, definies par l'utilisateur - oggenc (wav -> ogg) " -msgstr " User-defined expert options - oggenc (wav -> ogg) " +#: glade/xcfa.glade:6762 +msgid " Experts options defined by the user - oggenc (wav -> ogg) " +msgstr " Experts options defined by the user - oggenc (wav -> ogg) " -#: src/translate.c:222 +#: glade/xcfa.glade:6782 msgid " Oggenc " msgstr " Oggenc " -#: src/translate.c:223 +#: glade/xcfa.glade:6824 msgid "Taux de compression" -msgstr "Compression level" +msgstr "Taux de compression" -#: src/translate.c:224 +#: glade/xcfa.glade:6861 msgid " Flac (fichier flac): " -msgstr " Flac (flac file): " +msgstr " Flac (fichier flac): " -#: src/translate.c:226 +#: glade/xcfa.glade:6962 msgid " Options FLAC " -msgstr " FLAC Options " +msgstr " Options FLAC " -#: src/translate.c:228 src/translate.c:269 +#: glade/xcfa.glade:7078 glade/xcfa.glade:8796 msgid "Framasoft " msgstr "Framasoft " -#: src/translate.c:229 +#: glade/xcfa.glade:7133 msgid "ManPage " -msgstr "Man Page " +msgstr "ManPage " -#: src/translate.c:230 +#: glade/xcfa.glade:7162 msgid " Web Flac " -msgstr " Flac " +msgstr " Web Flac " -#: src/translate.c:234 -msgid "" -" Options experts, definies par l'utilisateur - flac (wav -> flac) " -msgstr " User-defined expert options - flac (wav -> flac) " +#: glade/xcfa.glade:7291 +msgid " Experts options defined by the user- flac (wav -> flac) " +msgstr " Experts options defined by the user- flac (wav -> flac) " -#: src/translate.c:235 +#: glade/xcfa.glade:7311 msgid " Flac " msgstr " Flac " -#: src/translate.c:236 +#: glade/xcfa.glade:7353 msgid " Qualite" -msgstr " Quality" +msgstr " Qualite" -#: src/translate.c:237 +#: glade/xcfa.glade:7389 msgid " Mac (fichier ape): " -msgstr " Mac (ape file): " +msgstr " Mac (fichier ape): " -#: src/translate.c:239 +#: glade/xcfa.glade:7490 msgid " Options MAC " -msgstr " MAC Options " +msgstr " Options MAC " -#: src/translate.c:240 +#: glade/xcfa.glade:7546 msgid "Wiki" msgstr "Wiki" -#: src/translate.c:241 +#: glade/xcfa.glade:7568 msgid " Web Mac " -msgstr " Mac " +msgstr " Web Mac " -#: src/translate.c:245 -msgid " Options experts, definies par l'utilisateur - mac (wav -> ape) " -msgstr " User-defined expert options - mac (wav -> ape) " +#: glade/xcfa.glade:7697 +msgid " Experts options defined by the user - mac (wav -> ape) " +msgstr " Experts options defined by the user - mac (wav -> ape) " -#: src/translate.c:246 +#: glade/xcfa.glade:7717 msgid " Mac " msgstr " Mac " -#: src/translate.c:247 +#: glade/xcfa.glade:7765 msgid "Compression" msgstr "Compression" -#: src/translate.c:248 +#: glade/xcfa.glade:7817 msgid "Son" -msgstr "Channel mode" +msgstr "Son" -#: src/translate.c:249 +#: glade/xcfa.glade:7869 msgid "Mode hybride" -msgstr "Hybrid mode" +msgstr "Mode hybride" -#: src/translate.c:250 +#: glade/xcfa.glade:7921 msgid "Fichier de correction" -msgstr "Correction file" +msgstr "Fichier de correction" -#: src/translate.c:251 +#: glade/xcfa.glade:7973 msgid "Compression maximum" -msgstr "Maximum compression" +msgstr "Compression maximum" -#: src/translate.c:252 +#: glade/xcfa.glade:8025 msgid "Signature MD5" -msgstr "MD5 signature" +msgstr "Signature MD5" -#: src/translate.c:253 +#: glade/xcfa.glade:8077 msgid "Extra encode processing" msgstr "Extra encode processing" -#: src/translate.c:254 +#: glade/xcfa.glade:8120 msgid " WavPack (fichier wv): " -msgstr " WavPack (wv file): " +msgstr " WavPack (fichier wv): " -#: src/translate.c:256 +#: glade/xcfa.glade:8221 msgid " Options WAVPACK " -msgstr " WAVPACK Options " +msgstr " Options WAVPACK " -#: src/translate.c:257 +#: glade/xcfa.glade:8282 msgid "Wiki " msgstr "Wiki " -#: src/translate.c:259 +#: glade/xcfa.glade:8366 msgid " Web Wavpack " -msgstr " Wavpack " +msgstr " Web Wavpack " -#: src/translate.c:263 -msgid "" -" Options experts, definies par l'utilisateur - wavpack (wav -> wv) " -msgstr " User-defined expert options - wavpack (wav -> wv) " +#: glade/xcfa.glade:8495 +msgid " Experts options defined by the user - wavpack (wav -> wv) " +msgstr " Experts options defined by the user - wavpack (wav -> wv) " -#: src/translate.c:264 +#: glade/xcfa.glade:8515 msgid " Wavpack " msgstr " Wavpack " -#: src/translate.c:265 +#: glade/xcfa.glade:8579 msgid " MusePack (fichier mpc): " -msgstr " MusePack (mpc file): " +msgstr " MusePack (fichier mpc): " -#: src/translate.c:267 +#: glade/xcfa.glade:8680 msgid " Options MUSEPACK " -msgstr " MUSEPACK Options " +msgstr " Options MUSEPACK " -#: src/translate.c:270 +#: glade/xcfa.glade:8825 msgid " Web Musepack " -msgstr " Musepack " +msgstr " Web Musepack " -#: src/translate.c:274 -msgid "" -" Options experts, definies par l'utilisateur - musepack (wav -> mpc) " -msgstr " User-defined expert options - musepack (wav -> mpc) " +#: glade/xcfa.glade:8954 +msgid " Experts options defined by the user- musepack (wav -> mpc) " +msgstr " Experts options defined by the user- musepack (wav -> mpc) " -#: src/translate.c:275 +#: glade/xcfa.glade:8974 msgid " Musepack " msgstr " Musepack " -#: src/translate.c:276 -msgid " Qualite VBR / Debit ABR" -msgstr "VBR Quality / ABR rate" - -#: src/translate.c:277 -msgid " VBR / ABR" -msgstr " VBR / ABR" - -#: src/translate.c:278 -msgid " Conteneur" -msgstr " Container" +#: glade/xcfa.glade:9016 +msgid "Conteneur" +msgstr "Conteneur" + +#: glade/xcfa.glade:9027 +msgid "VBR / ABR" +msgstr "VBR / ABR" + +#: glade/xcfa.glade:9038 +msgid "Qualite VBR / Debit ABR" +msgstr "Qualite VBR / Debit ABR" -#: src/translate.c:279 +#: glade/xcfa.glade:9112 msgid " Faac (fichier .m4a): " -msgstr " Faac (file .m4a): " +msgstr " Faac (fichier .m4a): " -#: src/translate.c:281 +#: glade/xcfa.glade:9213 msgid " Options FAAC " -msgstr " FAAC Options " +msgstr " Options FAAC " -#: src/translate.c:282 src/translate.c:296 +#: glade/xcfa.glade:9274 glade/xcfa.glade:9835 msgid "Site officiel " -msgstr "Official website " +msgstr "Site officiel " -#: src/translate.c:283 src/translate.c:297 +#: glade/xcfa.glade:9330 glade/xcfa.glade:9891 msgid "Web Info " -msgstr "Info " +msgstr "Web Info " -#: src/translate.c:285 +#: glade/xcfa.glade:9415 msgid " Web Faac " -msgstr " Faac " +msgstr " Web Faac " -#: src/translate.c:289 -msgid "" -" Options experts, definies par l'utilisateur - faac (wav -> m4a) " -msgstr " User-defined expert options - faac (wav -> m4a) " +#: glade/xcfa.glade:9544 +msgid " Experts options defined by the user - faac (wav -> m4a) " +msgstr " Experts options defined by the user - faac (wav -> m4a) " -#: src/translate.c:290 +#: glade/xcfa.glade:9564 msgid " Faac " msgstr " Faac " -#: src/translate.c:291 -msgid " Stereo: Qualite en kbit/s" -msgstr " Stereo: Quality in kbit/s" - -#: src/translate.c:292 -msgid " Mono: Qualite en kbit/s" -msgstr " Mono: Quality en kbit/s" +#: glade/xcfa.glade:9606 +msgid "Mono: Qualite en kbit/s" +msgstr "Mono: Qualite en kbit/s" + +#: glade/xcfa.glade:9617 +msgid "Stereo: Qualite en kbit/s" +msgstr "Stereo: Qualite en kbit/s" -#: src/translate.c:293 +#: glade/xcfa.glade:9673 msgid " AacplusEnc (fichier .aac): " -msgstr " AacplusEnc (file .aac): " +msgstr " AacplusEnc (fichier .aac): " -#: src/translate.c:295 +#: glade/xcfa.glade:9774 msgid " Options AacPlusEnc " -msgstr " AacPlusEnc Options " +msgstr " Options AacPlusEnc " -#: src/translate.c:299 +#: glade/xcfa.glade:9976 msgid " Web AacPlusEnc " -msgstr " AacPlusEnc " +msgstr " Web AacPlusEnc " -#: src/translate.c:300 +#: glade/xcfa.glade:10021 msgid " AacplusEnc " msgstr " AacplusEnc " -#: src/translate.c:301 +#: glade/xcfa.glade:10051 msgid "Artiste" -msgstr "Artist" +msgstr "Artiste" -#: src/translate.c:302 src/translate.c:330 +#: glade/xcfa.glade:10070 glade/xcfa_win_treeview.glade:95 msgid "Titre" -msgstr "Title" +msgstr "Titre" -#: src/translate.c:303 +#: glade/xcfa.glade:10089 msgid "Album" msgstr "Album" -#: src/translate.c:304 +#: glade/xcfa.glade:10108 msgid "Numero" -msgstr "Number" +msgstr "Numero" -#: src/translate.c:305 +#: glade/xcfa.glade:10127 msgid "Genre" msgstr "Genre" -#: src/translate.c:306 +#: glade/xcfa.glade:10146 msgid "Annee" -msgstr "Year" +msgstr "Annee" -#: src/translate.c:307 +#: glade/xcfa.glade:10165 msgid "Commentaire" -msgstr "Comment" +msgstr "Commentaire" -#: src/translate.c:308 +#: glade/xcfa.glade:10190 msgid " Exportation de " -msgstr " Export " +msgstr " Exportation de " -#: src/translate.c:310 +#: glade/xcfa.glade:10226 msgid " Preferences " msgstr " Preferences " -#: src/translate.c:311 +#: glade/xcfa.glade:10289 msgid "SCAN" msgstr "SCAN" -#: src/translate.c:312 +#: glade/xcfa.glade:10303 msgid " Installation " msgstr " Installation " -#: src/translate.c:313 -msgid " Votre systeme utilise ... " -msgstr " Your system uses ... " +#: glade/xcfa.glade:10338 +msgid " Your system use ... " +msgstr " Your system use ... " -#: src/translate.c:314 +#: glade/xcfa.glade:10375 msgid "" "\n" -"Pour installer les programmes externes requis,\n" -"veuillez utiliser l'installateur de votre distribution Gnu/Linux.\n" +"To install the required external programs\n" +"Please use the installer to your distribution Gnu / Linux.\n" msgstr "" "\n" -"To install the required external software,\n" -"please use the package manager of your Gnu/Linux distribution.\n" +"To install the required external programs\n" +"Please use the installer to your distribution Gnu / Linux.\n" -#: src/translate.c:315 +#: glade/xcfa.glade:10393 msgid "" "Le programme XCFA_INSTALL_ALL ecrit en Perl vous sera utile en ligne de " "commande pour une installation des programmes complementaire." msgstr "" -"The program XCFA_INSTALL_ALL written in Perl will be useful on the command " -"line for installation of supplementary programs" +"Le programme XCFA_INSTALL_ALL ecrit en Perl vous sera utile en ligne de " +"commande pour une installation des programmes complementaire." -#: src/translate.c:316 +#: glade/xcfa.glade:10419 msgid " Informations " msgstr " Informations " -#: src/translate.c:317 -msgid " Application externes " -msgstr " External programs " +#: glade/xcfa.glade:10443 +msgid " External application " +msgstr " External application " -#: src/translate.c:318 src/translate.c:321 +#: glade/xcfa.glade:10514 glade/xcfa.glade:10618 msgid "parametres:" -msgstr "parameters:" +msgstr "parametres:" -#: src/translate.c:319 +#: glade/xcfa.glade:10527 msgid "" "\n" " konqueror : newTab\n" @@ -2436,229 +2354,105 @@ " konqueror : newTab\n" " iceweasel : -new-window -new-tab \n" -#: src/translate.c:320 +#: glade/xcfa.glade:10548 msgid "Navigateur" -msgstr "browsers" +msgstr "Navigateur" -#: src/translate.c:322 +#: glade/xcfa.glade:10648 msgid "Lecteurs audio" -msgstr "Audio player" +msgstr "Lecteurs audio" -#: src/translate.c:323 -msgid " Navigateurs / Lecteurs audio " -msgstr " Browsers / Audio player" +#: glade/xcfa.glade:10669 +msgid "  Browsers / Audio Players " +msgstr "  Browsers / Audio Players " -#: src/translate.c:324 +#: glade/xcfa.glade:10692 msgid " Applications externes " -msgstr " External programs " - -#: src/translate.c:325 -msgid "Scan en cours ..." -msgstr "Scan in progress ..." - -#: src/translate.c:326 -msgid "Scan du support en cours ..." -msgstr "Media scan in progress..." - -#: src/translate.c:327 -msgid "Detail extraction mode expert" -msgstr "Rip details - expert mode" - -#: src/translate.c:328 -msgid "Modification des champs" -msgstr "Modify fields" - -#: src/translate.c:329 -msgid "" -"\n" -"Modification des champs\n" -msgstr "" -"\n" -"Modify fields\n" - -#: src/translate.c:337 src/translate.c:356 src/translate.c:377 -#: src/translate.c:389 src/translate.c:400 src/translate.c:408 -msgid " Visibilite " -msgstr " Visibility " - -#: src/translate.c:338 src/translate.c:357 src/translate.c:378 -#: src/translate.c:390 src/translate.c:401 src/translate.c:409 -msgid "Nom a gauche" -msgstr "Name to left" - -#: src/translate.c:339 src/translate.c:358 src/translate.c:379 -#: src/translate.c:391 src/translate.c:402 src/translate.c:410 -msgid "Nom au centre" -msgstr "Name centred" - -#: src/translate.c:340 src/translate.c:359 src/translate.c:380 -#: src/translate.c:392 src/translate.c:403 src/translate.c:411 -msgid "Nom a droite" -msgstr "Name to right" - -#: src/translate.c:341 -msgid "DVD" -msgstr "DVD" - -#: src/translate.c:346 src/translate.c:367 -msgid "Wavpack" -msgstr "Wavpack" - -#: src/translate.c:350 src/translate.c:371 -msgid "Musepack" -msgstr "Musepack" - -#: src/translate.c:360 -msgid "CD" -msgstr "CD" - -#: src/translate.c:375 -msgid "Replaygain" -msgstr "Replaygain" - -#: src/translate.c:381 -msgid "CONVERSIONS" -msgstr "CONVERSIONS" - -#: src/translate.c:382 -msgid "Hertz" -msgstr "Hertz" - -#: src/translate.c:383 -msgid "New Hertz" -msgstr "New Hertz" - -#: src/translate.c:384 -msgid "Voie" -msgstr "Voice" - -#: src/translate.c:385 -msgid "New Voie" -msgstr "New Voice" - -#: src/translate.c:386 -msgid "Bits" -msgstr "Bits" - -#: src/translate.c:387 -msgid "New Bits" -msgstr "New Bits" - -#: src/translate.c:393 -msgid "WAV" -msgstr "WAV" - -#: src/translate.c:396 -msgid "New Bitrate" -msgstr "New Bitrat" - -#: src/translate.c:397 -msgid "Size" -msgstr "Size" - -#: src/translate.c:404 -msgid "MP3-OGG" -msgstr "MP3-OGG" - -#: src/translate.c:412 -msgid "TAGS" -msgstr "TAGS" +msgstr " Applications externes " -#: src/translate.c:413 -msgid "Selection globale" -msgstr "Select all" - -#: src/translate.c:414 -msgid "Deselection globale" -msgstr "Clear all" - -#: src/translate.c:415 -msgid "Retour" -msgstr "Return" - -#: src/translate.c:416 +#: glade/xcfa_win_about.glade:7 msgid "About X Convert File Audio" msgstr "About X Convert File Audio" -#: src/translate.c:417 +#: glade/xcfa_win_about.glade:103 msgid "Author" msgstr "Author" -#: src/translate.c:418 +#: glade/xcfa_win_about.glade:139 msgid "Licence" -msgstr "License" +msgstr "Licence" -#: src/translate.c:419 +#: glade/xcfa_win_about.glade:163 msgid " Informations " msgstr " Informations " -#: src/translate.c:420 +#: glade/xcfa_win_about.glade:198 msgid " Machine " -msgstr " Computer " +msgstr " Machine " -#: src/translate.c:421 +#: glade/xcfa_win_about.glade:333 msgid "Ingenieurs du son\n" -msgstr "Sound engineers\n" +msgstr "Ingenieurs du son\n" -#: src/translate.c:422 +#: glade/xcfa_win_about.glade:350 msgid "" "\n" "Graphisme\n" msgstr "" "\n" -"Graphics\n" +"Graphisme\n" -#: src/translate.c:423 +#: glade/xcfa_win_about.glade:370 msgid "" "Traduction Anglaise\n" "\n" "\n" msgstr "" -"English translation\n" +"Traduction Anglaise\n" "\n" "\n" -#: src/translate.c:424 +#: glade/xcfa_win_about.glade:391 msgid "" "\n" "Traduction Allemande" msgstr "" "\n" -"German translation" +"Traduction Allemande" -#: src/translate.c:425 +#: glade/xcfa_win_about.glade:628 msgid "" "\n" "Codeur Xcfa" msgstr "" "\n" -"XCFA programmer" +"Codeur Xcfa" -#: src/translate.c:426 +#: glade/xcfa_win_about.glade:665 msgid "" "\n" "ElementSpeak pour Xcfa " msgstr "" "\n" -"ElementSpeak for XCFA··" +"ElementSpeak pour Xcfa " -#: src/translate.c:427 +#: glade/xcfa_win_about.glade:702 msgid "" "\n" "Codeur pages Web" msgstr "" "\n" -"Webmasters" +"Codeur pages Web" -#: src/translate.c:428 +#: glade/xcfa_win_about.glade:739 msgid "" "\n" "Traduction Italienne" msgstr "" "\n" -"Italian translation" +"Traduction Italienne" -#: src/translate.c:429 +#: glade/xcfa_win_about.glade:800 msgid "" "\n" "\n" @@ -2666,53 +2460,45 @@ msgstr "" "\n" "\n" -"Useful links\n" +"Pages a visiter\n" -#: src/translate.c:430 +#: glade/xcfa_win_about.glade:1123 msgid "Linux On The Root" msgstr "Linux On The Root" -#: src/translate.c:431 +#: glade/xcfa_win_about.glade:1180 msgid "Frugalware" msgstr "Frugalware" -#: src/translate.c:432 +#: glade/xcfa_win_about.glade:1237 msgid "Road2Mayotte" msgstr "Road2Mayotte" -#: src/translate.c:433 +#: glade/xcfa_win_about.glade:1294 msgid "La Linuxerie" msgstr "La Linuxerie" -#: src/translate.c:434 -msgid "Audioptimisation by Dzef" -msgstr "Audioptimisation by Dzef" - -#: src/translate.c:435 +#: glade/xcfa_win_about.glade:1351 msgid "Tuxfamily" msgstr "Tuxfamily" -#: src/translate.c:436 +#: glade/xcfa_win_about.glade:1408 msgid "Framasoft" msgstr "Framasoft" -#: src/translate.c:437 +#: glade/xcfa_win_about.glade:1465 msgid "Ekd (EnKoDeur-Mixeur)" msgstr "Ekd (EnKoDeur-Mixeur)" -#: src/translate.c:438 -msgid "Bishop's page" -msgstr "Bishop's page" +#: glade/xcfa_win_about.glade:1544 +msgid "Debian Multimedia" +msgstr "Debian Multimedia" -#: src/translate.c:439 +#: glade/xcfa_win_about.glade:1598 msgid "Je suis libre" msgstr "Je suis libre" -#: src/translate.c:440 -msgid "Debian Multimedia" -msgstr "Debian Multimedia" - -#: src/translate.c:441 +#: glade/xcfa_win_about.glade:1705 msgid "" "\n" "Forum\n" @@ -2720,19 +2506,15 @@ "\n" "Forum\n" -#: src/translate.c:442 -msgid "XCFA Vorstellung " -msgstr "XCFA Vorstellung " +#: glade/xcfa_win_about.glade:1825 +msgid "Forum Xcfa" +msgstr "Forum Xcfa" -#: src/translate.c:443 +#: glade/xcfa_win_about.glade:1879 msgid "XCFA LinuxForen.de" msgstr "XCFA LinuxForen.de" -#: src/translate.c:444 -msgid "Forum Xcfa" -msgstr "Forum Xcfa" - -#: src/translate.c:445 +#: glade/xcfa_win_about.glade:1929 msgid "" "\n" "Documentation\n" @@ -2740,133 +2522,217 @@ "\n" "Documentation\n" -#: src/translate.c:446 +#: glade/xcfa_win_about.glade:2164 msgid "Wiki Xcfa par Shankarius" -msgstr "XCFA wiki by Shankarius" +msgstr "Wiki Xcfa par Shankarius" -#: src/translate.c:447 +#: glade/xcfa_win_about.glade:2219 msgid "Doc Xcfa par Patachon" -msgstr "XCFA doc. by Patachon" +msgstr "Doc Xcfa par Patachon" -#: src/translate.c:448 +#: glade/xcfa_win_about.glade:2276 msgid "Ogg Vorbis explique par Shankarius" -msgstr "Ogg Vorbis explained by Shankarius" +msgstr "Ogg Vorbis explique par Shankarius" -#: src/translate.c:449 +#: glade/xcfa_win_about.glade:2333 msgid "La normalisation expliquee par Dzef" -msgstr "Normalisation explained by Dzef" +msgstr "La normalisation expliquee par Dzef" -#: src/translate.c:450 +#: glade/xcfa_win_about.glade:2390 msgid "Xcfa sur Linux On The Root" -msgstr "XCFA on Linux On The Root" +msgstr "Xcfa sur Linux On The Root" -#: src/translate.c:451 +#: glade/xcfa_win_about.glade:2433 msgid " Contributions " msgstr " Contributions " -#: src/translate.c:452 +#: glade/xcfa_win_about.glade:2461 msgid " License " -msgstr " Licence " +msgstr " License " -#: src/translate.c:453 +#: glade/xcfa_win_about.glade:2482 msgid "OK" msgstr "OK" -#: src/web.c:173 src/web.c:234 -msgid "PAS de navigateur present" -msgstr "No web browser" - -#: src/web.c:174 -msgid "L'acces au web est impossible car aucun navigateur" -msgstr "No Web access: no web browser" - -#: src/web.c:176 -msgid "n'est present dans votre configuration." -msgstr "found in your system" - -#: src/web.c:178 -msgid "Veuillez installez un navigateur." -msgstr "Please install a web browser" - -#: src/web.c:188 -msgid "Vous devez ouvrir l'acces internet" -msgstr "You need to enable web access" - -#: src/web.c:236 -msgid " L'acces au web est impossible car aucun navigateur" -msgstr " No Web access: no web browser" - -#: src/web.c:238 -msgid " n'est present dans votre configuration." -msgstr " found in your system" - -#: src/web.c:240 -msgid " Veuillez installez un navigateur." -msgstr " Please install a web browser" +#: glade/xcfa_win_scan.glade:9 +msgid "Scan en cours ..." +msgstr "Scan en cours ..." -#: src/web.c:250 -msgid "L'application est absente." -msgstr "Application is missing." +#: glade/xcfa_win_scan.glade:77 +msgid "Scan du support en cours ..." +msgstr "Scan du support en cours ..." -#: src/web.c:251 -msgid "Veuillez installer : " -msgstr "Please install : " +#: glade/xcfa_win_scan.glade:128 +msgid "Detail extraction mode expert" +msgstr "Detail extraction mode expert" -#: src/win_about.c:130 -msgid " Xcfa sur le web" -msgstr " XCFA on the web" +#: glade/xcfa_win_treeview.glade:7 +msgid "Modification des champs" +msgstr "Modification des champs" -#: src/win_about.c:180 +#: glade/xcfa_win_treeview.glade:41 msgid "" "\n" -"Au tout debut:\n" -"\n" -"Serres Patrick, Hamann Regis, Fabien Gregis, @Dzef, @alteo_gange, \n" -"@Leonux, @zarer, @Shankarius, @bishop, @Ludo, @Patachonf,\n" -"... ;-)\n" -"\n" -"" +"Modification des champs\n" msgstr "" "\n" -"In the beginning:\n" -"\n" -"Serres Patrick, Hamann Regis, Fabien Gregis, @Dzef, @alteo_gange, \n" -"@Leonux, @zarer, @Shankarius, @bishop, @Ludo, @Patachonf,\n" -"... ;-)\n" -"\n" -"" +"Modification des champs\n" -#: src/win_scan.c:161 -msgid "Waiting ..." -msgstr "Waiting ..." +#: glade/xcfa_win_treeview.glade:129 +msgid "Temps" +msgstr "Temps" -#~ msgid "Quantification" -#~ msgstr "Quantification" +#: glade/xcfa_win_treeview.glade:163 +msgid "Choix" +msgstr "Choix" -#~ msgid "Voie" -#~ msgstr "Channel" +#: glade/xcfa_win_treeview.glade:197 glade/xcfa_win_treeview.glade:577 +#: glade/xcfa_win_treeview.glade:995 glade/xcfa_win_treeview.glade:1260 +#: glade/xcfa_win_treeview.glade:1508 glade/xcfa_win_treeview.glade:1706 +msgid "Nom" +msgstr "Nom" -#~ msgid " Frequence - Hertz " -#~ msgstr " Frequency -Hertz " +#: glade/xcfa_win_treeview.glade:220 glade/xcfa_win_treeview.glade:600 +#: glade/xcfa_win_treeview.glade:1018 glade/xcfa_win_treeview.glade:1283 +#: glade/xcfa_win_treeview.glade:1531 glade/xcfa_win_treeview.glade:1732 +msgid " Visibilite " +msgstr " Visibilite " -#~ msgid "Cellule" -#~ msgstr "Cell" +#: glade/xcfa_win_treeview.glade:250 glade/xcfa_win_treeview.glade:630 +#: glade/xcfa_win_treeview.glade:1048 glade/xcfa_win_treeview.glade:1313 +#: glade/xcfa_win_treeview.glade:1562 glade/xcfa_win_treeview.glade:1763 +msgid "Nom a gauche" +msgstr "Nom a gauche" + +#: glade/xcfa_win_treeview.glade:267 glade/xcfa_win_treeview.glade:647 +#: glade/xcfa_win_treeview.glade:1065 glade/xcfa_win_treeview.glade:1330 +#: glade/xcfa_win_treeview.glade:1579 glade/xcfa_win_treeview.glade:1780 +msgid "Nom au centre" +msgstr "Nom au centre" + +#: glade/xcfa_win_treeview.glade:286 glade/xcfa_win_treeview.glade:666 +#: glade/xcfa_win_treeview.glade:1084 glade/xcfa_win_treeview.glade:1349 +#: glade/xcfa_win_treeview.glade:1598 glade/xcfa_win_treeview.glade:1799 +msgid "Nom a droite" +msgstr "Nom a droite" + +#: glade/xcfa_win_treeview.glade:326 +msgid "DVD" +msgstr "DVD" -#~ msgid "Colonne" -#~ msgstr "Column" +#: glade/xcfa_win_treeview.glade:373 glade/xcfa_win_treeview.glade:791 +msgid "Wav" +msgstr "Wav" -#~ msgid " Cacher Xcfa " -#~ msgstr " Hide Xcfa " +#: glade/xcfa_win_treeview.glade:390 glade/xcfa_win_treeview.glade:808 +msgid "Flac" +msgstr "Flac" + +#: glade/xcfa_win_treeview.glade:407 glade/xcfa_win_treeview.glade:825 +msgid "Ape" +msgstr "Ape" + +#: glade/xcfa_win_treeview.glade:424 glade/xcfa_win_treeview.glade:842 +msgid "Wavpack" +msgstr "Wavpack" + +#: glade/xcfa_win_treeview.glade:441 glade/xcfa_win_treeview.glade:859 +msgid "Ogg" +msgstr "Ogg" + +#: glade/xcfa_win_treeview.glade:458 glade/xcfa_win_treeview.glade:876 +msgid "M4a" +msgstr "M4a" + +#: glade/xcfa_win_treeview.glade:475 glade/xcfa_win_treeview.glade:893 +msgid "Aac" +msgstr "Aac" + +#: glade/xcfa_win_treeview.glade:492 glade/xcfa_win_treeview.glade:910 +msgid "Musepack" +msgstr "Musepack" + +#: glade/xcfa_win_treeview.glade:509 glade/xcfa_win_treeview.glade:927 +msgid "Mp3" +msgstr "Mp3" + +#: glade/xcfa_win_treeview.glade:526 +msgid "Num" +msgstr "Num" + +#: glade/xcfa_win_treeview.glade:709 +msgid "CD" +msgstr "CD" + +#: glade/xcfa_win_treeview.glade:978 +msgid "Replaygain" +msgstr "Replaygain" + +#: glade/xcfa_win_treeview.glade:1127 +msgid "CONVERSIONS" +msgstr "CONVERSIONS" + +#: glade/xcfa_win_treeview.glade:1158 +msgid "Hertz" +msgstr "Hertz" + +#: glade/xcfa_win_treeview.glade:1175 +msgid "New Hertz" +msgstr "New Hertz" + +#: glade/xcfa_win_treeview.glade:1192 +msgid "Voie" +msgstr "Voie" + +#: glade/xcfa_win_treeview.glade:1209 +msgid "New Voie" +msgstr "New Voie" + +#: glade/xcfa_win_treeview.glade:1226 +msgid "Bits" +msgstr "Bits" + +#: glade/xcfa_win_treeview.glade:1243 +msgid "New Bits" +msgstr "New Bits" + +#: glade/xcfa_win_treeview.glade:1392 +msgid "WAV" +msgstr "WAV" + +#: glade/xcfa_win_treeview.glade:1440 +msgid "Bitrate" +msgstr "Bitrate" + +#: glade/xcfa_win_treeview.glade:1457 +msgid "New Bitrate" +msgstr "New Bitrate" + +#: glade/xcfa_win_treeview.glade:1641 +msgid "MP3-OGG" +msgstr "MP3-OGG" + +#: glade/xcfa_win_treeview.glade:1842 +msgid "TAGS" +msgstr "TAGS" + +#: glade/xcfa_win_treeview.glade:1894 +msgid "Selection globale" +msgstr "Selection globale" + +#: glade/xcfa_win_treeview.glade:1948 +msgid "Deselection globale" +msgstr "Deselection globale" + +#: glade/xcfa_win_treeview.glade:2009 +msgid "Retour" +msgstr "Retour" -#~ msgid " Montrer Xcfa " -#~ msgstr " Show Xcfa " +#~ msgid "Audioptimisation by Dzef" +#~ msgstr "Audioptimisation by Dzef" -#~ msgid " Quitter Xcfa " -#~ msgstr " Quit Xcfa " +#~ msgid "Bishop's page" +#~ msgstr "Bishop's page" -#~ msgid "" -#~ "XCFA\n" -#~ "Programme pour convertir les fichiers audio." -#~ msgstr "" -#~ "XCFA\n" -#~ "Program for converting audio files." +#~ msgid "XCFA Vorstellung " +#~ msgstr "XCFA Vorstellung " Binary files /tmp/U9mREQ24T4/xcfa-4.3.8/po/en.gmo and /tmp/9PqOMEw8oW/xcfa-5.0.1/po/en.gmo differ diff -Nru xcfa-4.3.8/po/en.po xcfa-5.0.1/po/en.po --- xcfa-4.3.8/po/en.po 2014-01-31 12:25:57.000000000 +0000 +++ xcfa-5.0.1/po/en.po 2015-03-01 17:00:50.000000000 +0000 @@ -5,157 +5,102 @@ # msgid "" msgstr "" -"Project-Id-Version: xcfa 4.2.8\n" +"Project-Id-Version: xcfa 5.0.0\n" "Report-Msgid-Bugs-To: xcfa@tuxfamily.org\n" -"POT-Creation-Date: 2014-01-31 13:25+0100\n" -"PO-Revision-Date: 2010-08-21 18:45+0100\n" +"POT-Creation-Date: 2015-03-01 18:00+0100\n" +"PO-Revision-Date: 2015-02-06 15:48+0100\n" "Last-Translator: Gerry Butler \n" "Language-Team: English \n" "Language: en\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" +"X-Generator: Poedit 1.7.3\n" -#: src/cd_audio.c:812 src/dvd.c:680 src/dvd.c:1324 -msgid "MPLAYER deja en action" +#: src/cd_audio.c:814 src/dvd.c:686 src/dvd.c:1345 +msgid "MPLAYER already in action" msgstr "MPLAYER already in action" -#: src/cd_audio.c:813 src/dvd.c:681 src/dvd.c:1325 -msgid "MPLAYER est deja utilise !!" +#: src/cd_audio.c:815 src/dvd.c:687 src/dvd.c:1346 +msgid "MPLAYER is already in use !!" msgstr "MPLAYER is already in use !!" -#: src/cd_audio.c:1224 src/cd_audio.c:1230 src/dvd.c:867 src/file.c:2827 -msgid "(Click Droit = Menu) / En attente de selection." +#: src/cd_audio.c:1227 src/cd_audio.c:1233 src/file.c:2837 +msgid "(Right click = Menu) / Waiting for selection." msgstr "(Right click = Menu) / Waiting for selection." -#: src/cd_audio.c:1227 src/file.c:2824 -msgid "Le programme externe d'extraction est absent." -msgstr "The external ripping program is missing" - -#: src/cd_audio.c:1233 src/file.c:2830 -msgid "(Click Droit = Menu) / En attente de selection. Le fichier existe." -msgstr "(Right click = Menu) / Waiting for Selection. File exists." +#: src/cd_audio.c:1230 +msgid "The external ripping program is missing." +msgstr "The external ripping program is missing." + +#: src/cd_audio.c:1236 +msgid "(Right click = Menu) / Waiting for Selection. File exists.." +msgstr "(Right click = Menu) / Waiting for Selection. File exists.." + +#: src/cd_audio.c:1239 +msgid "(Right click = Menu) / Selected files." +msgstr "(Right click = Menu) / Selected files." -#: src/cd_audio.c:1236 src/file.c:2833 -msgid "(Click Droit = Menu) / En selection." -msgstr "(Right click = Menu) / Selected files" - -#: src/cd_audio.c:1239 src/file.c:2839 -msgid "(Click Droit = Menu) / Selection avec options expert." +#: src/cd_audio.c:1242 src/file.c:2849 +msgid "(Right click = Menu) / Selection - expert mode." msgstr "(Right click = Menu) / Selection - expert mode." -#: src/cd_audio.c:1242 src/file.c:2836 -msgid "(Click Droit = Menu) / En selection. Le fichier existe." +#: src/cd_audio.c:1245 src/file.c:2846 +msgid "(Right click = Menu) / Selected files. File exists." msgstr "(Right click = Menu) / Selected files. File exists." -#: src/cd_audio.c:1245 src/file.c:2842 -msgid "" -"(Click Droit = Menu) / Selection avec options expert. Le fichier existe." +#: src/cd_audio.c:1248 src/file.c:2852 +msgid "(Right click = Menu) / Selection - expert mode. File exists." msgstr "(Right click = Menu) / Selection - expert mode. File exists." -#: src/cd_audio.c:1254 +#: src/cd_audio.c:1257 msgid "" -"(Click Droit = Menu) / Possibilite d'ajustement INDIVIDUEL ou COLLECTIF " -"maximal du volume" +"(Right click = Menu) / Possibilities for individual adaptation or maximum " +"collection volume" msgstr "" "(Right click = Menu) / Possibilities for individual adaptation or maximum " "collection volume" -#: src/cd_audio.c:1259 -msgid "(Click Droit = Menu) / Ajustement INDIVIDUEL maximal du volume" -msgstr "(Click Droit = Menu) / INDIVIDUAL maximum volume adjustment" - #: src/cd_audio.c:1262 -msgid "(Click Droit = Menu) / Ajustement COLLECTIF maximal du volume" -msgstr "(Click Droit = Menu) / COLLECTIVE maximum volume adjustment" - -#: src/cd_audio.c:1502 src/dvd.c:1099 src/file.c:3137 src/translate.c:331 -#: src/translate.c:342 src/translate.c:361 -msgid "Play" -msgstr "Play" - -#: src/cd_audio.c:1543 src/file.c:3202 src/translate.c:343 src/translate.c:364 -msgid "Wav" -msgstr "Wav" - -#: src/cd_audio.c:1564 src/file.c:3221 src/translate.c:344 src/translate.c:365 -msgid "Flac" -msgstr "Flac" - -#: src/cd_audio.c:1584 src/file.c:3240 src/translate.c:345 src/translate.c:366 -msgid "Ape" -msgstr "Ape" - -#: src/cd_audio.c:1604 src/file.c:3259 -msgid "WavP" -msgstr "WavP" - -#: src/cd_audio.c:1624 src/file.c:3278 src/translate.c:347 src/translate.c:368 -msgid "Ogg" -msgstr "Ogg" - -#: src/cd_audio.c:1645 src/file.c:3297 src/translate.c:348 src/translate.c:369 -msgid "M4a" -msgstr "M4a" +msgid "(Right click = Menu) / INDIVIDUAL maximum volume adjustment" +msgstr "(Right click = Menu) / INDIVIDUAL maximum volume adjustment" -#: src/cd_audio.c:1666 src/file.c:3316 src/translate.c:349 src/translate.c:370 -msgid "Aac" -msgstr "Aac" - -#: src/cd_audio.c:1686 src/file.c:3335 -msgid "Mpc" -msgstr "Mpc" - -#: src/cd_audio.c:1706 src/file.c:3354 src/translate.c:351 src/translate.c:372 -msgid "Mp3" -msgstr "Mp3" - -#: src/cd_audio.c:1727 src/translate.c:352 -msgid "Num" -msgstr "Num" - -#: src/cd_audio.c:1742 src/translate.c:353 src/translate.c:373 -#: src/translate.c:398 src/translate.c:406 -msgid "Time" -msgstr "Time" - -#: src/cd_audio.c:1757 src/dvd.c:1167 src/file.c:3390 src/translate.c:335 -#: src/translate.c:354 src/translate.c:374 +#: src/cd_audio.c:1265 +msgid "(Right click = Menu) / COLLECTIVE maximum volume adjustment" +msgstr "(Right click = Menu) / COLLECTIVE maximum volume adjustment" + +#: src/cd_audio.c:1764 src/dvd.c:1187 src/file.c:3403 +#: glade/xcfa_win_treeview.glade:180 glade/xcfa_win_treeview.glade:560 +#: glade/xcfa_win_treeview.glade:961 msgid "Normalise" msgstr "Normalise" -#: src/cd_audio.c:1782 src/dvd.c:1187 src/file.c:3432 src/file_mp3ogg.c:958 -#: src/file_tags.c:1191 src/file_wav.c:824 src/prg_init.c:609 -#: src/translate.c:336 src/translate.c:355 src/translate.c:376 -#: src/translate.c:388 src/translate.c:399 src/translate.c:407 -msgid "Nom" +#: src/cd_audio.c:1789 src/dvd.c:1207 src/file.c:3445 src/file_mp3ogg.c:964 +#: src/file_tags.c:1253 src/file_wav.c:830 src/prg_init.c:609 +msgid "Name" msgstr "Name" -#: src/cd_audio.c:2511 -msgid " Parametrage CDDB: [ Nom du serveur ]" +#: src/cd_audio.c:2517 +msgid " Setting up CDDB: [ Server name ]" msgstr " Setting up CDDB: [ Server name ]" -#: src/cd_audio.c:2520 -msgid " Parametrage PROXY: [ serveur ] [ port ]" +#: src/cd_audio.c:2526 +msgid " Proxy settings: [ server ] [ port ] " msgstr " Proxy settings: [ server ] [ port ] " -#: src/cd_audio.c:2530 src/translate.c:95 -msgid " Serveur " +#: src/cd_audio.c:2536 glade/xcfa.glade:1842 +msgid " Server " msgstr " Server " #: src/cd_audio_extract.c:673 #, c-format -msgid "" -"[Erreur du segment numero: %d]\n" -"%d) Lecture PASS 1/2\n" -msgstr "" -"[Error on segment #%d]\n" -"%d) Playing PASS 1/2\n" +msgid "[Error on segment #%d] %d) Playing PASS 1/2\n" +msgstr "[Error on segment #%d] %d) Playing PASS 1/2\n" #: src/cd_audio_extract.c:680 #, c-format msgid "" -"--> Deja %d fois 2 lectures du segment %d!\n" +"--> Segment %d already read two %d times!\n" " Abandon :/\n" msgstr "" "--> Segment %d already read two %d times!\n" @@ -163,50 +108,50 @@ #: src/cd_audio_extract.c:700 #, c-format -msgid "%d) Lecture PASS 2/2\n" +msgid "%d) Read PASS 2/2\n" msgstr "%d) Read PASS 2/2\n" #: src/cd_audio_extract.c:780 #, c-format msgid "" "\n" -"[Piste: %d]\n" +"[Track: %d]\n" msgstr "" "\n" "[Track: %d]\n" #: src/cd_audio_extract.c:784 -msgid "Extraction mode expert PASS 1/2\n" +msgid "Ripping expert mode PASS 1/2\n" msgstr "Ripping expert mode PASS 1/2\n" #: src/cd_audio_extract.c:795 -msgid "Extraction mode expert PASS 2/2\n" +msgid "Ripping expert mode PASS 2/2\n" msgstr "Ripping expert mode PASS 2/2\n" #: src/cd_audio_extract.c:803 -msgid "Controle du contenu des fichiers extraits\n" +msgid "Control the content of the extracted files\n" msgstr "Control the content of the extracted files\n" #: src/cd_audio_extract.c:1710 src/cd_audio_extract.c:1712 msgid "XCFA: Extraction CD" -msgstr "XCFA: CD Ripping" +msgstr "XCFA: Extraction CD" #: src/cd_audio_extract.c:1710 src/dvd_extract.c:412 src/file_action.c:183 #: src/file_mp3ogg_conv.c:329 src/file_wav_conv.c:343 msgid "Ok" -msgstr "Okay" +msgstr "Ok" #: src/cd_audio_extract.c:1712 src/dvd_extract.c:414 src/file_action.c:185 #: src/file_mp3ogg_conv.c:331 src/file_wav_conv.c:345 -msgid "Arret par l'utilisateur" -msgstr "Stopped by user" +msgid "Stop by user" +msgstr "Stop by user" #: src/cd_audio_extract.c:1983 -msgid "Nom de fichier unique absent" +msgid "File name not found" msgstr "File name not found" #: src/cd_audio_extract.c:1984 -msgid "Veuillez saisir un nom pour le fichier unique" +msgid "Please enter a file name" msgstr "Please enter a file name" #: src/cd_audio_toc.c:156 @@ -247,18 +192,18 @@ #: src/cd_audio_toc.c:189 msgid "Please, install packages [ cd-discid ]" -msgstr "Please, install package [ cd-discid ]" +msgstr "Please, install packages [ cd-discid ]" #: src/cd_audio_toc.c:203 -msgid "ERREUR datas proxy" +msgid "ERROR datas proxy" msgstr "ERROR datas proxy" #: src/cd_audio_toc.c:204 -msgid "Veuillez renseigner les champs du proxy" +msgid "Please complete all fields proxy" msgstr "Please complete all fields proxy" #: src/cd_curl.c:734 src/web.c:187 -msgid "La liaison internet est absente" +msgid "A web connection is missing" msgstr "A web connection is missing" #: src/cd_curl.c:1204 @@ -269,133 +214,127 @@ msgid "No Audio CD" msgstr "No Audio CD" -#: src/dvd.c:859 +#: src/dvd.c:877 msgid "" -"(Click Droit = Menu) / PEAK-ALBUM: Amplification maximale du volume pour un " -"groupe de fichiers en respectant les ecarts de niveau entre chacun d'eux." +"(Right click = Menu) / Maximum volume amplification of a group of files " +"keeping the level difference between each of them." msgstr "" "(Right click = Menu) / Maximum volume amplification of a group of files " -"keeping the level difference between each of them" +"keeping the level difference between each of them." -#: src/dvd.c:862 -msgid "" -"(Click Droit = Menu) / PEAK: Amplification maximale du volume pour chaque de " -"fichier." -msgstr "" -"(Right click = Menu) / PEAK: Maximum volume amplification for each file" +#: src/dvd.c:882 src/file.c:2882 +msgid "PEAK: Maximum volume amplification of each file." +msgstr "PEAK: Maximum volume amplification of each file." + +#: src/dvd.c:887 +msgid "(Right click = Menu) / ReplayGain: Waiting for selection." +msgstr "(Right click = Menu) / ReplayGain: Waiting for selection." -#: src/dvd.c:900 src/dvd.c:920 -msgid "En attente de selection. Un click activera la conversion vers 2 canaux." +#: src/dvd.c:920 src/dvd.c:940 +msgid "" +"Waiting for selection. A click will activate the conversion to 2 channels." msgstr "" "Waiting for selection. A click will activate the conversion to 2 channels." -#: src/dvd.c:912 -msgid "Conversion vers 2 canaux." +#: src/dvd.c:932 +msgid "Conversion to 2 channels." msgstr "Conversion to 2 channels." -#: src/dvd.c:924 +#: src/dvd.c:944 #, c-format -msgid "Conversion vers %s canaux." +msgid "Conversion to %s channels." msgstr "Conversion to %s channels." -#: src/dvd.c:929 +#: src/dvd.c:949 #, c-format msgid "" -"Conversion vers 2 canaux. Un second click activera la conversion vers %s " -"canaux." +"Conversion to 2 channels. A second click will activate the conversion to %s " +"channels." msgstr "" "Conversion to 2 channels. A second click will activate the conversion to %s " "channels." -#: src/dvd.c:944 -msgid "Musique en ecoute." +#: src/dvd.c:964 +msgid "Playing music." msgstr "Playing music." -#: src/dvd.c:947 -msgid "Musique en attente." +#: src/dvd.c:967 +msgid "Music paused." msgstr "Music paused." -#: src/dvd.c:962 +#: src/dvd.c:982 #, c-format msgid "Total selection%s: %d, 2ch: %d" msgstr "Total selection%s: %d, 2ch: %d" -#: src/dvd.c:963 +#: src/dvd.c:983 msgid "s" msgstr "s" -#: src/dvd.c:969 -msgid "Ce fichier ne peut etre extrait !" +#: src/dvd.c:989 +msgid "This file can not be ripped !" msgstr "This file can not be ripped !" -#: src/dvd.c:1087 -msgid "Titres" -msgstr "Titls" +#: src/dvd.c:1107 +msgid "Titles" +msgstr "Titles" -#: src/dvd.c:1111 src/file.c:3373 src/file_mp3ogg.c:943 src/file_tags.c:1175 -#: src/translate.c:332 -msgid "Temps" +#: src/dvd.c:1119 glade/xcfa_win_treeview.glade:112 +#: glade/xcfa_win_treeview.glade:356 glade/xcfa_win_treeview.glade:740 +msgid "Play" +msgstr "Play" + +#: src/dvd.c:1131 src/file.c:3386 src/file_mp3ogg.c:949 src/file_tags.c:1237 +#: glade/xcfa_win_treeview.glade:543 glade/xcfa_win_treeview.glade:944 +#: glade/xcfa_win_treeview.glade:1491 glade/xcfa_win_treeview.glade:1689 +msgid "Time" msgstr "Time" -#: src/dvd.c:1123 src/translate.c:333 +#: src/dvd.c:1143 glade/xcfa_win_treeview.glade:146 msgid "Format" msgstr "Format" -#: src/dvd.c:1135 src/translate.c:334 -msgid "Choix" +#: src/dvd.c:1155 +msgid "Choice" msgstr "Choice" -#: src/dvd.c:1249 -msgid "Fichier structure DVD" +#: src/dvd.c:1267 +msgid "DVD file structure" msgstr "DVD file structure" -#: src/dvd.c:1299 -msgid "Le DVD est absent du lecteur." +#: src/dvd.c:1320 +msgid "The DVD player is absent." msgstr "The DVD player is absent." -#: src/dvd.c:1335 -msgid "Scan ..." -msgstr "Scan ..." - -#: src/dvd.c:1385 -msgid "lsdvd est absent !" +#: src/dvd.c:1410 +msgid "lsdvd is missing !" msgstr "lsdvd is missing !" -#: src/dvd.c:1386 -msgid "Il faut installer le programme: lsdvd" +#: src/dvd.c:1411 +msgid "You must install the program: lsdvd" msgstr "You must install the program: lsdvd" #: src/dvd_extract.c:412 src/dvd_extract.c:414 -msgid "XCFA: Extraction DVD" +msgid "XCFA: DVD rip" msgstr "XCFA: DVD rip" -#: src/dvd_read.c:263 +#: src/dvd_read.c:226 #, c-format -msgid "Titre [%02d ** ]" +msgid "Title [%02d ** ]" msgstr "Title [%02d ** ]" -#: src/dvd_read.c:266 +#: src/dvd_read.c:227 #, c-format -msgid "Titre [%02d]" +msgid "Title [%02d]" msgstr "Title [%02d]" -#: src/dvd_read.c:310 -#, c-format -msgid "Fichier_complet_%02d_%s" -msgstr "Completed_file_%02d_%s" - -#: src/dvd_read.c:355 +#: src/dvd_read.c:252 #, c-format -msgid "Chapitre: [%02d]" +msgid "Chapter: [%02d]" msgstr "Chapter: [%02d]" -#: src/dvd_read.c:401 -#, c-format -msgid "Titre_%02d_Chapitre_%02d_audio_%02d_%s" -msgstr "Title_%02d_Chapter_%02d_audio_%02d_%s" - #: src/file_action.c:183 src/file_action.c:185 -msgid "XCFA: Traitement fichiers" +msgid "XCFA: Processing files" msgstr "XCFA: Processing files" #: src/file_analyze.c:731 @@ -404,145 +343,144 @@ #: src/file_analyze.c:732 msgid "" -"Veuillez installer checkmp3 ou mp3check pour\n" -"la prise en compte des fichiers mp3" +"Please install or checkmp3 mp3check for\n" +"consideration of mp3 files" msgstr "" "Please install or checkmp3 mp3check for\n" "consideration of mp3 files" -#: src/file.c:328 +#: src/file.c:327 #, c-format -msgid "Total fichiers: %d, Selections: %d" -msgstr "Total files: %d, Selected: %d" +msgid "Total files: %d, Selections: %d" +msgstr "Total files: %d, Selections: %d" -#: src/file.c:442 -msgid "CAPACITE DOSSIER TEMPORAIRE TROP FAIBLE" +#: src/file.c:441 +msgid "TEMPORARY CAPACITY TOO LOW" msgstr "TEMPORARY CAPACITY TOO LOW" -#: src/file.c:443 -msgid "Pas assez de place dans le dossier temporaire" +#: src/file.c:442 src/file.c:2875 +msgid "WARNING: Not enough space available in the temp folder." msgstr "WARNING: Not enough space available in the temp folder." -#: src/file.c:449 -msgid "Veuillez deselectionner des PeakGroup." +#: src/file.c:448 +msgid "Please deselect PeakGroup." msgstr "Please deselect PeakGroup." -#: src/file.c:1433 -msgid "Conversion(s) vers la source" +#: src/file.c:1431 +msgid "Conversion(s) to source" msgstr "Conversion(s) to source" -#: src/file.c:1434 -msgid "Choix d'une nouvelle destination" +#: src/file.c:1432 +msgid "Select a new destination" msgstr "Select a new destination" -#: src/file.c:1504 +#: src/file.c:1501 msgid "Select type: --" -msgstr "Select type: -" +msgstr "Select type: --" -#: src/file.c:1589 +#: src/file.c:1584 msgid "Peak/album" msgstr "Peak/album" -#: src/file.c:1590 +#: src/file.c:1585 msgid "Peak" msgstr "Peak" -#: src/file.c:1591 +#: src/file.c:1586 msgid "Mix (scan)Rms/album" msgstr "Mix (scan)Rms/album" -#: src/file.c:1592 +#: src/file.c:1587 msgid "Fix (scan)Rms" msgstr "Fix (scan)Rms" -#: src/file.c:2851 +#: src/file.c:2834 +msgid "The external ripping program is missing" +msgstr "The external ripping program is missing" + +#: src/file.c:2840 +msgid "(Right click = Menu) / Waiting for Selection. File exists." +msgstr "(Right click = Menu) / Waiting for Selection. File exists." + +#: src/file.c:2843 +msgid "(Right click = Menu) / Selected files" +msgstr "(Right click = Menu) / Selected files" + +#: src/file.c:2861 #, c-format -msgid "MAX FICHIERS ATTEINT = %d" +msgid "MAX FILES REACHED = %d" msgstr "MAX FILES REACHED = %d" -#: src/file.c:2861 -msgid "Normalise: En attente de selection." +#: src/file.c:2871 +msgid "Normalise: Waiting for selection." msgstr "Normalise: Waiting for selection." -#: src/file.c:2865 -msgid "ATTENTION: Pas assez de place dans le dossier temporaire." -msgstr "WARNING: Not enough space available in the temp folder." - -#: src/file.c:2868 +#: src/file.c:2878 msgid "" -"PEAK-ALBUM: Amplification maximale du volume pour un groupe de fichiers en " -"respectant les ecarts de niveau entre chacun d'eux." +"PEAK-ALBUM: Maximum volume amplification for a group of files according to " +"the deviations in level between them" msgstr "" "PEAK-ALBUM: Maximum volume amplification for a group of files according to " "the deviations in level between them" -#: src/file.c:2872 -msgid "PEAK: Amplification maximale du volume pour chaque de fichier." -msgstr "PEAK: Maximum volume amplification of each file." - -#: src/file.c:2875 +#: src/file.c:2885 msgid "" -"RMS-ALBUM: Ajustement du volume moyen pour un groupe de fichiers en " -"respectant les ecarts de niveau moyen entre chacun d'eux." +"RMS-ALBUM: Adjusting the average volume for a group of files according to " +"the average level of deviation between them." msgstr "" "RMS-ALBUM: Adjusting the average volume for a group of files according to " "the average level of deviation between them." -#: src/file.c:2878 -msgid "RMS: Ajustement du volume moyen de chaque de fichier." +#: src/file.c:2888 +msgid "RMS: Average volume amplification of each file." msgstr "RMS: Average volume amplification of each file." -#: src/file.c:2892 -msgid "(Click Droit = Menu) / ReplayGain: En attente de selection." -msgstr "(Click Droit = Menu) / ReplayGain: Waiting for selection." - -#: src/file.c:2895 -msgid "(Click Droit = Menu) / Mode piste." -msgstr "(Click Droit = Menu) / Track mode." - -#: src/file.c:2898 -msgid "(Click Droit = Menu) / Mode album." -msgstr "(Click Droit = Menu) / Album mode." - -#: src/file.c:2901 -msgid "(Click Droit = Menu) / Mode effacer." -msgstr "(Click Droit = Menu) / Erase mode." +#: src/file.c:2902 +msgid "(Right Click = Menu) / ReplayGain: Waiting for selection." +msgstr "(Right Click = Menu) / ReplayGain: Waiting for selection." + +#: src/file.c:2905 +msgid "(Right Click = Menu) / Track mode." +msgstr "(Right Click = Menu) / Track mode." + +#: src/file.c:2908 +msgid "(Right Click = Menu) / Album mode." +msgstr "(Right Click = Menu) / Album mode." + +#: src/file.c:2911 +msgid "(Right Click = Menu) / Erase mode." +msgstr "(Right Click = Menu) / Erase mode." -#: src/file.c:3013 +#: src/file.c:3026 msgid "" -"(Click Droit = Menu) / Cliquez ici pour envoyer ce fichier apres traitement " -"a la corbeille" +"(Click Droit = Menu) / Click here to send the processed file to the trash" msgstr "" "(Click Droit = Menu) / Click here to send the processed file to the trash" -#: src/file.c:3016 +#: src/file.c:3029 msgid "" -"(Click Droit = Menu) / Ce fichier sera dirige apres traitement vers la " -"corbeille" +"(Right Click = Menu) / This file will be sent to the trash after processing" msgstr "" "(Right Click = Menu) / This file will be sent to the trash after processing" -#: src/file.c:3150 src/file_trash.c:359 src/translate.c:362 +#: src/file.c:3163 src/file_trash.c:208 glade/xcfa_win_treeview.glade:757 msgid "Trash" msgstr "Trash" -#: src/file.c:3170 src/file_mp3ogg.c:883 src/file_tags.c:1160 -#: src/translate.c:363 src/translate.c:394 src/translate.c:405 +#: src/file.c:3183 src/file_mp3ogg.c:889 src/file_tags.c:1222 +#: glade/xcfa_win_treeview.glade:774 glade/xcfa_win_treeview.glade:1423 +#: glade/xcfa_win_treeview.glade:1672 msgid "Type" msgstr "Type" -#: src/file.c:3409 -msgid "ReplayGain" -msgstr "ReplayGain" - -#: src/file_conv.c:1187 src/file_mp3ogg_conv.c:336 -msgid "Erreur depuis MPLAYER !" +#: src/file_conv.c:1187 +msgid "Error since MPLAYER !" msgstr "Error since MPLAYER !" #: src/file_conv.c:1188 src/file_conv.c:1200 src/file_mp3ogg_conv.c:337 #: src/file_mp3ogg_conv.c:349 -msgid "Vous pouvez activer XCFA en ligne de commande avec: " -msgstr "You can enable XCFA command line with: " +msgid "You can enable XCFA command line with: " +msgstr "You can enable XCFA command line with: " #: src/file_conv.c:1190 src/file_conv.c:1202 src/file_mp3ogg_conv.c:339 #: src/file_mp3ogg_conv.c:351 @@ -550,50 +488,54 @@ msgstr "$ xcfa -verbose" #: src/file_conv.c:1192 src/file_mp3ogg_conv.c:341 -msgid "pour consulter le type d'erreur renvoye par mplayer." +msgid "to see the type of error returned by mplayer." msgstr "to see the type of error returned by mplayer." -#: src/file_conv.c:1199 src/file_mp3ogg_conv.c:348 -msgid "Erreur depuis SOX !" +#: src/file_conv.c:1199 +msgid "Error since SOX !" msgstr "Error since SOX !" #: src/file_conv.c:1204 src/file_mp3ogg_conv.c:353 -msgid "pour consulter le type d'erreur renvoye par sox." +msgid "to see the type of error returned by sox." msgstr "to see the type of error returned by sox." -#: src/file_mp3ogg.c:668 -msgid "Click droit: acces popup" +#: src/file_mp3ogg.c:670 +msgid "Right click: access popup" msgstr "Right click: access popup" -#: src/file_mp3ogg.c:899 src/translate.c:395 -msgid "Bitrate" -msgstr "Bitrate" - -#: src/file_mp3ogg.c:915 -msgid "Nouveau bitrate" +#: src/file_mp3ogg.c:921 +msgid "New bitrate" msgstr "New bitrate" -#: src/file_mp3ogg.c:929 -msgid "Taille" +#: src/file_mp3ogg.c:935 glade/xcfa_win_treeview.glade:1474 +msgid "Size" msgstr "Size" #: src/file_mp3ogg_conv.c:329 src/file_mp3ogg_conv.c:331 -msgid "XCFA: Modification bitrate" +msgid "XCFA: Bitrate change" msgstr "XCFA: Bitrate change" +#: src/file_mp3ogg_conv.c:336 +msgid "Error from MPLAYER !" +msgstr "Error from MPLAYER !" + +#: src/file_mp3ogg_conv.c:348 +msgid "Error from SOX !" +msgstr "Error from SOX !" + #: src/file_mp3ogg_conv.c:432 #, c-format -msgid " ATTENTION: Il faut installer %s%s%s" +msgid " WARNING : you need to install %s%s%s" msgstr " WARNING : you need to install %s%s%s" #: src/file_mp3ogg_conv.c:440 #, c-format -msgid " ATTENTION: Il faut installer %s%s" +msgid " WARNING : you need to install %s%s" msgstr " WARNING : you need to install %s%s" #: src/file_mp3ogg_conv.c:447 #, c-format -msgid " ATTENTION: Il faut installer %s" +msgid " WARNING : you need to install %s" msgstr " WARNING : you need to install %s" #: src/file_mp3ogg_conv.c:454 @@ -601,371 +543,360 @@ msgstr "Package NOT FOUND !" #: src/fileselect.c:105 -msgid "Choix d'un dossier de destination" -msgstr "Select a destination folder" +msgid "Choosing a destination folder" +msgstr "Choosing a destination folder" #: src/fileselect.c:106 -msgid "Choix d'un fichier CUE WAV FLAC OGG MP3 APE WMA" -msgstr "Select CUE WAV FLAC OGG MP3 APE WMA files" +msgid "Choosing a file CUE WAV FLAC OGG MP3 APE WMA" +msgstr "Choosing a file CUE WAV FLAC OGG MP3 APE WMA" #: src/fileselect.c:107 -msgid "Choix d'un fichier musical" -msgstr "Selecting a music file" +msgid "Choosing a file musical" +msgstr "Choosing a file musical" -#: src/fileselect.c:108 -msgid "Choix d'un fichier" -msgstr "Select a file" - -#: src/fileselect.c:109 -msgid "Choix de fichiers" -msgstr "Select files" +#: src/fileselect.c:108 src/fileselect.c:109 +msgid "Choosing a file" +msgstr "Choosing a file" #: src/fileselect.c:110 -msgid "Choix de fichiers WAV" -msgstr "Select a WAV file" +msgid "Choosing a WAV file" +msgstr "Choosing a WAV file" #: src/fileselect.c:111 -msgid "Choix de fichiers MP3/OGG" -msgstr "Select MP3/OGG file" +msgid "Choosing a MP3 OGG file" +msgstr "Choosing a MP3 OGG file" #: src/fileselect.c:112 -msgid "Choix de fichiers FLAC MPC OGG MP3" -msgstr "Select FLAC MPC OGG MP3 files" +msgid "Choosing a FLAC MPC OGG MP3 file" +msgstr "Choosing a FLAC MPC OGG MP3 file" #: src/fileselect.c:113 -msgid "Importer des images pour la pochette" -msgstr "Import images for the cover" +msgid "Import pictures for the cover" +msgstr "Import pictures for the cover" #: src/fileselect.c:114 -msgid "Choix d'un chemin de stockage des images" -msgstr "Select location for image storage" +msgid "Choosing an Image Storage path" +msgstr "Choosing an Image Storage path" #: src/fileselect.c:115 -msgid "Choix d'un lieu de sauvegarde" -msgstr "Select a backup location" +msgid "Choosing a place for backup" +msgstr "Choosing a place for backup" + +#: src/fileselect.c:396 src/fileselect.c:415 src/fileselect.c:703 +msgid "Cancel" +msgstr "Cancel" + +#: src/fileselect.c:398 src/fileselect.c:417 src/fileselect.c:705 +msgid "Open" +msgstr "Open" -#: src/fileselect.c:472 src/fileselect.c:595 src/fileselect.c:605 -#: src/fileselect.c:628 +#: src/fileselect.c:494 src/fileselect.c:617 src/fileselect.c:627 +#: src/fileselect.c:650 msgid "All Files (*.*)" msgstr "All Files (*.*)" -#: src/file_trash.c:360 +#: src/file_trash.c:211 msgid "Trash files ..." msgstr "Trash files ..." -#: src/file_wav.c:483 -msgid "(Click Droit = Menu) / Choix de la frequence" +#: src/file_wav.c:485 +msgid "(Right Click = Menu) / Select frequency" msgstr "(Right Click = Menu) / Select frequency" -#: src/file_wav.c:486 -msgid "(Click Droit = Menu) / Choix du nombre de pistes (voies)" +#: src/file_wav.c:488 +msgid "(Right Click = Menu) / Select number of tracks (channels)" msgstr "(Right Click = Menu) / Select number of tracks (channels)" -#: src/file_wav.c:489 -msgid "(Click Droit = Menu) / Choix du codage en nombre de bits" +#: src/file_wav.c:491 +msgid "(Right Click = Menu) / Encoding selection in number of bits" msgstr "(Right Click = Menu) / Encoding selection in number of bits" -#: src/file_wav.c:733 -msgid "Frequence" +#: src/file_wav.c:739 +msgid "Frequency" msgstr "Frequency" -#: src/file_wav.c:749 -msgid "FREQUENCE" +#: src/file_wav.c:755 +msgid "FREQUENCY" msgstr "FREQUENCY" -#: src/file_wav.c:763 -msgid "Piste" +#: src/file_wav.c:769 +msgid "Track" msgstr "Track" -#: src/file_wav.c:779 -msgid "PISTE" +#: src/file_wav.c:785 +msgid "TRACK" msgstr "TRACK" -#: src/file_wav.c:793 +#: src/file_wav.c:799 msgid "Quantification" msgstr "Quantification" -#: src/file_wav.c:809 +#: src/file_wav.c:815 msgid "QUANTIFICATION" msgstr "QUANTIFICATION" #: src/file_wav_conv.c:261 #, c-format -msgid "%s Copie fichier: %d%%" +msgid "%s Copy file: %d%%" msgstr "%s Copy file: %d%%" #: src/file_wav_conv.c:271 #, c-format -msgid "%s Restitution fichier: %d%%" +msgid "%s Return file: %d%%" msgstr "%s Return file: %d%%" #: src/file_wav_conv.c:281 #, c-format -msgid "%s Traitement Sox: %d%%" +msgid "%s Use Sox: %d%%" msgstr "%s Use Sox: %d%%" #: src/file_wav_conv.c:298 #, c-format -msgid "%s Traitement Mplayer: %d%%" +msgid "%s Use Mplayer: %d%%" msgstr "%s Use Mplayer: %d%%" #: src/file_wav_conv.c:343 src/file_wav_conv.c:345 msgid "XCFA: Conversions WAV TO WAV" msgstr "XCFA: Conversions WAV TO WAV" -#: src/main.c:398 -msgid "= Adressage memoire invalide\n" -msgstr "= Invalid memory address\n" - -#: src/main.c:401 -msgid "= Vous avez probablement trouve un bug dans XCFA\n" -msgstr "= You've probably found a bug in XCFA\n" - -#: src/main.c:786 -msgid "MODE ADMINISTRATEUR" +#: src/main.c:775 +msgid "ADMINISTRATOR MODE" msgstr "ADMINISTRATOR MODE" -#: src/main.c:788 -msgid " Vous ne devriez pas utiliser " -msgstr " You should not use " +#: src/main.c:777 +msgid " You should not use " +msgstr " You should not use " -#: src/main.c:790 -msgid " XCFA sous ROOT !" +#: src/main.c:779 +msgid " XCFA under ROOT !" msgstr " XCFA under ROOT !" -#: src/options.c:171 -msgid "ERREUR: Lieu de stockage non autorise !" +#: src/options.c:169 +msgid "ERROR : storage location not permitted !" msgstr "ERROR : storage location not permitted !" -#: src/options.c:172 -msgid "Veuillez recommencer." +#: src/options.c:170 +msgid "Please start again." msgstr "Please start again." #: src/options_cd.c:122 -msgid "Pour evaluer les templates, vous devez activer une lecture de cdaudio" +msgid "To assess the templates, you must enable a reading cdaudio" msgstr "To assess the templates, you must enable a reading cdaudio" -#: src/options_faac.c:96 +#: src/options_faac.c:94 msgid "Transport Stream (ADTS) - Extension .aac" msgstr "Transport Stream (ADTS) - Extension .aac" -#: src/options_faac.c:97 +#: src/options_faac.c:95 msgid "MPEG-4 File Format (MP4) - Extension .m4a" msgstr "MPEG-4 File Format (MP4) - Extension .m4a" -#: src/options_flac.c:67 -msgid "0 (Rapide)" +#: src/options_flac.c:65 +msgid "0 (Fast)" msgstr "0 (Fast)" -#: src/options_flac.c:75 -msgid "8 (Lent)" -msgstr "8 (Slow)" - -#: src/options_mp3.c:279 -msgid "V0 (meilleure qualite)" -msgstr "V0·····(Best quality)" - -#: src/options_mp3.c:288 -msgid "V9 (moins bonne qualite)" -msgstr "V9·····(Poor quality)" +#: src/options_flac.c:73 +msgid "8 (Low)" +msgstr "8 (Low)" + +#: src/options_mp3.c:276 +msgid "V0 (Best quality)" +msgstr "V0 (Best quality)" + +#: src/options_mp3.c:285 +msgid "V9 (Poor quality)" +msgstr "V9 (Poor quality)" -#: src/options_musepack.c:70 +#: src/options_musepack.c:68 msgid "telephone: lowest quality : 32 .. 48 kbit/s" -msgstr "Phone: (Lowest quality) : 32 .. 48 kbit/s" +msgstr "telephone: lowest quality : 32 .. 48 kbit/s" -#: src/options_musepack.c:71 +#: src/options_musepack.c:69 msgid "thumb : low quality/internet : 58 .. 86 kbit/s" msgstr "thumb : low quality/internet : 58 .. 86 kbit/s" -#: src/options_musepack.c:72 +#: src/options_musepack.c:70 msgid "radio : medium (MP3) quality : 112 .. 152 kbit/s" msgstr "radio : medium (MP3) quality : 112 .. 152 kbit/s" -#: src/options_musepack.c:73 +#: src/options_musepack.c:71 msgid "standard : high quality (dflt) : 142 .. 184 kbit/s" msgstr "standard : high quality (dflt) : 142 .. 184 kbit/s" -#: src/options_musepack.c:74 +#: src/options_musepack.c:72 msgid "xtreme : extreme high quality : 168 .. 212 kbit/s" msgstr "xtreme : extreme high quality : 168 .. 212 kbit/s" -#: src/options_musepack.c:75 +#: src/options_musepack.c:73 msgid "insane : extreme high quality : 232 .. 268 kbit/s" msgstr "insane : extreme high quality : 232 .. 268 kbit/s" -#: src/options_musepack.c:76 +#: src/options_musepack.c:74 msgid "braindead : extreme high quality : 232 .. 278 kbit/s" msgstr "braindead : extreme high quality : 232 .. 278 kbit/s" -#: src/options_oggenc.c:138 -msgid "Qualite -1 (Moins bonne qualite)" +#: src/options_oggenc.c:137 +msgid "Quality -1 (Poor quality)" msgstr "Quality -1 (Poor quality)" -#: src/options_oggenc.c:139 src/popup.c:1219 -msgid "Qualite 0" +#: src/options_oggenc.c:138 src/popup.c:1294 +msgid "Quality 0" msgstr "Quality 0" -#: src/options_oggenc.c:140 src/popup.c:1219 -msgid "Qualite 1" +#: src/options_oggenc.c:139 src/popup.c:1294 +msgid "Quality 1" msgstr "Quality 1" -#: src/options_oggenc.c:141 src/popup.c:1219 -msgid "Qualite 2" +#: src/options_oggenc.c:140 src/popup.c:1294 +msgid "Quality 2" msgstr "Quality 2" -#: src/options_oggenc.c:142 -msgid "Qualite 3" +#: src/options_oggenc.c:141 +msgid "Quality 3" msgstr "Quality 3" -#: src/options_oggenc.c:143 src/popup.c:1220 -msgid "Qualite 4" +#: src/options_oggenc.c:142 src/popup.c:1295 +msgid "Quality 4" msgstr "Quality 4" -#: src/options_oggenc.c:144 src/popup.c:1220 -msgid "Qualite 5" +#: src/options_oggenc.c:143 src/popup.c:1295 +msgid "Quality 5" msgstr "Quality 5" -#: src/options_oggenc.c:145 src/popup.c:1220 -msgid "Qualite 6" +#: src/options_oggenc.c:144 src/popup.c:1295 +msgid "Quality 6" msgstr "Quality 6" -#: src/options_oggenc.c:146 src/popup.c:1220 -msgid "Qualite 7" +#: src/options_oggenc.c:145 src/popup.c:1295 +msgid "Quality 7" msgstr "Quality 7" -#: src/options_oggenc.c:147 src/popup.c:1221 -msgid "Qualite 8" +#: src/options_oggenc.c:146 src/popup.c:1296 +msgid "Quality 8" msgstr "Quality 8" -#: src/options_oggenc.c:148 src/popup.c:1221 -msgid "Qualite 9" +#: src/options_oggenc.c:147 src/popup.c:1296 +msgid "Quality 9" msgstr "Quality 9" -#: src/options_oggenc.c:149 -msgid "Qualite 10 (Meilleure qualite)" +#: src/options_oggenc.c:148 +msgid "Quality 10 (Best quality)" msgstr "Quality 10 (Best quality)" -#: src/options_oggenc.c:179 src/options_wavpack.c:181 -#: src/options_wavpack.c:204 src/options_wavpack.c:227 src/popup.c:1223 -msgid "Oui" +#: src/options_oggenc.c:176 src/options_wavpack.c:173 +#: src/options_wavpack.c:194 src/options_wavpack.c:215 src/popup.c:1298 +msgid "Yes" msgstr "Yes" -#: src/options_oggenc.c:180 src/options_wavpack.c:148 -#: src/options_wavpack.c:180 src/options_wavpack.c:203 -#: src/options_wavpack.c:226 src/options_wavpack.c:247 src/popup.c:1223 -msgid "Non" +#: src/options_oggenc.c:177 src/options_wavpack.c:142 +#: src/options_wavpack.c:172 src/options_wavpack.c:193 +#: src/options_wavpack.c:214 src/options_wavpack.c:233 src/popup.c:1298 +msgid "No" msgstr "No" -#: src/options_oggenc.c:201 -msgid "Mono force" +#: src/options_oggenc.c:196 +msgid "Force mono" msgstr "Force mono" -#: src/options_oggenc.c:202 +#: src/options_oggenc.c:197 msgid "Stereo" msgstr "Stereo" -#: src/options_wavpack.c:100 -msgid "Mode normal" +#: src/options_wavpack.c:98 +msgid "Standard" msgstr "Standard" -#: src/options_wavpack.c:101 -msgid "Mode rapide de compression" +#: src/options_wavpack.c:99 +msgid "Fast (Faster encode and decode)" msgstr "Fast (Faster encode and decode)" -#: src/options_wavpack.c:102 -msgid "Bonne qualite de compression" +#: src/options_wavpack.c:100 +msgid "High quality (Better compression ratio)" msgstr "High quality (Better compression ratio)" -#: src/options_wavpack.c:103 -msgid "Meilleure qualite de compression" +#: src/options_wavpack.c:101 +msgid "Very high quality (Best compression but slowest)" msgstr "Very high quality (Best compression but slowest)" -#: src/options_wavpack.c:129 +#: src/options_wavpack.c:125 msgid "stereo left/right" msgstr "stereo left/right" -#: src/options_wavpack.c:130 +#: src/options_wavpack.c:126 msgid "stereo mid/side" msgstr "stereo mid/side" -#: src/options_wavpack.c:248 +#: src/options_wavpack.c:234 msgid "1 (fast / rapide)" -msgstr "1 (fast)" +msgstr "1 (fast / rapide)" -#: src/options_wavpack.c:253 +#: src/options_wavpack.c:239 msgid "6 (very slow / tres lent)" -msgstr "6 (very slow)" +msgstr "6 (very slow / tres lent)" -#: src/play_file.c:108 -msgid "PAS de lecteur audio present" +#: src/play_file.c:107 +msgid "NO audio player present" msgstr "NO audio player present" -#: src/play_file.c:109 -msgid "Veuillez installez un lecteur audio." -msgstr "Please install an audio player" +#: src/play_file.c:108 +msgid "Please install an audio player." +msgstr "Please install an audio player." -#: src/poche_dir.c:430 +#: src/poche_dir.c:433 msgid "" "Utilisez le glisser / deplacer - Effacer une image avec Ctrl + " "Click" msgstr "" -"Use drag / drop - delete an image with Ctrl +Click" +"Utilisez le glisser / deplacer - Effacer une image avec Ctrl + " +"Click" -#: src/poche_save.c:111 -msgid "Nom de fichier absent !!" +#: src/poche_save.c:117 +msgid "File name not found !!" msgstr "File name not found !!" -#: src/poche_save.c:112 src/poche_web.c:353 src/poche_web.c:375 -msgid "Pour resoudre ce probleme:" +#: src/poche_save.c:118 src/poche_web.c:330 src/poche_web.c:352 +msgid "To solve this problem :" msgstr "To solve this problem :" -#: src/poche_save.c:115 -msgid "Saisissez un nom de fichier sans extention" +#: src/poche_save.c:121 +msgid "Enter a file name without extension" msgstr "Enter a file name without extension" -#: src/poche_save.c:126 -msgid "Sauvegarde aux formats PDF et PostScript" -msgstr "Saving to PDF and PostScript" - -#: src/poche_save.c:151 -msgid "Sauvegarde au format PNG" -msgstr "Saving as PNG" +#: src/poche_save.c:131 +msgid "Saving to PDF" +msgstr "Saving to PDF" -#: src/poche_web.c:352 -msgid "Aucun fichier trouve !" +#: src/poche_web.c:329 +msgid "No file found !" msgstr "No file found !" -#: src/poche_web.c:356 -msgid "Modifiez la chaine de recherche et" +#: src/poche_web.c:333 src/poche_web.c:355 +msgid "Modify the search parameters and" msgstr "Modify the search parameters and" -#: src/poche_web.c:358 src/poche_web.c:380 -msgid "recommencez." -msgstr "start again" +#: src/poche_web.c:335 src/poche_web.c:357 +msgid "start again." +msgstr "start again." -#: src/poche_web.c:374 -msgid "Critere de recherche absent !!" +#: src/poche_web.c:351 +msgid "Search criteria away !!" msgstr "Search criteria away !!" -#: src/poche_web.c:378 -msgid "Saisissez une chaine de recherche et" -msgstr "Enter a search string and" - -#: src/poche_web.c:387 -msgid "[Recherche des fichiers images]" +#: src/poche_web.c:369 +msgid "[Search images files]" msgstr "[Search images files]" #: src/popup.c:81 src/popup.c:100 msgid " Deselection globale" -msgstr " Deselect all" +msgstr " Deselection globale" #: src/popup.c:82 src/popup.c:101 src/popup.c:162 msgid " Deselection verticale" -msgstr " Vertically deselect" +msgstr " Deselection verticale" #: src/popup.c:83 src/popup.c:102 msgid " Deselection horizontale" -msgstr " Horizontally deselect" +msgstr " Deselection horizontale" #: src/popup.c:84 src/popup.c:87 src/popup.c:103 src/popup.c:106 #: src/popup.c:120 src/popup.c:133 src/popup.c:147 @@ -974,195 +905,127 @@ #: src/popup.c:85 src/popup.c:104 msgid " Selection verticale" -msgstr " Vertically select" +msgstr " Selection verticale" #: src/popup.c:86 src/popup.c:105 msgid " Selection Expert verticale" -msgstr " Vertical expert select" +msgstr " Selection Expert verticale" #: src/popup.c:88 src/popup.c:107 msgid " Selection horizontale" -msgstr " Horizontally select" +msgstr " Selection horizontale" #: src/popup.c:89 src/popup.c:108 msgid " Selection Expert horizontale " -msgstr " Horizontal expert select" +msgstr " Selection Expert horizontale " #: src/popup.c:119 src/popup.c:132 msgid " Deselection verticale " -msgstr " Vertically deselect " +msgstr " Deselection verticale " #: src/popup.c:121 src/popup.c:134 msgid " Selection verticale " -msgstr " Vertically select " +msgstr " Selection verticale " #: src/popup.c:145 msgid "---SELECTION VERTICALE-----" -msgstr "---VERTICAL SELECTION------" +msgstr "---SELECTION VERTICALE-----" #: src/popup.c:146 msgid " Deselection verticale " -msgstr " Vertically deselect " +msgstr " Deselection verticale " #: src/popup.c:148 msgid " Selection PISTE " -msgstr " TRACK selection " +msgstr " Selection PISTE " #: src/popup.c:149 msgid " Selection ALBUM " -msgstr " ALBUM selection " +msgstr " Selection ALBUM " #: src/popup.c:150 msgid " Selection NETTOYER " -msgstr " ERASE selection " +msgstr " Selection NETTOYER " #: src/popup.c:161 msgid "---MENU TRASH--------------" -msgstr "---TRASH MENU--------------" +msgstr "---MENU TRASH--------------" #: src/popup.c:163 msgid " Selection verticale " -msgstr " Vertically select " +msgstr " Selection verticale " -#: src/popup.c:489 -msgid "1 piste" -msgstr "1 track" - -#: src/popup.c:492 -msgid "2 pistes" -msgstr "2 track" - -#: src/popup.c:495 -msgid "4 pistes" -msgstr "4 track" - -#: src/popup.c:498 -msgid "6 pistes" -msgstr "6 track" - -#: src/popup.c:504 src/popup.c:619 src/popup.c:716 -msgid "Valeur d'origine" +#: src/popup.c:504 src/popup.c:619 src/popup.c:715 +msgid "Original value" msgstr "Original value" -#: src/popup.c:592 -msgid " 8000 Hertz" -msgstr " 8000 Hertz" - -#: src/popup.c:595 -msgid "22000 Hertz" -msgstr "22000 Hertz" - -#: src/popup.c:598 -msgid "32000 Hertz" -msgstr "32000 Hertz" - -#: src/popup.c:601 -msgid "44056 Hertz" -msgstr "44056 Hertz" - -#: src/popup.c:604 -msgid "44100 Hertz" -msgstr "44100 Hertz" - -#: src/popup.c:607 -msgid "48000 Hertz" -msgstr "48000 Hertz" - -#: src/popup.c:610 -msgid "88200 Hertz" -msgstr "88200 Hertz" - -#: src/popup.c:613 -msgid "96000 Hertz" -msgstr "96000 Hertz" - -#: src/popup.c:698 -msgid " 8 bits" -msgstr " 8 bits" - -#: src/popup.c:701 -msgid "16 bits" -msgstr "16 bits" - -#: src/popup.c:704 -msgid "24 bits" -msgstr "24 bits" - -#: src/popup.c:707 -msgid "32 bits" -msgstr "32 bits" - -#: src/popup.c:710 -msgid "64 bits" -msgstr "64 bits" - #: src/popup.c:765 -msgid "Selecteur suivant" -msgstr "Following selector" +msgid "Next selector" +msgstr "Next selector" #: src/popup.c:769 -msgid "Selecteur precedant" +msgid "Previous selector" msgstr "Previous selector" #: src/popup.c:777 -msgid "Supprimer la plage active" +msgid "Delete the active range" msgstr "Delete the active range" -#: src/popup.c:849 -msgid "Retourner horizontalement" +#: src/popup.c:850 +msgid "Flip Horizontal" msgstr "Flip Horizontal" -#: src/popup.c:853 -msgid "Retourner verticalement" +#: src/popup.c:854 +msgid "Flip Vertical" msgstr "Flip Vertical" -#: src/popup.c:861 -msgid "Image au premier plan" +#: src/popup.c:862 +msgid "Foreground image" msgstr "Foreground image" -#: src/popup.c:865 -msgid "Image au dessus" +#: src/popup.c:866 +msgid "Image above" msgstr "Image above" -#: src/popup.c:869 -msgid "Image en dessous" +#: src/popup.c:870 +msgid "Image below" msgstr "Image below" -#: src/popup.c:873 -msgid "Image au dernier plan" +#: src/popup.c:874 +msgid "Image to the background" msgstr "Image to the background" -#: src/popup.c:881 -msgid "Effacer l'image" +#: src/popup.c:882 +msgid "Clear image" msgstr "Clear image" -#: src/popup.c:918 -msgid "Supprimer l'image de la liste" +#: src/popup.c:920 +msgid "Remove image from the list" msgstr "Remove image from the list" -#: src/popup.c:1036 -msgid "V0 [ meilleure qualite ]" +#: src/popup.c:1111 +msgid "V0 [ best quality ]" msgstr "V0 [ best quality ]" -#: src/popup.c:1036 src/popup.c:1039 -msgid "V4 [ defaut ]" +#: src/popup.c:1111 src/popup.c:1114 +msgid "V4 [ default ]" msgstr "V4 [ default ]" -#: src/popup.c:1036 -msgid "V9 [ moins bonne qualite ]" -msgstr "V9 [ worst quality ]" - -#: src/popup.c:1219 -msgid "Qualite -1 [ Moins bonne qualite ]" -msgstr "Quality -1 [ worst quality ]" - -#: src/popup.c:1220 -msgid "Qualite 3 [ Defaut ]" -msgstr "Quality 3 [ Default ]" - -#: src/popup.c:1221 -msgid "Qualite 10 [ Meilleure qualite ]" -msgstr "Quality 10 [ Best quality ]" +#: src/popup.c:1111 +msgid "V9 [ Lower quality ]" +msgstr "V9 [ Lower quality ]" + +#: src/popup.c:1294 +msgid "Quality -1 [ Lower quality ]" +msgstr "Quality -1 [ Lower quality ]" + +#: src/popup.c:1295 +msgid "Quality 3 [ Defaut ]" +msgstr "Quality 3 [ Defaut ]" + +#: src/popup.c:1296 +msgid "Quality 10 [ Best Quality ]" +msgstr "Quality 10 [ Best Quality ]" #: src/prg_init.c:85 msgid " Decode ATSC A/52 audio streams" @@ -1174,7 +1037,7 @@ #: src/prg_init.c:107 src/prg_init.c:173 msgid " Extracteur cd audio" -msgstr " InCrEdible Digital Audio eXtractor" +msgstr " Extracteur cd audio" #: src/prg_init.c:118 msgid " Read CD and get CDDB discid information" @@ -1182,27 +1045,27 @@ #: src/prg_init.c:129 msgid " Cherche des renseignements sur les formats mp3" -msgstr " Check validity of mp3s" +msgstr " Cherche des renseignements sur les formats mp3" #: src/prg_init.c:140 msgid " Audio Codeur freeware" -msgstr " MPEG-4 and MPEG-2 AAC encoder" +msgstr " Audio Codeur freeware" #: src/prg_init.c:151 msgid " MPEG-4 AAC decodeur" -msgstr " MPEG-4 AAC decoder" +msgstr " MPEG-4 AAC decodeur" #: src/prg_init.c:162 msgid " Conversion wav : flac" -msgstr " Create wav to flac" +msgstr " Conversion wav : flac" #: src/prg_init.c:184 msgid " Conversion wav : mp3" -msgstr " Create mp3 audio files" +msgstr " Conversion wav : mp3" #: src/prg_init.c:195 msgid " Cherche les informations d'un dvd" -msgstr " Read the contents of a DVD" +msgstr " Cherche les informations d'un dvd" #: src/prg_init.c:207 msgid " Monkey's Audio Console Front End : APE" @@ -1214,15 +1077,15 @@ #: src/prg_init.c:241 msgid " Lecteur et extracteur" -msgstr " Video and audio player" +msgstr " Lecteur et extracteur" #: src/prg_init.c:252 msgid " Normaliseur de fichier mp3" -msgstr " Lossless mp3 normaliser" +msgstr " Normaliseur de fichier mp3" #: src/prg_init.c:263 msgid " Normaliseur de fichier wav" -msgstr " wav file normaliser" +msgstr " Normaliseur de fichier wav" #: src/prg_init.c:274 msgid " A program to send desktop notifications" @@ -1230,58 +1093,58 @@ #: src/prg_init.c:285 msgid " Forte compression au format wave" -msgstr " High compression for waveform files" +msgstr " Forte compression au format wave" #: src/prg_init.c:296 msgid " Decoupage de fichiers sans decodage" -msgstr " Split mp3/ogg without decoding" +msgstr " Decoupage de fichiers sans decodage" #: src/prg_init.c:307 msgid " Transformation universelle de fichiers son" -msgstr " Sound eXchange, the Swiss Army knife of audio manipulation" +msgstr " Transformation universelle de fichiers son" #: src/prg_init.c:318 msgid " Conversion wav : ogg" -msgstr " Convert wav : ogg" +msgstr " Conversion wav : ogg" #: src/prg_init.c:329 msgid " Normaliseur de fichier ogg" -msgstr " ogg file normaliser" +msgstr " Normaliseur de fichier ogg" #: src/prg_init.c:340 msgid " WAVPACK Hybrid Lossless Audio Compressor" -msgstr " Wavpack Hybrid Lossless Audio Compressor" +msgstr " WAVPACK Hybrid Lossless Audio Compressor" #: src/prg_init.c:357 -msgid " ... les paquets: deb " -msgstr " ... Packets: deb " +msgid " ... Packets: deb " +msgstr " ... Packets: deb " #: src/prg_init.c:363 -msgid " ... les paquets: tgz " -msgstr " ... Packets: tgz " +msgid " ... Packets: tgz " +msgstr " ... Packets: tgz " #: src/prg_init.c:369 -msgid " ... les paquets: fpm " -msgstr " ... Packets: fpm " +msgid " ... Packets: fpm " +msgstr " ... Packets: fpm " #: src/prg_init.c:375 -msgid " ... les paquets: rpm " -msgstr " ... Packets: rpm " +msgid " ... Packets: rpm " +msgstr " ... Packets: rpm " #: src/prg_init.c:381 -msgid " ... les paquets: pkg.tar.xz " +msgid " ... Packets: pkg.tar.xz " msgstr " ... Packets: pkg.tar.xz " #: src/prg_init.c:387 -msgid " ... les paquets: ? " -msgstr " ... Packets: ?" +msgid " ... Packets: ? " +msgstr " ... Packets: ? " #: src/prg_init.c:623 msgid "Status" msgstr "Status" #: src/prg_init.c:637 -msgid "Paquet" +msgid "Packets" msgstr "Packets" #: src/prg_init.c:652 @@ -1289,276 +1152,332 @@ msgstr "Action" #: src/scan.c:259 -msgid "PACKAGE dvd+rw-tools ABSENT" +msgid "PACKAGE dvd+rw-tools is missing" msgstr "PACKAGE dvd+rw-tools is missing" #: src/scan.c:260 -msgid "Le package 'dvd+rw-tools' est absent" +msgid "The package 'imagemagick' is missing" msgstr "The package 'imagemagick' is missing" #: src/scan.c:262 -msgid "de votre systeme !" +msgid "on your system !" msgstr "on your system !" -#: src/scan.c:264 -msgid "Veuillez l'installer car j'ai besoin de" +#: src/scan.c:264 src/split.c:438 +msgid "Please install it and resume" msgstr "Please install it and resume" #: src/scan.c:266 -msgid "'dvd+rw-mediainfo' pour identifier le(s)" +msgid "'Dvd + rw-mediainfo' to identify the" msgstr "'Dvd + rw-mediainfo' to identify the" #: src/scan.c:268 -msgid "lecteur(s) de cd / dvd." +msgid "reader of cd / dvd." msgstr "reader of cd / dvd." -#: src/split.c:279 +#: src/split.c:297 msgid "" -"Menu: Click droit / Ajout plage: Click bouton centre / Zoom: Ctrl+Scroll" +"Menu: right click / Adding track: Click the center button / Zoom: Ctrl" +"+Scroll" msgstr "" "Menu: right click / Adding track: Click the center button / Zoom: Ctrl" "+Scroll" -#: src/split.c:282 -msgid "Ajout plage: Click bouton centre / Zoom: Ctrl+Scroll" +#: src/split.c:300 +msgid "Adding track: Click the center button / Zoom: Ctrl+Scroll" msgstr "Adding track: Click the center button / Zoom: Ctrl+Scroll" -#: src/split.c:286 -msgid "" -"Pret pour l'import d'un fichier CUE, WAV, FLAC, OGG, MP3, APE, WMA" +#: src/split.c:304 +msgid "Ready for imports and a CUE file, WAV, FLAC, OGG, MP3, APE, WMA" msgstr "Ready for imports and a CUE file, WAV, FLAC, OGG, MP3, APE, WMA" -#: src/split.c:356 src/split.c:385 -msgid "Ce fichier appartient a XCFA" +#: src/split.c:378 src/split.c:407 +msgid "This file belongs XCFA" msgstr "This file belongs XCFA" -#: src/split.c:357 src/split.c:386 -msgid "Selectionnez un autre fichier." +#: src/split.c:379 src/split.c:408 +msgid "Select another file." msgstr "Select another file." -#: src/split.c:365 -msgid "Fichier vide" +#: src/split.c:387 +msgid "Empty file" msgstr "Empty file" -#: src/split.c:366 -msgid "Le fichier ne contient aucune donnee !!!" +#: src/split.c:388 +msgid "The file contains no data !!!" msgstr "The file contains no data !!!" -#: src/split.c:411 -msgid "Sox et Mplayer absents" -msgstr "Sox and Mplayer is missing" - -#: src/split.c:412 -msgid "Sox et Mplayer sont absents de votre" -msgstr "Sox and Mplayer is missing" - -#: src/split.c:414 -msgid "configuration." -msgstr "configuration." - -#: src/split.c:416 -msgid "Veuillez les installer pour pouvoir continuer." -msgstr "Please install it and resume" +#: src/split.c:433 +msgid "Sox and Mplayer not found" +msgstr "Sox and Mplayer not found" + +#: src/split.c:434 +msgid "Sox et Mplayer are not found" +msgstr "Sox et Mplayer are not found" + +#: src/split.c:436 +msgid "in your configuration." +msgstr "in your configuration." -#: src/split.c:467 -msgid "Erreur de choix de fichier" +#: src/split.c:491 +msgid "Error file select" msgstr "Error file select" -#: src/split.c:468 -msgid "Veuillez selectionner un fichier de type WAV FLAC MP3 OGG APE" +#: src/split.c:492 +msgid "Please select a file type of MP3 WAV OGG FLAC APE" msgstr "Please select a file type of MP3 WAV OGG FLAC APE" -#: src/split.c:505 src/split.c:579 -msgid "Mauvais type de fichier" +#: src/split.c:530 src/split.c:602 +msgid "Wrong type of file" msgstr "Wrong type of file" -#: src/split.c:506 src/split.c:580 +#: src/split.c:531 src/split.c:603 msgid "" -"Les types de fichiers acceptes\n" -"sont: WAV FLAC MP3 OGG APE WMA CUE" +"File types accepted\n" +"sare: WAV FLAC MP3 OGG APE WMA CUE" msgstr "" "File types accepted\n" -"are: WAV FLAC MP3 OGG APE WMA CUE" +"sare: WAV FLAC MP3 OGG APE WMA CUE" -#: src/split_conv.c:313 src/split_conv.c:330 -msgid "Erreur SOX" +#: src/split_conv.c:316 src/split_conv.c:333 +msgid "SOX Error" msgstr "SOX Error" -#: src/split_conv.c:314 src/split_conv.c:331 -msgid "Le programme SOX de votre distribution" +#: src/split_conv.c:317 src/split_conv.c:334 +msgid "The SOX program on your distribution" msgstr "The SOX program on your distribution" -#: src/split_conv.c:316 src/split_conv.c:333 -msgid "a generer une erreur pendant la conversion." -msgstr "has generated an error during conversion" +#: src/split_conv.c:319 src/split_conv.c:336 +msgid "has generated an error during conversion." +msgstr "has generated an error during conversion." #: src/split_cue.c:116 -msgid "Erreur de lecture !" +msgid "Misreading !" msgstr "Misreading !" -#: src/split_cue.c:177 src/split_cue.c:187 src/split_cue.c:197 -msgid "Erreur" +#: src/split_cue.c:177 src/split_cue.c:187 src/split_cue.c:196 +msgid "Error" msgstr "Error" #: src/split_cue.c:178 -msgid "Aucun fichier de musique associe au cue-file !" +msgid "No music file associated with the cue-file" msgstr "No music file associated with the cue-file" #: src/split_cue.c:188 -msgid "Pas de fichier WAV dans le cue-file !" +msgid "No WAV file in the cue-file" msgstr "No WAV file in the cue-file" -#: src/split_cue.c:198 -msgid "Aucun fichier de musique associe dans le dossier" +#: src/split_cue.c:197 +msgid "No music file in the folder associated" msgstr "No music file in the folder associated" -#: src/split_cue.c:200 -msgid "du cue-file" +#: src/split_cue.c:199 +msgid "of cue-file" msgstr "of cue-file" -#: src/split_cue.c:294 -msgid "Erreur de donnees dans le fichier CUE" +#: src/split_cue.c:293 +msgid "Data errors in the CUE file" msgstr "Data errors in the CUE file" -#: src/split_cue.c:295 -msgid "La solution est d'importer le fichier de" +#: src/split_cue.c:294 +msgid "The solution is to import the file" msgstr "The solution is to import the file" -#: src/split_cue.c:297 -msgid "musique qui sera reconnu et pre-decoupe" +#: src/split_cue.c:296 +msgid "music that will be recognized and pre-cutting" msgstr "music that will be recognized and pre-cutting" -#: src/split_cue.c:299 -msgid "dans le module Split." -msgstr "Split in the module." +#: src/split_cue.c:298 +msgid "in the split module." +msgstr "in the split module." -#: src/split_cue.c:301 -msgid "Il ne restera qu'a ajuster les plages pour" +#: src/split_cue.c:300 +msgid "We will just adjust to the beaches" msgstr "We will just adjust to the beaches" -#: src/split_cue.c:303 -msgid "generer un nouveau cue-file ou des decoupes" +#: src/split_cue.c:302 +msgid "generate a new cue-file or cuts" msgstr "generate a new cue-file or cuts" -#: src/split_cue.c:305 -msgid "correspondant aux plages." +#: src/split_cue.c:304 +msgid "corresponding to the beaches." msgstr "corresponding to the beaches." #: src/split_selector.c:136 -msgid "Suppression pendant la lecture impossible" +msgid "Deleting not during playback" msgstr "Deleting not during playback" -#: src/split_selector.c:229 src/split_selector.c:235 src/split_selector.c:289 -#: src/split_selector.c:295 src/split_selector.c:352 src/split_selector.c:359 -#: src/split_selector.c:429 src/split_selector.c:435 -msgid "Temps inferieur a 5 secondes entre marqueur et curseur !" +#: src/split_selector.c:231 src/split_selector.c:237 src/split_selector.c:291 +#: src/split_selector.c:297 src/split_selector.c:354 src/split_selector.c:361 +#: src/split_selector.c:431 src/split_selector.c:437 +msgid "Time of less than 5 seconds between marker and cursor !" msgstr "Time of less than 5 seconds between marker and cursor !" -#: src/translate.c:51 -msgid "Fichier" +#: src/web.c:173 src/web.c:234 +msgid "No web browser" +msgstr "No web browser" + +#: src/web.c:174 src/web.c:235 +msgid "No Web access: no web browser" +msgstr "No Web access: no web browser" + +#: src/web.c:176 src/web.c:237 +msgid "found in your system." +msgstr "found in your system." + +#: src/web.c:178 src/web.c:239 +msgid "Please install a web browser." +msgstr "Please install a web browser." + +#: src/web.c:188 +msgid "You need to enable web access" +msgstr "You need to enable web access" + +#: src/web.c:249 +msgid "Application is missing." +msgstr "Application is missing." + +#: src/web.c:250 +msgid "Please install : " +msgstr "Please install : " + +#: src/win_about.c:124 +msgid " Xcfa on the web" +msgstr " Xcfa on the web" + +#: src/win_about.c:174 +msgid "" +"\n" +"Au tout debut:\n" +"\n" +"Serres Patrick, Hamann Regis, Fabien Gregis, @Dzef, @alteo_gange, \n" +"@Leonux, @zarer, @Shankarius, @bishop, @Ludo, @Patachonf,\n" +"... ;-)\n" +"\n" +"" +msgstr "" +"\n" +"Au tout debut:\n" +"\n" +"Serres Patrick, Hamann Regis, Fabien Gregis, @Dzef, @alteo_gange, \n" +"@Leonux, @zarer, @Shankarius, @bishop, @Ludo, @Patachonf,\n" +"... ;-)\n" +"\n" +"" + +#: src/win_scan.c:170 +msgid "Waiting ..." +msgstr "Waiting ..." + +#: glade/xcfa.glade:66 glade/xcfa.glade:2533 +msgid "File" msgstr "File" -#: src/translate.c:52 -msgid "Quitter" +#: glade/xcfa.glade:75 +msgid "Quit" msgstr "Quit" -#: src/translate.c:53 -msgid "Outils" +#: glade/xcfa.glade:89 +msgid "Tools" msgstr "Tools" -#: src/translate.c:54 -msgid "Visibilite des champs" -msgstr "Visible fields" +#: glade/xcfa.glade:99 +msgid "Visibility fields" +msgstr "Visibility fields" -#: src/translate.c:55 -msgid "Aide" +#: glade/xcfa.glade:112 +msgid "Help" msgstr "Help" -#: src/translate.c:56 -msgid "A propos" +#: glade/xcfa.glade:121 +msgid "About" msgstr "About" -#: src/translate.c:57 src/translate.c:67 -msgid "Lecture" -msgstr "Play" - -#: src/translate.c:58 -msgid " Choix du peripherique / Lecture du DVD " -msgstr " DVD player / Import files " - -#: src/translate.c:59 src/translate.c:69 src/translate.c:125 -msgid " Destination des fichiers " -msgstr " Save location: " +#: glade/xcfa.glade:224 +msgid "Read" +msgstr "Read" + +#: glade/xcfa.glade:252 +msgid " Choosing the peripheral / DVD playback " +msgstr " Choosing the peripheral / DVD playback " + +#: glade/xcfa.glade:303 glade/xcfa.glade:921 +msgid " File Destination " +msgstr " File Destination " -#: src/translate.c:60 src/translate.c:70 +#: glade/xcfa.glade:359 glade/xcfa.glade:1009 msgid " Eject " msgstr " Eject " -#: src/translate.c:61 src/translate.c:92 -msgid " Normaliser " -msgstr " Normalise " +#: glade/xcfa.glade:434 +msgid " Normalize " +msgstr " Normalize " -#: src/translate.c:62 -msgid "Deplier" +#: glade/xcfa.glade:494 +msgid "Unfold" msgstr "Unfold" -#: src/translate.c:63 -msgid "Replier" +#: glade/xcfa.glade:548 +msgid "Fold" msgstr "Fold" -#: src/translate.c:64 +#: glade/xcfa.glade:649 msgid " Vers 2CH: Sub / Ambiance " -msgstr " 2CH: Sub / Ambiance " +msgstr " Vers 2CH: Sub / Ambiance " -#: src/translate.c:65 src/translate.c:98 -msgid "Extraire" -msgstr "Rip" +#: glade/xcfa.glade:705 +msgid "Extraction" +msgstr "Extraction" -#: src/translate.c:66 +#: glade/xcfa.glade:756 msgid " DVD " msgstr " DVD " -#: src/translate.c:68 -msgid " Choix du peripherique / Lecture du CD " -msgstr " CD player " +#: glade/xcfa.glade:842 +msgid "Lecture" +msgstr "Lecture" + +#: glade/xcfa.glade:870 +msgid " Choosing the peripheral / CD playback " +msgstr " Choosing the peripheral / CD playback " -#: src/translate.c:71 -msgid "Titre:" +#: glade/xcfa.glade:1065 +msgid "Title:" msgstr "Title:" -#: src/translate.c:72 +#: glade/xcfa.glade:1077 msgid "Album:" msgstr "Album:" -#: src/translate.c:73 -msgid "Artiste:" +#: glade/xcfa.glade:1089 +msgid "Artist:" msgstr "Artist:" -#: src/translate.c:74 -msgid " Annee:" -msgstr "Year :" +#: glade/xcfa.glade:1101 +msgid "Comment:" +msgstr "Comment:" + +#: glade/xcfa.glade:1113 +msgid " Year:" +msgstr " Year:" -#: src/translate.c:75 +#: glade/xcfa.glade:1125 msgid " Genre:" -msgstr "Genre :" +msgstr " Genre:" -#: src/translate.c:76 -msgid " Piste:" -msgstr "Track:" +#: glade/xcfa.glade:1137 +msgid " Track:" +msgstr " Track:" -#: src/translate.c:77 +#: glade/xcfa.glade:1149 msgid " *.m3u et xspf: " -msgstr "m3u and xspf: " - -#: src/translate.c:78 -msgid "Commentaire:" -msgstr "Comment:" +msgstr " *.m3u et xspf: " -#: src/translate.c:79 -msgid " Modification des tags Freedb " -msgstr " Freedb tags modification " +#: glade/xcfa.glade:1287 +msgid "Editing tags Freedb" +msgstr "Editing tags Freedb" -#: src/translate.c:80 +#: glade/xcfa.glade:1302 msgid "" "%a [ %a=\"Artist\" ]\n" "\n" @@ -1576,14 +1495,15 @@ "\n" "%b [ %b=\"Album\" ]\n" "\n" -"TI% - Tetsumaki lower\n" +"%Tl - Tetsumaki lower\n" "\n" -"Converts the string to lowercase except for the first character\n" +"Transforme la chaine en minuscule sauf le premier caractere.\n" "\n" -"In the fields 'Title' since [Changing FreeDB tag]\n" -"the character or characters to be retained must be preceded bycharacter %" +"Dans le champs 'Titre' depuis [ Modification des tags FreeDB ],\n" +"le ou les caracteres devant etre conserves doivent etre precedes par le " +"caractere %" -#: src/translate.c:81 +#: glade/xcfa.glade:1312 msgid "" "%a - artiste %b - titre " "de l'album %c - numero de la piste\n" @@ -1594,839 +1514,837 @@ "%u - remplacement de caracteres: %u(AB=C) %u( =_) %Tl - Tetsumaki lower" msgstr "" -"%a - artist %b - album " -"title %c - track number\n" -"%d - track title %e - " -"year %g - genre\n" -"%f - create an m3u and xspf file %na - no accent\n" -"%u - replace special characters: %u(AB=C) %u( =_) %Tl - Tetsumaki lower" +"%a - artiste %b - titre " +"de l'album %c - numero de la piste\n" +"%d - titre de la chanson %e - " +"annee %g - genre\n" +"%f - creation d'un fichier *.m3u et *." +"xspf %na - no accent\n" +"%u - remplacement de caracteres: %u(AB=C) %u( =_) %Tl - Tetsumaki lower" -#: src/translate.c:82 -msgid " Arrangement des titres du CD " -msgstr " Arrangement of CD titles " +#: glade/xcfa.glade:1346 +msgid " Arrangement of CD titles" +msgstr " Arrangement of CD titles" -#: src/translate.c:83 -msgid "Creation d'un fichier unique au format: " -msgstr "Create a single file in the format: " +#: glade/xcfa.glade:1382 +msgid "Creation of a single file format: " +msgstr "Creation of a single file format: " -#: src/translate.c:84 -msgid " et dont le nom sera: " -msgstr " Named: " +#: glade/xcfa.glade:1430 +msgid " and whose name will be: " +msgstr " and whose name will be: " -#: src/translate.c:85 -msgid "Ecriture du fichier cue" -msgstr "Write cue file" +#: glade/xcfa.glade:1461 +msgid "Writing the cue file" +msgstr "Writing the cue file" -#: src/translate.c:86 -msgid " Au moins deux selections colonne Wav " -msgstr " Make at least two selections in the Wav column " +#: glade/xcfa.glade:1484 +msgid " At least two selections column Wav " +msgstr " At least two selections column Wav " -#: src/translate.c:87 +#: glade/xcfa.glade:1514 msgid "" -"Creation d'un fichier cue\n" -"unique depuis une lecture\n" -"du cd audio" +"\n" +"Creating a cue file from a single\n" +"reading audio cd\n" msgstr "" -"Create a single cue\n" -"file from an audio-CD" +"\n" +"Creating a cue file from a single\n" +"reading audio cd\n" -#: src/translate.c:88 -msgid "Creation fichier cue uniquement" -msgstr "Create cue file" +#: glade/xcfa.glade:1562 +msgid "File Creation cue only" +msgstr "File Creation cue only" -#: src/translate.c:89 +#: glade/xcfa.glade:1597 msgid " Creation Cue cd " -msgstr " CD cue file creation " +msgstr " Creation Cue cd " + +#: glade/xcfa.glade:1625 +msgid "  Creation of a single file" +msgstr "  Creation of a single file" -#: src/translate.c:90 -msgid " Creation d'un fichier unique " -msgstr " Creating a single file " +#: glade/xcfa.glade:1638 +msgid "Management of tags, titles and cue files" +msgstr "Management of tags, titles and cue files" -#: src/translate.c:91 -msgid "Gestion des tags, titres et fichiers cue" -msgstr "Tags, titles and cue files management" +#: glade/xcfa.glade:1688 +msgid " normalize " +msgstr " normalize " -#: src/translate.c:93 +#: glade/xcfa.glade:1749 msgid "definit le serveur a contacter pour les recherches titre" -msgstr "Sets the server to be contacted for title lookups" +msgstr "definit le serveur a contacter pour les recherches titre" -#: src/translate.c:94 +#: glade/xcfa.glade:1788 msgid "Parametres par defaut" -msgstr "Default parameters" +msgstr "Parametres par defaut" -#: src/translate.c:96 -msgid "Choix parmis les differentes bases de donnees pour le CD." -msgstr "Choice among different databases for the CD." - -#: src/translate.c:97 +#: glade/xcfa.glade:1887 msgid "DiscId" msgstr "DiscId" -#: src/translate.c:99 +#: glade/xcfa.glade:1946 +msgid "Extract" +msgstr "Extract" + +#: glade/xcfa.glade:2053 msgid " CD " msgstr " CD " -#: src/translate.c:100 src/translate.c:124 -msgid " Importer " +#: glade/xcfa.glade:2135 glade/xcfa.glade:3271 +msgid " Import " msgstr " Import " -#: src/translate.c:101 -msgid " Destination des conversions " -msgstr " Export converted files: " - -#: src/translate.c:102 -msgid " Nettoyer " -msgstr " Clear " +#: glade/xcfa.glade:2190 +msgid " Destination conversions " +msgstr " Destination conversions " + +#: glade/xcfa.glade:2266 +msgid " Clean up " +msgstr " Clean up " -#: src/translate.c:103 src/translate.c:107 +#: glade/xcfa.glade:2389 msgid "Appliquer les modifications" -msgstr "Apply the changes" +msgstr "Appliquer les modifications" -#: src/translate.c:104 -msgid " Normalise: " -msgstr " Normalise: " - -#: src/translate.c:105 -msgid " Choix niveau dBFS: " -msgstr " dBFS level: " +#: glade/xcfa.glade:2444 +msgid " Normalize: " +msgstr " Normalize: " -#: src/translate.c:106 src/translate.c:123 -msgid " Fichiers " -msgstr " Files " +#: glade/xcfa.glade:2477 +msgid " Level selection dBFS: " +msgstr " Level selection dBFS: " + +#: glade/xcfa.glade:2615 +msgid "Apply changes" +msgstr "Apply changes" -#: src/translate.c:108 +#: glade/xcfa.glade:2651 msgid " Wav " msgstr " Wav " -#: src/translate.c:109 src/translate.c:121 -msgid "Appliquer" +#: glade/xcfa.glade:2735 +msgid "Apply" msgstr "Apply" -#: src/translate.c:110 -msgid "Effacer" -msgstr "Clear" +#: glade/xcfa.glade:2789 +msgid "Delete" +msgstr "Delete" -#: src/translate.c:111 +#: glade/xcfa.glade:2826 msgid " Mp3-Ogg " msgstr " Mp3-Ogg " -#: src/translate.c:112 -msgid "Titre:" +#: glade/xcfa.glade:2875 +msgid "Title:" msgstr "Title:" -#: src/translate.c:113 +#: glade/xcfa.glade:2886 msgid "Album:" msgstr "Album:" -#: src/translate.c:114 -msgid "Artiste:" +#: glade/xcfa.glade:2897 +msgid "Artist:" msgstr "Artist:" -#: src/translate.c:115 -msgid "Commentaire:" +#: glade/xcfa.glade:2908 +msgid "Comment:" msgstr "Comment:" -#: src/translate.c:116 -msgid " Annee:" +#: glade/xcfa.glade:2919 +msgid " Year:" msgstr " Year:" -#: src/translate.c:117 +#: glade/xcfa.glade:2930 msgid " Genre:" msgstr " Genre:" -#: src/translate.c:118 -msgid " Piste:" +#: glade/xcfa.glade:2941 +msgid " Track:" msgstr " Track:" -#: src/translate.c:119 +#: glade/xcfa.glade:2952 msgid " Modif.:" -msgstr " Edit:" +msgstr " Modif.:" -#: src/translate.c:120 +#: glade/xcfa.glade:3078 msgid "0" msgstr "0" -#: src/translate.c:122 src/translate.c:309 +#: glade/xcfa.glade:3102 +msgid "Apply " +msgstr "Apply " + +#: glade/xcfa.glade:3160 glade/xcfa.glade:10210 msgid " Tags " msgstr " Tags " -#: src/translate.c:126 +#: glade/xcfa.glade:3190 +msgid " Files " +msgstr " Files " + +#: glade/xcfa.glade:3322 +msgid "   File Destination " +msgstr "   File Destination " + +#: glade/xcfa.glade:3494 msgid "Lecture de 5 secondes apres le marqueur de debut" -msgstr "Reading 5 seconds after the beginning marker" +msgstr "Lecture de 5 secondes apres le marqueur de debut" -#: src/translate.c:127 +#: glade/xcfa.glade:3546 msgid "Index de debut" -msgstr "Index start" +msgstr "Index de debut" -#: src/translate.c:128 src/translate.c:135 src/translate.c:138 +#: glade/xcfa.glade:3547 glade/xcfa.glade:3813 glade/xcfa.glade:3874 msgid "00h00m00s" msgstr "00h00m00s" -#: src/translate.c:129 +#: glade/xcfa.glade:3600 msgid "lecture" -msgstr "Play" +msgstr "lecture" -#: src/translate.c:130 +#: glade/xcfa.glade:3653 msgid "Pause" msgstr "Pause" -#: src/translate.c:131 +#: glade/xcfa.glade:3712 msgid "Index de lecture" -msgstr "Index reading" +msgstr "Index de lecture" -#: src/translate.c:132 src/translate.c:171 +#: glade/xcfa.glade:3713 glade/xcfa.glade:4767 msgid "label" msgstr "label" -#: src/translate.c:133 +#: glade/xcfa.glade:3760 msgid "Lecture de 5 secondes avant le marqueur de fin" -msgstr "Reading of 5 seconds before the end marker" +msgstr "Lecture de 5 secondes avant le marqueur de fin" -#: src/translate.c:134 +#: glade/xcfa.glade:3812 msgid "Index de fin" -msgstr "End index" +msgstr "Index de fin" -#: src/translate.c:136 +#: glade/xcfa.glade:3860 msgid "Plage" msgstr "Plage" -#: src/translate.c:137 +#: glade/xcfa.glade:3873 msgid "Duree de la plage active" -msgstr "Length of the active beach" +msgstr "Duree de la plage active" -#: src/translate.c:139 +#: glade/xcfa.glade:3955 msgid "Suprimer tous les marqueurs pour les remplacer par un marqueur unique" -msgstr "Wipe all markers and replace them with a single marker" +msgstr "Suprimer tous les marqueurs pour les remplacer par un marqueur unique" -#: src/translate.c:140 +#: glade/xcfa.glade:4044 msgid "Le fichier CUE sera enregistre vers 'Destination des fichiers'." -msgstr "CUE file to be recorded 'Destination file'." +msgstr "Le fichier CUE sera enregistre vers 'Destination des fichiers'." -#: src/translate.c:141 -msgid "Production fichier Cue" -msgstr "Generate CUE file" +#: glade/xcfa.glade:4073 +msgid "Production Cue file" +msgstr "Production Cue file" -#: src/translate.c:142 +#: glade/xcfa.glade:4098 msgid "Le resultat du Split sera dirige vers 'Destination des fichiers'." -msgstr "The result of the Split will be heading for 'Destination file'." +msgstr "Le resultat du Split sera dirige vers 'Destination des fichiers'." -#: src/translate.c:143 +#: glade/xcfa.glade:4127 msgid "Split" msgstr "Split" -#: src/translate.c:144 +#: glade/xcfa.glade:4188 msgid " Split " msgstr " Split " -#: src/translate.c:145 +#: glade/xcfa.glade:4253 msgid "Importation du titre du CD." -msgstr "Import the CD title." +msgstr "Importation du titre du CD." -#: src/translate.c:146 -msgid "Titre CD" +#: glade/xcfa.glade:4276 +msgid "Title CD" msgstr "Title CD" -#: src/translate.c:147 +#: glade/xcfa.glade:4296 msgid "Choix d'une nouvelle police." -msgstr "Choosing a new font." +msgstr "Choix d'une nouvelle police." -#: src/translate.c:148 +#: glade/xcfa.glade:4318 msgid "Texte gras." -msgstr "Bold text." +msgstr "Texte gras." -#: src/translate.c:149 +#: glade/xcfa.glade:4340 msgid "Texte italique." -msgstr "Italic text." +msgstr "Texte italique." -#: src/translate.c:150 -msgid "" -"Apres une lecture de CD et un ajout d'etiquette, ce menu permet la mise en " -"forme des titres, auteurs ..." -msgstr "" -"After reading a CD and add a label, this menu allows the formatting of " -"titles, authors ..." - -#: src/translate.c:151 +#: glade/xcfa.glade:4375 msgid "Ajouter du texte editable." -msgstr "Add text editable." +msgstr "Ajouter du texte editable." -#: src/translate.c:152 -msgid "Texte" +#: glade/xcfa.glade:4430 +msgid "Text" msgstr "Text" -#: src/translate.c:153 +#: glade/xcfa.glade:4462 msgid "Saisissez ici un critere de recherche d'images." -msgstr "Enter here a search of images." +msgstr "Saisissez ici un critere de recherche d'images." -#: src/translate.c:154 +#: glade/xcfa.glade:4484 msgid "Importation des images depuis le Web." -msgstr "Importing images from the Web." +msgstr "Importation des images depuis le Web." -#: src/translate.c:155 -msgid "Import images web" -msgstr "Import web images" +#: glade/xcfa.glade:4509 +msgid "Import web images " +msgstr "Import web images " -#: src/translate.c:156 +#: glade/xcfa.glade:4578 msgid "Supprimer l'image en selection" -msgstr "Delete the image selection" +msgstr "Supprimer l'image en selection" -#: src/translate.c:157 +#: glade/xcfa.glade:4600 msgid "AJouter de nouvelles images." -msgstr "Add new images." +msgstr "AJouter de nouvelles images." -#: src/translate.c:158 +#: glade/xcfa.glade:4606 msgid "Ouvre un fichier" -msgstr "Open a file" +msgstr "Ouvre un fichier" -#: src/translate.c:159 +#: glade/xcfa.glade:4623 msgid "Enregistrer la page au format png." -msgstr "Save Page png." +msgstr "Enregistrer la page au format png." -#: src/translate.c:160 +#: glade/xcfa.glade:4629 msgid "Sauvegarde le fichier" -msgstr "Saving the file" +msgstr "Sauvegarde le fichier" -#: src/translate.c:161 +#: glade/xcfa.glade:4646 msgid "Diminution de l'echelle." -msgstr "Reduction in the scale." +msgstr "Diminution de l'echelle." -#: src/translate.c:162 +#: glade/xcfa.glade:4652 msgid "Reduit l'agrandissement" -msgstr "Reduced expansion" +msgstr "Reduit l'agrandissement" -#: src/translate.c:163 +#: glade/xcfa.glade:4669 msgid "Echelle a 100%." -msgstr "Scale 100%." +msgstr "Echelle a 100%." -#: src/translate.c:164 +#: glade/xcfa.glade:4675 msgid "Remet l'echelle a 100%" -msgstr "Gives the scale at 100%" +msgstr "Remet l'echelle a 100%" -#: src/translate.c:165 +#: glade/xcfa.glade:4692 msgid "Augmentation de l'echelle." -msgstr "Increase in scale." +msgstr "Augmentation de l'echelle." -#: src/translate.c:166 +#: glade/xcfa.glade:4698 msgid "Augmente l'agrandissement" -msgstr "Increasing expansion" +msgstr "Augmente l'agrandissement" -#: src/translate.c:167 +#: glade/xcfa.glade:4715 msgid "Echelle compatible avec la taille de la fenetre." -msgstr "Scale compatible with the size of the window." +msgstr "Echelle compatible avec la taille de la fenetre." -#: src/translate.c:168 +#: glade/xcfa.glade:4721 msgid "Adapte l'echelle a la taille de la fenetre" -msgstr "Adjusts the scale to the size of the window" +msgstr "Adapte l'echelle a la taille de la fenetre" -#: src/translate.c:169 +#: glade/xcfa.glade:4738 msgid "Emplacement de sauvegarde des fichiers." -msgstr "Backup location files." +msgstr "Emplacement de sauvegarde des fichiers." -#: src/translate.c:170 +#: glade/xcfa.glade:4752 msgid "Nom (sans extention) du fichier a sauvegarder." -msgstr "Name (without extension) file is saved." +msgstr "Nom (sans extention) du fichier a sauvegarder." -#: src/translate.c:172 +#: glade/xcfa.glade:4815 msgid " Pochette " -msgstr " CD Cover " +msgstr " Pochette " -#: src/translate.c:173 +#: glade/xcfa.glade:4861 msgid "Nice" msgstr "Nice" -#: src/translate.c:174 -msgid " Priorite systeme " -msgstr " System priority " +#: glade/xcfa.glade:4896 +msgid " Priority system " +msgstr " Priority system " -#: src/translate.c:175 +#: glade/xcfa.glade:4935 msgid "" -"Indiquez ici le dossier sur votre systeme qui servira de lieu\n" -"de stockage provisoire pendant les differentes conversions.\n" -msgstr "Enter the location of the temporary folder to be used by XCFA\n" +"\n" +"Enter here the folder on your system that will serve as\n" +"temporary storage for the different conversions.\n" +msgstr "" +"\n" +"Enter here the folder on your system that will serve as\n" +"temporary storage for the different conversions.\n" -#: src/translate.c:176 -msgid " Dossier provisoire des conversions " -msgstr " Conversions temporary folder " +#: glade/xcfa.glade:4971 +msgid " Provisional file conversions " +msgstr " Provisional file conversions " -#: src/translate.c:177 +#: glade/xcfa.glade:5017 msgid "button" msgstr "button" -#: src/translate.c:178 -msgid " Jouer une musique en fin de tache " -msgstr " Play music at the end of task " +#: glade/xcfa.glade:5038 +msgid " Playing a job end music " +msgstr " Playing a job end music " -#: src/translate.c:179 +#: glade/xcfa.glade:5058 msgid " General " msgstr " General " -#: src/translate.c:180 +#: glade/xcfa.glade:5100 msgid "cdparanoia" msgstr "cdparanoia" -#: src/translate.c:181 +#: glade/xcfa.glade:5120 msgid "cdparanoia mode expert" -msgstr "cdparanoia expert mode" +msgstr "cdparanoia mode expert" -#: src/translate.c:182 +#: glade/xcfa.glade:5140 msgid "cdparanoia mode expert multi passes" -msgstr "cdparanoia expert mode multi pass" +msgstr "cdparanoia mode expert multi passes" -#: src/translate.c:183 +#: glade/xcfa.glade:5168 msgid "cdda2wav / icedax" msgstr "cdda2wav / icedax" -#: src/translate.c:184 +#: glade/xcfa.glade:5194 msgid " Extraction cd-audio avec: " -msgstr " Rip audio-CD with: " +msgstr " Extraction cd-audio avec: " -#: src/translate.c:185 +#: glade/xcfa.glade:5268 msgid "HomePage" -msgstr "Home Page" +msgstr "HomePage" -#: src/translate.c:186 +#: glade/xcfa.glade:5323 msgid "ManPage " -msgstr "Man Page " +msgstr "ManPage " -#: src/translate.c:187 +#: glade/xcfa.glade:5352 msgid " Web cdparanoia " msgstr " Web cdparanoia " -#: src/translate.c:188 +#: glade/xcfa.glade:5414 msgid "" "Le fichier LogExpertMode.txt sera cree dans le dossier des " "extractions" msgstr "" -"LogExpertMode.txt file will be created in the folder extractions" +"Le fichier LogExpertMode.txt sera cree dans le dossier des " +"extractions" -#: src/translate.c:189 -msgid "" -"Generation d'un rapport pour: cdparanoia mode expert multi passes" -msgstr "Generation of a report for: cdparanoia expert mode multi pass" +#: glade/xcfa.glade:5431 +msgid "Generation of a report for: cdparanoia mode expert multi passes" +msgstr "Generation of a report for: cdparanoia mode expert multi passes" -#: src/translate.c:190 +#: glade/xcfa.glade:5467 msgid "" -"%a - artiste %b - titre " +"%a - artist %b - titre " "de l'album %c - numero de la piste\n" "%d - titre de la chanson %e - " -"annee %g - genre\n" +"year %g - genre\n" "%na - no accent %Tl " "- Tetsumaki lower\n" -"%u - remplacement de caracteres: %u(AB=C) %u( =_)" +"%u - replacement characters: %u(AB=C) %u( =_)" msgstr "" -"%a - artist %b - album " -"title %c - track number\n" -"%d - track title %e - " +"%a - artist %b - titre " +"de l'album %c - numero de la piste\n" +"%d - titre de la chanson %e - " "year %g - genre\n" "%na - no accent %Tl " "- Tetsumaki lower\n" -"%u - replacing characters: %u(AB=C) %u( =_)" +"%u - replacement characters: %u(AB=C) %u( =_)" -#: src/translate.c:191 +#: glade/xcfa.glade:5536 msgid " Dossier de stockage " -msgstr " File storage " +msgstr " Dossier de stockage " -#: src/translate.c:192 +#: glade/xcfa.glade:5567 msgid " CD " msgstr " CD " -#: src/translate.c:193 +#: glade/xcfa.glade:5615 msgid "ABR / CBR / VBR / VBR-NEW" msgstr "ABR / CBR / VBR / VBR-NEW" -#: src/translate.c:194 +#: glade/xcfa.glade:5660 glade/xcfa.glade:6295 msgid "Debit" -msgstr "Bitrate" +msgstr "Debit" -#: src/translate.c:195 +#: glade/xcfa.glade:5705 glade/xcfa.glade:6317 msgid "Mode" msgstr "Mode" -#: src/translate.c:196 +#: glade/xcfa.glade:5747 msgid " Lame (fichier mp3): " -msgstr " Lame (mp3 file): " +msgstr " Lame (fichier mp3): " -#: src/translate.c:197 src/translate.c:213 src/translate.c:225 -#: src/translate.c:238 src/translate.c:255 src/translate.c:266 -#: src/translate.c:280 src/translate.c:294 +#: glade/xcfa.glade:5827 glade/xcfa.glade:6466 glade/xcfa.glade:6941 +#: glade/xcfa.glade:7469 glade/xcfa.glade:8200 glade/xcfa.glade:8659 +#: glade/xcfa.glade:9192 glade/xcfa.glade:9753 msgid "Par defaut" -msgstr "Default" +msgstr "Par defaut" -#: src/translate.c:198 +#: glade/xcfa.glade:5848 msgid " Options LAME " -msgstr " LAME Options " +msgstr " Options LAME " -#: src/translate.c:199 src/translate.c:227 src/translate.c:268 +#: glade/xcfa.glade:5909 glade/xcfa.glade:7023 glade/xcfa.glade:8741 msgid "Site officiel" -msgstr "Official website" +msgstr "Site officiel" -#: src/translate.c:200 +#: glade/xcfa.glade:5964 msgid "Wiki mp3 " -msgstr "mp3 wiki " +msgstr "Wiki mp3 " -#: src/translate.c:201 +#: glade/xcfa.glade:6020 msgid "Wiki " -msgstr "Lame wiki " +msgstr "Wiki " -#: src/translate.c:202 +#: glade/xcfa.glade:6076 msgid "ManPage " -msgstr "Man Page " +msgstr "ManPage " -#: src/translate.c:203 +#: glade/xcfa.glade:6105 msgid " Web Lame " -msgstr " Lame " +msgstr " Web Lame " -#: src/translate.c:204 src/translate.c:218 src/translate.c:231 -#: src/translate.c:242 src/translate.c:260 src/translate.c:271 -#: src/translate.c:286 +#: glade/xcfa.glade:6181 glade/xcfa.glade:6709 glade/xcfa.glade:7238 +#: glade/xcfa.glade:7644 glade/xcfa.glade:8442 glade/xcfa.glade:8901 +#: glade/xcfa.glade:9491 msgid "[" msgstr "[" -#: src/translate.c:205 src/translate.c:219 src/translate.c:232 -#: src/translate.c:243 src/translate.c:261 src/translate.c:272 -#: src/translate.c:287 +#: glade/xcfa.glade:6194 glade/xcfa.glade:6722 glade/xcfa.glade:7251 +#: glade/xcfa.glade:7657 glade/xcfa.glade:8455 glade/xcfa.glade:8914 +#: glade/xcfa.glade:9504 msgid "string option interne" -msgstr "internal string option" +msgstr "string option interne" -#: src/translate.c:206 src/translate.c:220 src/translate.c:233 -#: src/translate.c:244 src/translate.c:262 src/translate.c:273 -#: src/translate.c:288 +#: glade/xcfa.glade:6209 glade/xcfa.glade:6737 glade/xcfa.glade:7266 +#: glade/xcfa.glade:7672 glade/xcfa.glade:8470 glade/xcfa.glade:8929 +#: glade/xcfa.glade:9519 msgid "]" msgstr "]" -#: src/translate.c:207 -msgid "" -" Options experts, definies par l'utilisateur - lame (wav -> mp3) " -msgstr " User-defined expert options - lame (wav -> mp3) " +#: glade/xcfa.glade:6234 +msgid " Experts options defined by the user- lame (wav -> mp3) " +msgstr " Experts options defined by the user- lame (wav -> mp3) " -#: src/translate.c:208 +#: glade/xcfa.glade:6254 msgid " Mp3 " msgstr " Mp3 " -#: src/translate.c:209 -msgid " Mode" -msgstr " Mode" - -#: src/translate.c:210 -msgid " Mode flux (streaming)" -msgstr " Streaming" +#: glade/xcfa.glade:6306 +msgid "Mode flux (streaming)" +msgstr "Mode flux (streaming)" -#: src/translate.c:211 -msgid " Debit" -msgstr "Bitrate" - -#: src/translate.c:212 +#: glade/xcfa.glade:6386 msgid " Oggenc (fichier ogg): " -msgstr " Oggenc (ogg file): " +msgstr " Oggenc (fichier ogg): " -#: src/translate.c:214 +#: glade/xcfa.glade:6487 msgid " Options OGGENC " -msgstr " OGGENC Options " +msgstr " Options OGGENC " -#: src/translate.c:215 +#: glade/xcfa.glade:6548 msgid "Wiki " msgstr "Wiki " -#: src/translate.c:216 src/translate.c:258 src/translate.c:284 -#: src/translate.c:298 +#: glade/xcfa.glade:6604 glade/xcfa.glade:8337 glade/xcfa.glade:9386 +#: glade/xcfa.glade:9947 msgid "ManPage" -msgstr "Man Page" +msgstr "ManPage" -#: src/translate.c:217 +#: glade/xcfa.glade:6633 msgid " Web Oggenc " -msgstr " Oggenc " +msgstr " Web Oggenc " -#: src/translate.c:221 -msgid "" -" Options experts, definies par l'utilisateur - oggenc (wav -> ogg) " -msgstr " User-defined expert options - oggenc (wav -> ogg) " +#: glade/xcfa.glade:6762 +msgid " Experts options defined by the user - oggenc (wav -> ogg) " +msgstr " Experts options defined by the user - oggenc (wav -> ogg) " -#: src/translate.c:222 +#: glade/xcfa.glade:6782 msgid " Oggenc " msgstr " Oggenc " -#: src/translate.c:223 +#: glade/xcfa.glade:6824 msgid "Taux de compression" -msgstr "Compression level" +msgstr "Taux de compression" -#: src/translate.c:224 +#: glade/xcfa.glade:6861 msgid " Flac (fichier flac): " -msgstr " Flac (flac file): " +msgstr " Flac (fichier flac): " -#: src/translate.c:226 +#: glade/xcfa.glade:6962 msgid " Options FLAC " -msgstr " FLAC Options " +msgstr " Options FLAC " -#: src/translate.c:228 src/translate.c:269 +#: glade/xcfa.glade:7078 glade/xcfa.glade:8796 msgid "Framasoft " msgstr "Framasoft " -#: src/translate.c:229 +#: glade/xcfa.glade:7133 msgid "ManPage " -msgstr "Man Page " +msgstr "ManPage " -#: src/translate.c:230 +#: glade/xcfa.glade:7162 msgid " Web Flac " -msgstr " Flac " +msgstr " Web Flac " -#: src/translate.c:234 -msgid "" -" Options experts, definies par l'utilisateur - flac (wav -> flac) " -msgstr " User-defined expert options - flac (wav -> flac) " +#: glade/xcfa.glade:7291 +msgid " Experts options defined by the user- flac (wav -> flac) " +msgstr " Experts options defined by the user- flac (wav -> flac) " -#: src/translate.c:235 +#: glade/xcfa.glade:7311 msgid " Flac " msgstr " Flac " -#: src/translate.c:236 +#: glade/xcfa.glade:7353 msgid " Qualite" -msgstr " Quality" +msgstr " Qualite" -#: src/translate.c:237 +#: glade/xcfa.glade:7389 msgid " Mac (fichier ape): " -msgstr " Mac (ape file): " +msgstr " Mac (fichier ape): " -#: src/translate.c:239 +#: glade/xcfa.glade:7490 msgid " Options MAC " -msgstr " MAC Options " +msgstr " Options MAC " -#: src/translate.c:240 +#: glade/xcfa.glade:7546 msgid "Wiki" msgstr "Wiki" -#: src/translate.c:241 +#: glade/xcfa.glade:7568 msgid " Web Mac " -msgstr " Mac " +msgstr " Web Mac " -#: src/translate.c:245 -msgid " Options experts, definies par l'utilisateur - mac (wav -> ape) " -msgstr " User-defined expert options - mac (wav -> ape) " +#: glade/xcfa.glade:7697 +msgid " Experts options defined by the user - mac (wav -> ape) " +msgstr " Experts options defined by the user - mac (wav -> ape) " -#: src/translate.c:246 +#: glade/xcfa.glade:7717 msgid " Mac " msgstr " Mac " -#: src/translate.c:247 +#: glade/xcfa.glade:7765 msgid "Compression" msgstr "Compression" -#: src/translate.c:248 +#: glade/xcfa.glade:7817 msgid "Son" -msgstr "Channel mode" +msgstr "Son" -#: src/translate.c:249 +#: glade/xcfa.glade:7869 msgid "Mode hybride" -msgstr "Hybrid mode" +msgstr "Mode hybride" -#: src/translate.c:250 +#: glade/xcfa.glade:7921 msgid "Fichier de correction" -msgstr "Correction file" +msgstr "Fichier de correction" -#: src/translate.c:251 +#: glade/xcfa.glade:7973 msgid "Compression maximum" -msgstr "Maximum compression" +msgstr "Compression maximum" -#: src/translate.c:252 +#: glade/xcfa.glade:8025 msgid "Signature MD5" -msgstr "MD5 signature" +msgstr "Signature MD5" -#: src/translate.c:253 +#: glade/xcfa.glade:8077 msgid "Extra encode processing" msgstr "Extra encode processing" -#: src/translate.c:254 +#: glade/xcfa.glade:8120 msgid " WavPack (fichier wv): " -msgstr " WavPack (wv file): " +msgstr " WavPack (fichier wv): " -#: src/translate.c:256 +#: glade/xcfa.glade:8221 msgid " Options WAVPACK " -msgstr " WAVPACK Options " +msgstr " Options WAVPACK " -#: src/translate.c:257 +#: glade/xcfa.glade:8282 msgid "Wiki " msgstr "Wiki " -#: src/translate.c:259 +#: glade/xcfa.glade:8366 msgid " Web Wavpack " -msgstr " Wavpack " +msgstr " Web Wavpack " -#: src/translate.c:263 -msgid "" -" Options experts, definies par l'utilisateur - wavpack (wav -> wv) " -msgstr " User-defined expert options - wavpack (wav -> wv) " +#: glade/xcfa.glade:8495 +msgid " Experts options defined by the user - wavpack (wav -> wv) " +msgstr " Experts options defined by the user - wavpack (wav -> wv) " -#: src/translate.c:264 +#: glade/xcfa.glade:8515 msgid " Wavpack " msgstr " Wavpack " -#: src/translate.c:265 +#: glade/xcfa.glade:8579 msgid " MusePack (fichier mpc): " -msgstr " MusePack (mpc file): " +msgstr " MusePack (fichier mpc): " -#: src/translate.c:267 +#: glade/xcfa.glade:8680 msgid " Options MUSEPACK " -msgstr " MUSEPACK Options " +msgstr " Options MUSEPACK " -#: src/translate.c:270 +#: glade/xcfa.glade:8825 msgid " Web Musepack " -msgstr " Musepack " +msgstr " Web Musepack " -#: src/translate.c:274 -msgid "" -" Options experts, definies par l'utilisateur - musepack (wav -> mpc) " -msgstr " User-defined expert options - musepack (wav -> mpc) " +#: glade/xcfa.glade:8954 +msgid " Experts options defined by the user- musepack (wav -> mpc) " +msgstr " Experts options defined by the user- musepack (wav -> mpc) " -#: src/translate.c:275 +#: glade/xcfa.glade:8974 msgid " Musepack " msgstr " Musepack " -#: src/translate.c:276 -msgid " Qualite VBR / Debit ABR" -msgstr "VBR Quality / ABR rate" - -#: src/translate.c:277 -msgid " VBR / ABR" -msgstr " VBR / ABR" - -#: src/translate.c:278 -msgid " Conteneur" -msgstr " Container" +#: glade/xcfa.glade:9016 +msgid "Conteneur" +msgstr "Conteneur" + +#: glade/xcfa.glade:9027 +msgid "VBR / ABR" +msgstr "VBR / ABR" + +#: glade/xcfa.glade:9038 +msgid "Qualite VBR / Debit ABR" +msgstr "Qualite VBR / Debit ABR" -#: src/translate.c:279 +#: glade/xcfa.glade:9112 msgid " Faac (fichier .m4a): " -msgstr " Faac (file .m4a): " +msgstr " Faac (fichier .m4a): " -#: src/translate.c:281 +#: glade/xcfa.glade:9213 msgid " Options FAAC " -msgstr " FAAC Options " +msgstr " Options FAAC " -#: src/translate.c:282 src/translate.c:296 +#: glade/xcfa.glade:9274 glade/xcfa.glade:9835 msgid "Site officiel " -msgstr "Official website " +msgstr "Site officiel " -#: src/translate.c:283 src/translate.c:297 +#: glade/xcfa.glade:9330 glade/xcfa.glade:9891 msgid "Web Info " -msgstr "Info " +msgstr "Web Info " -#: src/translate.c:285 +#: glade/xcfa.glade:9415 msgid " Web Faac " -msgstr " Faac " +msgstr " Web Faac " -#: src/translate.c:289 -msgid "" -" Options experts, definies par l'utilisateur - faac (wav -> m4a) " -msgstr " User-defined expert options - faac (wav -> m4a) " +#: glade/xcfa.glade:9544 +msgid " Experts options defined by the user - faac (wav -> m4a) " +msgstr " Experts options defined by the user - faac (wav -> m4a) " -#: src/translate.c:290 +#: glade/xcfa.glade:9564 msgid " Faac " msgstr " Faac " -#: src/translate.c:291 -msgid " Stereo: Qualite en kbit/s" -msgstr " Stereo: Quality in kbit/s" - -#: src/translate.c:292 -msgid " Mono: Qualite en kbit/s" -msgstr " Mono: Quality en kbit/s" +#: glade/xcfa.glade:9606 +msgid "Mono: Qualite en kbit/s" +msgstr "Mono: Qualite en kbit/s" + +#: glade/xcfa.glade:9617 +msgid "Stereo: Qualite en kbit/s" +msgstr "Stereo: Qualite en kbit/s" -#: src/translate.c:293 +#: glade/xcfa.glade:9673 msgid " AacplusEnc (fichier .aac): " -msgstr " AacplusEnc (file .aac): " +msgstr " AacplusEnc (fichier .aac): " -#: src/translate.c:295 +#: glade/xcfa.glade:9774 msgid " Options AacPlusEnc " -msgstr " AacPlusEnc Options " +msgstr " Options AacPlusEnc " -#: src/translate.c:299 +#: glade/xcfa.glade:9976 msgid " Web AacPlusEnc " -msgstr " AacPlusEnc " +msgstr " Web AacPlusEnc " -#: src/translate.c:300 +#: glade/xcfa.glade:10021 msgid " AacplusEnc " msgstr " AacplusEnc " -#: src/translate.c:301 +#: glade/xcfa.glade:10051 msgid "Artiste" -msgstr "Artist" +msgstr "Artiste" -#: src/translate.c:302 src/translate.c:330 +#: glade/xcfa.glade:10070 glade/xcfa_win_treeview.glade:95 msgid "Titre" -msgstr "Title" +msgstr "Titre" -#: src/translate.c:303 +#: glade/xcfa.glade:10089 msgid "Album" msgstr "Album" -#: src/translate.c:304 +#: glade/xcfa.glade:10108 msgid "Numero" -msgstr "Number" +msgstr "Numero" -#: src/translate.c:305 +#: glade/xcfa.glade:10127 msgid "Genre" msgstr "Genre" -#: src/translate.c:306 +#: glade/xcfa.glade:10146 msgid "Annee" -msgstr "Year" +msgstr "Annee" -#: src/translate.c:307 +#: glade/xcfa.glade:10165 msgid "Commentaire" -msgstr "Comment" +msgstr "Commentaire" -#: src/translate.c:308 +#: glade/xcfa.glade:10190 msgid " Exportation de " -msgstr " Export " +msgstr " Exportation de " -#: src/translate.c:310 +#: glade/xcfa.glade:10226 msgid " Preferences " msgstr " Preferences " -#: src/translate.c:311 +#: glade/xcfa.glade:10289 msgid "SCAN" msgstr "SCAN" -#: src/translate.c:312 +#: glade/xcfa.glade:10303 msgid " Installation " msgstr " Installation " -#: src/translate.c:313 -msgid " Votre systeme utilise ... " -msgstr " Your system uses ... " +#: glade/xcfa.glade:10338 +msgid " Your system use ... " +msgstr " Your system use ... " -#: src/translate.c:314 +#: glade/xcfa.glade:10375 msgid "" "\n" -"Pour installer les programmes externes requis,\n" -"veuillez utiliser l'installateur de votre distribution Gnu/Linux.\n" +"To install the required external programs\n" +"Please use the installer to your distribution Gnu / Linux.\n" msgstr "" "\n" -"To install the required external software,\n" -"please use the package manager of your Gnu/Linux distribution.\n" +"To install the required external programs\n" +"Please use the installer to your distribution Gnu / Linux.\n" -#: src/translate.c:315 +#: glade/xcfa.glade:10393 msgid "" "Le programme XCFA_INSTALL_ALL ecrit en Perl vous sera utile en ligne de " "commande pour une installation des programmes complementaire." msgstr "" -"The program XCFA_INSTALL_ALL written in Perl will be useful on the command " -"line for installation of supplementary programs" +"Le programme XCFA_INSTALL_ALL ecrit en Perl vous sera utile en ligne de " +"commande pour une installation des programmes complementaire." -#: src/translate.c:316 +#: glade/xcfa.glade:10419 msgid " Informations " msgstr " Informations " -#: src/translate.c:317 -msgid " Application externes " -msgstr " External programs " +#: glade/xcfa.glade:10443 +msgid " External application " +msgstr " External application " -#: src/translate.c:318 src/translate.c:321 +#: glade/xcfa.glade:10514 glade/xcfa.glade:10618 msgid "parametres:" -msgstr "parameters:" +msgstr "parametres:" -#: src/translate.c:319 +#: glade/xcfa.glade:10527 msgid "" "\n" " konqueror : newTab\n" @@ -2436,229 +2354,105 @@ " konqueror : newTab\n" " iceweasel : -new-window -new-tab \n" -#: src/translate.c:320 +#: glade/xcfa.glade:10548 msgid "Navigateur" -msgstr "browsers" +msgstr "Navigateur" -#: src/translate.c:322 +#: glade/xcfa.glade:10648 msgid "Lecteurs audio" -msgstr "Audio player" +msgstr "Lecteurs audio" -#: src/translate.c:323 -msgid " Navigateurs / Lecteurs audio " -msgstr " Browsers / Audio player" +#: glade/xcfa.glade:10669 +msgid "  Browsers / Audio Players " +msgstr "  Browsers / Audio Players " -#: src/translate.c:324 +#: glade/xcfa.glade:10692 msgid " Applications externes " -msgstr " External programs " - -#: src/translate.c:325 -msgid "Scan en cours ..." -msgstr "Scan in progress ..." - -#: src/translate.c:326 -msgid "Scan du support en cours ..." -msgstr "Media scan in progress..." - -#: src/translate.c:327 -msgid "Detail extraction mode expert" -msgstr "Rip details - expert mode" - -#: src/translate.c:328 -msgid "Modification des champs" -msgstr "Modify fields" - -#: src/translate.c:329 -msgid "" -"\n" -"Modification des champs\n" -msgstr "" -"\n" -"Modify fields\n" - -#: src/translate.c:337 src/translate.c:356 src/translate.c:377 -#: src/translate.c:389 src/translate.c:400 src/translate.c:408 -msgid " Visibilite " -msgstr " Visibility " - -#: src/translate.c:338 src/translate.c:357 src/translate.c:378 -#: src/translate.c:390 src/translate.c:401 src/translate.c:409 -msgid "Nom a gauche" -msgstr "Name to left" - -#: src/translate.c:339 src/translate.c:358 src/translate.c:379 -#: src/translate.c:391 src/translate.c:402 src/translate.c:410 -msgid "Nom au centre" -msgstr "Name centred" - -#: src/translate.c:340 src/translate.c:359 src/translate.c:380 -#: src/translate.c:392 src/translate.c:403 src/translate.c:411 -msgid "Nom a droite" -msgstr "Name to right" - -#: src/translate.c:341 -msgid "DVD" -msgstr "DVD" - -#: src/translate.c:346 src/translate.c:367 -msgid "Wavpack" -msgstr "Wavpack" - -#: src/translate.c:350 src/translate.c:371 -msgid "Musepack" -msgstr "Musepack" - -#: src/translate.c:360 -msgid "CD" -msgstr "CD" - -#: src/translate.c:375 -msgid "Replaygain" -msgstr "Replaygain" - -#: src/translate.c:381 -msgid "CONVERSIONS" -msgstr "CONVERSIONS" - -#: src/translate.c:382 -msgid "Hertz" -msgstr "Hertz" - -#: src/translate.c:383 -msgid "New Hertz" -msgstr "New Hertz" - -#: src/translate.c:384 -msgid "Voie" -msgstr "Voice" - -#: src/translate.c:385 -msgid "New Voie" -msgstr "New Voice" - -#: src/translate.c:386 -msgid "Bits" -msgstr "Bits" - -#: src/translate.c:387 -msgid "New Bits" -msgstr "New Bits" - -#: src/translate.c:393 -msgid "WAV" -msgstr "WAV" - -#: src/translate.c:396 -msgid "New Bitrate" -msgstr "New Bitrat" - -#: src/translate.c:397 -msgid "Size" -msgstr "Size" - -#: src/translate.c:404 -msgid "MP3-OGG" -msgstr "MP3-OGG" - -#: src/translate.c:412 -msgid "TAGS" -msgstr "TAGS" +msgstr " Applications externes " -#: src/translate.c:413 -msgid "Selection globale" -msgstr "Select all" - -#: src/translate.c:414 -msgid "Deselection globale" -msgstr "Clear all" - -#: src/translate.c:415 -msgid "Retour" -msgstr "Return" - -#: src/translate.c:416 +#: glade/xcfa_win_about.glade:7 msgid "About X Convert File Audio" msgstr "About X Convert File Audio" -#: src/translate.c:417 +#: glade/xcfa_win_about.glade:103 msgid "Author" msgstr "Author" -#: src/translate.c:418 +#: glade/xcfa_win_about.glade:139 msgid "Licence" -msgstr "License" +msgstr "Licence" -#: src/translate.c:419 +#: glade/xcfa_win_about.glade:163 msgid " Informations " msgstr " Informations " -#: src/translate.c:420 +#: glade/xcfa_win_about.glade:198 msgid " Machine " -msgstr " Computer " +msgstr " Machine " -#: src/translate.c:421 +#: glade/xcfa_win_about.glade:333 msgid "Ingenieurs du son\n" -msgstr "Sound engineers\n" +msgstr "Ingenieurs du son\n" -#: src/translate.c:422 +#: glade/xcfa_win_about.glade:350 msgid "" "\n" "Graphisme\n" msgstr "" "\n" -"Graphics\n" +"Graphisme\n" -#: src/translate.c:423 +#: glade/xcfa_win_about.glade:370 msgid "" "Traduction Anglaise\n" "\n" "\n" msgstr "" -"English translation\n" +"Traduction Anglaise\n" "\n" "\n" -#: src/translate.c:424 +#: glade/xcfa_win_about.glade:391 msgid "" "\n" "Traduction Allemande" msgstr "" "\n" -"German translation" +"Traduction Allemande" -#: src/translate.c:425 +#: glade/xcfa_win_about.glade:628 msgid "" "\n" "Codeur Xcfa" msgstr "" "\n" -"XCFA programmer" +"Codeur Xcfa" -#: src/translate.c:426 +#: glade/xcfa_win_about.glade:665 msgid "" "\n" "ElementSpeak pour Xcfa " msgstr "" "\n" -"ElementSpeak for XCFA··" +"ElementSpeak pour Xcfa " -#: src/translate.c:427 +#: glade/xcfa_win_about.glade:702 msgid "" "\n" "Codeur pages Web" msgstr "" "\n" -"Webmasters" +"Codeur pages Web" -#: src/translate.c:428 +#: glade/xcfa_win_about.glade:739 msgid "" "\n" "Traduction Italienne" msgstr "" "\n" -"Italian translation" +"Traduction Italienne" -#: src/translate.c:429 +#: glade/xcfa_win_about.glade:800 msgid "" "\n" "\n" @@ -2666,53 +2460,45 @@ msgstr "" "\n" "\n" -"Useful links\n" +"Pages a visiter\n" -#: src/translate.c:430 +#: glade/xcfa_win_about.glade:1123 msgid "Linux On The Root" msgstr "Linux On The Root" -#: src/translate.c:431 +#: glade/xcfa_win_about.glade:1180 msgid "Frugalware" msgstr "Frugalware" -#: src/translate.c:432 +#: glade/xcfa_win_about.glade:1237 msgid "Road2Mayotte" msgstr "Road2Mayotte" -#: src/translate.c:433 +#: glade/xcfa_win_about.glade:1294 msgid "La Linuxerie" msgstr "La Linuxerie" -#: src/translate.c:434 -msgid "Audioptimisation by Dzef" -msgstr "Audioptimisation by Dzef" - -#: src/translate.c:435 +#: glade/xcfa_win_about.glade:1351 msgid "Tuxfamily" msgstr "Tuxfamily" -#: src/translate.c:436 +#: glade/xcfa_win_about.glade:1408 msgid "Framasoft" msgstr "Framasoft" -#: src/translate.c:437 +#: glade/xcfa_win_about.glade:1465 msgid "Ekd (EnKoDeur-Mixeur)" msgstr "Ekd (EnKoDeur-Mixeur)" -#: src/translate.c:438 -msgid "Bishop's page" -msgstr "Bishop's page" +#: glade/xcfa_win_about.glade:1544 +msgid "Debian Multimedia" +msgstr "Debian Multimedia" -#: src/translate.c:439 +#: glade/xcfa_win_about.glade:1598 msgid "Je suis libre" msgstr "Je suis libre" -#: src/translate.c:440 -msgid "Debian Multimedia" -msgstr "Debian Multimedia" - -#: src/translate.c:441 +#: glade/xcfa_win_about.glade:1705 msgid "" "\n" "Forum\n" @@ -2720,19 +2506,15 @@ "\n" "Forum\n" -#: src/translate.c:442 -msgid "XCFA Vorstellung " -msgstr "XCFA Vorstellung " +#: glade/xcfa_win_about.glade:1825 +msgid "Forum Xcfa" +msgstr "Forum Xcfa" -#: src/translate.c:443 +#: glade/xcfa_win_about.glade:1879 msgid "XCFA LinuxForen.de" msgstr "XCFA LinuxForen.de" -#: src/translate.c:444 -msgid "Forum Xcfa" -msgstr "Forum Xcfa" - -#: src/translate.c:445 +#: glade/xcfa_win_about.glade:1929 msgid "" "\n" "Documentation\n" @@ -2740,133 +2522,217 @@ "\n" "Documentation\n" -#: src/translate.c:446 +#: glade/xcfa_win_about.glade:2164 msgid "Wiki Xcfa par Shankarius" -msgstr "XCFA wiki by Shankarius" +msgstr "Wiki Xcfa par Shankarius" -#: src/translate.c:447 +#: glade/xcfa_win_about.glade:2219 msgid "Doc Xcfa par Patachon" -msgstr "XCFA doc. by Patachon" +msgstr "Doc Xcfa par Patachon" -#: src/translate.c:448 +#: glade/xcfa_win_about.glade:2276 msgid "Ogg Vorbis explique par Shankarius" -msgstr "Ogg Vorbis explained by Shankarius" +msgstr "Ogg Vorbis explique par Shankarius" -#: src/translate.c:449 +#: glade/xcfa_win_about.glade:2333 msgid "La normalisation expliquee par Dzef" -msgstr "Normalisation explained by Dzef" +msgstr "La normalisation expliquee par Dzef" -#: src/translate.c:450 +#: glade/xcfa_win_about.glade:2390 msgid "Xcfa sur Linux On The Root" -msgstr "XCFA on Linux On The Root" +msgstr "Xcfa sur Linux On The Root" -#: src/translate.c:451 +#: glade/xcfa_win_about.glade:2433 msgid " Contributions " msgstr " Contributions " -#: src/translate.c:452 +#: glade/xcfa_win_about.glade:2461 msgid " License " -msgstr " Licence " +msgstr " License " -#: src/translate.c:453 +#: glade/xcfa_win_about.glade:2482 msgid "OK" msgstr "OK" -#: src/web.c:173 src/web.c:234 -msgid "PAS de navigateur present" -msgstr "No web browser" - -#: src/web.c:174 -msgid "L'acces au web est impossible car aucun navigateur" -msgstr "No Web access: no web browser" - -#: src/web.c:176 -msgid "n'est present dans votre configuration." -msgstr "found in your system" - -#: src/web.c:178 -msgid "Veuillez installez un navigateur." -msgstr "Please install a web browser" - -#: src/web.c:188 -msgid "Vous devez ouvrir l'acces internet" -msgstr "You need to enable web access" - -#: src/web.c:236 -msgid " L'acces au web est impossible car aucun navigateur" -msgstr " No Web access: no web browser" - -#: src/web.c:238 -msgid " n'est present dans votre configuration." -msgstr " found in your system" - -#: src/web.c:240 -msgid " Veuillez installez un navigateur." -msgstr " Please install a web browser" +#: glade/xcfa_win_scan.glade:9 +msgid "Scan en cours ..." +msgstr "Scan en cours ..." -#: src/web.c:250 -msgid "L'application est absente." -msgstr "Application is missing." +#: glade/xcfa_win_scan.glade:77 +msgid "Scan du support en cours ..." +msgstr "Scan du support en cours ..." -#: src/web.c:251 -msgid "Veuillez installer : " -msgstr "Please install : " +#: glade/xcfa_win_scan.glade:128 +msgid "Detail extraction mode expert" +msgstr "Detail extraction mode expert" -#: src/win_about.c:130 -msgid " Xcfa sur le web" -msgstr " XCFA on the web" +#: glade/xcfa_win_treeview.glade:7 +msgid "Modification des champs" +msgstr "Modification des champs" -#: src/win_about.c:180 +#: glade/xcfa_win_treeview.glade:41 msgid "" "\n" -"Au tout debut:\n" -"\n" -"Serres Patrick, Hamann Regis, Fabien Gregis, @Dzef, @alteo_gange, \n" -"@Leonux, @zarer, @Shankarius, @bishop, @Ludo, @Patachonf,\n" -"... ;-)\n" -"\n" -"" +"Modification des champs\n" msgstr "" "\n" -"In the beginning:\n" -"\n" -"Serres Patrick, Hamann Regis, Fabien Gregis, @Dzef, @alteo_gange, \n" -"@Leonux, @zarer, @Shankarius, @bishop, @Ludo, @Patachonf,\n" -"... ;-)\n" -"\n" -"" +"Modification des champs\n" -#: src/win_scan.c:161 -msgid "Waiting ..." -msgstr "Waiting ..." +#: glade/xcfa_win_treeview.glade:129 +msgid "Temps" +msgstr "Temps" -#~ msgid "Quantification" -#~ msgstr "Quantification" +#: glade/xcfa_win_treeview.glade:163 +msgid "Choix" +msgstr "Choix" -#~ msgid "Voie" -#~ msgstr "Channel" +#: glade/xcfa_win_treeview.glade:197 glade/xcfa_win_treeview.glade:577 +#: glade/xcfa_win_treeview.glade:995 glade/xcfa_win_treeview.glade:1260 +#: glade/xcfa_win_treeview.glade:1508 glade/xcfa_win_treeview.glade:1706 +msgid "Nom" +msgstr "Nom" -#~ msgid " Frequence - Hertz " -#~ msgstr " Frequency -Hertz " +#: glade/xcfa_win_treeview.glade:220 glade/xcfa_win_treeview.glade:600 +#: glade/xcfa_win_treeview.glade:1018 glade/xcfa_win_treeview.glade:1283 +#: glade/xcfa_win_treeview.glade:1531 glade/xcfa_win_treeview.glade:1732 +msgid " Visibilite " +msgstr " Visibilite " -#~ msgid "Cellule" -#~ msgstr "Cell" +#: glade/xcfa_win_treeview.glade:250 glade/xcfa_win_treeview.glade:630 +#: glade/xcfa_win_treeview.glade:1048 glade/xcfa_win_treeview.glade:1313 +#: glade/xcfa_win_treeview.glade:1562 glade/xcfa_win_treeview.glade:1763 +msgid "Nom a gauche" +msgstr "Nom a gauche" + +#: glade/xcfa_win_treeview.glade:267 glade/xcfa_win_treeview.glade:647 +#: glade/xcfa_win_treeview.glade:1065 glade/xcfa_win_treeview.glade:1330 +#: glade/xcfa_win_treeview.glade:1579 glade/xcfa_win_treeview.glade:1780 +msgid "Nom au centre" +msgstr "Nom au centre" + +#: glade/xcfa_win_treeview.glade:286 glade/xcfa_win_treeview.glade:666 +#: glade/xcfa_win_treeview.glade:1084 glade/xcfa_win_treeview.glade:1349 +#: glade/xcfa_win_treeview.glade:1598 glade/xcfa_win_treeview.glade:1799 +msgid "Nom a droite" +msgstr "Nom a droite" + +#: glade/xcfa_win_treeview.glade:326 +msgid "DVD" +msgstr "DVD" -#~ msgid "Colonne" -#~ msgstr "Column" +#: glade/xcfa_win_treeview.glade:373 glade/xcfa_win_treeview.glade:791 +msgid "Wav" +msgstr "Wav" -#~ msgid " Cacher Xcfa " -#~ msgstr " Hide Xcfa " +#: glade/xcfa_win_treeview.glade:390 glade/xcfa_win_treeview.glade:808 +msgid "Flac" +msgstr "Flac" + +#: glade/xcfa_win_treeview.glade:407 glade/xcfa_win_treeview.glade:825 +msgid "Ape" +msgstr "Ape" + +#: glade/xcfa_win_treeview.glade:424 glade/xcfa_win_treeview.glade:842 +msgid "Wavpack" +msgstr "Wavpack" + +#: glade/xcfa_win_treeview.glade:441 glade/xcfa_win_treeview.glade:859 +msgid "Ogg" +msgstr "Ogg" + +#: glade/xcfa_win_treeview.glade:458 glade/xcfa_win_treeview.glade:876 +msgid "M4a" +msgstr "M4a" + +#: glade/xcfa_win_treeview.glade:475 glade/xcfa_win_treeview.glade:893 +msgid "Aac" +msgstr "Aac" + +#: glade/xcfa_win_treeview.glade:492 glade/xcfa_win_treeview.glade:910 +msgid "Musepack" +msgstr "Musepack" + +#: glade/xcfa_win_treeview.glade:509 glade/xcfa_win_treeview.glade:927 +msgid "Mp3" +msgstr "Mp3" + +#: glade/xcfa_win_treeview.glade:526 +msgid "Num" +msgstr "Num" + +#: glade/xcfa_win_treeview.glade:709 +msgid "CD" +msgstr "CD" + +#: glade/xcfa_win_treeview.glade:978 +msgid "Replaygain" +msgstr "Replaygain" + +#: glade/xcfa_win_treeview.glade:1127 +msgid "CONVERSIONS" +msgstr "CONVERSIONS" + +#: glade/xcfa_win_treeview.glade:1158 +msgid "Hertz" +msgstr "Hertz" + +#: glade/xcfa_win_treeview.glade:1175 +msgid "New Hertz" +msgstr "New Hertz" + +#: glade/xcfa_win_treeview.glade:1192 +msgid "Voie" +msgstr "Voie" + +#: glade/xcfa_win_treeview.glade:1209 +msgid "New Voie" +msgstr "New Voie" + +#: glade/xcfa_win_treeview.glade:1226 +msgid "Bits" +msgstr "Bits" + +#: glade/xcfa_win_treeview.glade:1243 +msgid "New Bits" +msgstr "New Bits" + +#: glade/xcfa_win_treeview.glade:1392 +msgid "WAV" +msgstr "WAV" + +#: glade/xcfa_win_treeview.glade:1440 +msgid "Bitrate" +msgstr "Bitrate" + +#: glade/xcfa_win_treeview.glade:1457 +msgid "New Bitrate" +msgstr "New Bitrate" + +#: glade/xcfa_win_treeview.glade:1641 +msgid "MP3-OGG" +msgstr "MP3-OGG" + +#: glade/xcfa_win_treeview.glade:1842 +msgid "TAGS" +msgstr "TAGS" + +#: glade/xcfa_win_treeview.glade:1894 +msgid "Selection globale" +msgstr "Selection globale" + +#: glade/xcfa_win_treeview.glade:1948 +msgid "Deselection globale" +msgstr "Deselection globale" + +#: glade/xcfa_win_treeview.glade:2009 +msgid "Retour" +msgstr "Retour" -#~ msgid " Montrer Xcfa " -#~ msgstr " Show Xcfa " +#~ msgid "Audioptimisation by Dzef" +#~ msgstr "Audioptimisation by Dzef" -#~ msgid " Quitter Xcfa " -#~ msgstr " Quit Xcfa " +#~ msgid "Bishop's page" +#~ msgstr "Bishop's page" -#~ msgid "" -#~ "XCFA\n" -#~ "Programme pour convertir les fichiers audio." -#~ msgstr "" -#~ "XCFA\n" -#~ "Program for converting audio files." +#~ msgid "XCFA Vorstellung " +#~ msgstr "XCFA Vorstellung " Binary files /tmp/U9mREQ24T4/xcfa-4.3.8/po/es.gmo and /tmp/9PqOMEw8oW/xcfa-5.0.1/po/es.gmo differ diff -Nru xcfa-4.3.8/po/es.po xcfa-5.0.1/po/es.po --- xcfa-4.3.8/po/es.po 2014-01-31 12:25:57.000000000 +0000 +++ xcfa-5.0.1/po/es.po 2015-03-01 17:00:50.000000000 +0000 @@ -4,153 +4,99 @@ # Claude BULIN , 2011. msgid "" msgstr "" -"Project-Id-Version: xcfa 4.2.8\n" +"Project-Id-Version: xcfa 5.0.0\n" "Report-Msgid-Bugs-To: xcfa@tuxfamily.org\n" -"POT-Creation-Date: 2014-01-31 13:25+0100\n" -"PO-Revision-Date: 2011-09-06 22:12+0200\n" +"POT-Creation-Date: 2015-03-01 18:00+0100\n" +"PO-Revision-Date: 2015-02-06 21:45+0100\n" "Last-Translator: Claude BULIN \n" "Language-Team: Spain\n" -"Language: Spain\n" +"Language: es\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n > 1);\n" -"X-Generator: Virtaal 0.6.1\n" +"X-Generator: Poedit 1.7.3\n" -#: src/cd_audio.c:812 src/dvd.c:680 src/dvd.c:1324 -msgid "MPLAYER deja en action" +#: src/cd_audio.c:814 src/dvd.c:686 src/dvd.c:1345 +msgid "MPLAYER already in action" msgstr "MPLAYER ya está en acción" -#: src/cd_audio.c:813 src/dvd.c:681 src/dvd.c:1325 -msgid "MPLAYER est deja utilise !!" +#: src/cd_audio.c:815 src/dvd.c:687 src/dvd.c:1346 +msgid "MPLAYER is already in use !!" msgstr "MPLAYER ya está en uso!" -#: src/cd_audio.c:1224 src/cd_audio.c:1230 src/dvd.c:867 src/file.c:2827 -msgid "(Click Droit = Menu) / En attente de selection." -msgstr "(Clic derecho = Menú) / espera para la selección." - -#: src/cd_audio.c:1227 src/file.c:2824 -msgid "Le programme externe d'extraction est absent." -msgstr "La extracción de un programa externo está ausente." - -#: src/cd_audio.c:1233 src/file.c:2830 -msgid "(Click Droit = Menu) / En attente de selection. Le fichier existe." -msgstr "(Clic derecho = Menú) / espera para la selección. Existe el archivo." +#: src/cd_audio.c:1227 src/cd_audio.c:1233 src/file.c:2837 +msgid "(Right click = Menu) / Waiting for selection." +msgstr "(Clic derecho = Menú) / selección." + +#: src/cd_audio.c:1230 +msgid "The external ripping program is missing." +msgstr "El programa de rasgadura externa ha desaparecido." + +#: src/cd_audio.c:1236 +msgid "(Right click = Menu) / Waiting for Selection. File exists.." +msgstr "(Clic derecho = Menú) / selección. Existe el archivo." -#: src/cd_audio.c:1236 src/file.c:2833 -msgid "(Click Droit = Menu) / En selection." +#: src/cd_audio.c:1239 +msgid "(Right click = Menu) / Selected files." msgstr "(Clic derecho = Menú) / selección." -#: src/cd_audio.c:1239 src/file.c:2839 -msgid "(Click Droit = Menu) / Selection avec options expert." +#: src/cd_audio.c:1242 src/file.c:2849 +msgid "(Right click = Menu) / Selection - expert mode." msgstr "(Clic derecho = Menú) / Selección con el experto en opciones." -#: src/cd_audio.c:1242 src/file.c:2836 -msgid "(Click Droit = Menu) / En selection. Le fichier existe." +#: src/cd_audio.c:1245 src/file.c:2846 +msgid "(Right click = Menu) / Selected files. File exists." msgstr "(Clic derecho = Menú) / selección. Existe el archivo." -#: src/cd_audio.c:1245 src/file.c:2842 -msgid "" -"(Click Droit = Menu) / Selection avec options expert. Le fichier existe." +#: src/cd_audio.c:1248 src/file.c:2852 +msgid "(Right click = Menu) / Selection - expert mode. File exists." msgstr "" "(Clic derecho = Menú) / Selección con el experto en opciones. Existe el " "archivo." -#: src/cd_audio.c:1254 +#: src/cd_audio.c:1257 msgid "" -"(Click Droit = Menu) / Possibilite d'ajustement INDIVIDUEL ou COLLECTIF " -"maximal du volume" +"(Right click = Menu) / Possibilities for individual adaptation or maximum " +"collection volume" msgstr "" -"(Clic derecho = Menú) / Posibilidad de ajuste individual o GROUP volumen " -"máximo " +"(Right click = Menu) / Las posibilidades de adaptación individual o volumen " +"máximo colección" -#: src/cd_audio.c:1259 -msgid "(Click Droit = Menu) / Ajustement INDIVIDUEL maximal du volume" +#: src/cd_audio.c:1262 +msgid "(Right click = Menu) / INDIVIDUAL maximum volume adjustment" msgstr "(Clic derecho = Menú) / ajuste de volumen individual máximo" -#: src/cd_audio.c:1262 -msgid "(Click Droit = Menu) / Ajustement COLLECTIF maximal du volume" +#: src/cd_audio.c:1265 +msgid "(Right click = Menu) / COLLECTIVE maximum volume adjustment" msgstr "(Clic derecho = Menú) / Colecciones máximo volumen ajustable" -#: src/cd_audio.c:1502 src/dvd.c:1099 src/file.c:3137 src/translate.c:331 -#: src/translate.c:342 src/translate.c:361 -msgid "Play" -msgstr "Juego" - -#: src/cd_audio.c:1543 src/file.c:3202 src/translate.c:343 src/translate.c:364 -msgid "Wav" -msgstr "Wav" - -#: src/cd_audio.c:1564 src/file.c:3221 src/translate.c:344 src/translate.c:365 -msgid "Flac" -msgstr "Flac" - -#: src/cd_audio.c:1584 src/file.c:3240 src/translate.c:345 src/translate.c:366 -msgid "Ape" -msgstr "Ape" - -#: src/cd_audio.c:1604 src/file.c:3259 -msgid "WavP" -msgstr "WavP" - -#: src/cd_audio.c:1624 src/file.c:3278 src/translate.c:347 src/translate.c:368 -msgid "Ogg" -msgstr "Ogg" - -#: src/cd_audio.c:1645 src/file.c:3297 src/translate.c:348 src/translate.c:369 -msgid "M4a" -msgstr "M4a" - -#: src/cd_audio.c:1666 src/file.c:3316 src/translate.c:349 src/translate.c:370 -msgid "Aac" -msgstr "Aac" - -#: src/cd_audio.c:1686 src/file.c:3335 -msgid "Mpc" -msgstr "Mpc" - -#: src/cd_audio.c:1706 src/file.c:3354 src/translate.c:351 src/translate.c:372 -msgid "Mp3" -msgstr "Mp3" - -#: src/cd_audio.c:1727 src/translate.c:352 -msgid "Num" -msgstr "Num" - -#: src/cd_audio.c:1742 src/translate.c:353 src/translate.c:373 -#: src/translate.c:398 src/translate.c:406 -msgid "Time" -msgstr "Tiempo" - -#: src/cd_audio.c:1757 src/dvd.c:1167 src/file.c:3390 src/translate.c:335 -#: src/translate.c:354 src/translate.c:374 +#: src/cd_audio.c:1764 src/dvd.c:1187 src/file.c:3403 +#: glade/xcfa_win_treeview.glade:180 glade/xcfa_win_treeview.glade:560 +#: glade/xcfa_win_treeview.glade:961 msgid "Normalise" msgstr "Normaliza" -#: src/cd_audio.c:1782 src/dvd.c:1187 src/file.c:3432 src/file_mp3ogg.c:958 -#: src/file_tags.c:1191 src/file_wav.c:824 src/prg_init.c:609 -#: src/translate.c:336 src/translate.c:355 src/translate.c:376 -#: src/translate.c:388 src/translate.c:399 src/translate.c:407 -msgid "Nom" -msgstr "Nom" +#: src/cd_audio.c:1789 src/dvd.c:1207 src/file.c:3445 src/file_mp3ogg.c:964 +#: src/file_tags.c:1253 src/file_wav.c:830 src/prg_init.c:609 +msgid "Name" +msgstr "Name" -#: src/cd_audio.c:2511 -msgid " Parametrage CDDB: [ Nom du serveur ]" +#: src/cd_audio.c:2517 +msgid " Setting up CDDB: [ Server name ]" msgstr " Configuración de CDDB: [nombre del servidor]" -#: src/cd_audio.c:2520 -msgid " Parametrage PROXY: [ serveur ] [ port ]" +#: src/cd_audio.c:2526 +msgid " Proxy settings: [ server ] [ port ] " msgstr " Instalación del Servidor Proxy: [servidor] [puerto]" -#: src/cd_audio.c:2530 src/translate.c:95 -msgid " Serveur " +#: src/cd_audio.c:2536 glade/xcfa.glade:1842 +msgid " Server " msgstr " servidor " #: src/cd_audio_extract.c:673 #, c-format -msgid "" -"[Erreur du segment numero: %d]\n" -"%d) Lecture PASS 1/2\n" +msgid "[Error on segment #%d] %d) Playing PASS 1/2\n" msgstr "" "[Error número de segmento: %d]\n" "%d) lectura PASS 1/2\n" @@ -158,7 +104,7 @@ #: src/cd_audio_extract.c:680 #, c-format msgid "" -"--> Deja %d fois 2 lectures du segment %d!\n" +"--> Segment %d already read two %d times!\n" " Abandon :/\n" msgstr "" "--> Deja %d fois 2 lectures du segment %d!\n" @@ -166,28 +112,28 @@ #: src/cd_audio_extract.c:700 #, c-format -msgid "%d) Lecture PASS 2/2\n" +msgid "%d) Read PASS 2/2\n" msgstr "%d) Lectura PASS 2/2\n" #: src/cd_audio_extract.c:780 #, c-format msgid "" "\n" -"[Piste: %d]\n" +"[Track: %d]\n" msgstr "" "\n" "[Pista: %d]\n" #: src/cd_audio_extract.c:784 -msgid "Extraction mode expert PASS 1/2\n" +msgid "Ripping expert mode PASS 1/2\n" msgstr "Modo de extracción de expertos pasada 1/2\n" #: src/cd_audio_extract.c:795 -msgid "Extraction mode expert PASS 2/2\n" +msgid "Ripping expert mode PASS 2/2\n" msgstr "Experto en la extracción de modo de pase de 2/2\n" #: src/cd_audio_extract.c:803 -msgid "Controle du contenu des fichiers extraits\n" +msgid "Control the content of the extracted files\n" msgstr "Controlar el contenido de los archivos extraídos\n" #: src/cd_audio_extract.c:1710 src/cd_audio_extract.c:1712 @@ -201,16 +147,16 @@ #: src/cd_audio_extract.c:1712 src/dvd_extract.c:414 src/file_action.c:185 #: src/file_mp3ogg_conv.c:331 src/file_wav_conv.c:345 -msgid "Arret par l'utilisateur" +msgid "Stop by user" msgstr "Pase por el usuario" #: src/cd_audio_extract.c:1983 -msgid "Nom de fichier unique absent" -msgstr "Nombre de archivo único que falta" +msgid "File name not found" +msgstr "Nombre de archivo no encontrado" #: src/cd_audio_extract.c:1984 -msgid "Veuillez saisir un nom pour le fichier unique" -msgstr "Por favor, introduzca un nombre para el archivo único" +msgid "Please enter a file name" +msgstr "Por favor, introduzca un nombre de archivo" #: src/cd_audio_toc.c:156 msgid "cdda2wav and icedax NOT FOUND" @@ -253,16 +199,16 @@ msgstr "Please, install packages [ cd-discid ]" #: src/cd_audio_toc.c:203 -msgid "ERREUR datas proxy" +msgid "ERROR datas proxy" msgstr "ERROR datas del proxy" #: src/cd_audio_toc.c:204 -msgid "Veuillez renseigner les champs du proxy" +msgid "Please complete all fields proxy" msgstr "Por favor, complete todos los campos del proxy" #: src/cd_curl.c:734 src/web.c:187 -msgid "La liaison internet est absente" -msgstr "La conexión a Internet está ausente" +msgid "A web connection is missing" +msgstr "Una conexión a Internet no se encuentra" #: src/cd_curl.c:1204 msgid "Couldn't find CD" @@ -272,137 +218,129 @@ msgid "No Audio CD" msgstr "No Audio CD" -#: src/dvd.c:859 +#: src/dvd.c:877 msgid "" -"(Click Droit = Menu) / PEAK-ALBUM: Amplification maximale du volume pour un " -"groupe de fichiers en respectant les ecarts de niveau entre chacun d'eux." +"(Right click = Menu) / Maximum volume amplification of a group of files " +"keeping the level difference between each of them." msgstr "" -"(Clic = derecho = Menú) / PEAK-álbum: amplificación del volumen máximo de un " -"grupo de archivos de acuerdo con la diferencia de nivel entre cada uno de " -"ellos." +"(Right click = Menu) / Amplificación de volumen máximo de un grupo de " +"archivos de mantenimiento de la diferencia de nivel entre cada uno de ellos." -#: src/dvd.c:862 -msgid "" -"(Click Droit = Menu) / PEAK: Amplification maximale du volume pour chaque de " -"fichier." -msgstr "" -"(Clic derecho = Menú) / PEAK: La amplificación de volumen máximo para cada " -"uno de archivo." +#: src/dvd.c:882 src/file.c:2882 +msgid "PEAK: Maximum volume amplification of each file." +msgstr "PEAK: amplificación máximo volumen de cada archivo." + +#: src/dvd.c:887 +msgid "(Right click = Menu) / ReplayGain: Waiting for selection." +msgstr "(Menú = clic derecho) / ReplayGain: En espera de la selección." -#: src/dvd.c:900 src/dvd.c:920 -msgid "En attente de selection. Un click activera la conversion vers 2 canaux." +#: src/dvd.c:920 src/dvd.c:940 +msgid "" +"Waiting for selection. A click will activate the conversion to 2 channels." msgstr "" "De espera para la selección. Con un clic se activa la conversión de 2 " "canales." -#: src/dvd.c:912 -msgid "Conversion vers 2 canaux." +#: src/dvd.c:932 +msgid "Conversion to 2 channels." msgstr "La conversión a 2 canales." -#: src/dvd.c:924 +#: src/dvd.c:944 #, c-format -msgid "Conversion vers %s canaux." +msgid "Conversion to %s channels." msgstr "La conversión a %s canales." -#: src/dvd.c:929 +#: src/dvd.c:949 #, c-format msgid "" -"Conversion vers 2 canaux. Un second click activera la conversion vers %s " -"canaux." +"Conversion to 2 channels. A second click will activate the conversion to %s " +"channels." msgstr "" "Conversion vers 2 canaux. Un second click activera la conversion vers %s " "canaux." -#: src/dvd.c:944 -msgid "Musique en ecoute." -msgstr "Música escuchando" - -#: src/dvd.c:947 -msgid "Musique en attente." -msgstr "Música en espera." +#: src/dvd.c:964 +msgid "Playing music." +msgstr "Reproducción de música." + +#: src/dvd.c:967 +msgid "Music paused." +msgstr "De música en pausa." -#: src/dvd.c:962 +#: src/dvd.c:982 #, c-format msgid "Total selection%s: %d, 2ch: %d" msgstr "Total selection%s: %d, 2ch: %d" -#: src/dvd.c:963 +#: src/dvd.c:983 msgid "s" msgstr "s" -#: src/dvd.c:969 -msgid "Ce fichier ne peut etre extrait !" -msgstr "Este archivo se puede extraer !" - -#: src/dvd.c:1087 -msgid "Titres" -msgstr "Titres" +#: src/dvd.c:989 +msgid "This file can not be ripped !" +msgstr " El archivo no puede ser arrancado! " + +#: src/dvd.c:1107 +msgid "Titles" +msgstr "Títulos" -#: src/dvd.c:1111 src/file.c:3373 src/file_mp3ogg.c:943 src/file_tags.c:1175 -#: src/translate.c:332 -msgid "Temps" -msgstr "Temps" +#: src/dvd.c:1119 glade/xcfa_win_treeview.glade:112 +#: glade/xcfa_win_treeview.glade:356 glade/xcfa_win_treeview.glade:740 +msgid "Play" +msgstr "Juego" -#: src/dvd.c:1123 src/translate.c:333 +#: src/dvd.c:1131 src/file.c:3386 src/file_mp3ogg.c:949 src/file_tags.c:1237 +#: glade/xcfa_win_treeview.glade:543 glade/xcfa_win_treeview.glade:944 +#: glade/xcfa_win_treeview.glade:1491 glade/xcfa_win_treeview.glade:1689 +msgid "Time" +msgstr "Tiempo" + +#: src/dvd.c:1143 glade/xcfa_win_treeview.glade:146 msgid "Format" msgstr "Format" -#: src/dvd.c:1135 src/translate.c:334 -msgid "Choix" +#: src/dvd.c:1155 +msgid "Choice" msgstr "Choix" -#: src/dvd.c:1249 -msgid "Fichier structure DVD" +#: src/dvd.c:1267 +msgid "DVD file structure" msgstr "DVD estructura de archivos" -#: src/dvd.c:1299 -msgid "Le DVD est absent du lecteur." -msgstr "El reproductor de DVD está ausente." - -#: src/dvd.c:1335 -msgid "Scan ..." -msgstr "Scan ..." +#: src/dvd.c:1320 +msgid "The DVD player is absent." +msgstr "Sox et Mplayer absents" -#: src/dvd.c:1385 -msgid "lsdvd est absent !" +#: src/dvd.c:1410 +msgid "lsdvd is missing !" msgstr "lsdvd está ausente !" -#: src/dvd.c:1386 -msgid "Il faut installer le programme: lsdvd" +#: src/dvd.c:1411 +msgid "You must install the program: lsdvd" msgstr "Debe instalar el programa: lsdvd" #: src/dvd_extract.c:412 src/dvd_extract.c:414 -msgid "XCFA: Extraction DVD" -msgstr "XCFA: Extraction DVD" +msgid "XCFA: DVD rip" +msgstr "XCFA: DVD rip" -#: src/dvd_read.c:263 +#: src/dvd_read.c:226 #, c-format -msgid "Titre [%02d ** ]" +msgid "Title [%02d ** ]" msgstr "Titre [%02d ** ]" -#: src/dvd_read.c:266 +#: src/dvd_read.c:227 #, c-format -msgid "Titre [%02d]" +msgid "Title [%02d]" msgstr "Titre [%02d]" -#: src/dvd_read.c:310 -#, c-format -msgid "Fichier_complet_%02d_%s" -msgstr "Fichier_complet_%02d_%s" - -#: src/dvd_read.c:355 +#: src/dvd_read.c:252 #, c-format -msgid "Chapitre: [%02d]" +msgid "Chapter: [%02d]" msgstr "Chapitre: [%02d]" -#: src/dvd_read.c:401 -#, c-format -msgid "Titre_%02d_Chapitre_%02d_audio_%02d_%s" -msgstr "Titre_%02d_Chapitre_%02d_audio_%02d_%s" - #: src/file_action.c:183 src/file_action.c:185 -msgid "XCFA: Traitement fichiers" -msgstr "XCFA: Traitement fichiers" +msgid "XCFA: Processing files" +msgstr "XCFA: archivos de procesamiento" #: src/file_analyze.c:731 msgid "Package checkmp3 (mp3check) NOT FOUND !" @@ -410,147 +348,145 @@ #: src/file_analyze.c:732 msgid "" -"Veuillez installer checkmp3 ou mp3check pour\n" -"la prise en compte des fichiers mp3" +"Please install or checkmp3 mp3check for\n" +"consideration of mp3 files" msgstr "" "Veuillez installer checkmp3 ou mp3check pour\n" "la prise en compte des fichiers mp3" -#: src/file.c:328 +#: src/file.c:327 #, c-format -msgid "Total fichiers: %d, Selections: %d" +msgid "Total files: %d, Selections: %d" msgstr "Total fichiers: %d, Selections: %d" -#: src/file.c:442 -msgid "CAPACITE DOSSIER TEMPORAIRE TROP FAIBLE" -msgstr "CAPACIDAD archivo temporal DEMASIADO PEQUEÑO" - -#: src/file.c:443 -msgid "Pas assez de place dans le dossier temporaire" -msgstr "No hay suficiente espacio en la carpeta temporal" +#: src/file.c:441 +msgid "TEMPORARY CAPACITY TOO LOW" +msgstr "Capacidad temporal DEMASIADO BAJO" + +#: src/file.c:442 src/file.c:2875 +msgid "WARNING: Not enough space available in the temp folder." +msgstr "" +"ADVERTENCIA: No hay suficiente espacio disponible en la carpeta temporal." -#: src/file.c:449 -msgid "Veuillez deselectionner des PeakGroup." +#: src/file.c:448 +msgid "Please deselect PeakGroup." msgstr "Por favor, desactive PeakGroup." -#: src/file.c:1433 -msgid "Conversion(s) vers la source" +#: src/file.c:1431 +msgid "Conversion(s) to source" msgstr "Conversión (s) a la fuente" -#: src/file.c:1434 -msgid "Choix d'une nouvelle destination" -msgstr "La elección de un nuevo destino" +#: src/file.c:1432 +msgid "Select a new destination" +msgstr "Seleccione un nuevo destino" -#: src/file.c:1504 +#: src/file.c:1501 msgid "Select type: --" msgstr "Select type: --" -#: src/file.c:1589 +#: src/file.c:1584 msgid "Peak/album" msgstr "Peak/albu" -#: src/file.c:1590 +#: src/file.c:1585 msgid "Peak" msgstr "Peak" -#: src/file.c:1591 +#: src/file.c:1586 msgid "Mix (scan)Rms/album" msgstr "Mix (scan)Rms/album" -#: src/file.c:1592 +#: src/file.c:1587 msgid "Fix (scan)Rms" msgstr "Fix (scan)Rm" -#: src/file.c:2851 +#: src/file.c:2834 +msgid "The external ripping program is missing" +msgstr "El programa de rasgadura externa falta" + +#: src/file.c:2840 +msgid "(Right click = Menu) / Waiting for Selection. File exists." +msgstr "(Clic derecho = Menú) / selección. Existe el archivo." + +#: src/file.c:2843 +msgid "(Right click = Menu) / Selected files" +msgstr "(Clic derecho = Menú) / selección." + +#: src/file.c:2861 #, c-format -msgid "MAX FICHIERS ATTEINT = %d" +msgid "MAX FILES REACHED = %d" msgstr "MAX FICHIERS ATTEINT = %d" -#: src/file.c:2861 -msgid "Normalise: En attente de selection." +#: src/file.c:2871 +msgid "Normalise: Waiting for selection." msgstr "Normaliza: En espera de la selección." -#: src/file.c:2865 -msgid "ATTENTION: Pas assez de place dans le dossier temporaire." -msgstr "ADVERTENCIA: No suficiente espacio en la carpeta temporal." - -#: src/file.c:2868 +#: src/file.c:2878 msgid "" -"PEAK-ALBUM: Amplification maximale du volume pour un groupe de fichiers en " -"respectant les ecarts de niveau entre chacun d'eux." +"PEAK-ALBUM: Maximum volume amplification for a group of files according to " +"the deviations in level between them" msgstr "" -"PICO-álbum: La amplificación del volumen máximo de un grupo de archivos de " -"acuerdo con la diferencia de nivel entre cada uno de ellos." +"PEAK-álbum: amplificación del volumen máximo para un grupo de archivos de " +"acuerdo a las desviaciones de nivel entre ellos" -#: src/file.c:2872 -msgid "PEAK: Amplification maximale du volume pour chaque de fichier." -msgstr "PEAK: La amplificación de volumen máximo para cada archivo." - -#: src/file.c:2875 +#: src/file.c:2885 msgid "" -"RMS-ALBUM: Ajustement du volume moyen pour un groupe de fichiers en " -"respectant les ecarts de niveau moyen entre chacun d'eux." +"RMS-ALBUM: Adjusting the average volume for a group of files according to " +"the average level of deviation between them." msgstr "" -"PICO-álbum: La amplificación del volumen máximo de un grupo de archivos de " -"acuerdo con la diferencia de nivel entre cada uno de ellos." +"RMS-álbum: Ajuste del volumen promedio de un grupo de archivos de acuerdo " +"con el nivel medio de desviación entre ellos." -#: src/file.c:2878 -msgid "RMS: Ajustement du volume moyen de chaque de fichier." -msgstr "RMS: Ajuste del volumen medio de cada archivo." +#: src/file.c:2888 +msgid "RMS: Average volume amplification of each file." +msgstr "RMS: amplificación promedio de volumen de cada archivo." -#: src/file.c:2892 -msgid "(Click Droit = Menu) / ReplayGain: En attente de selection." +#: src/file.c:2902 +msgid "(Right Click = Menu) / ReplayGain: Waiting for selection." msgstr "(Menú = clic derecho) / ReplayGain: En espera de la selección." -#: src/file.c:2895 -msgid "(Click Droit = Menu) / Mode piste." +#: src/file.c:2905 +msgid "(Right Click = Menu) / Track mode." msgstr "(Click Droit = Menu) / Mode piste" -#: src/file.c:2898 -msgid "(Click Droit = Menu) / Mode album." +#: src/file.c:2908 +msgid "(Right Click = Menu) / Album mode." msgstr "(Click Droit = Menu) / Mode album." -#: src/file.c:2901 -msgid "(Click Droit = Menu) / Mode effacer." -msgstr "(Click Droit = Menu) / Mode effacer." +#: src/file.c:2911 +msgid "(Right Click = Menu) / Erase mode." +msgstr "(Clic derecho = Menú) / selección." -#: src/file.c:3013 +#: src/file.c:3026 msgid "" -"(Click Droit = Menu) / Cliquez ici pour envoyer ce fichier apres traitement " -"a la corbeille" -msgstr "" -"(Click Droit = Menu) / Haga clic aquí para enviar este archivo a la papelera " -"después del tratamiento" +"(Click Droit = Menu) / Click here to send the processed file to the trash" +msgstr "(Click Droit = Menu) / Elección del número de bits de codificación" -#: src/file.c:3016 +#: src/file.c:3029 msgid "" -"(Click Droit = Menu) / Ce fichier sera dirige apres traitement vers la " -"corbeille" +"(Right Click = Menu) / This file will be sent to the trash after processing" msgstr "" -"(Click Droit = Menu) / Este archivo será dirigido a la basura después del " -"tratamiento" +"(Right Click = Menu) / Este archivo se enviará a la basura después de " +"procesar" -#: src/file.c:3150 src/file_trash.c:359 src/translate.c:362 +#: src/file.c:3163 src/file_trash.c:208 glade/xcfa_win_treeview.glade:757 msgid "Trash" msgstr "Trash" -#: src/file.c:3170 src/file_mp3ogg.c:883 src/file_tags.c:1160 -#: src/translate.c:363 src/translate.c:394 src/translate.c:405 +#: src/file.c:3183 src/file_mp3ogg.c:889 src/file_tags.c:1222 +#: glade/xcfa_win_treeview.glade:774 glade/xcfa_win_treeview.glade:1423 +#: glade/xcfa_win_treeview.glade:1672 msgid "Type" msgstr "Type" -#: src/file.c:3409 -msgid "ReplayGain" -msgstr "ReplayGain" - -#: src/file_conv.c:1187 src/file_mp3ogg_conv.c:336 -msgid "Erreur depuis MPLAYER !" +#: src/file_conv.c:1187 +msgid "Error since MPLAYER !" msgstr "Error, ya que MPlayer !" #: src/file_conv.c:1188 src/file_conv.c:1200 src/file_mp3ogg_conv.c:337 #: src/file_mp3ogg_conv.c:349 -msgid "Vous pouvez activer XCFA en ligne de commande avec: " -msgstr "Usted puede habilitar la línea de comandos con XCFA" +msgid "You can enable XCFA command line with: " +msgstr "Puede habilitar la línea de comandos XCFA con: " #: src/file_conv.c:1190 src/file_conv.c:1202 src/file_mp3ogg_conv.c:339 #: src/file_mp3ogg_conv.c:351 @@ -558,50 +494,54 @@ msgstr "$ xcfa -verbose" #: src/file_conv.c:1192 src/file_mp3ogg_conv.c:341 -msgid "pour consulter le type d'erreur renvoye par mplayer." +msgid "to see the type of error returned by mplayer." msgstr "para ver el tipo de error devuelto por mplayer" -#: src/file_conv.c:1199 src/file_mp3ogg_conv.c:348 -msgid "Erreur depuis SOX !" +#: src/file_conv.c:1199 +msgid "Error since SOX !" msgstr "Error, ya que SOX !" #: src/file_conv.c:1204 src/file_mp3ogg_conv.c:353 -msgid "pour consulter le type d'erreur renvoye par sox." +msgid "to see the type of error returned by sox." msgstr "para ver el tipo de error devuelto por la ley SOX." -#: src/file_mp3ogg.c:668 -msgid "Click droit: acces popup" +#: src/file_mp3ogg.c:670 +msgid "Right click: access popup" msgstr "Clic derecho: el acceso emergente" -#: src/file_mp3ogg.c:899 src/translate.c:395 -msgid "Bitrate" -msgstr "Bitrate" +#: src/file_mp3ogg.c:921 +msgid "New bitrate" +msgstr "New Bitrate" -#: src/file_mp3ogg.c:915 -msgid "Nouveau bitrate" -msgstr "Nouveau bitrate" - -#: src/file_mp3ogg.c:929 -msgid "Taille" -msgstr "Taille" +#: src/file_mp3ogg.c:935 glade/xcfa_win_treeview.glade:1474 +msgid "Size" +msgstr "Size" #: src/file_mp3ogg_conv.c:329 src/file_mp3ogg_conv.c:331 -msgid "XCFA: Modification bitrate" -msgstr "XCFA: bitrate Cambio" +msgid "XCFA: Bitrate change" +msgstr "XCFA: Traitement fichiers" + +#: src/file_mp3ogg_conv.c:336 +msgid "Error from MPLAYER !" +msgstr "Error, ya que MPlayer !" + +#: src/file_mp3ogg_conv.c:348 +msgid "Error from SOX !" +msgstr "Error, ya que SOX !" #: src/file_mp3ogg_conv.c:432 #, c-format -msgid " ATTENTION: Il faut installer %s%s%s" +msgid " WARNING : you need to install %s%s%s" msgstr " ATTENTION: Il faut installer %s%s%s" #: src/file_mp3ogg_conv.c:440 #, c-format -msgid " ATTENTION: Il faut installer %s%s" +msgid " WARNING : you need to install %s%s" msgstr " ATTENTION: Il faut installer %s%s" #: src/file_mp3ogg_conv.c:447 #, c-format -msgid " ATTENTION: Il faut installer %s" +msgid " WARNING : you need to install %s" msgstr " ATTENTION: Il faut installer %s" #: src/file_mp3ogg_conv.c:454 @@ -609,310 +549,306 @@ msgstr "Package NOT FOUND !" #: src/fileselect.c:105 -msgid "Choix d'un dossier de destination" +msgid "Choosing a destination folder" msgstr "Elegir una carpeta de destino" #: src/fileselect.c:106 -msgid "Choix d'un fichier CUE WAV FLAC OGG MP3 APE WMA" +msgid "Choosing a file CUE WAV FLAC OGG MP3 APE WMA" msgstr "La elección de un archivo CUE WAV OGG APE FLAC MP3 WMA" #: src/fileselect.c:107 -msgid "Choix d'un fichier musical" +msgid "Choosing a file musical" msgstr "Selección de un archivo de música" -#: src/fileselect.c:108 -msgid "Choix d'un fichier" -msgstr "Al seleccionar un archivo" - -#: src/fileselect.c:109 -msgid "Choix de fichiers" -msgstr "Selección de archivos" +#: src/fileselect.c:108 src/fileselect.c:109 +msgid "Choosing a file" +msgstr "La elección de un archivo" #: src/fileselect.c:110 -msgid "Choix de fichiers WAV" -msgstr "Elección de los archivos WAV" +msgid "Choosing a WAV file" +msgstr "La elección de un archivo WAV" #: src/fileselect.c:111 -msgid "Choix de fichiers MP3/OGG" -msgstr "Seleccione Archivo MP3/OGG" +msgid "Choosing a MP3 OGG file" +msgstr "La elección de un archivo OGG MP3" #: src/fileselect.c:112 -msgid "Choix de fichiers FLAC MPC OGG MP3" +msgid "Choosing a FLAC MPC OGG MP3 file" msgstr "Seleccione Archivo MPC OGG FLAC MP3" #: src/fileselect.c:113 -msgid "Importer des images pour la pochette" -msgstr "Importación de imágenes para la portada" +msgid "Import pictures for the cover" +msgstr "Importar imágenes de la cubierta" #: src/fileselect.c:114 -msgid "Choix d'un chemin de stockage des images" -msgstr "La elección de un camino de almacenamiento de imágenes" +msgid "Choosing an Image Storage path" +msgstr "La elección de una ruta de almacenamiento de imágenes" #: src/fileselect.c:115 -msgid "Choix d'un lieu de sauvegarde" -msgstr "La elección de un lugar de almacenamiento" +msgid "Choosing a place for backup" +msgstr "La elección de un lugar para la copia de seguridad" -#: src/fileselect.c:472 src/fileselect.c:595 src/fileselect.c:605 -#: src/fileselect.c:628 +#: src/fileselect.c:396 src/fileselect.c:415 src/fileselect.c:703 +msgid "Cancel" +msgstr "Cancel" + +#: src/fileselect.c:398 src/fileselect.c:417 src/fileselect.c:705 +msgid "Open" +msgstr "Open" + +#: src/fileselect.c:494 src/fileselect.c:617 src/fileselect.c:627 +#: src/fileselect.c:650 msgid "All Files (*.*)" msgstr "All Files (*.*)" -#: src/file_trash.c:360 +#: src/file_trash.c:211 msgid "Trash files ..." msgstr "Trash files ..." -#: src/file_wav.c:483 -msgid "(Click Droit = Menu) / Choix de la frequence" +#: src/file_wav.c:485 +msgid "(Right Click = Menu) / Select frequency" msgstr "(Click Droit = Menu) / Elección de la frecuencia" -#: src/file_wav.c:486 -msgid "(Click Droit = Menu) / Choix du nombre de pistes (voies)" -msgstr "(Click Droit = Menu) / La elección del número de pistas (tracks)" +#: src/file_wav.c:488 +msgid "(Right Click = Menu) / Select number of tracks (channels)" +msgstr "(Right Click = Menu) / Seleccione el número de pistas (canales)" -#: src/file_wav.c:489 -msgid "(Click Droit = Menu) / Choix du codage en nombre de bits" -msgstr "(Click Droit = Menu) / Elección del número de bits de codificación" +#: src/file_wav.c:491 +msgid "(Right Click = Menu) / Encoding selection in number of bits" +msgstr "(Clic derecho = Menú) / selección. Existe el archivo." -#: src/file_wav.c:733 -msgid "Frequence" +#: src/file_wav.c:739 +msgid "Frequency" msgstr "frecuencia" -#: src/file_wav.c:749 -msgid "FREQUENCE" +#: src/file_wav.c:755 +msgid "FREQUENCY" msgstr "FRECUENCIA" -#: src/file_wav.c:763 -msgid "Piste" -msgstr "Piste" - -#: src/file_wav.c:779 -msgid "PISTE" -msgstr "PISTE" +#: src/file_wav.c:769 +msgid "Track" +msgstr "Track" + +#: src/file_wav.c:785 +msgid "TRACK" +msgstr "TRACK" -#: src/file_wav.c:793 +#: src/file_wav.c:799 msgid "Quantification" msgstr "Quantification" -#: src/file_wav.c:809 +#: src/file_wav.c:815 msgid "QUANTIFICATION" msgstr "QUANTIFICATION" #: src/file_wav_conv.c:261 #, c-format -msgid "%s Copie fichier: %d%%" +msgid "%s Copy file: %d%%" msgstr "%s copia de archivos: %d%%" #: src/file_wav_conv.c:271 #, c-format -msgid "%s Restitution fichier: %d%%" +msgid "%s Return file: %d%%" msgstr "%s Volver archivo: %d%%" #: src/file_wav_conv.c:281 #, c-format -msgid "%s Traitement Sox: %d%%" +msgid "%s Use Sox: %d%%" msgstr "%s Traitement Sox: %d%%" #: src/file_wav_conv.c:298 #, c-format -msgid "%s Traitement Mplayer: %d%%" +msgid "%s Use Mplayer: %d%%" msgstr "%s Traitement Mplayer: %d%%" #: src/file_wav_conv.c:343 src/file_wav_conv.c:345 msgid "XCFA: Conversions WAV TO WAV" msgstr "XCFA: Conversions WAV TO WAV" -#: src/main.c:398 -msgid "= Adressage memoire invalide\n" -msgstr "= Adressage memoire invalide\n" - -#: src/main.c:401 -msgid "= Vous avez probablement trouve un bug dans XCFA\n" -msgstr "= Vous avez probablement trouve un bug dans XCFA\n" - -#: src/main.c:786 -msgid "MODE ADMINISTRATEUR" +#: src/main.c:775 +msgid "ADMINISTRATOR MODE" msgstr "MODE ADMINISTRATEUR" -#: src/main.c:788 -msgid " Vous ne devriez pas utiliser " -msgstr " Usted no debe usar " +#: src/main.c:777 +msgid " You should not use " +msgstr " Usted no debe usar " -#: src/main.c:790 -msgid " XCFA sous ROOT !" +#: src/main.c:779 +msgid " XCFA under ROOT !" msgstr " XCFA como root !" -#: src/options.c:171 -msgid "ERREUR: Lieu de stockage non autorise !" -msgstr "ERROR: Lugar de almacenamiento no autorizado !" - -#: src/options.c:172 -msgid "Veuillez recommencer." -msgstr "Por favor, inténtalo de nuevo." +#: src/options.c:169 +msgid "ERROR : storage location not permitted !" +msgstr "ERROR: no se permite la ubicación de almacenamiento!" + +#: src/options.c:170 +msgid "Please start again." +msgstr "Por favor, vuelva a empezar." #: src/options_cd.c:122 -msgid "Pour evaluer les templates, vous devez activer une lecture de cdaudio" +msgid "To assess the templates, you must enable a reading cdaudio" msgstr "Para evaluar las plantillas, debe habilitar un cdaudio lectura" -#: src/options_faac.c:96 +#: src/options_faac.c:94 msgid "Transport Stream (ADTS) - Extension .aac" msgstr "Transport Stream (ADTS) - Extension .aac" -#: src/options_faac.c:97 +#: src/options_faac.c:95 msgid "MPEG-4 File Format (MP4) - Extension .m4a" msgstr "MPEG-4 File Format (MP4) - Extension .m4a" -#: src/options_flac.c:67 -msgid "0 (Rapide)" +#: src/options_flac.c:65 +msgid "0 (Fast)" msgstr "0 (Rapide)" -#: src/options_flac.c:75 -msgid "8 (Lent)" +#: src/options_flac.c:73 +msgid "8 (Low)" msgstr "8 (Lent)" -#: src/options_mp3.c:279 -msgid "V0 (meilleure qualite)" +#: src/options_mp3.c:276 +msgid "V0 (Best quality)" msgstr "V0 (meilleure qualite)" -#: src/options_mp3.c:288 -msgid "V9 (moins bonne qualite)" +#: src/options_mp3.c:285 +msgid "V9 (Poor quality)" msgstr "V9 (moins bonne qualite)" -#: src/options_musepack.c:70 +#: src/options_musepack.c:68 msgid "telephone: lowest quality : 32 .. 48 kbit/s" msgstr "telephone: lowest quality : 32 .. 48 kbit/s" -#: src/options_musepack.c:71 +#: src/options_musepack.c:69 msgid "thumb : low quality/internet : 58 .. 86 kbit/s" msgstr "thumb : low quality/internet : 58 .. 86 kbit/s" -#: src/options_musepack.c:72 +#: src/options_musepack.c:70 msgid "radio : medium (MP3) quality : 112 .. 152 kbit/s" msgstr "radio : medium (MP3) quality : 112 .. 152 kbit/s" -#: src/options_musepack.c:73 +#: src/options_musepack.c:71 msgid "standard : high quality (dflt) : 142 .. 184 kbit/s" msgstr "standard : high quality (dflt) : 142 .. 184 kbit/s" -#: src/options_musepack.c:74 +#: src/options_musepack.c:72 msgid "xtreme : extreme high quality : 168 .. 212 kbit/s" msgstr "xtreme : extreme high quality : 168 .. 212 kbit/" -#: src/options_musepack.c:75 +#: src/options_musepack.c:73 msgid "insane : extreme high quality : 232 .. 268 kbit/s" msgstr "insane : extreme high quality : 232 .. 268 kbit/s" -#: src/options_musepack.c:76 +#: src/options_musepack.c:74 msgid "braindead : extreme high quality : 232 .. 278 kbit/s" msgstr "braindead : extreme high quality : 232 .. 278 kbit/s" -#: src/options_oggenc.c:138 -msgid "Qualite -1 (Moins bonne qualite)" -msgstr "Qualite -1 (Moins bonne qualite)" - -#: src/options_oggenc.c:139 src/popup.c:1219 -msgid "Qualite 0" -msgstr "Qualite 0" - -#: src/options_oggenc.c:140 src/popup.c:1219 -msgid "Qualite 1" -msgstr "Qualite 1" - -#: src/options_oggenc.c:141 src/popup.c:1219 -msgid "Qualite 2" -msgstr "Qualite 2" - -#: src/options_oggenc.c:142 -msgid "Qualite 3" -msgstr "Qualite 3" - -#: src/options_oggenc.c:143 src/popup.c:1220 -msgid "Qualite 4" -msgstr "Qualite 4" - -#: src/options_oggenc.c:144 src/popup.c:1220 -msgid "Qualite 5" -msgstr "Qualite 5" - -#: src/options_oggenc.c:145 src/popup.c:1220 -msgid "Qualite 6" -msgstr "Qualite 6" - -#: src/options_oggenc.c:146 src/popup.c:1220 -msgid "Qualite 7" -msgstr "Qualite 7" - -#: src/options_oggenc.c:147 src/popup.c:1221 -msgid "Qualite 8" -msgstr "Qualite 8" - -#: src/options_oggenc.c:148 src/popup.c:1221 -msgid "Qualite 9" -msgstr "Qualite 9" - -#: src/options_oggenc.c:149 -msgid "Qualite 10 (Meilleure qualite)" -msgstr "Qualite 10 (Meilleure qualite)" +#: src/options_oggenc.c:137 +msgid "Quality -1 (Poor quality)" +msgstr "calidad -1 (Moins bonne qualite)" + +#: src/options_oggenc.c:138 src/popup.c:1294 +msgid "Quality 0" +msgstr "calidad 0" + +#: src/options_oggenc.c:139 src/popup.c:1294 +msgid "Quality 1" +msgstr "calidad 1" + +#: src/options_oggenc.c:140 src/popup.c:1294 +msgid "Quality 2" +msgstr "calidad 2" + +#: src/options_oggenc.c:141 +msgid "Quality 3" +msgstr "calidad 3" + +#: src/options_oggenc.c:142 src/popup.c:1295 +msgid "Quality 4" +msgstr "calidad 4" + +#: src/options_oggenc.c:143 src/popup.c:1295 +msgid "Quality 5" +msgstr "calidad 5" + +#: src/options_oggenc.c:144 src/popup.c:1295 +msgid "Quality 6" +msgstr "calidad 6" + +#: src/options_oggenc.c:145 src/popup.c:1295 +msgid "Quality 7" +msgstr "calidad 7" + +#: src/options_oggenc.c:146 src/popup.c:1296 +msgid "Quality 8" +msgstr "calidad 8" + +#: src/options_oggenc.c:147 src/popup.c:1296 +msgid "Quality 9" +msgstr "calidad 9" + +#: src/options_oggenc.c:148 +msgid "Quality 10 (Best quality)" +msgstr "calidad 10 (Meilleure qualite)" + +#: src/options_oggenc.c:176 src/options_wavpack.c:173 +#: src/options_wavpack.c:194 src/options_wavpack.c:215 src/popup.c:1298 +msgid "Yes" +msgstr "Yes" + +#: src/options_oggenc.c:177 src/options_wavpack.c:142 +#: src/options_wavpack.c:172 src/options_wavpack.c:193 +#: src/options_wavpack.c:214 src/options_wavpack.c:233 src/popup.c:1298 +msgid "No" +msgstr "Nom" -#: src/options_oggenc.c:179 src/options_wavpack.c:181 -#: src/options_wavpack.c:204 src/options_wavpack.c:227 src/popup.c:1223 -msgid "Oui" -msgstr "Oui" - -#: src/options_oggenc.c:180 src/options_wavpack.c:148 -#: src/options_wavpack.c:180 src/options_wavpack.c:203 -#: src/options_wavpack.c:226 src/options_wavpack.c:247 src/popup.c:1223 -msgid "Non" -msgstr "Non" - -#: src/options_oggenc.c:201 -msgid "Mono force" -msgstr "Mono force" +#: src/options_oggenc.c:196 +msgid "Force mono" +msgstr "Force mono" -#: src/options_oggenc.c:202 +#: src/options_oggenc.c:197 msgid "Stereo" msgstr "Stereo" -#: src/options_wavpack.c:100 -msgid "Mode normal" -msgstr "Mode normal" - -#: src/options_wavpack.c:101 -msgid "Mode rapide de compression" -msgstr "Mode rapide de compression" +#: src/options_wavpack.c:98 +msgid "Standard" +msgstr "Standard" + +#: src/options_wavpack.c:99 +msgid "Fast (Faster encode and decode)" +msgstr "Fast (envío más rápido y recepción)" -#: src/options_wavpack.c:102 -msgid "Bonne qualite de compression" +#: src/options_wavpack.c:100 +msgid "High quality (Better compression ratio)" msgstr "Mode rapide de compression" -#: src/options_wavpack.c:103 -msgid "Meilleure qualite de compression" -msgstr "Meilleure qualite de compression" +#: src/options_wavpack.c:101 +msgid "Very high quality (Best compression but slowest)" +msgstr "Muy alta calidad (mejor compresión, pero más lento)" -#: src/options_wavpack.c:129 +#: src/options_wavpack.c:125 msgid "stereo left/right" msgstr "stereo left/right" -#: src/options_wavpack.c:130 +#: src/options_wavpack.c:126 msgid "stereo mid/side" msgstr "stereo mid/side" -#: src/options_wavpack.c:248 +#: src/options_wavpack.c:234 msgid "1 (fast / rapide)" msgstr "1 (fast / rapide)" -#: src/options_wavpack.c:253 +#: src/options_wavpack.c:239 msgid "6 (very slow / tres lent)" msgstr "6 (very slow / tres lent)" -#: src/play_file.c:108 -msgid "PAS de lecteur audio present" -msgstr "PAS de lecteur audio present" +#: src/play_file.c:107 +msgid "NO audio player present" +msgstr "NO reproductor de audio actual" -#: src/play_file.c:109 -msgid "Veuillez installez un lecteur audio." -msgstr "Veuillez installez un lecteur audio." +#: src/play_file.c:108 +msgid "Please install an audio player." +msgstr "Please, install package [ cdparanoia ]" -#: src/poche_dir.c:430 +#: src/poche_dir.c:433 msgid "" "Utilisez le glisser / deplacer - Effacer une image avec Ctrl + " "Click" @@ -920,49 +856,41 @@ "Utilisez le glisser / deplacer - Effacer une image avec Ctrl + " "Click" -#: src/poche_save.c:111 -msgid "Nom de fichier absent !!" -msgstr "Nom de fichier absent !!" +#: src/poche_save.c:117 +msgid "File name not found !!" +msgstr "Nombre de archivo no encontrado !!" -#: src/poche_save.c:112 src/poche_web.c:353 src/poche_web.c:375 -msgid "Pour resoudre ce probleme:" +#: src/poche_save.c:118 src/poche_web.c:330 src/poche_web.c:352 +msgid "To solve this problem :" msgstr "Pour resoudre ce probleme:" -#: src/poche_save.c:115 -msgid "Saisissez un nom de fichier sans extention" -msgstr "Saisissez un nom de fichier sans extention" - -#: src/poche_save.c:126 -msgid "Sauvegarde aux formats PDF et PostScript" -msgstr "Sauvegarde aux formats PDF et PostScript" - -#: src/poche_save.c:151 -msgid "Sauvegarde au format PNG" -msgstr "Sauvegarde au format PNG" - -#: src/poche_web.c:352 -msgid "Aucun fichier trouve !" -msgstr "Aucun fichier trouve !" - -#: src/poche_web.c:356 -msgid "Modifiez la chaine de recherche et" -msgstr "Modifiez la chaine de recherche et" - -#: src/poche_web.c:358 src/poche_web.c:380 -msgid "recommencez." -msgstr "recommencez." - -#: src/poche_web.c:374 -msgid "Critere de recherche absent !!" -msgstr "Critere de recherche absent !!" - -#: src/poche_web.c:378 -msgid "Saisissez une chaine de recherche et" -msgstr "Saisissez une chaine de recherche et" - -#: src/poche_web.c:387 -msgid "[Recherche des fichiers images]" -msgstr "[Recherche des fichiers images]" +#: src/poche_save.c:121 +msgid "Enter a file name without extension" +msgstr "Introduzca un nombre de archivo sin extensión" + +#: src/poche_save.c:131 +msgid "Saving to PDF" +msgstr "Guardando en PDF" + +#: src/poche_web.c:329 +msgid "No file found !" +msgstr "Ningún archivo encontrado!" + +#: src/poche_web.c:333 src/poche_web.c:355 +msgid "Modify the search parameters and" +msgstr "Modificar los parámetros de búsqueda y" + +#: src/poche_web.c:335 src/poche_web.c:357 +msgid "start again." +msgstr "empezar de nuevo." + +#: src/poche_web.c:351 +msgid "Search criteria away !!" +msgstr "Criterios de búsqueda de distancia !!" + +#: src/poche_web.c:369 +msgid "[Search images files]" +msgstr "[Buscar archivos de imágenes]" #: src/popup.c:81 src/popup.c:100 msgid " Deselection globale" @@ -1033,145 +961,77 @@ msgid " Selection verticale " msgstr " Selection verticale " -#: src/popup.c:489 -msgid "1 piste" -msgstr "1 piste" - -#: src/popup.c:492 -msgid "2 pistes" -msgstr "2 pistes" - -#: src/popup.c:495 -msgid "4 pistes" -msgstr "4 pistes" - -#: src/popup.c:498 -msgid "6 pistes" -msgstr "6 pistes" - -#: src/popup.c:504 src/popup.c:619 src/popup.c:716 -msgid "Valeur d'origine" -msgstr "Valeur d'origine" - -#: src/popup.c:592 -msgid " 8000 Hertz" -msgstr " 8000 Hertz" - -#: src/popup.c:595 -msgid "22000 Hertz" -msgstr "22000 Hertz" - -#: src/popup.c:598 -msgid "32000 Hertz" -msgstr "32000 Hertz" - -#: src/popup.c:601 -msgid "44056 Hertz" -msgstr "44056 Hertz" - -#: src/popup.c:604 -msgid "44100 Hertz" -msgstr "44100 Hertz" - -#: src/popup.c:607 -msgid "48000 Hertz" -msgstr "48000 Hertz" - -#: src/popup.c:610 -msgid "88200 Hertz" -msgstr "88200 Hertz" - -#: src/popup.c:613 -msgid "96000 Hertz" -msgstr "96000 Hertz" - -#: src/popup.c:698 -msgid " 8 bits" -msgstr " 8 bits" - -#: src/popup.c:701 -msgid "16 bits" -msgstr "16 bits" - -#: src/popup.c:704 -msgid "24 bits" -msgstr "24 bits" - -#: src/popup.c:707 -msgid "32 bits" -msgstr "32 bits" - -#: src/popup.c:710 -msgid "64 bits" -msgstr "64 bits" +#: src/popup.c:504 src/popup.c:619 src/popup.c:715 +msgid "Original value" +msgstr "valor original" #: src/popup.c:765 -msgid "Selecteur suivant" -msgstr "Selecteur suivant" +msgid "Next selector" +msgstr "Índice de lectura" #: src/popup.c:769 -msgid "Selecteur precedant" -msgstr "Selecteur precedant" +msgid "Previous selector" +msgstr "selector Anterior" #: src/popup.c:777 -msgid "Supprimer la plage active" -msgstr "Supprimer la plage active" +msgid "Delete the active range" +msgstr "Eliminar el rango activo" -#: src/popup.c:849 -msgid "Retourner horizontalement" -msgstr "Retourner horizontalement" - -#: src/popup.c:853 -msgid "Retourner verticalement" -msgstr "Retourner verticalement" - -#: src/popup.c:861 -msgid "Image au premier plan" -msgstr "Image au premier plan" +#: src/popup.c:850 +msgid "Flip Horizontal" +msgstr " Selection horizontale" + +#: src/popup.c:854 +msgid "Flip Vertical" +msgstr "voltear vertical" + +#: src/popup.c:862 +msgid "Foreground image" +msgstr "imagen en primer plano" -#: src/popup.c:865 -msgid "Image au dessus" +#: src/popup.c:866 +msgid "Image above" msgstr "Image au dessus" -#: src/popup.c:869 -msgid "Image en dessous" -msgstr "Image en dessous" - -#: src/popup.c:873 -msgid "Image au dernier plan" -msgstr "Image au dernier plan" +#: src/popup.c:870 +msgid "Image below" +msgstr "imagen de abajo" + +#: src/popup.c:874 +msgid "Image to the background" +msgstr "Imagen para el fondo" -#: src/popup.c:881 -msgid "Effacer l'image" +#: src/popup.c:882 +msgid "Clear image" msgstr "Effacer l'image" -#: src/popup.c:918 -msgid "Supprimer l'image de la liste" -msgstr "Supprimer l'image de la liste" - -#: src/popup.c:1036 -msgid "V0 [ meilleure qualite ]" -msgstr "V0 [ meilleure qualite ]" +#: src/popup.c:920 +msgid "Remove image from the list" +msgstr "Eliminar imagen de la lista" -#: src/popup.c:1036 src/popup.c:1039 -msgid "V4 [ defaut ]" +#: src/popup.c:1111 +msgid "V0 [ best quality ]" +msgstr "V0 (meilleure qualite)" + +#: src/popup.c:1111 src/popup.c:1114 +msgid "V4 [ default ]" msgstr "V4 [ defaut ]" -#: src/popup.c:1036 -msgid "V9 [ moins bonne qualite ]" +#: src/popup.c:1111 +msgid "V9 [ Lower quality ]" msgstr "V9 [ moins bonne qualite ]" -#: src/popup.c:1219 -msgid "Qualite -1 [ Moins bonne qualite ]" -msgstr "Qualite -1 [ Moins bonne qualite ]" +#: src/popup.c:1294 +msgid "Quality -1 [ Lower quality ]" +msgstr "Qualite -1 (Moins bonne qualite)" -#: src/popup.c:1220 -msgid "Qualite 3 [ Defaut ]" +#: src/popup.c:1295 +msgid "Quality 3 [ Defaut ]" msgstr "Qualite 3 [ Defaut ]" -#: src/popup.c:1221 -msgid "Qualite 10 [ Meilleure qualite ]" -msgstr "Qualite 10 [ Meilleure qualite ]" +#: src/popup.c:1296 +msgid "Quality 10 [ Best Quality ]" +msgstr "Qualite 10 (Meilleure qualite)" #: src/prg_init.c:85 msgid " Decode ATSC A/52 audio streams" @@ -1262,27 +1122,27 @@ msgstr " WAVPACK Hybrid Lossless Audio Compressor" #: src/prg_init.c:357 -msgid " ... les paquets: deb " +msgid " ... Packets: deb " msgstr " ... les paquets: deb " #: src/prg_init.c:363 -msgid " ... les paquets: tgz " +msgid " ... Packets: tgz " msgstr " ... les paquets: tgz " #: src/prg_init.c:369 -msgid " ... les paquets: fpm " +msgid " ... Packets: fpm " msgstr " ... les paquets: fpm " #: src/prg_init.c:375 -msgid " ... les paquets: rpm " +msgid " ... Packets: rpm " msgstr " ... les paquets: rpm " #: src/prg_init.c:381 -msgid " ... les paquets: pkg.tar.xz " +msgid " ... Packets: pkg.tar.xz " msgstr " ... les paquets: pkg.tar.xz " #: src/prg_init.c:387 -msgid " ... les paquets: ? " +msgid " ... Packets: ? " msgstr " ... les paquets: ? " #: src/prg_init.c:623 @@ -1290,286 +1150,342 @@ msgstr "Status" #: src/prg_init.c:637 -msgid "Paquet" -msgstr "Paquet" +msgid "Packets" +msgstr "Packets" #: src/prg_init.c:652 msgid "Action" msgstr "Action" #: src/scan.c:259 -msgid "PACKAGE dvd+rw-tools ABSENT" +msgid "PACKAGE dvd+rw-tools is missing" msgstr "PACKAGE dvd+rw-tools ABSENT" #: src/scan.c:260 -msgid "Le package 'dvd+rw-tools' est absent" -msgstr "Le package 'dvd+rw-tools' est absent" +msgid "The package 'imagemagick' is missing" +msgstr "El paquete 'imagemagick' falta" #: src/scan.c:262 -msgid "de votre systeme !" +msgid "on your system !" msgstr "de votre systeme !" -#: src/scan.c:264 -msgid "Veuillez l'installer car j'ai besoin de" -msgstr "Veuillez l'installer car j'ai besoin de" +#: src/scan.c:264 src/split.c:438 +msgid "Please install it and resume" +msgstr "Instálelo y reanudar" #: src/scan.c:266 -msgid "'dvd+rw-mediainfo' pour identifier le(s)" +msgid "'Dvd + rw-mediainfo' to identify the" msgstr "'dvd+rw-mediainfo' pour identifier le(s)" #: src/scan.c:268 -msgid "lecteur(s) de cd / dvd." +msgid "reader of cd / dvd." msgstr "lecteur(s) de cd / dvd." -#: src/split.c:279 +#: src/split.c:297 msgid "" -"Menu: Click droit / Ajout plage: Click bouton centre / Zoom: Ctrl+Scroll" +"Menu: right click / Adding track: Click the center button / Zoom: Ctrl" +"+Scroll" msgstr "" "Menu: Click droit / Ajout plage: Click bouton centre / Zoom: Ctrl+Scroll" -#: src/split.c:282 -msgid "Ajout plage: Click bouton centre / Zoom: Ctrl+Scroll" +#: src/split.c:300 +msgid "Adding track: Click the center button / Zoom: Ctrl+Scroll" msgstr "Ajout plage: Click bouton centre / Zoom: Ctrl+Scroll" -#: src/split.c:286 -msgid "" -"Pret pour l'import d'un fichier CUE, WAV, FLAC, OGG, MP3, APE, WMA" +#: src/split.c:304 +msgid "Ready for imports and a CUE file, WAV, FLAC, OGG, MP3, APE, WMA" msgstr "" "Pret pour l'import d'un fichier CUE, WAV, FLAC, OGG, MP3, APE, WMA" -#: src/split.c:356 src/split.c:385 -msgid "Ce fichier appartient a XCFA" -msgstr "Ce fichier appartient a XCFA" +#: src/split.c:378 src/split.c:407 +msgid "This file belongs XCFA" +msgstr "Este archivo corresponde XCFA" -#: src/split.c:357 src/split.c:386 -msgid "Selectionnez un autre fichier." +#: src/split.c:379 src/split.c:408 +msgid "Select another file." msgstr "Selectionnez un autre fichier." -#: src/split.c:365 -msgid "Fichier vide" -msgstr "Fichier vide" - -#: src/split.c:366 -msgid "Le fichier ne contient aucune donnee !!!" -msgstr "Le fichier ne contient aucune donnee !!!" +#: src/split.c:387 +msgid "Empty file" +msgstr "archivo vacío" + +#: src/split.c:388 +msgid "The file contains no data !!!" +msgstr "El archivo no contiene datos !!!" -#: src/split.c:411 -msgid "Sox et Mplayer absents" +#: src/split.c:433 +msgid "Sox and Mplayer not found" msgstr "Sox et Mplayer absents" -#: src/split.c:412 -msgid "Sox et Mplayer sont absents de votre" -msgstr "Sox et Mplayer sont absents de votre" +#: src/split.c:434 +msgid "Sox et Mplayer are not found" +msgstr "Sox et Mplayer absents" -#: src/split.c:414 -msgid "configuration." +#: src/split.c:436 +msgid "in your configuration." msgstr "configuration." -#: src/split.c:416 -msgid "Veuillez les installer pour pouvoir continuer." -msgstr "Veuillez les installer pour pouvoir continuer." - -#: src/split.c:467 -msgid "Erreur de choix de fichier" -msgstr "Erreur de choix de fichier" - -#: src/split.c:468 -msgid "Veuillez selectionner un fichier de type WAV FLAC MP3 OGG APE" -msgstr "Veuillez selectionner un fichier de type WAV FLAC MP3 OGG APE" - -#: src/split.c:505 src/split.c:579 -msgid "Mauvais type de fichier" -msgstr "Mauvais type de fichier" +#: src/split.c:491 +msgid "Error file select" +msgstr "Erreur de lecture !" + +#: src/split.c:492 +msgid "Please select a file type of MP3 WAV OGG FLAC APE" +msgstr "Por favor, seleccione un tipo de archivo de WAV MP3 OGG FLAC APE" + +#: src/split.c:530 src/split.c:602 +msgid "Wrong type of file" +msgstr "Tipo incorrecto de archivo" -#: src/split.c:506 src/split.c:580 +#: src/split.c:531 src/split.c:603 msgid "" -"Les types de fichiers acceptes\n" -"sont: WAV FLAC MP3 OGG APE WMA CUE" +"File types accepted\n" +"sare: WAV FLAC MP3 OGG APE WMA CUE" msgstr "" "Les types de fichiers acceptes\n" "sont: WAV FLAC MP3 OGG APE WMA CUE" -#: src/split_conv.c:313 src/split_conv.c:330 -msgid "Erreur SOX" -msgstr "Erreur SOX" +#: src/split_conv.c:316 src/split_conv.c:333 +msgid "SOX Error" +msgstr "SOX Error" -#: src/split_conv.c:314 src/split_conv.c:331 -msgid "Le programme SOX de votre distribution" +#: src/split_conv.c:317 src/split_conv.c:334 +msgid "The SOX program on your distribution" msgstr "Le programme SOX de votre distribution" -#: src/split_conv.c:316 src/split_conv.c:333 -msgid "a generer une erreur pendant la conversion." +#: src/split_conv.c:319 src/split_conv.c:336 +msgid "has generated an error during conversion." msgstr "a generer une erreur pendant la conversion." #: src/split_cue.c:116 -msgid "Erreur de lecture !" -msgstr "Erreur de lecture !" +msgid "Misreading !" +msgstr "Leer mal!" -#: src/split_cue.c:177 src/split_cue.c:187 src/split_cue.c:197 -msgid "Erreur" -msgstr "Erreur" +#: src/split_cue.c:177 src/split_cue.c:187 src/split_cue.c:196 +msgid "Error" +msgstr "Error" #: src/split_cue.c:178 -msgid "Aucun fichier de musique associe au cue-file !" -msgstr "No hay archivo de música asociado con cue-file !" +msgid "No music file associated with the cue-file" +msgstr "No archivo de música asociada con el archivo cue" #: src/split_cue.c:188 -msgid "Pas de fichier WAV dans le cue-file !" -msgstr "No WAV en el cue-file !" +msgid "No WAV file in the cue-file" +msgstr "No hay archivo WAV en el archivo cue" -#: src/split_cue.c:198 -msgid "Aucun fichier de musique associe dans le dossier" -msgstr "No hay archivos de música en la carpeta asociada" +#: src/split_cue.c:197 +msgid "No music file in the folder associated" +msgstr "No archivo de música en la carpeta asociada" -#: src/split_cue.c:200 -msgid "du cue-file" +#: src/split_cue.c:199 +msgid "of cue-file" msgstr "la bola de archivo" -#: src/split_cue.c:294 -msgid "Erreur de donnees dans le fichier CUE" -msgstr "Errores de datos en el archivo CUE" +#: src/split_cue.c:293 +msgid "Data errors in the CUE file" +msgstr "Los errores de datos en el archivo CUE" -#: src/split_cue.c:295 -msgid "La solution est d'importer le fichier de" +#: src/split_cue.c:294 +msgid "The solution is to import the file" msgstr "La solución es importar el archivo" -#: src/split_cue.c:297 -msgid "musique qui sera reconnu et pre-decoupe" -msgstr "de música que será reconocido y pre-corte" - -#: src/split_cue.c:299 -msgid "dans le module Split." -msgstr "en el Split." - -#: src/split_cue.c:301 -msgid "Il ne restera qu'a ajuster les plages pour" -msgstr "Simplemente se ajustará a las playas" +#: src/split_cue.c:296 +msgid "music that will be recognized and pre-cutting" +msgstr "música que será reconocido y precorte" + +#: src/split_cue.c:298 +msgid "in the split module." +msgstr "en el módulo de división." + +#: src/split_cue.c:300 +msgid "We will just adjust to the beaches" +msgstr "No hacemos más que ajustarse a las playas" -#: src/split_cue.c:303 -msgid "generer un nouveau cue-file ou des decoupes" +#: src/split_cue.c:302 +msgid "generate a new cue-file or cuts" msgstr "generar una nueva señal de archivos o cortes" -#: src/split_cue.c:305 -msgid "correspondant aux plages." +#: src/split_cue.c:304 +msgid "corresponding to the beaches." msgstr "correspondientes a las playas." #: src/split_selector.c:136 -msgid "Suppression pendant la lecture impossible" -msgstr "Eliminar no durante la reproducción" +msgid "Deleting not during playback" +msgstr "Eliminación no durante la reproducción" -#: src/split_selector.c:229 src/split_selector.c:235 src/split_selector.c:289 -#: src/split_selector.c:295 src/split_selector.c:352 src/split_selector.c:359 -#: src/split_selector.c:429 src/split_selector.c:435 -msgid "Temps inferieur a 5 secondes entre marqueur et curseur !" +#: src/split_selector.c:231 src/split_selector.c:237 src/split_selector.c:291 +#: src/split_selector.c:297 src/split_selector.c:354 src/split_selector.c:361 +#: src/split_selector.c:431 src/split_selector.c:437 +msgid "Time of less than 5 seconds between marker and cursor !" msgstr "Tiempo inferior a 5 segundos entre el marcador y el cursor !" -#: src/translate.c:51 -msgid "Fichier" -msgstr "Fichier" +#: src/web.c:173 src/web.c:234 +msgid "No web browser" +msgstr "No navegador web" + +#: src/web.c:174 src/web.c:235 +msgid "No Web access: no web browser" +msgstr "No hay acceso a Internet: no hay ningún navegador web" + +#: src/web.c:176 src/web.c:237 +msgid "found in your system." +msgstr "que se encuentra en su sistema." + +#: src/web.c:178 src/web.c:239 +msgid "Please install a web browser." +msgstr "Please, install package [ icedax ]" + +#: src/web.c:188 +msgid "You need to enable web access" +msgstr "Es necesario activar el acceso web" + +#: src/web.c:249 +msgid "Application is missing." +msgstr "La aplicación no se encuentra." + +#: src/web.c:250 +msgid "Please install : " +msgstr "Por favor, instale : " + +#: src/win_about.c:124 +msgid " Xcfa on the web" +msgstr " Xcfa web" -#: src/translate.c:52 -msgid "Quitter" +#: src/win_about.c:174 +msgid "" +"\n" +"Au tout debut:\n" +"\n" +"Serres Patrick, Hamann Regis, Fabien Gregis, @Dzef, @alteo_gange, \n" +"@Leonux, @zarer, @Shankarius, @bishop, @Ludo, @Patachonf,\n" +"... ;-)\n" +"\n" +"" +msgstr "" +"\n" +"En el comienzo:\n" +"\n" +"Serres Patrick, Hamann Regis, Fabien Gregis, @Dzef, @alteo_gange, \n" +"@Leonux, @zarer, @Shankarius, @bishop, @Ludo, @Patachonf,\n" +"... ;-)\n" +"\n" +"" + +#: src/win_scan.c:170 +msgid "Waiting ..." +msgstr "Espera ..." + +#: glade/xcfa.glade:66 glade/xcfa.glade:2533 +msgid "File" +msgstr "File" + +#: glade/xcfa.glade:75 +msgid "Quit" msgstr "Dejar" -#: src/translate.c:53 -msgid "Outils" -msgstr "Instrumentos" +#: glade/xcfa.glade:89 +msgid "Tools" +msgstr "Tools" -#: src/translate.c:54 -msgid "Visibilite des champs" +#: glade/xcfa.glade:99 +msgid "Visibility fields" msgstr "Campos de la visibilidad" -#: src/translate.c:55 -msgid "Aide" -msgstr "Ayuda" - -#: src/translate.c:56 -msgid "A propos" -msgstr "A propos" +#: glade/xcfa.glade:112 +msgid "Help" +msgstr "Help" + +#: glade/xcfa.glade:121 +msgid "About" +msgstr "About" + +#: glade/xcfa.glade:224 +msgid "Read" +msgstr "Read" -#: src/translate.c:57 src/translate.c:67 -msgid "Lecture" -msgstr "Lecture" - -#: src/translate.c:58 -msgid " Choix du peripherique / Lecture du DVD " +#: glade/xcfa.glade:252 +msgid " Choosing the peripheral / DVD playback " msgstr "" " Seleccionar el dispositivo de comunicación / Reproducción de DV " -#: src/translate.c:59 src/translate.c:69 src/translate.c:125 -msgid " Destination des fichiers " -msgstr " Destino de archivo " +#: glade/xcfa.glade:303 glade/xcfa.glade:921 +msgid " File Destination " +msgstr " Instalación " -#: src/translate.c:60 src/translate.c:70 +#: glade/xcfa.glade:359 glade/xcfa.glade:1009 msgid " Eject " msgstr " Eject " -#: src/translate.c:61 src/translate.c:92 -msgid " Normaliser " +#: glade/xcfa.glade:434 +msgid " Normalize " msgstr " Normaliser Vers 2CH: Sub / Ambiance " msgstr " Vers 2CH: Sub / Ambiance " -#: src/translate.c:65 src/translate.c:98 -msgid "Extraire" -msgstr "Extraer" +#: glade/xcfa.glade:705 +msgid "Extraction" +msgstr "XCFA: Extracción de CD" -#: src/translate.c:66 +#: glade/xcfa.glade:756 msgid " DVD " msgstr " DVD " -#: src/translate.c:68 -msgid " Choix du peripherique / Lecture du CD " +#: glade/xcfa.glade:842 +msgid "Lecture" +msgstr "Lecture" + +#: glade/xcfa.glade:870 +msgid " Choosing the peripheral / CD playback " msgstr "" " Seleccionar el dispositivo de comunicación / Reproducción de CD " -#: src/translate.c:71 -msgid "Titre:" +#: glade/xcfa.glade:1065 +msgid "Title:" msgstr "Titre:" -#: src/translate.c:72 +#: glade/xcfa.glade:1077 msgid "Album:" msgstr "Album:" -#: src/translate.c:73 -msgid "Artiste:" +#: glade/xcfa.glade:1089 +msgid "Artist:" msgstr "Artiste:" -#: src/translate.c:74 -msgid " Annee:" -msgstr " Annee:" +#: glade/xcfa.glade:1101 +msgid "Comment:" +msgstr "Comentario:" + +#: glade/xcfa.glade:1113 +msgid " Year:" +msgstr " Genre:" -#: src/translate.c:75 +#: glade/xcfa.glade:1125 msgid " Genre:" msgstr " Genre:" -#: src/translate.c:76 -msgid " Piste:" -msgstr " Pista:" +#: glade/xcfa.glade:1137 +msgid " Track:" +msgstr "Titre:" -#: src/translate.c:77 +#: glade/xcfa.glade:1149 msgid " *.m3u et xspf: " msgstr " *.m3u et xspf: " -#: src/translate.c:78 -msgid "Commentaire:" -msgstr "Comentario:" - -#: src/translate.c:79 -msgid " Modification des tags Freedb " +#: glade/xcfa.glade:1287 +msgid "Editing tags Freedb" msgstr " Cambio de etiquetas de freedb " -#: src/translate.c:80 +#: glade/xcfa.glade:1302 msgid "" "%a [ %a=\"Artist\" ]\n" "\n" @@ -1595,7 +1511,7 @@ "le ou les caracteres devant etre conserves doivent etre precedes par le " "caractere %" -#: src/translate.c:81 +#: glade/xcfa.glade:1312 msgid "" "%a - artiste %b - titre " "de l'album %c - numero de la piste\n" @@ -1615,403 +1531,413 @@ "%u - remplacement de caracteres: %u(AB=C) %u( =_) %Tl - Tetsumaki lower" -#: src/translate.c:82 -msgid " Arrangement des titres du CD " +#: glade/xcfa.glade:1346 +msgid " Arrangement of CD titles" msgstr " Disposición de las pistas del CD " -#: src/translate.c:83 -msgid "Creation d'un fichier unique au format: " +#: glade/xcfa.glade:1382 +msgid "Creation of a single file format: " msgstr "Creación de un solo formato de archivo: " -#: src/translate.c:84 -msgid " et dont le nom sera: " -msgstr " y cuyo nombre se: " +#: glade/xcfa.glade:1430 +msgid " and whose name will be: " +msgstr " y cuyo nombre será:" -#: src/translate.c:85 -msgid "Ecriture du fichier cue" +#: glade/xcfa.glade:1461 +msgid "Writing the cue file" msgstr "Escribir el archivo cue" -#: src/translate.c:86 -msgid " Au moins deux selections colonne Wav " +#: glade/xcfa.glade:1484 +msgid " At least two selections column Wav " msgstr " Por lo menos dos selecciones de columna Wav " -#: src/translate.c:87 +#: glade/xcfa.glade:1514 msgid "" -"Creation d'un fichier cue\n" -"unique depuis une lecture\n" -"du cd audio" +"\n" +"Creating a cue file from a single\n" +"reading audio cd\n" msgstr "" -"Creación de un archivo CUE\n" -"a partir de una sola lectura\n" -"cd de audio" +"\n" +"Creación de un archivo de ejemplo de un solo \n" +"lectura audio cd \n" -#: src/translate.c:88 -msgid "Creation fichier cue uniquement" -msgstr "Cue de creación de archivos sólo" +#: glade/xcfa.glade:1562 +msgid "File Creation cue only" +msgstr "Sólo archivo Creación cue" -#: src/translate.c:89 +#: glade/xcfa.glade:1597 msgid " Creation Cue cd " msgstr " Creación Cue cd " -#: src/translate.c:90 -msgid " Creation d'un fichier unique " -msgstr " Creación de un único archivo " +#: glade/xcfa.glade:1625 +msgid "  Creation of a single file" +msgstr " La creación de un único archivo" -#: src/translate.c:91 -msgid "Gestion des tags, titres et fichiers cue" +#: glade/xcfa.glade:1638 +msgid "Management of tags, titles and cue files" msgstr "Etiquetas de dirección, títulos, y los archivos cue" -#: src/translate.c:93 +#: glade/xcfa.glade:1688 +msgid " normalize " +msgstr " Normaliser DiscId" msgstr "DiscId" -#: src/translate.c:99 +#: glade/xcfa.glade:1946 +msgid "Extract" +msgstr "XCFA: Extracción de CD" + +#: glade/xcfa.glade:2053 msgid " CD " msgstr " CD " -#: src/translate.c:100 src/translate.c:124 -msgid " Importer " +#: glade/xcfa.glade:2135 glade/xcfa.glade:3271 +msgid " Import " msgstr " Importación " -#: src/translate.c:101 -msgid " Destination des conversions " +#: glade/xcfa.glade:2190 +msgid " Destination conversions " msgstr " Destination des conversions " -#: src/translate.c:102 -msgid " Nettoyer " -msgstr " Limpio " +#: glade/xcfa.glade:2266 +msgid " Clean up " +msgstr " Creación Cue cd " -#: src/translate.c:103 src/translate.c:107 +#: glade/xcfa.glade:2389 msgid "Appliquer les modifications" msgstr "Aplicar los cambios" -#: src/translate.c:104 -msgid " Normalise: " +#: glade/xcfa.glade:2444 +msgid " Normalize: " msgstr " Normalise: " -#: src/translate.c:105 -msgid " Choix niveau dBFS: " -msgstr " Choix niveau dBFS: " - -#: src/translate.c:106 src/translate.c:123 -msgid " Fichiers " -msgstr " Fichiers " +#: glade/xcfa.glade:2477 +msgid " Level selection dBFS: " +msgstr " Level selection dBFS: " + +#: glade/xcfa.glade:2615 +msgid "Apply changes" +msgstr "aplicar cambios" -#: src/translate.c:108 +#: glade/xcfa.glade:2651 msgid " Wav " msgstr " Wav " -#: src/translate.c:109 src/translate.c:121 -msgid "Appliquer" -msgstr "Aplicar" - -#: src/translate.c:110 -msgid "Effacer" -msgstr "Borrar" +#: glade/xcfa.glade:2735 +msgid "Apply" +msgstr "Apply" + +#: glade/xcfa.glade:2789 +msgid "Delete" +msgstr "Delete" -#: src/translate.c:111 +#: glade/xcfa.glade:2826 msgid " Mp3-Ogg " msgstr " Mp3-Ogg " -#: src/translate.c:112 -msgid "Titre:" -msgstr "Titre:" +#: glade/xcfa.glade:2875 +msgid "Title:" +msgstr "Title:" -#: src/translate.c:113 +#: glade/xcfa.glade:2886 msgid "Album:" msgstr "Album:" -#: src/translate.c:114 -msgid "Artiste:" +#: glade/xcfa.glade:2897 +msgid "Artist:" msgstr "Artiste:" -#: src/translate.c:115 -msgid "Commentaire:" +#: glade/xcfa.glade:2908 +msgid "Comment:" msgstr "Commentaire:" -#: src/translate.c:116 -msgid " Annee:" -msgstr " Annee:" +#: glade/xcfa.glade:2919 +msgid " Year:" +msgstr " Year:" -#: src/translate.c:117 +#: glade/xcfa.glade:2930 msgid " Genre:" msgstr " Genre:" -#: src/translate.c:118 -msgid " Piste:" -msgstr " Piste:" +#: glade/xcfa.glade:2941 +msgid " Track:" +msgstr " Pista:" -#: src/translate.c:119 +#: glade/xcfa.glade:2952 msgid " Modif.:" msgstr " Modif.:" -#: src/translate.c:120 +#: glade/xcfa.glade:3078 msgid "0" msgstr "0" -#: src/translate.c:122 src/translate.c:309 +#: glade/xcfa.glade:3102 +msgid "Apply " +msgstr "Aplicar" + +#: glade/xcfa.glade:3160 glade/xcfa.glade:10210 msgid " Tags " msgstr " Tags " -#: src/translate.c:126 +#: glade/xcfa.glade:3190 +msgid " Files " +msgstr "All Files (*.*)" + +#: glade/xcfa.glade:3322 +msgid "   File Destination " +msgstr " Destino de archivo " + +#: glade/xcfa.glade:3494 msgid "Lecture de 5 secondes apres le marqueur de debut" msgstr "5 segundos después de la lectura el marcador de inicio" -#: src/translate.c:127 +#: glade/xcfa.glade:3546 msgid "Index de debut" msgstr "Inicio índice" -#: src/translate.c:128 src/translate.c:135 src/translate.c:138 +#: glade/xcfa.glade:3547 glade/xcfa.glade:3813 glade/xcfa.glade:3874 msgid "00h00m00s" msgstr "00h00m00s" -#: src/translate.c:129 +#: glade/xcfa.glade:3600 msgid "lecture" msgstr "lecture" -#: src/translate.c:130 +#: glade/xcfa.glade:3653 msgid "Pause" msgstr "Pause" -#: src/translate.c:131 +#: glade/xcfa.glade:3712 msgid "Index de lecture" msgstr "Índice de lectura" -#: src/translate.c:132 src/translate.c:171 +#: glade/xcfa.glade:3713 glade/xcfa.glade:4767 msgid "label" msgstr "label" -#: src/translate.c:133 +#: glade/xcfa.glade:3760 msgid "Lecture de 5 secondes avant le marqueur de fin" msgstr "La lectura de 5 segundos antes el marcador final" -#: src/translate.c:134 +#: glade/xcfa.glade:3812 msgid "Index de fin" msgstr "Índice de final" -#: src/translate.c:136 +#: glade/xcfa.glade:3860 msgid "Plage" msgstr "Plage" -#: src/translate.c:137 +#: glade/xcfa.glade:3873 msgid "Duree de la plage active" msgstr "Duración de la playa de activos" -#: src/translate.c:139 +#: glade/xcfa.glade:3955 msgid "Suprimer tous les marqueurs pour les remplacer par un marqueur unique" msgstr "Limpie todos los marcadores y sustituirlos por un único marcador" -#: src/translate.c:140 +#: glade/xcfa.glade:4044 msgid "Le fichier CUE sera enregistre vers 'Destination des fichiers'." msgstr "Archivos CUE se pueden guardar en archivo 'Destino'." -#: src/translate.c:141 -msgid "Production fichier Cue" +#: glade/xcfa.glade:4073 +msgid "Production Cue file" msgstr "Producción de ficheros de Cue" -#: src/translate.c:142 +#: glade/xcfa.glade:4098 msgid "Le resultat du Split sera dirige vers 'Destination des fichiers'." msgstr "El resultado de la división será encabezada 'Destino de archivo'." -#: src/translate.c:143 +#: glade/xcfa.glade:4127 msgid "Split" msgstr "Split" -#: src/translate.c:144 +#: glade/xcfa.glade:4188 msgid " Split " msgstr " Split " -#: src/translate.c:145 +#: glade/xcfa.glade:4253 msgid "Importation du titre du CD." msgstr "Importar el título del CD." -#: src/translate.c:146 -msgid "Titre CD" +#: glade/xcfa.glade:4276 +msgid "Title CD" msgstr "CD Título" -#: src/translate.c:147 +#: glade/xcfa.glade:4296 msgid "Choix d'une nouvelle police." msgstr "La elección de un nuevo tipo de letra." -#: src/translate.c:148 +#: glade/xcfa.glade:4318 msgid "Texte gras." msgstr "El texto en negrita." -#: src/translate.c:149 +#: glade/xcfa.glade:4340 msgid "Texte italique." msgstr "El texto en cursiva." -#: src/translate.c:150 -msgid "" -"Apres une lecture de CD et un ajout d'etiquette, ce menu permet la mise en " -"forme des titres, auteurs ..." -msgstr "" -"Después de leer un CD y una etiqueta, este menú permite el formato de " -"títulos, autores" - -#: src/translate.c:151 +#: glade/xcfa.glade:4375 msgid "Ajouter du texte editable." msgstr "Añadir texto editable." -#: src/translate.c:152 -msgid "Texte" +#: glade/xcfa.glade:4430 +msgid "Text" msgstr "Texto" -#: src/translate.c:153 +#: glade/xcfa.glade:4462 msgid "Saisissez ici un critere de recherche d'images." msgstr "Escriba aquí una búsqueda de imágenes." -#: src/translate.c:154 +#: glade/xcfa.glade:4484 msgid "Importation des images depuis le Web." msgstr "Importación de imágenes desde la Web." -#: src/translate.c:155 -msgid "Import images web" +#: glade/xcfa.glade:4509 +msgid "Import web images " msgstr "Importación de imágenes web" -#: src/translate.c:156 +#: glade/xcfa.glade:4578 msgid "Supprimer l'image en selection" msgstr "Eliminar la selección de imágenes" -#: src/translate.c:157 +#: glade/xcfa.glade:4600 msgid "AJouter de nouvelles images." msgstr "Añadir nuevas imágenes." -#: src/translate.c:158 +#: glade/xcfa.glade:4606 msgid "Ouvre un fichier" msgstr "Abrir un archivo" -#: src/translate.c:159 +#: glade/xcfa.glade:4623 msgid "Enregistrer la page au format png." msgstr "Guardar página png." -#: src/translate.c:160 +#: glade/xcfa.glade:4629 msgid "Sauvegarde le fichier" msgstr "Guardar el archivo" -#: src/translate.c:161 +#: glade/xcfa.glade:4646 msgid "Diminution de l'echelle." msgstr "Reducción de la escala." -#: src/translate.c:162 +#: glade/xcfa.glade:4652 msgid "Reduit l'agrandissement" msgstr "Reducción de la expansión" -#: src/translate.c:163 +#: glade/xcfa.glade:4669 msgid "Echelle a 100%." msgstr "Escala de 100%." -#: src/translate.c:164 +#: glade/xcfa.glade:4675 msgid "Remet l'echelle a 100%" msgstr "Da la escala en 100%" -#: src/translate.c:165 +#: glade/xcfa.glade:4692 msgid "Augmentation de l'echelle." msgstr "Aumento de la escala." -#: src/translate.c:166 +#: glade/xcfa.glade:4698 msgid "Augmente l'agrandissement" msgstr "Creciente expansión" -#: src/translate.c:167 +#: glade/xcfa.glade:4715 msgid "Echelle compatible avec la taille de la fenetre." msgstr "Escala compatible con el tamaño de la ventana." -#: src/translate.c:168 +#: glade/xcfa.glade:4721 msgid "Adapte l'echelle a la taille de la fenetre" msgstr "Ajusta la escala para el tamaño de la ventana" -#: src/translate.c:169 +#: glade/xcfa.glade:4738 msgid "Emplacement de sauvegarde des fichiers." msgstr "Ubicación de los archivos de respaldo." -#: src/translate.c:170 +#: glade/xcfa.glade:4752 msgid "Nom (sans extention) du fichier a sauvegarder." msgstr "Nombre (sin extensión) del archivo se guarda." -#: src/translate.c:172 +#: glade/xcfa.glade:4815 msgid " Pochette " msgstr " Pochette " -#: src/translate.c:173 +#: glade/xcfa.glade:4861 msgid "Nice" msgstr "Nice" -#: src/translate.c:174 -msgid " Priorite systeme " +#: glade/xcfa.glade:4896 +msgid " Priority system " msgstr " Priorite systeme " -#: src/translate.c:175 +#: glade/xcfa.glade:4935 msgid "" -"Indiquez ici le dossier sur votre systeme qui servira de lieu\n" -"de stockage provisoire pendant les differentes conversions.\n" +"\n" +"Enter here the folder on your system that will serve as\n" +"temporary storage for the different conversions.\n" msgstr "" +"\n" "Intro por carpeta del sistema que servirá como\n" " El almacenamiento temporal de los diferentes conversiones.\n" -#: src/translate.c:176 -msgid " Dossier provisoire des conversions " +#: glade/xcfa.glade:4971 +msgid " Provisional file conversions " msgstr " Conversiones de archivo provisional " -#: src/translate.c:177 +#: glade/xcfa.glade:5017 msgid "button" msgstr "button" -#: src/translate.c:178 -msgid " Jouer une musique en fin de tache " -msgstr " Reproducción de música al final de la tarea " +#: glade/xcfa.glade:5038 +msgid " Playing a job end music " +msgstr " Reproducción de una música finales trabajo " -#: src/translate.c:179 +#: glade/xcfa.glade:5058 msgid " General " msgstr " General " -#: src/translate.c:180 +#: glade/xcfa.glade:5100 msgid "cdparanoia" msgstr "cdparanoia" -#: src/translate.c:181 +#: glade/xcfa.glade:5120 msgid "cdparanoia mode expert" msgstr "cdparanoia mode expert" -#: src/translate.c:182 +#: glade/xcfa.glade:5140 msgid "cdparanoia mode expert multi passes" msgstr "expertos cdparanoia modo multi pase" -#: src/translate.c:183 +#: glade/xcfa.glade:5168 msgid "cdda2wav / icedax" msgstr "cdda2wav / icedax" -#: src/translate.c:184 +#: glade/xcfa.glade:5194 msgid " Extraction cd-audio avec: " msgstr " Extracción CD-Audio: HomePage" msgstr "HomePage" -#: src/translate.c:186 +#: glade/xcfa.glade:5323 msgid "ManPage " msgstr "Página de manual " -#: src/translate.c:187 +#: glade/xcfa.glade:5352 msgid " Web cdparanoia " msgstr " Web cdparanoia " -#: src/translate.c:188 +#: glade/xcfa.glade:5414 msgid "" "Le fichier LogExpertMode.txt sera cree dans le dossier des " "extractions" @@ -2019,22 +1945,21 @@ "LogExpertMode.txt archivo se creará en la carpeta de extracciones" -#: src/translate.c:189 -msgid "" -"Generation d'un rapport pour: cdparanoia mode expert multi passes" +#: glade/xcfa.glade:5431 +msgid "Generation of a report for: cdparanoia mode expert multi passes" msgstr "" "Generación de un informe para: el modo de cdparanoia expertos multi pase" -#: src/translate.c:190 +#: glade/xcfa.glade:5467 msgid "" -"%a - artiste %b - titre " +"%a - artist %b - titre " "de l'album %c - numero de la piste\n" "%d - titre de la chanson %e - " -"annee %g - genre\n" +"year %g - genre\n" "%na - no accent %Tl " "- Tetsumaki lower\n" -"%u - remplacement de caracteres: %u(AB=C) %u( =_)" +"%u - replacement characters: %u(AB=C) %u( =_)" msgstr "" "%a - artiste %b - titre " "de l'album %c - numero de la piste\n" @@ -2044,402 +1969,388 @@ "- Tetsumaki lower\n" "%u - sustitución de caracteres: %u(AB=C) %u( =_)" -#: src/translate.c:191 +#: glade/xcfa.glade:5536 msgid " Dossier de stockage " msgstr " Archivo de almacenamiento" -#: src/translate.c:192 +#: glade/xcfa.glade:5567 msgid " CD " msgstr " CD " -#: src/translate.c:193 +#: glade/xcfa.glade:5615 msgid "ABR / CBR / VBR / VBR-NEW" msgstr "ABR / CBR / VBR / VBR-NEW" -#: src/translate.c:194 +#: glade/xcfa.glade:5660 glade/xcfa.glade:6295 msgid "Debit" msgstr "Débito" -#: src/translate.c:195 +#: glade/xcfa.glade:5705 glade/xcfa.glade:6317 msgid "Mode" msgstr "Mode" -#: src/translate.c:196 +#: glade/xcfa.glade:5747 msgid " Lame (fichier mp3): " msgstr " Lame (fichier mp3): " -#: src/translate.c:197 src/translate.c:213 src/translate.c:225 -#: src/translate.c:238 src/translate.c:255 src/translate.c:266 -#: src/translate.c:280 src/translate.c:294 +#: glade/xcfa.glade:5827 glade/xcfa.glade:6466 glade/xcfa.glade:6941 +#: glade/xcfa.glade:7469 glade/xcfa.glade:8200 glade/xcfa.glade:8659 +#: glade/xcfa.glade:9192 glade/xcfa.glade:9753 msgid "Par defaut" msgstr "Defecto" -#: src/translate.c:198 +#: glade/xcfa.glade:5848 msgid " Options LAME " msgstr " Options LAME " -#: src/translate.c:199 src/translate.c:227 src/translate.c:268 +#: glade/xcfa.glade:5909 glade/xcfa.glade:7023 glade/xcfa.glade:8741 msgid "Site officiel" msgstr "Sitio web oficial" -#: src/translate.c:200 +#: glade/xcfa.glade:5964 msgid "Wiki mp3 " msgstr "Wiki mp3 " -#: src/translate.c:201 +#: glade/xcfa.glade:6020 msgid "Wiki " msgstr "Wiki " -#: src/translate.c:202 +#: glade/xcfa.glade:6076 msgid "ManPage " msgstr "Página de manual " -#: src/translate.c:203 +#: glade/xcfa.glade:6105 msgid " Web Lame " msgstr " Web Lame" -#: src/translate.c:204 src/translate.c:218 src/translate.c:231 -#: src/translate.c:242 src/translate.c:260 src/translate.c:271 -#: src/translate.c:286 +#: glade/xcfa.glade:6181 glade/xcfa.glade:6709 glade/xcfa.glade:7238 +#: glade/xcfa.glade:7644 glade/xcfa.glade:8442 glade/xcfa.glade:8901 +#: glade/xcfa.glade:9491 msgid "[" msgstr "[" -#: src/translate.c:205 src/translate.c:219 src/translate.c:232 -#: src/translate.c:243 src/translate.c:261 src/translate.c:272 -#: src/translate.c:287 +#: glade/xcfa.glade:6194 glade/xcfa.glade:6722 glade/xcfa.glade:7251 +#: glade/xcfa.glade:7657 glade/xcfa.glade:8455 glade/xcfa.glade:8914 +#: glade/xcfa.glade:9504 msgid "string option interne" msgstr "string option interne" -#: src/translate.c:206 src/translate.c:220 src/translate.c:233 -#: src/translate.c:244 src/translate.c:262 src/translate.c:273 -#: src/translate.c:288 +#: glade/xcfa.glade:6209 glade/xcfa.glade:6737 glade/xcfa.glade:7266 +#: glade/xcfa.glade:7672 glade/xcfa.glade:8470 glade/xcfa.glade:8929 +#: glade/xcfa.glade:9519 msgid "]" msgstr "]" -#: src/translate.c:207 -msgid "" -" Options experts, definies par l'utilisateur - lame (wav -> mp3) " +#: glade/xcfa.glade:6234 +msgid " Experts options defined by the user- lame (wav -> mp3) " msgstr "" " Opciones de expertos, según lo definido por el usuario - lame (wav -> " "mp3) " -#: src/translate.c:208 +#: glade/xcfa.glade:6254 msgid " Mp3 " msgstr " Mp3 " -#: src/translate.c:209 -msgid " Mode" -msgstr " Mode" - -#: src/translate.c:210 -msgid " Mode flux (streaming)" -msgstr " Mode flux (streaming)" - -#: src/translate.c:211 -msgid " Debit" -msgstr " Débito" +#: glade/xcfa.glade:6306 +msgid "Mode flux (streaming)" +msgstr "Mode flux (streaming)" -#: src/translate.c:212 +#: glade/xcfa.glade:6386 msgid " Oggenc (fichier ogg): " msgstr " Oggenc (fichier ogg): " -#: src/translate.c:214 +#: glade/xcfa.glade:6487 msgid " Options OGGENC " msgstr " Options OGGENC " -#: src/translate.c:215 +#: glade/xcfa.glade:6548 msgid "Wiki " msgstr "Wiki " -#: src/translate.c:216 src/translate.c:258 src/translate.c:284 -#: src/translate.c:298 +#: glade/xcfa.glade:6604 glade/xcfa.glade:8337 glade/xcfa.glade:9386 +#: glade/xcfa.glade:9947 msgid "ManPage" msgstr "Página de manual" -#: src/translate.c:217 +#: glade/xcfa.glade:6633 msgid " Web Oggenc " msgstr " Web Oggenc " -#: src/translate.c:221 -msgid "" -" Options experts, definies par l'utilisateur - oggenc (wav -> ogg) " +#: glade/xcfa.glade:6762 +msgid " Experts options defined by the user - oggenc (wav -> ogg) " msgstr "" " Opciones de expertos, según lo definido por el usuario - oggenc (wav -> " "ogg) " -#: src/translate.c:222 +#: glade/xcfa.glade:6782 msgid " Oggenc " msgstr " Oggenc " -#: src/translate.c:223 +#: glade/xcfa.glade:6824 msgid "Taux de compression" msgstr "Relación de compresión" -#: src/translate.c:224 +#: glade/xcfa.glade:6861 msgid " Flac (fichier flac): " msgstr " Flac (fichier flac): " -#: src/translate.c:226 +#: glade/xcfa.glade:6962 msgid " Options FLAC " msgstr " Options FLAC " -#: src/translate.c:228 src/translate.c:269 +#: glade/xcfa.glade:7078 glade/xcfa.glade:8796 msgid "Framasoft " msgstr "Framasoft " -#: src/translate.c:229 +#: glade/xcfa.glade:7133 msgid "ManPage " msgstr "Página de manual " -#: src/translate.c:230 +#: glade/xcfa.glade:7162 msgid " Web Flac " msgstr " Web Flac " -#: src/translate.c:234 -msgid "" -" Options experts, definies par l'utilisateur - flac (wav -> flac) " +#: glade/xcfa.glade:7291 +msgid " Experts options defined by the user- flac (wav -> flac) " msgstr "" " Opciones de expertos, según lo definido por el usuario - flac (wav -> " "flac) " -#: src/translate.c:235 +#: glade/xcfa.glade:7311 msgid " Flac " msgstr " Flac " -#: src/translate.c:236 +#: glade/xcfa.glade:7353 msgid " Qualite" msgstr " Qalidad" -#: src/translate.c:237 +#: glade/xcfa.glade:7389 msgid " Mac (fichier ape): " msgstr " Mac (fichier ape): " -#: src/translate.c:239 +#: glade/xcfa.glade:7490 msgid " Options MAC " msgstr " Options MAC " -#: src/translate.c:240 +#: glade/xcfa.glade:7546 msgid "Wiki" msgstr "Wiki" -#: src/translate.c:241 +#: glade/xcfa.glade:7568 msgid " Web Mac " msgstr " Web Mac " -#: src/translate.c:245 -msgid " Options experts, definies par l'utilisateur - mac (wav -> ape) " +#: glade/xcfa.glade:7697 +msgid " Experts options defined by the user - mac (wav -> ape) " msgstr "" " Opciones de expertos, según lo definido por el usuario - mac (wav -> " "ape) " -#: src/translate.c:246 +#: glade/xcfa.glade:7717 msgid " Mac " msgstr " Mac " -#: src/translate.c:247 +#: glade/xcfa.glade:7765 msgid "Compression" msgstr "Compresión" -#: src/translate.c:248 +#: glade/xcfa.glade:7817 msgid "Son" msgstr "Son" -#: src/translate.c:249 +#: glade/xcfa.glade:7869 msgid "Mode hybride" msgstr "Mode hybride" -#: src/translate.c:250 +#: glade/xcfa.glade:7921 msgid "Fichier de correction" msgstr "Archivo de corrección" -#: src/translate.c:251 +#: glade/xcfa.glade:7973 msgid "Compression maximum" msgstr "Compresión máxima" -#: src/translate.c:252 +#: glade/xcfa.glade:8025 msgid "Signature MD5" msgstr "MD5 firma" -#: src/translate.c:253 +#: glade/xcfa.glade:8077 msgid "Extra encode processing" msgstr "Extra encode processing" -#: src/translate.c:254 +#: glade/xcfa.glade:8120 msgid " WavPack (fichier wv): " msgstr " WavPack (fichier wv): " -#: src/translate.c:256 +#: glade/xcfa.glade:8221 msgid " Options WAVPACK " msgstr " Options WAVPACK " -#: src/translate.c:257 +#: glade/xcfa.glade:8282 msgid "Wiki " msgstr "Wiki " -#: src/translate.c:259 +#: glade/xcfa.glade:8366 msgid " Web Wavpack " msgstr " Web Wavpack" -#: src/translate.c:263 -msgid "" -" Options experts, definies par l'utilisateur - wavpack (wav -> wv) " +#: glade/xcfa.glade:8495 +msgid " Experts options defined by the user - wavpack (wav -> wv) " msgstr "" " Opciones de expertos, según lo definido por el usuario - wavpack (wav -> " "wv) " -#: src/translate.c:264 +#: glade/xcfa.glade:8515 msgid " Wavpack " msgstr " Wavpack " -#: src/translate.c:265 +#: glade/xcfa.glade:8579 msgid " MusePack (fichier mpc): " msgstr " MusePack (fichier mpc): " -#: src/translate.c:267 +#: glade/xcfa.glade:8680 msgid " Options MUSEPACK " msgstr " Options MUSEPACK " -#: src/translate.c:270 +#: glade/xcfa.glade:8825 msgid " Web Musepack " msgstr " Web Musepack " -#: src/translate.c:274 -msgid "" -" Options experts, definies par l'utilisateur - musepack (wav -> mpc) " +#: glade/xcfa.glade:8954 +msgid " Experts options defined by the user- musepack (wav -> mpc) " msgstr "" " Opciones de expertos, según lo definido por el usuario - musepack (wav -" "> mpc) " -#: src/translate.c:275 +#: glade/xcfa.glade:8974 msgid " Musepack " msgstr "Musepack " -#: src/translate.c:276 -msgid " Qualite VBR / Debit ABR" -msgstr " Calidad VBR / ABR débito" - -#: src/translate.c:277 -msgid " VBR / ABR" -msgstr " VBR / ABR" - -#: src/translate.c:278 -msgid " Conteneur" -msgstr " Conteneur" +#: glade/xcfa.glade:9016 +msgid "Conteneur" +msgstr "Conteneur" + +#: glade/xcfa.glade:9027 +msgid "VBR / ABR" +msgstr "VBR / ABR" + +#: glade/xcfa.glade:9038 +msgid "Qualite VBR / Debit ABR" +msgstr "Calidad VBR / ABR débito" -#: src/translate.c:279 +#: glade/xcfa.glade:9112 msgid " Faac (fichier .m4a): " msgstr " Faac (fichier .m4a): " -#: src/translate.c:281 +#: glade/xcfa.glade:9213 msgid " Options FAAC " msgstr " Options FAAC " -#: src/translate.c:282 src/translate.c:296 +#: glade/xcfa.glade:9274 glade/xcfa.glade:9835 msgid "Site officiel " msgstr "Sitio web oficial " -#: src/translate.c:283 src/translate.c:297 +#: glade/xcfa.glade:9330 glade/xcfa.glade:9891 msgid "Web Info " msgstr "Web Info " -#: src/translate.c:285 +#: glade/xcfa.glade:9415 msgid " Web Faac " msgstr " Web Faac " -#: src/translate.c:289 -msgid "" -" Options experts, definies par l'utilisateur - faac (wav -> m4a) " +#: glade/xcfa.glade:9544 +msgid " Experts options defined by the user - faac (wav -> m4a) " msgstr "" " Opciones de expertos, según lo definido por el usuario - faac (wav -> " "m4a) " -#: src/translate.c:290 +#: glade/xcfa.glade:9564 msgid " Faac " msgstr " Faac " -#: src/translate.c:291 -msgid " Stereo: Qualite en kbit/s" -msgstr " Stereo: Qualite en kbit/s" - -#: src/translate.c:292 -msgid " Mono: Qualite en kbit/s" -msgstr " Mono: Qualite en kbit/s" +#: glade/xcfa.glade:9606 +msgid "Mono: Qualite en kbit/s" +msgstr "Mono: Qualite en kbit/s" + +#: glade/xcfa.glade:9617 +msgid "Stereo: Qualite en kbit/s" +msgstr "Stereo: Qualite en kbit/s" -#: src/translate.c:293 +#: glade/xcfa.glade:9673 msgid " AacplusEnc (fichier .aac): " msgstr " AacplusEnc (fichier .aac): " -#: src/translate.c:295 +#: glade/xcfa.glade:9774 msgid " Options AacPlusEnc " msgstr " Opciones AacPlusEnc" -#: src/translate.c:299 +#: glade/xcfa.glade:9976 msgid " Web AacPlusEnc " msgstr " Web AacPlusEnc " -#: src/translate.c:300 +#: glade/xcfa.glade:10021 msgid " AacplusEnc " msgstr " AacplusEnc" -#: src/translate.c:301 +#: glade/xcfa.glade:10051 msgid "Artiste" msgstr "Artista" -#: src/translate.c:302 src/translate.c:330 +#: glade/xcfa.glade:10070 glade/xcfa_win_treeview.glade:95 msgid "Titre" msgstr "Título" -#: src/translate.c:303 +#: glade/xcfa.glade:10089 msgid "Album" msgstr "Album" -#: src/translate.c:304 +#: glade/xcfa.glade:10108 msgid "Numero" msgstr "Número" -#: src/translate.c:305 +#: glade/xcfa.glade:10127 msgid "Genre" msgstr "Genre" -#: src/translate.c:306 +#: glade/xcfa.glade:10146 msgid "Annee" msgstr "Año" -#: src/translate.c:307 +#: glade/xcfa.glade:10165 msgid "Commentaire" msgstr "Comentario" -#: src/translate.c:308 +#: glade/xcfa.glade:10190 msgid " Exportation de " msgstr " Exportación " -#: src/translate.c:310 +#: glade/xcfa.glade:10226 msgid " Preferences " msgstr " preferencias " -#: src/translate.c:311 +#: glade/xcfa.glade:10289 msgid "SCAN" msgstr "SCAN" -#: src/translate.c:312 +#: glade/xcfa.glade:10303 msgid " Installation " msgstr " Instalación " -#: src/translate.c:313 -msgid " Votre systeme utilise ... " +#: glade/xcfa.glade:10338 +msgid " Your system use ... " msgstr " El sistema utiliza ... " -#: src/translate.c:314 +#: glade/xcfa.glade:10375 msgid "" "\n" -"Pour installer les programmes externes requis,\n" -"veuillez utiliser l'installateur de votre distribution Gnu/Linux.\n" +"To install the required external programs\n" +"Please use the installer to your distribution Gnu / Linux.\n" msgstr "" "\n" "Para instalar los programas externos necesarios,\n" "Por favor, utilice el instalador en su distribución GNU / Linux.\n" -#: src/translate.c:315 +#: glade/xcfa.glade:10393 msgid "" "Le programme XCFA_INSTALL_ALL ecrit en Perl vous sera utile en ligne de " "commande pour une installation des programmes complementaire." @@ -2447,19 +2358,19 @@ "XCFA_INSTALL_ALL programa escrito en Perl será útil en una línea de comandos " "para instalar programas adicionales." -#: src/translate.c:316 +#: glade/xcfa.glade:10419 msgid " Informations " msgstr " información " -#: src/translate.c:317 -msgid " Application externes " -msgstr " Aplicación externa " +#: glade/xcfa.glade:10443 +msgid " External application " +msgstr "XCFA: Extracción de CD" -#: src/translate.c:318 src/translate.c:321 +#: glade/xcfa.glade:10514 glade/xcfa.glade:10618 msgid "parametres:" msgstr "parámetros:" -#: src/translate.c:319 +#: glade/xcfa.glade:10527 msgid "" "\n" " konqueror : newTab\n" @@ -2469,171 +2380,47 @@ " konqueror : newTab\n" " iceweasel : -new-window -new-tab \n" -#: src/translate.c:320 +#: glade/xcfa.glade:10548 msgid "Navigateur" msgstr "Navegadore" -#: src/translate.c:322 +#: glade/xcfa.glade:10648 msgid "Lecteurs audio" msgstr "Reproductores de Audio" -#: src/translate.c:323 -msgid " Navigateurs / Lecteurs audio " -msgstr " Navegadores / Reproductores de Audio " +#: glade/xcfa.glade:10669 +msgid "  Browsers / Audio Players " +msgstr "Navegadores / Reproductores de Audio" -#: src/translate.c:324 +#: glade/xcfa.glade:10692 msgid " Applications externes " msgstr " Las aplicaciones externas " -#: src/translate.c:325 -msgid "Scan en cours ..." -msgstr "Análisis en curso ..." - -#: src/translate.c:326 -msgid "Scan du support en cours ..." -msgstr "Escanear el apoyo actual ..." - -#: src/translate.c:327 -msgid "Detail extraction mode expert" -msgstr "Recuperación de detalle el modo experto" - -#: src/translate.c:328 -msgid "Modification des champs" -msgstr "Campos variables" - -#: src/translate.c:329 -msgid "" -"\n" -"Modification des champs\n" -msgstr "" -"\n" -"Modification des champs\n" - -#: src/translate.c:337 src/translate.c:356 src/translate.c:377 -#: src/translate.c:389 src/translate.c:400 src/translate.c:408 -msgid " Visibilite " -msgstr " visibilidad " - -#: src/translate.c:338 src/translate.c:357 src/translate.c:378 -#: src/translate.c:390 src/translate.c:401 src/translate.c:409 -msgid "Nom a gauche" -msgstr "Nombre de la izquierda" - -#: src/translate.c:339 src/translate.c:358 src/translate.c:379 -#: src/translate.c:391 src/translate.c:402 src/translate.c:410 -msgid "Nom au centre" -msgstr "Nombre del centro" - -#: src/translate.c:340 src/translate.c:359 src/translate.c:380 -#: src/translate.c:392 src/translate.c:403 src/translate.c:411 -msgid "Nom a droite" -msgstr "Nombre a la derecha" - -#: src/translate.c:341 -msgid "DVD" -msgstr "DVD" - -#: src/translate.c:346 src/translate.c:367 -msgid "Wavpack" -msgstr "Wavpack" - -#: src/translate.c:350 src/translate.c:371 -msgid "Musepack" -msgstr "Musepack" - -#: src/translate.c:360 -msgid "CD" -msgstr "CD" - -#: src/translate.c:375 -msgid "Replaygain" -msgstr "Replaygain" - -#: src/translate.c:381 -msgid "CONVERSIONS" -msgstr "CONVERSIONES" - -#: src/translate.c:382 -msgid "Hertz" -msgstr "Hertz" - -#: src/translate.c:383 -msgid "New Hertz" -msgstr "New Hertz" - -#: src/translate.c:384 -msgid "Voie" -msgstr "Voie" - -#: src/translate.c:385 -msgid "New Voie" -msgstr "New Voie" - -#: src/translate.c:386 -msgid "Bits" -msgstr "Bits" - -#: src/translate.c:387 -msgid "New Bits" -msgstr "New Bits" - -#: src/translate.c:393 -msgid "WAV" -msgstr "WAV" - -#: src/translate.c:396 -msgid "New Bitrate" -msgstr "New Bitrate" - -#: src/translate.c:397 -msgid "Size" -msgstr "Size" - -#: src/translate.c:404 -msgid "MP3-OGG" -msgstr "MP3-OGG" - -#: src/translate.c:412 -msgid "TAGS" -msgstr "TAGS" - -#: src/translate.c:413 -msgid "Selection globale" -msgstr "Selection globale" - -#: src/translate.c:414 -msgid "Deselection globale" -msgstr "Deselection globale" - -#: src/translate.c:415 -msgid "Retour" -msgstr "Volver" - -#: src/translate.c:416 +#: glade/xcfa_win_about.glade:7 msgid "About X Convert File Audio" msgstr "About X Convert File Audio" -#: src/translate.c:417 +#: glade/xcfa_win_about.glade:103 msgid "Author" msgstr "Author" -#: src/translate.c:418 +#: glade/xcfa_win_about.glade:139 msgid "Licence" msgstr "Licence" -#: src/translate.c:419 +#: glade/xcfa_win_about.glade:163 msgid " Informations " msgstr " Información " -#: src/translate.c:420 +#: glade/xcfa_win_about.glade:198 msgid " Machine " msgstr " Máquina " -#: src/translate.c:421 +#: glade/xcfa_win_about.glade:333 msgid "Ingenieurs du son\n" msgstr "Los ingenieros de sonido\n" -#: src/translate.c:422 +#: glade/xcfa_win_about.glade:350 msgid "" "\n" "Graphisme\n" @@ -2641,7 +2428,7 @@ "\n" "Gráficos\n" -#: src/translate.c:423 +#: glade/xcfa_win_about.glade:370 msgid "" "Traduction Anglaise\n" "\n" @@ -2651,7 +2438,7 @@ "\n" "\n" -#: src/translate.c:424 +#: glade/xcfa_win_about.glade:391 msgid "" "\n" "Traduction Allemande" @@ -2659,7 +2446,7 @@ "\n" "Traduction Allemande" -#: src/translate.c:425 +#: glade/xcfa_win_about.glade:628 msgid "" "\n" "Codeur Xcfa" @@ -2667,7 +2454,7 @@ "\n" "Codeur Xcfa" -#: src/translate.c:426 +#: glade/xcfa_win_about.glade:665 msgid "" "\n" "ElementSpeak pour Xcfa " @@ -2675,7 +2462,7 @@ "\n" "ElementSpeak pour Xcfa " -#: src/translate.c:427 +#: glade/xcfa_win_about.glade:702 msgid "" "\n" "Codeur pages Web" @@ -2683,7 +2470,7 @@ "\n" "Codeur páginas web" -#: src/translate.c:428 +#: glade/xcfa_win_about.glade:739 msgid "" "\n" "Traduction Italienne" @@ -2691,7 +2478,7 @@ "\n" "Traduction Italienne" -#: src/translate.c:429 +#: glade/xcfa_win_about.glade:800 msgid "" "\n" "\n" @@ -2701,51 +2488,43 @@ "\n" "Páginas de un visiter\n" -#: src/translate.c:430 +#: glade/xcfa_win_about.glade:1123 msgid "Linux On The Root" msgstr "Linux On The Root" -#: src/translate.c:431 +#: glade/xcfa_win_about.glade:1180 msgid "Frugalware" msgstr "Frugalware" -#: src/translate.c:432 +#: glade/xcfa_win_about.glade:1237 msgid "Road2Mayotte" msgstr "Road2Mayotte" -#: src/translate.c:433 +#: glade/xcfa_win_about.glade:1294 msgid "La Linuxerie" msgstr "La Linuxerie" -#: src/translate.c:434 -msgid "Audioptimisation by Dzef" -msgstr "Audioptimisation by Dzef" - -#: src/translate.c:435 +#: glade/xcfa_win_about.glade:1351 msgid "Tuxfamily" msgstr "Tuxfamily" -#: src/translate.c:436 +#: glade/xcfa_win_about.glade:1408 msgid "Framasoft" msgstr "Framasoft" -#: src/translate.c:437 +#: glade/xcfa_win_about.glade:1465 msgid "Ekd (EnKoDeur-Mixeur)" msgstr "Ekd (EnKoDeur-Mixeur)" -#: src/translate.c:438 -msgid "Bishop's page" -msgstr "Bishop's page" +#: glade/xcfa_win_about.glade:1544 +msgid "Debian Multimedia" +msgstr "Debian Multimedia" -#: src/translate.c:439 +#: glade/xcfa_win_about.glade:1598 msgid "Je suis libre" msgstr "Je suis libre" -#: src/translate.c:440 -msgid "Debian Multimedia" -msgstr "Debian Multimedia" - -#: src/translate.c:441 +#: glade/xcfa_win_about.glade:1705 msgid "" "\n" "Forum\n" @@ -2753,19 +2532,15 @@ "\n" "Forum\n" -#: src/translate.c:442 -msgid "XCFA Vorstellung " -msgstr "XCFA idea" +#: glade/xcfa_win_about.glade:1825 +msgid "Forum Xcfa" +msgstr "Forum Xcfa" -#: src/translate.c:443 +#: glade/xcfa_win_about.glade:1879 msgid "XCFA LinuxForen.de" msgstr "XCFA LinuxForen.de" -#: src/translate.c:444 -msgid "Forum Xcfa" -msgstr "Forum Xcfa" - -#: src/translate.c:445 +#: glade/xcfa_win_about.glade:1929 msgid "" "\n" "Documentation\n" @@ -2773,157 +2548,217 @@ "\n" "documentación\n" -#: src/translate.c:446 +#: glade/xcfa_win_about.glade:2164 msgid "Wiki Xcfa par Shankarius" msgstr "Wiki Xcfa por Shankarius" -#: src/translate.c:447 +#: glade/xcfa_win_about.glade:2219 msgid "Doc Xcfa par Patachon" msgstr "Doc Xcfa por Patachon" -#: src/translate.c:448 +#: glade/xcfa_win_about.glade:2276 msgid "Ogg Vorbis explique par Shankarius" msgstr "Ogg Vorbis explicó Shankarius" -#: src/translate.c:449 +#: glade/xcfa_win_about.glade:2333 msgid "La normalisation expliquee par Dzef" msgstr "Explica por la normalización Dzef" -#: src/translate.c:450 +#: glade/xcfa_win_about.glade:2390 msgid "Xcfa sur Linux On The Root" msgstr "Xcfa sur Linux On The Root" -#: src/translate.c:451 +#: glade/xcfa_win_about.glade:2433 msgid " Contributions " msgstr " Contribuciones " -#: src/translate.c:452 +#: glade/xcfa_win_about.glade:2461 msgid " License " msgstr " licencia " -#: src/translate.c:453 +#: glade/xcfa_win_about.glade:2482 msgid "OK" msgstr "OK" -#: src/web.c:173 src/web.c:234 -msgid "PAS de navigateur present" -msgstr "NO navegador actual" - -#: src/web.c:174 -msgid "L'acces au web est impossible car aucun navigateur" -msgstr " Acceso a la Web es imposible porque no hay ningún navegador" - -#: src/web.c:176 -msgid "n'est present dans votre configuration." -msgstr "está presente en su configuración." - -#: src/web.c:178 -msgid "Veuillez installez un navigateur." -msgstr "Por favor, instale un navegador." - -#: src/web.c:188 -msgid "Vous devez ouvrir l'acces internet" -msgstr "Debe abrir el acceso a Internet" - -#: src/web.c:236 -msgid " L'acces au web est impossible car aucun navigateur" -msgstr " Acceso a la Web es imposible porque no hay ningún navegador" - -#: src/web.c:238 -msgid " n'est present dans votre configuration." -msgstr " está presente en su configuración." - -#: src/web.c:240 -msgid " Veuillez installez un navigateur." -msgstr " Por favor, instale un navegador." +#: glade/xcfa_win_scan.glade:9 +msgid "Scan en cours ..." +msgstr "Análisis en curso ..." -#: src/web.c:250 -msgid "L'application est absente." -msgstr "La aplicación no se encuentra." +#: glade/xcfa_win_scan.glade:77 +msgid "Scan du support en cours ..." +msgstr "Escanear el apoyo actual ..." -#: src/web.c:251 -msgid "Veuillez installer : " -msgstr "Por favor, instale : " +#: glade/xcfa_win_scan.glade:128 +msgid "Detail extraction mode expert" +msgstr "Recuperación de detalle el modo experto" -#: src/win_about.c:130 -msgid " Xcfa sur le web" -msgstr " Xcfa web" +#: glade/xcfa_win_treeview.glade:7 +msgid "Modification des champs" +msgstr "Campos variables" -#: src/win_about.c:180 +#: glade/xcfa_win_treeview.glade:41 msgid "" "\n" -"Au tout debut:\n" -"\n" -"Serres Patrick, Hamann Regis, Fabien Gregis, @Dzef, @alteo_gange, \n" -"@Leonux, @zarer, @Shankarius, @bishop, @Ludo, @Patachonf,\n" -"... ;-)\n" -"\n" -"" +"Modification des champs\n" msgstr "" "\n" -"En el comienzo:\n" -"\n" -"Serres Patrick, Hamann Regis, Fabien Gregis, @Dzef, @alteo_gange, \n" -"@Leonux, @zarer, @Shankarius, @bishop, @Ludo, @Patachonf,\n" -"... ;-)\n" -"\n" -"" +"Modification des champs\n" -#: src/win_scan.c:161 -msgid "Waiting ..." -msgstr "Espera ..." +#: glade/xcfa_win_treeview.glade:129 +msgid "Temps" +msgstr "Temps" -#~ msgid "Quantification" -#~ msgstr "Quantification" +#: glade/xcfa_win_treeview.glade:163 +msgid "Choix" +msgstr "Choix" -#~ msgid "Voie" -#~ msgstr "Voie" +#: glade/xcfa_win_treeview.glade:197 glade/xcfa_win_treeview.glade:577 +#: glade/xcfa_win_treeview.glade:995 glade/xcfa_win_treeview.glade:1260 +#: glade/xcfa_win_treeview.glade:1508 glade/xcfa_win_treeview.glade:1706 +msgid "Nom" +msgstr "Nom" -#~ msgid " Frequence - Hertz " -#~ msgstr " Frecuencia - Hertz " +#: glade/xcfa_win_treeview.glade:220 glade/xcfa_win_treeview.glade:600 +#: glade/xcfa_win_treeview.glade:1018 glade/xcfa_win_treeview.glade:1283 +#: glade/xcfa_win_treeview.glade:1531 glade/xcfa_win_treeview.glade:1732 +msgid " Visibilite " +msgstr " visibilidad " + +#: glade/xcfa_win_treeview.glade:250 glade/xcfa_win_treeview.glade:630 +#: glade/xcfa_win_treeview.glade:1048 glade/xcfa_win_treeview.glade:1313 +#: glade/xcfa_win_treeview.glade:1562 glade/xcfa_win_treeview.glade:1763 +msgid "Nom a gauche" +msgstr "Nombre de la izquierda" + +#: glade/xcfa_win_treeview.glade:267 glade/xcfa_win_treeview.glade:647 +#: glade/xcfa_win_treeview.glade:1065 glade/xcfa_win_treeview.glade:1330 +#: glade/xcfa_win_treeview.glade:1579 glade/xcfa_win_treeview.glade:1780 +msgid "Nom au centre" +msgstr "Nombre del centro" -#~ msgid "Cellule" -#~ msgstr "Cellule" +#: glade/xcfa_win_treeview.glade:286 glade/xcfa_win_treeview.glade:666 +#: glade/xcfa_win_treeview.glade:1084 glade/xcfa_win_treeview.glade:1349 +#: glade/xcfa_win_treeview.glade:1598 glade/xcfa_win_treeview.glade:1799 +msgid "Nom a droite" +msgstr "Nombre a la derecha" -#~ msgid "Colonne" -#~ msgstr "Colonne" +#: glade/xcfa_win_treeview.glade:326 +msgid "DVD" +msgstr "DVD" -#~ msgid " Cacher Xcfa " -#~ msgstr " Cacher Xcfa " +#: glade/xcfa_win_treeview.glade:373 glade/xcfa_win_treeview.glade:791 +msgid "Wav" +msgstr "Wav" -#~ msgid " Montrer Xcfa " -#~ msgstr " Montrer Xcfa " +#: glade/xcfa_win_treeview.glade:390 glade/xcfa_win_treeview.glade:808 +msgid "Flac" +msgstr "Flac" -#~ msgid " Quitter Xcfa " -#~ msgstr " Quitter Xcfa " +#: glade/xcfa_win_treeview.glade:407 glade/xcfa_win_treeview.glade:825 +msgid "Ape" +msgstr "Ape" -#~ msgid "" -#~ "XCFA\n" -#~ "Programme pour convertir les fichiers audio." -#~ msgstr "" -#~ "XCFA\n" -#~ "Programme pour convertir les fichiers audio." +#: glade/xcfa_win_treeview.glade:424 glade/xcfa_win_treeview.glade:842 +msgid "Wavpack" +msgstr "Wavpack" -#~ msgid "128 -defaut" -#~ msgstr "128 -defauf" +#: glade/xcfa_win_treeview.glade:441 glade/xcfa_win_treeview.glade:859 +msgid "Ogg" +msgstr "Ogg" -#~ msgid "V0 -meilleure qualite" -#~ msgstr "V0 -meilleure qualit" +#: glade/xcfa_win_treeview.glade:458 glade/xcfa_win_treeview.glade:876 +msgid "M4a" +msgstr "M4a" -#~ msgid "V4 -defaut" -#~ msgstr "V4 -defau" +#: glade/xcfa_win_treeview.glade:475 glade/xcfa_win_treeview.glade:893 +msgid "Aac" +msgstr "Aac" -#~ msgid "V9 -moins bonne qualite" -#~ msgstr "V9 -moins bonne qualit" +#: glade/xcfa_win_treeview.glade:492 glade/xcfa_win_treeview.glade:910 +msgid "Musepack" +msgstr "Musepack" -#~ msgid "Defaut" -#~ msgstr "Defaut" +#: glade/xcfa_win_treeview.glade:509 glade/xcfa_win_treeview.glade:927 +msgid "Mp3" +msgstr "Mp3" + +#: glade/xcfa_win_treeview.glade:526 +msgid "Num" +msgstr "Num" + +#: glade/xcfa_win_treeview.glade:709 +msgid "CD" +msgstr "CD" + +#: glade/xcfa_win_treeview.glade:978 +msgid "Replaygain" +msgstr "Replaygain" + +#: glade/xcfa_win_treeview.glade:1127 +msgid "CONVERSIONS" +msgstr "CONVERSIONES" + +#: glade/xcfa_win_treeview.glade:1158 +msgid "Hertz" +msgstr "Hertz" + +#: glade/xcfa_win_treeview.glade:1175 +msgid "New Hertz" +msgstr "New Hertz" + +#: glade/xcfa_win_treeview.glade:1192 +msgid "Voie" +msgstr "Voie" + +#: glade/xcfa_win_treeview.glade:1209 +msgid "New Voie" +msgstr "New Voie" + +#: glade/xcfa_win_treeview.glade:1226 +msgid "Bits" +msgstr "Bits" + +#: glade/xcfa_win_treeview.glade:1243 +msgid "New Bits" +msgstr "New Bits" + +#: glade/xcfa_win_treeview.glade:1392 +msgid "WAV" +msgstr "WAV" + +#: glade/xcfa_win_treeview.glade:1440 +msgid "Bitrate" +msgstr "Bitrate" + +#: glade/xcfa_win_treeview.glade:1457 +msgid "New Bitrate" +msgstr "New Bitrate" + +#: glade/xcfa_win_treeview.glade:1641 +msgid "MP3-OGG" +msgstr "MP3-OGG" + +#: glade/xcfa_win_treeview.glade:1842 +msgid "TAGS" +msgstr "TAGS" + +#: glade/xcfa_win_treeview.glade:1894 +msgid "Selection globale" +msgstr "Selection globale" + +#: glade/xcfa_win_treeview.glade:1948 +msgid "Deselection globale" +msgstr "Deselection globale" + +#: glade/xcfa_win_treeview.glade:2009 +msgid "Retour" +msgstr "Volver" -#~ msgid "Qualite -1 -Moins bonne qualite" -#~ msgstr "Qualite -1 -Moins bonne qualite" +#~ msgid "Audioptimisation by Dzef" +#~ msgstr "Audioptimisation by Dzef" -#~ msgid "Qualite 3 -Defaut" -#~ msgstr "Qualite 3 -Defaut" +#~ msgid "Bishop's page" +#~ msgstr "Bishop's page" -#~ msgid "Qualite 10 -Meilleure qualite" -#~ msgstr "Qualite 10 -Meilleure qualit" +#~ msgid "XCFA Vorstellung " +#~ msgstr "XCFA idea" Binary files /tmp/U9mREQ24T4/xcfa-4.3.8/po/fr.gmo and /tmp/9PqOMEw8oW/xcfa-5.0.1/po/fr.gmo differ diff -Nru xcfa-4.3.8/po/fr.po xcfa-5.0.1/po/fr.po --- xcfa-4.3.8/po/fr.po 2014-01-31 12:25:57.000000000 +0000 +++ xcfa-5.0.1/po/fr.po 2015-03-01 17:00:50.000000000 +0000 @@ -5,150 +5,97 @@ # msgid "" msgstr "" -"Project-Id-Version: xcfa 4.2.8\n" +"Project-Id-Version: xcfa 5.0.0\n" "Report-Msgid-Bugs-To: xcfa@tuxfamily.org\n" -"POT-Creation-Date: 2014-01-31 13:25+0100\n" -"PO-Revision-Date: 2010-05-06 16:59+0200\n" +"POT-Creation-Date: 2015-03-01 18:00+0100\n" +"PO-Revision-Date: 2015-02-06 15:44+0100\n" "Last-Translator: BULIN Claude xcfa@tuxfamily.org\n" "Language-Team: French\n" -"Language: \n" +"Language: fr\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" +"X-Generator: Poedit 1.7.3\n" -#: src/cd_audio.c:812 src/dvd.c:680 src/dvd.c:1324 -msgid "MPLAYER deja en action" +#: src/cd_audio.c:814 src/dvd.c:686 src/dvd.c:1345 +msgid "MPLAYER already in action" msgstr "MPLAYER déjà en action" -#: src/cd_audio.c:813 src/dvd.c:681 src/dvd.c:1325 -msgid "MPLAYER est deja utilise !!" +#: src/cd_audio.c:815 src/dvd.c:687 src/dvd.c:1346 +msgid "MPLAYER is already in use !!" msgstr "MPLAYER est déjà utilisé !!" -#: src/cd_audio.c:1224 src/cd_audio.c:1230 src/dvd.c:867 src/file.c:2827 -msgid "(Click Droit = Menu) / En attente de selection." -msgstr "(Click Droit = Menu) / En attente de sélection." - -#: src/cd_audio.c:1227 src/file.c:2824 -msgid "Le programme externe d'extraction est absent." -msgstr "Le programme externe d'extraction est absent." - -#: src/cd_audio.c:1233 src/file.c:2830 -msgid "(Click Droit = Menu) / En attente de selection. Le fichier existe." -msgstr "(Click Droit = Menu) / En attente de sélection. Le fichier existe." +#: src/cd_audio.c:1227 src/cd_audio.c:1233 src/file.c:2837 +msgid "(Right click = Menu) / Waiting for selection." +msgstr "(Click Droit = Menu) / En sélection." + +#: src/cd_audio.c:1230 +msgid "The external ripping program is missing." +msgstr "Le programme d'extraction est absent." + +#: src/cd_audio.c:1236 +msgid "(Right click = Menu) / Waiting for Selection. File exists.." +msgstr "(Click Droit = Menu) / En sélection. Le fichier existe." -#: src/cd_audio.c:1236 src/file.c:2833 -msgid "(Click Droit = Menu) / En selection." +#: src/cd_audio.c:1239 +msgid "(Right click = Menu) / Selected files." msgstr "(Click Droit = Menu) / En sélection." -#: src/cd_audio.c:1239 src/file.c:2839 -msgid "(Click Droit = Menu) / Selection avec options expert." +#: src/cd_audio.c:1242 src/file.c:2849 +msgid "(Right click = Menu) / Selection - expert mode." msgstr "(Click Droit = Menu) / Sélection avec options expert." -#: src/cd_audio.c:1242 src/file.c:2836 -msgid "(Click Droit = Menu) / En selection. Le fichier existe." +#: src/cd_audio.c:1245 src/file.c:2846 +msgid "(Right click = Menu) / Selected files. File exists." msgstr "(Click Droit = Menu) / En sélection. Le fichier existe." -#: src/cd_audio.c:1245 src/file.c:2842 -msgid "" -"(Click Droit = Menu) / Selection avec options expert. Le fichier existe." +#: src/cd_audio.c:1248 src/file.c:2852 +msgid "(Right click = Menu) / Selection - expert mode. File exists." msgstr "" "(Click Droit = Menu) / Sélection avec options expert. Le fichier existe." -#: src/cd_audio.c:1254 +#: src/cd_audio.c:1257 msgid "" -"(Click Droit = Menu) / Possibilite d'ajustement INDIVIDUEL ou COLLECTIF " -"maximal du volume" +"(Right click = Menu) / Possibilities for individual adaptation or maximum " +"collection volume" msgstr "" -"(Click Droit = Menu) / Possibilité d'ajustement INDIVIDUEL ou COLLECTIF " -"maximal du volume" +"(Click Droit = Menu) / Possibilité d'adaptation individuelle ou le volume " +"sera maximal" -#: src/cd_audio.c:1259 -msgid "(Click Droit = Menu) / Ajustement INDIVIDUEL maximal du volume" +#: src/cd_audio.c:1262 +msgid "(Right click = Menu) / INDIVIDUAL maximum volume adjustment" msgstr "(Click Droit = Menu) / Ajustement INDIVIDUEL maximal du volume" -#: src/cd_audio.c:1262 -msgid "(Click Droit = Menu) / Ajustement COLLECTIF maximal du volume" +#: src/cd_audio.c:1265 +msgid "(Right click = Menu) / COLLECTIVE maximum volume adjustment" msgstr "(Click Droit = Menu) / Ajustement COLLECTIF maximal du volume" -#: src/cd_audio.c:1502 src/dvd.c:1099 src/file.c:3137 src/translate.c:331 -#: src/translate.c:342 src/translate.c:361 -msgid "Play" -msgstr "Play" - -#: src/cd_audio.c:1543 src/file.c:3202 src/translate.c:343 src/translate.c:364 -msgid "Wav" -msgstr "Wav" - -#: src/cd_audio.c:1564 src/file.c:3221 src/translate.c:344 src/translate.c:365 -msgid "Flac" -msgstr "Flac" - -#: src/cd_audio.c:1584 src/file.c:3240 src/translate.c:345 src/translate.c:366 -msgid "Ape" -msgstr "Ape" - -#: src/cd_audio.c:1604 src/file.c:3259 -msgid "WavP" -msgstr "WavP" - -#: src/cd_audio.c:1624 src/file.c:3278 src/translate.c:347 src/translate.c:368 -msgid "Ogg" -msgstr "Ogg" - -#: src/cd_audio.c:1645 src/file.c:3297 src/translate.c:348 src/translate.c:369 -msgid "M4a" -msgstr "M4a" - -#: src/cd_audio.c:1666 src/file.c:3316 src/translate.c:349 src/translate.c:370 -msgid "Aac" -msgstr "Aac" - -#: src/cd_audio.c:1686 src/file.c:3335 -msgid "Mpc" -msgstr "Mpc" - -#: src/cd_audio.c:1706 src/file.c:3354 src/translate.c:351 src/translate.c:372 -msgid "Mp3" -msgstr "Mp3" - -#: src/cd_audio.c:1727 src/translate.c:352 -msgid "Num" -msgstr "Num" - -#: src/cd_audio.c:1742 src/translate.c:353 src/translate.c:373 -#: src/translate.c:398 src/translate.c:406 -msgid "Time" -msgstr "Time" - -#: src/cd_audio.c:1757 src/dvd.c:1167 src/file.c:3390 src/translate.c:335 -#: src/translate.c:354 src/translate.c:374 +#: src/cd_audio.c:1764 src/dvd.c:1187 src/file.c:3403 +#: glade/xcfa_win_treeview.glade:180 glade/xcfa_win_treeview.glade:560 +#: glade/xcfa_win_treeview.glade:961 msgid "Normalise" msgstr "Normalise" -#: src/cd_audio.c:1782 src/dvd.c:1187 src/file.c:3432 src/file_mp3ogg.c:958 -#: src/file_tags.c:1191 src/file_wav.c:824 src/prg_init.c:609 -#: src/translate.c:336 src/translate.c:355 src/translate.c:376 -#: src/translate.c:388 src/translate.c:399 src/translate.c:407 -msgid "Nom" +#: src/cd_audio.c:1789 src/dvd.c:1207 src/file.c:3445 src/file_mp3ogg.c:964 +#: src/file_tags.c:1253 src/file_wav.c:830 src/prg_init.c:609 +msgid "Name" msgstr "Nom" -#: src/cd_audio.c:2511 -msgid " Parametrage CDDB: [ Nom du serveur ]" +#: src/cd_audio.c:2517 +msgid " Setting up CDDB: [ Server name ]" msgstr " Paramétrage CDDB: [ Nom du serveur ]" -#: src/cd_audio.c:2520 -msgid " Parametrage PROXY: [ serveur ] [ port ]" +#: src/cd_audio.c:2526 +msgid " Proxy settings: [ server ] [ port ] " msgstr " Paramétrage PROXY: [ serveur ] [ port ]" -#: src/cd_audio.c:2530 src/translate.c:95 -msgid " Serveur " +#: src/cd_audio.c:2536 glade/xcfa.glade:1842 +msgid " Server " msgstr " Serveur " #: src/cd_audio_extract.c:673 #, c-format -msgid "" -"[Erreur du segment numero: %d]\n" -"%d) Lecture PASS 1/2\n" +msgid "[Error on segment #%d] %d) Playing PASS 1/2\n" msgstr "" "[Erreur du segment numéro: %d]\n" "%d) Lecture PASS 1/2\n" @@ -156,7 +103,7 @@ #: src/cd_audio_extract.c:680 #, c-format msgid "" -"--> Deja %d fois 2 lectures du segment %d!\n" +"--> Segment %d already read two %d times!\n" " Abandon :/\n" msgstr "" "--> Déjà %d fois 2 lectures du segment %d!\n" @@ -164,28 +111,28 @@ #: src/cd_audio_extract.c:700 #, c-format -msgid "%d) Lecture PASS 2/2\n" +msgid "%d) Read PASS 2/2\n" msgstr "%d) Lecture PASS 2/2\n" #: src/cd_audio_extract.c:780 #, c-format msgid "" "\n" -"[Piste: %d]\n" +"[Track: %d]\n" msgstr "" "\n" "[Piste: %d]\n" #: src/cd_audio_extract.c:784 -msgid "Extraction mode expert PASS 1/2\n" +msgid "Ripping expert mode PASS 1/2\n" msgstr "Extraction mode expert PASS 1/2\n" #: src/cd_audio_extract.c:795 -msgid "Extraction mode expert PASS 2/2\n" +msgid "Ripping expert mode PASS 2/2\n" msgstr "Extraction mode expert PASS 2/2\n" #: src/cd_audio_extract.c:803 -msgid "Controle du contenu des fichiers extraits\n" +msgid "Control the content of the extracted files\n" msgstr "Côntrole du contenu des fichiers extraits\n" #: src/cd_audio_extract.c:1710 src/cd_audio_extract.c:1712 @@ -199,354 +146,343 @@ #: src/cd_audio_extract.c:1712 src/dvd_extract.c:414 src/file_action.c:185 #: src/file_mp3ogg_conv.c:331 src/file_wav_conv.c:345 -msgid "Arret par l'utilisateur" +msgid "Stop by user" msgstr "Arrêt par l'utilisateur" #: src/cd_audio_extract.c:1983 -msgid "Nom de fichier unique absent" -msgstr "Nom de fichier unique absent" +msgid "File name not found" +msgstr "Nom de fichier absent" #: src/cd_audio_extract.c:1984 -msgid "Veuillez saisir un nom pour le fichier unique" -msgstr "Veuillez saisir un nom pour le fichier unique" +msgid "Please enter a file name" +msgstr "Veuillez saisir un nom de fichier" #: src/cd_audio_toc.c:156 msgid "cdda2wav and icedax NOT FOUND" -msgstr "cdda2wav and icedax NOT FOUND" +msgstr "cdda2wav and icedax absent" #: src/cd_audio_toc.c:157 msgid "Please, install packages [ icedax, cdda2wav ]" -msgstr "Please, install packages [ icedax, cdda2wav ]" +msgstr "Veuillez installer les paquets [ icedax, cdda2wav ]" #: src/cd_audio_toc.c:163 msgid "icedax NOT FOUND" -msgstr "icedax NOT FOUND" +msgstr "icedax absent" #: src/cd_audio_toc.c:164 msgid "Please, install package [ icedax ]" -msgstr "Please, install package [ icedax ]" +msgstr "Veuillez installer le paquet [ icedax ]" #: src/cd_audio_toc.c:170 msgid "cdda2wav NOT FOUND" -msgstr "cdda2wav NOT FOUND" +msgstr "cdda2wav absent" #: src/cd_audio_toc.c:171 msgid "Please, install package [ cdda2wav ]" -msgstr "Please, install package [ cdda2wav ]" +msgstr "Veuillez installer le paquet [ cdda2wav ]" #: src/cd_audio_toc.c:180 msgid "cdparanoia NOT FOUND" -msgstr "cdparanoia NOT FOUND" +msgstr "cdparanoia absent" #: src/cd_audio_toc.c:181 msgid "Please, install package [ cdparanoia ]" -msgstr "Please, install package [ cdparanoia ]" +msgstr "Veuillez installer le paquet [ cdparanoia ]" #: src/cd_audio_toc.c:188 msgid "cd-discid NOT FOUND" -msgstr "cd-discid NOT FOUND" +msgstr "cd-discid absent" #: src/cd_audio_toc.c:189 msgid "Please, install packages [ cd-discid ]" -msgstr "Please, install packages [ cd-discid ]" +msgstr "Veuillez installer le paquet [ cd-discid ]" #: src/cd_audio_toc.c:203 -msgid "ERREUR datas proxy" +msgid "ERROR datas proxy" msgstr "ERREUR datas proxy" #: src/cd_audio_toc.c:204 -msgid "Veuillez renseigner les champs du proxy" -msgstr "Veuillez renseigner les champs du proxy" +msgid "Please complete all fields proxy" +msgstr "Veuillez compléter les champs du proxy" #: src/cd_curl.c:734 src/web.c:187 -msgid "La liaison internet est absente" -msgstr "La liaison internet est absente" +msgid "A web connection is missing" +msgstr "La connexion internet est absente" #: src/cd_curl.c:1204 msgid "Couldn't find CD" -msgstr "Couldn't find CD" +msgstr "CD absent" #: src/cd_curl.c:1267 msgid "No Audio CD" -msgstr "No Audio CD" +msgstr "CD absent" -#: src/dvd.c:859 +#: src/dvd.c:877 msgid "" -"(Click Droit = Menu) / PEAK-ALBUM: Amplification maximale du volume pour un " -"groupe de fichiers en respectant les ecarts de niveau entre chacun d'eux." +"(Right click = Menu) / Maximum volume amplification of a group of files " +"keeping the level difference between each of them." msgstr "" -"(Click Droit = Menu) / PEAK-ALBUM: Amplification maximale du volume pour un " -"groupe de fichiers en respectant les écarts de niveau entre chacun d'eux." +"(Click Droit = Menu) / Amplification de volume maximale d'un groupe de " +"fichiers de maintien de la différence de niveau entre chacun d'eux." -#: src/dvd.c:862 -msgid "" -"(Click Droit = Menu) / PEAK: Amplification maximale du volume pour chaque de " -"fichier." -msgstr "" -"(Click Droit = Menu) / PEAK: Amplification maximale du volume pour chaque de " -"fichier." +#: src/dvd.c:882 src/file.c:2882 +msgid "PEAK: Maximum volume amplification of each file." +msgstr "PEAK: L'amplification du volume maximum de chaque fichier." -#: src/dvd.c:900 src/dvd.c:920 -msgid "En attente de selection. Un click activera la conversion vers 2 canaux." +#: src/dvd.c:887 +msgid "(Right click = Menu) / ReplayGain: Waiting for selection." +msgstr "(Click Droit = Menu) / ReplayGain: En attente de sélection." + +#: src/dvd.c:920 src/dvd.c:940 +msgid "" +"Waiting for selection. A click will activate the conversion to 2 channels." msgstr "" "En attente de sélection. Un click activera la conversion vers 2 canaux." -#: src/dvd.c:912 -msgid "Conversion vers 2 canaux." +#: src/dvd.c:932 +msgid "Conversion to 2 channels." msgstr "Conversion vers 2 canaux." -#: src/dvd.c:924 +#: src/dvd.c:944 #, c-format -msgid "Conversion vers %s canaux." +msgid "Conversion to %s channels." msgstr "Conversion vers %s canaux." -#: src/dvd.c:929 +#: src/dvd.c:949 #, c-format msgid "" -"Conversion vers 2 canaux. Un second click activera la conversion vers %s " -"canaux." +"Conversion to 2 channels. A second click will activate the conversion to %s " +"channels." msgstr "" "Conversion vers 2 canaux. Un second click activera la conversion vers %s " "canaux." -#: src/dvd.c:944 -msgid "Musique en ecoute." -msgstr "Musique en écoute." - -#: src/dvd.c:947 -msgid "Musique en attente." -msgstr "Musique en attente." +#: src/dvd.c:964 +msgid "Playing music." +msgstr "Lecture." + +#: src/dvd.c:967 +msgid "Music paused." +msgstr "Pause." -#: src/dvd.c:962 +#: src/dvd.c:982 #, c-format msgid "Total selection%s: %d, 2ch: %d" msgstr "Total sélection%s: %d, 2ch: %d" -#: src/dvd.c:963 +#: src/dvd.c:983 msgid "s" msgstr "s" -#: src/dvd.c:969 -msgid "Ce fichier ne peut etre extrait !" -msgstr "Ce fichier ne peut être extrait !" +#: src/dvd.c:989 +msgid "This file can not be ripped !" +msgstr "Ce fichier ne peut pas être rippé !" -#: src/dvd.c:1087 -msgid "Titres" +#: src/dvd.c:1107 +msgid "Titles" msgstr "Titres" -#: src/dvd.c:1111 src/file.c:3373 src/file_mp3ogg.c:943 src/file_tags.c:1175 -#: src/translate.c:332 -msgid "Temps" +#: src/dvd.c:1119 glade/xcfa_win_treeview.glade:112 +#: glade/xcfa_win_treeview.glade:356 glade/xcfa_win_treeview.glade:740 +msgid "Play" +msgstr "Play" + +#: src/dvd.c:1131 src/file.c:3386 src/file_mp3ogg.c:949 src/file_tags.c:1237 +#: glade/xcfa_win_treeview.glade:543 glade/xcfa_win_treeview.glade:944 +#: glade/xcfa_win_treeview.glade:1491 glade/xcfa_win_treeview.glade:1689 +msgid "Time" msgstr "Temps" -#: src/dvd.c:1123 src/translate.c:333 +#: src/dvd.c:1143 glade/xcfa_win_treeview.glade:146 msgid "Format" msgstr "Format" -#: src/dvd.c:1135 src/translate.c:334 -msgid "Choix" +#: src/dvd.c:1155 +msgid "Choice" msgstr "Choix" -#: src/dvd.c:1249 -msgid "Fichier structure DVD" +#: src/dvd.c:1267 +msgid "DVD file structure" msgstr "Fichier structure DVD" -#: src/dvd.c:1299 -msgid "Le DVD est absent du lecteur." -msgstr "Le DVD est absent du lecteur." - -#: src/dvd.c:1335 -msgid "Scan ..." -msgstr "Scan ..." +#: src/dvd.c:1320 +msgid "The DVD player is absent." +msgstr "Player dvd absent" -#: src/dvd.c:1385 -msgid "lsdvd est absent !" +#: src/dvd.c:1410 +msgid "lsdvd is missing !" msgstr "lsdvd est absent !" -#: src/dvd.c:1386 -msgid "Il faut installer le programme: lsdvd" +#: src/dvd.c:1411 +msgid "You must install the program: lsdvd" msgstr "Il faut installer le programme: lsdvd" #: src/dvd_extract.c:412 src/dvd_extract.c:414 -msgid "XCFA: Extraction DVD" -msgstr "XCFA: Extraction DVD" +msgid "XCFA: DVD rip" +msgstr "XCFA: DVD ri" -#: src/dvd_read.c:263 +#: src/dvd_read.c:226 #, c-format -msgid "Titre [%02d ** ]" +msgid "Title [%02d ** ]" msgstr "Titre [%02d ** ]" -#: src/dvd_read.c:266 +#: src/dvd_read.c:227 #, c-format -msgid "Titre [%02d]" +msgid "Title [%02d]" msgstr "Titre [%02d]" -#: src/dvd_read.c:310 +#: src/dvd_read.c:252 #, c-format -msgid "Fichier_complet_%02d_%s" -msgstr "Fichier_complet_%02d_%s" - -#: src/dvd_read.c:355 -#, c-format -msgid "Chapitre: [%02d]" +msgid "Chapter: [%02d]" msgstr "Chapitre: [%02d]" -#: src/dvd_read.c:401 -#, c-format -msgid "Titre_%02d_Chapitre_%02d_audio_%02d_%s" -msgstr "Titre_%02d_Chapitre_%02d_audio_%02d_%s" - #: src/file_action.c:183 src/file_action.c:185 -msgid "XCFA: Traitement fichiers" -msgstr "XCFA: Traitement fichiers" +msgid "XCFA: Processing files" +msgstr "XCFA: Traitement en cours" #: src/file_analyze.c:731 msgid "Package checkmp3 (mp3check) NOT FOUND !" -msgstr "Package checkmp3 (mp3check) NOT FOUND !" +msgstr "Paquets checkmp3 (mp3check) absents !" #: src/file_analyze.c:732 msgid "" -"Veuillez installer checkmp3 ou mp3check pour\n" -"la prise en compte des fichiers mp3" +"Please install or checkmp3 mp3check for\n" +"consideration of mp3 files" msgstr "" "Veuillez installer checkmp3 ou mp3check pour\n" "la prise en compte des fichiers mp3" -#: src/file.c:328 +#: src/file.c:327 #, c-format -msgid "Total fichiers: %d, Selections: %d" +msgid "Total files: %d, Selections: %d" msgstr "Total fichiers: %d, Sélections: %d" -#: src/file.c:442 -msgid "CAPACITE DOSSIER TEMPORAIRE TROP FAIBLE" -msgstr "CAPACITE DOSSIER TEMPORAIRE TROP FAIBLE" - -#: src/file.c:443 -msgid "Pas assez de place dans le dossier temporaire" -msgstr "Pas assez de place dans le dossier temporaire." +#: src/file.c:441 +msgid "TEMPORARY CAPACITY TOO LOW" +msgstr "CAPACITE TEMPORAIRE TROP FAIBLE" + +#: src/file.c:442 src/file.c:2875 +msgid "WARNING: Not enough space available in the temp folder." +msgstr "WARNING: Pas assez d'espace dans le dossier temporaire." -#: src/file.c:449 -msgid "Veuillez deselectionner des PeakGroup." +#: src/file.c:448 +msgid "Please deselect PeakGroup." msgstr "Veuillez déselectionner des PeakGroup." -#: src/file.c:1433 -msgid "Conversion(s) vers la source" +#: src/file.c:1431 +msgid "Conversion(s) to source" msgstr "Conversion(s) vers la source" -#: src/file.c:1434 -msgid "Choix d'une nouvelle destination" -msgstr "Choix d'une nouvelle destination" +#: src/file.c:1432 +msgid "Select a new destination" +msgstr "Sélectionnez une nouvelle destination" -#: src/file.c:1504 +#: src/file.c:1501 msgid "Select type: --" msgstr "Select type: --" -#: src/file.c:1589 +#: src/file.c:1584 msgid "Peak/album" msgstr "Peak/album" -#: src/file.c:1590 +#: src/file.c:1585 msgid "Peak" msgstr "Peak" -#: src/file.c:1591 +#: src/file.c:1586 msgid "Mix (scan)Rms/album" msgstr "Mix (scan)Rms/album" -#: src/file.c:1592 +#: src/file.c:1587 msgid "Fix (scan)Rms" msgstr "Fix (scan)Rms" -#: src/file.c:2851 +#: src/file.c:2834 +msgid "The external ripping program is missing" +msgstr "Le programme d'extraction est absent" + +#: src/file.c:2840 +msgid "(Right click = Menu) / Waiting for Selection. File exists." +msgstr "(Click Droit = Menu) / En sélection. Le fichier existe." + +#: src/file.c:2843 +msgid "(Right click = Menu) / Selected files" +msgstr "(Click Droit = Menu) / En sélection." + +#: src/file.c:2861 #, c-format -msgid "MAX FICHIERS ATTEINT = %d" +msgid "MAX FILES REACHED = %d" msgstr "MAX FICHIERS ATTEINT = %d" -#: src/file.c:2861 -msgid "Normalise: En attente de selection." +#: src/file.c:2871 +msgid "Normalise: Waiting for selection." msgstr "Normalise: En attente de sélection." -#: src/file.c:2865 -msgid "ATTENTION: Pas assez de place dans le dossier temporaire." -msgstr "ATTENTION: Pas assez de place dans le dossier temporaire." - -#: src/file.c:2868 +#: src/file.c:2878 msgid "" -"PEAK-ALBUM: Amplification maximale du volume pour un groupe de fichiers en " -"respectant les ecarts de niveau entre chacun d'eux." +"PEAK-ALBUM: Maximum volume amplification for a group of files according to " +"the deviations in level between them" msgstr "" -"PEAK-ALBUM: Amplification maximale du volume pour un groupe de fichiers en " -"respectant les écarts de niveau entre chacun d'eux." - -#: src/file.c:2872 -msgid "PEAK: Amplification maximale du volume pour chaque de fichier." -msgstr "PEAK: Amplification maximale du volume pour chaque de fichier." +"PEAK-ALBUM: Amplification de volume maximum pour un groupe de fichiers en " +"fonction des écarts de niveau entre eux" -#: src/file.c:2875 +#: src/file.c:2885 msgid "" -"RMS-ALBUM: Ajustement du volume moyen pour un groupe de fichiers en " -"respectant les ecarts de niveau moyen entre chacun d'eux." +"RMS-ALBUM: Adjusting the average volume for a group of files according to " +"the average level of deviation between them." msgstr "" -"RMS-ALBUM: Ajustement du volume moyen pour un groupe de fichiers en " -"respectant les écarts de niveau moyen entre chacun d'eux." +"RMS-ALBUM: Réglage du volume moyen d'un groupe de fichiers en fonction du " +"niveau moyen de déviation entre eux." -#: src/file.c:2878 -msgid "RMS: Ajustement du volume moyen de chaque de fichier." -msgstr "RMS: Ajustement du volume moyen de chaque de fichier." +#: src/file.c:2888 +msgid "RMS: Average volume amplification of each file." +msgstr "RMS: Amplification du volume moyen de chaque fichier." -#: src/file.c:2892 -msgid "(Click Droit = Menu) / ReplayGain: En attente de selection." +#: src/file.c:2902 +msgid "(Right Click = Menu) / ReplayGain: Waiting for selection." msgstr "(Click Droit = Menu) / ReplayGain: En attente de sélection." -#: src/file.c:2895 -msgid "(Click Droit = Menu) / Mode piste." +#: src/file.c:2905 +msgid "(Right Click = Menu) / Track mode." msgstr "(Click Droit = Menu) / Mode piste" -#: src/file.c:2898 -msgid "(Click Droit = Menu) / Mode album." +#: src/file.c:2908 +msgid "(Right Click = Menu) / Album mode." msgstr "(Click Droit = Menu) / Mode album." -#: src/file.c:2901 -msgid "(Click Droit = Menu) / Mode effacer." -msgstr "(Click Droit = Menu) / Mode effacer." +#: src/file.c:2911 +msgid "(Right Click = Menu) / Erase mode." +msgstr "(Click Droit = Menu) / En sélection." -#: src/file.c:3013 +#: src/file.c:3026 msgid "" -"(Click Droit = Menu) / Cliquez ici pour envoyer ce fichier apres traitement " -"a la corbeille" -msgstr "" -"(Click Droit = Menu) / Cliquez ici pour envoyer ce fichier après traitement " -"à la corbeille" +"(Click Droit = Menu) / Click here to send the processed file to the trash" +msgstr "(Click Droit = Menu) / Choix du codage en nombre de bits" -#: src/file.c:3016 +#: src/file.c:3029 msgid "" -"(Click Droit = Menu) / Ce fichier sera dirige apres traitement vers la " -"corbeille" +"(Right Click = Menu) / This file will be sent to the trash after processing" msgstr "" -"(Click Droit = Menu) / Ce fichier sera dirigé apres traitement vers la " -"corbeille" +"(Click Droit = Menu) / Ce fichier sera envoyé à la poubelle après traitement" -#: src/file.c:3150 src/file_trash.c:359 src/translate.c:362 +#: src/file.c:3163 src/file_trash.c:208 glade/xcfa_win_treeview.glade:757 msgid "Trash" -msgstr "Trash" +msgstr "Poubelle" -#: src/file.c:3170 src/file_mp3ogg.c:883 src/file_tags.c:1160 -#: src/translate.c:363 src/translate.c:394 src/translate.c:405 +#: src/file.c:3183 src/file_mp3ogg.c:889 src/file_tags.c:1222 +#: glade/xcfa_win_treeview.glade:774 glade/xcfa_win_treeview.glade:1423 +#: glade/xcfa_win_treeview.glade:1672 msgid "Type" msgstr "Type" -#: src/file.c:3409 -msgid "ReplayGain" -msgstr "ReplayGain" - -#: src/file_conv.c:1187 src/file_mp3ogg_conv.c:336 -msgid "Erreur depuis MPLAYER !" +#: src/file_conv.c:1187 +msgid "Error since MPLAYER !" msgstr "Erreur depuis MPLAYER !" #: src/file_conv.c:1188 src/file_conv.c:1200 src/file_mp3ogg_conv.c:337 #: src/file_mp3ogg_conv.c:349 -msgid "Vous pouvez activer XCFA en ligne de commande avec: " -msgstr "Vous pouvez activer XCFA en ligne de commande avec: " +msgid "You can enable XCFA command line with: " +msgstr "Vous pouvez activer XCFA en ligne de commande avec:" #: src/file_conv.c:1190 src/file_conv.c:1202 src/file_mp3ogg_conv.c:339 #: src/file_mp3ogg_conv.c:351 @@ -554,361 +490,361 @@ msgstr "$ xcfa -verbose" #: src/file_conv.c:1192 src/file_mp3ogg_conv.c:341 -msgid "pour consulter le type d'erreur renvoye par mplayer." +msgid "to see the type of error returned by mplayer." msgstr "pour consulter le type d'erreur renvoyé par mplayer." -#: src/file_conv.c:1199 src/file_mp3ogg_conv.c:348 -msgid "Erreur depuis SOX !" +#: src/file_conv.c:1199 +msgid "Error since SOX !" msgstr "Erreur depuis SOX !" #: src/file_conv.c:1204 src/file_mp3ogg_conv.c:353 -msgid "pour consulter le type d'erreur renvoye par sox." +msgid "to see the type of error returned by sox." msgstr "pour consulter le type d'erreur renvoyé par sox." -#: src/file_mp3ogg.c:668 -msgid "Click droit: acces popup" +#: src/file_mp3ogg.c:670 +msgid "Right click: access popup" msgstr "Click droit: accès popup" -#: src/file_mp3ogg.c:899 src/translate.c:395 -msgid "Bitrate" -msgstr "Bitrate" - -#: src/file_mp3ogg.c:915 -msgid "Nouveau bitrate" -msgstr "Nouveau bitrate" +#: src/file_mp3ogg.c:921 +msgid "New bitrate" +msgstr "Nouveau Bitrate" -#: src/file_mp3ogg.c:929 -msgid "Taille" +#: src/file_mp3ogg.c:935 glade/xcfa_win_treeview.glade:1474 +msgid "Size" msgstr "Taille" #: src/file_mp3ogg_conv.c:329 src/file_mp3ogg_conv.c:331 -msgid "XCFA: Modification bitrate" -msgstr "XCFA: Modification bitrate" +msgid "XCFA: Bitrate change" +msgstr "XCFA: Traitement fichiers" + +#: src/file_mp3ogg_conv.c:336 +msgid "Error from MPLAYER !" +msgstr "Erreur depuis MPLAYER !" + +#: src/file_mp3ogg_conv.c:348 +msgid "Error from SOX !" +msgstr "Erreur depuis SOX !" #: src/file_mp3ogg_conv.c:432 #, c-format -msgid " ATTENTION: Il faut installer %s%s%s" +msgid " WARNING : you need to install %s%s%s" msgstr " ATTENTION: Il faut installer %s%s%s" #: src/file_mp3ogg_conv.c:440 #, c-format -msgid " ATTENTION: Il faut installer %s%s" +msgid " WARNING : you need to install %s%s" msgstr " ATTENTION: Il faut installer %s%s" #: src/file_mp3ogg_conv.c:447 #, c-format -msgid " ATTENTION: Il faut installer %s" +msgid " WARNING : you need to install %s" msgstr " ATTENTION: Il faut installer %s" #: src/file_mp3ogg_conv.c:454 msgid "Package NOT FOUND !" -msgstr "Package NOT FOUND !" +msgstr "Paquet absent !" #: src/fileselect.c:105 -msgid "Choix d'un dossier de destination" +msgid "Choosing a destination folder" msgstr "Choix d'un dossier de destination" #: src/fileselect.c:106 -msgid "Choix d'un fichier CUE WAV FLAC OGG MP3 APE WMA" +msgid "Choosing a file CUE WAV FLAC OGG MP3 APE WMA" msgstr "Choix de fichiers CUE WAV FLAC OGG MP3 APE WMA" #: src/fileselect.c:107 -msgid "Choix d'un fichier musical" +msgid "Choosing a file musical" msgstr "Choix d'un fichier musical" -#: src/fileselect.c:108 -msgid "Choix d'un fichier" -msgstr "Choix d'un fichier" - -#: src/fileselect.c:109 -msgid "Choix de fichiers" -msgstr "Choix de fichiers" +#: src/fileselect.c:108 src/fileselect.c:109 +msgid "Choosing a file" +msgstr "Choisir un fichier" #: src/fileselect.c:110 -msgid "Choix de fichiers WAV" -msgstr "Choix de fichiers WAV" +msgid "Choosing a WAV file" +msgstr "Choisir un fichier WAV" #: src/fileselect.c:111 -msgid "Choix de fichiers MP3/OGG" -msgstr "Choix de fichiers MP3/OGG" +msgid "Choosing a MP3 OGG file" +msgstr "Choisir un fichier MP3 OGG" #: src/fileselect.c:112 -msgid "Choix de fichiers FLAC MPC OGG MP3" +msgid "Choosing a FLAC MPC OGG MP3 file" msgstr "Choix de fichiers FLAC MPC OGG MP3" #: src/fileselect.c:113 -msgid "Importer des images pour la pochette" -msgstr "Importer des images pour la pochette" +msgid "Import pictures for the cover" +msgstr "Importer des images pour la couverture" #: src/fileselect.c:114 -msgid "Choix d'un chemin de stockage des images" -msgstr "Choix d'un chemin de stockage des images" +msgid "Choosing an Image Storage path" +msgstr "Choisir un chemin stockage de l'image" #: src/fileselect.c:115 -msgid "Choix d'un lieu de sauvegarde" -msgstr "Choix d'un lieu de sauvegarde" +msgid "Choosing a place for backup" +msgstr "Choisir un lieu pour la sauvegarde" + +#: src/fileselect.c:396 src/fileselect.c:415 src/fileselect.c:703 +msgid "Cancel" +msgstr "Abandon" + +#: src/fileselect.c:398 src/fileselect.c:417 src/fileselect.c:705 +msgid "Open" +msgstr "Ouvrir" -#: src/fileselect.c:472 src/fileselect.c:595 src/fileselect.c:605 -#: src/fileselect.c:628 +#: src/fileselect.c:494 src/fileselect.c:617 src/fileselect.c:627 +#: src/fileselect.c:650 msgid "All Files (*.*)" msgstr "All Files (*.*)" -#: src/file_trash.c:360 +#: src/file_trash.c:211 msgid "Trash files ..." msgstr "Trash files ..." -#: src/file_wav.c:483 -msgid "(Click Droit = Menu) / Choix de la frequence" +#: src/file_wav.c:485 +msgid "(Right Click = Menu) / Select frequency" msgstr "(Click Droit = Menu) / Normalise: En attente de sélection." -#: src/file_wav.c:486 -msgid "(Click Droit = Menu) / Choix du nombre de pistes (voies)" -msgstr "(Click Droit = Menu) / Choix du nombre de pistes (voies)" +#: src/file_wav.c:488 +msgid "(Right Click = Menu) / Select number of tracks (channels)" +msgstr "(Click Droit = Menu) / Sélection du nombre de pistes" -#: src/file_wav.c:489 -msgid "(Click Droit = Menu) / Choix du codage en nombre de bits" -msgstr "(Click Droit = Menu) / Choix du codage en nombre de bits" +#: src/file_wav.c:491 +msgid "(Right Click = Menu) / Encoding selection in number of bits" +msgstr "(Click Droit = Menu) / En sélection. Le fichier existe." -#: src/file_wav.c:733 -msgid "Frequence" +#: src/file_wav.c:739 +msgid "Frequency" msgstr "Fréquence" -#: src/file_wav.c:749 -msgid "FREQUENCE" +#: src/file_wav.c:755 +msgid "FREQUENCY" msgstr "FREQUENCE" -#: src/file_wav.c:763 -msgid "Piste" +#: src/file_wav.c:769 +msgid "Track" msgstr "Piste" -#: src/file_wav.c:779 -msgid "PISTE" +#: src/file_wav.c:785 +msgid "TRACK" msgstr "PISTE" -#: src/file_wav.c:793 +#: src/file_wav.c:799 msgid "Quantification" msgstr "Quantification" -#: src/file_wav.c:809 +#: src/file_wav.c:815 msgid "QUANTIFICATION" msgstr "QUANTIFICATION" #: src/file_wav_conv.c:261 #, c-format -msgid "%s Copie fichier: %d%%" +msgid "%s Copy file: %d%%" msgstr "%s Copie fichier: %d%%" #: src/file_wav_conv.c:271 #, c-format -msgid "%s Restitution fichier: %d%%" +msgid "%s Return file: %d%%" msgstr "%s Restitution fichier: %d%%" #: src/file_wav_conv.c:281 #, c-format -msgid "%s Traitement Sox: %d%%" +msgid "%s Use Sox: %d%%" msgstr "%s Traitement Sox: %d%%" #: src/file_wav_conv.c:298 #, c-format -msgid "%s Traitement Mplayer: %d%%" +msgid "%s Use Mplayer: %d%%" msgstr "%s Traitement Mplayer: %d%%" #: src/file_wav_conv.c:343 src/file_wav_conv.c:345 msgid "XCFA: Conversions WAV TO WAV" msgstr "XCFA: Conversions WAV TO WAV" -#: src/main.c:398 -msgid "= Adressage memoire invalide\n" -msgstr "= Adressage mémoire invalide\n" - -#: src/main.c:401 -msgid "= Vous avez probablement trouve un bug dans XCFA\n" -msgstr "= Vous avez probablement trouvé un bug dans XCFA\n" - -#: src/main.c:786 -msgid "MODE ADMINISTRATEUR" +#: src/main.c:775 +msgid "ADMINISTRATOR MODE" msgstr "MODE ADMINISTRATEUR" -#: src/main.c:788 -msgid " Vous ne devriez pas utiliser " +#: src/main.c:777 +msgid " You should not use " msgstr " Vous ne devriez pas utiliser " -#: src/main.c:790 -msgid " XCFA sous ROOT !" +#: src/main.c:779 +msgid " XCFA under ROOT !" msgstr " XCFA sous ROOT !" -#: src/options.c:171 -msgid "ERREUR: Lieu de stockage non autorise !" -msgstr "ERREUR: Lieu de stockage non autorisé !" +#: src/options.c:169 +msgid "ERROR : storage location not permitted !" +msgstr "ERREUR: lieu de stockage non autorisé !" -#: src/options.c:172 -msgid "Veuillez recommencer." +#: src/options.c:170 +msgid "Please start again." msgstr "Veuillez recommencer." #: src/options_cd.c:122 -msgid "Pour evaluer les templates, vous devez activer une lecture de cdaudio" -msgstr "Pour évaluer les templates, vous devez activer une lecture de cdaudio" +msgid "To assess the templates, you must enable a reading cdaudio" +msgstr "Pour évaluer les modèles, vous devez activer une lecture du cd audio" -#: src/options_faac.c:96 +#: src/options_faac.c:94 msgid "Transport Stream (ADTS) - Extension .aac" msgstr "Transport Stream (ADTS) - Extension .aac" -#: src/options_faac.c:97 +#: src/options_faac.c:95 msgid "MPEG-4 File Format (MP4) - Extension .m4a" msgstr "MPEG-4 File Format (MP4) - Extension .m4a" -#: src/options_flac.c:67 -msgid "0 (Rapide)" +#: src/options_flac.c:65 +msgid "0 (Fast)" msgstr "0 (Rapide)" -#: src/options_flac.c:75 -msgid "8 (Lent)" +#: src/options_flac.c:73 +msgid "8 (Low)" msgstr "8 (Lent)" -#: src/options_mp3.c:279 -msgid "V0 (meilleure qualite)" +#: src/options_mp3.c:276 +msgid "V0 (Best quality)" msgstr "V0 (meilleure qualité)" -#: src/options_mp3.c:288 -msgid "V9 (moins bonne qualite)" +#: src/options_mp3.c:285 +msgid "V9 (Poor quality)" msgstr "V9 (moins bonne qualité)" -#: src/options_musepack.c:70 +#: src/options_musepack.c:68 msgid "telephone: lowest quality : 32 .. 48 kbit/s" msgstr "telephone: lowest quality : 32 .. 48 kbit/s" -#: src/options_musepack.c:71 +#: src/options_musepack.c:69 msgid "thumb : low quality/internet : 58 .. 86 kbit/s" msgstr "thumb : low quality/internet : 58 .. 86 kbit/s" -#: src/options_musepack.c:72 +#: src/options_musepack.c:70 msgid "radio : medium (MP3) quality : 112 .. 152 kbit/s" msgstr "radio : medium (MP3) quality : 112 .. 152 kbit/s" -#: src/options_musepack.c:73 +#: src/options_musepack.c:71 msgid "standard : high quality (dflt) : 142 .. 184 kbit/s" msgstr "standard : high quality (dflt) : 142 .. 184 kbit/s" -#: src/options_musepack.c:74 +#: src/options_musepack.c:72 msgid "xtreme : extreme high quality : 168 .. 212 kbit/s" msgstr "xtreme : extreme high quality : 168 .. 212 kbit/s" -#: src/options_musepack.c:75 +#: src/options_musepack.c:73 msgid "insane : extreme high quality : 232 .. 268 kbit/s" msgstr "insane : extreme high quality : 232 .. 268 kbit/s" -#: src/options_musepack.c:76 +#: src/options_musepack.c:74 msgid "braindead : extreme high quality : 232 .. 278 kbit/s" msgstr "braindead : extreme high quality : 232 .. 278 kbit/s" -#: src/options_oggenc.c:138 -msgid "Qualite -1 (Moins bonne qualite)" +#: src/options_oggenc.c:137 +msgid "Quality -1 (Poor quality)" msgstr "Qualité -1 (Moins bonne qualité)" -#: src/options_oggenc.c:139 src/popup.c:1219 -msgid "Qualite 0" +#: src/options_oggenc.c:138 src/popup.c:1294 +msgid "Quality 0" msgstr "Qualité 0" -#: src/options_oggenc.c:140 src/popup.c:1219 -msgid "Qualite 1" -msgstr "Qualité 1" +#: src/options_oggenc.c:139 src/popup.c:1294 +msgid "Quality 1" +msgstr "Qualité -1 (Moins bonne qualité)" -#: src/options_oggenc.c:141 src/popup.c:1219 -msgid "Qualite 2" +#: src/options_oggenc.c:140 src/popup.c:1294 +msgid "Quality 2" msgstr "Qualité 2" -#: src/options_oggenc.c:142 -msgid "Qualite 3" +#: src/options_oggenc.c:141 +msgid "Quality 3" msgstr "Qualité 3" -#: src/options_oggenc.c:143 src/popup.c:1220 -msgid "Qualite 4" +#: src/options_oggenc.c:142 src/popup.c:1295 +msgid "Quality 4" msgstr "Qualité 4" -#: src/options_oggenc.c:144 src/popup.c:1220 -msgid "Qualite 5" +#: src/options_oggenc.c:143 src/popup.c:1295 +msgid "Quality 5" msgstr "Qualité 5" -#: src/options_oggenc.c:145 src/popup.c:1220 -msgid "Qualite 6" +#: src/options_oggenc.c:144 src/popup.c:1295 +msgid "Quality 6" msgstr "Qualité 6" -#: src/options_oggenc.c:146 src/popup.c:1220 -msgid "Qualite 7" +#: src/options_oggenc.c:145 src/popup.c:1295 +msgid "Quality 7" msgstr "Qualité 7" -#: src/options_oggenc.c:147 src/popup.c:1221 -msgid "Qualite 8" +#: src/options_oggenc.c:146 src/popup.c:1296 +msgid "Quality 8" msgstr "Qualité 8" -#: src/options_oggenc.c:148 src/popup.c:1221 -msgid "Qualite 9" +#: src/options_oggenc.c:147 src/popup.c:1296 +msgid "Quality 9" msgstr "Qualité 9" -#: src/options_oggenc.c:149 -msgid "Qualite 10 (Meilleure qualite)" +#: src/options_oggenc.c:148 +msgid "Quality 10 (Best quality)" msgstr "Qualité 10 (Meilleure qualité)" -#: src/options_oggenc.c:179 src/options_wavpack.c:181 -#: src/options_wavpack.c:204 src/options_wavpack.c:227 src/popup.c:1223 -msgid "Oui" +#: src/options_oggenc.c:176 src/options_wavpack.c:173 +#: src/options_wavpack.c:194 src/options_wavpack.c:215 src/popup.c:1298 +msgid "Yes" msgstr "Oui" -#: src/options_oggenc.c:180 src/options_wavpack.c:148 -#: src/options_wavpack.c:180 src/options_wavpack.c:203 -#: src/options_wavpack.c:226 src/options_wavpack.c:247 src/popup.c:1223 -msgid "Non" +#: src/options_oggenc.c:177 src/options_wavpack.c:142 +#: src/options_wavpack.c:172 src/options_wavpack.c:193 +#: src/options_wavpack.c:214 src/options_wavpack.c:233 src/popup.c:1298 +msgid "No" msgstr "Non" -#: src/options_oggenc.c:201 -msgid "Mono force" -msgstr "Mono forcé" +#: src/options_oggenc.c:196 +msgid "Force mono" +msgstr "Force mono" -#: src/options_oggenc.c:202 +#: src/options_oggenc.c:197 msgid "Stereo" msgstr "Stéréo" +#: src/options_wavpack.c:98 +msgid "Standard" +msgstr "Standard" + +#: src/options_wavpack.c:99 +msgid "Fast (Faster encode and decode)" +msgstr "Fast (Faster encode and decode)" + #: src/options_wavpack.c:100 -msgid "Mode normal" -msgstr "Mode normal" +msgid "High quality (Better compression ratio)" +msgstr "Haute qualité (Bonne qualité de compression)" #: src/options_wavpack.c:101 -msgid "Mode rapide de compression" -msgstr "Mode rapide de compression" +msgid "Very high quality (Best compression but slowest)" +msgstr "Very high quality (Best compression but slowest)" -#: src/options_wavpack.c:102 -msgid "Bonne qualite de compression" -msgstr "Bonne qualité de compression" - -#: src/options_wavpack.c:103 -msgid "Meilleure qualite de compression" -msgstr "Meilleure qualité de compression" - -#: src/options_wavpack.c:129 +#: src/options_wavpack.c:125 msgid "stereo left/right" msgstr "stereo left/right" -#: src/options_wavpack.c:130 +#: src/options_wavpack.c:126 msgid "stereo mid/side" msgstr "stereo mid/side" -#: src/options_wavpack.c:248 +#: src/options_wavpack.c:234 msgid "1 (fast / rapide)" msgstr "1 (fast / rapide)" -#: src/options_wavpack.c:253 +#: src/options_wavpack.c:239 msgid "6 (very slow / tres lent)" msgstr "6 (very slow / tres lent)" -#: src/play_file.c:108 -msgid "PAS de lecteur audio present" -msgstr "PAS de lecteur audio présent" +#: src/play_file.c:107 +msgid "NO audio player present" +msgstr "Pas de lecteur audio présent" -#: src/play_file.c:109 -msgid "Veuillez installez un lecteur audio." -msgstr "Veuillez installez un lecteur audio." +#: src/play_file.c:108 +msgid "Please install an audio player." +msgstr "Please, install package [ cdparanoia ]" -#: src/poche_dir.c:430 +#: src/poche_dir.c:433 msgid "" "Utilisez le glisser / deplacer - Effacer une image avec Ctrl + " "Click" @@ -916,49 +852,41 @@ "Utilisez le glisser / déplacer - Effacer une image avec Ctrl + " "Click" -#: src/poche_save.c:111 -msgid "Nom de fichier absent !!" +#: src/poche_save.c:117 +msgid "File name not found !!" msgstr "Nom de fichier absent !!" -#: src/poche_save.c:112 src/poche_web.c:353 src/poche_web.c:375 -msgid "Pour resoudre ce probleme:" +#: src/poche_save.c:118 src/poche_web.c:330 src/poche_web.c:352 +msgid "To solve this problem :" msgstr "Pour résoudre ce problème:" -#: src/poche_save.c:115 -msgid "Saisissez un nom de fichier sans extention" -msgstr "Saisissez un nom de fichier sans extention" - -#: src/poche_save.c:126 -msgid "Sauvegarde aux formats PDF et PostScript" -msgstr "Sauvegarde aux formats PDF et PostScript" - -#: src/poche_save.c:151 -msgid "Sauvegarde au format PNG" -msgstr "Sauvegarde au format PNG" - -#: src/poche_web.c:352 -msgid "Aucun fichier trouve !" -msgstr "Aucun fichier trouvé !" - -#: src/poche_web.c:356 -msgid "Modifiez la chaine de recherche et" -msgstr "Modifiez la chaine de recherche et" - -#: src/poche_web.c:358 src/poche_web.c:380 -msgid "recommencez." -msgstr "recommencez." - -#: src/poche_web.c:374 -msgid "Critere de recherche absent !!" -msgstr "Critère de recherche absent !!" - -#: src/poche_web.c:378 -msgid "Saisissez une chaine de recherche et" -msgstr "Saisissez une chaine de recherche et" - -#: src/poche_web.c:387 -msgid "[Recherche des fichiers images]" -msgstr "[Recherche des fichiers images]" +#: src/poche_save.c:121 +msgid "Enter a file name without extension" +msgstr "Saisir un nom de fichier sans extention" + +#: src/poche_save.c:131 +msgid "Saving to PDF" +msgstr "Sauvegarde vers PDF" + +#: src/poche_web.c:329 +msgid "No file found !" +msgstr "Fichier absent !" + +#: src/poche_web.c:333 src/poche_web.c:355 +msgid "Modify the search parameters and" +msgstr "Modifier les paramètres de recherche et" + +#: src/poche_web.c:335 src/poche_web.c:357 +msgid "start again." +msgstr "recommencer." + +#: src/poche_web.c:351 +msgid "Search criteria away !!" +msgstr "Critère de recherche !!" + +#: src/poche_web.c:369 +msgid "[Search images files]" +msgstr "[Rechercher dans les fichiers images]" #: src/popup.c:81 src/popup.c:100 msgid " Deselection globale" @@ -1029,145 +957,77 @@ msgid " Selection verticale " msgstr " Sélection verticale " -#: src/popup.c:489 -msgid "1 piste" -msgstr "1 piste" - -#: src/popup.c:492 -msgid "2 pistes" -msgstr "2 pistes" - -#: src/popup.c:495 -msgid "4 pistes" -msgstr "4 pistes" - -#: src/popup.c:498 -msgid "6 pistes" -msgstr "6 pistes" - -#: src/popup.c:504 src/popup.c:619 src/popup.c:716 -msgid "Valeur d'origine" -msgstr "Valeur d'origine" - -#: src/popup.c:592 -msgid " 8000 Hertz" -msgstr " 8000 Hertz " - -#: src/popup.c:595 -msgid "22000 Hertz" -msgstr "22000 Hertz" - -#: src/popup.c:598 -msgid "32000 Hertz" -msgstr "32000 Hertz" - -#: src/popup.c:601 -msgid "44056 Hertz" -msgstr "44056 Hertz" - -#: src/popup.c:604 -msgid "44100 Hertz" -msgstr "44100 Hertz" - -#: src/popup.c:607 -msgid "48000 Hertz" -msgstr "48000 Hertz" - -#: src/popup.c:610 -msgid "88200 Hertz" -msgstr "88200 Hertz" - -#: src/popup.c:613 -msgid "96000 Hertz" -msgstr "96000 Hertz" - -#: src/popup.c:698 -msgid " 8 bits" -msgstr " 8 bits" - -#: src/popup.c:701 -msgid "16 bits" -msgstr "16 bits" - -#: src/popup.c:704 -msgid "24 bits" -msgstr "24 bits" - -#: src/popup.c:707 -msgid "32 bits" -msgstr "32 bits" - -#: src/popup.c:710 -msgid "64 bits" -msgstr "64 bits" +#: src/popup.c:504 src/popup.c:619 src/popup.c:715 +msgid "Original value" +msgstr "Valeur originale" #: src/popup.c:765 -msgid "Selecteur suivant" +msgid "Next selector" msgstr "Sélecteur suivant" #: src/popup.c:769 -msgid "Selecteur precedant" -msgstr "Sélecteur precedant" +msgid "Previous selector" +msgstr "Sélecteur précedant" #: src/popup.c:777 -msgid "Supprimer la plage active" +msgid "Delete the active range" msgstr "Supprimer la plage active" -#: src/popup.c:849 -msgid "Retourner horizontalement" -msgstr "Retourner horizontalement" - -#: src/popup.c:853 -msgid "Retourner verticalement" -msgstr "Retourner verticalement" - -#: src/popup.c:861 -msgid "Image au premier plan" -msgstr "Image au premier plan" +#: src/popup.c:850 +msgid "Flip Horizontal" +msgstr "Retournement horizontale" + +#: src/popup.c:854 +msgid "Flip Vertical" +msgstr "Retournement Vertical" + +#: src/popup.c:862 +msgid "Foreground image" +msgstr "Image de premier plan" -#: src/popup.c:865 -msgid "Image au dessus" +#: src/popup.c:866 +msgid "Image above" msgstr "Image au dessus" -#: src/popup.c:869 -msgid "Image en dessous" +#: src/popup.c:870 +msgid "Image below" msgstr "Image en dessous" -#: src/popup.c:873 -msgid "Image au dernier plan" -msgstr "Image au dernier plan" +#: src/popup.c:874 +msgid "Image to the background" +msgstr "Image pour l'arrière-plan" -#: src/popup.c:881 -msgid "Effacer l'image" +#: src/popup.c:882 +msgid "Clear image" msgstr "Effacer l'image" -#: src/popup.c:918 -msgid "Supprimer l'image de la liste" -msgstr "Supprimer l'image de la liste" - -#: src/popup.c:1036 -msgid "V0 [ meilleure qualite ]" -msgstr "V0 [ meilleure qualité ]" +#: src/popup.c:920 +msgid "Remove image from the list" +msgstr "Supprimer l'image" + +#: src/popup.c:1111 +msgid "V0 [ best quality ]" +msgstr "V0 (meilleure qualité)" -#: src/popup.c:1036 src/popup.c:1039 -msgid "V4 [ defaut ]" +#: src/popup.c:1111 src/popup.c:1114 +msgid "V4 [ default ]" msgstr "V4 [ défaut ]" -#: src/popup.c:1036 -msgid "V9 [ moins bonne qualite ]" -msgstr "V9 [ moins bonne qualité ]" - -#: src/popup.c:1219 -msgid "Qualite -1 [ Moins bonne qualite ]" -msgstr "Qualité -1 [ Moins bonne qualité ]" +#: src/popup.c:1111 +msgid "V9 [ Lower quality ]" +msgstr "V9 (moins bonne qualité)" -#: src/popup.c:1220 -msgid "Qualite 3 [ Defaut ]" +#: src/popup.c:1294 +msgid "Quality -1 [ Lower quality ]" +msgstr "Qualité -1 (Moins bonne qualité)" + +#: src/popup.c:1295 +msgid "Quality 3 [ Defaut ]" msgstr "Qualité 3 [ Défaut ]" -#: src/popup.c:1221 -msgid "Qualite 10 [ Meilleure qualite ]" -msgstr "Qualité 10 [ Meilleure qualité ]" +#: src/popup.c:1296 +msgid "Quality 10 [ Best Quality ]" +msgstr "Qualité 10 (Meilleure qualité)" #: src/prg_init.c:85 msgid " Decode ATSC A/52 audio streams" @@ -1258,27 +1118,27 @@ msgstr " WAVPACK Hybrid Lossless Audio Compressor" #: src/prg_init.c:357 -msgid " ... les paquets: deb " +msgid " ... Packets: deb " msgstr " ... les paquets: deb " #: src/prg_init.c:363 -msgid " ... les paquets: tgz " +msgid " ... Packets: tgz " msgstr " ... les paquets: tgz " #: src/prg_init.c:369 -msgid " ... les paquets: fpm " +msgid " ... Packets: fpm " msgstr " ... les paquets: fpm " #: src/prg_init.c:375 -msgid " ... les paquets: rpm " +msgid " ... Packets: rpm " msgstr " ... les paquets: rpm " #: src/prg_init.c:381 -msgid " ... les paquets: pkg.tar.xz " +msgid " ... Packets: pkg.tar.xz " msgstr " ... les paquets: pkg.tar.xz " #: src/prg_init.c:387 -msgid " ... les paquets: ? " +msgid " ... Packets: ? " msgstr " ... les paquets: ? " #: src/prg_init.c:623 @@ -1286,285 +1146,341 @@ msgstr "Status" #: src/prg_init.c:637 -msgid "Paquet" -msgstr "Paquet" +msgid "Packets" +msgstr "Paquets" #: src/prg_init.c:652 msgid "Action" msgstr "Action" #: src/scan.c:259 -msgid "PACKAGE dvd+rw-tools ABSENT" +msgid "PACKAGE dvd+rw-tools is missing" msgstr "PACKAGE dvd+rw-tools ABSENT" #: src/scan.c:260 -msgid "Le package 'dvd+rw-tools' est absent" -msgstr "Le package 'dvd+rw-tools' est absent" +msgid "The package 'imagemagick' is missing" +msgstr "Le paquet 'imagemagick' es tabsent" #: src/scan.c:262 -msgid "de votre systeme !" +msgid "on your system !" msgstr "de votre système !" -#: src/scan.c:264 -msgid "Veuillez l'installer car j'ai besoin de" -msgstr "Veuillez l'installer car j'ai besoin de" +#: src/scan.c:264 src/split.c:438 +msgid "Please install it and resume" +msgstr "Veuillez l'installer et recommencer" #: src/scan.c:266 -msgid "'dvd+rw-mediainfo' pour identifier le(s)" +msgid "'Dvd + rw-mediainfo' to identify the" msgstr "'dvd+rw-mediainfo' pour identifier le(s" #: src/scan.c:268 -msgid "lecteur(s) de cd / dvd." +msgid "reader of cd / dvd." msgstr "lecteur(s) de cd / dvd." -#: src/split.c:279 +#: src/split.c:297 msgid "" -"Menu: Click droit / Ajout plage: Click bouton centre / Zoom: Ctrl+Scroll" +"Menu: right click / Adding track: Click the center button / Zoom: Ctrl" +"+Scroll" msgstr "" "Menu: Click droit / Ajout plage: Click bouton centre / Zoom: Ctrl" "+Scroll" -#: src/split.c:282 -msgid "Ajout plage: Click bouton centre / Zoom: Ctrl+Scroll" +#: src/split.c:300 +msgid "Adding track: Click the center button / Zoom: Ctrl+Scroll" msgstr "Ajout plage: Click bouton centre / Zoom: Ctrl+Scroll" -#: src/split.c:286 -msgid "" -"Pret pour l'import d'un fichier CUE, WAV, FLAC, OGG, MP3, APE, WMA" +#: src/split.c:304 +msgid "Ready for imports and a CUE file, WAV, FLAC, OGG, MP3, APE, WMA" msgstr "" "Prêt pour l'import d'un fichier CUE, WAV, FLAC, OGG, MP3, APE, WMA" -#: src/split.c:356 src/split.c:385 -msgid "Ce fichier appartient a XCFA" -msgstr "Ce fichier appartient a XCFA" +#: src/split.c:378 src/split.c:407 +msgid "This file belongs XCFA" +msgstr "Ce fichier appartient à XCFA" -#: src/split.c:357 src/split.c:386 -msgid "Selectionnez un autre fichier." +#: src/split.c:379 src/split.c:408 +msgid "Select another file." msgstr "Selectionnez un autre fichier." -#: src/split.c:365 -msgid "Fichier vide" +#: src/split.c:387 +msgid "Empty file" msgstr "Fichier vide" -#: src/split.c:366 -msgid "Le fichier ne contient aucune donnee !!!" -msgstr "Le fichier ne contient aucune donnée !!!" +#: src/split.c:388 +msgid "The file contains no data !!!" +msgstr "Ce fichier ne contient aucune donnée" -#: src/split.c:411 -msgid "Sox et Mplayer absents" +#: src/split.c:433 +msgid "Sox and Mplayer not found" msgstr "Sox et Mplayer absents" -#: src/split.c:412 -msgid "Sox et Mplayer sont absents de votre" -msgstr "Sox et Mplayer sont absents de votre" +#: src/split.c:434 +msgid "Sox et Mplayer are not found" +msgstr "Sox et Mplayer absents" -#: src/split.c:414 -msgid "configuration." +#: src/split.c:436 +msgid "in your configuration." msgstr "configuration." -#: src/split.c:416 -msgid "Veuillez les installer pour pouvoir continuer." -msgstr "Veuillez les installer pour pouvoir continuer." - -#: src/split.c:467 -msgid "Erreur de choix de fichier" -msgstr "Erreur de choix de fichier" - -#: src/split.c:468 -msgid "Veuillez selectionner un fichier de type WAV FLAC MP3 OGG APE" -msgstr "Veuillez sélectionner un fichier de type WAV FLAC MP3 OGG APE" +#: src/split.c:491 +msgid "Error file select" +msgstr "Erreur de lecture !" -#: src/split.c:505 src/split.c:579 -msgid "Mauvais type de fichier" +#: src/split.c:492 +msgid "Please select a file type of MP3 WAV OGG FLAC APE" +msgstr "Veuillez sélectionner un fichier de type MP3 WAV OGG FLAC APE" + +#: src/split.c:530 src/split.c:602 +msgid "Wrong type of file" msgstr "Mauvais type de fichier" -#: src/split.c:506 src/split.c:580 +#: src/split.c:531 src/split.c:603 msgid "" -"Les types de fichiers acceptes\n" -"sont: WAV FLAC MP3 OGG APE WMA CUE" +"File types accepted\n" +"sare: WAV FLAC MP3 OGG APE WMA CUE" msgstr "" "Les types de fichiers acceptés sont\n" "WAV FLAC MP3 OGG APE WMA CUE" -#: src/split_conv.c:313 src/split_conv.c:330 -msgid "Erreur SOX" -msgstr "Erreur SOX" +#: src/split_conv.c:316 src/split_conv.c:333 +msgid "SOX Error" +msgstr "Erreur depuis SOX !" -#: src/split_conv.c:314 src/split_conv.c:331 -msgid "Le programme SOX de votre distribution" +#: src/split_conv.c:317 src/split_conv.c:334 +msgid "The SOX program on your distribution" msgstr "Le programme SOX de votre distribution" -#: src/split_conv.c:316 src/split_conv.c:333 -msgid "a generer une erreur pendant la conversion." +#: src/split_conv.c:319 src/split_conv.c:336 +msgid "has generated an error during conversion." msgstr "a générer une erreur pendant la conversion." #: src/split_cue.c:116 -msgid "Erreur de lecture !" -msgstr "Erreur de lecture !" +msgid "Misreading !" +msgstr "Erreur de lecture" -#: src/split_cue.c:177 src/split_cue.c:187 src/split_cue.c:197 -msgid "Erreur" +#: src/split_cue.c:177 src/split_cue.c:187 src/split_cue.c:196 +msgid "Error" msgstr "Erreur" #: src/split_cue.c:178 -msgid "Aucun fichier de musique associe au cue-file !" -msgstr "Aucun fichier de musique associé au cue-file !" +msgid "No music file associated with the cue-file" +msgstr "Aucune musique associé avec ce fichier cue" #: src/split_cue.c:188 -msgid "Pas de fichier WAV dans le cue-file !" -msgstr "Pas de fichier WAV dans le cue-file !" +msgid "No WAV file in the cue-file" +msgstr "Pas de fichier WAV dans ce fichier cue" -#: src/split_cue.c:198 -msgid "Aucun fichier de musique associe dans le dossier" -msgstr "Aucun fichier de musique associé dans le dossier" +#: src/split_cue.c:197 +msgid "No music file in the folder associated" +msgstr "Aucun fichier de musique dans le dossier associé" -#: src/split_cue.c:200 -msgid "du cue-file" +#: src/split_cue.c:199 +msgid "of cue-file" msgstr "du cue-file" -#: src/split_cue.c:294 -msgid "Erreur de donnees dans le fichier CUE" -msgstr "Erreur de données dans le fichier CUE" +#: src/split_cue.c:293 +msgid "Data errors in the CUE file" +msgstr "Erreurs de données dans le fichier CUE" -#: src/split_cue.c:295 -msgid "La solution est d'importer le fichier de" +#: src/split_cue.c:294 +msgid "The solution is to import the file" msgstr "La solution est d'importer le fichier de" -#: src/split_cue.c:297 -msgid "musique qui sera reconnu et pre-decoupe" -msgstr "musique qui sera reconnu et pré-découpé" - -#: src/split_cue.c:299 -msgid "dans le module Split." -msgstr "dans le module Split." - -#: src/split_cue.c:301 -msgid "Il ne restera qu'a ajuster les plages pour" -msgstr "Il ne restera qu'à ajuster les plages pour" +#: src/split_cue.c:296 +msgid "music that will be recognized and pre-cutting" +msgstr "musique qui va être reconnu et de pré-découpée" + +#: src/split_cue.c:298 +msgid "in the split module." +msgstr "dans le module split." + +#: src/split_cue.c:300 +msgid "We will just adjust to the beaches" +msgstr "Adaptation des plages" -#: src/split_cue.c:303 -msgid "generer un nouveau cue-file ou des decoupes" +#: src/split_cue.c:302 +msgid "generate a new cue-file or cuts" msgstr "générer un nouveau cue-file ou des découpes" -#: src/split_cue.c:305 -msgid "correspondant aux plages." +#: src/split_cue.c:304 +msgid "corresponding to the beaches." msgstr "correspondant aux plages." #: src/split_selector.c:136 -msgid "Suppression pendant la lecture impossible" -msgstr "Suppression pendant la lecture impossible" +msgid "Deleting not during playback" +msgstr "Pas de suppression pendant la lecture" -#: src/split_selector.c:229 src/split_selector.c:235 src/split_selector.c:289 -#: src/split_selector.c:295 src/split_selector.c:352 src/split_selector.c:359 -#: src/split_selector.c:429 src/split_selector.c:435 -msgid "Temps inferieur a 5 secondes entre marqueur et curseur !" +#: src/split_selector.c:231 src/split_selector.c:237 src/split_selector.c:291 +#: src/split_selector.c:297 src/split_selector.c:354 src/split_selector.c:361 +#: src/split_selector.c:431 src/split_selector.c:437 +msgid "Time of less than 5 seconds between marker and cursor !" msgstr "Temps inférieur à 5 secondes entre marqueur et curseur !" -#: src/translate.c:51 -msgid "Fichier" -msgstr "Fichier" +#: src/web.c:173 src/web.c:234 +msgid "No web browser" +msgstr "Pas de navigateur web" + +#: src/web.c:174 src/web.c:235 +msgid "No Web access: no web browser" +msgstr "Pas d'accès Web: pas de navigateur web" + +#: src/web.c:176 src/web.c:237 +msgid "found in your system." +msgstr "trouvées dans votre système." + +#: src/web.c:178 src/web.c:239 +msgid "Please install a web browser." +msgstr "Veuillez installer un navigateur" + +#: src/web.c:188 +msgid "You need to enable web access" +msgstr "Vous avez besoin d'une connexion internet" + +#: src/web.c:249 +msgid "Application is missing." +msgstr "L'application est absente." + +#: src/web.c:250 +msgid "Please install : " +msgstr "Veuillez installer : " + +#: src/win_about.c:124 +msgid " Xcfa on the web" +msgstr " Xcfa sur le web" -#: src/translate.c:52 -msgid "Quitter" +#: src/win_about.c:174 +msgid "" +"\n" +"Au tout debut:\n" +"\n" +"Serres Patrick, Hamann Regis, Fabien Gregis, @Dzef, @alteo_gange, \n" +"@Leonux, @zarer, @Shankarius, @bishop, @Ludo, @Patachonf,\n" +"... ;-)\n" +"\n" +"" +msgstr "" +"\n" +"Au tout début:\n" +"\n" +"Serres Patrick, Hamann Regis, Fabien Gregis, @Dzef, @alteo_gange, \n" +"@Leonux, @zarer, @Shankarius, @bishop, @Ludo, @Patachonf,\n" +"... ;-)\n" +"\n" +"" + +#: src/win_scan.c:170 +msgid "Waiting ..." +msgstr "Veuillez patienter ..." + +#: glade/xcfa.glade:66 glade/xcfa.glade:2533 +msgid "File" +msgstr "Fichiers" + +#: glade/xcfa.glade:75 +msgid "Quit" msgstr "Quitter" -#: src/translate.c:53 -msgid "Outils" +#: glade/xcfa.glade:89 +msgid "Tools" msgstr "Outils" -#: src/translate.c:54 -msgid "Visibilite des champs" +#: glade/xcfa.glade:99 +msgid "Visibility fields" msgstr "Visibilite des champs" -#: src/translate.c:55 -msgid "Aide" +#: glade/xcfa.glade:112 +msgid "Help" msgstr "Aide" -#: src/translate.c:56 -msgid "A propos" +#: glade/xcfa.glade:121 +msgid "About" msgstr "A propos" -#: src/translate.c:57 src/translate.c:67 -msgid "Lecture" -msgstr "Lecture" +#: glade/xcfa.glade:224 +msgid "Read" +msgstr "Lecture " -#: src/translate.c:58 -msgid " Choix du peripherique / Lecture du DVD " +#: glade/xcfa.glade:252 +msgid " Choosing the peripheral / DVD playback " msgstr " Choix du périphérique / Lecture du DVD " -#: src/translate.c:59 src/translate.c:69 src/translate.c:125 -msgid " Destination des fichiers " -msgstr " Destination des fichiers " +#: glade/xcfa.glade:303 glade/xcfa.glade:921 +msgid " File Destination " +msgstr " Fichier de destination " -#: src/translate.c:60 src/translate.c:70 +#: glade/xcfa.glade:359 glade/xcfa.glade:1009 msgid " Eject " msgstr " Eject " -#: src/translate.c:61 src/translate.c:92 -msgid " Normaliser " +#: glade/xcfa.glade:434 +msgid " Normalize " msgstr " Normaliser " -#: src/translate.c:62 -msgid "Deplier" +#: glade/xcfa.glade:494 +msgid "Unfold" msgstr "Déplier" -#: src/translate.c:63 -msgid "Replier" +#: glade/xcfa.glade:548 +msgid "Fold" msgstr "Replier" -#: src/translate.c:64 +#: glade/xcfa.glade:649 msgid " Vers 2CH: Sub / Ambiance " msgstr " Vers 2CH: Sub / Ambiance " -#: src/translate.c:65 src/translate.c:98 -msgid "Extraire" -msgstr "Extraire" +#: glade/xcfa.glade:705 +msgid "Extraction" +msgstr "Extraction" -#: src/translate.c:66 +#: glade/xcfa.glade:756 msgid " DVD " msgstr " DVD " -#: src/translate.c:68 -msgid " Choix du peripherique / Lecture du CD " +#: glade/xcfa.glade:842 +msgid "Lecture" +msgstr "Lecture" + +#: glade/xcfa.glade:870 +msgid " Choosing the peripheral / CD playback " msgstr " Choix du périphérique / Lecture du CD " -#: src/translate.c:71 -msgid "Titre:" +#: glade/xcfa.glade:1065 +msgid "Title:" msgstr "Titre:" -#: src/translate.c:72 +#: glade/xcfa.glade:1077 msgid "Album:" msgstr "Album:" -#: src/translate.c:73 -msgid "Artiste:" +#: glade/xcfa.glade:1089 +msgid "Artist:" msgstr "Artiste:" -#: src/translate.c:74 -msgid " Annee:" +#: glade/xcfa.glade:1101 +msgid "Comment:" +msgstr "Commentaire:" + +#: glade/xcfa.glade:1113 +msgid " Year:" msgstr " Année:" -#: src/translate.c:75 +#: glade/xcfa.glade:1125 msgid " Genre:" msgstr " Genre:" -#: src/translate.c:76 -msgid " Piste:" -msgstr " Piste:" +#: glade/xcfa.glade:1137 +msgid " Track:" +msgstr "Piste:" -#: src/translate.c:77 +#: glade/xcfa.glade:1149 msgid " *.m3u et xspf: " msgstr " *.m3u et xspf: " -#: src/translate.c:78 -msgid "Commentaire:" -msgstr "Commentaire:" - -#: src/translate.c:79 -msgid " Modification des tags Freedb " -msgstr " Modification des tags Freedb " +#: glade/xcfa.glade:1287 +msgid "Editing tags Freedb" +msgstr "Modification des tags Freedb" -#: src/translate.c:80 +#: glade/xcfa.glade:1302 msgid "" "%a [ %a=\"Artist\" ]\n" "\n" @@ -1590,7 +1506,7 @@ "le ou les caractères devant être conservés doivent être précédés par le " "caractère %" -#: src/translate.c:81 +#: glade/xcfa.glade:1312 msgid "" "%a - artiste %b - titre " "de l'album %c - numero de la piste\n" @@ -1610,401 +1526,411 @@ "%u - remplacement de caractères: %u(AB=C) %u( =_) %Tl - Tetsumaki lower" -#: src/translate.c:82 -msgid " Arrangement des titres du CD " +#: glade/xcfa.glade:1346 +msgid " Arrangement of CD titles" msgstr " Arrangement des titres du CD " -#: src/translate.c:83 -msgid "Creation d'un fichier unique au format: " +#: glade/xcfa.glade:1382 +msgid "Creation of a single file format: " msgstr "Création d'un fichier unique au format: " -#: src/translate.c:84 -msgid " et dont le nom sera: " -msgstr " et dont le nom sera: " +#: glade/xcfa.glade:1430 +msgid " and whose name will be: " +msgstr " et dont le nom sera:" -#: src/translate.c:85 -msgid "Ecriture du fichier cue" +#: glade/xcfa.glade:1461 +msgid "Writing the cue file" msgstr "Ecriture du fichier cue" -#: src/translate.c:86 -msgid " Au moins deux selections colonne Wav " +#: glade/xcfa.glade:1484 +msgid " At least two selections column Wav " msgstr " Au moins deux sélections colonne Wav " -#: src/translate.c:87 +#: glade/xcfa.glade:1514 msgid "" -"Creation d'un fichier cue\n" -"unique depuis une lecture\n" -"du cd audio" +"\n" +"Creating a cue file from a single\n" +"reading audio cd\n" msgstr "" -"Création d'un fichier cue\n" -"unique depuis une lecture\n" -"du cd audio" +"\n" +"Création d'un fichier cue depuis\n" +"la lecture du CD Audio\n" -#: src/translate.c:88 -msgid "Creation fichier cue uniquement" -msgstr "Création fichier cue uniquement" +#: glade/xcfa.glade:1562 +msgid "File Creation cue only" +msgstr "Création de fichier cue" -#: src/translate.c:89 +#: glade/xcfa.glade:1597 msgid " Creation Cue cd " msgstr " Création Cue cd " -#: src/translate.c:90 -msgid " Creation d'un fichier unique " -msgstr " Création d'un fichier unique " +#: glade/xcfa.glade:1625 +msgid "  Creation of a single file" +msgstr " Création d'un fichier unique" -#: src/translate.c:91 -msgid "Gestion des tags, titres et fichiers cue" +#: glade/xcfa.glade:1638 +msgid "Management of tags, titles and cue files" msgstr "Gestion des tags, titres et fichiers cue" -#: src/translate.c:93 +#: glade/xcfa.glade:1688 +msgid " normalize " +msgstr " Normaliser " + +#: glade/xcfa.glade:1749 msgid "definit le serveur a contacter pour les recherches titre" msgstr "Définit le serveur à contacter pour les recherches titre" -#: src/translate.c:94 +#: glade/xcfa.glade:1788 msgid "Parametres par defaut" msgstr "Paramètres par défaut" -#: src/translate.c:96 -msgid "Choix parmis les differentes bases de donnees pour le CD." -msgstr "Choix parmis les différentes bases de données pour le CD." - -#: src/translate.c:97 +#: glade/xcfa.glade:1887 msgid "DiscId" msgstr "DiscId" -#: src/translate.c:99 +#: glade/xcfa.glade:1946 +msgid "Extract" +msgstr "Extraction" + +#: glade/xcfa.glade:2053 msgid " CD " msgstr " CD " -#: src/translate.c:100 src/translate.c:124 -msgid " Importer " +#: glade/xcfa.glade:2135 glade/xcfa.glade:3271 +msgid " Import " msgstr " Importer " -#: src/translate.c:101 -msgid " Destination des conversions " +#: glade/xcfa.glade:2190 +msgid " Destination conversions " msgstr " Destination des conversions " -#: src/translate.c:102 -msgid " Nettoyer " -msgstr " Nettoyer " +#: glade/xcfa.glade:2266 +msgid " Clean up " +msgstr " Effacer " -#: src/translate.c:103 src/translate.c:107 +#: glade/xcfa.glade:2389 msgid "Appliquer les modifications" msgstr "Appliquer les modifications" -#: src/translate.c:104 -msgid " Normalise: " +#: glade/xcfa.glade:2444 +msgid " Normalize: " msgstr " Normalise: " -#: src/translate.c:105 -msgid " Choix niveau dBFS: " -msgstr " Choix niveau dBFS: " +#: glade/xcfa.glade:2477 +msgid " Level selection dBFS: " +msgstr " Sélection de niveau dBFS: " -#: src/translate.c:106 src/translate.c:123 -msgid " Fichiers " -msgstr " Fichiers " +#: glade/xcfa.glade:2615 +msgid "Apply changes" +msgstr "Appliquer les modifications" -#: src/translate.c:108 +#: glade/xcfa.glade:2651 msgid " Wav " msgstr " Wav " -#: src/translate.c:109 src/translate.c:121 -msgid "Appliquer" +#: glade/xcfa.glade:2735 +msgid "Apply" msgstr "Appliquer" -#: src/translate.c:110 -msgid "Effacer" -msgstr "Effacer" +#: glade/xcfa.glade:2789 +msgid "Delete" +msgstr "Suppression" -#: src/translate.c:111 +#: glade/xcfa.glade:2826 msgid " Mp3-Ogg " msgstr " Mp3-Ogg " -#: src/translate.c:112 -msgid "Titre:" -msgstr "Titre:" +#: glade/xcfa.glade:2875 +msgid "Title:" +msgstr "Titre" -#: src/translate.c:113 +#: glade/xcfa.glade:2886 msgid "Album:" msgstr "Album:" -#: src/translate.c:114 -msgid "Artiste:" +#: glade/xcfa.glade:2897 +msgid "Artist:" msgstr "Artiste:" -#: src/translate.c:115 -msgid "Commentaire:" +#: glade/xcfa.glade:2908 +msgid "Comment:" msgstr "Commentaire:" -#: src/translate.c:116 -msgid " Annee:" +#: glade/xcfa.glade:2919 +msgid " Year:" msgstr " Année:" -#: src/translate.c:117 +#: glade/xcfa.glade:2930 msgid " Genre:" msgstr " Genre" -#: src/translate.c:118 -msgid " Piste:" -msgstr " Piste:" +#: glade/xcfa.glade:2941 +msgid " Track:" +msgstr "Piste" -#: src/translate.c:119 +#: glade/xcfa.glade:2952 msgid " Modif.:" msgstr " Modif.:" -#: src/translate.c:120 +#: glade/xcfa.glade:3078 msgid "0" msgstr "0" -#: src/translate.c:122 src/translate.c:309 +#: glade/xcfa.glade:3102 +msgid "Apply " +msgstr "Appliquer " + +#: glade/xcfa.glade:3160 glade/xcfa.glade:10210 msgid " Tags " msgstr " Tags " -#: src/translate.c:126 +#: glade/xcfa.glade:3190 +msgid " Files " +msgstr " Fichiers " + +#: glade/xcfa.glade:3322 +msgid "   File Destination " +msgstr " Destination des fichiers " + +#: glade/xcfa.glade:3494 msgid "Lecture de 5 secondes apres le marqueur de debut" msgstr "Lecture de 5 secondes après le marqueur de début" -#: src/translate.c:127 +#: glade/xcfa.glade:3546 msgid "Index de debut" msgstr "Index de début" -#: src/translate.c:128 src/translate.c:135 src/translate.c:138 +#: glade/xcfa.glade:3547 glade/xcfa.glade:3813 glade/xcfa.glade:3874 msgid "00h00m00s" msgstr "00h00m00s" -#: src/translate.c:129 +#: glade/xcfa.glade:3600 msgid "lecture" msgstr "lecture" -#: src/translate.c:130 +#: glade/xcfa.glade:3653 msgid "Pause" msgstr "Pause" -#: src/translate.c:131 +#: glade/xcfa.glade:3712 msgid "Index de lecture" msgstr "Index de lecture" -#: src/translate.c:132 src/translate.c:171 +#: glade/xcfa.glade:3713 glade/xcfa.glade:4767 msgid "label" msgstr "label" -#: src/translate.c:133 +#: glade/xcfa.glade:3760 msgid "Lecture de 5 secondes avant le marqueur de fin" msgstr "Lecture de 5 secondes avant le marqueur de fin" -#: src/translate.c:134 +#: glade/xcfa.glade:3812 msgid "Index de fin" msgstr "Index de fin" -#: src/translate.c:136 +#: glade/xcfa.glade:3860 msgid "Plage" msgstr "Plage" -#: src/translate.c:137 +#: glade/xcfa.glade:3873 msgid "Duree de la plage active" msgstr "Durée de la plage active" -#: src/translate.c:139 +#: glade/xcfa.glade:3955 msgid "Suprimer tous les marqueurs pour les remplacer par un marqueur unique" msgstr "Suprimer tous les marqueurs pour les remplacer par un marqueur unique" -#: src/translate.c:140 +#: glade/xcfa.glade:4044 msgid "Le fichier CUE sera enregistre vers 'Destination des fichiers'." msgstr "Le fichier CUE sera enregistré vers 'Destination des fichiers'." -#: src/translate.c:141 -msgid "Production fichier Cue" +#: glade/xcfa.glade:4073 +msgid "Production Cue file" msgstr "Production fichier Cue" -#: src/translate.c:142 +#: glade/xcfa.glade:4098 msgid "Le resultat du Split sera dirige vers 'Destination des fichiers'." msgstr "Le résultat du Split sera dirigé vers 'Destination des fichiers'." -#: src/translate.c:143 +#: glade/xcfa.glade:4127 msgid "Split" msgstr "Split" -#: src/translate.c:144 +#: glade/xcfa.glade:4188 msgid " Split " msgstr " Split " -#: src/translate.c:145 +#: glade/xcfa.glade:4253 msgid "Importation du titre du CD." msgstr "Importation du titre du CD." -#: src/translate.c:146 -msgid "Titre CD" +#: glade/xcfa.glade:4276 +msgid "Title CD" msgstr "Titre CD" -#: src/translate.c:147 +#: glade/xcfa.glade:4296 msgid "Choix d'une nouvelle police." msgstr "Choix d'une nouvelle police." -#: src/translate.c:148 +#: glade/xcfa.glade:4318 msgid "Texte gras." msgstr "Texte gras." -#: src/translate.c:149 +#: glade/xcfa.glade:4340 msgid "Texte italique." msgstr "Texte italique." -#: src/translate.c:150 -msgid "" -"Apres une lecture de CD et un ajout d'etiquette, ce menu permet la mise en " -"forme des titres, auteurs ..." -msgstr "" -"Après une lecture de CD et un ajout d'étiquette, ce menu permet la mise en " -"forme des titres, auteurs ..." - -#: src/translate.c:151 +#: glade/xcfa.glade:4375 msgid "Ajouter du texte editable." msgstr "Ajouter du texte éditable." -#: src/translate.c:152 -msgid "Texte" +#: glade/xcfa.glade:4430 +msgid "Text" msgstr "Texte" -#: src/translate.c:153 +#: glade/xcfa.glade:4462 msgid "Saisissez ici un critere de recherche d'images." msgstr "Saisissez ici un critère de recherche d'images." -#: src/translate.c:154 +#: glade/xcfa.glade:4484 msgid "Importation des images depuis le Web." msgstr "Importation des images depuis le Web." -#: src/translate.c:155 -msgid "Import images web" +#: glade/xcfa.glade:4509 +msgid "Import web images " msgstr "Import images web" -#: src/translate.c:156 +#: glade/xcfa.glade:4578 msgid "Supprimer l'image en selection" msgstr "Supprimer l'image en sélection" -#: src/translate.c:157 +#: glade/xcfa.glade:4600 msgid "AJouter de nouvelles images." msgstr "Ajouter de nouvelles images." -#: src/translate.c:158 +#: glade/xcfa.glade:4606 msgid "Ouvre un fichier" msgstr "Ouvre un fichier" -#: src/translate.c:159 +#: glade/xcfa.glade:4623 msgid "Enregistrer la page au format png." msgstr "Enregistrer la page au format png." -#: src/translate.c:160 +#: glade/xcfa.glade:4629 msgid "Sauvegarde le fichier" msgstr "Sauvegarde le fichier" -#: src/translate.c:161 +#: glade/xcfa.glade:4646 msgid "Diminution de l'echelle." msgstr "Diminution de l'échelle." -#: src/translate.c:162 +#: glade/xcfa.glade:4652 msgid "Reduit l'agrandissement" msgstr "Reduit l'agrandissement" -#: src/translate.c:163 +#: glade/xcfa.glade:4669 msgid "Echelle a 100%." msgstr "Echelle à 100%." -#: src/translate.c:164 +#: glade/xcfa.glade:4675 msgid "Remet l'echelle a 100%" msgstr "Remet l'echelle à 100%" -#: src/translate.c:165 +#: glade/xcfa.glade:4692 msgid "Augmentation de l'echelle." msgstr "Augmentation de l'échelle." -#: src/translate.c:166 +#: glade/xcfa.glade:4698 msgid "Augmente l'agrandissement" msgstr "Augmente l'agrandissement" -#: src/translate.c:167 +#: glade/xcfa.glade:4715 msgid "Echelle compatible avec la taille de la fenetre." msgstr "Echelle compatible avec la taille de la fenêtre." -#: src/translate.c:168 +#: glade/xcfa.glade:4721 msgid "Adapte l'echelle a la taille de la fenetre" msgstr "Adapte l'échelle a la taille de la fenêtre" -#: src/translate.c:169 +#: glade/xcfa.glade:4738 msgid "Emplacement de sauvegarde des fichiers." msgstr "Emplacement de sauvegarde des fichiers." -#: src/translate.c:170 +#: glade/xcfa.glade:4752 msgid "Nom (sans extention) du fichier a sauvegarder." msgstr "Nom (sans extention) du fichier à sauvegarder." -#: src/translate.c:172 +#: glade/xcfa.glade:4815 msgid " Pochette " msgstr " Pochette " -#: src/translate.c:173 +#: glade/xcfa.glade:4861 msgid "Nice" msgstr "Nice" -#: src/translate.c:174 -msgid " Priorite systeme " +#: glade/xcfa.glade:4896 +msgid " Priority system " msgstr " Priorité système " -#: src/translate.c:175 +#: glade/xcfa.glade:4935 msgid "" -"Indiquez ici le dossier sur votre systeme qui servira de lieu\n" -"de stockage provisoire pendant les differentes conversions.\n" +"\n" +"Enter here the folder on your system that will serve as\n" +"temporary storage for the different conversions.\n" msgstr "" +"\n" "Indiquez ici le dossier sur votre système qui servira de lieu\n" "de stockage provisoire pendant les différentes conversions.\n" -#: src/translate.c:176 -msgid " Dossier provisoire des conversions " +#: glade/xcfa.glade:4971 +msgid " Provisional file conversions " msgstr " Dossier provisoire des conversions " -#: src/translate.c:177 +#: glade/xcfa.glade:5017 msgid "button" msgstr "button" -#: src/translate.c:178 -msgid " Jouer une musique en fin de tache " -msgstr " Jouer une musique en fin de tâche " +#: glade/xcfa.glade:5038 +msgid " Playing a job end music " +msgstr " Jouer une musique de fin de tâche " -#: src/translate.c:179 +#: glade/xcfa.glade:5058 msgid " General " msgstr " Genéral " -#: src/translate.c:180 +#: glade/xcfa.glade:5100 msgid "cdparanoia" msgstr "cdparanoia" -#: src/translate.c:181 +#: glade/xcfa.glade:5120 msgid "cdparanoia mode expert" msgstr "cdparanoia mode expert" -#: src/translate.c:182 +#: glade/xcfa.glade:5140 msgid "cdparanoia mode expert multi passes" msgstr "cdparanoia mode expert multi passes" -#: src/translate.c:183 +#: glade/xcfa.glade:5168 msgid "cdda2wav / icedax" msgstr "cdda2wav / icedax" -#: src/translate.c:184 +#: glade/xcfa.glade:5194 msgid " Extraction cd-audio avec: " msgstr " Extraction cd-audio avec: " -#: src/translate.c:185 +#: glade/xcfa.glade:5268 msgid "HomePage" msgstr "HomePage" -#: src/translate.c:186 +#: glade/xcfa.glade:5323 msgid "ManPage " msgstr "ManPage " -#: src/translate.c:187 +#: glade/xcfa.glade:5352 msgid " Web cdparanoia " msgstr " Web cdparanoia " -#: src/translate.c:188 +#: glade/xcfa.glade:5414 msgid "" "Le fichier LogExpertMode.txt sera cree dans le dossier des " "extractions" @@ -2012,21 +1938,20 @@ "Le fichier LogExpertMode.txt sera créé dans le dossier des " "extractions" -#: src/translate.c:189 -msgid "" -"Generation d'un rapport pour: cdparanoia mode expert multi passes" +#: glade/xcfa.glade:5431 +msgid "Generation of a report for: cdparanoia mode expert multi passes" msgstr "" "Génération d'un rapport pour: cdparanoia mode expert multi passes" -#: src/translate.c:190 +#: glade/xcfa.glade:5467 msgid "" -"%a - artiste %b - titre " +"%a - artist %b - titre " "de l'album %c - numero de la piste\n" "%d - titre de la chanson %e - " -"annee %g - genre\n" +"year %g - genre\n" "%na - no accent %Tl " "- Tetsumaki lower\n" -"%u - remplacement de caracteres: %u(AB=C) %u( =_)" +"%u - replacement characters: %u(AB=C) %u( =_)" msgstr "" "%a - artiste %b - titre " "de l'album %c - numéro de la piste\n" @@ -2036,395 +1961,381 @@ "- Tetsumaki lower\n" "%u - remplacement de caractères: %u(AB=C) %u( =_)" -#: src/translate.c:191 +#: glade/xcfa.glade:5536 msgid " Dossier de stockage " msgstr " Dossier de stockage " -#: src/translate.c:192 +#: glade/xcfa.glade:5567 msgid " CD " msgstr " CD " -#: src/translate.c:193 +#: glade/xcfa.glade:5615 msgid "ABR / CBR / VBR / VBR-NEW" msgstr "ABR / CBR / VBR / VBR-NEW" -#: src/translate.c:194 +#: glade/xcfa.glade:5660 glade/xcfa.glade:6295 msgid "Debit" msgstr "Débit" -#: src/translate.c:195 +#: glade/xcfa.glade:5705 glade/xcfa.glade:6317 msgid "Mode" msgstr "Mode" -#: src/translate.c:196 +#: glade/xcfa.glade:5747 msgid " Lame (fichier mp3): " msgstr " Lame (fichier mp3): " -#: src/translate.c:197 src/translate.c:213 src/translate.c:225 -#: src/translate.c:238 src/translate.c:255 src/translate.c:266 -#: src/translate.c:280 src/translate.c:294 +#: glade/xcfa.glade:5827 glade/xcfa.glade:6466 glade/xcfa.glade:6941 +#: glade/xcfa.glade:7469 glade/xcfa.glade:8200 glade/xcfa.glade:8659 +#: glade/xcfa.glade:9192 glade/xcfa.glade:9753 msgid "Par defaut" msgstr "Par défaut" -#: src/translate.c:198 +#: glade/xcfa.glade:5848 msgid " Options LAME " msgstr " Options LAME " -#: src/translate.c:199 src/translate.c:227 src/translate.c:268 +#: glade/xcfa.glade:5909 glade/xcfa.glade:7023 glade/xcfa.glade:8741 msgid "Site officiel" msgstr "Site officiel" -#: src/translate.c:200 +#: glade/xcfa.glade:5964 msgid "Wiki mp3 " msgstr "Wiki mp3 " -#: src/translate.c:201 +#: glade/xcfa.glade:6020 msgid "Wiki " msgstr "Wiki " -#: src/translate.c:202 +#: glade/xcfa.glade:6076 msgid "ManPage " msgstr "ManPage " -#: src/translate.c:203 +#: glade/xcfa.glade:6105 msgid " Web Lame " msgstr " Web Lame " -#: src/translate.c:204 src/translate.c:218 src/translate.c:231 -#: src/translate.c:242 src/translate.c:260 src/translate.c:271 -#: src/translate.c:286 +#: glade/xcfa.glade:6181 glade/xcfa.glade:6709 glade/xcfa.glade:7238 +#: glade/xcfa.glade:7644 glade/xcfa.glade:8442 glade/xcfa.glade:8901 +#: glade/xcfa.glade:9491 msgid "[" msgstr "[" -#: src/translate.c:205 src/translate.c:219 src/translate.c:232 -#: src/translate.c:243 src/translate.c:261 src/translate.c:272 -#: src/translate.c:287 +#: glade/xcfa.glade:6194 glade/xcfa.glade:6722 glade/xcfa.glade:7251 +#: glade/xcfa.glade:7657 glade/xcfa.glade:8455 glade/xcfa.glade:8914 +#: glade/xcfa.glade:9504 msgid "string option interne" msgstr "string option interne" -#: src/translate.c:206 src/translate.c:220 src/translate.c:233 -#: src/translate.c:244 src/translate.c:262 src/translate.c:273 -#: src/translate.c:288 +#: glade/xcfa.glade:6209 glade/xcfa.glade:6737 glade/xcfa.glade:7266 +#: glade/xcfa.glade:7672 glade/xcfa.glade:8470 glade/xcfa.glade:8929 +#: glade/xcfa.glade:9519 msgid "]" msgstr "]" -#: src/translate.c:207 -msgid "" -" Options experts, definies par l'utilisateur - lame (wav -> mp3) " +#: glade/xcfa.glade:6234 +msgid " Experts options defined by the user- lame (wav -> mp3) " msgstr "" " Options experts, définies par l'utilisateur - lame (wav -> mp3) " -#: src/translate.c:208 +#: glade/xcfa.glade:6254 msgid " Mp3 " msgstr " Mp3 " -#: src/translate.c:209 -msgid " Mode" -msgstr " Mode" - -#: src/translate.c:210 -msgid " Mode flux (streaming)" -msgstr " Mode flux (streaming)" - -#: src/translate.c:211 -msgid " Debit" -msgstr " Débit" +#: glade/xcfa.glade:6306 +msgid "Mode flux (streaming)" +msgstr "Mode flux (streaming)" -#: src/translate.c:212 +#: glade/xcfa.glade:6386 msgid " Oggenc (fichier ogg): " msgstr " Oggenc (fichier ogg): " -#: src/translate.c:214 +#: glade/xcfa.glade:6487 msgid " Options OGGENC " msgstr " Options OGGENC " -#: src/translate.c:215 +#: glade/xcfa.glade:6548 msgid "Wiki " msgstr "Wiki " -#: src/translate.c:216 src/translate.c:258 src/translate.c:284 -#: src/translate.c:298 +#: glade/xcfa.glade:6604 glade/xcfa.glade:8337 glade/xcfa.glade:9386 +#: glade/xcfa.glade:9947 msgid "ManPage" msgstr "ManPage" -#: src/translate.c:217 +#: glade/xcfa.glade:6633 msgid " Web Oggenc " msgstr " Web Oggenc " -#: src/translate.c:221 -msgid "" -" Options experts, definies par l'utilisateur - oggenc (wav -> ogg) " +#: glade/xcfa.glade:6762 +msgid " Experts options defined by the user - oggenc (wav -> ogg) " msgstr "" " Options experts, définies par l'utilisateur - oggenc (wav -> ogg) " -#: src/translate.c:222 +#: glade/xcfa.glade:6782 msgid " Oggenc " msgstr " Oggenc " -#: src/translate.c:223 +#: glade/xcfa.glade:6824 msgid "Taux de compression" msgstr "Taux de compression" -#: src/translate.c:224 +#: glade/xcfa.glade:6861 msgid " Flac (fichier flac): " msgstr " Flac (fichier flac): " -#: src/translate.c:226 +#: glade/xcfa.glade:6962 msgid " Options FLAC " msgstr " Options FLAC " -#: src/translate.c:228 src/translate.c:269 +#: glade/xcfa.glade:7078 glade/xcfa.glade:8796 msgid "Framasoft " msgstr "Framasoft " -#: src/translate.c:229 +#: glade/xcfa.glade:7133 msgid "ManPage " msgstr "ManPage " -#: src/translate.c:230 +#: glade/xcfa.glade:7162 msgid " Web Flac " msgstr " Web Flac " -#: src/translate.c:234 -msgid "" -" Options experts, definies par l'utilisateur - flac (wav -> flac) " +#: glade/xcfa.glade:7291 +msgid " Experts options defined by the user- flac (wav -> flac) " msgstr "" " Options experts, définies par l'utilisateur - flac (wav -> flac) " -#: src/translate.c:235 +#: glade/xcfa.glade:7311 msgid " Flac " msgstr " Flac " -#: src/translate.c:236 +#: glade/xcfa.glade:7353 msgid " Qualite" msgstr " Qualité" -#: src/translate.c:237 +#: glade/xcfa.glade:7389 msgid " Mac (fichier ape): " msgstr " Mac (fichier ape): " -#: src/translate.c:239 +#: glade/xcfa.glade:7490 msgid " Options MAC " msgstr " Options MAC " -#: src/translate.c:240 +#: glade/xcfa.glade:7546 msgid "Wiki" msgstr "Wiki" -#: src/translate.c:241 +#: glade/xcfa.glade:7568 msgid " Web Mac " msgstr " Web Mac " -#: src/translate.c:245 -msgid " Options experts, definies par l'utilisateur - mac (wav -> ape) " +#: glade/xcfa.glade:7697 +msgid " Experts options defined by the user - mac (wav -> ape) " msgstr "" " Options experts, définies par l'utilisateur - mac (wav -> ape) " -#: src/translate.c:246 +#: glade/xcfa.glade:7717 msgid " Mac " msgstr " Mac " -#: src/translate.c:247 +#: glade/xcfa.glade:7765 msgid "Compression" msgstr "Compression" -#: src/translate.c:248 +#: glade/xcfa.glade:7817 msgid "Son" msgstr "Son" -#: src/translate.c:249 +#: glade/xcfa.glade:7869 msgid "Mode hybride" msgstr "Mode hybride" -#: src/translate.c:250 +#: glade/xcfa.glade:7921 msgid "Fichier de correction" msgstr "Fichier de correction" -#: src/translate.c:251 +#: glade/xcfa.glade:7973 msgid "Compression maximum" msgstr "Compression maximum" -#: src/translate.c:252 +#: glade/xcfa.glade:8025 msgid "Signature MD5" msgstr "Signature MD5" -#: src/translate.c:253 +#: glade/xcfa.glade:8077 msgid "Extra encode processing" msgstr "Extra encode processing" -#: src/translate.c:254 +#: glade/xcfa.glade:8120 msgid " WavPack (fichier wv): " msgstr " WavPack (fichier wv): " -#: src/translate.c:256 +#: glade/xcfa.glade:8221 msgid " Options WAVPACK " msgstr " Options WAVPACK " -#: src/translate.c:257 +#: glade/xcfa.glade:8282 msgid "Wiki " msgstr "Wiki " -#: src/translate.c:259 +#: glade/xcfa.glade:8366 msgid " Web Wavpack " msgstr " Web Wavpack " -#: src/translate.c:263 -msgid "" -" Options experts, definies par l'utilisateur - wavpack (wav -> wv) " +#: glade/xcfa.glade:8495 +msgid " Experts options defined by the user - wavpack (wav -> wv) " msgstr "" " Options experts, définies par l'utilisateur - wavpack (wav -> wv) " -#: src/translate.c:264 +#: glade/xcfa.glade:8515 msgid " Wavpack " msgstr " Wavpack " -#: src/translate.c:265 +#: glade/xcfa.glade:8579 msgid " MusePack (fichier mpc): " msgstr " MusePack (fichier mpc): " -#: src/translate.c:267 +#: glade/xcfa.glade:8680 msgid " Options MUSEPACK " msgstr " Options MUSEPACK " -#: src/translate.c:270 +#: glade/xcfa.glade:8825 msgid " Web Musepack " msgstr " Web Musepack " -#: src/translate.c:274 -msgid "" -" Options experts, definies par l'utilisateur - musepack (wav -> mpc) " +#: glade/xcfa.glade:8954 +msgid " Experts options defined by the user- musepack (wav -> mpc) " msgstr "" " Options experts, définies par l'utilisateur - musepack (wav -> mpc) " -#: src/translate.c:275 +#: glade/xcfa.glade:8974 msgid " Musepack " msgstr " Musepack " -#: src/translate.c:276 -msgid " Qualite VBR / Debit ABR" -msgstr " Qualité VBR / Débit ABR" - -#: src/translate.c:277 -msgid " VBR / ABR" -msgstr " VBR / ABR" - -#: src/translate.c:278 -msgid " Conteneur" -msgstr " Conteneur" +#: glade/xcfa.glade:9016 +msgid "Conteneur" +msgstr "Conteneur" + +#: glade/xcfa.glade:9027 +msgid "VBR / ABR" +msgstr "VBR / ABR" + +#: glade/xcfa.glade:9038 +msgid "Qualite VBR / Debit ABR" +msgstr "Qualite VBR / Debit ABR" -#: src/translate.c:279 +#: glade/xcfa.glade:9112 msgid " Faac (fichier .m4a): " msgstr " Faac (fichier .m4a): " -#: src/translate.c:281 +#: glade/xcfa.glade:9213 msgid " Options FAAC " msgstr " Options FAAC " -#: src/translate.c:282 src/translate.c:296 +#: glade/xcfa.glade:9274 glade/xcfa.glade:9835 msgid "Site officiel " msgstr "Site officiel " -#: src/translate.c:283 src/translate.c:297 +#: glade/xcfa.glade:9330 glade/xcfa.glade:9891 msgid "Web Info " msgstr "Web Info " -#: src/translate.c:285 +#: glade/xcfa.glade:9415 msgid " Web Faac " msgstr " Web Faac " -#: src/translate.c:289 -msgid "" -" Options experts, definies par l'utilisateur - faac (wav -> m4a) " +#: glade/xcfa.glade:9544 +msgid " Experts options defined by the user - faac (wav -> m4a) " msgstr "" " Options experts, définies par l'utilisateur - faac (wav -> m4a) " -#: src/translate.c:290 +#: glade/xcfa.glade:9564 msgid " Faac " msgstr " Faac " -#: src/translate.c:291 -msgid " Stereo: Qualite en kbit/s" -msgstr " Stéréo: Qualité en kbit/s" - -#: src/translate.c:292 -msgid " Mono: Qualite en kbit/s" -msgstr " Mono: Qualité en kbit/s" +#: glade/xcfa.glade:9606 +msgid "Mono: Qualite en kbit/s" +msgstr "Mono: Qualité en kbit/s" + +#: glade/xcfa.glade:9617 +msgid "Stereo: Qualite en kbit/s" +msgstr "Stéreo: Qualité en kbit/s" -#: src/translate.c:293 +#: glade/xcfa.glade:9673 msgid " AacplusEnc (fichier .aac): " msgstr " AacplusEnc (fichier .aac): " -#: src/translate.c:295 +#: glade/xcfa.glade:9774 msgid " Options AacPlusEnc " msgstr " Options AacPlusEnc " -#: src/translate.c:299 +#: glade/xcfa.glade:9976 msgid " Web AacPlusEnc " msgstr " Web AacPlusEnc " -#: src/translate.c:300 +#: glade/xcfa.glade:10021 msgid " AacplusEnc " msgstr " AacplusEnc " -#: src/translate.c:301 +#: glade/xcfa.glade:10051 msgid "Artiste" msgstr "Artiste" -#: src/translate.c:302 src/translate.c:330 +#: glade/xcfa.glade:10070 glade/xcfa_win_treeview.glade:95 msgid "Titre" msgstr "Titre" -#: src/translate.c:303 +#: glade/xcfa.glade:10089 msgid "Album" msgstr "Album" -#: src/translate.c:304 +#: glade/xcfa.glade:10108 msgid "Numero" msgstr "Numéro" -#: src/translate.c:305 +#: glade/xcfa.glade:10127 msgid "Genre" msgstr "Genre" -#: src/translate.c:306 +#: glade/xcfa.glade:10146 msgid "Annee" msgstr "Année" -#: src/translate.c:307 +#: glade/xcfa.glade:10165 msgid "Commentaire" msgstr "Commentaire" -#: src/translate.c:308 +#: glade/xcfa.glade:10190 msgid " Exportation de " msgstr " Exportation de " -#: src/translate.c:310 +#: glade/xcfa.glade:10226 msgid " Preferences " msgstr " Préférences " -#: src/translate.c:311 +#: glade/xcfa.glade:10289 msgid "SCAN" msgstr "SCAN" -#: src/translate.c:312 +#: glade/xcfa.glade:10303 msgid " Installation " msgstr " Installation " -#: src/translate.c:313 -msgid " Votre systeme utilise ... " +#: glade/xcfa.glade:10338 +msgid " Your system use ... " msgstr " Votre système utilise ... " -#: src/translate.c:314 +#: glade/xcfa.glade:10375 msgid "" "\n" -"Pour installer les programmes externes requis,\n" -"veuillez utiliser l'installateur de votre distribution Gnu/Linux.\n" +"To install the required external programs\n" +"Please use the installer to your distribution Gnu / Linux.\n" msgstr "" "\n" "Pour installer les programmes externes requis,\n" "veuillez utiliser l'installateur de votre distribution Gnu/Linux.\n" -#: src/translate.c:315 +#: glade/xcfa.glade:10393 msgid "" "Le programme XCFA_INSTALL_ALL ecrit en Perl vous sera utile en ligne de " "commande pour une installation des programmes complementaire." @@ -2432,19 +2343,19 @@ "Le programme XCFA_INSTALL_ALL écrit en Perl vous sera utile en ligne de " "commande pour une installation des programmes complémentaire." -#: src/translate.c:316 +#: glade/xcfa.glade:10419 msgid " Informations " msgstr " Informations " -#: src/translate.c:317 -msgid " Application externes " -msgstr " Application externes " +#: glade/xcfa.glade:10443 +msgid " External application " +msgstr " Application externe " -#: src/translate.c:318 src/translate.c:321 +#: glade/xcfa.glade:10514 glade/xcfa.glade:10618 msgid "parametres:" msgstr "paramètres:" -#: src/translate.c:319 +#: glade/xcfa.glade:10527 msgid "" "\n" " konqueror : newTab\n" @@ -2454,171 +2365,47 @@ " konqueror : newTab\n" " iceweasel : -new-window -new-tab \n" -#: src/translate.c:320 +#: glade/xcfa.glade:10548 msgid "Navigateur" msgstr "Navigateur" -#: src/translate.c:322 +#: glade/xcfa.glade:10648 msgid "Lecteurs audio" msgstr "Lecteurs audio" -#: src/translate.c:323 -msgid " Navigateurs / Lecteurs audio " -msgstr " Navigateurs / Lecteurs audio " +#: glade/xcfa.glade:10669 +msgid "  Browsers / Audio Players " +msgstr " Navigateurs / Lecteurs audio" -#: src/translate.c:324 +#: glade/xcfa.glade:10692 msgid " Applications externes " msgstr " Applications externes " -#: src/translate.c:325 -msgid "Scan en cours ..." -msgstr "Scan en cours ..." - -#: src/translate.c:326 -msgid "Scan du support en cours ..." -msgstr "Scan du support en cours ..." - -#: src/translate.c:327 -msgid "Detail extraction mode expert" -msgstr "Détail extraction mode expert" - -#: src/translate.c:328 -msgid "Modification des champs" -msgstr "Modification des champs" - -#: src/translate.c:329 -msgid "" -"\n" -"Modification des champs\n" -msgstr "" -"\n" -"Modification des champs\n" - -#: src/translate.c:337 src/translate.c:356 src/translate.c:377 -#: src/translate.c:389 src/translate.c:400 src/translate.c:408 -msgid " Visibilite " -msgstr " Visibilité " - -#: src/translate.c:338 src/translate.c:357 src/translate.c:378 -#: src/translate.c:390 src/translate.c:401 src/translate.c:409 -msgid "Nom a gauche" -msgstr "Nom à gauche" - -#: src/translate.c:339 src/translate.c:358 src/translate.c:379 -#: src/translate.c:391 src/translate.c:402 src/translate.c:410 -msgid "Nom au centre" -msgstr "Nom au centre" - -#: src/translate.c:340 src/translate.c:359 src/translate.c:380 -#: src/translate.c:392 src/translate.c:403 src/translate.c:411 -msgid "Nom a droite" -msgstr "Nom à droite" - -#: src/translate.c:341 -msgid "DVD" -msgstr "DVD" - -#: src/translate.c:346 src/translate.c:367 -msgid "Wavpack" -msgstr "Wavpack" - -#: src/translate.c:350 src/translate.c:371 -msgid "Musepack" -msgstr "Musepack" - -#: src/translate.c:360 -msgid "CD" -msgstr "CD" - -#: src/translate.c:375 -msgid "Replaygain" -msgstr "Replaygain" - -#: src/translate.c:381 -msgid "CONVERSIONS" -msgstr "CONVERSIONS" - -#: src/translate.c:382 -msgid "Hertz" -msgstr "Hertz" - -#: src/translate.c:383 -msgid "New Hertz" -msgstr "New Hertz" - -#: src/translate.c:384 -msgid "Voie" -msgstr "Voie" - -#: src/translate.c:385 -msgid "New Voie" -msgstr "New Voie" - -#: src/translate.c:386 -msgid "Bits" -msgstr "Bits" - -#: src/translate.c:387 -msgid "New Bits" -msgstr "New Bits" - -#: src/translate.c:393 -msgid "WAV" -msgstr "WAV" - -#: src/translate.c:396 -msgid "New Bitrate" -msgstr "New Bitrate" - -#: src/translate.c:397 -msgid "Size" -msgstr "Size" - -#: src/translate.c:404 -msgid "MP3-OGG" -msgstr "MP3-OGG" - -#: src/translate.c:412 -msgid "TAGS" -msgstr "TAGS" - -#: src/translate.c:413 -msgid "Selection globale" -msgstr "Sélection globale" - -#: src/translate.c:414 -msgid "Deselection globale" -msgstr "Désélection globale" - -#: src/translate.c:415 -msgid "Retour" -msgstr "Retour" - -#: src/translate.c:416 +#: glade/xcfa_win_about.glade:7 msgid "About X Convert File Audio" msgstr "About X Convert File Audio" -#: src/translate.c:417 +#: glade/xcfa_win_about.glade:103 msgid "Author" msgstr "Author" -#: src/translate.c:418 +#: glade/xcfa_win_about.glade:139 msgid "Licence" msgstr "Licence" -#: src/translate.c:419 +#: glade/xcfa_win_about.glade:163 msgid " Informations " msgstr " Informations " -#: src/translate.c:420 +#: glade/xcfa_win_about.glade:198 msgid " Machine " msgstr " Machine " -#: src/translate.c:421 +#: glade/xcfa_win_about.glade:333 msgid "Ingenieurs du son\n" msgstr "Ingénieurs du son\n" -#: src/translate.c:422 +#: glade/xcfa_win_about.glade:350 msgid "" "\n" "Graphisme\n" @@ -2626,7 +2413,7 @@ "\n" "Graphisme\n" -#: src/translate.c:423 +#: glade/xcfa_win_about.glade:370 msgid "" "Traduction Anglaise\n" "\n" @@ -2636,7 +2423,7 @@ "\n" "\n" -#: src/translate.c:424 +#: glade/xcfa_win_about.glade:391 msgid "" "\n" "Traduction Allemande" @@ -2644,7 +2431,7 @@ "\n" "Traduction Allemande" -#: src/translate.c:425 +#: glade/xcfa_win_about.glade:628 msgid "" "\n" "Codeur Xcfa" @@ -2652,7 +2439,7 @@ "\n" "Codeur Xcfa" -#: src/translate.c:426 +#: glade/xcfa_win_about.glade:665 msgid "" "\n" "ElementSpeak pour Xcfa " @@ -2660,7 +2447,7 @@ "\n" "ElementSpeak pour Xcfa " -#: src/translate.c:427 +#: glade/xcfa_win_about.glade:702 msgid "" "\n" "Codeur pages Web" @@ -2668,7 +2455,7 @@ "\n" "Codeur pages Web" -#: src/translate.c:428 +#: glade/xcfa_win_about.glade:739 msgid "" "\n" "Traduction Italienne" @@ -2676,7 +2463,7 @@ "\n" "Traduction Italienne" -#: src/translate.c:429 +#: glade/xcfa_win_about.glade:800 msgid "" "\n" "\n" @@ -2686,51 +2473,43 @@ "\n" "Pages à visiter\n" -#: src/translate.c:430 +#: glade/xcfa_win_about.glade:1123 msgid "Linux On The Root" msgstr "Linux On The Root" -#: src/translate.c:431 +#: glade/xcfa_win_about.glade:1180 msgid "Frugalware" msgstr "Frugalware" -#: src/translate.c:432 +#: glade/xcfa_win_about.glade:1237 msgid "Road2Mayotte" msgstr "Road2Mayotte" -#: src/translate.c:433 +#: glade/xcfa_win_about.glade:1294 msgid "La Linuxerie" msgstr "La Linuxerie" -#: src/translate.c:434 -msgid "Audioptimisation by Dzef" -msgstr "Audioptimisation by Dzef" - -#: src/translate.c:435 +#: glade/xcfa_win_about.glade:1351 msgid "Tuxfamily" msgstr "Tuxfamily" -#: src/translate.c:436 +#: glade/xcfa_win_about.glade:1408 msgid "Framasoft" msgstr "Framasoft" -#: src/translate.c:437 +#: glade/xcfa_win_about.glade:1465 msgid "Ekd (EnKoDeur-Mixeur)" msgstr "Ekd (EnKoDeur-Mixeur)" -#: src/translate.c:438 -msgid "Bishop's page" -msgstr "Bishop's page" +#: glade/xcfa_win_about.glade:1544 +msgid "Debian Multimedia" +msgstr "Debian Multimedia" -#: src/translate.c:439 +#: glade/xcfa_win_about.glade:1598 msgid "Je suis libre" msgstr "Je suis libre" -#: src/translate.c:440 -msgid "Debian Multimedia" -msgstr "Debian Multimedia" - -#: src/translate.c:441 +#: glade/xcfa_win_about.glade:1705 msgid "" "\n" "Forum\n" @@ -2738,19 +2517,15 @@ "\n" "Forum\n" -#: src/translate.c:442 -msgid "XCFA Vorstellung " -msgstr "XCFA Vorstellung " +#: glade/xcfa_win_about.glade:1825 +msgid "Forum Xcfa" +msgstr "Forum Xcfa" -#: src/translate.c:443 +#: glade/xcfa_win_about.glade:1879 msgid "XCFA LinuxForen.de" msgstr "XCFA LinuxForen.de" -#: src/translate.c:444 -msgid "Forum Xcfa" -msgstr "Forum Xcfa" - -#: src/translate.c:445 +#: glade/xcfa_win_about.glade:1929 msgid "" "\n" "Documentation\n" @@ -2758,133 +2533,217 @@ "\n" "Documentation\n" -#: src/translate.c:446 +#: glade/xcfa_win_about.glade:2164 msgid "Wiki Xcfa par Shankarius" msgstr "Wiki Xcfa par Shankarius" -#: src/translate.c:447 +#: glade/xcfa_win_about.glade:2219 msgid "Doc Xcfa par Patachon" msgstr "Doc Xcfa par Patachon" -#: src/translate.c:448 +#: glade/xcfa_win_about.glade:2276 msgid "Ogg Vorbis explique par Shankarius" msgstr "Ogg Vorbis expliqué par Shankarius" -#: src/translate.c:449 +#: glade/xcfa_win_about.glade:2333 msgid "La normalisation expliquee par Dzef" msgstr "La normalisation expliquée par Dzef" -#: src/translate.c:450 +#: glade/xcfa_win_about.glade:2390 msgid "Xcfa sur Linux On The Root" msgstr "Xcfa sur Linux On The Root" -#: src/translate.c:451 +#: glade/xcfa_win_about.glade:2433 msgid " Contributions " msgstr " Contributions " -#: src/translate.c:452 +#: glade/xcfa_win_about.glade:2461 msgid " License " msgstr " Licence " -#: src/translate.c:453 +#: glade/xcfa_win_about.glade:2482 msgid "OK" msgstr "OK" -#: src/web.c:173 src/web.c:234 -msgid "PAS de navigateur present" -msgstr "PAS de navigateur présent" - -#: src/web.c:174 -msgid "L'acces au web est impossible car aucun navigateur" -msgstr "L'accès au web est impossible car aucun navigateur" - -#: src/web.c:176 -msgid "n'est present dans votre configuration." -msgstr "n'est présent dans votre configuration." - -#: src/web.c:178 -msgid "Veuillez installez un navigateur." -msgstr "Veuillez installez un navigateur." - -#: src/web.c:188 -msgid "Vous devez ouvrir l'acces internet" -msgstr "Vous devez ouvrir l'accès internet" - -#: src/web.c:236 -msgid " L'acces au web est impossible car aucun navigateur" -msgstr " L'accès au web est impossible car aucun navigateur" - -#: src/web.c:238 -msgid " n'est present dans votre configuration." -msgstr " n'est présent dans votre configuration." - -#: src/web.c:240 -msgid " Veuillez installez un navigateur." -msgstr " Veuillez installez un navigateur." +#: glade/xcfa_win_scan.glade:9 +msgid "Scan en cours ..." +msgstr "Scan en cours ..." -#: src/web.c:250 -msgid "L'application est absente." -msgstr "L'application est absente." +#: glade/xcfa_win_scan.glade:77 +msgid "Scan du support en cours ..." +msgstr "Scan du support en cours ..." -#: src/web.c:251 -msgid "Veuillez installer : " -msgstr "Veuillez installer : " +#: glade/xcfa_win_scan.glade:128 +msgid "Detail extraction mode expert" +msgstr "Détail extraction mode expert" -#: src/win_about.c:130 -msgid " Xcfa sur le web" -msgstr " Xcfa sur le web" +#: glade/xcfa_win_treeview.glade:7 +msgid "Modification des champs" +msgstr "Modification des champs" -#: src/win_about.c:180 +#: glade/xcfa_win_treeview.glade:41 msgid "" "\n" -"Au tout debut:\n" -"\n" -"Serres Patrick, Hamann Regis, Fabien Gregis, @Dzef, @alteo_gange, \n" -"@Leonux, @zarer, @Shankarius, @bishop, @Ludo, @Patachonf,\n" -"... ;-)\n" -"\n" -"" +"Modification des champs\n" msgstr "" "\n" -"Au tout début:\n" -"\n" -"Serres Patrick, Hamann Regis, Fabien Gregis, @Dzef, @alteo_gange, \n" -"@Leonux, @zarer, @Shankarius, @bishop, @Ludo, @Patachonf,\n" -"... ;-)\n" -"\n" -"" +"Modification des champs\n" -#: src/win_scan.c:161 -msgid "Waiting ..." -msgstr "Waiting ..." +#: glade/xcfa_win_treeview.glade:129 +msgid "Temps" +msgstr "Temps" + +#: glade/xcfa_win_treeview.glade:163 +msgid "Choix" +msgstr "Choix" + +#: glade/xcfa_win_treeview.glade:197 glade/xcfa_win_treeview.glade:577 +#: glade/xcfa_win_treeview.glade:995 glade/xcfa_win_treeview.glade:1260 +#: glade/xcfa_win_treeview.glade:1508 glade/xcfa_win_treeview.glade:1706 +msgid "Nom" +msgstr "Nom" + +#: glade/xcfa_win_treeview.glade:220 glade/xcfa_win_treeview.glade:600 +#: glade/xcfa_win_treeview.glade:1018 glade/xcfa_win_treeview.glade:1283 +#: glade/xcfa_win_treeview.glade:1531 glade/xcfa_win_treeview.glade:1732 +msgid " Visibilite " +msgstr " Visibilité " + +#: glade/xcfa_win_treeview.glade:250 glade/xcfa_win_treeview.glade:630 +#: glade/xcfa_win_treeview.glade:1048 glade/xcfa_win_treeview.glade:1313 +#: glade/xcfa_win_treeview.glade:1562 glade/xcfa_win_treeview.glade:1763 +msgid "Nom a gauche" +msgstr "Nom à gauche" + +#: glade/xcfa_win_treeview.glade:267 glade/xcfa_win_treeview.glade:647 +#: glade/xcfa_win_treeview.glade:1065 glade/xcfa_win_treeview.glade:1330 +#: glade/xcfa_win_treeview.glade:1579 glade/xcfa_win_treeview.glade:1780 +msgid "Nom au centre" +msgstr "Nom au centre" + +#: glade/xcfa_win_treeview.glade:286 glade/xcfa_win_treeview.glade:666 +#: glade/xcfa_win_treeview.glade:1084 glade/xcfa_win_treeview.glade:1349 +#: glade/xcfa_win_treeview.glade:1598 glade/xcfa_win_treeview.glade:1799 +msgid "Nom a droite" +msgstr "Nom à droite" + +#: glade/xcfa_win_treeview.glade:326 +msgid "DVD" +msgstr "DVD" + +#: glade/xcfa_win_treeview.glade:373 glade/xcfa_win_treeview.glade:791 +msgid "Wav" +msgstr "Wav" + +#: glade/xcfa_win_treeview.glade:390 glade/xcfa_win_treeview.glade:808 +msgid "Flac" +msgstr "Flac" + +#: glade/xcfa_win_treeview.glade:407 glade/xcfa_win_treeview.glade:825 +msgid "Ape" +msgstr "Ape" + +#: glade/xcfa_win_treeview.glade:424 glade/xcfa_win_treeview.glade:842 +msgid "Wavpack" +msgstr "Wavpack" + +#: glade/xcfa_win_treeview.glade:441 glade/xcfa_win_treeview.glade:859 +msgid "Ogg" +msgstr "Ogg" + +#: glade/xcfa_win_treeview.glade:458 glade/xcfa_win_treeview.glade:876 +msgid "M4a" +msgstr "M4a" + +#: glade/xcfa_win_treeview.glade:475 glade/xcfa_win_treeview.glade:893 +msgid "Aac" +msgstr "Aac" -#~ msgid "Quantification" -#~ msgstr "Quantification" +#: glade/xcfa_win_treeview.glade:492 glade/xcfa_win_treeview.glade:910 +msgid "Musepack" +msgstr "Musepack" + +#: glade/xcfa_win_treeview.glade:509 glade/xcfa_win_treeview.glade:927 +msgid "Mp3" +msgstr "Mp3" + +#: glade/xcfa_win_treeview.glade:526 +msgid "Num" +msgstr "Num" + +#: glade/xcfa_win_treeview.glade:709 +msgid "CD" +msgstr "CD" + +#: glade/xcfa_win_treeview.glade:978 +msgid "Replaygain" +msgstr "Replaygain" + +#: glade/xcfa_win_treeview.glade:1127 +msgid "CONVERSIONS" +msgstr "CONVERSIONS" + +#: glade/xcfa_win_treeview.glade:1158 +msgid "Hertz" +msgstr "Hertz" + +#: glade/xcfa_win_treeview.glade:1175 +msgid "New Hertz" +msgstr "New Hertz" + +#: glade/xcfa_win_treeview.glade:1192 +msgid "Voie" +msgstr "Voie" + +#: glade/xcfa_win_treeview.glade:1209 +msgid "New Voie" +msgstr "New Voie" -#~ msgid "Voie" -#~ msgstr "Voie" +#: glade/xcfa_win_treeview.glade:1226 +msgid "Bits" +msgstr "Bits" + +#: glade/xcfa_win_treeview.glade:1243 +msgid "New Bits" +msgstr "New Bits" -#~ msgid " Frequence - Hertz " -#~ msgstr " Fréquence - Hertz " +#: glade/xcfa_win_treeview.glade:1392 +msgid "WAV" +msgstr "WAV" -#~ msgid "Cellule" -#~ msgstr "Cellule" +#: glade/xcfa_win_treeview.glade:1440 +msgid "Bitrate" +msgstr "Bitrate" -#~ msgid "Colonne" -#~ msgstr "Colonne" +#: glade/xcfa_win_treeview.glade:1457 +msgid "New Bitrate" +msgstr "New Bitrate" -#~ msgid " Cacher Xcfa " -#~ msgstr " Cacher Xcfa " +#: glade/xcfa_win_treeview.glade:1641 +msgid "MP3-OGG" +msgstr "MP3-OGG" + +#: glade/xcfa_win_treeview.glade:1842 +msgid "TAGS" +msgstr "TAGS" + +#: glade/xcfa_win_treeview.glade:1894 +msgid "Selection globale" +msgstr "Sélection globale" + +#: glade/xcfa_win_treeview.glade:1948 +msgid "Deselection globale" +msgstr "Désélection globale" + +#: glade/xcfa_win_treeview.glade:2009 +msgid "Retour" +msgstr "Retour" -#~ msgid " Montrer Xcfa " -#~ msgstr " Montrer Xcfa " +#~ msgid "Audioptimisation by Dzef" +#~ msgstr "Audioptimisation by Dzef" -#~ msgid " Quitter Xcfa " -#~ msgstr " Quitter Xcfa " +#~ msgid "Bishop's page" +#~ msgstr "Bishop's page" -#~ msgid "" -#~ "XCFA\n" -#~ "Programme pour convertir les fichiers audio." -#~ msgstr "" -#~ "XCFA\n" -#~ "Programme pour convertir les fichiers audio." +#~ msgid "XCFA Vorstellung " +#~ msgstr "XCFA Vorstellung " Binary files /tmp/U9mREQ24T4/xcfa-4.3.8/po/it.gmo and /tmp/9PqOMEw8oW/xcfa-5.0.1/po/it.gmo differ diff -Nru xcfa-4.3.8/po/it.po xcfa-5.0.1/po/it.po --- xcfa-4.3.8/po/it.po 2014-01-31 12:25:57.000000000 +0000 +++ xcfa-5.0.1/po/it.po 2015-03-01 17:00:50.000000000 +0000 @@ -5,150 +5,97 @@ # msgid "" msgstr "" -"Project-Id-Version: xcfa 4.2.8\n" +"Project-Id-Version: xcfa 5.0.0\n" "Report-Msgid-Bugs-To: xcfa@tuxfamily.org\n" -"POT-Creation-Date: 2014-01-31 13:25+0100\n" -"PO-Revision-Date: 2010-08-29 13:04+0200\n" +"POT-Creation-Date: 2015-03-01 18:00+0100\n" +"PO-Revision-Date: 2015-02-07 10:34+0100\n" "Last-Translator: BULIN Claude xcfa@tuxfamily.org\n" "Language-Team: French <>\n" -"Language: fr\n" +"Language: it\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" +"X-Generator: Poedit 1.7.3\n" -#: src/cd_audio.c:812 src/dvd.c:680 src/dvd.c:1324 -msgid "MPLAYER deja en action" +#: src/cd_audio.c:814 src/dvd.c:686 src/dvd.c:1345 +msgid "MPLAYER already in action" msgstr "MPLAYER già in azione" -#: src/cd_audio.c:813 src/dvd.c:681 src/dvd.c:1325 -msgid "MPLAYER est deja utilise !!" +#: src/cd_audio.c:815 src/dvd.c:687 src/dvd.c:1346 +msgid "MPLAYER is already in use !!" msgstr "MPlayer è già in uso !!" -#: src/cd_audio.c:1224 src/cd_audio.c:1230 src/dvd.c:867 src/file.c:2827 -msgid "(Click Droit = Menu) / En attente de selection." -msgstr "(Clic Destro = Menu) / In attesa di selezione." - -#: src/cd_audio.c:1227 src/file.c:2824 -msgid "Le programme externe d'extraction est absent." -msgstr "Il programma esterno per l'estrazione non è installato" - -#: src/cd_audio.c:1233 src/file.c:2830 -msgid "(Click Droit = Menu) / En attente de selection. Le fichier existe." -msgstr "(Clic Destro = Menu) / In attesa di selezione. Il file esiste già." +#: src/cd_audio.c:1227 src/cd_audio.c:1233 src/file.c:2837 +msgid "(Right click = Menu) / Waiting for selection." +msgstr "(Clic Destro = Menu) / Selezionato." + +#: src/cd_audio.c:1230 +msgid "The external ripping program is missing." +msgstr "Il programma di ripping esterna manca." + +#: src/cd_audio.c:1236 +msgid "(Right click = Menu) / Waiting for Selection. File exists.." +msgstr "(Clic Destro = Menu) / Selezionato. Il file esiste già. " -#: src/cd_audio.c:1236 src/file.c:2833 -msgid "(Click Droit = Menu) / En selection." +#: src/cd_audio.c:1239 +msgid "(Right click = Menu) / Selected files." msgstr "(Clic Destro = Menu) / Selezionato." -#: src/cd_audio.c:1239 src/file.c:2839 -msgid "(Click Droit = Menu) / Selection avec options expert." +#: src/cd_audio.c:1242 src/file.c:2849 +msgid "(Right click = Menu) / Selection - expert mode." msgstr "(Clic Destro = Menu) / Selezione con opzioni da esperto." -#: src/cd_audio.c:1242 src/file.c:2836 -msgid "(Click Droit = Menu) / En selection. Le fichier existe." +#: src/cd_audio.c:1245 src/file.c:2846 +msgid "(Right click = Menu) / Selected files. File exists." msgstr "(Clic Destro = Menu) / Selezionato. Il file esiste già. " -#: src/cd_audio.c:1245 src/file.c:2842 -msgid "" -"(Click Droit = Menu) / Selection avec options expert. Le fichier existe." +#: src/cd_audio.c:1248 src/file.c:2852 +msgid "(Right click = Menu) / Selection - expert mode. File exists." msgstr "" "(Clic Destro = Menu) / Selezione con opzioni da esperto. Il file esiste già. " -#: src/cd_audio.c:1254 +#: src/cd_audio.c:1257 msgid "" -"(Click Droit = Menu) / Possibilite d'ajustement INDIVIDUEL ou COLLECTIF " -"maximal du volume" +"(Right click = Menu) / Possibilities for individual adaptation or maximum " +"collection volume" msgstr "" -"(Clic Destro = Menu) / Possibilità di regolazione INDIVIDUALE o COLLETTIVAal " -"massimo del volume" +"(Right click = Menu) / Possibilità di adattamento individuale o volume " +"massimo di raccolta" -#: src/cd_audio.c:1259 -msgid "(Click Droit = Menu) / Ajustement INDIVIDUEL maximal du volume" +#: src/cd_audio.c:1262 +msgid "(Right click = Menu) / INDIVIDUAL maximum volume adjustment" msgstr "(Clic Destro = Menu) / Regolazione INDIVIDUALE al massimo del volume" -#: src/cd_audio.c:1262 -msgid "(Click Droit = Menu) / Ajustement COLLECTIF maximal du volume" +#: src/cd_audio.c:1265 +msgid "(Right click = Menu) / COLLECTIVE maximum volume adjustment" msgstr "(Clic Destro = Menu) / Regolazione COLLETTIVA al massimo del volume" -#: src/cd_audio.c:1502 src/dvd.c:1099 src/file.c:3137 src/translate.c:331 -#: src/translate.c:342 src/translate.c:361 -msgid "Play" -msgstr "Play" - -#: src/cd_audio.c:1543 src/file.c:3202 src/translate.c:343 src/translate.c:364 -msgid "Wav" -msgstr "Wav" - -#: src/cd_audio.c:1564 src/file.c:3221 src/translate.c:344 src/translate.c:365 -msgid "Flac" -msgstr "Flac" - -#: src/cd_audio.c:1584 src/file.c:3240 src/translate.c:345 src/translate.c:366 -msgid "Ape" -msgstr "Ape" - -#: src/cd_audio.c:1604 src/file.c:3259 -msgid "WavP" -msgstr "WavP" - -#: src/cd_audio.c:1624 src/file.c:3278 src/translate.c:347 src/translate.c:368 -msgid "Ogg" -msgstr "Ogg" - -#: src/cd_audio.c:1645 src/file.c:3297 src/translate.c:348 src/translate.c:369 -msgid "M4a" -msgstr "M4a" - -#: src/cd_audio.c:1666 src/file.c:3316 src/translate.c:349 src/translate.c:370 -msgid "Aac" -msgstr "Aac" - -#: src/cd_audio.c:1686 src/file.c:3335 -msgid "Mpc" -msgstr "Mpc" - -#: src/cd_audio.c:1706 src/file.c:3354 src/translate.c:351 src/translate.c:372 -msgid "Mp3" -msgstr "Mp3" - -#: src/cd_audio.c:1727 src/translate.c:352 -msgid "Num" -msgstr "Num" - -#: src/cd_audio.c:1742 src/translate.c:353 src/translate.c:373 -#: src/translate.c:398 src/translate.c:406 -msgid "Time" -msgstr "Tempo" - -#: src/cd_audio.c:1757 src/dvd.c:1167 src/file.c:3390 src/translate.c:335 -#: src/translate.c:354 src/translate.c:374 +#: src/cd_audio.c:1764 src/dvd.c:1187 src/file.c:3403 +#: glade/xcfa_win_treeview.glade:180 glade/xcfa_win_treeview.glade:560 +#: glade/xcfa_win_treeview.glade:961 msgid "Normalise" msgstr "Normalizza" -#: src/cd_audio.c:1782 src/dvd.c:1187 src/file.c:3432 src/file_mp3ogg.c:958 -#: src/file_tags.c:1191 src/file_wav.c:824 src/prg_init.c:609 -#: src/translate.c:336 src/translate.c:355 src/translate.c:376 -#: src/translate.c:388 src/translate.c:399 src/translate.c:407 -msgid "Nom" -msgstr "Nome" +#: src/cd_audio.c:1789 src/dvd.c:1207 src/file.c:3445 src/file_mp3ogg.c:964 +#: src/file_tags.c:1253 src/file_wav.c:830 src/prg_init.c:609 +msgid "Name" +msgstr "Name" -#: src/cd_audio.c:2511 -msgid " Parametrage CDDB: [ Nom du serveur ]" +#: src/cd_audio.c:2517 +msgid " Setting up CDDB: [ Server name ]" msgstr " Impostazione CDDB: [ Nome server ]" -#: src/cd_audio.c:2520 -msgid " Parametrage PROXY: [ serveur ] [ port ]" +#: src/cd_audio.c:2526 +msgid " Proxy settings: [ server ] [ port ] " msgstr " Impostazioni PROXY: [ server ] [ porta ]" -#: src/cd_audio.c:2530 src/translate.c:95 -msgid " Serveur " +#: src/cd_audio.c:2536 glade/xcfa.glade:1842 +msgid " Server " msgstr " Server " #: src/cd_audio_extract.c:673 #, c-format -msgid "" -"[Erreur du segment numero: %d]\n" -"%d) Lecture PASS 1/2\n" +msgid "[Error on segment #%d] %d) Playing PASS 1/2\n" msgstr "" "[Errore del segmento numero: %d]\n" "%d) Lettura PASS 1/2\n" @@ -156,7 +103,7 @@ #: src/cd_audio_extract.c:680 #, c-format msgid "" -"--> Deja %d fois 2 lectures du segment %d!\n" +"--> Segment %d already read two %d times!\n" " Abandon :/\n" msgstr "" "--> Segmento %d\n" @@ -164,28 +111,28 @@ #: src/cd_audio_extract.c:700 #, c-format -msgid "%d) Lecture PASS 2/2\n" +msgid "%d) Read PASS 2/2\n" msgstr "%d) Lettura PASS 2/2\n" #: src/cd_audio_extract.c:780 #, c-format msgid "" "\n" -"[Piste: %d]\n" +"[Track: %d]\n" msgstr "" "\n" "[Traccia: %d]\n" #: src/cd_audio_extract.c:784 -msgid "Extraction mode expert PASS 1/2\n" +msgid "Ripping expert mode PASS 1/2\n" msgstr "Estrazione modo esperto PASS 1/2\n" #: src/cd_audio_extract.c:795 -msgid "Extraction mode expert PASS 2/2\n" +msgid "Ripping expert mode PASS 2/2\n" msgstr "Estrazione modo esperto PASS 2/2\n" #: src/cd_audio_extract.c:803 -msgid "Controle du contenu des fichiers extraits\n" +msgid "Control the content of the extracted files\n" msgstr "Verifica del contenuto dei files estratti\n" #: src/cd_audio_extract.c:1710 src/cd_audio_extract.c:1712 @@ -199,16 +146,16 @@ #: src/cd_audio_extract.c:1712 src/dvd_extract.c:414 src/file_action.c:185 #: src/file_mp3ogg_conv.c:331 src/file_wav_conv.c:345 -msgid "Arret par l'utilisateur" -msgstr "Fermato dall'utente" +msgid "Stop by user" +msgstr "Stop di utente" #: src/cd_audio_extract.c:1983 -msgid "Nom de fichier unique absent" -msgstr "Manca il nome unico del file" +msgid "File name not found" +msgstr "Nome file non trovato" #: src/cd_audio_extract.c:1984 -msgid "Veuillez saisir un nom pour le fichier unique" -msgstr "Siete pregati di inserire un nome unico per il file" +msgid "Please enter a file name" +msgstr "Si prega di inserire un nome di file" #: src/cd_audio_toc.c:156 msgid "cdda2wav and icedax NOT FOUND" @@ -251,16 +198,16 @@ msgstr "Per favore, installare il pacchetto [ cd-discid ]" #: src/cd_audio_toc.c:203 -msgid "ERREUR datas proxy" +msgid "ERROR datas proxy" msgstr "ERRORE dati proxy" #: src/cd_audio_toc.c:204 -msgid "Veuillez renseigner les champs du proxy" -msgstr "Si prega di inserire tutti i campi per il proxy" +msgid "Please complete all fields proxy" +msgstr "Si prega di compilare tutti i campi del proxy" #: src/cd_curl.c:734 src/web.c:187 -msgid "La liaison internet est absente" -msgstr "La connessione Internet non è attiva" +msgid "A web connection is missing" +msgstr "Una connessione web mancante" #: src/cd_curl.c:1204 msgid "Couldn't find CD" @@ -270,134 +217,127 @@ msgid "No Audio CD" msgstr "Nessun CD Audio" -#: src/dvd.c:859 +#: src/dvd.c:877 msgid "" -"(Click Droit = Menu) / PEAK-ALBUM: Amplification maximale du volume pour un " -"groupe de fichiers en respectant les ecarts de niveau entre chacun d'eux." +"(Right click = Menu) / Maximum volume amplification of a group of files " +"keeping the level difference between each of them." msgstr "" -"(Clic Destro = Menu) / PEAK-ALBUM: Amplificazione massima del volume per un " -"grupo di files rispettando le differenze di livello tra ognuno di loro." +"(Right click = Menu) / Amplificazione massimo volume di un gruppo di file " +"mantenendo la differenza di livello tra ciascuna di esse." -#: src/dvd.c:862 -msgid "" -"(Click Droit = Menu) / PEAK: Amplification maximale du volume pour chaque de " -"fichier." -msgstr "" -"(Clic Destro = Menu) / PEAK: Amplificazione massima del volume per ogni " -"file. " +#: src/dvd.c:882 src/file.c:2882 +msgid "PEAK: Maximum volume amplification of each file." +msgstr "PEAK: l'amplificazione massima volume di ogni file." + +#: src/dvd.c:887 +msgid "(Right click = Menu) / ReplayGain: Waiting for selection." +msgstr "(Clic Destro = Menu) / ReplayGain: In attesa di selezione." -#: src/dvd.c:900 src/dvd.c:920 -msgid "En attente de selection. Un click activera la conversion vers 2 canaux." +#: src/dvd.c:920 src/dvd.c:940 +msgid "" +"Waiting for selection. A click will activate the conversion to 2 channels." msgstr "In attesa di selezione. Un clic attiverà la conversione a 2 canali" -#: src/dvd.c:912 -msgid "Conversion vers 2 canaux." +#: src/dvd.c:932 +msgid "Conversion to 2 channels." msgstr "Conversione a 2 canali" -#: src/dvd.c:924 +#: src/dvd.c:944 #, c-format -msgid "Conversion vers %s canaux." +msgid "Conversion to %s channels." msgstr "Conversione a %s canali." -#: src/dvd.c:929 +#: src/dvd.c:949 #, c-format msgid "" -"Conversion vers 2 canaux. Un second click activera la conversion vers %s " -"canaux." +"Conversion to 2 channels. A second click will activate the conversion to %s " +"channels." msgstr "" "Conversione a 2 canali. Un secondo clic attiverà la conversione verso %s " "canali. " -#: src/dvd.c:944 -msgid "Musique en ecoute." -msgstr "Musica in riproduzione" +#: src/dvd.c:964 +msgid "Playing music." +msgstr "Riproduzione di musica." + +#: src/dvd.c:967 +msgid "Music paused." +msgstr "Musica in pausa." -#: src/dvd.c:947 -msgid "Musique en attente." -msgstr "Musica in pausa" - -#: src/dvd.c:962 +#: src/dvd.c:982 #, c-format msgid "Total selection%s: %d, 2ch: %d" msgstr "Totale selezionato%s: %d, 2ch: %d" -#: src/dvd.c:963 +#: src/dvd.c:983 msgid "s" msgstr "s" -#: src/dvd.c:969 -msgid "Ce fichier ne peut etre extrait !" -msgstr "Questo file non può essere estratto !" - -#: src/dvd.c:1087 -msgid "Titres" -msgstr "Titoli" +#: src/dvd.c:989 +msgid "This file can not be ripped !" +msgstr "Questo file non può essere strappato !" + +#: src/dvd.c:1107 +msgid "Titles" +msgstr "Titles" -#: src/dvd.c:1111 src/file.c:3373 src/file_mp3ogg.c:943 src/file_tags.c:1175 -#: src/translate.c:332 -msgid "Temps" +#: src/dvd.c:1119 glade/xcfa_win_treeview.glade:112 +#: glade/xcfa_win_treeview.glade:356 glade/xcfa_win_treeview.glade:740 +msgid "Play" +msgstr "Play" + +#: src/dvd.c:1131 src/file.c:3386 src/file_mp3ogg.c:949 src/file_tags.c:1237 +#: glade/xcfa_win_treeview.glade:543 glade/xcfa_win_treeview.glade:944 +#: glade/xcfa_win_treeview.glade:1491 glade/xcfa_win_treeview.glade:1689 +msgid "Time" msgstr "Tempo" -#: src/dvd.c:1123 src/translate.c:333 +#: src/dvd.c:1143 glade/xcfa_win_treeview.glade:146 msgid "Format" msgstr "Formato" -#: src/dvd.c:1135 src/translate.c:334 -msgid "Choix" +#: src/dvd.c:1155 +msgid "Choice" msgstr "Scelta" -#: src/dvd.c:1249 -msgid "Fichier structure DVD" +#: src/dvd.c:1267 +msgid "DVD file structure" msgstr "File struttura DVD" -#: src/dvd.c:1299 -msgid "Le DVD est absent du lecteur." -msgstr "Il lettore DVD è assente." - -#: src/dvd.c:1335 -msgid "Scan ..." -msgstr "Analisi ..." +#: src/dvd.c:1320 +msgid "The DVD player is absent." +msgstr "Sox e Mplayer assenti" -#: src/dvd.c:1385 -msgid "lsdvd est absent !" +#: src/dvd.c:1410 +msgid "lsdvd is missing !" msgstr "lsdvd è assente" -#: src/dvd.c:1386 -msgid "Il faut installer le programme: lsdvd" +#: src/dvd.c:1411 +msgid "You must install the program: lsdvd" msgstr "È necessario installare il programma: lsdvd" #: src/dvd_extract.c:412 src/dvd_extract.c:414 -msgid "XCFA: Extraction DVD" -msgstr "XCFA: Estrazione DVD" +msgid "XCFA: DVD rip" +msgstr "XCFA: DVD rip" -#: src/dvd_read.c:263 +#: src/dvd_read.c:226 #, c-format -msgid "Titre [%02d ** ]" +msgid "Title [%02d ** ]" msgstr "Titolo [%02d ** ]" -#: src/dvd_read.c:266 +#: src/dvd_read.c:227 #, c-format -msgid "Titre [%02d]" +msgid "Title [%02d]" msgstr "Titolo [%02d]" -#: src/dvd_read.c:310 -#, c-format -msgid "Fichier_complet_%02d_%s" -msgstr "File_completo_%02d_%s" - -#: src/dvd_read.c:355 +#: src/dvd_read.c:252 #, c-format -msgid "Chapitre: [%02d]" +msgid "Chapter: [%02d]" msgstr "Capitolo: [%02d]" -#: src/dvd_read.c:401 -#, c-format -msgid "Titre_%02d_Chapitre_%02d_audio_%02d_%s" -msgstr "Titolo_%02d_Capitolo_%02d_audio_%02d_%s" - #: src/file_action.c:183 src/file_action.c:185 -msgid "XCFA: Traitement fichiers" -msgstr "XCFA: Elaborazione file" +msgid "XCFA: Processing files" +msgstr "XCFA: file di elaborazione" #: src/file_analyze.c:731 msgid "Package checkmp3 (mp3check) NOT FOUND !" @@ -405,147 +345,145 @@ #: src/file_analyze.c:732 msgid "" -"Veuillez installer checkmp3 ou mp3check pour\n" -"la prise en compte des fichiers mp3" +"Please install or checkmp3 mp3check for\n" +"consideration of mp3 files" msgstr "" "Si prega di installare o checkmp3 mp3check per\n" "poter gestire i file mp3" -#: src/file.c:328 +#: src/file.c:327 #, c-format -msgid "Total fichiers: %d, Selections: %d" +msgid "Total files: %d, Selections: %d" msgstr "File totali: %d, File selezionati: %d" -#: src/file.c:442 -msgid "CAPACITE DOSSIER TEMPORAIRE TROP FAIBLE" -msgstr "CAPACITA' INSUFFICIENTE DELLA DIRECTORY TEMPORANEA" - -#: src/file.c:443 -msgid "Pas assez de place dans le dossier temporaire" -msgstr "Capacità insufficiente della directory temporanea" +#: src/file.c:441 +msgid "TEMPORARY CAPACITY TOO LOW" +msgstr "Capacità temporanea TROPPO BASSA" -#: src/file.c:449 -msgid "Veuillez deselectionner des PeakGroup." +#: src/file.c:442 src/file.c:2875 +msgid "WARNING: Not enough space available in the temp folder." +msgstr "" +"ATTENZIONE: Non abbastanza spazio disponibile nella cartella temporanea." + +#: src/file.c:448 +msgid "Please deselect PeakGroup." msgstr "Si prega di deselezionare PeakGroup" -#: src/file.c:1433 -msgid "Conversion(s) vers la source" +#: src/file.c:1431 +msgid "Conversion(s) to source" msgstr "Conversione(i) nella directory di origine" -#: src/file.c:1434 -msgid "Choix d'une nouvelle destination" -msgstr "Selezionare una nuova directory di destinazione" +#: src/file.c:1432 +msgid "Select a new destination" +msgstr "Selezionare una nuova destinazione" -#: src/file.c:1504 +#: src/file.c:1501 msgid "Select type: --" msgstr "Seleziona il tipo: --" -#: src/file.c:1589 +#: src/file.c:1584 msgid "Peak/album" msgstr "Peak/album" -#: src/file.c:1590 +#: src/file.c:1585 msgid "Peak" msgstr "Peak" -#: src/file.c:1591 +#: src/file.c:1586 msgid "Mix (scan)Rms/album" msgstr "Mix (scan)Rms/album" -#: src/file.c:1592 +#: src/file.c:1587 msgid "Fix (scan)Rms" msgstr "Fix (scan)Rms" -#: src/file.c:2851 +#: src/file.c:2834 +msgid "The external ripping program is missing" +msgstr "Il programma di ripping esterna manca" + +#: src/file.c:2840 +msgid "(Right click = Menu) / Waiting for Selection. File exists." +msgstr "(Clic Destro = Menu) / Selezionato. Il file esiste già. " + +#: src/file.c:2843 +msgid "(Right click = Menu) / Selected files" +msgstr "(Clic Destro = Menu) / Selezionato." + +#: src/file.c:2861 #, c-format -msgid "MAX FICHIERS ATTEINT = %d" +msgid "MAX FILES REACHED = %d" msgstr "RAGIUNTO IL NUMERO MASSIMO DI FILE = %d" -#: src/file.c:2861 -msgid "Normalise: En attente de selection." +#: src/file.c:2871 +msgid "Normalise: Waiting for selection." msgstr "Normalizzazione: In attesa di selezione." -#: src/file.c:2865 -msgid "ATTENTION: Pas assez de place dans le dossier temporaire." -msgstr "ATTENZIONE: Capacità della directory temporanea insufficiente." - -#: src/file.c:2868 +#: src/file.c:2878 msgid "" -"PEAK-ALBUM: Amplification maximale du volume pour un groupe de fichiers en " -"respectant les ecarts de niveau entre chacun d'eux." +"PEAK-ALBUM: Maximum volume amplification for a group of files according to " +"the deviations in level between them" msgstr "" -"PEAK-ALBUM: Amplificazione massima del volume per un gruppo di file " -"rispettando le differenze di livello tra ognuno di loro." +"PEAK-ALBUM: l'amplificazione massima di volume per un gruppo di file in base " +"alle deviazioni a livello tra di loro" -#: src/file.c:2872 -msgid "PEAK: Amplification maximale du volume pour chaque de fichier." -msgstr "PEAK: Amplificazione massima del volume di ogni file." - -#: src/file.c:2875 +#: src/file.c:2885 msgid "" -"RMS-ALBUM: Ajustement du volume moyen pour un groupe de fichiers en " -"respectant les ecarts de niveau moyen entre chacun d'eux." +"RMS-ALBUM: Adjusting the average volume for a group of files according to " +"the average level of deviation between them." msgstr "" -"RMS-ALBUM: Regolazione del volume medio per un gruppo di file rispettando le " -"variazione di livello medio tra ognuno di loro." +"RMS-ALBUM: Regolazione del volume medio di un gruppo di file secondo il " +"livello medio di deviazione tra loro." -#: src/file.c:2878 -msgid "RMS: Ajustement du volume moyen de chaque de fichier." -msgstr "RMS: Regolazione del volume medio di ogni file." +#: src/file.c:2888 +msgid "RMS: Average volume amplification of each file." +msgstr "RMS: l'amplificazione medio volume di ogni file." -#: src/file.c:2892 -msgid "(Click Droit = Menu) / ReplayGain: En attente de selection." +#: src/file.c:2902 +msgid "(Right Click = Menu) / ReplayGain: Waiting for selection." msgstr "(Clic Destro = Menu) / ReplayGain: In attesa di selezione." -#: src/file.c:2895 -msgid "(Click Droit = Menu) / Mode piste." +#: src/file.c:2905 +msgid "(Right Click = Menu) / Track mode." msgstr "(Clic Destro = Menu) / Modo traccia." -#: src/file.c:2898 -msgid "(Click Droit = Menu) / Mode album." +#: src/file.c:2908 +msgid "(Right Click = Menu) / Album mode." msgstr "(Clic Destro = Menu) / Modo album." -#: src/file.c:2901 -msgid "(Click Droit = Menu) / Mode effacer." -msgstr "(Clic Destro = Menu) / Modo cancellazione." +#: src/file.c:2911 +msgid "(Right Click = Menu) / Erase mode." +msgstr "(Clic Destro = Menu) / Selezionato." -#: src/file.c:3013 +#: src/file.c:3026 msgid "" -"(Click Droit = Menu) / Cliquez ici pour envoyer ce fichier apres traitement " -"a la corbeille" -msgstr "" -"(Clic Destro = Menu) / Cliccare qui per spostare il file nel cestino dopo il " -"trattamento." +"(Click Droit = Menu) / Click here to send the processed file to the trash" +msgstr "(Clic Destro = Menu) / Scelta del numero di bit per la codifica" -#: src/file.c:3016 +#: src/file.c:3029 msgid "" -"(Click Droit = Menu) / Ce fichier sera dirige apres traitement vers la " -"corbeille" +"(Right Click = Menu) / This file will be sent to the trash after processing" msgstr "" -"(Clic Destro = Menu) / Questo file sarà spostato nel cestino dopo il " -"trattamento." +"(Right Click = Menu) / Questo file verrà inviato nel cestino dopo " +"l'elaborazione" -#: src/file.c:3150 src/file_trash.c:359 src/translate.c:362 +#: src/file.c:3163 src/file_trash.c:208 glade/xcfa_win_treeview.glade:757 msgid "Trash" msgstr "Cestino" -#: src/file.c:3170 src/file_mp3ogg.c:883 src/file_tags.c:1160 -#: src/translate.c:363 src/translate.c:394 src/translate.c:405 +#: src/file.c:3183 src/file_mp3ogg.c:889 src/file_tags.c:1222 +#: glade/xcfa_win_treeview.glade:774 glade/xcfa_win_treeview.glade:1423 +#: glade/xcfa_win_treeview.glade:1672 msgid "Type" msgstr "Tipo" -#: src/file.c:3409 -msgid "ReplayGain" -msgstr "ReplayGain" - -#: src/file_conv.c:1187 src/file_mp3ogg_conv.c:336 -msgid "Erreur depuis MPLAYER !" +#: src/file_conv.c:1187 +msgid "Error since MPLAYER !" msgstr "Errore da MPLAYER !" #: src/file_conv.c:1188 src/file_conv.c:1200 src/file_mp3ogg_conv.c:337 #: src/file_mp3ogg_conv.c:349 -msgid "Vous pouvez activer XCFA en ligne de commande avec: " -msgstr "È possibile attivare XFCA da linea di comando con: " +msgid "You can enable XCFA command line with: " +msgstr "È possibile attivare la linea di comando XCFA con: " #: src/file_conv.c:1190 src/file_conv.c:1202 src/file_mp3ogg_conv.c:339 #: src/file_mp3ogg_conv.c:351 @@ -553,50 +491,54 @@ msgstr "$ xcfa -verbose" #: src/file_conv.c:1192 src/file_mp3ogg_conv.c:341 -msgid "pour consulter le type d'erreur renvoye par mplayer." +msgid "to see the type of error returned by mplayer." msgstr "per vedere il tipo di errore riportato da mplayer." -#: src/file_conv.c:1199 src/file_mp3ogg_conv.c:348 -msgid "Erreur depuis SOX !" +#: src/file_conv.c:1199 +msgid "Error since SOX !" msgstr "Errore da SOX !" #: src/file_conv.c:1204 src/file_mp3ogg_conv.c:353 -msgid "pour consulter le type d'erreur renvoye par sox." +msgid "to see the type of error returned by sox." msgstr "per vedere il tipo di errore riportato da sox." -#: src/file_mp3ogg.c:668 -msgid "Click droit: acces popup" +#: src/file_mp3ogg.c:670 +msgid "Right click: access popup" msgstr "Click destro del mouse: accedere al popup" -#: src/file_mp3ogg.c:899 src/translate.c:395 -msgid "Bitrate" -msgstr "Bitrate" - -#: src/file_mp3ogg.c:915 -msgid "Nouveau bitrate" -msgstr "Nuovo bitrate" +#: src/file_mp3ogg.c:921 +msgid "New bitrate" +msgstr "Nuovo Bitrate" -#: src/file_mp3ogg.c:929 -msgid "Taille" +#: src/file_mp3ogg.c:935 glade/xcfa_win_treeview.glade:1474 +msgid "Size" msgstr "Dimensione" #: src/file_mp3ogg_conv.c:329 src/file_mp3ogg_conv.c:331 -msgid "XCFA: Modification bitrate" -msgstr "XCFA: Modificazione del bitrate" +msgid "XCFA: Bitrate change" +msgstr "XCFA: Elaborazione file" + +#: src/file_mp3ogg_conv.c:336 +msgid "Error from MPLAYER !" +msgstr "Errore da MPLAYER !" + +#: src/file_mp3ogg_conv.c:348 +msgid "Error from SOX !" +msgstr "Errore da SOX !" #: src/file_mp3ogg_conv.c:432 #, c-format -msgid " ATTENTION: Il faut installer %s%s%s" +msgid " WARNING : you need to install %s%s%s" msgstr " ATTENZIONE: bisogna installare %s%s%s" #: src/file_mp3ogg_conv.c:440 #, c-format -msgid " ATTENTION: Il faut installer %s%s" +msgid " WARNING : you need to install %s%s" msgstr " ATTENZIONE: bisogna installare %s%s" #: src/file_mp3ogg_conv.c:447 #, c-format -msgid " ATTENTION: Il faut installer %s" +msgid " WARNING : you need to install %s" msgstr " ATTENZIONE: bisogna installare %s" #: src/file_mp3ogg_conv.c:454 @@ -604,310 +546,306 @@ msgstr "Pacchetto NON TROVATO!" #: src/fileselect.c:105 -msgid "Choix d'un dossier de destination" +msgid "Choosing a destination folder" msgstr "Scelta della cartella di destinazione" #: src/fileselect.c:106 -msgid "Choix d'un fichier CUE WAV FLAC OGG MP3 APE WMA" +msgid "Choosing a file CUE WAV FLAC OGG MP3 APE WMA" msgstr "Selezionare un file di tipo CUE, WAV, MP3, OGG, FLAC, APE, WMA" #: src/fileselect.c:107 -msgid "Choix d'un fichier musical" +msgid "Choosing a file musical" msgstr "Selezionare un file musicale" -#: src/fileselect.c:108 -msgid "Choix d'un fichier" -msgstr "Selezionare un file" - -#: src/fileselect.c:109 -msgid "Choix de fichiers" -msgstr "Selezionare dei file" +#: src/fileselect.c:108 src/fileselect.c:109 +msgid "Choosing a file" +msgstr "La scelta di un file" #: src/fileselect.c:110 -msgid "Choix de fichiers WAV" -msgstr "Selezionare dei file WAV" +msgid "Choosing a WAV file" +msgstr "La scelta di un file WAV" #: src/fileselect.c:111 -msgid "Choix de fichiers MP3/OGG" -msgstr "Selezionare dei file MP3/OGG" +msgid "Choosing a MP3 OGG file" +msgstr "La scelta di un file OGG MP3" #: src/fileselect.c:112 -msgid "Choix de fichiers FLAC MPC OGG MP3" +msgid "Choosing a FLAC MPC OGG MP3 file" msgstr "Selezionare ei file FLAC MPC OGG MP3" #: src/fileselect.c:113 -msgid "Importer des images pour la pochette" -msgstr "Importare delle imagini per la copertina" +msgid "Import pictures for the cover" +msgstr "Importa immagini per la copertina" #: src/fileselect.c:114 -msgid "Choix d'un chemin de stockage des images" -msgstr "Selezionare un percorso per salvare le immagini" +msgid "Choosing an Image Storage path" +msgstr "La scelta di un immagine Percorso di memorizzazione" #: src/fileselect.c:115 -msgid "Choix d'un lieu de sauvegarde" -msgstr "Scelta di una cartella per il salvataggio" +msgid "Choosing a place for backup" +msgstr "La scelta di un posto per il backup" -#: src/fileselect.c:472 src/fileselect.c:595 src/fileselect.c:605 -#: src/fileselect.c:628 +#: src/fileselect.c:396 src/fileselect.c:415 src/fileselect.c:703 +msgid "Cancel" +msgstr "Cancel" + +#: src/fileselect.c:398 src/fileselect.c:417 src/fileselect.c:705 +msgid "Open" +msgstr "Open" + +#: src/fileselect.c:494 src/fileselect.c:617 src/fileselect.c:627 +#: src/fileselect.c:650 msgid "All Files (*.*)" msgstr "Tutti file (*.*)" -#: src/file_trash.c:360 +#: src/file_trash.c:211 msgid "Trash files ..." msgstr "Mettere file nel cestino ..." -#: src/file_wav.c:483 -msgid "(Click Droit = Menu) / Choix de la frequence" +#: src/file_wav.c:485 +msgid "(Right Click = Menu) / Select frequency" msgstr "(Clic Destro = Menu) / Scelta della frequenza" -#: src/file_wav.c:486 -msgid "(Click Droit = Menu) / Choix du nombre de pistes (voies)" -msgstr "(Clic Destro = Menu) / Scelta del numero di tracce (vie)" +#: src/file_wav.c:488 +msgid "(Right Click = Menu) / Select number of tracks (channels)" +msgstr "(Right Click = Menu) / Selezionare il numero di tracce (canali)" -#: src/file_wav.c:489 -msgid "(Click Droit = Menu) / Choix du codage en nombre de bits" -msgstr "(Clic Destro = Menu) / Scelta del numero di bit per la codifica" +#: src/file_wav.c:491 +msgid "(Right Click = Menu) / Encoding selection in number of bits" +msgstr "(Clic Destro = Menu) / Selezionato. Il file esiste già. " -#: src/file_wav.c:733 -msgid "Frequence" +#: src/file_wav.c:739 +msgid "Frequency" msgstr "Frequenza" -#: src/file_wav.c:749 -msgid "FREQUENCE" +#: src/file_wav.c:755 +msgid "FREQUENCY" msgstr "FREQUENZA" -#: src/file_wav.c:763 -msgid "Piste" -msgstr "Traccia" - -#: src/file_wav.c:779 -msgid "PISTE" -msgstr "TRACCIA" +#: src/file_wav.c:769 +msgid "Track" +msgstr "Track" + +#: src/file_wav.c:785 +msgid "TRACK" +msgstr "TRACK" -#: src/file_wav.c:793 +#: src/file_wav.c:799 msgid "Quantification" msgstr "Quantificazione" -#: src/file_wav.c:809 +#: src/file_wav.c:815 msgid "QUANTIFICATION" msgstr "QUANTIFICAZIONE" #: src/file_wav_conv.c:261 #, c-format -msgid "%s Copie fichier: %d%%" +msgid "%s Copy file: %d%%" msgstr "%s Copia file: %d%%" #: src/file_wav_conv.c:271 #, c-format -msgid "%s Restitution fichier: %d%%" +msgid "%s Return file: %d%%" msgstr "%s Produzione del file: %d%%" #: src/file_wav_conv.c:281 #, c-format -msgid "%s Traitement Sox: %d%%" +msgid "%s Use Sox: %d%%" msgstr "%s Trattamento Sox: %d%%" #: src/file_wav_conv.c:298 #, c-format -msgid "%s Traitement Mplayer: %d%%" +msgid "%s Use Mplayer: %d%%" msgstr "%s Trattamento Mplayer: %d%%" #: src/file_wav_conv.c:343 src/file_wav_conv.c:345 msgid "XCFA: Conversions WAV TO WAV" msgstr "XCFA: Conversione WAV TO WAV" -#: src/main.c:398 -msgid "= Adressage memoire invalide\n" -msgstr "= Indirizzi di memoria non validi\n" - -#: src/main.c:401 -msgid "= Vous avez probablement trouve un bug dans XCFA\n" -msgstr "= Avete probabilmente trovato un bug in XCFA\n" - -#: src/main.c:786 -msgid "MODE ADMINISTRATEUR" +#: src/main.c:775 +msgid "ADMINISTRATOR MODE" msgstr "MODALITA' AMMINISTRATORE" -#: src/main.c:788 -msgid " Vous ne devriez pas utiliser " -msgstr " Non si deve usare " +#: src/main.c:777 +msgid " You should not use " +msgstr " Non si deve usare " -#: src/main.c:790 -msgid " XCFA sous ROOT !" +#: src/main.c:779 +msgid " XCFA under ROOT !" msgstr " XCFA come ROOT !" -#: src/options.c:171 -msgid "ERREUR: Lieu de stockage non autorise !" -msgstr "ERRORE: Directory di memorizzazione non autorizzato !" - -#: src/options.c:172 -msgid "Veuillez recommencer." -msgstr "Siete pregati di ricominciare." +#: src/options.c:169 +msgid "ERROR : storage location not permitted !" +msgstr "ERRORE: posizione di memorizzazione non consentito!" + +#: src/options.c:170 +msgid "Please start again." +msgstr "Si prega di ricominciare da capo." #: src/options_cd.c:122 -msgid "Pour evaluer les templates, vous devez activer une lecture de cdaudio" -msgstr "Per valutare i modelli, è necessario attivare una lettura cdaudio" +msgid "To assess the templates, you must enable a reading cdaudio" +msgstr "Per valutare i modelli, è necessario attivare una cdaudio lettura" -#: src/options_faac.c:96 +#: src/options_faac.c:94 msgid "Transport Stream (ADTS) - Extension .aac" msgstr "Transport Stream (ADTS) - Estensione .aac" -#: src/options_faac.c:97 +#: src/options_faac.c:95 msgid "MPEG-4 File Format (MP4) - Extension .m4a" msgstr "Formato file MPEG-4 (MP4) - Estensione .m4a" -#: src/options_flac.c:67 -msgid "0 (Rapide)" +#: src/options_flac.c:65 +msgid "0 (Fast)" msgstr "0 (Veloce)" -#: src/options_flac.c:75 -msgid "8 (Lent)" +#: src/options_flac.c:73 +msgid "8 (Low)" msgstr "8 (Lento)" -#: src/options_mp3.c:279 -msgid "V0 (meilleure qualite)" +#: src/options_mp3.c:276 +msgid "V0 (Best quality)" msgstr "V0 (qualità migliore)" -#: src/options_mp3.c:288 -msgid "V9 (moins bonne qualite)" +#: src/options_mp3.c:285 +msgid "V9 (Poor quality)" msgstr "V9 (qualità peggiore)" -#: src/options_musepack.c:70 +#: src/options_musepack.c:68 msgid "telephone: lowest quality : 32 .. 48 kbit/s" msgstr "telefono: qualità peggiore : 32 .. 48 kbit/s" -#: src/options_musepack.c:71 +#: src/options_musepack.c:69 msgid "thumb : low quality/internet : 58 .. 86 kbit/s" msgstr "thumb : qualità bassa/Internet : 58 .. 86 kbit/s" -#: src/options_musepack.c:72 +#: src/options_musepack.c:70 msgid "radio : medium (MP3) quality : 112 .. 152 kbit/s" msgstr "radio : qualità media (MP3) : 112 .. 152 kbit/s" -#: src/options_musepack.c:73 +#: src/options_musepack.c:71 msgid "standard : high quality (dflt) : 142 .. 184 kbit/s" msgstr "standard : alta qualità (dflt) : 142 .. 184 kbit/s" -#: src/options_musepack.c:74 +#: src/options_musepack.c:72 msgid "xtreme : extreme high quality : 168 .. 212 kbit/s" msgstr "estremo : qualità molto alta : 168 .. 212 kbit/s" -#: src/options_musepack.c:75 +#: src/options_musepack.c:73 msgid "insane : extreme high quality : 232 .. 268 kbit/s" msgstr "insane : qualità estremamente alta: 232 .. 268 kbit/s" -#: src/options_musepack.c:76 +#: src/options_musepack.c:74 msgid "braindead : extreme high quality : 232 .. 278 kbit/s" msgstr "braindead : qualità estremamente alta : 232 .. 278 kbit/s" -#: src/options_oggenc.c:138 -msgid "Qualite -1 (Moins bonne qualite)" +#: src/options_oggenc.c:137 +msgid "Quality -1 (Poor quality)" msgstr "Qualità -1 (Qualità peggiore)" -#: src/options_oggenc.c:139 src/popup.c:1219 -msgid "Qualite 0" +#: src/options_oggenc.c:138 src/popup.c:1294 +msgid "Quality 0" msgstr "Qualità 0" -#: src/options_oggenc.c:140 src/popup.c:1219 -msgid "Qualite 1" +#: src/options_oggenc.c:139 src/popup.c:1294 +msgid "Quality 1" msgstr "Qualità 1" -#: src/options_oggenc.c:141 src/popup.c:1219 -msgid "Qualite 2" +#: src/options_oggenc.c:140 src/popup.c:1294 +msgid "Quality 2" msgstr "Qualità 2" -#: src/options_oggenc.c:142 -msgid "Qualite 3" +#: src/options_oggenc.c:141 +msgid "Quality 3" msgstr "Qualità 3" -#: src/options_oggenc.c:143 src/popup.c:1220 -msgid "Qualite 4" +#: src/options_oggenc.c:142 src/popup.c:1295 +msgid "Quality 4" msgstr "Qualità 4" -#: src/options_oggenc.c:144 src/popup.c:1220 -msgid "Qualite 5" +#: src/options_oggenc.c:143 src/popup.c:1295 +msgid "Quality 5" msgstr "Qualità 5" -#: src/options_oggenc.c:145 src/popup.c:1220 -msgid "Qualite 6" +#: src/options_oggenc.c:144 src/popup.c:1295 +msgid "Quality 6" msgstr "Qualità 6" -#: src/options_oggenc.c:146 src/popup.c:1220 -msgid "Qualite 7" +#: src/options_oggenc.c:145 src/popup.c:1295 +msgid "Quality 7" msgstr "Qualità 7" -#: src/options_oggenc.c:147 src/popup.c:1221 -msgid "Qualite 8" +#: src/options_oggenc.c:146 src/popup.c:1296 +msgid "Quality 8" msgstr "Qualità 8" -#: src/options_oggenc.c:148 src/popup.c:1221 -msgid "Qualite 9" +#: src/options_oggenc.c:147 src/popup.c:1296 +msgid "Quality 9" msgstr "Qualità 9" -#: src/options_oggenc.c:149 -msgid "Qualite 10 (Meilleure qualite)" +#: src/options_oggenc.c:148 +msgid "Quality 10 (Best quality)" msgstr "Qualità 10 (Qualità migliore)" -#: src/options_oggenc.c:179 src/options_wavpack.c:181 -#: src/options_wavpack.c:204 src/options_wavpack.c:227 src/popup.c:1223 -msgid "Oui" -msgstr "Sì" - -#: src/options_oggenc.c:180 src/options_wavpack.c:148 -#: src/options_wavpack.c:180 src/options_wavpack.c:203 -#: src/options_wavpack.c:226 src/options_wavpack.c:247 src/popup.c:1223 -msgid "Non" -msgstr "No" - -#: src/options_oggenc.c:201 -msgid "Mono force" -msgstr "Mono obbligato " +#: src/options_oggenc.c:176 src/options_wavpack.c:173 +#: src/options_wavpack.c:194 src/options_wavpack.c:215 src/popup.c:1298 +msgid "Yes" +msgstr "sì" + +#: src/options_oggenc.c:177 src/options_wavpack.c:142 +#: src/options_wavpack.c:172 src/options_wavpack.c:193 +#: src/options_wavpack.c:214 src/options_wavpack.c:233 src/popup.c:1298 +msgid "No" +msgstr "Nome" + +#: src/options_oggenc.c:196 +msgid "Force mono" +msgstr "Force mono" -#: src/options_oggenc.c:202 +#: src/options_oggenc.c:197 msgid "Stereo" msgstr "Stereo" -#: src/options_wavpack.c:100 -msgid "Mode normal" -msgstr "Modo normale" - -#: src/options_wavpack.c:101 -msgid "Mode rapide de compression" -msgstr "Modo di compressione rapido" +#: src/options_wavpack.c:98 +msgid "Standard" +msgstr "Standard" + +#: src/options_wavpack.c:99 +msgid "Fast (Faster encode and decode)" +msgstr "Veloce (codifica più veloce e decodifica)" -#: src/options_wavpack.c:102 -msgid "Bonne qualite de compression" +#: src/options_wavpack.c:100 +msgid "High quality (Better compression ratio)" msgstr "Buona qualità di compressione" -#: src/options_wavpack.c:103 -msgid "Meilleure qualite de compression" -msgstr "Migliore qualità di compressione" +#: src/options_wavpack.c:101 +msgid "Very high quality (Best compression but slowest)" +msgstr "Altissima qualità (migliore compressione ma più lento)" -#: src/options_wavpack.c:129 +#: src/options_wavpack.c:125 msgid "stereo left/right" msgstr "Stereo sinistra/destra" -#: src/options_wavpack.c:130 +#: src/options_wavpack.c:126 msgid "stereo mid/side" msgstr "Stereo centro/lati " -#: src/options_wavpack.c:248 +#: src/options_wavpack.c:234 msgid "1 (fast / rapide)" msgstr "1 (fast / veloce)" -#: src/options_wavpack.c:253 +#: src/options_wavpack.c:239 msgid "6 (very slow / tres lent)" msgstr "6 (very slow / molto lento)" -#: src/play_file.c:108 -msgid "PAS de lecteur audio present" -msgstr "NESSUN lettore audio presente" +#: src/play_file.c:107 +msgid "NO audio player present" +msgstr "NO Lettore audio presenti" -#: src/play_file.c:109 -msgid "Veuillez installez un lecteur audio." -msgstr "Siete pregati di installare un lettore audio." +#: src/play_file.c:108 +msgid "Please install an audio player." +msgstr "Per favore, installare il pacchetto [ cdparanoia ]" -#: src/poche_dir.c:430 +#: src/poche_dir.c:433 msgid "" "Utilisez le glisser / deplacer - Effacer une image avec Ctrl + " "Click" @@ -915,49 +853,41 @@ "Usa drag / drop - Cancellare un'immagine con Ctrl + Click" -#: src/poche_save.c:111 -msgid "Nom de fichier absent !!" -msgstr "Nome di file mancante !!" +#: src/poche_save.c:117 +msgid "File name not found !!" +msgstr "Il nome del file non trovato !!" -#: src/poche_save.c:112 src/poche_web.c:353 src/poche_web.c:375 -msgid "Pour resoudre ce probleme:" +#: src/poche_save.c:118 src/poche_web.c:330 src/poche_web.c:352 +msgid "To solve this problem :" msgstr "Per risolvere questo problema:" -#: src/poche_save.c:115 -msgid "Saisissez un nom de fichier sans extention" +#: src/poche_save.c:121 +msgid "Enter a file name without extension" msgstr "Inserire un nome di file senza estensione" -#: src/poche_save.c:126 -msgid "Sauvegarde aux formats PDF et PostScript" -msgstr "Salvataggio in formato PDF e PostScript" - -#: src/poche_save.c:151 -msgid "Sauvegarde au format PNG" -msgstr "Salvataggio in formato PNG" +#: src/poche_save.c:131 +msgid "Saving to PDF" +msgstr "Salvataggio in PDF" -#: src/poche_web.c:352 -msgid "Aucun fichier trouve !" +#: src/poche_web.c:329 +msgid "No file found !" msgstr "Nessun file trovato!" -#: src/poche_web.c:356 -msgid "Modifiez la chaine de recherche et" -msgstr "Modificate la stringa di ricerca " - -#: src/poche_web.c:358 src/poche_web.c:380 -msgid "recommencez." -msgstr "e ricominciate." - -#: src/poche_web.c:374 -msgid "Critere de recherche absent !!" -msgstr "Criteri di ricerca mancanti !!" - -#: src/poche_web.c:378 -msgid "Saisissez une chaine de recherche et" -msgstr "Immettere una stringa di ricerca e" - -#: src/poche_web.c:387 -msgid "[Recherche des fichiers images]" -msgstr "[Ricerca dei file imagine]" +#: src/poche_web.c:333 src/poche_web.c:355 +msgid "Modify the search parameters and" +msgstr "Modificare i parametri di ricerca e" + +#: src/poche_web.c:335 src/poche_web.c:357 +msgid "start again." +msgstr "ricominciare." + +#: src/poche_web.c:351 +msgid "Search criteria away !!" +msgstr "Criteri di ricerca di distanza !!" + +#: src/poche_web.c:369 +msgid "[Search images files]" +msgstr "[Cerca file di immagini]" #: src/popup.c:81 src/popup.c:100 msgid " Deselection globale" @@ -1028,145 +958,77 @@ msgid " Selection verticale " msgstr " Selezione verticale " -#: src/popup.c:489 -msgid "1 piste" -msgstr "1 traccia" - -#: src/popup.c:492 -msgid "2 pistes" -msgstr "2 tracce" - -#: src/popup.c:495 -msgid "4 pistes" -msgstr "4 tracce" - -#: src/popup.c:498 -msgid "6 pistes" -msgstr "6 tracce" - -#: src/popup.c:504 src/popup.c:619 src/popup.c:716 -msgid "Valeur d'origine" -msgstr "Valore originale" - -#: src/popup.c:592 -msgid " 8000 Hertz" -msgstr " 8000 Hertz" - -#: src/popup.c:595 -msgid "22000 Hertz" -msgstr "22000 Hertz" - -#: src/popup.c:598 -msgid "32000 Hertz" -msgstr "32000 Hertz" - -#: src/popup.c:601 -msgid "44056 Hertz" -msgstr "44056 Hertz" - -#: src/popup.c:604 -msgid "44100 Hertz" -msgstr "44100 Hertz" - -#: src/popup.c:607 -msgid "48000 Hertz" -msgstr "48000 Hertz" - -#: src/popup.c:610 -msgid "88200 Hertz" -msgstr "88200 Hertz" - -#: src/popup.c:613 -msgid "96000 Hertz" -msgstr "96000 Hertz" - -#: src/popup.c:698 -msgid " 8 bits" -msgstr " 8 bit" - -#: src/popup.c:701 -msgid "16 bits" -msgstr "16 bit" - -#: src/popup.c:704 -msgid "24 bits" -msgstr "24 bit" - -#: src/popup.c:707 -msgid "32 bits" -msgstr "32 bit" - -#: src/popup.c:710 -msgid "64 bits" -msgstr "64 bit" +#: src/popup.c:504 src/popup.c:619 src/popup.c:715 +msgid "Original value" +msgstr "valore originale" #: src/popup.c:765 -msgid "Selecteur suivant" -msgstr "Selettore seguente" +msgid "Next selector" +msgstr "Indice di lettura" #: src/popup.c:769 -msgid "Selecteur precedant" -msgstr "Selettore precedente" +msgid "Previous selector" +msgstr "selettore Precedente" #: src/popup.c:777 -msgid "Supprimer la plage active" +msgid "Delete the active range" msgstr "Eliminare il campo attivo" -#: src/popup.c:849 -msgid "Retourner horizontalement" -msgstr "Capovolgi orizzontalmente" - -#: src/popup.c:853 -msgid "Retourner verticalement" -msgstr "Capovolgi verticalmente" - -#: src/popup.c:861 -msgid "Image au premier plan" -msgstr "Immagine in primo piano" +#: src/popup.c:850 +msgid "Flip Horizontal" +msgstr " Selezione orizzontale" + +#: src/popup.c:854 +msgid "Flip Vertical" +msgstr "Rifletti verticale" + +#: src/popup.c:862 +msgid "Foreground image" +msgstr "immagine in primo piano" -#: src/popup.c:865 -msgid "Image au dessus" +#: src/popup.c:866 +msgid "Image above" msgstr "Immagine sopra" -#: src/popup.c:869 -msgid "Image en dessous" +#: src/popup.c:870 +msgid "Image below" msgstr "Immagine sotto" -#: src/popup.c:873 -msgid "Image au dernier plan" -msgstr "Immagine sullo sfondo" +#: src/popup.c:874 +msgid "Image to the background" +msgstr "Immagine di sfondo" -#: src/popup.c:881 -msgid "Effacer l'image" +#: src/popup.c:882 +msgid "Clear image" msgstr "Cancellare l'immagine" -#: src/popup.c:918 -msgid "Supprimer l'image de la liste" -msgstr "Rimuovere l'immagine dalla lista" - -#: src/popup.c:1036 -msgid "V0 [ meilleure qualite ]" -msgstr "V0 [ qualità migliore ]" +#: src/popup.c:920 +msgid "Remove image from the list" +msgstr "Rimuovi immagine dalla lista" -#: src/popup.c:1036 src/popup.c:1039 -msgid "V4 [ defaut ]" +#: src/popup.c:1111 +msgid "V0 [ best quality ]" +msgstr "V0 (qualità migliore)" + +#: src/popup.c:1111 src/popup.c:1114 +msgid "V4 [ default ]" msgstr "V4 [ default ]" -#: src/popup.c:1036 -msgid "V9 [ moins bonne qualite ]" +#: src/popup.c:1111 +msgid "V9 [ Lower quality ]" msgstr "V9 [ qualità peggiore ]" -#: src/popup.c:1219 -msgid "Qualite -1 [ Moins bonne qualite ]" -msgstr "Qualità -1 [ Qualità peggiore ]" +#: src/popup.c:1294 +msgid "Quality -1 [ Lower quality ]" +msgstr "Qualità -1 (Qualità peggiore)" -#: src/popup.c:1220 -msgid "Qualite 3 [ Defaut ]" +#: src/popup.c:1295 +msgid "Quality 3 [ Defaut ]" msgstr "Qualità 3 [ default ]" -#: src/popup.c:1221 -msgid "Qualite 10 [ Meilleure qualite ]" -msgstr "Qualità 10 [ Qualità migliore ]" +#: src/popup.c:1296 +msgid "Quality 10 [ Best Quality ]" +msgstr "Qualità 10 (Qualità migliore)" #: src/prg_init.c:85 msgid " Decode ATSC A/52 audio streams" @@ -1257,27 +1119,27 @@ msgstr " WAVPACK Hybrid Lossless Audio Compressor" #: src/prg_init.c:357 -msgid " ... les paquets: deb " +msgid " ... Packets: deb " msgstr " ... i pacchetti: deb " #: src/prg_init.c:363 -msgid " ... les paquets: tgz " +msgid " ... Packets: tgz " msgstr " ... i pacchetti: tgz " #: src/prg_init.c:369 -msgid " ... les paquets: fpm " +msgid " ... Packets: fpm " msgstr " ... i pacchetti: fpm " #: src/prg_init.c:375 -msgid " ... les paquets: rpm " +msgid " ... Packets: rpm " msgstr " ... i pacchetti: rpm " #: src/prg_init.c:381 -msgid " ... les paquets: pkg.tar.xz " +msgid " ... Packets: pkg.tar.xz " msgstr " ... i pacchetti: pkg.tar.xz " #: src/prg_init.c:387 -msgid " ... les paquets: ? " +msgid " ... Packets: ? " msgstr " ... i pacchetti: ? " #: src/prg_init.c:623 @@ -1285,288 +1147,344 @@ msgstr "Stato" #: src/prg_init.c:637 -msgid "Paquet" -msgstr "Pacchetti" +msgid "Packets" +msgstr "Packets" #: src/prg_init.c:652 msgid "Action" msgstr "Azione" #: src/scan.c:259 -msgid "PACKAGE dvd+rw-tools ABSENT" +msgid "PACKAGE dvd+rw-tools is missing" msgstr "PACCHETTO dvd+rw-tools ASSENTE" #: src/scan.c:260 -msgid "Le package 'dvd+rw-tools' est absent" -msgstr "Pacchetto 'dvd+rw-tools' non è installato" +msgid "The package 'imagemagick' is missing" +msgstr "Il pacchetto 'ImageMagick' manca" #: src/scan.c:262 -msgid "de votre systeme !" +msgid "on your system !" msgstr "sul vostro sistema!" -#: src/scan.c:264 -msgid "Veuillez l'installer car j'ai besoin de" -msgstr "Siete pregati di installarlo e di ricominciare" +#: src/scan.c:264 src/split.c:438 +msgid "Please install it and resume" +msgstr "Installare e riprendere" #: src/scan.c:266 -msgid "'dvd+rw-mediainfo' pour identifier le(s)" +msgid "'Dvd + rw-mediainfo' to identify the" msgstr "'dvd+rw-mediainfo' per identificare i(l)" #: src/scan.c:268 -msgid "lecteur(s) de cd / dvd." +msgid "reader of cd / dvd." msgstr "lettore(i) di cd / dvd." # -#: src/split.c:279 +#: src/split.c:297 msgid "" -"Menu: Click droit / Ajout plage: Click bouton centre / Zoom: Ctrl+Scroll" +"Menu: right click / Adding track: Click the center button / Zoom: Ctrl" +"+Scroll" msgstr "" "Menu: Tasto destro del mouse / Aggiunta di pista: Fare clic sul pulsante / " "Zoom: Ctrl+Scrollcentrale" # -#: src/split.c:282 -msgid "Ajout plage: Click bouton centre / Zoom: Ctrl+Scroll" +#: src/split.c:300 +msgid "Adding track: Click the center button / Zoom: Ctrl+Scroll" msgstr "" "Aggiunta di pista: Fare clic sul pulsante centrale / Zoom: Ctrl+Scroll" -#: src/split.c:286 -msgid "" -"Pret pour l'import d'un fichier CUE, WAV, FLAC, OGG, MP3, APE, WMA" +#: src/split.c:304 +msgid "Ready for imports and a CUE file, WAV, FLAC, OGG, MP3, APE, WMA" msgstr "" "Pronto per l'import di un file CUE, WAV, FLAC, OGG, MP3, APE, WMA" -#: src/split.c:356 src/split.c:385 -msgid "Ce fichier appartient a XCFA" -msgstr "Questo file appartiene a XCFA" +#: src/split.c:378 src/split.c:407 +msgid "This file belongs XCFA" +msgstr "Questo file appartiene XCFA" -#: src/split.c:357 src/split.c:386 -msgid "Selectionnez un autre fichier." +#: src/split.c:379 src/split.c:408 +msgid "Select another file." msgstr "Selezionare un altro file." -#: src/split.c:365 -msgid "Fichier vide" -msgstr "File vuoto" +#: src/split.c:387 +msgid "Empty file" +msgstr "file vuoto" -#: src/split.c:366 -msgid "Le fichier ne contient aucune donnee !!!" +#: src/split.c:388 +msgid "The file contains no data !!!" msgstr "Il file non contiene dati !!!" -#: src/split.c:411 -msgid "Sox et Mplayer absents" +#: src/split.c:433 +msgid "Sox and Mplayer not found" msgstr "Sox e Mplayer assenti" -#: src/split.c:412 -msgid "Sox et Mplayer sont absents de votre" -msgstr "Sox e Mplayer sono assenti nella vostra" +#: src/split.c:434 +msgid "Sox et Mplayer are not found" +msgstr "Sox e Mplayer assenti" -#: src/split.c:414 -msgid "configuration." +#: src/split.c:436 +msgid "in your configuration." msgstr "configurazione." -#: src/split.c:416 -msgid "Veuillez les installer pour pouvoir continuer." -msgstr "Si prega di installarli per continuare." - -#: src/split.c:467 -msgid "Erreur de choix de fichier" -msgstr "Errore nella scelta di file" - -#: src/split.c:468 -msgid "Veuillez selectionner un fichier de type WAV FLAC MP3 OGG APE" -msgstr "Si prega di selezionare un file di tipo MP3 WAV OGG FLAC APE" - -#: src/split.c:505 src/split.c:579 -msgid "Mauvais type de fichier" -msgstr "Tipo di file errato" +#: src/split.c:491 +msgid "Error file select" +msgstr "Errore di lettura !" -#: src/split.c:506 src/split.c:580 +#: src/split.c:492 +msgid "Please select a file type of MP3 WAV OGG FLAC APE" +msgstr "Selezionare un tipo di file di WAV MP3 OGG FLAC APE" + +#: src/split.c:530 src/split.c:602 +msgid "Wrong type of file" +msgstr "Tipo sbagliato di di file" + +#: src/split.c:531 src/split.c:603 msgid "" -"Les types de fichiers acceptes\n" -"sont: WAV FLAC MP3 OGG APE WMA CUE" +"File types accepted\n" +"sare: WAV FLAC MP3 OGG APE WMA CUE" msgstr "" "I tipi di file accettati sono:\n" "WAV FLAC MP3 OGG APE WMA CUE" -#: src/split_conv.c:313 src/split_conv.c:330 -msgid "Erreur SOX" -msgstr "Errore di SOX" +#: src/split_conv.c:316 src/split_conv.c:333 +msgid "SOX Error" +msgstr "SOX Errore" -#: src/split_conv.c:314 src/split_conv.c:331 -msgid "Le programme SOX de votre distribution" +#: src/split_conv.c:317 src/split_conv.c:334 +msgid "The SOX program on your distribution" msgstr "Il programma SOX della vostra distribuzione" -#: src/split_conv.c:316 src/split_conv.c:333 -msgid "a generer une erreur pendant la conversion." +#: src/split_conv.c:319 src/split_conv.c:336 +msgid "has generated an error during conversion." msgstr "ha generato un errore durante la conversione." #: src/split_cue.c:116 -msgid "Erreur de lecture !" -msgstr "Errore di lettura !" +msgid "Misreading !" +msgstr "Fraintendimento!" -#: src/split_cue.c:177 src/split_cue.c:187 src/split_cue.c:197 -msgid "Erreur" -msgstr "Errore" +#: src/split_cue.c:177 src/split_cue.c:187 src/split_cue.c:196 +msgid "Error" +msgstr "errore" #: src/split_cue.c:178 -msgid "Aucun fichier de musique associe au cue-file !" -msgstr "Nessun file musicale associato al file cue !" +msgid "No music file associated with the cue-file" +msgstr "Nessun file musicale associato con la stecca file" #: src/split_cue.c:188 -msgid "Pas de fichier WAV dans le cue-file !" -msgstr "Nessun file WAV nel file cue !" +msgid "No WAV file in the cue-file" +msgstr "Nessun file WAV in file di cue-" -#: src/split_cue.c:198 -msgid "Aucun fichier de musique associe dans le dossier" -msgstr "Nessun file musicale nella directory associata" +#: src/split_cue.c:197 +msgid "No music file in the folder associated" +msgstr "Nessun file musicale nella cartella associata" -#: src/split_cue.c:200 -msgid "du cue-file" +#: src/split_cue.c:199 +msgid "of cue-file" msgstr "al file cue" -#: src/split_cue.c:294 -msgid "Erreur de donnees dans le fichier CUE" -msgstr "Errori nei dati del file CUE" +#: src/split_cue.c:293 +msgid "Data errors in the CUE file" +msgstr "Errori di dati nel file CUE" -#: src/split_cue.c:295 -msgid "La solution est d'importer le fichier de" +#: src/split_cue.c:294 +msgid "The solution is to import the file" msgstr "La soluzione è quella di importare il file" -#: src/split_cue.c:297 -msgid "musique qui sera reconnu et pre-decoupe" -msgstr "musicale che sarà riconosciuto e pre-sezionato" - -#: src/split_cue.c:299 -msgid "dans le module Split." -msgstr "nel modulo Split." - -#: src/split_cue.c:301 -msgid "Il ne restera qu'a ajuster les plages pour" -msgstr "Ci sarà solo da regolare i range per" +#: src/split_cue.c:296 +msgid "music that will be recognized and pre-cutting" +msgstr "musica che verrà riconosciuto e pre-taglio" + +#: src/split_cue.c:298 +msgid "in the split module." +msgstr "nel modulo di divisione." + +#: src/split_cue.c:300 +msgid "We will just adjust to the beaches" +msgstr "Ci sarà solo regolare per le spiagge" -#: src/split_cue.c:303 -msgid "generer un nouveau cue-file ou des decoupes" +#: src/split_cue.c:302 +msgid "generate a new cue-file or cuts" msgstr "generare un nuovo file cue o i tagli" -#: src/split_cue.c:305 -msgid "correspondant aux plages." +#: src/split_cue.c:304 +msgid "corresponding to the beaches." msgstr "corrispondenti ai range." #: src/split_selector.c:136 -msgid "Suppression pendant la lecture impossible" -msgstr "L'eliminazione durante la riproduzione non è consentita" +msgid "Deleting not during playback" +msgstr "Non Eliminazione durante la riproduzione" -#: src/split_selector.c:229 src/split_selector.c:235 src/split_selector.c:289 -#: src/split_selector.c:295 src/split_selector.c:352 src/split_selector.c:359 -#: src/split_selector.c:429 src/split_selector.c:435 -msgid "Temps inferieur a 5 secondes entre marqueur et curseur !" +#: src/split_selector.c:231 src/split_selector.c:237 src/split_selector.c:291 +#: src/split_selector.c:297 src/split_selector.c:354 src/split_selector.c:361 +#: src/split_selector.c:431 src/split_selector.c:437 +msgid "Time of less than 5 seconds between marker and cursor !" msgstr "Tempo inferiore a 5 secondi tra il marker e il cursore!" -#: src/translate.c:51 -msgid "Fichier" +#: src/web.c:173 src/web.c:234 +msgid "No web browser" +msgstr "No browser web" + +#: src/web.c:174 src/web.c:235 +msgid "No Web access: no web browser" +msgstr "No Web accesso: nessun browser web" + +#: src/web.c:176 src/web.c:237 +msgid "found in your system." +msgstr "trovato nel vostro sistema." + +#: src/web.c:178 src/web.c:239 +msgid "Please install a web browser." +msgstr "Per favore, installare il pacchetto [icedax]" + +#: src/web.c:188 +msgid "You need to enable web access" +msgstr "È necessario abilitare l'accesso web" + +#: src/web.c:249 +msgid "Application is missing." +msgstr "L'applicazione è assente." + +#: src/web.c:250 +msgid "Please install : " +msgstr "Si prega di installare : " + +#: src/win_about.c:124 +msgid " Xcfa on the web" +msgstr " Xcfa nel Web" + +#: src/win_about.c:174 +msgid "" +"\n" +"Au tout debut:\n" +"\n" +"Serres Patrick, Hamann Regis, Fabien Gregis, @Dzef, @alteo_gange, \n" +"@Leonux, @zarer, @Shankarius, @bishop, @Ludo, @Patachonf,\n" +"... ;-)\n" +"\n" +"" +msgstr "" +"\n" +"All'inizio:\n" +"\n" +"Serres Patrick, Hamann Regis, Fabien Gregis, @Dzef, @alteo_gange, \n" +"@Leonux, @zarer, @Shankarius, @bishop, @Ludo, @Patachonf,\n" +"... ;-)\n" +"\n" +"" + +#: src/win_scan.c:170 +msgid "Waiting ..." +msgstr "In attesa ... " + +#: glade/xcfa.glade:66 glade/xcfa.glade:2533 +msgid "File" msgstr "File" -#: src/translate.c:52 -msgid "Quitter" +#: glade/xcfa.glade:75 +msgid "Quit" msgstr "Uscire" -#: src/translate.c:53 -msgid "Outils" -msgstr "Strumenti" +#: glade/xcfa.glade:89 +msgid "Tools" +msgstr "Tools" -#: src/translate.c:54 -msgid "Visibilite des champs" +#: glade/xcfa.glade:99 +msgid "Visibility fields" msgstr "Visibilità dei campi" -#: src/translate.c:55 -msgid "Aide" -msgstr "Aiuto" - -#: src/translate.c:56 -msgid "A propos" -msgstr "A proposito" +#: glade/xcfa.glade:112 +msgid "Help" +msgstr "Help" + +#: glade/xcfa.glade:121 +msgid "About" +msgstr "About" + +#: glade/xcfa.glade:224 +msgid "Read" +msgstr "Read" -#: src/translate.c:57 src/translate.c:67 -msgid "Lecture" -msgstr "Lettura" - -#: src/translate.c:58 -msgid " Choix du peripherique / Lecture du DVD " +#: glade/xcfa.glade:252 +msgid " Choosing the peripheral / DVD playback " msgstr " Scelta della periferica / Lettura del DVD " -#: src/translate.c:59 src/translate.c:69 src/translate.c:125 -msgid " Destination des fichiers " -msgstr " Destinazione dei file " +#: glade/xcfa.glade:303 glade/xcfa.glade:921 +msgid " File Destination " +msgstr " Installazione " -#: src/translate.c:60 src/translate.c:70 +#: glade/xcfa.glade:359 glade/xcfa.glade:1009 msgid " Eject " msgstr " Eject " -#: src/translate.c:61 src/translate.c:92 -msgid " Normaliser " +#: glade/xcfa.glade:434 +msgid " Normalize " msgstr " Normalizzare " -#: src/translate.c:62 -msgid "Deplier" -msgstr "Spiegare" - -#: src/translate.c:63 -msgid "Replier" -msgstr "Ripiegare" +#: glade/xcfa.glade:494 +msgid "Unfold" +msgstr "spiegare" + +#: glade/xcfa.glade:548 +msgid "Fold" +msgstr "piega" -#: src/translate.c:64 +#: glade/xcfa.glade:649 msgid " Vers 2CH: Sub / Ambiance " msgstr " Verso 2CH: Sub / Ambiente " -#: src/translate.c:65 src/translate.c:98 -msgid "Extraire" -msgstr "Estrarre" +#: glade/xcfa.glade:705 +msgid "Extraction" +msgstr "XCFA: Estrazione CD" -#: src/translate.c:66 +#: glade/xcfa.glade:756 msgid " DVD " msgstr " DVD " -#: src/translate.c:68 -msgid " Choix du peripherique / Lecture du CD " +#: glade/xcfa.glade:842 +msgid "Lecture" +msgstr "Lettura" + +#: glade/xcfa.glade:870 +msgid " Choosing the peripheral / CD playback " msgstr " Scelta della periferica / Lettura del CD " -#: src/translate.c:71 -msgid "Titre:" +#: glade/xcfa.glade:1065 +msgid "Title:" msgstr "Titolo:" -#: src/translate.c:72 +#: glade/xcfa.glade:1077 msgid "Album:" msgstr "Album:" -#: src/translate.c:73 -msgid "Artiste:" +#: glade/xcfa.glade:1089 +msgid "Artist:" msgstr "Artista:" -#: src/translate.c:74 -msgid " Annee:" -msgstr " Anno:" +#: glade/xcfa.glade:1101 +msgid "Comment:" +msgstr "Commento:" + +#: glade/xcfa.glade:1113 +msgid " Year:" +msgstr " Genere:" -#: src/translate.c:75 +#: glade/xcfa.glade:1125 msgid " Genre:" msgstr " Genere:" -#: src/translate.c:76 -msgid " Piste:" -msgstr " Traccia:" +#: glade/xcfa.glade:1137 +msgid " Track:" +msgstr "Titolo:" -#: src/translate.c:77 +#: glade/xcfa.glade:1149 msgid " *.m3u et xspf: " msgstr " *.m3u e xspf: " -#: src/translate.c:78 -msgid "Commentaire:" -msgstr "Commento:" - -#: src/translate.c:79 -msgid " Modification des tags Freedb " +#: glade/xcfa.glade:1287 +msgid "Editing tags Freedb" msgstr " Modifica dei tag Freedb " -#: src/translate.c:80 +#: glade/xcfa.glade:1302 msgid "" "%a [ %a=\"Artist\" ]\n" "\n" @@ -1592,7 +1510,7 @@ "il carattere o i caratteri da mantenere invariati devono essere preceduti " "dal carattere %" -#: src/translate.c:81 +#: glade/xcfa.glade:1312 msgid "" "%a - artiste %b - titre " "de l'album %c - numero de la piste\n" @@ -1613,404 +1531,413 @@ "%u - sostituzione di caratteri: %u(AB=C) %u( =_) %Tl " "- Tetsumaki lower" -#: src/translate.c:82 -msgid " Arrangement des titres du CD " +#: glade/xcfa.glade:1346 +msgid " Arrangement of CD titles" msgstr " Ordinamento delle tracce del CD " -#: src/translate.c:83 -msgid "Creation d'un fichier unique au format: " +#: glade/xcfa.glade:1382 +msgid "Creation of a single file format: " msgstr "Creazione di un solo file nel formato: " -#: src/translate.c:84 -msgid " et dont le nom sera: " -msgstr " e il cui nome sarà: " - -#: src/translate.c:85 -msgid "Ecriture du fichier cue" -msgstr "Scrittura del file cue" +#: glade/xcfa.glade:1430 +msgid " and whose name will be: " +msgstr " e il cui nome sarà:" + +#: glade/xcfa.glade:1461 +msgid "Writing the cue file" +msgstr "Scrivere il file cue" -#: src/translate.c:86 -msgid " Au moins deux selections colonne Wav " +#: glade/xcfa.glade:1484 +msgid " At least two selections column Wav " msgstr " Almeno due selezioni di colonna Wav " -#: src/translate.c:87 +#: glade/xcfa.glade:1514 msgid "" -"Creation d'un fichier cue\n" -"unique depuis une lecture\n" -"du cd audio" +"\n" +"Creating a cue file from a single\n" +"reading audio cd\n" msgstr "" -"Creazione di un solo file\n" -"cue dalla lettura del\n" -"cd audio" +"\n" +"Creazione di un file spunto da un singolo \n" +"lettura audio cd \n" -#: src/translate.c:88 -msgid "Creation fichier cue uniquement" -msgstr "Creazione del solo file cue" +#: glade/xcfa.glade:1562 +msgid "File Creation cue only" +msgstr "Solo Creazione File cue" -#: src/translate.c:89 +#: glade/xcfa.glade:1597 msgid " Creation Cue cd " msgstr " Creazione Cue cd " -#: src/translate.c:90 -msgid " Creation d'un fichier unique " -msgstr " Creazione di un file unico" +#: glade/xcfa.glade:1625 +msgid "  Creation of a single file" +msgstr "Creazione di un singolo file" -#: src/translate.c:91 -msgid "Gestion des tags, titres et fichiers cue" +#: glade/xcfa.glade:1638 +msgid "Management of tags, titles and cue files" msgstr "Gestione dei tags, dei titoli e dei file cue" -#: src/translate.c:93 +#: glade/xcfa.glade:1688 +msgid " normalize " +msgstr " Normalizzare " + +#: glade/xcfa.glade:1749 msgid "definit le serveur a contacter pour les recherches titre" msgstr "definisce il server da contattare per la ricerca dei titoli" -#: src/translate.c:94 +#: glade/xcfa.glade:1788 msgid "Parametres par defaut" msgstr "I parametri di default" -#: src/translate.c:96 -msgid "Choix parmis les differentes bases de donnees pour le CD." -msgstr "Scelta tra i diversi database per il CD." - -#: src/translate.c:97 +#: glade/xcfa.glade:1887 msgid "DiscId" msgstr "DiscId" -#: src/translate.c:99 +#: glade/xcfa.glade:1946 +msgid "Extract" +msgstr "XCFA: Estrazione CD" + +#: glade/xcfa.glade:2053 msgid " CD " msgstr " CD " -#: src/translate.c:100 src/translate.c:124 -msgid " Importer " +#: glade/xcfa.glade:2135 glade/xcfa.glade:3271 +msgid " Import " msgstr " Importare " -#: src/translate.c:101 -msgid " Destination des conversions " +#: glade/xcfa.glade:2190 +msgid " Destination conversions " msgstr " Destinazione delle conversioni " -#: src/translate.c:102 -msgid " Nettoyer " -msgstr " Pulire " +#: glade/xcfa.glade:2266 +msgid " Clean up " +msgstr " Creazione Cue cd " -#: src/translate.c:103 src/translate.c:107 +#: glade/xcfa.glade:2389 msgid "Appliquer les modifications" msgstr "Applicare le modifiche" -#: src/translate.c:104 -msgid " Normalise: " +#: glade/xcfa.glade:2444 +msgid " Normalize: " msgstr " Normalizza: " -#: src/translate.c:105 -msgid " Choix niveau dBFS: " -msgstr " Scelta del livello dBFS " - -#: src/translate.c:106 src/translate.c:123 -msgid " Fichiers " -msgstr " File " +#: glade/xcfa.glade:2477 +msgid " Level selection dBFS: " +msgstr " dBFS selezione Livello: " + +#: glade/xcfa.glade:2615 +msgid "Apply changes" +msgstr "Applica modifiche" -#: src/translate.c:108 +#: glade/xcfa.glade:2651 msgid " Wav " msgstr " Wav " -#: src/translate.c:109 src/translate.c:121 -msgid "Appliquer" -msgstr "Applicare" - -#: src/translate.c:110 -msgid "Effacer" -msgstr "Cancellare" +#: glade/xcfa.glade:2735 +msgid "Apply" +msgstr "applicare" + +#: glade/xcfa.glade:2789 +msgid "Delete" +msgstr "cancellare" -#: src/translate.c:111 +#: glade/xcfa.glade:2826 msgid " Mp3-Ogg " msgstr " Mp3-Ogg " -#: src/translate.c:112 -msgid "Titre:" +#: glade/xcfa.glade:2875 +msgid "Title:" msgstr "Titolo:" -#: src/translate.c:113 +#: glade/xcfa.glade:2886 msgid "Album:" msgstr "Album:" -#: src/translate.c:114 -msgid "Artiste:" +#: glade/xcfa.glade:2897 +msgid "Artist:" msgstr "Artista:" -#: src/translate.c:115 -msgid "Commentaire:" +#: glade/xcfa.glade:2908 +msgid "Comment:" msgstr "Commento:" -#: src/translate.c:116 -msgid " Annee:" -msgstr " Anno:" +#: glade/xcfa.glade:2919 +msgid " Year:" +msgstr " Anno:" -#: src/translate.c:117 +#: glade/xcfa.glade:2930 msgid " Genre:" msgstr " Genere:" -#: src/translate.c:118 -msgid " Piste:" +#: glade/xcfa.glade:2941 +msgid " Track:" msgstr " Traccia:" -#: src/translate.c:119 +#: glade/xcfa.glade:2952 msgid " Modif.:" msgstr " Modif.:" -#: src/translate.c:120 +#: glade/xcfa.glade:3078 msgid "0" msgstr "0" -#: src/translate.c:122 src/translate.c:309 +#: glade/xcfa.glade:3102 +msgid "Apply " +msgstr "Applicare " + +#: glade/xcfa.glade:3160 glade/xcfa.glade:10210 msgid " Tags " msgstr " Tags " -#: src/translate.c:126 +#: glade/xcfa.glade:3190 +msgid " Files " +msgstr "Tutti file (*.*)" + +#: glade/xcfa.glade:3322 +msgid "   File Destination " +msgstr " Destinazione dei file " + +#: glade/xcfa.glade:3494 msgid "Lecture de 5 secondes apres le marqueur de debut" msgstr "Lettura di 5 secondi dopo il marker di inizio" -#: src/translate.c:127 +#: glade/xcfa.glade:3546 msgid "Index de debut" msgstr "Indice iniziale" -#: src/translate.c:128 src/translate.c:135 src/translate.c:138 +#: glade/xcfa.glade:3547 glade/xcfa.glade:3813 glade/xcfa.glade:3874 msgid "00h00m00s" msgstr "00h00m00s" -#: src/translate.c:129 +#: glade/xcfa.glade:3600 msgid "lecture" msgstr "Lettura" -#: src/translate.c:130 +#: glade/xcfa.glade:3653 msgid "Pause" msgstr "Pausa" -#: src/translate.c:131 +#: glade/xcfa.glade:3712 msgid "Index de lecture" msgstr "Indice di lettura" -#: src/translate.c:132 src/translate.c:171 +#: glade/xcfa.glade:3713 glade/xcfa.glade:4767 msgid "label" msgstr "label" -#: src/translate.c:133 +#: glade/xcfa.glade:3760 msgid "Lecture de 5 secondes avant le marqueur de fin" msgstr "Lettura di 5 secondi prima del marker di fine" -#: src/translate.c:134 +#: glade/xcfa.glade:3812 msgid "Index de fin" msgstr "Fine indice" -#: src/translate.c:136 +#: glade/xcfa.glade:3860 msgid "Plage" msgstr "Range" -#: src/translate.c:137 +#: glade/xcfa.glade:3873 msgid "Duree de la plage active" msgstr "Durata del range attivo" -#: src/translate.c:139 +#: glade/xcfa.glade:3955 msgid "Suprimer tous les marqueurs pour les remplacer par un marqueur unique" msgstr "Eliminare tutti i marker e sostituirli con un singolo marker" -#: src/translate.c:140 +#: glade/xcfa.glade:4044 msgid "Le fichier CUE sera enregistre vers 'Destination des fichiers'." msgstr "Il file CUE sarà memorizzato nella directory 'Destinazione dei file'." -#: src/translate.c:141 -msgid "Production fichier Cue" +#: glade/xcfa.glade:4073 +msgid "Production Cue file" msgstr "Generazione del file Cue" -#: src/translate.c:142 +#: glade/xcfa.glade:4098 msgid "Le resultat du Split sera dirige vers 'Destination des fichiers'." msgstr "" "Il risultato dello split sarà memorizzato nella diretory 'Destinazione dei " "file'." -#: src/translate.c:143 +#: glade/xcfa.glade:4127 msgid "Split" msgstr "Split" -#: src/translate.c:144 +#: glade/xcfa.glade:4188 msgid " Split " msgstr " Split " -#: src/translate.c:145 +#: glade/xcfa.glade:4253 msgid "Importation du titre du CD." msgstr "Importazione del titolo del CD." -#: src/translate.c:146 -msgid "Titre CD" +#: glade/xcfa.glade:4276 +msgid "Title CD" msgstr "Titolo CD" -#: src/translate.c:147 +#: glade/xcfa.glade:4296 msgid "Choix d'une nouvelle police." msgstr "Scelta di un nuovo font." -#: src/translate.c:148 +#: glade/xcfa.glade:4318 msgid "Texte gras." msgstr "Testo in grassetto." -#: src/translate.c:149 +#: glade/xcfa.glade:4340 msgid "Texte italique." msgstr "Testo in corsivo." -#: src/translate.c:150 -msgid "" -"Apres une lecture de CD et un ajout d'etiquette, ce menu permet la mise en " -"forme des titres, auteurs ..." -msgstr "" -"Dopo la lettura di un CD e l'aggiunta di un'etichetta, questo menu permette " -"la formattazione di titoli, autori ..." - -#: src/translate.c:151 +#: glade/xcfa.glade:4375 msgid "Ajouter du texte editable." msgstr "Aggiunta di testo modificabile." -#: src/translate.c:152 -msgid "Texte" +#: glade/xcfa.glade:4430 +msgid "Text" msgstr "Testo" -#: src/translate.c:153 +#: glade/xcfa.glade:4462 msgid "Saisissez ici un critere de recherche d'images." msgstr "Inserisci qui un criterio di ricerca di immagini." -#: src/translate.c:154 +#: glade/xcfa.glade:4484 msgid "Importation des images depuis le Web." msgstr "Importazione di immagini dal web." -#: src/translate.c:155 -msgid "Import images web" +#: glade/xcfa.glade:4509 +msgid "Import web images " msgstr "Importare immagini dal web" -#: src/translate.c:156 +#: glade/xcfa.glade:4578 msgid "Supprimer l'image en selection" msgstr "Eliminare l'iimagine selezionsnata" -#: src/translate.c:157 +#: glade/xcfa.glade:4600 msgid "AJouter de nouvelles images." msgstr "Aggiungere nuove immagini." -#: src/translate.c:158 +#: glade/xcfa.glade:4606 msgid "Ouvre un fichier" msgstr "Aprire un file" -#: src/translate.c:159 +#: glade/xcfa.glade:4623 msgid "Enregistrer la page au format png." msgstr "Salva la pagina in formato png." -#: src/translate.c:160 +#: glade/xcfa.glade:4629 msgid "Sauvegarde le fichier" msgstr "Salvare il file" -#: src/translate.c:161 +#: glade/xcfa.glade:4646 msgid "Diminution de l'echelle." msgstr "Riduzione della scala." -#: src/translate.c:162 +#: glade/xcfa.glade:4652 msgid "Reduit l'agrandissement" msgstr "Riduci l'ingrandimento" -#: src/translate.c:163 +#: glade/xcfa.glade:4669 msgid "Echelle a 100%." msgstr "Scala al 100%." -#: src/translate.c:164 +#: glade/xcfa.glade:4675 msgid "Remet l'echelle a 100%" msgstr "Ripristina la scala al 100%" -#: src/translate.c:165 +#: glade/xcfa.glade:4692 msgid "Augmentation de l'echelle." msgstr "Aumento della scala." -#: src/translate.c:166 +#: glade/xcfa.glade:4698 msgid "Augmente l'agrandissement" msgstr "Aumenta l'ingrandimento" -#: src/translate.c:167 +#: glade/xcfa.glade:4715 msgid "Echelle compatible avec la taille de la fenetre." msgstr "Scala compatibile con le dimensioni della finestra." -#: src/translate.c:168 +#: glade/xcfa.glade:4721 msgid "Adapte l'echelle a la taille de la fenetre" msgstr "Adatta la scala alle dimensioni della finestra" -#: src/translate.c:169 +#: glade/xcfa.glade:4738 msgid "Emplacement de sauvegarde des fichiers." msgstr "Posizione dei file di backup." -#: src/translate.c:170 -#, fuzzy +#: glade/xcfa.glade:4752 msgid "Nom (sans extention) du fichier a sauvegarder." msgstr "Il nome (senza estensione) del file è mantenuto." -#: src/translate.c:172 +#: glade/xcfa.glade:4815 msgid " Pochette " msgstr " Copertina " -#: src/translate.c:173 +#: glade/xcfa.glade:4861 msgid "Nice" msgstr "Nice" -#: src/translate.c:174 -msgid " Priorite systeme " +#: glade/xcfa.glade:4896 +msgid " Priority system " msgstr " Priorità di sistema " -#: src/translate.c:175 +#: glade/xcfa.glade:4935 msgid "" -"Indiquez ici le dossier sur votre systeme qui servira de lieu\n" -"de stockage provisoire pendant les differentes conversions.\n" +"\n" +"Enter here the folder on your system that will serve as\n" +"temporary storage for the different conversions.\n" msgstr "" +"\n" "Indicaee qui la diretory del vostro sistema che servirà per\n" "la memorizzazione temporanea per le diverse conversioni.\n" -#: src/translate.c:176 -msgid " Dossier provisoire des conversions " +#: glade/xcfa.glade:4971 +msgid " Provisional file conversions " msgstr " Directory temporanea per le conversioni " -#: src/translate.c:177 +#: glade/xcfa.glade:5017 msgid "button" msgstr "bottone" -#: src/translate.c:178 -msgid " Jouer une musique en fin de tache " -msgstr " Riproduzione dei brani al termine del processo " +#: glade/xcfa.glade:5038 +msgid " Playing a job end music " +msgstr " Riproduzione di musica fine lavoro " -#: src/translate.c:179 +#: glade/xcfa.glade:5058 msgid " General " msgstr " Generale" -#: src/translate.c:180 +#: glade/xcfa.glade:5100 msgid "cdparanoia" msgstr "cdparanoia" -#: src/translate.c:181 +#: glade/xcfa.glade:5120 msgid "cdparanoia mode expert" msgstr "cdparanoia modalità da esperti" -#: src/translate.c:182 +#: glade/xcfa.glade:5140 msgid "cdparanoia mode expert multi passes" msgstr "cdparanoia modalità da esperti a passi multipli" -#: src/translate.c:183 +#: glade/xcfa.glade:5168 msgid "cdda2wav / icedax" msgstr "cdda2wav / icedax" -#: src/translate.c:184 +#: glade/xcfa.glade:5194 msgid " Extraction cd-audio avec: " msgstr " Estrazione CD audio con: " -#: src/translate.c:185 +#: glade/xcfa.glade:5268 msgid "HomePage" msgstr "HomePage" -#: src/translate.c:186 +#: glade/xcfa.glade:5323 msgid "ManPage " msgstr "ManPage " -#: src/translate.c:187 +#: glade/xcfa.glade:5352 msgid " Web cdparanoia " msgstr " Web cdparanoia " -#: src/translate.c:188 +#: glade/xcfa.glade:5414 msgid "" "Le fichier LogExpertMode.txt sera cree dans le dossier des " "extractions" @@ -2018,22 +1945,21 @@ "Il file LogExpertMode.txt verrà creato nella directory delle " "estrazioni" -#: src/translate.c:189 -msgid "" -"Generation d'un rapport pour: cdparanoia mode expert multi passes" +#: glade/xcfa.glade:5431 +msgid "Generation of a report for: cdparanoia mode expert multi passes" msgstr "" "Generazione di un report per: modalità da esperti cdparanoia a passi " "multipli" -#: src/translate.c:190 +#: glade/xcfa.glade:5467 msgid "" -"%a - artiste %b - titre " +"%a - artist %b - titre " "de l'album %c - numero de la piste\n" "%d - titre de la chanson %e - " -"annee %g - genre\n" +"year %g - genre\n" "%na - no accent %Tl " "- Tetsumaki lower\n" -"%u - remplacement de caracteres: %u(AB=C) %u( =_)" +"%u - replacement characters: %u(AB=C) %u( =_)" msgstr "" "%a - artista %b - titolo " "dell'album %c - numero della traccia\n" @@ -2042,393 +1968,379 @@ "- Tetsumaki lower\n" "%u - caratteri di sostituzione: %u(AB=C) %u( =_)" -#: src/translate.c:191 +#: glade/xcfa.glade:5536 msgid " Dossier de stockage " msgstr " Directory di salvataggio " -#: src/translate.c:192 +#: glade/xcfa.glade:5567 msgid " CD " msgstr " CD " -#: src/translate.c:193 +#: glade/xcfa.glade:5615 msgid "ABR / CBR / VBR / VBR-NEW" msgstr "ABR / CBR / VBR / VBR-NEW" -#: src/translate.c:194 +#: glade/xcfa.glade:5660 glade/xcfa.glade:6295 msgid "Debit" msgstr "Compressione" -#: src/translate.c:195 +#: glade/xcfa.glade:5705 glade/xcfa.glade:6317 msgid "Mode" msgstr "Modo" -#: src/translate.c:196 +#: glade/xcfa.glade:5747 msgid " Lame (fichier mp3): " msgstr " Lame (file mp3): " -#: src/translate.c:197 src/translate.c:213 src/translate.c:225 -#: src/translate.c:238 src/translate.c:255 src/translate.c:266 -#: src/translate.c:280 src/translate.c:294 +#: glade/xcfa.glade:5827 glade/xcfa.glade:6466 glade/xcfa.glade:6941 +#: glade/xcfa.glade:7469 glade/xcfa.glade:8200 glade/xcfa.glade:8659 +#: glade/xcfa.glade:9192 glade/xcfa.glade:9753 msgid "Par defaut" msgstr "Di default" -#: src/translate.c:198 +#: glade/xcfa.glade:5848 msgid " Options LAME " msgstr " Opzioni LAME " -#: src/translate.c:199 src/translate.c:227 src/translate.c:268 +#: glade/xcfa.glade:5909 glade/xcfa.glade:7023 glade/xcfa.glade:8741 msgid "Site officiel" msgstr "Sito ufficiale" -#: src/translate.c:200 +#: glade/xcfa.glade:5964 msgid "Wiki mp3 " msgstr "Wiki mp3 " -#: src/translate.c:201 +#: glade/xcfa.glade:6020 msgid "Wiki " msgstr "Wiki " -#: src/translate.c:202 +#: glade/xcfa.glade:6076 msgid "ManPage " msgstr "ManPage " -#: src/translate.c:203 +#: glade/xcfa.glade:6105 msgid " Web Lame " msgstr " Web Lame " -#: src/translate.c:204 src/translate.c:218 src/translate.c:231 -#: src/translate.c:242 src/translate.c:260 src/translate.c:271 -#: src/translate.c:286 +#: glade/xcfa.glade:6181 glade/xcfa.glade:6709 glade/xcfa.glade:7238 +#: glade/xcfa.glade:7644 glade/xcfa.glade:8442 glade/xcfa.glade:8901 +#: glade/xcfa.glade:9491 msgid "[" msgstr "[" # VR dubious -#: src/translate.c:205 src/translate.c:219 src/translate.c:232 -#: src/translate.c:243 src/translate.c:261 src/translate.c:272 -#: src/translate.c:287 +#: glade/xcfa.glade:6194 glade/xcfa.glade:6722 glade/xcfa.glade:7251 +#: glade/xcfa.glade:7657 glade/xcfa.glade:8455 glade/xcfa.glade:8914 +#: glade/xcfa.glade:9504 msgid "string option interne" msgstr "string opzione interna" -#: src/translate.c:206 src/translate.c:220 src/translate.c:233 -#: src/translate.c:244 src/translate.c:262 src/translate.c:273 -#: src/translate.c:288 +#: glade/xcfa.glade:6209 glade/xcfa.glade:6737 glade/xcfa.glade:7266 +#: glade/xcfa.glade:7672 glade/xcfa.glade:8470 glade/xcfa.glade:8929 +#: glade/xcfa.glade:9519 msgid "]" msgstr "]" -#: src/translate.c:207 -msgid "" -" Options experts, definies par l'utilisateur - lame (wav -> mp3) " +#: glade/xcfa.glade:6234 +msgid " Experts options defined by the user- lame (wav -> mp3) " msgstr " Opzioni da esperti, definite dall'utente - lame (wav -> mp3) " -#: src/translate.c:208 +#: glade/xcfa.glade:6254 msgid " Mp3 " msgstr " Mp3 " -#: src/translate.c:209 -msgid " Mode" -msgstr " Modo" - -#: src/translate.c:210 -msgid " Mode flux (streaming)" -msgstr " Modo flusso (streaming)" - -#: src/translate.c:211 -msgid " Debit" -msgstr " Compressione" +#: glade/xcfa.glade:6306 +msgid "Mode flux (streaming)" +msgstr "Modo flusso (streaming)" -#: src/translate.c:212 +#: glade/xcfa.glade:6386 msgid " Oggenc (fichier ogg): " msgstr " Oggenc (file ogg): " -#: src/translate.c:214 +#: glade/xcfa.glade:6487 msgid " Options OGGENC " msgstr " Opzioni OGGENC " -#: src/translate.c:215 +#: glade/xcfa.glade:6548 msgid "Wiki " msgstr "Wiki " -#: src/translate.c:216 src/translate.c:258 src/translate.c:284 -#: src/translate.c:298 +#: glade/xcfa.glade:6604 glade/xcfa.glade:8337 glade/xcfa.glade:9386 +#: glade/xcfa.glade:9947 msgid "ManPage" msgstr "ManPage" -#: src/translate.c:217 +#: glade/xcfa.glade:6633 msgid " Web Oggenc " msgstr " Web Oggenc " -#: src/translate.c:221 -msgid "" -" Options experts, definies par l'utilisateur - oggenc (wav -> ogg) " +#: glade/xcfa.glade:6762 +msgid " Experts options defined by the user - oggenc (wav -> ogg) " msgstr "" " Opzioni da esperti, definite dall'utente - oggenc (wav -> ogg) " -#: src/translate.c:222 +#: glade/xcfa.glade:6782 msgid " Oggenc " msgstr " Oggenc " -#: src/translate.c:223 +#: glade/xcfa.glade:6824 msgid "Taux de compression" msgstr "Tasso di compressione" -#: src/translate.c:224 +#: glade/xcfa.glade:6861 msgid " Flac (fichier flac): " msgstr " Flac (file flac): " -#: src/translate.c:226 +#: glade/xcfa.glade:6962 msgid " Options FLAC " msgstr " Opzioni FLAC " -#: src/translate.c:228 src/translate.c:269 +#: glade/xcfa.glade:7078 glade/xcfa.glade:8796 msgid "Framasoft " msgstr "Framasoft " -#: src/translate.c:229 +#: glade/xcfa.glade:7133 msgid "ManPage " msgstr "ManPage " -#: src/translate.c:230 +#: glade/xcfa.glade:7162 msgid " Web Flac " msgstr " Web Flac " -#: src/translate.c:234 -msgid "" -" Options experts, definies par l'utilisateur - flac (wav -> flac) " +#: glade/xcfa.glade:7291 +msgid " Experts options defined by the user- flac (wav -> flac) " msgstr " Opzioni da esperti, definite dall'utente - flac (wav -> flac) " -#: src/translate.c:235 +#: glade/xcfa.glade:7311 msgid " Flac " msgstr " Flac " -#: src/translate.c:236 +#: glade/xcfa.glade:7353 msgid " Qualite" msgstr " Qualità" -#: src/translate.c:237 +#: glade/xcfa.glade:7389 msgid " Mac (fichier ape): " msgstr " Mac (file ape): " -#: src/translate.c:239 +#: glade/xcfa.glade:7490 msgid " Options MAC " msgstr " Opzioni MAC " -#: src/translate.c:240 +#: glade/xcfa.glade:7546 msgid "Wiki" msgstr "Wiki" -#: src/translate.c:241 +#: glade/xcfa.glade:7568 msgid " Web Mac " msgstr " Web Mac " -#: src/translate.c:245 -msgid " Options experts, definies par l'utilisateur - mac (wav -> ape) " +#: glade/xcfa.glade:7697 +msgid " Experts options defined by the user - mac (wav -> ape) " msgstr " Opzioni da esperti, definite dall'utente - mac (wav -> ape) " -#: src/translate.c:246 +#: glade/xcfa.glade:7717 msgid " Mac " msgstr " Mac " -#: src/translate.c:247 +#: glade/xcfa.glade:7765 msgid "Compression" msgstr "Compressione" -#: src/translate.c:248 +#: glade/xcfa.glade:7817 msgid "Son" msgstr "Suono" -#: src/translate.c:249 +#: glade/xcfa.glade:7869 msgid "Mode hybride" msgstr "Modo ibrido" -#: src/translate.c:250 +#: glade/xcfa.glade:7921 msgid "Fichier de correction" msgstr "File di correzione" -#: src/translate.c:251 +#: glade/xcfa.glade:7973 msgid "Compression maximum" msgstr "Compressione massima" -#: src/translate.c:252 +#: glade/xcfa.glade:8025 msgid "Signature MD5" msgstr "Firma MD5" -#: src/translate.c:253 +#: glade/xcfa.glade:8077 msgid "Extra encode processing" msgstr "Elaborazione extra per la codifica" -#: src/translate.c:254 +#: glade/xcfa.glade:8120 msgid " WavPack (fichier wv): " msgstr " WavPack (file wv): " -#: src/translate.c:256 +#: glade/xcfa.glade:8221 msgid " Options WAVPACK " msgstr " Opzioni WAVPACK " -#: src/translate.c:257 +#: glade/xcfa.glade:8282 msgid "Wiki " msgstr "Wiki " -#: src/translate.c:259 +#: glade/xcfa.glade:8366 msgid " Web Wavpack " msgstr " Web Wavpack " -#: src/translate.c:263 -msgid "" -" Options experts, definies par l'utilisateur - wavpack (wav -> wv) " +#: glade/xcfa.glade:8495 +msgid " Experts options defined by the user - wavpack (wav -> wv) " msgstr "" " Opzioni da esperti, definite dall'utente - wavpack (wav -> wv) " -#: src/translate.c:264 +#: glade/xcfa.glade:8515 msgid " Wavpack " msgstr " Wavpack " -#: src/translate.c:265 +#: glade/xcfa.glade:8579 msgid " MusePack (fichier mpc): " msgstr " MusePack (file mpc): " -#: src/translate.c:267 +#: glade/xcfa.glade:8680 msgid " Options MUSEPACK " msgstr " Opzioni MUSEPACK " -#: src/translate.c:270 +#: glade/xcfa.glade:8825 msgid " Web Musepack " msgstr " Web Musepack " -#: src/translate.c:274 -msgid "" -" Options experts, definies par l'utilisateur - musepack (wav -> mpc) " +#: glade/xcfa.glade:8954 +msgid " Experts options defined by the user- musepack (wav -> mpc) " msgstr "" " Opzioni da esperti, definite dall'utente - musepack (wav -> mpc) " -#: src/translate.c:275 +#: glade/xcfa.glade:8974 msgid " Musepack " msgstr " Musepack " -#: src/translate.c:276 -msgid " Qualite VBR / Debit ABR" -msgstr " Qualità VBR / Compressione ABR" - -#: src/translate.c:277 -msgid " VBR / ABR" -msgstr " VBR / ABR" - -#: src/translate.c:278 -msgid " Conteneur" -msgstr " Contenitore" +#: glade/xcfa.glade:9016 +msgid "Conteneur" +msgstr "Contenitore" + +#: glade/xcfa.glade:9027 +msgid "VBR / ABR" +msgstr "VBR / ABR" + +#: glade/xcfa.glade:9038 +msgid "Qualite VBR / Debit ABR" +msgstr "Qualità VBR / Compressione ABR" -#: src/translate.c:279 +#: glade/xcfa.glade:9112 msgid " Faac (fichier .m4a): " msgstr " Faac (file .m4a): " -#: src/translate.c:281 +#: glade/xcfa.glade:9213 msgid " Options FAAC " msgstr " Opzioni FAAC " -#: src/translate.c:282 src/translate.c:296 +#: glade/xcfa.glade:9274 glade/xcfa.glade:9835 msgid "Site officiel " msgstr "Sito ufficiale " -#: src/translate.c:283 src/translate.c:297 +#: glade/xcfa.glade:9330 glade/xcfa.glade:9891 msgid "Web Info " msgstr "Web Info " -#: src/translate.c:285 +#: glade/xcfa.glade:9415 msgid " Web Faac " msgstr " Web Faac " -#: src/translate.c:289 -msgid "" -" Options experts, definies par l'utilisateur - faac (wav -> m4a) " +#: glade/xcfa.glade:9544 +msgid " Experts options defined by the user - faac (wav -> m4a) " msgstr " Opzioni da esperti, definite dall'utente - faac (wav -> m4a) " -#: src/translate.c:290 +#: glade/xcfa.glade:9564 msgid " Faac " msgstr " Faac " -#: src/translate.c:291 -msgid " Stereo: Qualite en kbit/s" -msgstr " Stereo: Qualità in kbit/s" - -#: src/translate.c:292 -msgid " Mono: Qualite en kbit/s" -msgstr " Mono: Qualità in kbit/s" +#: glade/xcfa.glade:9606 +msgid "Mono: Qualite en kbit/s" +msgstr "Mono: Qualità in kbit/s" + +#: glade/xcfa.glade:9617 +msgid "Stereo: Qualite en kbit/s" +msgstr "Stereo: Qualità in kbit/s" -#: src/translate.c:293 +#: glade/xcfa.glade:9673 msgid " AacplusEnc (fichier .aac): " msgstr " AacplusEnc (file .aac): " -#: src/translate.c:295 +#: glade/xcfa.glade:9774 msgid " Options AacPlusEnc " msgstr " Opzioni di AacPlusEnc " -#: src/translate.c:299 +#: glade/xcfa.glade:9976 msgid " Web AacPlusEnc " msgstr " Web AacPlusEnc " -#: src/translate.c:300 +#: glade/xcfa.glade:10021 msgid " AacplusEnc " msgstr " AacplusEnc " -#: src/translate.c:301 +#: glade/xcfa.glade:10051 msgid "Artiste" msgstr "Artista" -#: src/translate.c:302 src/translate.c:330 +#: glade/xcfa.glade:10070 glade/xcfa_win_treeview.glade:95 msgid "Titre" msgstr "Titolo" -#: src/translate.c:303 +#: glade/xcfa.glade:10089 msgid "Album" msgstr "Album" -#: src/translate.c:304 +#: glade/xcfa.glade:10108 msgid "Numero" msgstr "Numero" -#: src/translate.c:305 +#: glade/xcfa.glade:10127 msgid "Genre" msgstr "Genere" -#: src/translate.c:306 +#: glade/xcfa.glade:10146 msgid "Annee" msgstr "Anno" -#: src/translate.c:307 +#: glade/xcfa.glade:10165 msgid "Commentaire" msgstr "Commento" -#: src/translate.c:308 +#: glade/xcfa.glade:10190 msgid " Exportation de " msgstr " Esportazione di " -#: src/translate.c:310 +#: glade/xcfa.glade:10226 msgid " Preferences " msgstr " Preferenze " -#: src/translate.c:311 +#: glade/xcfa.glade:10289 msgid "SCAN" msgstr "CERCA E ANALIZZA" -#: src/translate.c:312 +#: glade/xcfa.glade:10303 msgid " Installation " msgstr " Installazione " -#: src/translate.c:313 -msgid " Votre systeme utilise ... " +#: glade/xcfa.glade:10338 +msgid " Your system use ... " msgstr " Il vostro sistema utilizza ... " -#: src/translate.c:314 +#: glade/xcfa.glade:10375 msgid "" "\n" -"Pour installer les programmes externes requis,\n" -"veuillez utiliser l'installateur de votre distribution Gnu/Linux.\n" +"To install the required external programs\n" +"Please use the installer to your distribution Gnu / Linux.\n" msgstr "" "\n" "Per installare i programmi esterni necessari,\n" "siete pregati di utilizare il gestore di pacchetti della vostra " "distribuzione Gnu/Linux.\n" -#: src/translate.c:315 +#: glade/xcfa.glade:10393 msgid "" "Le programme XCFA_INSTALL_ALL ecrit en Perl vous sera utile en ligne de " "commande pour une installation des programmes complementaire." @@ -2436,19 +2348,19 @@ "Il programma XCFA_INSTALL_ALL scritto in Perl sarà utile sulla riga di " "comando per l'installazione di programmi complementari." -#: src/translate.c:316 +#: glade/xcfa.glade:10419 msgid " Informations " msgstr " Informazioni " -#: src/translate.c:317 -msgid " Application externes " -msgstr "Applicazioni esterne" +#: glade/xcfa.glade:10443 +msgid " External application " +msgstr "XCFA: Estrazione CD" -#: src/translate.c:318 src/translate.c:321 +#: glade/xcfa.glade:10514 glade/xcfa.glade:10618 msgid "parametres:" msgstr "parametri:" -#: src/translate.c:319 +#: glade/xcfa.glade:10527 msgid "" "\n" " konqueror : newTab\n" @@ -2458,171 +2370,47 @@ " konqueror : newTab\n" " iceweasel : -new-window -new-tab \n" -#: src/translate.c:320 +#: glade/xcfa.glade:10548 msgid "Navigateur" msgstr "Browser" -#: src/translate.c:322 +#: glade/xcfa.glade:10648 msgid "Lecteurs audio" msgstr "Lettori audio" -#: src/translate.c:323 -msgid " Navigateurs / Lecteurs audio " -msgstr " Browser / Lettori audio " +#: glade/xcfa.glade:10669 +msgid "  Browsers / Audio Players " +msgstr "Browser / Lettori audio" -#: src/translate.c:324 +#: glade/xcfa.glade:10692 msgid " Applications externes " msgstr " Applicazioni esterne " -#: src/translate.c:325 -msgid "Scan en cours ..." -msgstr "Analisi in corso ..." - -#: src/translate.c:326 -msgid "Scan du support en cours ..." -msgstr "Analisi del supporto in corso ..." - -#: src/translate.c:327 -msgid "Detail extraction mode expert" -msgstr "Detagli estrazione modo esperto" - -#: src/translate.c:328 -msgid "Modification des champs" -msgstr "Modifica dei campi" - -#: src/translate.c:329 -msgid "" -"\n" -"Modification des champs\n" -msgstr "" -"\n" -"Modifica dei campi\n" - -#: src/translate.c:337 src/translate.c:356 src/translate.c:377 -#: src/translate.c:389 src/translate.c:400 src/translate.c:408 -msgid " Visibilite " -msgstr " Visibilità " - -#: src/translate.c:338 src/translate.c:357 src/translate.c:378 -#: src/translate.c:390 src/translate.c:401 src/translate.c:409 -msgid "Nom a gauche" -msgstr "Nome a sinistra" - -#: src/translate.c:339 src/translate.c:358 src/translate.c:379 -#: src/translate.c:391 src/translate.c:402 src/translate.c:410 -msgid "Nom au centre" -msgstr "Nome al centro" - -#: src/translate.c:340 src/translate.c:359 src/translate.c:380 -#: src/translate.c:392 src/translate.c:403 src/translate.c:411 -msgid "Nom a droite" -msgstr "Nome a destra" - -#: src/translate.c:341 -msgid "DVD" -msgstr "DVD" - -#: src/translate.c:346 src/translate.c:367 -msgid "Wavpack" -msgstr "Wavpack" - -#: src/translate.c:350 src/translate.c:371 -msgid "Musepack" -msgstr "Musepack" - -#: src/translate.c:360 -msgid "CD" -msgstr "CD" - -#: src/translate.c:375 -msgid "Replaygain" -msgstr "Replaygain" - -#: src/translate.c:381 -msgid "CONVERSIONS" -msgstr "CONVERSIONE" - -#: src/translate.c:382 -msgid "Hertz" -msgstr "Frequenza in Hertz" - -#: src/translate.c:383 -msgid "New Hertz" -msgstr "Nuova frequenza in Hertz" - -#: src/translate.c:384 -msgid "Voie" -msgstr "Modo" - -#: src/translate.c:385 -msgid "New Voie" -msgstr "Nuovo modo" - -#: src/translate.c:386 -msgid "Bits" -msgstr "Bits" - -#: src/translate.c:387 -msgid "New Bits" -msgstr "Nuovi Bits" - -#: src/translate.c:393 -msgid "WAV" -msgstr "WAV" - -#: src/translate.c:396 -msgid "New Bitrate" -msgstr "Nuovo Bitrate" - -#: src/translate.c:397 -msgid "Size" -msgstr "Dimensione" - -#: src/translate.c:404 -msgid "MP3-OGG" -msgstr "MP3-OGG" - -#: src/translate.c:412 -msgid "TAGS" -msgstr "TAGS" - -#: src/translate.c:413 -msgid "Selection globale" -msgstr "Selezione globale" - -#: src/translate.c:414 -msgid "Deselection globale" -msgstr "Deselezione globale" - -#: src/translate.c:415 -msgid "Retour" -msgstr "Ritorno" - -#: src/translate.c:416 +#: glade/xcfa_win_about.glade:7 msgid "About X Convert File Audio" msgstr "A proposito di X Convert File Audio" -#: src/translate.c:417 +#: glade/xcfa_win_about.glade:103 msgid "Author" msgstr "Autore" -#: src/translate.c:418 +#: glade/xcfa_win_about.glade:139 msgid "Licence" msgstr "Licenza" -#: src/translate.c:419 +#: glade/xcfa_win_about.glade:163 msgid " Informations " msgstr " Informazioni " -#: src/translate.c:420 +#: glade/xcfa_win_about.glade:198 msgid " Machine " msgstr "Macchina" -#: src/translate.c:421 +#: glade/xcfa_win_about.glade:333 msgid "Ingenieurs du son\n" msgstr "Ingegnere del suono\n" -#: src/translate.c:422 +#: glade/xcfa_win_about.glade:350 msgid "" "\n" "Graphisme\n" @@ -2630,7 +2418,7 @@ "\n" "Grafismo\n" -#: src/translate.c:423 +#: glade/xcfa_win_about.glade:370 msgid "" "Traduction Anglaise\n" "\n" @@ -2640,7 +2428,7 @@ "\n" "\n" -#: src/translate.c:424 +#: glade/xcfa_win_about.glade:391 msgid "" "\n" "Traduction Allemande" @@ -2648,7 +2436,7 @@ "\n" "Traduzione Tedesca" -#: src/translate.c:425 +#: glade/xcfa_win_about.glade:628 msgid "" "\n" "Codeur Xcfa" @@ -2656,7 +2444,7 @@ "\n" "Programmatore Xcfa" -#: src/translate.c:426 +#: glade/xcfa_win_about.glade:665 msgid "" "\n" "ElementSpeak pour Xcfa " @@ -2664,7 +2452,7 @@ "\n" "ElementSpeak per Xcfa " -#: src/translate.c:427 +#: glade/xcfa_win_about.glade:702 msgid "" "\n" "Codeur pages Web" @@ -2672,7 +2460,7 @@ "\n" "Programmatore delle pagine Web" -#: src/translate.c:428 +#: glade/xcfa_win_about.glade:739 msgid "" "\n" "Traduction Italienne" @@ -2680,7 +2468,7 @@ "\n" "Traduzione Italiana" -#: src/translate.c:429 +#: glade/xcfa_win_about.glade:800 msgid "" "\n" "\n" @@ -2690,51 +2478,43 @@ "\n" "Pagine Web da visitare\n" -#: src/translate.c:430 +#: glade/xcfa_win_about.glade:1123 msgid "Linux On The Root" msgstr "Linux On The Root" -#: src/translate.c:431 +#: glade/xcfa_win_about.glade:1180 msgid "Frugalware" msgstr "Frugalware" -#: src/translate.c:432 +#: glade/xcfa_win_about.glade:1237 msgid "Road2Mayotte" msgstr "Road2Mayotte" -#: src/translate.c:433 +#: glade/xcfa_win_about.glade:1294 msgid "La Linuxerie" msgstr "La Linuxerie" -#: src/translate.c:434 -msgid "Audioptimisation by Dzef" -msgstr "Audioptimisation by Dzef" - -#: src/translate.c:435 +#: glade/xcfa_win_about.glade:1351 msgid "Tuxfamily" msgstr "Tuxfamily" -#: src/translate.c:436 +#: glade/xcfa_win_about.glade:1408 msgid "Framasoft" msgstr "Framasoft" -#: src/translate.c:437 +#: glade/xcfa_win_about.glade:1465 msgid "Ekd (EnKoDeur-Mixeur)" msgstr "Ekd (EnKoDeur-Mixeur)" -#: src/translate.c:438 -msgid "Bishop's page" -msgstr "Bishop's page" +#: glade/xcfa_win_about.glade:1544 +msgid "Debian Multimedia" +msgstr "Debian Multimedia" -#: src/translate.c:439 +#: glade/xcfa_win_about.glade:1598 msgid "Je suis libre" msgstr "Io sono libero" -#: src/translate.c:440 -msgid "Debian Multimedia" -msgstr "Debian Multimedia" - -#: src/translate.c:441 +#: glade/xcfa_win_about.glade:1705 msgid "" "\n" "Forum\n" @@ -2742,19 +2522,15 @@ "\n" "Forum\n" -#: src/translate.c:442 -msgid "XCFA Vorstellung " -msgstr "XCFA Idea " +#: glade/xcfa_win_about.glade:1825 +msgid "Forum Xcfa" +msgstr "Forum Xcfa" -#: src/translate.c:443 +#: glade/xcfa_win_about.glade:1879 msgid "XCFA LinuxForen.de" msgstr "XCFA LinuxForen.de" -#: src/translate.c:444 -msgid "Forum Xcfa" -msgstr "Forum Xcfa" - -#: src/translate.c:445 +#: glade/xcfa_win_about.glade:1929 msgid "" "\n" "Documentation\n" @@ -2762,157 +2538,217 @@ "\n" "Documentazione\n" -#: src/translate.c:446 +#: glade/xcfa_win_about.glade:2164 msgid "Wiki Xcfa par Shankarius" msgstr "Wiki Xcfa da Shankarius" -#: src/translate.c:447 +#: glade/xcfa_win_about.glade:2219 msgid "Doc Xcfa par Patachon" msgstr "Doc Xcfa da Patachon" -#: src/translate.c:448 +#: glade/xcfa_win_about.glade:2276 msgid "Ogg Vorbis explique par Shankarius" msgstr "Ogg Vorbis spiegato da Shankarius" -#: src/translate.c:449 +#: glade/xcfa_win_about.glade:2333 msgid "La normalisation expliquee par Dzef" msgstr "La normalizzazione spiegata da Dzef" -#: src/translate.c:450 +#: glade/xcfa_win_about.glade:2390 msgid "Xcfa sur Linux On The Root" msgstr "Xcfa in Linux On The Root" -#: src/translate.c:451 +#: glade/xcfa_win_about.glade:2433 msgid " Contributions " msgstr " Contributi " -#: src/translate.c:452 +#: glade/xcfa_win_about.glade:2461 msgid " License " msgstr " Licenza " -#: src/translate.c:453 +#: glade/xcfa_win_about.glade:2482 msgid "OK" msgstr "OK" -#: src/web.c:173 src/web.c:234 -msgid "PAS de navigateur present" -msgstr "Nessun browser installato" - -#: src/web.c:174 -msgid "L'acces au web est impossible car aucun navigateur" -msgstr "L'accesso al Web non è possibile perché non risulta" - -#: src/web.c:176 -msgid "n'est present dans votre configuration." -msgstr "disponibile un browser nel vostro sistema. " - -#: src/web.c:178 -msgid "Veuillez installez un navigateur." -msgstr "Siete pregati di installare un browser." - -#: src/web.c:188 -msgid "Vous devez ouvrir l'acces internet" -msgstr "Dovete accendere una connessione a Internet" - -#: src/web.c:236 -msgid " L'acces au web est impossible car aucun navigateur" -msgstr " L'accesso al Web non è possibile perché non risulta" - -#: src/web.c:238 -msgid " n'est present dans votre configuration." -msgstr " disponibile un browser nel vostro sistema. " - -#: src/web.c:240 -msgid " Veuillez installez un navigateur." -msgstr " Siete pregati di installare un browser." +#: glade/xcfa_win_scan.glade:9 +msgid "Scan en cours ..." +msgstr "Analisi in corso ..." -#: src/web.c:250 -msgid "L'application est absente." -msgstr "L'applicazione è assente." +#: glade/xcfa_win_scan.glade:77 +msgid "Scan du support en cours ..." +msgstr "Analisi del supporto in corso ..." -#: src/web.c:251 -msgid "Veuillez installer : " -msgstr "Si prega di installare : " +#: glade/xcfa_win_scan.glade:128 +msgid "Detail extraction mode expert" +msgstr "Detagli estrazione modo esperto" -#: src/win_about.c:130 -msgid " Xcfa sur le web" -msgstr " Xcfa nel Web" +#: glade/xcfa_win_treeview.glade:7 +msgid "Modification des champs" +msgstr "Modifica dei campi" -#: src/win_about.c:180 +#: glade/xcfa_win_treeview.glade:41 msgid "" "\n" -"Au tout debut:\n" -"\n" -"Serres Patrick, Hamann Regis, Fabien Gregis, @Dzef, @alteo_gange, \n" -"@Leonux, @zarer, @Shankarius, @bishop, @Ludo, @Patachonf,\n" -"... ;-)\n" -"\n" -"" +"Modification des champs\n" msgstr "" "\n" -"All'inizio:\n" -"\n" -"Serres Patrick, Hamann Regis, Fabien Gregis, @Dzef, @alteo_gange, \n" -"@Leonux, @zarer, @Shankarius, @bishop, @Ludo, @Patachonf,\n" -"... ;-)\n" -"\n" -"" +"Modifica dei campi\n" -#: src/win_scan.c:161 -msgid "Waiting ..." -msgstr "In attesa ... " +#: glade/xcfa_win_treeview.glade:129 +msgid "Temps" +msgstr "Tempo" + +#: glade/xcfa_win_treeview.glade:163 +msgid "Choix" +msgstr "Scelta" + +#: glade/xcfa_win_treeview.glade:197 glade/xcfa_win_treeview.glade:577 +#: glade/xcfa_win_treeview.glade:995 glade/xcfa_win_treeview.glade:1260 +#: glade/xcfa_win_treeview.glade:1508 glade/xcfa_win_treeview.glade:1706 +msgid "Nom" +msgstr "Nome" + +#: glade/xcfa_win_treeview.glade:220 glade/xcfa_win_treeview.glade:600 +#: glade/xcfa_win_treeview.glade:1018 glade/xcfa_win_treeview.glade:1283 +#: glade/xcfa_win_treeview.glade:1531 glade/xcfa_win_treeview.glade:1732 +msgid " Visibilite " +msgstr " Visibilità " + +#: glade/xcfa_win_treeview.glade:250 glade/xcfa_win_treeview.glade:630 +#: glade/xcfa_win_treeview.glade:1048 glade/xcfa_win_treeview.glade:1313 +#: glade/xcfa_win_treeview.glade:1562 glade/xcfa_win_treeview.glade:1763 +msgid "Nom a gauche" +msgstr "Nome a sinistra" + +#: glade/xcfa_win_treeview.glade:267 glade/xcfa_win_treeview.glade:647 +#: glade/xcfa_win_treeview.glade:1065 glade/xcfa_win_treeview.glade:1330 +#: glade/xcfa_win_treeview.glade:1579 glade/xcfa_win_treeview.glade:1780 +msgid "Nom au centre" +msgstr "Nome al centro" + +#: glade/xcfa_win_treeview.glade:286 glade/xcfa_win_treeview.glade:666 +#: glade/xcfa_win_treeview.glade:1084 glade/xcfa_win_treeview.glade:1349 +#: glade/xcfa_win_treeview.glade:1598 glade/xcfa_win_treeview.glade:1799 +msgid "Nom a droite" +msgstr "Nome a destra" + +#: glade/xcfa_win_treeview.glade:326 +msgid "DVD" +msgstr "DVD" + +#: glade/xcfa_win_treeview.glade:373 glade/xcfa_win_treeview.glade:791 +msgid "Wav" +msgstr "Wav" + +#: glade/xcfa_win_treeview.glade:390 glade/xcfa_win_treeview.glade:808 +msgid "Flac" +msgstr "Flac" + +#: glade/xcfa_win_treeview.glade:407 glade/xcfa_win_treeview.glade:825 +msgid "Ape" +msgstr "Ape" + +#: glade/xcfa_win_treeview.glade:424 glade/xcfa_win_treeview.glade:842 +msgid "Wavpack" +msgstr "Wavpack" + +#: glade/xcfa_win_treeview.glade:441 glade/xcfa_win_treeview.glade:859 +msgid "Ogg" +msgstr "Ogg" + +#: glade/xcfa_win_treeview.glade:458 glade/xcfa_win_treeview.glade:876 +msgid "M4a" +msgstr "M4a" + +#: glade/xcfa_win_treeview.glade:475 glade/xcfa_win_treeview.glade:893 +msgid "Aac" +msgstr "Aac" + +#: glade/xcfa_win_treeview.glade:492 glade/xcfa_win_treeview.glade:910 +msgid "Musepack" +msgstr "Musepack" + +#: glade/xcfa_win_treeview.glade:509 glade/xcfa_win_treeview.glade:927 +msgid "Mp3" +msgstr "Mp3" -#~ msgid "Quantification" -#~ msgstr "Quantizzazione" +#: glade/xcfa_win_treeview.glade:526 +msgid "Num" +msgstr "Num" + +#: glade/xcfa_win_treeview.glade:709 +msgid "CD" +msgstr "CD" + +#: glade/xcfa_win_treeview.glade:978 +msgid "Replaygain" +msgstr "Replaygain" + +#: glade/xcfa_win_treeview.glade:1127 +msgid "CONVERSIONS" +msgstr "CONVERSIONE" + +#: glade/xcfa_win_treeview.glade:1158 +msgid "Hertz" +msgstr "Frequenza in Hertz" -#~ msgid "Voie" -#~ msgstr "Canale" +#: glade/xcfa_win_treeview.glade:1175 +msgid "New Hertz" +msgstr "Nuova frequenza in Hertz" -#~ msgid " Frequence - Hertz " -#~ msgstr " Frequenza - Hertz " +#: glade/xcfa_win_treeview.glade:1192 +msgid "Voie" +msgstr "Modo" -#~ msgid "Cellule" -#~ msgstr "Cella" +#: glade/xcfa_win_treeview.glade:1209 +msgid "New Voie" +msgstr "Nuovo modo" -#~ msgid "Colonne" -#~ msgstr "Colonna" +#: glade/xcfa_win_treeview.glade:1226 +msgid "Bits" +msgstr "Bits" -#~ msgid " Cacher Xcfa " -#~ msgstr " Nascondi Xcfa " +#: glade/xcfa_win_treeview.glade:1243 +msgid "New Bits" +msgstr "Nuovi Bits" -#~ msgid " Montrer Xcfa " -#~ msgstr " Mostra Xcfa " +#: glade/xcfa_win_treeview.glade:1392 +msgid "WAV" +msgstr "WAV" -#~ msgid " Quitter Xcfa " -#~ msgstr " Esci Xcfa " +#: glade/xcfa_win_treeview.glade:1440 +msgid "Bitrate" +msgstr "Bitrate" -#~ msgid "" -#~ "XCFA\n" -#~ "Programme pour convertir les fichiers audio." -#~ msgstr "" -#~ "XCFA\n" -#~ "Programma per la conversione di file audio." +#: glade/xcfa_win_treeview.glade:1457 +msgid "New Bitrate" +msgstr "Nuovo Bitrate" -#~ msgid "128 -defaut" -#~ msgstr "128 -di base" +#: glade/xcfa_win_treeview.glade:1641 +msgid "MP3-OGG" +msgstr "MP3-OGG" -#~ msgid "V0 -meilleure qualite" -#~ msgstr "V0 - migliore qualita" +#: glade/xcfa_win_treeview.glade:1842 +msgid "TAGS" +msgstr "TAGS" -#~ msgid "V4 -defaut" -#~ msgstr "V4 -di base" +#: glade/xcfa_win_treeview.glade:1894 +msgid "Selection globale" +msgstr "Selezione globale" -#~ msgid "V9 -moins bonne qualite" -#~ msgstr "V9 -qualita meno buona" +#: glade/xcfa_win_treeview.glade:1948 +msgid "Deselection globale" +msgstr "Deselezione globale" -#~ msgid "Defaut" -#~ msgstr "Di base" +#: glade/xcfa_win_treeview.glade:2009 +msgid "Retour" +msgstr "Ritorno" -#~ msgid "Qualite -1 -Moins bonne qualite" -#~ msgstr "Qualita -1 - Qualita meno buona" +#~ msgid "Audioptimisation by Dzef" +#~ msgstr "Audioptimisation by Dzef" -#~ msgid "Qualite 3 -Defaut" -#~ msgstr "Qualita 3 - Di base" +#~ msgid "Bishop's page" +#~ msgstr "Bishop's page" -#~ msgid "Qualite 10 -Meilleure qualite" -#~ msgstr "Qualita 10 - Migliore qualita" +#~ msgid "XCFA Vorstellung " +#~ msgstr "XCFA Idea " diff -Nru xcfa-4.3.8/po/Makefile.in.in xcfa-5.0.1/po/Makefile.in.in --- xcfa-4.3.8/po/Makefile.in.in 2011-01-24 18:38:01.000000000 +0000 +++ xcfa-5.0.1/po/Makefile.in.in 2014-11-10 20:50:44.000000000 +0000 @@ -9,7 +9,7 @@ # General Public License and is *not* in the public domain. # # Origin: gettext-0.17 -GETTEXT_MACRO_VERSION = 0.18 +GETTEXT_MACRO_VERSION = 0.19 PACKAGE = @PACKAGE@ VERSION = @VERSION@ Binary files /tmp/U9mREQ24T4/xcfa-4.3.8/po/nl.gmo and /tmp/9PqOMEw8oW/xcfa-5.0.1/po/nl.gmo differ diff -Nru xcfa-4.3.8/po/nl.po xcfa-5.0.1/po/nl.po --- xcfa-4.3.8/po/nl.po 2014-01-31 12:25:57.000000000 +0000 +++ xcfa-5.0.1/po/nl.po 2015-03-01 17:00:50.000000000 +0000 @@ -5,157 +5,102 @@ # msgid "" msgstr "" -"Project-Id-Version: xcfa 4.2.8\n" +"Project-Id-Version: xcfa 5.0.0\n" "Report-Msgid-Bugs-To: xcfa@tuxfamily.org\n" -"POT-Creation-Date: 2014-01-31 13:25+0100\n" -"PO-Revision-Date: 2010-08-21 18:45+0100\n" +"POT-Creation-Date: 2015-03-01 18:00+0100\n" +"PO-Revision-Date: 2015-02-07 10:44+0100\n" "Last-Translator: Gerry Butler \n" "Language-Team: English \n" "Language: en\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" +"X-Generator: Poedit 1.7.3\n" -#: src/cd_audio.c:812 src/dvd.c:680 src/dvd.c:1324 -msgid "MPLAYER deja en action" +#: src/cd_audio.c:814 src/dvd.c:686 src/dvd.c:1345 +msgid "MPLAYER already in action" msgstr "MPLAYER already in action" -#: src/cd_audio.c:813 src/dvd.c:681 src/dvd.c:1325 -msgid "MPLAYER est deja utilise !!" +#: src/cd_audio.c:815 src/dvd.c:687 src/dvd.c:1346 +msgid "MPLAYER is already in use !!" msgstr "MPLAYER is already in use !!" -#: src/cd_audio.c:1224 src/cd_audio.c:1230 src/dvd.c:867 src/file.c:2827 -msgid "(Click Droit = Menu) / En attente de selection." +#: src/cd_audio.c:1227 src/cd_audio.c:1233 src/file.c:2837 +msgid "(Right click = Menu) / Waiting for selection." msgstr "(Right click = Menu) / Waiting for selection." -#: src/cd_audio.c:1227 src/file.c:2824 -msgid "Le programme externe d'extraction est absent." -msgstr "The external ripping program is missing" - -#: src/cd_audio.c:1233 src/file.c:2830 -msgid "(Click Droit = Menu) / En attente de selection. Le fichier existe." -msgstr "(Right click = Menu) / Waiting for Selection. File exists." +#: src/cd_audio.c:1230 +msgid "The external ripping program is missing." +msgstr "The external ripping program is missing." + +#: src/cd_audio.c:1236 +msgid "(Right click = Menu) / Waiting for Selection. File exists.." +msgstr "(Right click = Menu) / Waiting for Selection. File exists.." + +#: src/cd_audio.c:1239 +msgid "(Right click = Menu) / Selected files." +msgstr "(Right click = Menu) / Selected files." -#: src/cd_audio.c:1236 src/file.c:2833 -msgid "(Click Droit = Menu) / En selection." -msgstr "(Right click = Menu) / Selected files" - -#: src/cd_audio.c:1239 src/file.c:2839 -msgid "(Click Droit = Menu) / Selection avec options expert." +#: src/cd_audio.c:1242 src/file.c:2849 +msgid "(Right click = Menu) / Selection - expert mode." msgstr "(Right click = Menu) / Selection - expert mode." -#: src/cd_audio.c:1242 src/file.c:2836 -msgid "(Click Droit = Menu) / En selection. Le fichier existe." +#: src/cd_audio.c:1245 src/file.c:2846 +msgid "(Right click = Menu) / Selected files. File exists." msgstr "(Right click = Menu) / Selected files. File exists." -#: src/cd_audio.c:1245 src/file.c:2842 -msgid "" -"(Click Droit = Menu) / Selection avec options expert. Le fichier existe." +#: src/cd_audio.c:1248 src/file.c:2852 +msgid "(Right click = Menu) / Selection - expert mode. File exists." msgstr "(Right click = Menu) / Selection - expert mode. File exists." -#: src/cd_audio.c:1254 +#: src/cd_audio.c:1257 msgid "" -"(Click Droit = Menu) / Possibilite d'ajustement INDIVIDUEL ou COLLECTIF " -"maximal du volume" +"(Right click = Menu) / Possibilities for individual adaptation or maximum " +"collection volume" msgstr "" "(Right click = Menu) / Possibilities for individual adaptation or maximum " "collection volume" -#: src/cd_audio.c:1259 -msgid "(Click Droit = Menu) / Ajustement INDIVIDUEL maximal du volume" -msgstr "(Click Droit = Menu) / INDIVIDUAL maximum volume adjustment" - #: src/cd_audio.c:1262 -msgid "(Click Droit = Menu) / Ajustement COLLECTIF maximal du volume" -msgstr "(Click Droit = Menu) / COLLECTIVE maximum volume adjustment" - -#: src/cd_audio.c:1502 src/dvd.c:1099 src/file.c:3137 src/translate.c:331 -#: src/translate.c:342 src/translate.c:361 -msgid "Play" -msgstr "Play" - -#: src/cd_audio.c:1543 src/file.c:3202 src/translate.c:343 src/translate.c:364 -msgid "Wav" -msgstr "Wav" - -#: src/cd_audio.c:1564 src/file.c:3221 src/translate.c:344 src/translate.c:365 -msgid "Flac" -msgstr "Flac" - -#: src/cd_audio.c:1584 src/file.c:3240 src/translate.c:345 src/translate.c:366 -msgid "Ape" -msgstr "Ape" - -#: src/cd_audio.c:1604 src/file.c:3259 -msgid "WavP" -msgstr "WavP" - -#: src/cd_audio.c:1624 src/file.c:3278 src/translate.c:347 src/translate.c:368 -msgid "Ogg" -msgstr "Ogg" - -#: src/cd_audio.c:1645 src/file.c:3297 src/translate.c:348 src/translate.c:369 -msgid "M4a" -msgstr "M4a" +msgid "(Right click = Menu) / INDIVIDUAL maximum volume adjustment" +msgstr "(Right click = Menu) / INDIVIDUAL maximum volume adjustment" -#: src/cd_audio.c:1666 src/file.c:3316 src/translate.c:349 src/translate.c:370 -msgid "Aac" -msgstr "Aac" - -#: src/cd_audio.c:1686 src/file.c:3335 -msgid "Mpc" -msgstr "Mpc" - -#: src/cd_audio.c:1706 src/file.c:3354 src/translate.c:351 src/translate.c:372 -msgid "Mp3" -msgstr "Mp3" - -#: src/cd_audio.c:1727 src/translate.c:352 -msgid "Num" -msgstr "Num" - -#: src/cd_audio.c:1742 src/translate.c:353 src/translate.c:373 -#: src/translate.c:398 src/translate.c:406 -msgid "Time" -msgstr "Time" - -#: src/cd_audio.c:1757 src/dvd.c:1167 src/file.c:3390 src/translate.c:335 -#: src/translate.c:354 src/translate.c:374 +#: src/cd_audio.c:1265 +msgid "(Right click = Menu) / COLLECTIVE maximum volume adjustment" +msgstr "(Right click = Menu) / COLLECTIVE maximum volume adjustment" + +#: src/cd_audio.c:1764 src/dvd.c:1187 src/file.c:3403 +#: glade/xcfa_win_treeview.glade:180 glade/xcfa_win_treeview.glade:560 +#: glade/xcfa_win_treeview.glade:961 msgid "Normalise" msgstr "Normalise" -#: src/cd_audio.c:1782 src/dvd.c:1187 src/file.c:3432 src/file_mp3ogg.c:958 -#: src/file_tags.c:1191 src/file_wav.c:824 src/prg_init.c:609 -#: src/translate.c:336 src/translate.c:355 src/translate.c:376 -#: src/translate.c:388 src/translate.c:399 src/translate.c:407 -msgid "Nom" +#: src/cd_audio.c:1789 src/dvd.c:1207 src/file.c:3445 src/file_mp3ogg.c:964 +#: src/file_tags.c:1253 src/file_wav.c:830 src/prg_init.c:609 +msgid "Name" msgstr "Name" -#: src/cd_audio.c:2511 -msgid " Parametrage CDDB: [ Nom du serveur ]" +#: src/cd_audio.c:2517 +msgid " Setting up CDDB: [ Server name ]" msgstr " Setting up CDDB: [ Server name ]" -#: src/cd_audio.c:2520 -msgid " Parametrage PROXY: [ serveur ] [ port ]" +#: src/cd_audio.c:2526 +msgid " Proxy settings: [ server ] [ port ] " msgstr " Proxy settings: [ server ] [ port ] " -#: src/cd_audio.c:2530 src/translate.c:95 -msgid " Serveur " +#: src/cd_audio.c:2536 glade/xcfa.glade:1842 +msgid " Server " msgstr " Server " #: src/cd_audio_extract.c:673 #, c-format -msgid "" -"[Erreur du segment numero: %d]\n" -"%d) Lecture PASS 1/2\n" -msgstr "" -"[Error on segment #%d]\n" -"%d) Playing PASS 1/2\n" +msgid "[Error on segment #%d] %d) Playing PASS 1/2\n" +msgstr "[Error on segment #%d] %d) Playing PASS 1/2\n" #: src/cd_audio_extract.c:680 #, c-format msgid "" -"--> Deja %d fois 2 lectures du segment %d!\n" +"--> Segment %d already read two %d times!\n" " Abandon :/\n" msgstr "" "--> Segment %d already read two %d times!\n" @@ -163,50 +108,50 @@ #: src/cd_audio_extract.c:700 #, c-format -msgid "%d) Lecture PASS 2/2\n" +msgid "%d) Read PASS 2/2\n" msgstr "%d) Read PASS 2/2\n" #: src/cd_audio_extract.c:780 #, c-format msgid "" "\n" -"[Piste: %d]\n" +"[Track: %d]\n" msgstr "" "\n" "[Track: %d]\n" #: src/cd_audio_extract.c:784 -msgid "Extraction mode expert PASS 1/2\n" +msgid "Ripping expert mode PASS 1/2\n" msgstr "Ripping expert mode PASS 1/2\n" #: src/cd_audio_extract.c:795 -msgid "Extraction mode expert PASS 2/2\n" +msgid "Ripping expert mode PASS 2/2\n" msgstr "Ripping expert mode PASS 2/2\n" #: src/cd_audio_extract.c:803 -msgid "Controle du contenu des fichiers extraits\n" +msgid "Control the content of the extracted files\n" msgstr "Control the content of the extracted files\n" #: src/cd_audio_extract.c:1710 src/cd_audio_extract.c:1712 msgid "XCFA: Extraction CD" -msgstr "XCFA: CD Ripping" +msgstr "XCFA: Extraction CD" #: src/cd_audio_extract.c:1710 src/dvd_extract.c:412 src/file_action.c:183 #: src/file_mp3ogg_conv.c:329 src/file_wav_conv.c:343 msgid "Ok" -msgstr "Okay" +msgstr "Ok" #: src/cd_audio_extract.c:1712 src/dvd_extract.c:414 src/file_action.c:185 #: src/file_mp3ogg_conv.c:331 src/file_wav_conv.c:345 -msgid "Arret par l'utilisateur" -msgstr "Stopped by user" +msgid "Stop by user" +msgstr "Stop by user" #: src/cd_audio_extract.c:1983 -msgid "Nom de fichier unique absent" +msgid "File name not found" msgstr "File name not found" #: src/cd_audio_extract.c:1984 -msgid "Veuillez saisir un nom pour le fichier unique" +msgid "Please enter a file name" msgstr "Please enter a file name" #: src/cd_audio_toc.c:156 @@ -247,18 +192,18 @@ #: src/cd_audio_toc.c:189 msgid "Please, install packages [ cd-discid ]" -msgstr "Please, install package [ cd-discid ]" +msgstr "Please, install packages [ cd-discid ]" #: src/cd_audio_toc.c:203 -msgid "ERREUR datas proxy" +msgid "ERROR datas proxy" msgstr "ERROR datas proxy" #: src/cd_audio_toc.c:204 -msgid "Veuillez renseigner les champs du proxy" +msgid "Please complete all fields proxy" msgstr "Please complete all fields proxy" #: src/cd_curl.c:734 src/web.c:187 -msgid "La liaison internet est absente" +msgid "A web connection is missing" msgstr "A web connection is missing" #: src/cd_curl.c:1204 @@ -269,133 +214,127 @@ msgid "No Audio CD" msgstr "No Audio CD" -#: src/dvd.c:859 +#: src/dvd.c:877 msgid "" -"(Click Droit = Menu) / PEAK-ALBUM: Amplification maximale du volume pour un " -"groupe de fichiers en respectant les ecarts de niveau entre chacun d'eux." +"(Right click = Menu) / Maximum volume amplification of a group of files " +"keeping the level difference between each of them." msgstr "" "(Right click = Menu) / Maximum volume amplification of a group of files " -"keeping the level difference between each of them" +"keeping the level difference between each of them." -#: src/dvd.c:862 -msgid "" -"(Click Droit = Menu) / PEAK: Amplification maximale du volume pour chaque de " -"fichier." -msgstr "" -"(Right click = Menu) / PEAK: Maximum volume amplification for each file" +#: src/dvd.c:882 src/file.c:2882 +msgid "PEAK: Maximum volume amplification of each file." +msgstr "PEAK: Maximum volume amplification of each file." + +#: src/dvd.c:887 +msgid "(Right click = Menu) / ReplayGain: Waiting for selection." +msgstr "(Right click = Menu) / ReplayGain: Waiting for selection." -#: src/dvd.c:900 src/dvd.c:920 -msgid "En attente de selection. Un click activera la conversion vers 2 canaux." +#: src/dvd.c:920 src/dvd.c:940 +msgid "" +"Waiting for selection. A click will activate the conversion to 2 channels." msgstr "" "Waiting for selection. A click will activate the conversion to 2 channels." -#: src/dvd.c:912 -msgid "Conversion vers 2 canaux." +#: src/dvd.c:932 +msgid "Conversion to 2 channels." msgstr "Conversion to 2 channels." -#: src/dvd.c:924 +#: src/dvd.c:944 #, c-format -msgid "Conversion vers %s canaux." +msgid "Conversion to %s channels." msgstr "Conversion to %s channels." -#: src/dvd.c:929 +#: src/dvd.c:949 #, c-format msgid "" -"Conversion vers 2 canaux. Un second click activera la conversion vers %s " -"canaux." +"Conversion to 2 channels. A second click will activate the conversion to %s " +"channels." msgstr "" "Conversion to 2 channels. A second click will activate the conversion to %s " "channels." -#: src/dvd.c:944 -msgid "Musique en ecoute." +#: src/dvd.c:964 +msgid "Playing music." msgstr "Playing music." -#: src/dvd.c:947 -msgid "Musique en attente." +#: src/dvd.c:967 +msgid "Music paused." msgstr "Music paused." -#: src/dvd.c:962 +#: src/dvd.c:982 #, c-format msgid "Total selection%s: %d, 2ch: %d" msgstr "Total selection%s: %d, 2ch: %d" -#: src/dvd.c:963 +#: src/dvd.c:983 msgid "s" msgstr "s" -#: src/dvd.c:969 -msgid "Ce fichier ne peut etre extrait !" +#: src/dvd.c:989 +msgid "This file can not be ripped !" msgstr "This file can not be ripped !" -#: src/dvd.c:1087 -msgid "Titres" -msgstr "Titls" +#: src/dvd.c:1107 +msgid "Titles" +msgstr "Titles" -#: src/dvd.c:1111 src/file.c:3373 src/file_mp3ogg.c:943 src/file_tags.c:1175 -#: src/translate.c:332 -msgid "Temps" +#: src/dvd.c:1119 glade/xcfa_win_treeview.glade:112 +#: glade/xcfa_win_treeview.glade:356 glade/xcfa_win_treeview.glade:740 +msgid "Play" +msgstr "Play" + +#: src/dvd.c:1131 src/file.c:3386 src/file_mp3ogg.c:949 src/file_tags.c:1237 +#: glade/xcfa_win_treeview.glade:543 glade/xcfa_win_treeview.glade:944 +#: glade/xcfa_win_treeview.glade:1491 glade/xcfa_win_treeview.glade:1689 +msgid "Time" msgstr "Time" -#: src/dvd.c:1123 src/translate.c:333 +#: src/dvd.c:1143 glade/xcfa_win_treeview.glade:146 msgid "Format" msgstr "Format" -#: src/dvd.c:1135 src/translate.c:334 -msgid "Choix" +#: src/dvd.c:1155 +msgid "Choice" msgstr "Choice" -#: src/dvd.c:1249 -msgid "Fichier structure DVD" +#: src/dvd.c:1267 +msgid "DVD file structure" msgstr "DVD file structure" -#: src/dvd.c:1299 -msgid "Le DVD est absent du lecteur." +#: src/dvd.c:1320 +msgid "The DVD player is absent." msgstr "The DVD player is absent." -#: src/dvd.c:1335 -msgid "Scan ..." -msgstr "Scan ..." - -#: src/dvd.c:1385 -msgid "lsdvd est absent !" +#: src/dvd.c:1410 +msgid "lsdvd is missing !" msgstr "lsdvd is missing !" -#: src/dvd.c:1386 -msgid "Il faut installer le programme: lsdvd" +#: src/dvd.c:1411 +msgid "You must install the program: lsdvd" msgstr "You must install the program: lsdvd" #: src/dvd_extract.c:412 src/dvd_extract.c:414 -msgid "XCFA: Extraction DVD" +msgid "XCFA: DVD rip" msgstr "XCFA: DVD rip" -#: src/dvd_read.c:263 +#: src/dvd_read.c:226 #, c-format -msgid "Titre [%02d ** ]" +msgid "Title [%02d ** ]" msgstr "Title [%02d ** ]" -#: src/dvd_read.c:266 +#: src/dvd_read.c:227 #, c-format -msgid "Titre [%02d]" +msgid "Title [%02d]" msgstr "Title [%02d]" -#: src/dvd_read.c:310 -#, c-format -msgid "Fichier_complet_%02d_%s" -msgstr "Completed_file_%02d_%s" - -#: src/dvd_read.c:355 +#: src/dvd_read.c:252 #, c-format -msgid "Chapitre: [%02d]" +msgid "Chapter: [%02d]" msgstr "Chapter: [%02d]" -#: src/dvd_read.c:401 -#, c-format -msgid "Titre_%02d_Chapitre_%02d_audio_%02d_%s" -msgstr "Title_%02d_Chapter_%02d_audio_%02d_%s" - #: src/file_action.c:183 src/file_action.c:185 -msgid "XCFA: Traitement fichiers" +msgid "XCFA: Processing files" msgstr "XCFA: Processing files" #: src/file_analyze.c:731 @@ -404,145 +343,144 @@ #: src/file_analyze.c:732 msgid "" -"Veuillez installer checkmp3 ou mp3check pour\n" -"la prise en compte des fichiers mp3" +"Please install or checkmp3 mp3check for\n" +"consideration of mp3 files" msgstr "" "Please install or checkmp3 mp3check for\n" "consideration of mp3 files" -#: src/file.c:328 +#: src/file.c:327 #, c-format -msgid "Total fichiers: %d, Selections: %d" -msgstr "Total files: %d, Selected: %d" +msgid "Total files: %d, Selections: %d" +msgstr "Total files: %d, Selections: %d" -#: src/file.c:442 -msgid "CAPACITE DOSSIER TEMPORAIRE TROP FAIBLE" +#: src/file.c:441 +msgid "TEMPORARY CAPACITY TOO LOW" msgstr "TEMPORARY CAPACITY TOO LOW" -#: src/file.c:443 -msgid "Pas assez de place dans le dossier temporaire" +#: src/file.c:442 src/file.c:2875 +msgid "WARNING: Not enough space available in the temp folder." msgstr "WARNING: Not enough space available in the temp folder." -#: src/file.c:449 -msgid "Veuillez deselectionner des PeakGroup." +#: src/file.c:448 +msgid "Please deselect PeakGroup." msgstr "Please deselect PeakGroup." -#: src/file.c:1433 -msgid "Conversion(s) vers la source" +#: src/file.c:1431 +msgid "Conversion(s) to source" msgstr "Conversion(s) to source" -#: src/file.c:1434 -msgid "Choix d'une nouvelle destination" +#: src/file.c:1432 +msgid "Select a new destination" msgstr "Select a new destination" -#: src/file.c:1504 +#: src/file.c:1501 msgid "Select type: --" -msgstr "Select type: -" +msgstr "Select type: --" -#: src/file.c:1589 +#: src/file.c:1584 msgid "Peak/album" msgstr "Peak/album" -#: src/file.c:1590 +#: src/file.c:1585 msgid "Peak" msgstr "Peak" -#: src/file.c:1591 +#: src/file.c:1586 msgid "Mix (scan)Rms/album" msgstr "Mix (scan)Rms/album" -#: src/file.c:1592 +#: src/file.c:1587 msgid "Fix (scan)Rms" msgstr "Fix (scan)Rms" -#: src/file.c:2851 +#: src/file.c:2834 +msgid "The external ripping program is missing" +msgstr "The external ripping program is missing" + +#: src/file.c:2840 +msgid "(Right click = Menu) / Waiting for Selection. File exists." +msgstr "(Right click = Menu) / Waiting for Selection. File exists." + +#: src/file.c:2843 +msgid "(Right click = Menu) / Selected files" +msgstr "(Right click = Menu) / Selected files" + +#: src/file.c:2861 #, c-format -msgid "MAX FICHIERS ATTEINT = %d" +msgid "MAX FILES REACHED = %d" msgstr "MAX FILES REACHED = %d" -#: src/file.c:2861 -msgid "Normalise: En attente de selection." +#: src/file.c:2871 +msgid "Normalise: Waiting for selection." msgstr "Normalise: Waiting for selection." -#: src/file.c:2865 -msgid "ATTENTION: Pas assez de place dans le dossier temporaire." -msgstr "WARNING: Not enough space available in the temp folder." - -#: src/file.c:2868 +#: src/file.c:2878 msgid "" -"PEAK-ALBUM: Amplification maximale du volume pour un groupe de fichiers en " -"respectant les ecarts de niveau entre chacun d'eux." +"PEAK-ALBUM: Maximum volume amplification for a group of files according to " +"the deviations in level between them" msgstr "" "PEAK-ALBUM: Maximum volume amplification for a group of files according to " "the deviations in level between them" -#: src/file.c:2872 -msgid "PEAK: Amplification maximale du volume pour chaque de fichier." -msgstr "PEAK: Maximum volume amplification of each file." - -#: src/file.c:2875 +#: src/file.c:2885 msgid "" -"RMS-ALBUM: Ajustement du volume moyen pour un groupe de fichiers en " -"respectant les ecarts de niveau moyen entre chacun d'eux." +"RMS-ALBUM: Adjusting the average volume for a group of files according to " +"the average level of deviation between them." msgstr "" "RMS-ALBUM: Adjusting the average volume for a group of files according to " "the average level of deviation between them." -#: src/file.c:2878 -msgid "RMS: Ajustement du volume moyen de chaque de fichier." +#: src/file.c:2888 +msgid "RMS: Average volume amplification of each file." msgstr "RMS: Average volume amplification of each file." -#: src/file.c:2892 -msgid "(Click Droit = Menu) / ReplayGain: En attente de selection." -msgstr "(Click Droit = Menu) / ReplayGain: Waiting for selection." - -#: src/file.c:2895 -msgid "(Click Droit = Menu) / Mode piste." -msgstr "(Click Droit = Menu) / Track mode." - -#: src/file.c:2898 -msgid "(Click Droit = Menu) / Mode album." -msgstr "(Click Droit = Menu) / Album mode." - -#: src/file.c:2901 -msgid "(Click Droit = Menu) / Mode effacer." -msgstr "(Click Droit = Menu) / Erase mode." +#: src/file.c:2902 +msgid "(Right Click = Menu) / ReplayGain: Waiting for selection." +msgstr "(Right Click = Menu) / ReplayGain: Waiting for selection." + +#: src/file.c:2905 +msgid "(Right Click = Menu) / Track mode." +msgstr "(Right Click = Menu) / Track mode." + +#: src/file.c:2908 +msgid "(Right Click = Menu) / Album mode." +msgstr "(Right Click = Menu) / Album mode." + +#: src/file.c:2911 +msgid "(Right Click = Menu) / Erase mode." +msgstr "(Right Click = Menu) / Erase mode." -#: src/file.c:3013 +#: src/file.c:3026 msgid "" -"(Click Droit = Menu) / Cliquez ici pour envoyer ce fichier apres traitement " -"a la corbeille" +"(Click Droit = Menu) / Click here to send the processed file to the trash" msgstr "" "(Click Droit = Menu) / Click here to send the processed file to the trash" -#: src/file.c:3016 +#: src/file.c:3029 msgid "" -"(Click Droit = Menu) / Ce fichier sera dirige apres traitement vers la " -"corbeille" +"(Right Click = Menu) / This file will be sent to the trash after processing" msgstr "" "(Right Click = Menu) / This file will be sent to the trash after processing" -#: src/file.c:3150 src/file_trash.c:359 src/translate.c:362 +#: src/file.c:3163 src/file_trash.c:208 glade/xcfa_win_treeview.glade:757 msgid "Trash" msgstr "Trash" -#: src/file.c:3170 src/file_mp3ogg.c:883 src/file_tags.c:1160 -#: src/translate.c:363 src/translate.c:394 src/translate.c:405 +#: src/file.c:3183 src/file_mp3ogg.c:889 src/file_tags.c:1222 +#: glade/xcfa_win_treeview.glade:774 glade/xcfa_win_treeview.glade:1423 +#: glade/xcfa_win_treeview.glade:1672 msgid "Type" msgstr "Type" -#: src/file.c:3409 -msgid "ReplayGain" -msgstr "ReplayGain" - -#: src/file_conv.c:1187 src/file_mp3ogg_conv.c:336 -msgid "Erreur depuis MPLAYER !" +#: src/file_conv.c:1187 +msgid "Error since MPLAYER !" msgstr "Error since MPLAYER !" #: src/file_conv.c:1188 src/file_conv.c:1200 src/file_mp3ogg_conv.c:337 #: src/file_mp3ogg_conv.c:349 -msgid "Vous pouvez activer XCFA en ligne de commande avec: " -msgstr "You can enable XCFA command line with: " +msgid "You can enable XCFA command line with: " +msgstr "You can enable XCFA command line with: " #: src/file_conv.c:1190 src/file_conv.c:1202 src/file_mp3ogg_conv.c:339 #: src/file_mp3ogg_conv.c:351 @@ -550,50 +488,54 @@ msgstr "$ xcfa -verbose" #: src/file_conv.c:1192 src/file_mp3ogg_conv.c:341 -msgid "pour consulter le type d'erreur renvoye par mplayer." +msgid "to see the type of error returned by mplayer." msgstr "to see the type of error returned by mplayer." -#: src/file_conv.c:1199 src/file_mp3ogg_conv.c:348 -msgid "Erreur depuis SOX !" +#: src/file_conv.c:1199 +msgid "Error since SOX !" msgstr "Error since SOX !" #: src/file_conv.c:1204 src/file_mp3ogg_conv.c:353 -msgid "pour consulter le type d'erreur renvoye par sox." +msgid "to see the type of error returned by sox." msgstr "to see the type of error returned by sox." -#: src/file_mp3ogg.c:668 -msgid "Click droit: acces popup" +#: src/file_mp3ogg.c:670 +msgid "Right click: access popup" msgstr "Right click: access popup" -#: src/file_mp3ogg.c:899 src/translate.c:395 -msgid "Bitrate" -msgstr "Bitrate" - -#: src/file_mp3ogg.c:915 -msgid "Nouveau bitrate" +#: src/file_mp3ogg.c:921 +msgid "New bitrate" msgstr "New bitrate" -#: src/file_mp3ogg.c:929 -msgid "Taille" +#: src/file_mp3ogg.c:935 glade/xcfa_win_treeview.glade:1474 +msgid "Size" msgstr "Size" #: src/file_mp3ogg_conv.c:329 src/file_mp3ogg_conv.c:331 -msgid "XCFA: Modification bitrate" +msgid "XCFA: Bitrate change" msgstr "XCFA: Bitrate change" +#: src/file_mp3ogg_conv.c:336 +msgid "Error from MPLAYER !" +msgstr "Error from MPLAYER !" + +#: src/file_mp3ogg_conv.c:348 +msgid "Error from SOX !" +msgstr "Error from SOX !" + #: src/file_mp3ogg_conv.c:432 #, c-format -msgid " ATTENTION: Il faut installer %s%s%s" +msgid " WARNING : you need to install %s%s%s" msgstr " WARNING : you need to install %s%s%s" #: src/file_mp3ogg_conv.c:440 #, c-format -msgid " ATTENTION: Il faut installer %s%s" +msgid " WARNING : you need to install %s%s" msgstr " WARNING : you need to install %s%s" #: src/file_mp3ogg_conv.c:447 #, c-format -msgid " ATTENTION: Il faut installer %s" +msgid " WARNING : you need to install %s" msgstr " WARNING : you need to install %s" #: src/file_mp3ogg_conv.c:454 @@ -601,371 +543,360 @@ msgstr "Package NOT FOUND !" #: src/fileselect.c:105 -msgid "Choix d'un dossier de destination" -msgstr "Select a destination folder" +msgid "Choosing a destination folder" +msgstr "Choosing a destination folder" #: src/fileselect.c:106 -msgid "Choix d'un fichier CUE WAV FLAC OGG MP3 APE WMA" -msgstr "Select CUE WAV FLAC OGG MP3 APE WMA files" +msgid "Choosing a file CUE WAV FLAC OGG MP3 APE WMA" +msgstr "Choosing a file CUE WAV FLAC OGG MP3 APE WMA" #: src/fileselect.c:107 -msgid "Choix d'un fichier musical" -msgstr "Selecting a music file" +msgid "Choosing a file musical" +msgstr "Choosing a file musical" -#: src/fileselect.c:108 -msgid "Choix d'un fichier" -msgstr "Select a file" - -#: src/fileselect.c:109 -msgid "Choix de fichiers" -msgstr "Select files" +#: src/fileselect.c:108 src/fileselect.c:109 +msgid "Choosing a file" +msgstr "Choosing a file" #: src/fileselect.c:110 -msgid "Choix de fichiers WAV" -msgstr "Select a WAV file" +msgid "Choosing a WAV file" +msgstr "Choosing a WAV file" #: src/fileselect.c:111 -msgid "Choix de fichiers MP3/OGG" -msgstr "Select MP3/OGG file" +msgid "Choosing a MP3 OGG file" +msgstr "Choosing a MP3 OGG file" #: src/fileselect.c:112 -msgid "Choix de fichiers FLAC MPC OGG MP3" -msgstr "Select FLAC MPC OGG MP3 files" +msgid "Choosing a FLAC MPC OGG MP3 file" +msgstr "Choosing a FLAC MPC OGG MP3 file" #: src/fileselect.c:113 -msgid "Importer des images pour la pochette" -msgstr "Import images for the cover" +msgid "Import pictures for the cover" +msgstr "Import pictures for the cover" #: src/fileselect.c:114 -msgid "Choix d'un chemin de stockage des images" -msgstr "Select location for image storage" +msgid "Choosing an Image Storage path" +msgstr "Choosing an Image Storage path" #: src/fileselect.c:115 -msgid "Choix d'un lieu de sauvegarde" -msgstr "Select a backup location" +msgid "Choosing a place for backup" +msgstr "Choosing a place for backup" + +#: src/fileselect.c:396 src/fileselect.c:415 src/fileselect.c:703 +msgid "Cancel" +msgstr "Cancel" + +#: src/fileselect.c:398 src/fileselect.c:417 src/fileselect.c:705 +msgid "Open" +msgstr "Open" -#: src/fileselect.c:472 src/fileselect.c:595 src/fileselect.c:605 -#: src/fileselect.c:628 +#: src/fileselect.c:494 src/fileselect.c:617 src/fileselect.c:627 +#: src/fileselect.c:650 msgid "All Files (*.*)" msgstr "All Files (*.*)" -#: src/file_trash.c:360 +#: src/file_trash.c:211 msgid "Trash files ..." msgstr "Trash files ..." -#: src/file_wav.c:483 -msgid "(Click Droit = Menu) / Choix de la frequence" +#: src/file_wav.c:485 +msgid "(Right Click = Menu) / Select frequency" msgstr "(Right Click = Menu) / Select frequency" -#: src/file_wav.c:486 -msgid "(Click Droit = Menu) / Choix du nombre de pistes (voies)" +#: src/file_wav.c:488 +msgid "(Right Click = Menu) / Select number of tracks (channels)" msgstr "(Right Click = Menu) / Select number of tracks (channels)" -#: src/file_wav.c:489 -msgid "(Click Droit = Menu) / Choix du codage en nombre de bits" +#: src/file_wav.c:491 +msgid "(Right Click = Menu) / Encoding selection in number of bits" msgstr "(Right Click = Menu) / Encoding selection in number of bits" -#: src/file_wav.c:733 -msgid "Frequence" +#: src/file_wav.c:739 +msgid "Frequency" msgstr "Frequency" -#: src/file_wav.c:749 -msgid "FREQUENCE" +#: src/file_wav.c:755 +msgid "FREQUENCY" msgstr "FREQUENCY" -#: src/file_wav.c:763 -msgid "Piste" +#: src/file_wav.c:769 +msgid "Track" msgstr "Track" -#: src/file_wav.c:779 -msgid "PISTE" +#: src/file_wav.c:785 +msgid "TRACK" msgstr "TRACK" -#: src/file_wav.c:793 +#: src/file_wav.c:799 msgid "Quantification" msgstr "Quantification" -#: src/file_wav.c:809 +#: src/file_wav.c:815 msgid "QUANTIFICATION" msgstr "QUANTIFICATION" #: src/file_wav_conv.c:261 #, c-format -msgid "%s Copie fichier: %d%%" +msgid "%s Copy file: %d%%" msgstr "%s Copy file: %d%%" #: src/file_wav_conv.c:271 #, c-format -msgid "%s Restitution fichier: %d%%" +msgid "%s Return file: %d%%" msgstr "%s Return file: %d%%" #: src/file_wav_conv.c:281 #, c-format -msgid "%s Traitement Sox: %d%%" +msgid "%s Use Sox: %d%%" msgstr "%s Use Sox: %d%%" #: src/file_wav_conv.c:298 #, c-format -msgid "%s Traitement Mplayer: %d%%" +msgid "%s Use Mplayer: %d%%" msgstr "%s Use Mplayer: %d%%" #: src/file_wav_conv.c:343 src/file_wav_conv.c:345 msgid "XCFA: Conversions WAV TO WAV" msgstr "XCFA: Conversions WAV TO WAV" -#: src/main.c:398 -msgid "= Adressage memoire invalide\n" -msgstr "= Invalid memory address\n" - -#: src/main.c:401 -msgid "= Vous avez probablement trouve un bug dans XCFA\n" -msgstr "= You've probably found a bug in XCFA\n" - -#: src/main.c:786 -msgid "MODE ADMINISTRATEUR" +#: src/main.c:775 +msgid "ADMINISTRATOR MODE" msgstr "ADMINISTRATOR MODE" -#: src/main.c:788 -msgid " Vous ne devriez pas utiliser " -msgstr " You should not use " +#: src/main.c:777 +msgid " You should not use " +msgstr " You should not use " -#: src/main.c:790 -msgid " XCFA sous ROOT !" +#: src/main.c:779 +msgid " XCFA under ROOT !" msgstr " XCFA under ROOT !" -#: src/options.c:171 -msgid "ERREUR: Lieu de stockage non autorise !" +#: src/options.c:169 +msgid "ERROR : storage location not permitted !" msgstr "ERROR : storage location not permitted !" -#: src/options.c:172 -msgid "Veuillez recommencer." +#: src/options.c:170 +msgid "Please start again." msgstr "Please start again." #: src/options_cd.c:122 -msgid "Pour evaluer les templates, vous devez activer une lecture de cdaudio" +msgid "To assess the templates, you must enable a reading cdaudio" msgstr "To assess the templates, you must enable a reading cdaudio" -#: src/options_faac.c:96 +#: src/options_faac.c:94 msgid "Transport Stream (ADTS) - Extension .aac" msgstr "Transport Stream (ADTS) - Extension .aac" -#: src/options_faac.c:97 +#: src/options_faac.c:95 msgid "MPEG-4 File Format (MP4) - Extension .m4a" msgstr "MPEG-4 File Format (MP4) - Extension .m4a" -#: src/options_flac.c:67 -msgid "0 (Rapide)" +#: src/options_flac.c:65 +msgid "0 (Fast)" msgstr "0 (Fast)" -#: src/options_flac.c:75 -msgid "8 (Lent)" -msgstr "8 (Slow)" - -#: src/options_mp3.c:279 -msgid "V0 (meilleure qualite)" -msgstr "V0·····(Best quality)" - -#: src/options_mp3.c:288 -msgid "V9 (moins bonne qualite)" -msgstr "V9·····(Poor quality)" +#: src/options_flac.c:73 +msgid "8 (Low)" +msgstr "8 (Low)" + +#: src/options_mp3.c:276 +msgid "V0 (Best quality)" +msgstr "V0 (Best quality)" + +#: src/options_mp3.c:285 +msgid "V9 (Poor quality)" +msgstr "V9 (Poor quality)" -#: src/options_musepack.c:70 +#: src/options_musepack.c:68 msgid "telephone: lowest quality : 32 .. 48 kbit/s" -msgstr "Phone: (Lowest quality) : 32 .. 48 kbit/s" +msgstr "telephone: lowest quality : 32 .. 48 kbit/s" -#: src/options_musepack.c:71 +#: src/options_musepack.c:69 msgid "thumb : low quality/internet : 58 .. 86 kbit/s" msgstr "thumb : low quality/internet : 58 .. 86 kbit/s" -#: src/options_musepack.c:72 +#: src/options_musepack.c:70 msgid "radio : medium (MP3) quality : 112 .. 152 kbit/s" msgstr "radio : medium (MP3) quality : 112 .. 152 kbit/s" -#: src/options_musepack.c:73 +#: src/options_musepack.c:71 msgid "standard : high quality (dflt) : 142 .. 184 kbit/s" msgstr "standard : high quality (dflt) : 142 .. 184 kbit/s" -#: src/options_musepack.c:74 +#: src/options_musepack.c:72 msgid "xtreme : extreme high quality : 168 .. 212 kbit/s" msgstr "xtreme : extreme high quality : 168 .. 212 kbit/s" -#: src/options_musepack.c:75 +#: src/options_musepack.c:73 msgid "insane : extreme high quality : 232 .. 268 kbit/s" msgstr "insane : extreme high quality : 232 .. 268 kbit/s" -#: src/options_musepack.c:76 +#: src/options_musepack.c:74 msgid "braindead : extreme high quality : 232 .. 278 kbit/s" msgstr "braindead : extreme high quality : 232 .. 278 kbit/s" -#: src/options_oggenc.c:138 -msgid "Qualite -1 (Moins bonne qualite)" +#: src/options_oggenc.c:137 +msgid "Quality -1 (Poor quality)" msgstr "Quality -1 (Poor quality)" -#: src/options_oggenc.c:139 src/popup.c:1219 -msgid "Qualite 0" +#: src/options_oggenc.c:138 src/popup.c:1294 +msgid "Quality 0" msgstr "Quality 0" -#: src/options_oggenc.c:140 src/popup.c:1219 -msgid "Qualite 1" +#: src/options_oggenc.c:139 src/popup.c:1294 +msgid "Quality 1" msgstr "Quality 1" -#: src/options_oggenc.c:141 src/popup.c:1219 -msgid "Qualite 2" +#: src/options_oggenc.c:140 src/popup.c:1294 +msgid "Quality 2" msgstr "Quality 2" -#: src/options_oggenc.c:142 -msgid "Qualite 3" +#: src/options_oggenc.c:141 +msgid "Quality 3" msgstr "Quality 3" -#: src/options_oggenc.c:143 src/popup.c:1220 -msgid "Qualite 4" +#: src/options_oggenc.c:142 src/popup.c:1295 +msgid "Quality 4" msgstr "Quality 4" -#: src/options_oggenc.c:144 src/popup.c:1220 -msgid "Qualite 5" +#: src/options_oggenc.c:143 src/popup.c:1295 +msgid "Quality 5" msgstr "Quality 5" -#: src/options_oggenc.c:145 src/popup.c:1220 -msgid "Qualite 6" +#: src/options_oggenc.c:144 src/popup.c:1295 +msgid "Quality 6" msgstr "Quality 6" -#: src/options_oggenc.c:146 src/popup.c:1220 -msgid "Qualite 7" +#: src/options_oggenc.c:145 src/popup.c:1295 +msgid "Quality 7" msgstr "Quality 7" -#: src/options_oggenc.c:147 src/popup.c:1221 -msgid "Qualite 8" +#: src/options_oggenc.c:146 src/popup.c:1296 +msgid "Quality 8" msgstr "Quality 8" -#: src/options_oggenc.c:148 src/popup.c:1221 -msgid "Qualite 9" +#: src/options_oggenc.c:147 src/popup.c:1296 +msgid "Quality 9" msgstr "Quality 9" -#: src/options_oggenc.c:149 -msgid "Qualite 10 (Meilleure qualite)" +#: src/options_oggenc.c:148 +msgid "Quality 10 (Best quality)" msgstr "Quality 10 (Best quality)" -#: src/options_oggenc.c:179 src/options_wavpack.c:181 -#: src/options_wavpack.c:204 src/options_wavpack.c:227 src/popup.c:1223 -msgid "Oui" +#: src/options_oggenc.c:176 src/options_wavpack.c:173 +#: src/options_wavpack.c:194 src/options_wavpack.c:215 src/popup.c:1298 +msgid "Yes" msgstr "Yes" -#: src/options_oggenc.c:180 src/options_wavpack.c:148 -#: src/options_wavpack.c:180 src/options_wavpack.c:203 -#: src/options_wavpack.c:226 src/options_wavpack.c:247 src/popup.c:1223 -msgid "Non" +#: src/options_oggenc.c:177 src/options_wavpack.c:142 +#: src/options_wavpack.c:172 src/options_wavpack.c:193 +#: src/options_wavpack.c:214 src/options_wavpack.c:233 src/popup.c:1298 +msgid "No" msgstr "No" -#: src/options_oggenc.c:201 -msgid "Mono force" +#: src/options_oggenc.c:196 +msgid "Force mono" msgstr "Force mono" -#: src/options_oggenc.c:202 +#: src/options_oggenc.c:197 msgid "Stereo" msgstr "Stereo" -#: src/options_wavpack.c:100 -msgid "Mode normal" +#: src/options_wavpack.c:98 +msgid "Standard" msgstr "Standard" -#: src/options_wavpack.c:101 -msgid "Mode rapide de compression" +#: src/options_wavpack.c:99 +msgid "Fast (Faster encode and decode)" msgstr "Fast (Faster encode and decode)" -#: src/options_wavpack.c:102 -msgid "Bonne qualite de compression" +#: src/options_wavpack.c:100 +msgid "High quality (Better compression ratio)" msgstr "High quality (Better compression ratio)" -#: src/options_wavpack.c:103 -msgid "Meilleure qualite de compression" +#: src/options_wavpack.c:101 +msgid "Very high quality (Best compression but slowest)" msgstr "Very high quality (Best compression but slowest)" -#: src/options_wavpack.c:129 +#: src/options_wavpack.c:125 msgid "stereo left/right" msgstr "stereo left/right" -#: src/options_wavpack.c:130 +#: src/options_wavpack.c:126 msgid "stereo mid/side" msgstr "stereo mid/side" -#: src/options_wavpack.c:248 +#: src/options_wavpack.c:234 msgid "1 (fast / rapide)" -msgstr "1 (fast)" +msgstr "1 (fast / rapide)" -#: src/options_wavpack.c:253 +#: src/options_wavpack.c:239 msgid "6 (very slow / tres lent)" -msgstr "6 (very slow)" +msgstr "6 (very slow / tres lent)" -#: src/play_file.c:108 -msgid "PAS de lecteur audio present" +#: src/play_file.c:107 +msgid "NO audio player present" msgstr "NO audio player present" -#: src/play_file.c:109 -msgid "Veuillez installez un lecteur audio." -msgstr "Please install an audio player" +#: src/play_file.c:108 +msgid "Please install an audio player." +msgstr "Please install an audio player." -#: src/poche_dir.c:430 +#: src/poche_dir.c:433 msgid "" "Utilisez le glisser / deplacer - Effacer une image avec Ctrl + " "Click" msgstr "" -"Use drag / drop - delete an image with Ctrl +Click" +"Utilisez le glisser / deplacer - Effacer une image avec Ctrl + " +"Click" -#: src/poche_save.c:111 -msgid "Nom de fichier absent !!" +#: src/poche_save.c:117 +msgid "File name not found !!" msgstr "File name not found !!" -#: src/poche_save.c:112 src/poche_web.c:353 src/poche_web.c:375 -msgid "Pour resoudre ce probleme:" +#: src/poche_save.c:118 src/poche_web.c:330 src/poche_web.c:352 +msgid "To solve this problem :" msgstr "To solve this problem :" -#: src/poche_save.c:115 -msgid "Saisissez un nom de fichier sans extention" +#: src/poche_save.c:121 +msgid "Enter a file name without extension" msgstr "Enter a file name without extension" -#: src/poche_save.c:126 -msgid "Sauvegarde aux formats PDF et PostScript" -msgstr "Saving to PDF and PostScript" - -#: src/poche_save.c:151 -msgid "Sauvegarde au format PNG" -msgstr "Saving as PNG" +#: src/poche_save.c:131 +msgid "Saving to PDF" +msgstr "Saving to PDF" -#: src/poche_web.c:352 -msgid "Aucun fichier trouve !" +#: src/poche_web.c:329 +msgid "No file found !" msgstr "No file found !" -#: src/poche_web.c:356 -msgid "Modifiez la chaine de recherche et" +#: src/poche_web.c:333 src/poche_web.c:355 +msgid "Modify the search parameters and" msgstr "Modify the search parameters and" -#: src/poche_web.c:358 src/poche_web.c:380 -msgid "recommencez." -msgstr "start again" +#: src/poche_web.c:335 src/poche_web.c:357 +msgid "start again." +msgstr "start again." -#: src/poche_web.c:374 -msgid "Critere de recherche absent !!" +#: src/poche_web.c:351 +msgid "Search criteria away !!" msgstr "Search criteria away !!" -#: src/poche_web.c:378 -msgid "Saisissez une chaine de recherche et" -msgstr "Enter a search string and" - -#: src/poche_web.c:387 -msgid "[Recherche des fichiers images]" +#: src/poche_web.c:369 +msgid "[Search images files]" msgstr "[Search images files]" #: src/popup.c:81 src/popup.c:100 msgid " Deselection globale" -msgstr " Deselect all" +msgstr " Deselection globale" #: src/popup.c:82 src/popup.c:101 src/popup.c:162 msgid " Deselection verticale" -msgstr " Vertically deselect" +msgstr " Deselection verticale" #: src/popup.c:83 src/popup.c:102 msgid " Deselection horizontale" -msgstr " Horizontally deselect" +msgstr " Deselection horizontale" #: src/popup.c:84 src/popup.c:87 src/popup.c:103 src/popup.c:106 #: src/popup.c:120 src/popup.c:133 src/popup.c:147 @@ -974,195 +905,127 @@ #: src/popup.c:85 src/popup.c:104 msgid " Selection verticale" -msgstr " Vertically select" +msgstr " Selection verticale" #: src/popup.c:86 src/popup.c:105 msgid " Selection Expert verticale" -msgstr " Vertical expert select" +msgstr " Selection Expert verticale" #: src/popup.c:88 src/popup.c:107 msgid " Selection horizontale" -msgstr " Horizontally select" +msgstr " Selection horizontale" #: src/popup.c:89 src/popup.c:108 msgid " Selection Expert horizontale " -msgstr " Horizontal expert select" +msgstr " Selection Expert horizontale " #: src/popup.c:119 src/popup.c:132 msgid " Deselection verticale " -msgstr " Vertically deselect " +msgstr " Deselection verticale " #: src/popup.c:121 src/popup.c:134 msgid " Selection verticale " -msgstr " Vertically select " +msgstr " Selection verticale " #: src/popup.c:145 msgid "---SELECTION VERTICALE-----" -msgstr "---VERTICAL SELECTION------" +msgstr "---SELECTION VERTICALE-----" #: src/popup.c:146 msgid " Deselection verticale " -msgstr " Vertically deselect " +msgstr " Deselection verticale " #: src/popup.c:148 msgid " Selection PISTE " -msgstr " TRACK selection " +msgstr " Selection PISTE " #: src/popup.c:149 msgid " Selection ALBUM " -msgstr " ALBUM selection " +msgstr " Selection ALBUM " #: src/popup.c:150 msgid " Selection NETTOYER " -msgstr " ERASE selection " +msgstr " Selection NETTOYER " #: src/popup.c:161 msgid "---MENU TRASH--------------" -msgstr "---TRASH MENU--------------" +msgstr "---MENU TRASH--------------" #: src/popup.c:163 msgid " Selection verticale " -msgstr " Vertically select " +msgstr " Selection verticale " -#: src/popup.c:489 -msgid "1 piste" -msgstr "1 track" - -#: src/popup.c:492 -msgid "2 pistes" -msgstr "2 track" - -#: src/popup.c:495 -msgid "4 pistes" -msgstr "4 track" - -#: src/popup.c:498 -msgid "6 pistes" -msgstr "6 track" - -#: src/popup.c:504 src/popup.c:619 src/popup.c:716 -msgid "Valeur d'origine" +#: src/popup.c:504 src/popup.c:619 src/popup.c:715 +msgid "Original value" msgstr "Original value" -#: src/popup.c:592 -msgid " 8000 Hertz" -msgstr " 8000 Hertz" - -#: src/popup.c:595 -msgid "22000 Hertz" -msgstr "22000 Hertz" - -#: src/popup.c:598 -msgid "32000 Hertz" -msgstr "32000 Hertz" - -#: src/popup.c:601 -msgid "44056 Hertz" -msgstr "44056 Hertz" - -#: src/popup.c:604 -msgid "44100 Hertz" -msgstr "44100 Hertz" - -#: src/popup.c:607 -msgid "48000 Hertz" -msgstr "48000 Hertz" - -#: src/popup.c:610 -msgid "88200 Hertz" -msgstr "88200 Hertz" - -#: src/popup.c:613 -msgid "96000 Hertz" -msgstr "96000 Hertz" - -#: src/popup.c:698 -msgid " 8 bits" -msgstr " 8 bits" - -#: src/popup.c:701 -msgid "16 bits" -msgstr "16 bits" - -#: src/popup.c:704 -msgid "24 bits" -msgstr "24 bits" - -#: src/popup.c:707 -msgid "32 bits" -msgstr "32 bits" - -#: src/popup.c:710 -msgid "64 bits" -msgstr "64 bits" - #: src/popup.c:765 -msgid "Selecteur suivant" -msgstr "Following selector" +msgid "Next selector" +msgstr "Next selector" #: src/popup.c:769 -msgid "Selecteur precedant" +msgid "Previous selector" msgstr "Previous selector" #: src/popup.c:777 -msgid "Supprimer la plage active" +msgid "Delete the active range" msgstr "Delete the active range" -#: src/popup.c:849 -msgid "Retourner horizontalement" +#: src/popup.c:850 +msgid "Flip Horizontal" msgstr "Flip Horizontal" -#: src/popup.c:853 -msgid "Retourner verticalement" +#: src/popup.c:854 +msgid "Flip Vertical" msgstr "Flip Vertical" -#: src/popup.c:861 -msgid "Image au premier plan" +#: src/popup.c:862 +msgid "Foreground image" msgstr "Foreground image" -#: src/popup.c:865 -msgid "Image au dessus" +#: src/popup.c:866 +msgid "Image above" msgstr "Image above" -#: src/popup.c:869 -msgid "Image en dessous" +#: src/popup.c:870 +msgid "Image below" msgstr "Image below" -#: src/popup.c:873 -msgid "Image au dernier plan" +#: src/popup.c:874 +msgid "Image to the background" msgstr "Image to the background" -#: src/popup.c:881 -msgid "Effacer l'image" +#: src/popup.c:882 +msgid "Clear image" msgstr "Clear image" -#: src/popup.c:918 -msgid "Supprimer l'image de la liste" +#: src/popup.c:920 +msgid "Remove image from the list" msgstr "Remove image from the list" -#: src/popup.c:1036 -msgid "V0 [ meilleure qualite ]" +#: src/popup.c:1111 +msgid "V0 [ best quality ]" msgstr "V0 [ best quality ]" -#: src/popup.c:1036 src/popup.c:1039 -msgid "V4 [ defaut ]" +#: src/popup.c:1111 src/popup.c:1114 +msgid "V4 [ default ]" msgstr "V4 [ default ]" -#: src/popup.c:1036 -msgid "V9 [ moins bonne qualite ]" -msgstr "V9 [ worst quality ]" - -#: src/popup.c:1219 -msgid "Qualite -1 [ Moins bonne qualite ]" -msgstr "Quality -1 [ worst quality ]" - -#: src/popup.c:1220 -msgid "Qualite 3 [ Defaut ]" -msgstr "Quality 3 [ Default ]" - -#: src/popup.c:1221 -msgid "Qualite 10 [ Meilleure qualite ]" -msgstr "Quality 10 [ Best quality ]" +#: src/popup.c:1111 +msgid "V9 [ Lower quality ]" +msgstr "V9 [ Lower quality ]" + +#: src/popup.c:1294 +msgid "Quality -1 [ Lower quality ]" +msgstr "Quality -1 [ Lower quality ]" + +#: src/popup.c:1295 +msgid "Quality 3 [ Defaut ]" +msgstr "Quality 3 [ Defaut ]" + +#: src/popup.c:1296 +msgid "Quality 10 [ Best Quality ]" +msgstr "Quality 10 [ Best Quality ]" #: src/prg_init.c:85 msgid " Decode ATSC A/52 audio streams" @@ -1174,7 +1037,7 @@ #: src/prg_init.c:107 src/prg_init.c:173 msgid " Extracteur cd audio" -msgstr " InCrEdible Digital Audio eXtractor" +msgstr " Extracteur cd audio" #: src/prg_init.c:118 msgid " Read CD and get CDDB discid information" @@ -1182,27 +1045,27 @@ #: src/prg_init.c:129 msgid " Cherche des renseignements sur les formats mp3" -msgstr " Check validity of mp3s" +msgstr " Cherche des renseignements sur les formats mp3" #: src/prg_init.c:140 msgid " Audio Codeur freeware" -msgstr " MPEG-4 and MPEG-2 AAC encoder" +msgstr " Audio Codeur freeware" #: src/prg_init.c:151 msgid " MPEG-4 AAC decodeur" -msgstr " MPEG-4 AAC decoder" +msgstr " MPEG-4 AAC decodeur" #: src/prg_init.c:162 msgid " Conversion wav : flac" -msgstr " Create wav to flac" +msgstr " Conversion wav : flac" #: src/prg_init.c:184 msgid " Conversion wav : mp3" -msgstr " Create mp3 audio files" +msgstr " Conversion wav : mp3" #: src/prg_init.c:195 msgid " Cherche les informations d'un dvd" -msgstr " Read the contents of a DVD" +msgstr " Cherche les informations d'un dvd" #: src/prg_init.c:207 msgid " Monkey's Audio Console Front End : APE" @@ -1214,15 +1077,15 @@ #: src/prg_init.c:241 msgid " Lecteur et extracteur" -msgstr " Video and audio player" +msgstr " Lecteur et extracteur" #: src/prg_init.c:252 msgid " Normaliseur de fichier mp3" -msgstr " Lossless mp3 normaliser" +msgstr " Normaliseur de fichier mp3" #: src/prg_init.c:263 msgid " Normaliseur de fichier wav" -msgstr " wav file normaliser" +msgstr " Normaliseur de fichier wav" #: src/prg_init.c:274 msgid " A program to send desktop notifications" @@ -1230,58 +1093,58 @@ #: src/prg_init.c:285 msgid " Forte compression au format wave" -msgstr " High compression for waveform files" +msgstr " Forte compression au format wave" #: src/prg_init.c:296 msgid " Decoupage de fichiers sans decodage" -msgstr " Split mp3/ogg without decoding" +msgstr " Decoupage de fichiers sans decodage" #: src/prg_init.c:307 msgid " Transformation universelle de fichiers son" -msgstr " Sound eXchange, the Swiss Army knife of audio manipulation" +msgstr " Transformation universelle de fichiers son" #: src/prg_init.c:318 msgid " Conversion wav : ogg" -msgstr " Convert wav : ogg" +msgstr " Conversion wav : ogg" #: src/prg_init.c:329 msgid " Normaliseur de fichier ogg" -msgstr " ogg file normaliser" +msgstr " Normaliseur de fichier ogg" #: src/prg_init.c:340 msgid " WAVPACK Hybrid Lossless Audio Compressor" -msgstr " Wavpack Hybrid Lossless Audio Compressor" +msgstr " WAVPACK Hybrid Lossless Audio Compressor" #: src/prg_init.c:357 -msgid " ... les paquets: deb " -msgstr " ... Packets: deb " +msgid " ... Packets: deb " +msgstr " ... Packets: deb " #: src/prg_init.c:363 -msgid " ... les paquets: tgz " -msgstr " ... Packets: tgz " +msgid " ... Packets: tgz " +msgstr " ... Packets: tgz " #: src/prg_init.c:369 -msgid " ... les paquets: fpm " -msgstr " ... Packets: fpm " +msgid " ... Packets: fpm " +msgstr " ... Packets: fpm " #: src/prg_init.c:375 -msgid " ... les paquets: rpm " -msgstr " ... Packets: rpm " +msgid " ... Packets: rpm " +msgstr " ... Packets: rpm " #: src/prg_init.c:381 -msgid " ... les paquets: pkg.tar.xz " +msgid " ... Packets: pkg.tar.xz " msgstr " ... Packets: pkg.tar.xz " #: src/prg_init.c:387 -msgid " ... les paquets: ? " -msgstr " ... Packets: ?" +msgid " ... Packets: ? " +msgstr " ... Packets: ? " #: src/prg_init.c:623 msgid "Status" msgstr "Status" #: src/prg_init.c:637 -msgid "Paquet" +msgid "Packets" msgstr "Packets" #: src/prg_init.c:652 @@ -1289,276 +1152,332 @@ msgstr "Action" #: src/scan.c:259 -msgid "PACKAGE dvd+rw-tools ABSENT" +msgid "PACKAGE dvd+rw-tools is missing" msgstr "PACKAGE dvd+rw-tools is missing" #: src/scan.c:260 -msgid "Le package 'dvd+rw-tools' est absent" +msgid "The package 'imagemagick' is missing" msgstr "The package 'imagemagick' is missing" #: src/scan.c:262 -msgid "de votre systeme !" +msgid "on your system !" msgstr "on your system !" -#: src/scan.c:264 -msgid "Veuillez l'installer car j'ai besoin de" +#: src/scan.c:264 src/split.c:438 +msgid "Please install it and resume" msgstr "Please install it and resume" #: src/scan.c:266 -msgid "'dvd+rw-mediainfo' pour identifier le(s)" +msgid "'Dvd + rw-mediainfo' to identify the" msgstr "'Dvd + rw-mediainfo' to identify the" #: src/scan.c:268 -msgid "lecteur(s) de cd / dvd." +msgid "reader of cd / dvd." msgstr "reader of cd / dvd." -#: src/split.c:279 +#: src/split.c:297 msgid "" -"Menu: Click droit / Ajout plage: Click bouton centre / Zoom: Ctrl+Scroll" +"Menu: right click / Adding track: Click the center button / Zoom: Ctrl" +"+Scroll" msgstr "" "Menu: right click / Adding track: Click the center button / Zoom: Ctrl" "+Scroll" -#: src/split.c:282 -msgid "Ajout plage: Click bouton centre / Zoom: Ctrl+Scroll" +#: src/split.c:300 +msgid "Adding track: Click the center button / Zoom: Ctrl+Scroll" msgstr "Adding track: Click the center button / Zoom: Ctrl+Scroll" -#: src/split.c:286 -msgid "" -"Pret pour l'import d'un fichier CUE, WAV, FLAC, OGG, MP3, APE, WMA" +#: src/split.c:304 +msgid "Ready for imports and a CUE file, WAV, FLAC, OGG, MP3, APE, WMA" msgstr "Ready for imports and a CUE file, WAV, FLAC, OGG, MP3, APE, WMA" -#: src/split.c:356 src/split.c:385 -msgid "Ce fichier appartient a XCFA" +#: src/split.c:378 src/split.c:407 +msgid "This file belongs XCFA" msgstr "This file belongs XCFA" -#: src/split.c:357 src/split.c:386 -msgid "Selectionnez un autre fichier." +#: src/split.c:379 src/split.c:408 +msgid "Select another file." msgstr "Select another file." -#: src/split.c:365 -msgid "Fichier vide" +#: src/split.c:387 +msgid "Empty file" msgstr "Empty file" -#: src/split.c:366 -msgid "Le fichier ne contient aucune donnee !!!" +#: src/split.c:388 +msgid "The file contains no data !!!" msgstr "The file contains no data !!!" -#: src/split.c:411 -msgid "Sox et Mplayer absents" -msgstr "Sox and Mplayer is missing" - -#: src/split.c:412 -msgid "Sox et Mplayer sont absents de votre" -msgstr "Sox and Mplayer is missing" - -#: src/split.c:414 -msgid "configuration." -msgstr "configuration." - -#: src/split.c:416 -msgid "Veuillez les installer pour pouvoir continuer." -msgstr "Please install it and resume" +#: src/split.c:433 +msgid "Sox and Mplayer not found" +msgstr "Sox and Mplayer not found" + +#: src/split.c:434 +msgid "Sox et Mplayer are not found" +msgstr "Sox et Mplayer are not found" + +#: src/split.c:436 +msgid "in your configuration." +msgstr "in your configuration." -#: src/split.c:467 -msgid "Erreur de choix de fichier" +#: src/split.c:491 +msgid "Error file select" msgstr "Error file select" -#: src/split.c:468 -msgid "Veuillez selectionner un fichier de type WAV FLAC MP3 OGG APE" +#: src/split.c:492 +msgid "Please select a file type of MP3 WAV OGG FLAC APE" msgstr "Please select a file type of MP3 WAV OGG FLAC APE" -#: src/split.c:505 src/split.c:579 -msgid "Mauvais type de fichier" +#: src/split.c:530 src/split.c:602 +msgid "Wrong type of file" msgstr "Wrong type of file" -#: src/split.c:506 src/split.c:580 +#: src/split.c:531 src/split.c:603 msgid "" -"Les types de fichiers acceptes\n" -"sont: WAV FLAC MP3 OGG APE WMA CUE" +"File types accepted\n" +"sare: WAV FLAC MP3 OGG APE WMA CUE" msgstr "" "File types accepted\n" -"are: WAV FLAC MP3 OGG APE WMA CUE" +"sare: WAV FLAC MP3 OGG APE WMA CUE" -#: src/split_conv.c:313 src/split_conv.c:330 -msgid "Erreur SOX" +#: src/split_conv.c:316 src/split_conv.c:333 +msgid "SOX Error" msgstr "SOX Error" -#: src/split_conv.c:314 src/split_conv.c:331 -msgid "Le programme SOX de votre distribution" +#: src/split_conv.c:317 src/split_conv.c:334 +msgid "The SOX program on your distribution" msgstr "The SOX program on your distribution" -#: src/split_conv.c:316 src/split_conv.c:333 -msgid "a generer une erreur pendant la conversion." -msgstr "has generated an error during conversion" +#: src/split_conv.c:319 src/split_conv.c:336 +msgid "has generated an error during conversion." +msgstr "has generated an error during conversion." #: src/split_cue.c:116 -msgid "Erreur de lecture !" +msgid "Misreading !" msgstr "Misreading !" -#: src/split_cue.c:177 src/split_cue.c:187 src/split_cue.c:197 -msgid "Erreur" +#: src/split_cue.c:177 src/split_cue.c:187 src/split_cue.c:196 +msgid "Error" msgstr "Error" #: src/split_cue.c:178 -msgid "Aucun fichier de musique associe au cue-file !" +msgid "No music file associated with the cue-file" msgstr "No music file associated with the cue-file" #: src/split_cue.c:188 -msgid "Pas de fichier WAV dans le cue-file !" +msgid "No WAV file in the cue-file" msgstr "No WAV file in the cue-file" -#: src/split_cue.c:198 -msgid "Aucun fichier de musique associe dans le dossier" +#: src/split_cue.c:197 +msgid "No music file in the folder associated" msgstr "No music file in the folder associated" -#: src/split_cue.c:200 -msgid "du cue-file" +#: src/split_cue.c:199 +msgid "of cue-file" msgstr "of cue-file" -#: src/split_cue.c:294 -msgid "Erreur de donnees dans le fichier CUE" +#: src/split_cue.c:293 +msgid "Data errors in the CUE file" msgstr "Data errors in the CUE file" -#: src/split_cue.c:295 -msgid "La solution est d'importer le fichier de" +#: src/split_cue.c:294 +msgid "The solution is to import the file" msgstr "The solution is to import the file" -#: src/split_cue.c:297 -msgid "musique qui sera reconnu et pre-decoupe" +#: src/split_cue.c:296 +msgid "music that will be recognized and pre-cutting" msgstr "music that will be recognized and pre-cutting" -#: src/split_cue.c:299 -msgid "dans le module Split." -msgstr "Split in the module." +#: src/split_cue.c:298 +msgid "in the split module." +msgstr "in the split module." -#: src/split_cue.c:301 -msgid "Il ne restera qu'a ajuster les plages pour" +#: src/split_cue.c:300 +msgid "We will just adjust to the beaches" msgstr "We will just adjust to the beaches" -#: src/split_cue.c:303 -msgid "generer un nouveau cue-file ou des decoupes" +#: src/split_cue.c:302 +msgid "generate a new cue-file or cuts" msgstr "generate a new cue-file or cuts" -#: src/split_cue.c:305 -msgid "correspondant aux plages." +#: src/split_cue.c:304 +msgid "corresponding to the beaches." msgstr "corresponding to the beaches." #: src/split_selector.c:136 -msgid "Suppression pendant la lecture impossible" +msgid "Deleting not during playback" msgstr "Deleting not during playback" -#: src/split_selector.c:229 src/split_selector.c:235 src/split_selector.c:289 -#: src/split_selector.c:295 src/split_selector.c:352 src/split_selector.c:359 -#: src/split_selector.c:429 src/split_selector.c:435 -msgid "Temps inferieur a 5 secondes entre marqueur et curseur !" +#: src/split_selector.c:231 src/split_selector.c:237 src/split_selector.c:291 +#: src/split_selector.c:297 src/split_selector.c:354 src/split_selector.c:361 +#: src/split_selector.c:431 src/split_selector.c:437 +msgid "Time of less than 5 seconds between marker and cursor !" msgstr "Time of less than 5 seconds between marker and cursor !" -#: src/translate.c:51 -msgid "Fichier" +#: src/web.c:173 src/web.c:234 +msgid "No web browser" +msgstr "No web browser" + +#: src/web.c:174 src/web.c:235 +msgid "No Web access: no web browser" +msgstr "No Web access: no web browser" + +#: src/web.c:176 src/web.c:237 +msgid "found in your system." +msgstr "found in your system." + +#: src/web.c:178 src/web.c:239 +msgid "Please install a web browser." +msgstr "Please install a web browser." + +#: src/web.c:188 +msgid "You need to enable web access" +msgstr "You need to enable web access" + +#: src/web.c:249 +msgid "Application is missing." +msgstr "Application is missing." + +#: src/web.c:250 +msgid "Please install : " +msgstr "Please install : " + +#: src/win_about.c:124 +msgid " Xcfa on the web" +msgstr " Xcfa on the web" + +#: src/win_about.c:174 +msgid "" +"\n" +"Au tout debut:\n" +"\n" +"Serres Patrick, Hamann Regis, Fabien Gregis, @Dzef, @alteo_gange, \n" +"@Leonux, @zarer, @Shankarius, @bishop, @Ludo, @Patachonf,\n" +"... ;-)\n" +"\n" +"" +msgstr "" +"\n" +"Au tout debut:\n" +"\n" +"Serres Patrick, Hamann Regis, Fabien Gregis, @Dzef, @alteo_gange, \n" +"@Leonux, @zarer, @Shankarius, @bishop, @Ludo, @Patachonf,\n" +"... ;-)\n" +"\n" +"" + +#: src/win_scan.c:170 +msgid "Waiting ..." +msgstr "Waiting ..." + +#: glade/xcfa.glade:66 glade/xcfa.glade:2533 +msgid "File" msgstr "File" -#: src/translate.c:52 -msgid "Quitter" +#: glade/xcfa.glade:75 +msgid "Quit" msgstr "Quit" -#: src/translate.c:53 -msgid "Outils" +#: glade/xcfa.glade:89 +msgid "Tools" msgstr "Tools" -#: src/translate.c:54 -msgid "Visibilite des champs" -msgstr "Visible fields" +#: glade/xcfa.glade:99 +msgid "Visibility fields" +msgstr "Visibility fields" -#: src/translate.c:55 -msgid "Aide" +#: glade/xcfa.glade:112 +msgid "Help" msgstr "Help" -#: src/translate.c:56 -msgid "A propos" +#: glade/xcfa.glade:121 +msgid "About" msgstr "About" -#: src/translate.c:57 src/translate.c:67 -msgid "Lecture" -msgstr "Play" - -#: src/translate.c:58 -msgid " Choix du peripherique / Lecture du DVD " -msgstr " DVD player / Import files " - -#: src/translate.c:59 src/translate.c:69 src/translate.c:125 -msgid " Destination des fichiers " -msgstr " Save location: " +#: glade/xcfa.glade:224 +msgid "Read" +msgstr "Read" + +#: glade/xcfa.glade:252 +msgid " Choosing the peripheral / DVD playback " +msgstr " Choosing the peripheral / DVD playback " + +#: glade/xcfa.glade:303 glade/xcfa.glade:921 +msgid " File Destination " +msgstr " File Destination " -#: src/translate.c:60 src/translate.c:70 +#: glade/xcfa.glade:359 glade/xcfa.glade:1009 msgid " Eject " msgstr " Eject " -#: src/translate.c:61 src/translate.c:92 -msgid " Normaliser " -msgstr " Normalise " +#: glade/xcfa.glade:434 +msgid " Normalize " +msgstr " Normalize " -#: src/translate.c:62 -msgid "Deplier" +#: glade/xcfa.glade:494 +msgid "Unfold" msgstr "Unfold" -#: src/translate.c:63 -msgid "Replier" +#: glade/xcfa.glade:548 +msgid "Fold" msgstr "Fold" -#: src/translate.c:64 +#: glade/xcfa.glade:649 msgid " Vers 2CH: Sub / Ambiance " -msgstr " 2CH: Sub / Ambiance " +msgstr " Vers 2CH: Sub / Ambiance " -#: src/translate.c:65 src/translate.c:98 -msgid "Extraire" -msgstr "Rip" +#: glade/xcfa.glade:705 +msgid "Extraction" +msgstr "Extraction" -#: src/translate.c:66 +#: glade/xcfa.glade:756 msgid " DVD " msgstr " DVD " -#: src/translate.c:68 -msgid " Choix du peripherique / Lecture du CD " -msgstr " CD player " +#: glade/xcfa.glade:842 +msgid "Lecture" +msgstr "Lecture" + +#: glade/xcfa.glade:870 +msgid " Choosing the peripheral / CD playback " +msgstr " Choosing the peripheral / CD playback " -#: src/translate.c:71 -msgid "Titre:" +#: glade/xcfa.glade:1065 +msgid "Title:" msgstr "Title:" -#: src/translate.c:72 +#: glade/xcfa.glade:1077 msgid "Album:" msgstr "Album:" -#: src/translate.c:73 -msgid "Artiste:" +#: glade/xcfa.glade:1089 +msgid "Artist:" msgstr "Artist:" -#: src/translate.c:74 -msgid " Annee:" -msgstr "Year :" +#: glade/xcfa.glade:1101 +msgid "Comment:" +msgstr "Comment:" + +#: glade/xcfa.glade:1113 +msgid " Year:" +msgstr " Year:" -#: src/translate.c:75 +#: glade/xcfa.glade:1125 msgid " Genre:" -msgstr "Genre :" +msgstr " Genre:" -#: src/translate.c:76 -msgid " Piste:" -msgstr "Track:" +#: glade/xcfa.glade:1137 +msgid " Track:" +msgstr " Track:" -#: src/translate.c:77 +#: glade/xcfa.glade:1149 msgid " *.m3u et xspf: " -msgstr "m3u and xspf: " - -#: src/translate.c:78 -msgid "Commentaire:" -msgstr "Comment:" +msgstr " *.m3u et xspf: " -#: src/translate.c:79 -msgid " Modification des tags Freedb " -msgstr " Freedb tags modification " +#: glade/xcfa.glade:1287 +msgid "Editing tags Freedb" +msgstr "Editing tags Freedb" -#: src/translate.c:80 +#: glade/xcfa.glade:1302 msgid "" "%a [ %a=\"Artist\" ]\n" "\n" @@ -1576,14 +1495,15 @@ "\n" "%b [ %b=\"Album\" ]\n" "\n" -"TI% - Tetsumaki lower\n" +"%Tl - Tetsumaki lower\n" "\n" -"Converts the string to lowercase except for the first character\n" +"Transforme la chaine en minuscule sauf le premier caractere.\n" "\n" -"In the fields 'Title' since [Changing FreeDB tag]\n" -"the character or characters to be retained must be preceded bycharacter %" +"Dans le champs 'Titre' depuis [ Modification des tags FreeDB ],\n" +"le ou les caracteres devant etre conserves doivent etre precedes par le " +"caractere %" -#: src/translate.c:81 +#: glade/xcfa.glade:1312 msgid "" "%a - artiste %b - titre " "de l'album %c - numero de la piste\n" @@ -1594,839 +1514,837 @@ "%u - remplacement de caracteres: %u(AB=C) %u( =_) %Tl - Tetsumaki lower" msgstr "" -"%a - artist %b - album " -"title %c - track number\n" -"%d - track title %e - " -"year %g - genre\n" -"%f - create an m3u and xspf file %na - no accent\n" -"%u - replace special characters: %u(AB=C) %u( =_) %Tl - Tetsumaki lower" +"%a - artiste %b - titre " +"de l'album %c - numero de la piste\n" +"%d - titre de la chanson %e - " +"annee %g - genre\n" +"%f - creation d'un fichier *.m3u et *." +"xspf %na - no accent\n" +"%u - remplacement de caracteres: %u(AB=C) %u( =_) %Tl - Tetsumaki lower" -#: src/translate.c:82 -msgid " Arrangement des titres du CD " -msgstr " Arrangement of CD titles " +#: glade/xcfa.glade:1346 +msgid " Arrangement of CD titles" +msgstr " Arrangement of CD titles" -#: src/translate.c:83 -msgid "Creation d'un fichier unique au format: " -msgstr "Create a single file in the format: " +#: glade/xcfa.glade:1382 +msgid "Creation of a single file format: " +msgstr "Creation of a single file format: " -#: src/translate.c:84 -msgid " et dont le nom sera: " -msgstr " Named: " +#: glade/xcfa.glade:1430 +msgid " and whose name will be: " +msgstr " and whose name will be: " -#: src/translate.c:85 -msgid "Ecriture du fichier cue" -msgstr "Write cue file" +#: glade/xcfa.glade:1461 +msgid "Writing the cue file" +msgstr "Writing the cue file" -#: src/translate.c:86 -msgid " Au moins deux selections colonne Wav " -msgstr " Make at least two selections in the Wav column " +#: glade/xcfa.glade:1484 +msgid " At least two selections column Wav " +msgstr " At least two selections column Wav " -#: src/translate.c:87 +#: glade/xcfa.glade:1514 msgid "" -"Creation d'un fichier cue\n" -"unique depuis une lecture\n" -"du cd audio" +"\n" +"Creating a cue file from a single\n" +"reading audio cd\n" msgstr "" -"Create a single cue\n" -"file from an audio-CD" +"\n" +"Creating a cue file from a single\n" +"reading audio cd\n" -#: src/translate.c:88 -msgid "Creation fichier cue uniquement" -msgstr "Create cue file" +#: glade/xcfa.glade:1562 +msgid "File Creation cue only" +msgstr "File Creation cue only" -#: src/translate.c:89 +#: glade/xcfa.glade:1597 msgid " Creation Cue cd " -msgstr " CD cue file creation " +msgstr " Creation Cue cd " + +#: glade/xcfa.glade:1625 +msgid "  Creation of a single file" +msgstr "  Creation of a single file" -#: src/translate.c:90 -msgid " Creation d'un fichier unique " -msgstr " Creating a single file " +#: glade/xcfa.glade:1638 +msgid "Management of tags, titles and cue files" +msgstr "Management of tags, titles and cue files" -#: src/translate.c:91 -msgid "Gestion des tags, titres et fichiers cue" -msgstr "Tags, titles and cue files management" +#: glade/xcfa.glade:1688 +msgid " normalize " +msgstr " normalize " -#: src/translate.c:93 +#: glade/xcfa.glade:1749 msgid "definit le serveur a contacter pour les recherches titre" -msgstr "Sets the server to be contacted for title lookups" +msgstr "definit le serveur a contacter pour les recherches titre" -#: src/translate.c:94 +#: glade/xcfa.glade:1788 msgid "Parametres par defaut" -msgstr "Default parameters" +msgstr "Parametres par defaut" -#: src/translate.c:96 -msgid "Choix parmis les differentes bases de donnees pour le CD." -msgstr "Choice among different databases for the CD." - -#: src/translate.c:97 +#: glade/xcfa.glade:1887 msgid "DiscId" msgstr "DiscId" -#: src/translate.c:99 +#: glade/xcfa.glade:1946 +msgid "Extract" +msgstr "Extract" + +#: glade/xcfa.glade:2053 msgid " CD " msgstr " CD " -#: src/translate.c:100 src/translate.c:124 -msgid " Importer " +#: glade/xcfa.glade:2135 glade/xcfa.glade:3271 +msgid " Import " msgstr " Import " -#: src/translate.c:101 -msgid " Destination des conversions " -msgstr " Export converted files: " - -#: src/translate.c:102 -msgid " Nettoyer " -msgstr " Clear " +#: glade/xcfa.glade:2190 +msgid " Destination conversions " +msgstr " Destination conversions " + +#: glade/xcfa.glade:2266 +msgid " Clean up " +msgstr " Clean up " -#: src/translate.c:103 src/translate.c:107 +#: glade/xcfa.glade:2389 msgid "Appliquer les modifications" -msgstr "Apply the changes" +msgstr "Appliquer les modifications" -#: src/translate.c:104 -msgid " Normalise: " -msgstr " Normalise: " - -#: src/translate.c:105 -msgid " Choix niveau dBFS: " -msgstr " dBFS level: " +#: glade/xcfa.glade:2444 +msgid " Normalize: " +msgstr " Normalize: " -#: src/translate.c:106 src/translate.c:123 -msgid " Fichiers " -msgstr " Files " +#: glade/xcfa.glade:2477 +msgid " Level selection dBFS: " +msgstr " Level selection dBFS: " + +#: glade/xcfa.glade:2615 +msgid "Apply changes" +msgstr "Apply changes" -#: src/translate.c:108 +#: glade/xcfa.glade:2651 msgid " Wav " msgstr " Wav " -#: src/translate.c:109 src/translate.c:121 -msgid "Appliquer" +#: glade/xcfa.glade:2735 +msgid "Apply" msgstr "Apply" -#: src/translate.c:110 -msgid "Effacer" -msgstr "Clear" +#: glade/xcfa.glade:2789 +msgid "Delete" +msgstr "Delete" -#: src/translate.c:111 +#: glade/xcfa.glade:2826 msgid " Mp3-Ogg " msgstr " Mp3-Ogg " -#: src/translate.c:112 -msgid "Titre:" +#: glade/xcfa.glade:2875 +msgid "Title:" msgstr "Title:" -#: src/translate.c:113 +#: glade/xcfa.glade:2886 msgid "Album:" msgstr "Album:" -#: src/translate.c:114 -msgid "Artiste:" +#: glade/xcfa.glade:2897 +msgid "Artist:" msgstr "Artist:" -#: src/translate.c:115 -msgid "Commentaire:" +#: glade/xcfa.glade:2908 +msgid "Comment:" msgstr "Comment:" -#: src/translate.c:116 -msgid " Annee:" +#: glade/xcfa.glade:2919 +msgid " Year:" msgstr " Year:" -#: src/translate.c:117 +#: glade/xcfa.glade:2930 msgid " Genre:" msgstr " Genre:" -#: src/translate.c:118 -msgid " Piste:" +#: glade/xcfa.glade:2941 +msgid " Track:" msgstr " Track:" -#: src/translate.c:119 +#: glade/xcfa.glade:2952 msgid " Modif.:" -msgstr " Edit:" +msgstr " Modif.:" -#: src/translate.c:120 +#: glade/xcfa.glade:3078 msgid "0" msgstr "0" -#: src/translate.c:122 src/translate.c:309 +#: glade/xcfa.glade:3102 +msgid "Apply " +msgstr "Apply " + +#: glade/xcfa.glade:3160 glade/xcfa.glade:10210 msgid " Tags " msgstr " Tags " -#: src/translate.c:126 +#: glade/xcfa.glade:3190 +msgid " Files " +msgstr " Files " + +#: glade/xcfa.glade:3322 +msgid "   File Destination " +msgstr "   File Destination " + +#: glade/xcfa.glade:3494 msgid "Lecture de 5 secondes apres le marqueur de debut" -msgstr "Reading 5 seconds after the beginning marker" +msgstr "Lecture de 5 secondes apres le marqueur de debut" -#: src/translate.c:127 +#: glade/xcfa.glade:3546 msgid "Index de debut" -msgstr "Index start" +msgstr "Index de debut" -#: src/translate.c:128 src/translate.c:135 src/translate.c:138 +#: glade/xcfa.glade:3547 glade/xcfa.glade:3813 glade/xcfa.glade:3874 msgid "00h00m00s" msgstr "00h00m00s" -#: src/translate.c:129 +#: glade/xcfa.glade:3600 msgid "lecture" -msgstr "Play" +msgstr "lecture" -#: src/translate.c:130 +#: glade/xcfa.glade:3653 msgid "Pause" msgstr "Pause" -#: src/translate.c:131 +#: glade/xcfa.glade:3712 msgid "Index de lecture" -msgstr "Index reading" +msgstr "Index de lecture" -#: src/translate.c:132 src/translate.c:171 +#: glade/xcfa.glade:3713 glade/xcfa.glade:4767 msgid "label" msgstr "label" -#: src/translate.c:133 +#: glade/xcfa.glade:3760 msgid "Lecture de 5 secondes avant le marqueur de fin" -msgstr "Reading of 5 seconds before the end marker" +msgstr "Lecture de 5 secondes avant le marqueur de fin" -#: src/translate.c:134 +#: glade/xcfa.glade:3812 msgid "Index de fin" -msgstr "End index" +msgstr "Index de fin" -#: src/translate.c:136 +#: glade/xcfa.glade:3860 msgid "Plage" msgstr "Plage" -#: src/translate.c:137 +#: glade/xcfa.glade:3873 msgid "Duree de la plage active" -msgstr "Length of the active beach" +msgstr "Duree de la plage active" -#: src/translate.c:139 +#: glade/xcfa.glade:3955 msgid "Suprimer tous les marqueurs pour les remplacer par un marqueur unique" -msgstr "Wipe all markers and replace them with a single marker" +msgstr "Suprimer tous les marqueurs pour les remplacer par un marqueur unique" -#: src/translate.c:140 +#: glade/xcfa.glade:4044 msgid "Le fichier CUE sera enregistre vers 'Destination des fichiers'." -msgstr "CUE file to be recorded 'Destination file'." +msgstr "Le fichier CUE sera enregistre vers 'Destination des fichiers'." -#: src/translate.c:141 -msgid "Production fichier Cue" -msgstr "Generate CUE file" +#: glade/xcfa.glade:4073 +msgid "Production Cue file" +msgstr "Production Cue file" -#: src/translate.c:142 +#: glade/xcfa.glade:4098 msgid "Le resultat du Split sera dirige vers 'Destination des fichiers'." -msgstr "The result of the Split will be heading for 'Destination file'." +msgstr "Le resultat du Split sera dirige vers 'Destination des fichiers'." -#: src/translate.c:143 +#: glade/xcfa.glade:4127 msgid "Split" msgstr "Split" -#: src/translate.c:144 +#: glade/xcfa.glade:4188 msgid " Split " msgstr " Split " -#: src/translate.c:145 +#: glade/xcfa.glade:4253 msgid "Importation du titre du CD." -msgstr "Import the CD title." +msgstr "Importation du titre du CD." -#: src/translate.c:146 -msgid "Titre CD" +#: glade/xcfa.glade:4276 +msgid "Title CD" msgstr "Title CD" -#: src/translate.c:147 +#: glade/xcfa.glade:4296 msgid "Choix d'une nouvelle police." -msgstr "Choosing a new font." +msgstr "Choix d'une nouvelle police." -#: src/translate.c:148 +#: glade/xcfa.glade:4318 msgid "Texte gras." -msgstr "Bold text." +msgstr "Texte gras." -#: src/translate.c:149 +#: glade/xcfa.glade:4340 msgid "Texte italique." -msgstr "Italic text." +msgstr "Texte italique." -#: src/translate.c:150 -msgid "" -"Apres une lecture de CD et un ajout d'etiquette, ce menu permet la mise en " -"forme des titres, auteurs ..." -msgstr "" -"After reading a CD and add a label, this menu allows the formatting of " -"titles, authors ..." - -#: src/translate.c:151 +#: glade/xcfa.glade:4375 msgid "Ajouter du texte editable." -msgstr "Add text editable." +msgstr "Ajouter du texte editable." -#: src/translate.c:152 -msgid "Texte" +#: glade/xcfa.glade:4430 +msgid "Text" msgstr "Text" -#: src/translate.c:153 +#: glade/xcfa.glade:4462 msgid "Saisissez ici un critere de recherche d'images." -msgstr "Enter here a search of images." +msgstr "Saisissez ici un critere de recherche d'images." -#: src/translate.c:154 +#: glade/xcfa.glade:4484 msgid "Importation des images depuis le Web." -msgstr "Importing images from the Web." +msgstr "Importation des images depuis le Web." -#: src/translate.c:155 -msgid "Import images web" -msgstr "Import web images" +#: glade/xcfa.glade:4509 +msgid "Import web images " +msgstr "Import web images " -#: src/translate.c:156 +#: glade/xcfa.glade:4578 msgid "Supprimer l'image en selection" -msgstr "Delete the image selection" +msgstr "Supprimer l'image en selection" -#: src/translate.c:157 +#: glade/xcfa.glade:4600 msgid "AJouter de nouvelles images." -msgstr "Add new images." +msgstr "AJouter de nouvelles images." -#: src/translate.c:158 +#: glade/xcfa.glade:4606 msgid "Ouvre un fichier" -msgstr "Open a file" +msgstr "Ouvre un fichier" -#: src/translate.c:159 +#: glade/xcfa.glade:4623 msgid "Enregistrer la page au format png." -msgstr "Save Page png." +msgstr "Enregistrer la page au format png." -#: src/translate.c:160 +#: glade/xcfa.glade:4629 msgid "Sauvegarde le fichier" -msgstr "Saving the file" +msgstr "Sauvegarde le fichier" -#: src/translate.c:161 +#: glade/xcfa.glade:4646 msgid "Diminution de l'echelle." -msgstr "Reduction in the scale." +msgstr "Diminution de l'echelle." -#: src/translate.c:162 +#: glade/xcfa.glade:4652 msgid "Reduit l'agrandissement" -msgstr "Reduced expansion" +msgstr "Reduit l'agrandissement" -#: src/translate.c:163 +#: glade/xcfa.glade:4669 msgid "Echelle a 100%." -msgstr "Scale 100%." +msgstr "Echelle a 100%." -#: src/translate.c:164 +#: glade/xcfa.glade:4675 msgid "Remet l'echelle a 100%" -msgstr "Gives the scale at 100%" +msgstr "Remet l'echelle a 100%" -#: src/translate.c:165 +#: glade/xcfa.glade:4692 msgid "Augmentation de l'echelle." -msgstr "Increase in scale." +msgstr "Augmentation de l'echelle." -#: src/translate.c:166 +#: glade/xcfa.glade:4698 msgid "Augmente l'agrandissement" -msgstr "Increasing expansion" +msgstr "Augmente l'agrandissement" -#: src/translate.c:167 +#: glade/xcfa.glade:4715 msgid "Echelle compatible avec la taille de la fenetre." -msgstr "Scale compatible with the size of the window." +msgstr "Echelle compatible avec la taille de la fenetre." -#: src/translate.c:168 +#: glade/xcfa.glade:4721 msgid "Adapte l'echelle a la taille de la fenetre" -msgstr "Adjusts the scale to the size of the window" +msgstr "Adapte l'echelle a la taille de la fenetre" -#: src/translate.c:169 +#: glade/xcfa.glade:4738 msgid "Emplacement de sauvegarde des fichiers." -msgstr "Backup location files." +msgstr "Emplacement de sauvegarde des fichiers." -#: src/translate.c:170 +#: glade/xcfa.glade:4752 msgid "Nom (sans extention) du fichier a sauvegarder." -msgstr "Name (without extension) file is saved." +msgstr "Nom (sans extention) du fichier a sauvegarder." -#: src/translate.c:172 +#: glade/xcfa.glade:4815 msgid " Pochette " -msgstr " CD Cover " +msgstr " Pochette " -#: src/translate.c:173 +#: glade/xcfa.glade:4861 msgid "Nice" msgstr "Nice" -#: src/translate.c:174 -msgid " Priorite systeme " -msgstr " System priority " +#: glade/xcfa.glade:4896 +msgid " Priority system " +msgstr " Priority system " -#: src/translate.c:175 +#: glade/xcfa.glade:4935 msgid "" -"Indiquez ici le dossier sur votre systeme qui servira de lieu\n" -"de stockage provisoire pendant les differentes conversions.\n" -msgstr "Enter the location of the temporary folder to be used by XCFA\n" +"\n" +"Enter here the folder on your system that will serve as\n" +"temporary storage for the different conversions.\n" +msgstr "" +"\n" +"Enter here the folder on your system that will serve as\n" +"temporary storage for the different conversions.\n" -#: src/translate.c:176 -msgid " Dossier provisoire des conversions " -msgstr " Conversions temporary folder " +#: glade/xcfa.glade:4971 +msgid " Provisional file conversions " +msgstr " Provisional file conversions " -#: src/translate.c:177 +#: glade/xcfa.glade:5017 msgid "button" msgstr "button" -#: src/translate.c:178 -msgid " Jouer une musique en fin de tache " -msgstr " Play music at the end of task " +#: glade/xcfa.glade:5038 +msgid " Playing a job end music " +msgstr " Playing a job end music " -#: src/translate.c:179 +#: glade/xcfa.glade:5058 msgid " General " msgstr " General " -#: src/translate.c:180 +#: glade/xcfa.glade:5100 msgid "cdparanoia" msgstr "cdparanoia" -#: src/translate.c:181 +#: glade/xcfa.glade:5120 msgid "cdparanoia mode expert" -msgstr "cdparanoia expert mode" +msgstr "cdparanoia mode expert" -#: src/translate.c:182 +#: glade/xcfa.glade:5140 msgid "cdparanoia mode expert multi passes" -msgstr "cdparanoia expert mode multi pass" +msgstr "cdparanoia mode expert multi passes" -#: src/translate.c:183 +#: glade/xcfa.glade:5168 msgid "cdda2wav / icedax" msgstr "cdda2wav / icedax" -#: src/translate.c:184 +#: glade/xcfa.glade:5194 msgid " Extraction cd-audio avec: " -msgstr " Rip audio-CD with: " +msgstr " Extraction cd-audio avec: " -#: src/translate.c:185 +#: glade/xcfa.glade:5268 msgid "HomePage" -msgstr "Home Page" +msgstr "HomePage" -#: src/translate.c:186 +#: glade/xcfa.glade:5323 msgid "ManPage " -msgstr "Man Page " +msgstr "ManPage " -#: src/translate.c:187 +#: glade/xcfa.glade:5352 msgid " Web cdparanoia " msgstr " Web cdparanoia " -#: src/translate.c:188 +#: glade/xcfa.glade:5414 msgid "" "Le fichier LogExpertMode.txt sera cree dans le dossier des " "extractions" msgstr "" -"LogExpertMode.txt file will be created in the folder extractions" +"Le fichier LogExpertMode.txt sera cree dans le dossier des " +"extractions" -#: src/translate.c:189 -msgid "" -"Generation d'un rapport pour: cdparanoia mode expert multi passes" -msgstr "Generation of a report for: cdparanoia expert mode multi pass" +#: glade/xcfa.glade:5431 +msgid "Generation of a report for: cdparanoia mode expert multi passes" +msgstr "Generation of a report for: cdparanoia mode expert multi passes" -#: src/translate.c:190 +#: glade/xcfa.glade:5467 msgid "" -"%a - artiste %b - titre " +"%a - artist %b - titre " "de l'album %c - numero de la piste\n" "%d - titre de la chanson %e - " -"annee %g - genre\n" +"year %g - genre\n" "%na - no accent %Tl " "- Tetsumaki lower\n" -"%u - remplacement de caracteres: %u(AB=C) %u( =_)" +"%u - replacement characters: %u(AB=C) %u( =_)" msgstr "" -"%a - artist %b - album " -"title %c - track number\n" -"%d - track title %e - " +"%a - artist %b - titre " +"de l'album %c - numero de la piste\n" +"%d - titre de la chanson %e - " "year %g - genre\n" "%na - no accent %Tl " "- Tetsumaki lower\n" -"%u - replacing characters: %u(AB=C) %u( =_)" +"%u - replacement characters: %u(AB=C) %u( =_)" -#: src/translate.c:191 +#: glade/xcfa.glade:5536 msgid " Dossier de stockage " -msgstr " File storage " +msgstr " Dossier de stockage " -#: src/translate.c:192 +#: glade/xcfa.glade:5567 msgid " CD " msgstr " CD " -#: src/translate.c:193 +#: glade/xcfa.glade:5615 msgid "ABR / CBR / VBR / VBR-NEW" msgstr "ABR / CBR / VBR / VBR-NEW" -#: src/translate.c:194 +#: glade/xcfa.glade:5660 glade/xcfa.glade:6295 msgid "Debit" -msgstr "Bitrate" +msgstr "Debit" -#: src/translate.c:195 +#: glade/xcfa.glade:5705 glade/xcfa.glade:6317 msgid "Mode" msgstr "Mode" -#: src/translate.c:196 +#: glade/xcfa.glade:5747 msgid " Lame (fichier mp3): " -msgstr " Lame (mp3 file): " +msgstr " Lame (fichier mp3): " -#: src/translate.c:197 src/translate.c:213 src/translate.c:225 -#: src/translate.c:238 src/translate.c:255 src/translate.c:266 -#: src/translate.c:280 src/translate.c:294 +#: glade/xcfa.glade:5827 glade/xcfa.glade:6466 glade/xcfa.glade:6941 +#: glade/xcfa.glade:7469 glade/xcfa.glade:8200 glade/xcfa.glade:8659 +#: glade/xcfa.glade:9192 glade/xcfa.glade:9753 msgid "Par defaut" -msgstr "Default" +msgstr "Par defaut" -#: src/translate.c:198 +#: glade/xcfa.glade:5848 msgid " Options LAME " -msgstr " LAME Options " +msgstr " Options LAME " -#: src/translate.c:199 src/translate.c:227 src/translate.c:268 +#: glade/xcfa.glade:5909 glade/xcfa.glade:7023 glade/xcfa.glade:8741 msgid "Site officiel" -msgstr "Official website" +msgstr "Site officiel" -#: src/translate.c:200 +#: glade/xcfa.glade:5964 msgid "Wiki mp3 " -msgstr "mp3 wiki " +msgstr "Wiki mp3 " -#: src/translate.c:201 +#: glade/xcfa.glade:6020 msgid "Wiki " -msgstr "Lame wiki " +msgstr "Wiki " -#: src/translate.c:202 +#: glade/xcfa.glade:6076 msgid "ManPage " -msgstr "Man Page " +msgstr "ManPage " -#: src/translate.c:203 +#: glade/xcfa.glade:6105 msgid " Web Lame " -msgstr " Lame " +msgstr " Web Lame " -#: src/translate.c:204 src/translate.c:218 src/translate.c:231 -#: src/translate.c:242 src/translate.c:260 src/translate.c:271 -#: src/translate.c:286 +#: glade/xcfa.glade:6181 glade/xcfa.glade:6709 glade/xcfa.glade:7238 +#: glade/xcfa.glade:7644 glade/xcfa.glade:8442 glade/xcfa.glade:8901 +#: glade/xcfa.glade:9491 msgid "[" msgstr "[" -#: src/translate.c:205 src/translate.c:219 src/translate.c:232 -#: src/translate.c:243 src/translate.c:261 src/translate.c:272 -#: src/translate.c:287 +#: glade/xcfa.glade:6194 glade/xcfa.glade:6722 glade/xcfa.glade:7251 +#: glade/xcfa.glade:7657 glade/xcfa.glade:8455 glade/xcfa.glade:8914 +#: glade/xcfa.glade:9504 msgid "string option interne" -msgstr "internal string option" +msgstr "string option interne" -#: src/translate.c:206 src/translate.c:220 src/translate.c:233 -#: src/translate.c:244 src/translate.c:262 src/translate.c:273 -#: src/translate.c:288 +#: glade/xcfa.glade:6209 glade/xcfa.glade:6737 glade/xcfa.glade:7266 +#: glade/xcfa.glade:7672 glade/xcfa.glade:8470 glade/xcfa.glade:8929 +#: glade/xcfa.glade:9519 msgid "]" msgstr "]" -#: src/translate.c:207 -msgid "" -" Options experts, definies par l'utilisateur - lame (wav -> mp3) " -msgstr " User-defined expert options - lame (wav -> mp3) " +#: glade/xcfa.glade:6234 +msgid " Experts options defined by the user- lame (wav -> mp3) " +msgstr " Experts options defined by the user- lame (wav -> mp3) " -#: src/translate.c:208 +#: glade/xcfa.glade:6254 msgid " Mp3 " msgstr " Mp3 " -#: src/translate.c:209 -msgid " Mode" -msgstr " Mode" - -#: src/translate.c:210 -msgid " Mode flux (streaming)" -msgstr " Streaming" +#: glade/xcfa.glade:6306 +msgid "Mode flux (streaming)" +msgstr "Mode flux (streaming)" -#: src/translate.c:211 -msgid " Debit" -msgstr "Bitrate" - -#: src/translate.c:212 +#: glade/xcfa.glade:6386 msgid " Oggenc (fichier ogg): " -msgstr " Oggenc (ogg file): " +msgstr " Oggenc (fichier ogg): " -#: src/translate.c:214 +#: glade/xcfa.glade:6487 msgid " Options OGGENC " -msgstr " OGGENC Options " +msgstr " Options OGGENC " -#: src/translate.c:215 +#: glade/xcfa.glade:6548 msgid "Wiki " msgstr "Wiki " -#: src/translate.c:216 src/translate.c:258 src/translate.c:284 -#: src/translate.c:298 +#: glade/xcfa.glade:6604 glade/xcfa.glade:8337 glade/xcfa.glade:9386 +#: glade/xcfa.glade:9947 msgid "ManPage" -msgstr "Man Page" +msgstr "ManPage" -#: src/translate.c:217 +#: glade/xcfa.glade:6633 msgid " Web Oggenc " -msgstr " Oggenc " +msgstr " Web Oggenc " -#: src/translate.c:221 -msgid "" -" Options experts, definies par l'utilisateur - oggenc (wav -> ogg) " -msgstr " User-defined expert options - oggenc (wav -> ogg) " +#: glade/xcfa.glade:6762 +msgid " Experts options defined by the user - oggenc (wav -> ogg) " +msgstr " Experts options defined by the user - oggenc (wav -> ogg) " -#: src/translate.c:222 +#: glade/xcfa.glade:6782 msgid " Oggenc " msgstr " Oggenc " -#: src/translate.c:223 +#: glade/xcfa.glade:6824 msgid "Taux de compression" -msgstr "Compression level" +msgstr "Taux de compression" -#: src/translate.c:224 +#: glade/xcfa.glade:6861 msgid " Flac (fichier flac): " -msgstr " Flac (flac file): " +msgstr " Flac (fichier flac): " -#: src/translate.c:226 +#: glade/xcfa.glade:6962 msgid " Options FLAC " -msgstr " FLAC Options " +msgstr " Options FLAC " -#: src/translate.c:228 src/translate.c:269 +#: glade/xcfa.glade:7078 glade/xcfa.glade:8796 msgid "Framasoft " msgstr "Framasoft " -#: src/translate.c:229 +#: glade/xcfa.glade:7133 msgid "ManPage " -msgstr "Man Page " +msgstr "ManPage " -#: src/translate.c:230 +#: glade/xcfa.glade:7162 msgid " Web Flac " -msgstr " Flac " +msgstr " Web Flac " -#: src/translate.c:234 -msgid "" -" Options experts, definies par l'utilisateur - flac (wav -> flac) " -msgstr " User-defined expert options - flac (wav -> flac) " +#: glade/xcfa.glade:7291 +msgid " Experts options defined by the user- flac (wav -> flac) " +msgstr " Experts options defined by the user- flac (wav -> flac) " -#: src/translate.c:235 +#: glade/xcfa.glade:7311 msgid " Flac " msgstr " Flac " -#: src/translate.c:236 +#: glade/xcfa.glade:7353 msgid " Qualite" -msgstr " Quality" +msgstr " Qualite" -#: src/translate.c:237 +#: glade/xcfa.glade:7389 msgid " Mac (fichier ape): " -msgstr " Mac (ape file): " +msgstr " Mac (fichier ape): " -#: src/translate.c:239 +#: glade/xcfa.glade:7490 msgid " Options MAC " -msgstr " MAC Options " +msgstr " Options MAC " -#: src/translate.c:240 +#: glade/xcfa.glade:7546 msgid "Wiki" msgstr "Wiki" -#: src/translate.c:241 +#: glade/xcfa.glade:7568 msgid " Web Mac " -msgstr " Mac " +msgstr " Web Mac " -#: src/translate.c:245 -msgid " Options experts, definies par l'utilisateur - mac (wav -> ape) " -msgstr " User-defined expert options - mac (wav -> ape) " +#: glade/xcfa.glade:7697 +msgid " Experts options defined by the user - mac (wav -> ape) " +msgstr " Experts options defined by the user - mac (wav -> ape) " -#: src/translate.c:246 +#: glade/xcfa.glade:7717 msgid " Mac " msgstr " Mac " -#: src/translate.c:247 +#: glade/xcfa.glade:7765 msgid "Compression" msgstr "Compression" -#: src/translate.c:248 +#: glade/xcfa.glade:7817 msgid "Son" -msgstr "Channel mode" +msgstr "Son" -#: src/translate.c:249 +#: glade/xcfa.glade:7869 msgid "Mode hybride" -msgstr "Hybrid mode" +msgstr "Mode hybride" -#: src/translate.c:250 +#: glade/xcfa.glade:7921 msgid "Fichier de correction" -msgstr "Correction file" +msgstr "Fichier de correction" -#: src/translate.c:251 +#: glade/xcfa.glade:7973 msgid "Compression maximum" -msgstr "Maximum compression" +msgstr "Compression maximum" -#: src/translate.c:252 +#: glade/xcfa.glade:8025 msgid "Signature MD5" -msgstr "MD5 signature" +msgstr "Signature MD5" -#: src/translate.c:253 +#: glade/xcfa.glade:8077 msgid "Extra encode processing" msgstr "Extra encode processing" -#: src/translate.c:254 +#: glade/xcfa.glade:8120 msgid " WavPack (fichier wv): " -msgstr " WavPack (wv file): " +msgstr " WavPack (fichier wv): " -#: src/translate.c:256 +#: glade/xcfa.glade:8221 msgid " Options WAVPACK " -msgstr " WAVPACK Options " +msgstr " Options WAVPACK " -#: src/translate.c:257 +#: glade/xcfa.glade:8282 msgid "Wiki " msgstr "Wiki " -#: src/translate.c:259 +#: glade/xcfa.glade:8366 msgid " Web Wavpack " -msgstr " Wavpack " +msgstr " Web Wavpack " -#: src/translate.c:263 -msgid "" -" Options experts, definies par l'utilisateur - wavpack (wav -> wv) " -msgstr " User-defined expert options - wavpack (wav -> wv) " +#: glade/xcfa.glade:8495 +msgid " Experts options defined by the user - wavpack (wav -> wv) " +msgstr " Experts options defined by the user - wavpack (wav -> wv) " -#: src/translate.c:264 +#: glade/xcfa.glade:8515 msgid " Wavpack " msgstr " Wavpack " -#: src/translate.c:265 +#: glade/xcfa.glade:8579 msgid " MusePack (fichier mpc): " -msgstr " MusePack (mpc file): " +msgstr " MusePack (fichier mpc): " -#: src/translate.c:267 +#: glade/xcfa.glade:8680 msgid " Options MUSEPACK " -msgstr " MUSEPACK Options " +msgstr " Options MUSEPACK " -#: src/translate.c:270 +#: glade/xcfa.glade:8825 msgid " Web Musepack " -msgstr " Musepack " +msgstr " Web Musepack " -#: src/translate.c:274 -msgid "" -" Options experts, definies par l'utilisateur - musepack (wav -> mpc) " -msgstr " User-defined expert options - musepack (wav -> mpc) " +#: glade/xcfa.glade:8954 +msgid " Experts options defined by the user- musepack (wav -> mpc) " +msgstr " Experts options defined by the user- musepack (wav -> mpc) " -#: src/translate.c:275 +#: glade/xcfa.glade:8974 msgid " Musepack " msgstr " Musepack " -#: src/translate.c:276 -msgid " Qualite VBR / Debit ABR" -msgstr "VBR Quality / ABR rate" - -#: src/translate.c:277 -msgid " VBR / ABR" -msgstr " VBR / ABR" - -#: src/translate.c:278 -msgid " Conteneur" -msgstr " Container" +#: glade/xcfa.glade:9016 +msgid "Conteneur" +msgstr "Conteneur" + +#: glade/xcfa.glade:9027 +msgid "VBR / ABR" +msgstr "VBR / ABR" + +#: glade/xcfa.glade:9038 +msgid "Qualite VBR / Debit ABR" +msgstr "Qualite VBR / Debit ABR" -#: src/translate.c:279 +#: glade/xcfa.glade:9112 msgid " Faac (fichier .m4a): " -msgstr " Faac (file .m4a): " +msgstr " Faac (fichier .m4a): " -#: src/translate.c:281 +#: glade/xcfa.glade:9213 msgid " Options FAAC " -msgstr " FAAC Options " +msgstr " Options FAAC " -#: src/translate.c:282 src/translate.c:296 +#: glade/xcfa.glade:9274 glade/xcfa.glade:9835 msgid "Site officiel " -msgstr "Official website " +msgstr "Site officiel " -#: src/translate.c:283 src/translate.c:297 +#: glade/xcfa.glade:9330 glade/xcfa.glade:9891 msgid "Web Info " -msgstr "Info " +msgstr "Web Info " -#: src/translate.c:285 +#: glade/xcfa.glade:9415 msgid " Web Faac " -msgstr " Faac " +msgstr " Web Faac " -#: src/translate.c:289 -msgid "" -" Options experts, definies par l'utilisateur - faac (wav -> m4a) " -msgstr " User-defined expert options - faac (wav -> m4a) " +#: glade/xcfa.glade:9544 +msgid " Experts options defined by the user - faac (wav -> m4a) " +msgstr " Experts options defined by the user - faac (wav -> m4a) " -#: src/translate.c:290 +#: glade/xcfa.glade:9564 msgid " Faac " msgstr " Faac " -#: src/translate.c:291 -msgid " Stereo: Qualite en kbit/s" -msgstr " Stereo: Quality in kbit/s" - -#: src/translate.c:292 -msgid " Mono: Qualite en kbit/s" -msgstr " Mono: Quality en kbit/s" +#: glade/xcfa.glade:9606 +msgid "Mono: Qualite en kbit/s" +msgstr "Mono: Qualite en kbit/s" + +#: glade/xcfa.glade:9617 +msgid "Stereo: Qualite en kbit/s" +msgstr "Stereo: Qualite en kbit/s" -#: src/translate.c:293 +#: glade/xcfa.glade:9673 msgid " AacplusEnc (fichier .aac): " -msgstr " AacplusEnc (file .aac): " +msgstr " AacplusEnc (fichier .aac): " -#: src/translate.c:295 +#: glade/xcfa.glade:9774 msgid " Options AacPlusEnc " -msgstr " AacPlusEnc Options " +msgstr " Options AacPlusEnc " -#: src/translate.c:299 +#: glade/xcfa.glade:9976 msgid " Web AacPlusEnc " -msgstr " AacPlusEnc " +msgstr " Web AacPlusEnc " -#: src/translate.c:300 +#: glade/xcfa.glade:10021 msgid " AacplusEnc " msgstr " AacplusEnc " -#: src/translate.c:301 +#: glade/xcfa.glade:10051 msgid "Artiste" -msgstr "Artist" +msgstr "Artiste" -#: src/translate.c:302 src/translate.c:330 +#: glade/xcfa.glade:10070 glade/xcfa_win_treeview.glade:95 msgid "Titre" -msgstr "Title" +msgstr "Titre" -#: src/translate.c:303 +#: glade/xcfa.glade:10089 msgid "Album" msgstr "Album" -#: src/translate.c:304 +#: glade/xcfa.glade:10108 msgid "Numero" -msgstr "Number" +msgstr "Numero" -#: src/translate.c:305 +#: glade/xcfa.glade:10127 msgid "Genre" msgstr "Genre" -#: src/translate.c:306 +#: glade/xcfa.glade:10146 msgid "Annee" -msgstr "Year" +msgstr "Annee" -#: src/translate.c:307 +#: glade/xcfa.glade:10165 msgid "Commentaire" -msgstr "Comment" +msgstr "Commentaire" -#: src/translate.c:308 +#: glade/xcfa.glade:10190 msgid " Exportation de " -msgstr " Export " +msgstr " Exportation de " -#: src/translate.c:310 +#: glade/xcfa.glade:10226 msgid " Preferences " msgstr " Preferences " -#: src/translate.c:311 +#: glade/xcfa.glade:10289 msgid "SCAN" msgstr "SCAN" -#: src/translate.c:312 +#: glade/xcfa.glade:10303 msgid " Installation " msgstr " Installation " -#: src/translate.c:313 -msgid " Votre systeme utilise ... " -msgstr " Your system uses ... " +#: glade/xcfa.glade:10338 +msgid " Your system use ... " +msgstr " Your system use ... " -#: src/translate.c:314 +#: glade/xcfa.glade:10375 msgid "" "\n" -"Pour installer les programmes externes requis,\n" -"veuillez utiliser l'installateur de votre distribution Gnu/Linux.\n" +"To install the required external programs\n" +"Please use the installer to your distribution Gnu / Linux.\n" msgstr "" "\n" -"To install the required external software,\n" -"please use the package manager of your Gnu/Linux distribution.\n" +"To install the required external programs\n" +"Please use the installer to your distribution Gnu / Linux.\n" -#: src/translate.c:315 +#: glade/xcfa.glade:10393 msgid "" "Le programme XCFA_INSTALL_ALL ecrit en Perl vous sera utile en ligne de " "commande pour une installation des programmes complementaire." msgstr "" -"The program XCFA_INSTALL_ALL written in Perl will be useful on the command " -"line for installation of supplementary programs" +"Le programme XCFA_INSTALL_ALL ecrit en Perl vous sera utile en ligne de " +"commande pour une installation des programmes complementaire." -#: src/translate.c:316 +#: glade/xcfa.glade:10419 msgid " Informations " msgstr " Informations " -#: src/translate.c:317 -msgid " Application externes " -msgstr " External programs " +#: glade/xcfa.glade:10443 +msgid " External application " +msgstr " External application " -#: src/translate.c:318 src/translate.c:321 +#: glade/xcfa.glade:10514 glade/xcfa.glade:10618 msgid "parametres:" -msgstr "parameters:" +msgstr "parametres:" -#: src/translate.c:319 +#: glade/xcfa.glade:10527 msgid "" "\n" " konqueror : newTab\n" @@ -2436,229 +2354,105 @@ " konqueror : newTab\n" " iceweasel : -new-window -new-tab \n" -#: src/translate.c:320 +#: glade/xcfa.glade:10548 msgid "Navigateur" -msgstr "browsers" +msgstr "Navigateur" -#: src/translate.c:322 +#: glade/xcfa.glade:10648 msgid "Lecteurs audio" -msgstr "Audio player" +msgstr "Lecteurs audio" -#: src/translate.c:323 -msgid " Navigateurs / Lecteurs audio " -msgstr " Browsers / Audio player" +#: glade/xcfa.glade:10669 +msgid "  Browsers / Audio Players " +msgstr "  Browsers / Audio Players " -#: src/translate.c:324 +#: glade/xcfa.glade:10692 msgid " Applications externes " -msgstr " External programs " - -#: src/translate.c:325 -msgid "Scan en cours ..." -msgstr "Scan in progress ..." - -#: src/translate.c:326 -msgid "Scan du support en cours ..." -msgstr "Media scan in progress..." - -#: src/translate.c:327 -msgid "Detail extraction mode expert" -msgstr "Rip details - expert mode" - -#: src/translate.c:328 -msgid "Modification des champs" -msgstr "Modify fields" - -#: src/translate.c:329 -msgid "" -"\n" -"Modification des champs\n" -msgstr "" -"\n" -"Modify fields\n" - -#: src/translate.c:337 src/translate.c:356 src/translate.c:377 -#: src/translate.c:389 src/translate.c:400 src/translate.c:408 -msgid " Visibilite " -msgstr " Visibility " - -#: src/translate.c:338 src/translate.c:357 src/translate.c:378 -#: src/translate.c:390 src/translate.c:401 src/translate.c:409 -msgid "Nom a gauche" -msgstr "Name to left" - -#: src/translate.c:339 src/translate.c:358 src/translate.c:379 -#: src/translate.c:391 src/translate.c:402 src/translate.c:410 -msgid "Nom au centre" -msgstr "Name centred" - -#: src/translate.c:340 src/translate.c:359 src/translate.c:380 -#: src/translate.c:392 src/translate.c:403 src/translate.c:411 -msgid "Nom a droite" -msgstr "Name to right" - -#: src/translate.c:341 -msgid "DVD" -msgstr "DVD" - -#: src/translate.c:346 src/translate.c:367 -msgid "Wavpack" -msgstr "Wavpack" - -#: src/translate.c:350 src/translate.c:371 -msgid "Musepack" -msgstr "Musepack" - -#: src/translate.c:360 -msgid "CD" -msgstr "CD" - -#: src/translate.c:375 -msgid "Replaygain" -msgstr "Replaygain" - -#: src/translate.c:381 -msgid "CONVERSIONS" -msgstr "CONVERSIONS" - -#: src/translate.c:382 -msgid "Hertz" -msgstr "Hertz" - -#: src/translate.c:383 -msgid "New Hertz" -msgstr "New Hertz" - -#: src/translate.c:384 -msgid "Voie" -msgstr "Voice" - -#: src/translate.c:385 -msgid "New Voie" -msgstr "New Voice" - -#: src/translate.c:386 -msgid "Bits" -msgstr "Bits" - -#: src/translate.c:387 -msgid "New Bits" -msgstr "New Bits" - -#: src/translate.c:393 -msgid "WAV" -msgstr "WAV" - -#: src/translate.c:396 -msgid "New Bitrate" -msgstr "New Bitrat" - -#: src/translate.c:397 -msgid "Size" -msgstr "Size" - -#: src/translate.c:404 -msgid "MP3-OGG" -msgstr "MP3-OGG" - -#: src/translate.c:412 -msgid "TAGS" -msgstr "TAGS" +msgstr " Applications externes " -#: src/translate.c:413 -msgid "Selection globale" -msgstr "Select all" - -#: src/translate.c:414 -msgid "Deselection globale" -msgstr "Clear all" - -#: src/translate.c:415 -msgid "Retour" -msgstr "Return" - -#: src/translate.c:416 +#: glade/xcfa_win_about.glade:7 msgid "About X Convert File Audio" msgstr "About X Convert File Audio" -#: src/translate.c:417 +#: glade/xcfa_win_about.glade:103 msgid "Author" msgstr "Author" -#: src/translate.c:418 +#: glade/xcfa_win_about.glade:139 msgid "Licence" -msgstr "License" +msgstr "Licence" -#: src/translate.c:419 +#: glade/xcfa_win_about.glade:163 msgid " Informations " msgstr " Informations " -#: src/translate.c:420 +#: glade/xcfa_win_about.glade:198 msgid " Machine " -msgstr " Computer " +msgstr " Machine " -#: src/translate.c:421 +#: glade/xcfa_win_about.glade:333 msgid "Ingenieurs du son\n" -msgstr "Sound engineers\n" +msgstr "Ingenieurs du son\n" -#: src/translate.c:422 +#: glade/xcfa_win_about.glade:350 msgid "" "\n" "Graphisme\n" msgstr "" "\n" -"Graphics\n" +"Graphisme\n" -#: src/translate.c:423 +#: glade/xcfa_win_about.glade:370 msgid "" "Traduction Anglaise\n" "\n" "\n" msgstr "" -"English translation\n" +"Traduction Anglaise\n" "\n" "\n" -#: src/translate.c:424 +#: glade/xcfa_win_about.glade:391 msgid "" "\n" "Traduction Allemande" msgstr "" "\n" -"German translation" +"Traduction Allemande" -#: src/translate.c:425 +#: glade/xcfa_win_about.glade:628 msgid "" "\n" "Codeur Xcfa" msgstr "" "\n" -"XCFA programmer" +"Codeur Xcfa" -#: src/translate.c:426 +#: glade/xcfa_win_about.glade:665 msgid "" "\n" "ElementSpeak pour Xcfa " msgstr "" "\n" -"ElementSpeak for XCFA··" +"ElementSpeak pour Xcfa " -#: src/translate.c:427 +#: glade/xcfa_win_about.glade:702 msgid "" "\n" "Codeur pages Web" msgstr "" "\n" -"Webmasters" +"Codeur pages Web" -#: src/translate.c:428 +#: glade/xcfa_win_about.glade:739 msgid "" "\n" "Traduction Italienne" msgstr "" "\n" -"Italian translation" +"Traduction Italienne" -#: src/translate.c:429 +#: glade/xcfa_win_about.glade:800 msgid "" "\n" "\n" @@ -2666,53 +2460,45 @@ msgstr "" "\n" "\n" -"Useful links\n" +"Pages a visiter\n" -#: src/translate.c:430 +#: glade/xcfa_win_about.glade:1123 msgid "Linux On The Root" msgstr "Linux On The Root" -#: src/translate.c:431 +#: glade/xcfa_win_about.glade:1180 msgid "Frugalware" msgstr "Frugalware" -#: src/translate.c:432 +#: glade/xcfa_win_about.glade:1237 msgid "Road2Mayotte" msgstr "Road2Mayotte" -#: src/translate.c:433 +#: glade/xcfa_win_about.glade:1294 msgid "La Linuxerie" msgstr "La Linuxerie" -#: src/translate.c:434 -msgid "Audioptimisation by Dzef" -msgstr "Audioptimisation by Dzef" - -#: src/translate.c:435 +#: glade/xcfa_win_about.glade:1351 msgid "Tuxfamily" msgstr "Tuxfamily" -#: src/translate.c:436 +#: glade/xcfa_win_about.glade:1408 msgid "Framasoft" msgstr "Framasoft" -#: src/translate.c:437 +#: glade/xcfa_win_about.glade:1465 msgid "Ekd (EnKoDeur-Mixeur)" msgstr "Ekd (EnKoDeur-Mixeur)" -#: src/translate.c:438 -msgid "Bishop's page" -msgstr "Bishop's page" +#: glade/xcfa_win_about.glade:1544 +msgid "Debian Multimedia" +msgstr "Debian Multimedia" -#: src/translate.c:439 +#: glade/xcfa_win_about.glade:1598 msgid "Je suis libre" msgstr "Je suis libre" -#: src/translate.c:440 -msgid "Debian Multimedia" -msgstr "Debian Multimedia" - -#: src/translate.c:441 +#: glade/xcfa_win_about.glade:1705 msgid "" "\n" "Forum\n" @@ -2720,19 +2506,15 @@ "\n" "Forum\n" -#: src/translate.c:442 -msgid "XCFA Vorstellung " -msgstr "XCFA Vorstellung " +#: glade/xcfa_win_about.glade:1825 +msgid "Forum Xcfa" +msgstr "Forum Xcfa" -#: src/translate.c:443 +#: glade/xcfa_win_about.glade:1879 msgid "XCFA LinuxForen.de" msgstr "XCFA LinuxForen.de" -#: src/translate.c:444 -msgid "Forum Xcfa" -msgstr "Forum Xcfa" - -#: src/translate.c:445 +#: glade/xcfa_win_about.glade:1929 msgid "" "\n" "Documentation\n" @@ -2740,133 +2522,217 @@ "\n" "Documentation\n" -#: src/translate.c:446 +#: glade/xcfa_win_about.glade:2164 msgid "Wiki Xcfa par Shankarius" -msgstr "XCFA wiki by Shankarius" +msgstr "Wiki Xcfa par Shankarius" -#: src/translate.c:447 +#: glade/xcfa_win_about.glade:2219 msgid "Doc Xcfa par Patachon" -msgstr "XCFA doc. by Patachon" +msgstr "Doc Xcfa par Patachon" -#: src/translate.c:448 +#: glade/xcfa_win_about.glade:2276 msgid "Ogg Vorbis explique par Shankarius" -msgstr "Ogg Vorbis explained by Shankarius" +msgstr "Ogg Vorbis explique par Shankarius" -#: src/translate.c:449 +#: glade/xcfa_win_about.glade:2333 msgid "La normalisation expliquee par Dzef" -msgstr "Normalisation explained by Dzef" +msgstr "La normalisation expliquee par Dzef" -#: src/translate.c:450 +#: glade/xcfa_win_about.glade:2390 msgid "Xcfa sur Linux On The Root" -msgstr "XCFA on Linux On The Root" +msgstr "Xcfa sur Linux On The Root" -#: src/translate.c:451 +#: glade/xcfa_win_about.glade:2433 msgid " Contributions " msgstr " Contributions " -#: src/translate.c:452 +#: glade/xcfa_win_about.glade:2461 msgid " License " -msgstr " Licence " +msgstr " License " -#: src/translate.c:453 +#: glade/xcfa_win_about.glade:2482 msgid "OK" msgstr "OK" -#: src/web.c:173 src/web.c:234 -msgid "PAS de navigateur present" -msgstr "No web browser" - -#: src/web.c:174 -msgid "L'acces au web est impossible car aucun navigateur" -msgstr "No Web access: no web browser" - -#: src/web.c:176 -msgid "n'est present dans votre configuration." -msgstr "found in your system" - -#: src/web.c:178 -msgid "Veuillez installez un navigateur." -msgstr "Please install a web browser" - -#: src/web.c:188 -msgid "Vous devez ouvrir l'acces internet" -msgstr "You need to enable web access" - -#: src/web.c:236 -msgid " L'acces au web est impossible car aucun navigateur" -msgstr " No Web access: no web browser" - -#: src/web.c:238 -msgid " n'est present dans votre configuration." -msgstr " found in your system" - -#: src/web.c:240 -msgid " Veuillez installez un navigateur." -msgstr " Please install a web browser" +#: glade/xcfa_win_scan.glade:9 +msgid "Scan en cours ..." +msgstr "Scan en cours ..." -#: src/web.c:250 -msgid "L'application est absente." -msgstr "Application is missing." +#: glade/xcfa_win_scan.glade:77 +msgid "Scan du support en cours ..." +msgstr "Scan du support en cours ..." -#: src/web.c:251 -msgid "Veuillez installer : " -msgstr "Please install : " +#: glade/xcfa_win_scan.glade:128 +msgid "Detail extraction mode expert" +msgstr "Detail extraction mode expert" -#: src/win_about.c:130 -msgid " Xcfa sur le web" -msgstr " XCFA on the web" +#: glade/xcfa_win_treeview.glade:7 +msgid "Modification des champs" +msgstr "Modification des champs" -#: src/win_about.c:180 +#: glade/xcfa_win_treeview.glade:41 msgid "" "\n" -"Au tout debut:\n" -"\n" -"Serres Patrick, Hamann Regis, Fabien Gregis, @Dzef, @alteo_gange, \n" -"@Leonux, @zarer, @Shankarius, @bishop, @Ludo, @Patachonf,\n" -"... ;-)\n" -"\n" -"" +"Modification des champs\n" msgstr "" "\n" -"In the beginning:\n" -"\n" -"Serres Patrick, Hamann Regis, Fabien Gregis, @Dzef, @alteo_gange, \n" -"@Leonux, @zarer, @Shankarius, @bishop, @Ludo, @Patachonf,\n" -"... ;-)\n" -"\n" -"" +"Modification des champs\n" -#: src/win_scan.c:161 -msgid "Waiting ..." -msgstr "Waiting ..." +#: glade/xcfa_win_treeview.glade:129 +msgid "Temps" +msgstr "Temps" -#~ msgid "Quantification" -#~ msgstr "Quantification" +#: glade/xcfa_win_treeview.glade:163 +msgid "Choix" +msgstr "Choix" -#~ msgid "Voie" -#~ msgstr "Channel" +#: glade/xcfa_win_treeview.glade:197 glade/xcfa_win_treeview.glade:577 +#: glade/xcfa_win_treeview.glade:995 glade/xcfa_win_treeview.glade:1260 +#: glade/xcfa_win_treeview.glade:1508 glade/xcfa_win_treeview.glade:1706 +msgid "Nom" +msgstr "Nom" -#~ msgid " Frequence - Hertz " -#~ msgstr " Frequency -Hertz " +#: glade/xcfa_win_treeview.glade:220 glade/xcfa_win_treeview.glade:600 +#: glade/xcfa_win_treeview.glade:1018 glade/xcfa_win_treeview.glade:1283 +#: glade/xcfa_win_treeview.glade:1531 glade/xcfa_win_treeview.glade:1732 +msgid " Visibilite " +msgstr " Visibilite " -#~ msgid "Cellule" -#~ msgstr "Cell" +#: glade/xcfa_win_treeview.glade:250 glade/xcfa_win_treeview.glade:630 +#: glade/xcfa_win_treeview.glade:1048 glade/xcfa_win_treeview.glade:1313 +#: glade/xcfa_win_treeview.glade:1562 glade/xcfa_win_treeview.glade:1763 +msgid "Nom a gauche" +msgstr "Nom a gauche" + +#: glade/xcfa_win_treeview.glade:267 glade/xcfa_win_treeview.glade:647 +#: glade/xcfa_win_treeview.glade:1065 glade/xcfa_win_treeview.glade:1330 +#: glade/xcfa_win_treeview.glade:1579 glade/xcfa_win_treeview.glade:1780 +msgid "Nom au centre" +msgstr "Nom au centre" + +#: glade/xcfa_win_treeview.glade:286 glade/xcfa_win_treeview.glade:666 +#: glade/xcfa_win_treeview.glade:1084 glade/xcfa_win_treeview.glade:1349 +#: glade/xcfa_win_treeview.glade:1598 glade/xcfa_win_treeview.glade:1799 +msgid "Nom a droite" +msgstr "Nom a droite" + +#: glade/xcfa_win_treeview.glade:326 +msgid "DVD" +msgstr "DVD" -#~ msgid "Colonne" -#~ msgstr "Column" +#: glade/xcfa_win_treeview.glade:373 glade/xcfa_win_treeview.glade:791 +msgid "Wav" +msgstr "Wav" -#~ msgid " Cacher Xcfa " -#~ msgstr " Hide Xcfa " +#: glade/xcfa_win_treeview.glade:390 glade/xcfa_win_treeview.glade:808 +msgid "Flac" +msgstr "Flac" + +#: glade/xcfa_win_treeview.glade:407 glade/xcfa_win_treeview.glade:825 +msgid "Ape" +msgstr "Ape" + +#: glade/xcfa_win_treeview.glade:424 glade/xcfa_win_treeview.glade:842 +msgid "Wavpack" +msgstr "Wavpack" + +#: glade/xcfa_win_treeview.glade:441 glade/xcfa_win_treeview.glade:859 +msgid "Ogg" +msgstr "Ogg" + +#: glade/xcfa_win_treeview.glade:458 glade/xcfa_win_treeview.glade:876 +msgid "M4a" +msgstr "M4a" + +#: glade/xcfa_win_treeview.glade:475 glade/xcfa_win_treeview.glade:893 +msgid "Aac" +msgstr "Aac" + +#: glade/xcfa_win_treeview.glade:492 glade/xcfa_win_treeview.glade:910 +msgid "Musepack" +msgstr "Musepack" + +#: glade/xcfa_win_treeview.glade:509 glade/xcfa_win_treeview.glade:927 +msgid "Mp3" +msgstr "Mp3" + +#: glade/xcfa_win_treeview.glade:526 +msgid "Num" +msgstr "Num" + +#: glade/xcfa_win_treeview.glade:709 +msgid "CD" +msgstr "CD" + +#: glade/xcfa_win_treeview.glade:978 +msgid "Replaygain" +msgstr "Replaygain" + +#: glade/xcfa_win_treeview.glade:1127 +msgid "CONVERSIONS" +msgstr "CONVERSIONS" + +#: glade/xcfa_win_treeview.glade:1158 +msgid "Hertz" +msgstr "Hertz" + +#: glade/xcfa_win_treeview.glade:1175 +msgid "New Hertz" +msgstr "New Hertz" + +#: glade/xcfa_win_treeview.glade:1192 +msgid "Voie" +msgstr "Voie" + +#: glade/xcfa_win_treeview.glade:1209 +msgid "New Voie" +msgstr "New Voie" + +#: glade/xcfa_win_treeview.glade:1226 +msgid "Bits" +msgstr "Bits" + +#: glade/xcfa_win_treeview.glade:1243 +msgid "New Bits" +msgstr "New Bits" + +#: glade/xcfa_win_treeview.glade:1392 +msgid "WAV" +msgstr "WAV" + +#: glade/xcfa_win_treeview.glade:1440 +msgid "Bitrate" +msgstr "Bitrate" + +#: glade/xcfa_win_treeview.glade:1457 +msgid "New Bitrate" +msgstr "New Bitrate" + +#: glade/xcfa_win_treeview.glade:1641 +msgid "MP3-OGG" +msgstr "MP3-OGG" + +#: glade/xcfa_win_treeview.glade:1842 +msgid "TAGS" +msgstr "TAGS" + +#: glade/xcfa_win_treeview.glade:1894 +msgid "Selection globale" +msgstr "Selection globale" + +#: glade/xcfa_win_treeview.glade:1948 +msgid "Deselection globale" +msgstr "Deselection globale" + +#: glade/xcfa_win_treeview.glade:2009 +msgid "Retour" +msgstr "Retour" -#~ msgid " Montrer Xcfa " -#~ msgstr " Show Xcfa " +#~ msgid "Audioptimisation by Dzef" +#~ msgstr "Audioptimisation by Dzef" -#~ msgid " Quitter Xcfa " -#~ msgstr " Quit Xcfa " +#~ msgid "Bishop's page" +#~ msgstr "Bishop's page" -#~ msgid "" -#~ "XCFA\n" -#~ "Programme pour convertir les fichiers audio." -#~ msgstr "" -#~ "XCFA\n" -#~ "Program for converting audio files." +#~ msgid "XCFA Vorstellung " +#~ msgstr "XCFA Vorstellung " diff -Nru xcfa-4.3.8/po/POTFILES.in xcfa-5.0.1/po/POTFILES.in --- xcfa-4.3.8/po/POTFILES.in 2012-09-14 15:02:17.000000000 +0000 +++ xcfa-5.0.1/po/POTFILES.in 2015-02-06 07:24:50.000000000 +0000 @@ -2,6 +2,7 @@ src/alsa_audio.c src/alsa_play.c src/bacon.c +src/builder.c src/cd_audio.c src/cd_audio_extract.c src/cd_audio_toc.c @@ -85,17 +86,16 @@ src/tags_wav.c src/tags_wavpack.c src/tags_wma.c -src/translate.c -src/treeview.c src/web.c src/win_about.c src/win_info.c src/win_reader.c src/win_scan.c +src/win_treeview.c src/win_vte.c -lib/combo.c -lib/file_is.c -lib/lib.c -lib/utf8.c -lib/xdg.c - +glade/xcfa.glade +glade/xcfa_win_about.glade +glade/xcfa_win_info.glade +glade/xcfa_win_reader.glade +glade/xcfa_win_scan.glade +glade/xcfa_win_treeview.glade diff -Nru xcfa-4.3.8/po/xcfa.pot xcfa-5.0.1/po/xcfa.pot --- xcfa-4.3.8/po/xcfa.pot 2014-01-31 12:25:57.000000000 +0000 +++ xcfa-5.0.1/po/xcfa.pot 2015-03-01 17:00:49.000000000 +0000 @@ -6,178 +6,124 @@ #, fuzzy msgid "" msgstr "" -"Project-Id-Version: xcfa 4.3.8\n" +"Project-Id-Version: xcfa 5.0.1\n" "Report-Msgid-Bugs-To: xcfa@tuxfamily.org\n" -"POT-Creation-Date: 2014-01-31 13:25+0100\n" +"POT-Creation-Date: 2015-03-01 18:00+0100\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "Language: \n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=CHARSET\n" +"Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: src/cd_audio.c:812 src/dvd.c:680 src/dvd.c:1324 -msgid "MPLAYER deja en action" +#: src/cd_audio.c:814 src/dvd.c:686 src/dvd.c:1345 +msgid "MPLAYER already in action" msgstr "" -#: src/cd_audio.c:813 src/dvd.c:681 src/dvd.c:1325 -msgid "MPLAYER est deja utilise !!" +#: src/cd_audio.c:815 src/dvd.c:687 src/dvd.c:1346 +msgid "MPLAYER is already in use !!" msgstr "" -#: src/cd_audio.c:1224 src/cd_audio.c:1230 src/dvd.c:867 src/file.c:2827 -msgid "(Click Droit = Menu) / En attente de selection." +#: src/cd_audio.c:1227 src/cd_audio.c:1233 src/file.c:2837 +msgid "(Right click = Menu) / Waiting for selection." msgstr "" -#: src/cd_audio.c:1227 src/file.c:2824 -msgid "Le programme externe d'extraction est absent." +#: src/cd_audio.c:1230 +msgid "The external ripping program is missing." msgstr "" -#: src/cd_audio.c:1233 src/file.c:2830 -msgid "(Click Droit = Menu) / En attente de selection. Le fichier existe." +#: src/cd_audio.c:1236 +msgid "(Right click = Menu) / Waiting for Selection. File exists.." msgstr "" -#: src/cd_audio.c:1236 src/file.c:2833 -msgid "(Click Droit = Menu) / En selection." +#: src/cd_audio.c:1239 +msgid "(Right click = Menu) / Selected files." msgstr "" -#: src/cd_audio.c:1239 src/file.c:2839 -msgid "(Click Droit = Menu) / Selection avec options expert." +#: src/cd_audio.c:1242 src/file.c:2849 +msgid "(Right click = Menu) / Selection - expert mode." msgstr "" -#: src/cd_audio.c:1242 src/file.c:2836 -msgid "(Click Droit = Menu) / En selection. Le fichier existe." +#: src/cd_audio.c:1245 src/file.c:2846 +msgid "(Right click = Menu) / Selected files. File exists." msgstr "" -#: src/cd_audio.c:1245 src/file.c:2842 -msgid "" -"(Click Droit = Menu) / Selection avec options expert. Le fichier existe." +#: src/cd_audio.c:1248 src/file.c:2852 +msgid "(Right click = Menu) / Selection - expert mode. File exists." msgstr "" -#: src/cd_audio.c:1254 +#: src/cd_audio.c:1257 msgid "" -"(Click Droit = Menu) / Possibilite d'ajustement INDIVIDUEL ou COLLECTIF " -"maximal du volume" -msgstr "" - -#: src/cd_audio.c:1259 -msgid "(Click Droit = Menu) / Ajustement INDIVIDUEL maximal du volume" +"(Right click = Menu) / Possibilities for individual adaptation or maximum " +"collection volume" msgstr "" #: src/cd_audio.c:1262 -msgid "(Click Droit = Menu) / Ajustement COLLECTIF maximal du volume" -msgstr "" - -#: src/cd_audio.c:1502 src/dvd.c:1099 src/file.c:3137 src/translate.c:331 -#: src/translate.c:342 src/translate.c:361 -msgid "Play" -msgstr "" - -#: src/cd_audio.c:1543 src/file.c:3202 src/translate.c:343 src/translate.c:364 -msgid "Wav" +msgid "(Right click = Menu) / INDIVIDUAL maximum volume adjustment" msgstr "" -#: src/cd_audio.c:1564 src/file.c:3221 src/translate.c:344 src/translate.c:365 -msgid "Flac" +#: src/cd_audio.c:1265 +msgid "(Right click = Menu) / COLLECTIVE maximum volume adjustment" msgstr "" -#: src/cd_audio.c:1584 src/file.c:3240 src/translate.c:345 src/translate.c:366 -msgid "Ape" -msgstr "" - -#: src/cd_audio.c:1604 src/file.c:3259 -msgid "WavP" -msgstr "" - -#: src/cd_audio.c:1624 src/file.c:3278 src/translate.c:347 src/translate.c:368 -msgid "Ogg" -msgstr "" - -#: src/cd_audio.c:1645 src/file.c:3297 src/translate.c:348 src/translate.c:369 -msgid "M4a" -msgstr "" - -#: src/cd_audio.c:1666 src/file.c:3316 src/translate.c:349 src/translate.c:370 -msgid "Aac" -msgstr "" - -#: src/cd_audio.c:1686 src/file.c:3335 -msgid "Mpc" -msgstr "" - -#: src/cd_audio.c:1706 src/file.c:3354 src/translate.c:351 src/translate.c:372 -msgid "Mp3" -msgstr "" - -#: src/cd_audio.c:1727 src/translate.c:352 -msgid "Num" -msgstr "" - -#: src/cd_audio.c:1742 src/translate.c:353 src/translate.c:373 -#: src/translate.c:398 src/translate.c:406 -msgid "Time" -msgstr "" - -#: src/cd_audio.c:1757 src/dvd.c:1167 src/file.c:3390 src/translate.c:335 -#: src/translate.c:354 src/translate.c:374 +#: src/cd_audio.c:1764 src/dvd.c:1187 src/file.c:3403 +#: glade/xcfa_win_treeview.glade:180 glade/xcfa_win_treeview.glade:560 +#: glade/xcfa_win_treeview.glade:961 msgid "Normalise" msgstr "" -#: src/cd_audio.c:1782 src/dvd.c:1187 src/file.c:3432 src/file_mp3ogg.c:958 -#: src/file_tags.c:1191 src/file_wav.c:824 src/prg_init.c:609 -#: src/translate.c:336 src/translate.c:355 src/translate.c:376 -#: src/translate.c:388 src/translate.c:399 src/translate.c:407 -msgid "Nom" +#: src/cd_audio.c:1789 src/dvd.c:1207 src/file.c:3445 src/file_mp3ogg.c:964 +#: src/file_tags.c:1253 src/file_wav.c:830 src/prg_init.c:609 +msgid "Name" msgstr "" -#: src/cd_audio.c:2511 -msgid " Parametrage CDDB: [ Nom du serveur ]" +#: src/cd_audio.c:2517 +msgid " Setting up CDDB: [ Server name ]" msgstr "" -#: src/cd_audio.c:2520 -msgid " Parametrage PROXY: [ serveur ] [ port ]" +#: src/cd_audio.c:2526 +msgid " Proxy settings: [ server ] [ port ] " msgstr "" -#: src/cd_audio.c:2530 src/translate.c:95 -msgid " Serveur " +#: src/cd_audio.c:2536 glade/xcfa.glade:1842 +msgid " Server " msgstr "" #: src/cd_audio_extract.c:673 #, c-format -msgid "" -"[Erreur du segment numero: %d]\n" -"%d) Lecture PASS 1/2\n" +msgid "[Error on segment #%d] %d) Playing PASS 1/2\n" msgstr "" #: src/cd_audio_extract.c:680 #, c-format msgid "" -"--> Deja %d fois 2 lectures du segment %d!\n" +"--> Segment %d already read two %d times!\n" " Abandon :/\n" msgstr "" #: src/cd_audio_extract.c:700 #, c-format -msgid "%d) Lecture PASS 2/2\n" +msgid "%d) Read PASS 2/2\n" msgstr "" #: src/cd_audio_extract.c:780 #, c-format msgid "" "\n" -"[Piste: %d]\n" +"[Track: %d]\n" msgstr "" #: src/cd_audio_extract.c:784 -msgid "Extraction mode expert PASS 1/2\n" +msgid "Ripping expert mode PASS 1/2\n" msgstr "" #: src/cd_audio_extract.c:795 -msgid "Extraction mode expert PASS 2/2\n" +msgid "Ripping expert mode PASS 2/2\n" msgstr "" #: src/cd_audio_extract.c:803 -msgid "Controle du contenu des fichiers extraits\n" +msgid "Control the content of the extracted files\n" msgstr "" #: src/cd_audio_extract.c:1710 src/cd_audio_extract.c:1712 @@ -191,15 +137,15 @@ #: src/cd_audio_extract.c:1712 src/dvd_extract.c:414 src/file_action.c:185 #: src/file_mp3ogg_conv.c:331 src/file_wav_conv.c:345 -msgid "Arret par l'utilisateur" +msgid "Stop by user" msgstr "" #: src/cd_audio_extract.c:1983 -msgid "Nom de fichier unique absent" +msgid "File name not found" msgstr "" #: src/cd_audio_extract.c:1984 -msgid "Veuillez saisir un nom pour le fichier unique" +msgid "Please enter a file name" msgstr "" #: src/cd_audio_toc.c:156 @@ -243,15 +189,15 @@ msgstr "" #: src/cd_audio_toc.c:203 -msgid "ERREUR datas proxy" +msgid "ERROR datas proxy" msgstr "" #: src/cd_audio_toc.c:204 -msgid "Veuillez renseigner les champs du proxy" +msgid "Please complete all fields proxy" msgstr "" #: src/cd_curl.c:734 src/web.c:187 -msgid "La liaison internet est absente" +msgid "A web connection is missing" msgstr "" #: src/cd_curl.c:1204 @@ -262,127 +208,122 @@ msgid "No Audio CD" msgstr "" -#: src/dvd.c:859 +#: src/dvd.c:877 msgid "" -"(Click Droit = Menu) / PEAK-ALBUM: Amplification maximale du volume pour un " -"groupe de fichiers en respectant les ecarts de niveau entre chacun d'eux." +"(Right click = Menu) / Maximum volume amplification of a group of files " +"keeping the level difference between each of them." msgstr "" -#: src/dvd.c:862 -msgid "" -"(Click Droit = Menu) / PEAK: Amplification maximale du volume pour chaque de " -"fichier." +#: src/dvd.c:882 src/file.c:2882 +msgid "PEAK: Maximum volume amplification of each file." +msgstr "" + +#: src/dvd.c:887 +msgid "(Right click = Menu) / ReplayGain: Waiting for selection." msgstr "" -#: src/dvd.c:900 src/dvd.c:920 -msgid "En attente de selection. Un click activera la conversion vers 2 canaux." +#: src/dvd.c:920 src/dvd.c:940 +msgid "" +"Waiting for selection. A click will activate the conversion to 2 channels." msgstr "" -#: src/dvd.c:912 -msgid "Conversion vers 2 canaux." +#: src/dvd.c:932 +msgid "Conversion to 2 channels." msgstr "" -#: src/dvd.c:924 +#: src/dvd.c:944 #, c-format -msgid "Conversion vers %s canaux." +msgid "Conversion to %s channels." msgstr "" -#: src/dvd.c:929 +#: src/dvd.c:949 #, c-format msgid "" -"Conversion vers 2 canaux. Un second click activera la conversion vers %s " -"canaux." +"Conversion to 2 channels. A second click will activate the conversion to %s " +"channels." msgstr "" -#: src/dvd.c:944 -msgid "Musique en ecoute." +#: src/dvd.c:964 +msgid "Playing music." msgstr "" -#: src/dvd.c:947 -msgid "Musique en attente." +#: src/dvd.c:967 +msgid "Music paused." msgstr "" -#: src/dvd.c:962 +#: src/dvd.c:982 #, c-format msgid "Total selection%s: %d, 2ch: %d" msgstr "" -#: src/dvd.c:963 +#: src/dvd.c:983 msgid "s" msgstr "" -#: src/dvd.c:969 -msgid "Ce fichier ne peut etre extrait !" +#: src/dvd.c:989 +msgid "This file can not be ripped !" msgstr "" -#: src/dvd.c:1087 -msgid "Titres" +#: src/dvd.c:1107 +msgid "Titles" msgstr "" -#: src/dvd.c:1111 src/file.c:3373 src/file_mp3ogg.c:943 src/file_tags.c:1175 -#: src/translate.c:332 -msgid "Temps" +#: src/dvd.c:1119 glade/xcfa_win_treeview.glade:112 +#: glade/xcfa_win_treeview.glade:356 glade/xcfa_win_treeview.glade:740 +msgid "Play" msgstr "" -#: src/dvd.c:1123 src/translate.c:333 -msgid "Format" +#: src/dvd.c:1131 src/file.c:3386 src/file_mp3ogg.c:949 src/file_tags.c:1237 +#: glade/xcfa_win_treeview.glade:543 glade/xcfa_win_treeview.glade:944 +#: glade/xcfa_win_treeview.glade:1491 glade/xcfa_win_treeview.glade:1689 +msgid "Time" msgstr "" -#: src/dvd.c:1135 src/translate.c:334 -msgid "Choix" +#: src/dvd.c:1143 glade/xcfa_win_treeview.glade:146 +msgid "Format" msgstr "" -#: src/dvd.c:1249 -msgid "Fichier structure DVD" +#: src/dvd.c:1155 +msgid "Choice" msgstr "" -#: src/dvd.c:1299 -msgid "Le DVD est absent du lecteur." +#: src/dvd.c:1267 +msgid "DVD file structure" msgstr "" -#: src/dvd.c:1335 -msgid "Scan ..." +#: src/dvd.c:1320 +msgid "The DVD player is absent." msgstr "" -#: src/dvd.c:1385 -msgid "lsdvd est absent !" +#: src/dvd.c:1410 +msgid "lsdvd is missing !" msgstr "" -#: src/dvd.c:1386 -msgid "Il faut installer le programme: lsdvd" +#: src/dvd.c:1411 +msgid "You must install the program: lsdvd" msgstr "" #: src/dvd_extract.c:412 src/dvd_extract.c:414 -msgid "XCFA: Extraction DVD" -msgstr "" - -#: src/dvd_read.c:263 -#, c-format -msgid "Titre [%02d ** ]" +msgid "XCFA: DVD rip" msgstr "" -#: src/dvd_read.c:266 +#: src/dvd_read.c:226 #, c-format -msgid "Titre [%02d]" +msgid "Title [%02d ** ]" msgstr "" -#: src/dvd_read.c:310 +#: src/dvd_read.c:227 #, c-format -msgid "Fichier_complet_%02d_%s" +msgid "Title [%02d]" msgstr "" -#: src/dvd_read.c:355 +#: src/dvd_read.c:252 #, c-format -msgid "Chapitre: [%02d]" -msgstr "" - -#: src/dvd_read.c:401 -#, c-format -msgid "Titre_%02d_Chapitre_%02d_audio_%02d_%s" +msgid "Chapter: [%02d]" msgstr "" #: src/file_action.c:183 src/file_action.c:185 -msgid "XCFA: Traitement fichiers" +msgid "XCFA: Processing files" msgstr "" #: src/file_analyze.c:731 @@ -391,136 +332,135 @@ #: src/file_analyze.c:732 msgid "" -"Veuillez installer checkmp3 ou mp3check pour\n" -"la prise en compte des fichiers mp3" +"Please install or checkmp3 mp3check for\n" +"consideration of mp3 files" msgstr "" -#: src/file.c:328 +#: src/file.c:327 #, c-format -msgid "Total fichiers: %d, Selections: %d" +msgid "Total files: %d, Selections: %d" msgstr "" -#: src/file.c:442 -msgid "CAPACITE DOSSIER TEMPORAIRE TROP FAIBLE" +#: src/file.c:441 +msgid "TEMPORARY CAPACITY TOO LOW" msgstr "" -#: src/file.c:443 -msgid "Pas assez de place dans le dossier temporaire" +#: src/file.c:442 src/file.c:2875 +msgid "WARNING: Not enough space available in the temp folder." msgstr "" -#: src/file.c:449 -msgid "Veuillez deselectionner des PeakGroup." +#: src/file.c:448 +msgid "Please deselect PeakGroup." msgstr "" -#: src/file.c:1433 -msgid "Conversion(s) vers la source" +#: src/file.c:1431 +msgid "Conversion(s) to source" msgstr "" -#: src/file.c:1434 -msgid "Choix d'une nouvelle destination" +#: src/file.c:1432 +msgid "Select a new destination" msgstr "" -#: src/file.c:1504 +#: src/file.c:1501 msgid "Select type: --" msgstr "" -#: src/file.c:1589 +#: src/file.c:1584 msgid "Peak/album" msgstr "" -#: src/file.c:1590 +#: src/file.c:1585 msgid "Peak" msgstr "" -#: src/file.c:1591 +#: src/file.c:1586 msgid "Mix (scan)Rms/album" msgstr "" -#: src/file.c:1592 +#: src/file.c:1587 msgid "Fix (scan)Rms" msgstr "" -#: src/file.c:2851 -#, c-format -msgid "MAX FICHIERS ATTEINT = %d" +#: src/file.c:2834 +msgid "The external ripping program is missing" msgstr "" -#: src/file.c:2861 -msgid "Normalise: En attente de selection." +#: src/file.c:2840 +msgid "(Right click = Menu) / Waiting for Selection. File exists." msgstr "" -#: src/file.c:2865 -msgid "ATTENTION: Pas assez de place dans le dossier temporaire." +#: src/file.c:2843 +msgid "(Right click = Menu) / Selected files" msgstr "" -#: src/file.c:2868 -msgid "" -"PEAK-ALBUM: Amplification maximale du volume pour un groupe de fichiers en " -"respectant les ecarts de niveau entre chacun d'eux." +#: src/file.c:2861 +#, c-format +msgid "MAX FILES REACHED = %d" msgstr "" -#: src/file.c:2872 -msgid "PEAK: Amplification maximale du volume pour chaque de fichier." +#: src/file.c:2871 +msgid "Normalise: Waiting for selection." msgstr "" -#: src/file.c:2875 +#: src/file.c:2878 msgid "" -"RMS-ALBUM: Ajustement du volume moyen pour un groupe de fichiers en " -"respectant les ecarts de niveau moyen entre chacun d'eux." +"PEAK-ALBUM: Maximum volume amplification for a group of files according to " +"the deviations in level between them" msgstr "" -#: src/file.c:2878 -msgid "RMS: Ajustement du volume moyen de chaque de fichier." +#: src/file.c:2885 +msgid "" +"RMS-ALBUM: Adjusting the average volume for a group of files according to " +"the average level of deviation between them." msgstr "" -#: src/file.c:2892 -msgid "(Click Droit = Menu) / ReplayGain: En attente de selection." +#: src/file.c:2888 +msgid "RMS: Average volume amplification of each file." msgstr "" -#: src/file.c:2895 -msgid "(Click Droit = Menu) / Mode piste." +#: src/file.c:2902 +msgid "(Right Click = Menu) / ReplayGain: Waiting for selection." msgstr "" -#: src/file.c:2898 -msgid "(Click Droit = Menu) / Mode album." +#: src/file.c:2905 +msgid "(Right Click = Menu) / Track mode." msgstr "" -#: src/file.c:2901 -msgid "(Click Droit = Menu) / Mode effacer." +#: src/file.c:2908 +msgid "(Right Click = Menu) / Album mode." msgstr "" -#: src/file.c:3013 +#: src/file.c:2911 +msgid "(Right Click = Menu) / Erase mode." +msgstr "" + +#: src/file.c:3026 msgid "" -"(Click Droit = Menu) / Cliquez ici pour envoyer ce fichier apres traitement " -"a la corbeille" +"(Click Droit = Menu) / Click here to send the processed file to the trash" msgstr "" -#: src/file.c:3016 +#: src/file.c:3029 msgid "" -"(Click Droit = Menu) / Ce fichier sera dirige apres traitement vers la " -"corbeille" +"(Right Click = Menu) / This file will be sent to the trash after processing" msgstr "" -#: src/file.c:3150 src/file_trash.c:359 src/translate.c:362 +#: src/file.c:3163 src/file_trash.c:208 glade/xcfa_win_treeview.glade:757 msgid "Trash" msgstr "" -#: src/file.c:3170 src/file_mp3ogg.c:883 src/file_tags.c:1160 -#: src/translate.c:363 src/translate.c:394 src/translate.c:405 +#: src/file.c:3183 src/file_mp3ogg.c:889 src/file_tags.c:1222 +#: glade/xcfa_win_treeview.glade:774 glade/xcfa_win_treeview.glade:1423 +#: glade/xcfa_win_treeview.glade:1672 msgid "Type" msgstr "" -#: src/file.c:3409 -msgid "ReplayGain" -msgstr "" - -#: src/file_conv.c:1187 src/file_mp3ogg_conv.c:336 -msgid "Erreur depuis MPLAYER !" +#: src/file_conv.c:1187 +msgid "Error since MPLAYER !" msgstr "" #: src/file_conv.c:1188 src/file_conv.c:1200 src/file_mp3ogg_conv.c:337 #: src/file_mp3ogg_conv.c:349 -msgid "Vous pouvez activer XCFA en ligne de commande avec: " +msgid "You can enable XCFA command line with: " msgstr "" #: src/file_conv.c:1190 src/file_conv.c:1202 src/file_mp3ogg_conv.c:339 @@ -529,50 +469,54 @@ msgstr "" #: src/file_conv.c:1192 src/file_mp3ogg_conv.c:341 -msgid "pour consulter le type d'erreur renvoye par mplayer." +msgid "to see the type of error returned by mplayer." msgstr "" -#: src/file_conv.c:1199 src/file_mp3ogg_conv.c:348 -msgid "Erreur depuis SOX !" +#: src/file_conv.c:1199 +msgid "Error since SOX !" msgstr "" #: src/file_conv.c:1204 src/file_mp3ogg_conv.c:353 -msgid "pour consulter le type d'erreur renvoye par sox." +msgid "to see the type of error returned by sox." msgstr "" -#: src/file_mp3ogg.c:668 -msgid "Click droit: acces popup" +#: src/file_mp3ogg.c:670 +msgid "Right click: access popup" msgstr "" -#: src/file_mp3ogg.c:899 src/translate.c:395 -msgid "Bitrate" +#: src/file_mp3ogg.c:921 +msgid "New bitrate" msgstr "" -#: src/file_mp3ogg.c:915 -msgid "Nouveau bitrate" +#: src/file_mp3ogg.c:935 glade/xcfa_win_treeview.glade:1474 +msgid "Size" msgstr "" -#: src/file_mp3ogg.c:929 -msgid "Taille" +#: src/file_mp3ogg_conv.c:329 src/file_mp3ogg_conv.c:331 +msgid "XCFA: Bitrate change" msgstr "" -#: src/file_mp3ogg_conv.c:329 src/file_mp3ogg_conv.c:331 -msgid "XCFA: Modification bitrate" +#: src/file_mp3ogg_conv.c:336 +msgid "Error from MPLAYER !" +msgstr "" + +#: src/file_mp3ogg_conv.c:348 +msgid "Error from SOX !" msgstr "" #: src/file_mp3ogg_conv.c:432 #, c-format -msgid " ATTENTION: Il faut installer %s%s%s" +msgid " WARNING : you need to install %s%s%s" msgstr "" #: src/file_mp3ogg_conv.c:440 #, c-format -msgid " ATTENTION: Il faut installer %s%s" +msgid " WARNING : you need to install %s%s" msgstr "" #: src/file_mp3ogg_conv.c:447 #, c-format -msgid " ATTENTION: Il faut installer %s" +msgid " WARNING : you need to install %s" msgstr "" #: src/file_mp3ogg_conv.c:454 @@ -580,357 +524,345 @@ msgstr "" #: src/fileselect.c:105 -msgid "Choix d'un dossier de destination" +msgid "Choosing a destination folder" msgstr "" #: src/fileselect.c:106 -msgid "Choix d'un fichier CUE WAV FLAC OGG MP3 APE WMA" +msgid "Choosing a file CUE WAV FLAC OGG MP3 APE WMA" msgstr "" #: src/fileselect.c:107 -msgid "Choix d'un fichier musical" +msgid "Choosing a file musical" msgstr "" -#: src/fileselect.c:108 -msgid "Choix d'un fichier" -msgstr "" - -#: src/fileselect.c:109 -msgid "Choix de fichiers" +#: src/fileselect.c:108 src/fileselect.c:109 +msgid "Choosing a file" msgstr "" #: src/fileselect.c:110 -msgid "Choix de fichiers WAV" +msgid "Choosing a WAV file" msgstr "" #: src/fileselect.c:111 -msgid "Choix de fichiers MP3/OGG" +msgid "Choosing a MP3 OGG file" msgstr "" #: src/fileselect.c:112 -msgid "Choix de fichiers FLAC MPC OGG MP3" +msgid "Choosing a FLAC MPC OGG MP3 file" msgstr "" #: src/fileselect.c:113 -msgid "Importer des images pour la pochette" +msgid "Import pictures for the cover" msgstr "" #: src/fileselect.c:114 -msgid "Choix d'un chemin de stockage des images" +msgid "Choosing an Image Storage path" msgstr "" #: src/fileselect.c:115 -msgid "Choix d'un lieu de sauvegarde" +msgid "Choosing a place for backup" +msgstr "" + +#: src/fileselect.c:396 src/fileselect.c:415 src/fileselect.c:703 +msgid "Cancel" +msgstr "" + +#: src/fileselect.c:398 src/fileselect.c:417 src/fileselect.c:705 +msgid "Open" msgstr "" -#: src/fileselect.c:472 src/fileselect.c:595 src/fileselect.c:605 -#: src/fileselect.c:628 +#: src/fileselect.c:494 src/fileselect.c:617 src/fileselect.c:627 +#: src/fileselect.c:650 msgid "All Files (*.*)" msgstr "" -#: src/file_trash.c:360 +#: src/file_trash.c:211 msgid "Trash files ..." msgstr "" -#: src/file_wav.c:483 -msgid "(Click Droit = Menu) / Choix de la frequence" +#: src/file_wav.c:485 +msgid "(Right Click = Menu) / Select frequency" msgstr "" -#: src/file_wav.c:486 -msgid "(Click Droit = Menu) / Choix du nombre de pistes (voies)" +#: src/file_wav.c:488 +msgid "(Right Click = Menu) / Select number of tracks (channels)" msgstr "" -#: src/file_wav.c:489 -msgid "(Click Droit = Menu) / Choix du codage en nombre de bits" +#: src/file_wav.c:491 +msgid "(Right Click = Menu) / Encoding selection in number of bits" msgstr "" -#: src/file_wav.c:733 -msgid "Frequence" +#: src/file_wav.c:739 +msgid "Frequency" msgstr "" -#: src/file_wav.c:749 -msgid "FREQUENCE" +#: src/file_wav.c:755 +msgid "FREQUENCY" msgstr "" -#: src/file_wav.c:763 -msgid "Piste" +#: src/file_wav.c:769 +msgid "Track" msgstr "" -#: src/file_wav.c:779 -msgid "PISTE" +#: src/file_wav.c:785 +msgid "TRACK" msgstr "" -#: src/file_wav.c:793 +#: src/file_wav.c:799 msgid "Quantification" msgstr "" -#: src/file_wav.c:809 +#: src/file_wav.c:815 msgid "QUANTIFICATION" msgstr "" #: src/file_wav_conv.c:261 #, c-format -msgid "%s Copie fichier: %d%%" +msgid "%s Copy file: %d%%" msgstr "" #: src/file_wav_conv.c:271 #, c-format -msgid "%s Restitution fichier: %d%%" +msgid "%s Return file: %d%%" msgstr "" #: src/file_wav_conv.c:281 #, c-format -msgid "%s Traitement Sox: %d%%" +msgid "%s Use Sox: %d%%" msgstr "" #: src/file_wav_conv.c:298 #, c-format -msgid "%s Traitement Mplayer: %d%%" +msgid "%s Use Mplayer: %d%%" msgstr "" #: src/file_wav_conv.c:343 src/file_wav_conv.c:345 msgid "XCFA: Conversions WAV TO WAV" msgstr "" -#: src/main.c:398 -msgid "= Adressage memoire invalide\n" +#: src/main.c:775 +msgid "ADMINISTRATOR MODE" msgstr "" -#: src/main.c:401 -msgid "= Vous avez probablement trouve un bug dans XCFA\n" +#: src/main.c:777 +msgid " You should not use " msgstr "" -#: src/main.c:786 -msgid "MODE ADMINISTRATEUR" +#: src/main.c:779 +msgid " XCFA under ROOT !" msgstr "" -#: src/main.c:788 -msgid " Vous ne devriez pas utiliser " +#: src/options.c:169 +msgid "ERROR : storage location not permitted !" msgstr "" -#: src/main.c:790 -msgid " XCFA sous ROOT !" -msgstr "" - -#: src/options.c:171 -msgid "ERREUR: Lieu de stockage non autorise !" -msgstr "" - -#: src/options.c:172 -msgid "Veuillez recommencer." +#: src/options.c:170 +msgid "Please start again." msgstr "" #: src/options_cd.c:122 -msgid "Pour evaluer les templates, vous devez activer une lecture de cdaudio" +msgid "To assess the templates, you must enable a reading cdaudio" msgstr "" -#: src/options_faac.c:96 +#: src/options_faac.c:94 msgid "Transport Stream (ADTS) - Extension .aac" msgstr "" -#: src/options_faac.c:97 +#: src/options_faac.c:95 msgid "MPEG-4 File Format (MP4) - Extension .m4a" msgstr "" -#: src/options_flac.c:67 -msgid "0 (Rapide)" +#: src/options_flac.c:65 +msgid "0 (Fast)" msgstr "" -#: src/options_flac.c:75 -msgid "8 (Lent)" +#: src/options_flac.c:73 +msgid "8 (Low)" msgstr "" -#: src/options_mp3.c:279 -msgid "V0 (meilleure qualite)" +#: src/options_mp3.c:276 +msgid "V0 (Best quality)" msgstr "" -#: src/options_mp3.c:288 -msgid "V9 (moins bonne qualite)" +#: src/options_mp3.c:285 +msgid "V9 (Poor quality)" msgstr "" -#: src/options_musepack.c:70 +#: src/options_musepack.c:68 msgid "telephone: lowest quality : 32 .. 48 kbit/s" msgstr "" -#: src/options_musepack.c:71 +#: src/options_musepack.c:69 msgid "thumb : low quality/internet : 58 .. 86 kbit/s" msgstr "" -#: src/options_musepack.c:72 +#: src/options_musepack.c:70 msgid "radio : medium (MP3) quality : 112 .. 152 kbit/s" msgstr "" -#: src/options_musepack.c:73 +#: src/options_musepack.c:71 msgid "standard : high quality (dflt) : 142 .. 184 kbit/s" msgstr "" -#: src/options_musepack.c:74 +#: src/options_musepack.c:72 msgid "xtreme : extreme high quality : 168 .. 212 kbit/s" msgstr "" -#: src/options_musepack.c:75 +#: src/options_musepack.c:73 msgid "insane : extreme high quality : 232 .. 268 kbit/s" msgstr "" -#: src/options_musepack.c:76 +#: src/options_musepack.c:74 msgid "braindead : extreme high quality : 232 .. 278 kbit/s" msgstr "" -#: src/options_oggenc.c:138 -msgid "Qualite -1 (Moins bonne qualite)" +#: src/options_oggenc.c:137 +msgid "Quality -1 (Poor quality)" msgstr "" -#: src/options_oggenc.c:139 src/popup.c:1219 -msgid "Qualite 0" +#: src/options_oggenc.c:138 src/popup.c:1294 +msgid "Quality 0" msgstr "" -#: src/options_oggenc.c:140 src/popup.c:1219 -msgid "Qualite 1" +#: src/options_oggenc.c:139 src/popup.c:1294 +msgid "Quality 1" msgstr "" -#: src/options_oggenc.c:141 src/popup.c:1219 -msgid "Qualite 2" +#: src/options_oggenc.c:140 src/popup.c:1294 +msgid "Quality 2" msgstr "" -#: src/options_oggenc.c:142 -msgid "Qualite 3" +#: src/options_oggenc.c:141 +msgid "Quality 3" msgstr "" -#: src/options_oggenc.c:143 src/popup.c:1220 -msgid "Qualite 4" +#: src/options_oggenc.c:142 src/popup.c:1295 +msgid "Quality 4" msgstr "" -#: src/options_oggenc.c:144 src/popup.c:1220 -msgid "Qualite 5" +#: src/options_oggenc.c:143 src/popup.c:1295 +msgid "Quality 5" msgstr "" -#: src/options_oggenc.c:145 src/popup.c:1220 -msgid "Qualite 6" +#: src/options_oggenc.c:144 src/popup.c:1295 +msgid "Quality 6" msgstr "" -#: src/options_oggenc.c:146 src/popup.c:1220 -msgid "Qualite 7" +#: src/options_oggenc.c:145 src/popup.c:1295 +msgid "Quality 7" msgstr "" -#: src/options_oggenc.c:147 src/popup.c:1221 -msgid "Qualite 8" +#: src/options_oggenc.c:146 src/popup.c:1296 +msgid "Quality 8" msgstr "" -#: src/options_oggenc.c:148 src/popup.c:1221 -msgid "Qualite 9" +#: src/options_oggenc.c:147 src/popup.c:1296 +msgid "Quality 9" msgstr "" -#: src/options_oggenc.c:149 -msgid "Qualite 10 (Meilleure qualite)" +#: src/options_oggenc.c:148 +msgid "Quality 10 (Best quality)" msgstr "" -#: src/options_oggenc.c:179 src/options_wavpack.c:181 -#: src/options_wavpack.c:204 src/options_wavpack.c:227 src/popup.c:1223 -msgid "Oui" +#: src/options_oggenc.c:176 src/options_wavpack.c:173 +#: src/options_wavpack.c:194 src/options_wavpack.c:215 src/popup.c:1298 +msgid "Yes" msgstr "" -#: src/options_oggenc.c:180 src/options_wavpack.c:148 -#: src/options_wavpack.c:180 src/options_wavpack.c:203 -#: src/options_wavpack.c:226 src/options_wavpack.c:247 src/popup.c:1223 -msgid "Non" +#: src/options_oggenc.c:177 src/options_wavpack.c:142 +#: src/options_wavpack.c:172 src/options_wavpack.c:193 +#: src/options_wavpack.c:214 src/options_wavpack.c:233 src/popup.c:1298 +msgid "No" msgstr "" -#: src/options_oggenc.c:201 -msgid "Mono force" +#: src/options_oggenc.c:196 +msgid "Force mono" msgstr "" -#: src/options_oggenc.c:202 +#: src/options_oggenc.c:197 msgid "Stereo" msgstr "" -#: src/options_wavpack.c:100 -msgid "Mode normal" +#: src/options_wavpack.c:98 +msgid "Standard" msgstr "" -#: src/options_wavpack.c:101 -msgid "Mode rapide de compression" +#: src/options_wavpack.c:99 +msgid "Fast (Faster encode and decode)" msgstr "" -#: src/options_wavpack.c:102 -msgid "Bonne qualite de compression" +#: src/options_wavpack.c:100 +msgid "High quality (Better compression ratio)" msgstr "" -#: src/options_wavpack.c:103 -msgid "Meilleure qualite de compression" +#: src/options_wavpack.c:101 +msgid "Very high quality (Best compression but slowest)" msgstr "" -#: src/options_wavpack.c:129 +#: src/options_wavpack.c:125 msgid "stereo left/right" msgstr "" -#: src/options_wavpack.c:130 +#: src/options_wavpack.c:126 msgid "stereo mid/side" msgstr "" -#: src/options_wavpack.c:248 +#: src/options_wavpack.c:234 msgid "1 (fast / rapide)" msgstr "" -#: src/options_wavpack.c:253 +#: src/options_wavpack.c:239 msgid "6 (very slow / tres lent)" msgstr "" -#: src/play_file.c:108 -msgid "PAS de lecteur audio present" +#: src/play_file.c:107 +msgid "NO audio player present" msgstr "" -#: src/play_file.c:109 -msgid "Veuillez installez un lecteur audio." +#: src/play_file.c:108 +msgid "Please install an audio player." msgstr "" -#: src/poche_dir.c:430 +#: src/poche_dir.c:433 msgid "" "Utilisez le glisser / deplacer - Effacer une image avec Ctrl + " "Click" msgstr "" -#: src/poche_save.c:111 -msgid "Nom de fichier absent !!" +#: src/poche_save.c:117 +msgid "File name not found !!" msgstr "" -#: src/poche_save.c:112 src/poche_web.c:353 src/poche_web.c:375 -msgid "Pour resoudre ce probleme:" +#: src/poche_save.c:118 src/poche_web.c:330 src/poche_web.c:352 +msgid "To solve this problem :" msgstr "" -#: src/poche_save.c:115 -msgid "Saisissez un nom de fichier sans extention" +#: src/poche_save.c:121 +msgid "Enter a file name without extension" msgstr "" -#: src/poche_save.c:126 -msgid "Sauvegarde aux formats PDF et PostScript" +#: src/poche_save.c:131 +msgid "Saving to PDF" msgstr "" -#: src/poche_save.c:151 -msgid "Sauvegarde au format PNG" +#: src/poche_web.c:329 +msgid "No file found !" msgstr "" -#: src/poche_web.c:352 -msgid "Aucun fichier trouve !" +#: src/poche_web.c:333 src/poche_web.c:355 +msgid "Modify the search parameters and" msgstr "" -#: src/poche_web.c:356 -msgid "Modifiez la chaine de recherche et" +#: src/poche_web.c:335 src/poche_web.c:357 +msgid "start again." msgstr "" -#: src/poche_web.c:358 src/poche_web.c:380 -msgid "recommencez." +#: src/poche_web.c:351 +msgid "Search criteria away !!" msgstr "" -#: src/poche_web.c:374 -msgid "Critere de recherche absent !!" -msgstr "" - -#: src/poche_web.c:378 -msgid "Saisissez une chaine de recherche et" -msgstr "" - -#: src/poche_web.c:387 -msgid "[Recherche des fichiers images]" +#: src/poche_web.c:369 +msgid "[Search images files]" msgstr "" #: src/popup.c:81 src/popup.c:100 @@ -1002,144 +934,76 @@ msgid " Selection verticale " msgstr "" -#: src/popup.c:489 -msgid "1 piste" -msgstr "" - -#: src/popup.c:492 -msgid "2 pistes" -msgstr "" - -#: src/popup.c:495 -msgid "4 pistes" -msgstr "" - -#: src/popup.c:498 -msgid "6 pistes" -msgstr "" - -#: src/popup.c:504 src/popup.c:619 src/popup.c:716 -msgid "Valeur d'origine" -msgstr "" - -#: src/popup.c:592 -msgid " 8000 Hertz" -msgstr "" - -#: src/popup.c:595 -msgid "22000 Hertz" -msgstr "" - -#: src/popup.c:598 -msgid "32000 Hertz" -msgstr "" - -#: src/popup.c:601 -msgid "44056 Hertz" -msgstr "" - -#: src/popup.c:604 -msgid "44100 Hertz" -msgstr "" - -#: src/popup.c:607 -msgid "48000 Hertz" -msgstr "" - -#: src/popup.c:610 -msgid "88200 Hertz" -msgstr "" - -#: src/popup.c:613 -msgid "96000 Hertz" -msgstr "" - -#: src/popup.c:698 -msgid " 8 bits" -msgstr "" - -#: src/popup.c:701 -msgid "16 bits" -msgstr "" - -#: src/popup.c:704 -msgid "24 bits" -msgstr "" - -#: src/popup.c:707 -msgid "32 bits" -msgstr "" - -#: src/popup.c:710 -msgid "64 bits" +#: src/popup.c:504 src/popup.c:619 src/popup.c:715 +msgid "Original value" msgstr "" #: src/popup.c:765 -msgid "Selecteur suivant" +msgid "Next selector" msgstr "" #: src/popup.c:769 -msgid "Selecteur precedant" +msgid "Previous selector" msgstr "" #: src/popup.c:777 -msgid "Supprimer la plage active" +msgid "Delete the active range" msgstr "" -#: src/popup.c:849 -msgid "Retourner horizontalement" +#: src/popup.c:850 +msgid "Flip Horizontal" msgstr "" -#: src/popup.c:853 -msgid "Retourner verticalement" +#: src/popup.c:854 +msgid "Flip Vertical" msgstr "" -#: src/popup.c:861 -msgid "Image au premier plan" +#: src/popup.c:862 +msgid "Foreground image" msgstr "" -#: src/popup.c:865 -msgid "Image au dessus" +#: src/popup.c:866 +msgid "Image above" msgstr "" -#: src/popup.c:869 -msgid "Image en dessous" +#: src/popup.c:870 +msgid "Image below" msgstr "" -#: src/popup.c:873 -msgid "Image au dernier plan" +#: src/popup.c:874 +msgid "Image to the background" msgstr "" -#: src/popup.c:881 -msgid "Effacer l'image" +#: src/popup.c:882 +msgid "Clear image" msgstr "" -#: src/popup.c:918 -msgid "Supprimer l'image de la liste" +#: src/popup.c:920 +msgid "Remove image from the list" msgstr "" -#: src/popup.c:1036 -msgid "V0 [ meilleure qualite ]" +#: src/popup.c:1111 +msgid "V0 [ best quality ]" msgstr "" -#: src/popup.c:1036 src/popup.c:1039 -msgid "V4 [ defaut ]" +#: src/popup.c:1111 src/popup.c:1114 +msgid "V4 [ default ]" msgstr "" -#: src/popup.c:1036 -msgid "V9 [ moins bonne qualite ]" +#: src/popup.c:1111 +msgid "V9 [ Lower quality ]" msgstr "" -#: src/popup.c:1219 -msgid "Qualite -1 [ Moins bonne qualite ]" +#: src/popup.c:1294 +msgid "Quality -1 [ Lower quality ]" msgstr "" -#: src/popup.c:1220 -msgid "Qualite 3 [ Defaut ]" +#: src/popup.c:1295 +msgid "Quality 3 [ Defaut ]" msgstr "" -#: src/popup.c:1221 -msgid "Qualite 10 [ Meilleure qualite ]" +#: src/popup.c:1296 +msgid "Quality 10 [ Best Quality ]" msgstr "" #: src/prg_init.c:85 @@ -1231,27 +1095,27 @@ msgstr "" #: src/prg_init.c:357 -msgid " ... les paquets: deb " +msgid " ... Packets: deb " msgstr "" #: src/prg_init.c:363 -msgid " ... les paquets: tgz " +msgid " ... Packets: tgz " msgstr "" #: src/prg_init.c:369 -msgid " ... les paquets: fpm " +msgid " ... Packets: fpm " msgstr "" #: src/prg_init.c:375 -msgid " ... les paquets: rpm " +msgid " ... Packets: rpm " msgstr "" #: src/prg_init.c:381 -msgid " ... les paquets: pkg.tar.xz " +msgid " ... Packets: pkg.tar.xz " msgstr "" #: src/prg_init.c:387 -msgid " ... les paquets: ? " +msgid " ... Packets: ? " msgstr "" #: src/prg_init.c:623 @@ -1259,7 +1123,7 @@ msgstr "" #: src/prg_init.c:637 -msgid "Paquet" +msgid "Packets" msgstr "" #: src/prg_init.c:652 @@ -1267,272 +1131,320 @@ msgstr "" #: src/scan.c:259 -msgid "PACKAGE dvd+rw-tools ABSENT" +msgid "PACKAGE dvd+rw-tools is missing" msgstr "" #: src/scan.c:260 -msgid "Le package 'dvd+rw-tools' est absent" +msgid "The package 'imagemagick' is missing" msgstr "" #: src/scan.c:262 -msgid "de votre systeme !" +msgid "on your system !" msgstr "" -#: src/scan.c:264 -msgid "Veuillez l'installer car j'ai besoin de" +#: src/scan.c:264 src/split.c:438 +msgid "Please install it and resume" msgstr "" #: src/scan.c:266 -msgid "'dvd+rw-mediainfo' pour identifier le(s)" +msgid "'Dvd + rw-mediainfo' to identify the" msgstr "" #: src/scan.c:268 -msgid "lecteur(s) de cd / dvd." +msgid "reader of cd / dvd." msgstr "" -#: src/split.c:279 +#: src/split.c:297 msgid "" -"Menu: Click droit / Ajout plage: Click bouton centre / Zoom: Ctrl+Scroll" +"Menu: right click / Adding track: Click the center button / Zoom: Ctrl" +"+Scroll" msgstr "" -#: src/split.c:282 -msgid "Ajout plage: Click bouton centre / Zoom: Ctrl+Scroll" +#: src/split.c:300 +msgid "Adding track: Click the center button / Zoom: Ctrl+Scroll" msgstr "" -#: src/split.c:286 -msgid "" -"Pret pour l'import d'un fichier CUE, WAV, FLAC, OGG, MP3, APE, WMA" +#: src/split.c:304 +msgid "Ready for imports and a CUE file, WAV, FLAC, OGG, MP3, APE, WMA" msgstr "" -#: src/split.c:356 src/split.c:385 -msgid "Ce fichier appartient a XCFA" +#: src/split.c:378 src/split.c:407 +msgid "This file belongs XCFA" msgstr "" -#: src/split.c:357 src/split.c:386 -msgid "Selectionnez un autre fichier." +#: src/split.c:379 src/split.c:408 +msgid "Select another file." msgstr "" -#: src/split.c:365 -msgid "Fichier vide" +#: src/split.c:387 +msgid "Empty file" msgstr "" -#: src/split.c:366 -msgid "Le fichier ne contient aucune donnee !!!" +#: src/split.c:388 +msgid "The file contains no data !!!" msgstr "" -#: src/split.c:411 -msgid "Sox et Mplayer absents" +#: src/split.c:433 +msgid "Sox and Mplayer not found" msgstr "" -#: src/split.c:412 -msgid "Sox et Mplayer sont absents de votre" +#: src/split.c:434 +msgid "Sox et Mplayer are not found" msgstr "" -#: src/split.c:414 -msgid "configuration." +#: src/split.c:436 +msgid "in your configuration." msgstr "" -#: src/split.c:416 -msgid "Veuillez les installer pour pouvoir continuer." +#: src/split.c:491 +msgid "Error file select" msgstr "" -#: src/split.c:467 -msgid "Erreur de choix de fichier" +#: src/split.c:492 +msgid "Please select a file type of MP3 WAV OGG FLAC APE" msgstr "" -#: src/split.c:468 -msgid "Veuillez selectionner un fichier de type WAV FLAC MP3 OGG APE" +#: src/split.c:530 src/split.c:602 +msgid "Wrong type of file" msgstr "" -#: src/split.c:505 src/split.c:579 -msgid "Mauvais type de fichier" -msgstr "" - -#: src/split.c:506 src/split.c:580 +#: src/split.c:531 src/split.c:603 msgid "" -"Les types de fichiers acceptes\n" -"sont: WAV FLAC MP3 OGG APE WMA CUE" +"File types accepted\n" +"sare: WAV FLAC MP3 OGG APE WMA CUE" msgstr "" -#: src/split_conv.c:313 src/split_conv.c:330 -msgid "Erreur SOX" +#: src/split_conv.c:316 src/split_conv.c:333 +msgid "SOX Error" msgstr "" -#: src/split_conv.c:314 src/split_conv.c:331 -msgid "Le programme SOX de votre distribution" +#: src/split_conv.c:317 src/split_conv.c:334 +msgid "The SOX program on your distribution" msgstr "" -#: src/split_conv.c:316 src/split_conv.c:333 -msgid "a generer une erreur pendant la conversion." +#: src/split_conv.c:319 src/split_conv.c:336 +msgid "has generated an error during conversion." msgstr "" #: src/split_cue.c:116 -msgid "Erreur de lecture !" +msgid "Misreading !" msgstr "" -#: src/split_cue.c:177 src/split_cue.c:187 src/split_cue.c:197 -msgid "Erreur" +#: src/split_cue.c:177 src/split_cue.c:187 src/split_cue.c:196 +msgid "Error" msgstr "" #: src/split_cue.c:178 -msgid "Aucun fichier de musique associe au cue-file !" +msgid "No music file associated with the cue-file" msgstr "" #: src/split_cue.c:188 -msgid "Pas de fichier WAV dans le cue-file !" +msgid "No WAV file in the cue-file" msgstr "" -#: src/split_cue.c:198 -msgid "Aucun fichier de musique associe dans le dossier" +#: src/split_cue.c:197 +msgid "No music file in the folder associated" msgstr "" -#: src/split_cue.c:200 -msgid "du cue-file" +#: src/split_cue.c:199 +msgid "of cue-file" msgstr "" -#: src/split_cue.c:294 -msgid "Erreur de donnees dans le fichier CUE" +#: src/split_cue.c:293 +msgid "Data errors in the CUE file" msgstr "" -#: src/split_cue.c:295 -msgid "La solution est d'importer le fichier de" +#: src/split_cue.c:294 +msgid "The solution is to import the file" msgstr "" -#: src/split_cue.c:297 -msgid "musique qui sera reconnu et pre-decoupe" +#: src/split_cue.c:296 +msgid "music that will be recognized and pre-cutting" msgstr "" -#: src/split_cue.c:299 -msgid "dans le module Split." +#: src/split_cue.c:298 +msgid "in the split module." msgstr "" -#: src/split_cue.c:301 -msgid "Il ne restera qu'a ajuster les plages pour" +#: src/split_cue.c:300 +msgid "We will just adjust to the beaches" msgstr "" -#: src/split_cue.c:303 -msgid "generer un nouveau cue-file ou des decoupes" +#: src/split_cue.c:302 +msgid "generate a new cue-file or cuts" msgstr "" -#: src/split_cue.c:305 -msgid "correspondant aux plages." +#: src/split_cue.c:304 +msgid "corresponding to the beaches." msgstr "" #: src/split_selector.c:136 -msgid "Suppression pendant la lecture impossible" +msgid "Deleting not during playback" msgstr "" -#: src/split_selector.c:229 src/split_selector.c:235 src/split_selector.c:289 -#: src/split_selector.c:295 src/split_selector.c:352 src/split_selector.c:359 -#: src/split_selector.c:429 src/split_selector.c:435 -msgid "Temps inferieur a 5 secondes entre marqueur et curseur !" +#: src/split_selector.c:231 src/split_selector.c:237 src/split_selector.c:291 +#: src/split_selector.c:297 src/split_selector.c:354 src/split_selector.c:361 +#: src/split_selector.c:431 src/split_selector.c:437 +msgid "Time of less than 5 seconds between marker and cursor !" msgstr "" -#: src/translate.c:51 -msgid "Fichier" +#: src/web.c:173 src/web.c:234 +msgid "No web browser" msgstr "" -#: src/translate.c:52 -msgid "Quitter" +#: src/web.c:174 src/web.c:235 +msgid "No Web access: no web browser" msgstr "" -#: src/translate.c:53 -msgid "Outils" +#: src/web.c:176 src/web.c:237 +msgid "found in your system." msgstr "" -#: src/translate.c:54 -msgid "Visibilite des champs" +#: src/web.c:178 src/web.c:239 +msgid "Please install a web browser." msgstr "" -#: src/translate.c:55 -msgid "Aide" +#: src/web.c:188 +msgid "You need to enable web access" msgstr "" -#: src/translate.c:56 -msgid "A propos" +#: src/web.c:249 +msgid "Application is missing." msgstr "" -#: src/translate.c:57 src/translate.c:67 -msgid "Lecture" +#: src/web.c:250 +msgid "Please install : " +msgstr "" + +#: src/win_about.c:124 +msgid " Xcfa on the web" +msgstr "" + +#: src/win_about.c:174 +msgid "" +"\n" +"Au tout debut:\n" +"\n" +"Serres Patrick, Hamann Regis, Fabien Gregis, @Dzef, @alteo_gange, \n" +"@Leonux, @zarer, @Shankarius, @bishop, @Ludo, @Patachonf,\n" +"... ;-)\n" +"\n" +"" +msgstr "" + +#: src/win_scan.c:170 +msgid "Waiting ..." +msgstr "" + +#: glade/xcfa.glade:66 glade/xcfa.glade:2533 +msgid "File" +msgstr "" + +#: glade/xcfa.glade:75 +msgid "Quit" +msgstr "" + +#: glade/xcfa.glade:89 +msgid "Tools" msgstr "" -#: src/translate.c:58 -msgid " Choix du peripherique / Lecture du DVD " +#: glade/xcfa.glade:99 +msgid "Visibility fields" msgstr "" -#: src/translate.c:59 src/translate.c:69 src/translate.c:125 -msgid " Destination des fichiers " +#: glade/xcfa.glade:112 +msgid "Help" msgstr "" -#: src/translate.c:60 src/translate.c:70 +#: glade/xcfa.glade:121 +msgid "About" +msgstr "" + +#: glade/xcfa.glade:224 +msgid "Read" +msgstr "" + +#: glade/xcfa.glade:252 +msgid " Choosing the peripheral / DVD playback " +msgstr "" + +#: glade/xcfa.glade:303 glade/xcfa.glade:921 +msgid " File Destination " +msgstr "" + +#: glade/xcfa.glade:359 glade/xcfa.glade:1009 msgid " Eject " msgstr "" -#: src/translate.c:61 src/translate.c:92 -msgid " Normaliser " +#: glade/xcfa.glade:434 +msgid " Normalize " msgstr "" -#: src/translate.c:62 -msgid "Deplier" +#: glade/xcfa.glade:494 +msgid "Unfold" msgstr "" -#: src/translate.c:63 -msgid "Replier" +#: glade/xcfa.glade:548 +msgid "Fold" msgstr "" -#: src/translate.c:64 +#: glade/xcfa.glade:649 msgid " Vers 2CH: Sub / Ambiance " msgstr "" -#: src/translate.c:65 src/translate.c:98 -msgid "Extraire" +#: glade/xcfa.glade:705 +msgid "Extraction" msgstr "" -#: src/translate.c:66 +#: glade/xcfa.glade:756 msgid " DVD " msgstr "" -#: src/translate.c:68 -msgid " Choix du peripherique / Lecture du CD " +#: glade/xcfa.glade:842 +msgid "Lecture" +msgstr "" + +#: glade/xcfa.glade:870 +msgid " Choosing the peripheral / CD playback " msgstr "" -#: src/translate.c:71 -msgid "Titre:" +#: glade/xcfa.glade:1065 +msgid "Title:" msgstr "" -#: src/translate.c:72 +#: glade/xcfa.glade:1077 msgid "Album:" msgstr "" -#: src/translate.c:73 -msgid "Artiste:" +#: glade/xcfa.glade:1089 +msgid "Artist:" msgstr "" -#: src/translate.c:74 -msgid " Annee:" +#: glade/xcfa.glade:1101 +msgid "Comment:" msgstr "" -#: src/translate.c:75 -msgid " Genre:" +#: glade/xcfa.glade:1113 +msgid " Year:" msgstr "" -#: src/translate.c:76 -msgid " Piste:" +#: glade/xcfa.glade:1125 +msgid " Genre:" msgstr "" -#: src/translate.c:77 -msgid " *.m3u et xspf: " +#: glade/xcfa.glade:1137 +msgid " Track:" msgstr "" -#: src/translate.c:78 -msgid "Commentaire:" +#: glade/xcfa.glade:1149 +msgid " *.m3u et xspf: " msgstr "" -#: src/translate.c:79 -msgid " Modification des tags Freedb " +#: glade/xcfa.glade:1287 +msgid "Editing tags Freedb" msgstr "" -#: src/translate.c:80 +#: glade/xcfa.glade:1302 msgid "" "%a [ %a=\"Artist\" ]\n" "\n" @@ -1547,7 +1459,7 @@ "caractere %" msgstr "" -#: src/translate.c:81 +#: glade/xcfa.glade:1312 msgid "" "%a - artiste %b - titre " "de l'album %c - numero de la piste\n" @@ -1559,1186 +1471,1160 @@ "b> - Tetsumaki lower" msgstr "" -#: src/translate.c:82 -msgid " Arrangement des titres du CD " +#: glade/xcfa.glade:1346 +msgid " Arrangement of CD titles" msgstr "" -#: src/translate.c:83 -msgid "Creation d'un fichier unique au format: " +#: glade/xcfa.glade:1382 +msgid "Creation of a single file format: " msgstr "" -#: src/translate.c:84 -msgid " et dont le nom sera: " +#: glade/xcfa.glade:1430 +msgid " and whose name will be: " msgstr "" -#: src/translate.c:85 -msgid "Ecriture du fichier cue" +#: glade/xcfa.glade:1461 +msgid "Writing the cue file" msgstr "" -#: src/translate.c:86 -msgid " Au moins deux selections colonne Wav " +#: glade/xcfa.glade:1484 +msgid " At least two selections column Wav " msgstr "" -#: src/translate.c:87 +#: glade/xcfa.glade:1514 msgid "" -"Creation d'un fichier cue\n" -"unique depuis une lecture\n" -"du cd audio" +"\n" +"Creating a cue file from a single\n" +"reading audio cd\n" msgstr "" -#: src/translate.c:88 -msgid "Creation fichier cue uniquement" +#: glade/xcfa.glade:1562 +msgid "File Creation cue only" msgstr "" -#: src/translate.c:89 +#: glade/xcfa.glade:1597 msgid " Creation Cue cd " msgstr "" -#: src/translate.c:90 -msgid " Creation d'un fichier unique " +#: glade/xcfa.glade:1625 +msgid "  Creation of a single file" msgstr "" -#: src/translate.c:91 -msgid "Gestion des tags, titres et fichiers cue" +#: glade/xcfa.glade:1638 +msgid "Management of tags, titles and cue files" msgstr "" -#: src/translate.c:93 +#: glade/xcfa.glade:1688 +msgid " normalize " +msgstr "" + +#: glade/xcfa.glade:1749 msgid "definit le serveur a contacter pour les recherches titre" msgstr "" -#: src/translate.c:94 +#: glade/xcfa.glade:1788 msgid "Parametres par defaut" msgstr "" -#: src/translate.c:96 -msgid "Choix parmis les differentes bases de donnees pour le CD." +#: glade/xcfa.glade:1887 +msgid "DiscId" msgstr "" -#: src/translate.c:97 -msgid "DiscId" +#: glade/xcfa.glade:1946 +msgid "Extract" msgstr "" -#: src/translate.c:99 +#: glade/xcfa.glade:2053 msgid " CD " msgstr "" -#: src/translate.c:100 src/translate.c:124 -msgid " Importer " +#: glade/xcfa.glade:2135 glade/xcfa.glade:3271 +msgid " Import " msgstr "" -#: src/translate.c:101 -msgid " Destination des conversions " +#: glade/xcfa.glade:2190 +msgid " Destination conversions " msgstr "" -#: src/translate.c:102 -msgid " Nettoyer " +#: glade/xcfa.glade:2266 +msgid " Clean up " msgstr "" -#: src/translate.c:103 src/translate.c:107 +#: glade/xcfa.glade:2389 msgid "Appliquer les modifications" msgstr "" -#: src/translate.c:104 -msgid " Normalise: " +#: glade/xcfa.glade:2444 +msgid " Normalize: " msgstr "" -#: src/translate.c:105 -msgid " Choix niveau dBFS: " +#: glade/xcfa.glade:2477 +msgid " Level selection dBFS: " msgstr "" -#: src/translate.c:106 src/translate.c:123 -msgid " Fichiers " +#: glade/xcfa.glade:2615 +msgid "Apply changes" msgstr "" -#: src/translate.c:108 +#: glade/xcfa.glade:2651 msgid " Wav " msgstr "" -#: src/translate.c:109 src/translate.c:121 -msgid "Appliquer" +#: glade/xcfa.glade:2735 +msgid "Apply" msgstr "" -#: src/translate.c:110 -msgid "Effacer" +#: glade/xcfa.glade:2789 +msgid "Delete" msgstr "" -#: src/translate.c:111 +#: glade/xcfa.glade:2826 msgid " Mp3-Ogg " msgstr "" -#: src/translate.c:112 -msgid "Titre:" +#: glade/xcfa.glade:2875 +msgid "Title:" msgstr "" -#: src/translate.c:113 +#: glade/xcfa.glade:2886 msgid "Album:" msgstr "" -#: src/translate.c:114 -msgid "Artiste:" +#: glade/xcfa.glade:2897 +msgid "Artist:" msgstr "" -#: src/translate.c:115 -msgid "Commentaire:" +#: glade/xcfa.glade:2908 +msgid "Comment:" msgstr "" -#: src/translate.c:116 -msgid " Annee:" +#: glade/xcfa.glade:2919 +msgid " Year:" msgstr "" -#: src/translate.c:117 +#: glade/xcfa.glade:2930 msgid " Genre:" msgstr "" -#: src/translate.c:118 -msgid " Piste:" +#: glade/xcfa.glade:2941 +msgid " Track:" msgstr "" -#: src/translate.c:119 +#: glade/xcfa.glade:2952 msgid " Modif.:" msgstr "" -#: src/translate.c:120 +#: glade/xcfa.glade:3078 msgid "0" msgstr "" -#: src/translate.c:122 src/translate.c:309 +#: glade/xcfa.glade:3102 +msgid "Apply " +msgstr "" + +#: glade/xcfa.glade:3160 glade/xcfa.glade:10210 msgid " Tags " msgstr "" -#: src/translate.c:126 +#: glade/xcfa.glade:3190 +msgid " Files " +msgstr "" + +#: glade/xcfa.glade:3322 +msgid "   File Destination " +msgstr "" + +#: glade/xcfa.glade:3494 msgid "Lecture de 5 secondes apres le marqueur de debut" msgstr "" -#: src/translate.c:127 +#: glade/xcfa.glade:3546 msgid "Index de debut" msgstr "" -#: src/translate.c:128 src/translate.c:135 src/translate.c:138 +#: glade/xcfa.glade:3547 glade/xcfa.glade:3813 glade/xcfa.glade:3874 msgid "00h00m00s" msgstr "" -#: src/translate.c:129 +#: glade/xcfa.glade:3600 msgid "lecture" msgstr "" -#: src/translate.c:130 +#: glade/xcfa.glade:3653 msgid "Pause" msgstr "" -#: src/translate.c:131 +#: glade/xcfa.glade:3712 msgid "Index de lecture" msgstr "" -#: src/translate.c:132 src/translate.c:171 +#: glade/xcfa.glade:3713 glade/xcfa.glade:4767 msgid "label" msgstr "" -#: src/translate.c:133 +#: glade/xcfa.glade:3760 msgid "Lecture de 5 secondes avant le marqueur de fin" msgstr "" -#: src/translate.c:134 +#: glade/xcfa.glade:3812 msgid "Index de fin" msgstr "" -#: src/translate.c:136 +#: glade/xcfa.glade:3860 msgid "Plage" msgstr "" -#: src/translate.c:137 +#: glade/xcfa.glade:3873 msgid "Duree de la plage active" msgstr "" -#: src/translate.c:139 +#: glade/xcfa.glade:3955 msgid "Suprimer tous les marqueurs pour les remplacer par un marqueur unique" msgstr "" -#: src/translate.c:140 +#: glade/xcfa.glade:4044 msgid "Le fichier CUE sera enregistre vers 'Destination des fichiers'." msgstr "" -#: src/translate.c:141 -msgid "Production fichier Cue" +#: glade/xcfa.glade:4073 +msgid "Production Cue file" msgstr "" -#: src/translate.c:142 +#: glade/xcfa.glade:4098 msgid "Le resultat du Split sera dirige vers 'Destination des fichiers'." msgstr "" -#: src/translate.c:143 +#: glade/xcfa.glade:4127 msgid "Split" msgstr "" -#: src/translate.c:144 +#: glade/xcfa.glade:4188 msgid " Split " msgstr "" -#: src/translate.c:145 +#: glade/xcfa.glade:4253 msgid "Importation du titre du CD." msgstr "" -#: src/translate.c:146 -msgid "Titre CD" +#: glade/xcfa.glade:4276 +msgid "Title CD" msgstr "" -#: src/translate.c:147 +#: glade/xcfa.glade:4296 msgid "Choix d'une nouvelle police." msgstr "" -#: src/translate.c:148 +#: glade/xcfa.glade:4318 msgid "Texte gras." msgstr "" -#: src/translate.c:149 +#: glade/xcfa.glade:4340 msgid "Texte italique." msgstr "" -#: src/translate.c:150 -msgid "" -"Apres une lecture de CD et un ajout d'etiquette, ce menu permet la mise en " -"forme des titres, auteurs ..." -msgstr "" - -#: src/translate.c:151 +#: glade/xcfa.glade:4375 msgid "Ajouter du texte editable." msgstr "" -#: src/translate.c:152 -msgid "Texte" +#: glade/xcfa.glade:4430 +msgid "Text" msgstr "" -#: src/translate.c:153 +#: glade/xcfa.glade:4462 msgid "Saisissez ici un critere de recherche d'images." msgstr "" -#: src/translate.c:154 +#: glade/xcfa.glade:4484 msgid "Importation des images depuis le Web." msgstr "" -#: src/translate.c:155 -msgid "Import images web" +#: glade/xcfa.glade:4509 +msgid "Import web images " msgstr "" -#: src/translate.c:156 +#: glade/xcfa.glade:4578 msgid "Supprimer l'image en selection" msgstr "" -#: src/translate.c:157 +#: glade/xcfa.glade:4600 msgid "AJouter de nouvelles images." msgstr "" -#: src/translate.c:158 +#: glade/xcfa.glade:4606 msgid "Ouvre un fichier" msgstr "" -#: src/translate.c:159 +#: glade/xcfa.glade:4623 msgid "Enregistrer la page au format png." msgstr "" -#: src/translate.c:160 +#: glade/xcfa.glade:4629 msgid "Sauvegarde le fichier" msgstr "" -#: src/translate.c:161 +#: glade/xcfa.glade:4646 msgid "Diminution de l'echelle." msgstr "" -#: src/translate.c:162 +#: glade/xcfa.glade:4652 msgid "Reduit l'agrandissement" msgstr "" -#: src/translate.c:163 +#: glade/xcfa.glade:4669 msgid "Echelle a 100%." msgstr "" -#: src/translate.c:164 +#: glade/xcfa.glade:4675 msgid "Remet l'echelle a 100%" msgstr "" -#: src/translate.c:165 +#: glade/xcfa.glade:4692 msgid "Augmentation de l'echelle." msgstr "" -#: src/translate.c:166 +#: glade/xcfa.glade:4698 msgid "Augmente l'agrandissement" msgstr "" -#: src/translate.c:167 +#: glade/xcfa.glade:4715 msgid "Echelle compatible avec la taille de la fenetre." msgstr "" -#: src/translate.c:168 +#: glade/xcfa.glade:4721 msgid "Adapte l'echelle a la taille de la fenetre" msgstr "" -#: src/translate.c:169 +#: glade/xcfa.glade:4738 msgid "Emplacement de sauvegarde des fichiers." msgstr "" -#: src/translate.c:170 +#: glade/xcfa.glade:4752 msgid "Nom (sans extention) du fichier a sauvegarder." msgstr "" -#: src/translate.c:172 +#: glade/xcfa.glade:4815 msgid " Pochette " msgstr "" -#: src/translate.c:173 +#: glade/xcfa.glade:4861 msgid "Nice" msgstr "" -#: src/translate.c:174 -msgid " Priorite systeme " +#: glade/xcfa.glade:4896 +msgid " Priority system " msgstr "" -#: src/translate.c:175 +#: glade/xcfa.glade:4935 msgid "" -"Indiquez ici le dossier sur votre systeme qui servira de lieu\n" -"de stockage provisoire pendant les differentes conversions.\n" +"\n" +"Enter here the folder on your system that will serve as\n" +"temporary storage for the different conversions.\n" msgstr "" -#: src/translate.c:176 -msgid " Dossier provisoire des conversions " +#: glade/xcfa.glade:4971 +msgid " Provisional file conversions " msgstr "" -#: src/translate.c:177 +#: glade/xcfa.glade:5017 msgid "button" msgstr "" -#: src/translate.c:178 -msgid " Jouer une musique en fin de tache " +#: glade/xcfa.glade:5038 +msgid " Playing a job end music " msgstr "" -#: src/translate.c:179 +#: glade/xcfa.glade:5058 msgid " General " msgstr "" -#: src/translate.c:180 +#: glade/xcfa.glade:5100 msgid "cdparanoia" msgstr "" -#: src/translate.c:181 +#: glade/xcfa.glade:5120 msgid "cdparanoia mode expert" msgstr "" -#: src/translate.c:182 +#: glade/xcfa.glade:5140 msgid "cdparanoia mode expert multi passes" msgstr "" -#: src/translate.c:183 +#: glade/xcfa.glade:5168 msgid "cdda2wav / icedax" msgstr "" -#: src/translate.c:184 +#: glade/xcfa.glade:5194 msgid " Extraction cd-audio avec: " msgstr "" -#: src/translate.c:185 +#: glade/xcfa.glade:5268 msgid "HomePage" msgstr "" -#: src/translate.c:186 +#: glade/xcfa.glade:5323 msgid "ManPage " msgstr "" -#: src/translate.c:187 +#: glade/xcfa.glade:5352 msgid " Web cdparanoia " msgstr "" -#: src/translate.c:188 +#: glade/xcfa.glade:5414 msgid "" "Le fichier LogExpertMode.txt sera cree dans le dossier des " "extractions" msgstr "" -#: src/translate.c:189 -msgid "" -"Generation d'un rapport pour: cdparanoia mode expert multi passes" +#: glade/xcfa.glade:5431 +msgid "Generation of a report for: cdparanoia mode expert multi passes" msgstr "" -#: src/translate.c:190 +#: glade/xcfa.glade:5467 msgid "" -"%a - artiste %b - titre " +"%a - artist %b - titre " "de l'album %c - numero de la piste\n" "%d - titre de la chanson %e - " -"annee %g - genre\n" +"year %g - genre\n" "%na - no accent %Tl " "- Tetsumaki lower\n" -"%u - remplacement de caracteres: %u(AB=C) %u( =_)" +"%u - replacement characters: %u(AB=C) %u( =_)" msgstr "" -#: src/translate.c:191 +#: glade/xcfa.glade:5536 msgid " Dossier de stockage " msgstr "" -#: src/translate.c:192 +#: glade/xcfa.glade:5567 msgid " CD " msgstr "" -#: src/translate.c:193 +#: glade/xcfa.glade:5615 msgid "ABR / CBR / VBR / VBR-NEW" msgstr "" -#: src/translate.c:194 +#: glade/xcfa.glade:5660 glade/xcfa.glade:6295 msgid "Debit" msgstr "" -#: src/translate.c:195 +#: glade/xcfa.glade:5705 glade/xcfa.glade:6317 msgid "Mode" msgstr "" -#: src/translate.c:196 +#: glade/xcfa.glade:5747 msgid " Lame (fichier mp3): " msgstr "" -#: src/translate.c:197 src/translate.c:213 src/translate.c:225 -#: src/translate.c:238 src/translate.c:255 src/translate.c:266 -#: src/translate.c:280 src/translate.c:294 +#: glade/xcfa.glade:5827 glade/xcfa.glade:6466 glade/xcfa.glade:6941 +#: glade/xcfa.glade:7469 glade/xcfa.glade:8200 glade/xcfa.glade:8659 +#: glade/xcfa.glade:9192 glade/xcfa.glade:9753 msgid "Par defaut" msgstr "" -#: src/translate.c:198 +#: glade/xcfa.glade:5848 msgid " Options LAME " msgstr "" -#: src/translate.c:199 src/translate.c:227 src/translate.c:268 +#: glade/xcfa.glade:5909 glade/xcfa.glade:7023 glade/xcfa.glade:8741 msgid "Site officiel" msgstr "" -#: src/translate.c:200 +#: glade/xcfa.glade:5964 msgid "Wiki mp3 " msgstr "" -#: src/translate.c:201 +#: glade/xcfa.glade:6020 msgid "Wiki " msgstr "" -#: src/translate.c:202 +#: glade/xcfa.glade:6076 msgid "ManPage " msgstr "" -#: src/translate.c:203 +#: glade/xcfa.glade:6105 msgid " Web Lame " msgstr "" -#: src/translate.c:204 src/translate.c:218 src/translate.c:231 -#: src/translate.c:242 src/translate.c:260 src/translate.c:271 -#: src/translate.c:286 +#: glade/xcfa.glade:6181 glade/xcfa.glade:6709 glade/xcfa.glade:7238 +#: glade/xcfa.glade:7644 glade/xcfa.glade:8442 glade/xcfa.glade:8901 +#: glade/xcfa.glade:9491 msgid "[" msgstr "" -#: src/translate.c:205 src/translate.c:219 src/translate.c:232 -#: src/translate.c:243 src/translate.c:261 src/translate.c:272 -#: src/translate.c:287 +#: glade/xcfa.glade:6194 glade/xcfa.glade:6722 glade/xcfa.glade:7251 +#: glade/xcfa.glade:7657 glade/xcfa.glade:8455 glade/xcfa.glade:8914 +#: glade/xcfa.glade:9504 msgid "string option interne" msgstr "" -#: src/translate.c:206 src/translate.c:220 src/translate.c:233 -#: src/translate.c:244 src/translate.c:262 src/translate.c:273 -#: src/translate.c:288 +#: glade/xcfa.glade:6209 glade/xcfa.glade:6737 glade/xcfa.glade:7266 +#: glade/xcfa.glade:7672 glade/xcfa.glade:8470 glade/xcfa.glade:8929 +#: glade/xcfa.glade:9519 msgid "]" msgstr "" -#: src/translate.c:207 -msgid "" -" Options experts, definies par l'utilisateur - lame (wav -> mp3) " +#: glade/xcfa.glade:6234 +msgid " Experts options defined by the user- lame (wav -> mp3) " msgstr "" -#: src/translate.c:208 +#: glade/xcfa.glade:6254 msgid " Mp3 " msgstr "" -#: src/translate.c:209 -msgid " Mode" +#: glade/xcfa.glade:6306 +msgid "Mode flux (streaming)" msgstr "" -#: src/translate.c:210 -msgid " Mode flux (streaming)" -msgstr "" - -#: src/translate.c:211 -msgid " Debit" -msgstr "" - -#: src/translate.c:212 +#: glade/xcfa.glade:6386 msgid " Oggenc (fichier ogg): " msgstr "" -#: src/translate.c:214 +#: glade/xcfa.glade:6487 msgid " Options OGGENC " msgstr "" -#: src/translate.c:215 +#: glade/xcfa.glade:6548 msgid "Wiki " msgstr "" -#: src/translate.c:216 src/translate.c:258 src/translate.c:284 -#: src/translate.c:298 +#: glade/xcfa.glade:6604 glade/xcfa.glade:8337 glade/xcfa.glade:9386 +#: glade/xcfa.glade:9947 msgid "ManPage" msgstr "" -#: src/translate.c:217 +#: glade/xcfa.glade:6633 msgid " Web Oggenc " msgstr "" -#: src/translate.c:221 -msgid "" -" Options experts, definies par l'utilisateur - oggenc (wav -> ogg) " +#: glade/xcfa.glade:6762 +msgid " Experts options defined by the user - oggenc (wav -> ogg) " msgstr "" -#: src/translate.c:222 +#: glade/xcfa.glade:6782 msgid " Oggenc " msgstr "" -#: src/translate.c:223 +#: glade/xcfa.glade:6824 msgid "Taux de compression" msgstr "" -#: src/translate.c:224 +#: glade/xcfa.glade:6861 msgid " Flac (fichier flac): " msgstr "" -#: src/translate.c:226 +#: glade/xcfa.glade:6962 msgid " Options FLAC " msgstr "" -#: src/translate.c:228 src/translate.c:269 +#: glade/xcfa.glade:7078 glade/xcfa.glade:8796 msgid "Framasoft " msgstr "" -#: src/translate.c:229 +#: glade/xcfa.glade:7133 msgid "ManPage " msgstr "" -#: src/translate.c:230 +#: glade/xcfa.glade:7162 msgid " Web Flac " msgstr "" -#: src/translate.c:234 -msgid "" -" Options experts, definies par l'utilisateur - flac (wav -> flac) " +#: glade/xcfa.glade:7291 +msgid " Experts options defined by the user- flac (wav -> flac) " msgstr "" -#: src/translate.c:235 +#: glade/xcfa.glade:7311 msgid " Flac " msgstr "" -#: src/translate.c:236 +#: glade/xcfa.glade:7353 msgid " Qualite" msgstr "" -#: src/translate.c:237 +#: glade/xcfa.glade:7389 msgid " Mac (fichier ape): " msgstr "" -#: src/translate.c:239 +#: glade/xcfa.glade:7490 msgid " Options MAC " msgstr "" -#: src/translate.c:240 +#: glade/xcfa.glade:7546 msgid "Wiki" msgstr "" -#: src/translate.c:241 +#: glade/xcfa.glade:7568 msgid " Web Mac " msgstr "" -#: src/translate.c:245 -msgid " Options experts, definies par l'utilisateur - mac (wav -> ape) " +#: glade/xcfa.glade:7697 +msgid " Experts options defined by the user - mac (wav -> ape) " msgstr "" -#: src/translate.c:246 +#: glade/xcfa.glade:7717 msgid " Mac " msgstr "" -#: src/translate.c:247 +#: glade/xcfa.glade:7765 msgid "Compression" msgstr "" -#: src/translate.c:248 +#: glade/xcfa.glade:7817 msgid "Son" msgstr "" -#: src/translate.c:249 +#: glade/xcfa.glade:7869 msgid "Mode hybride" msgstr "" -#: src/translate.c:250 +#: glade/xcfa.glade:7921 msgid "Fichier de correction" msgstr "" -#: src/translate.c:251 +#: glade/xcfa.glade:7973 msgid "Compression maximum" msgstr "" -#: src/translate.c:252 +#: glade/xcfa.glade:8025 msgid "Signature MD5" msgstr "" -#: src/translate.c:253 +#: glade/xcfa.glade:8077 msgid "Extra encode processing" msgstr "" -#: src/translate.c:254 +#: glade/xcfa.glade:8120 msgid " WavPack (fichier wv): " msgstr "" -#: src/translate.c:256 +#: glade/xcfa.glade:8221 msgid " Options WAVPACK " msgstr "" -#: src/translate.c:257 +#: glade/xcfa.glade:8282 msgid "Wiki " msgstr "" -#: src/translate.c:259 +#: glade/xcfa.glade:8366 msgid " Web Wavpack " msgstr "" -#: src/translate.c:263 -msgid "" -" Options experts, definies par l'utilisateur - wavpack (wav -> wv) " +#: glade/xcfa.glade:8495 +msgid " Experts options defined by the user - wavpack (wav -> wv) " msgstr "" -#: src/translate.c:264 +#: glade/xcfa.glade:8515 msgid " Wavpack " msgstr "" -#: src/translate.c:265 +#: glade/xcfa.glade:8579 msgid " MusePack (fichier mpc): " msgstr "" -#: src/translate.c:267 +#: glade/xcfa.glade:8680 msgid " Options MUSEPACK " msgstr "" -#: src/translate.c:270 +#: glade/xcfa.glade:8825 msgid " Web Musepack " msgstr "" -#: src/translate.c:274 -msgid "" -" Options experts, definies par l'utilisateur - musepack (wav -> mpc) " +#: glade/xcfa.glade:8954 +msgid " Experts options defined by the user- musepack (wav -> mpc) " msgstr "" -#: src/translate.c:275 +#: glade/xcfa.glade:8974 msgid " Musepack " msgstr "" -#: src/translate.c:276 -msgid " Qualite VBR / Debit ABR" +#: glade/xcfa.glade:9016 +msgid "Conteneur" msgstr "" -#: src/translate.c:277 -msgid " VBR / ABR" +#: glade/xcfa.glade:9027 +msgid "VBR / ABR" msgstr "" -#: src/translate.c:278 -msgid " Conteneur" +#: glade/xcfa.glade:9038 +msgid "Qualite VBR / Debit ABR" msgstr "" -#: src/translate.c:279 +#: glade/xcfa.glade:9112 msgid " Faac (fichier .m4a): " msgstr "" -#: src/translate.c:281 +#: glade/xcfa.glade:9213 msgid " Options FAAC " msgstr "" -#: src/translate.c:282 src/translate.c:296 +#: glade/xcfa.glade:9274 glade/xcfa.glade:9835 msgid "Site officiel " msgstr "" -#: src/translate.c:283 src/translate.c:297 +#: glade/xcfa.glade:9330 glade/xcfa.glade:9891 msgid "Web Info " msgstr "" -#: src/translate.c:285 +#: glade/xcfa.glade:9415 msgid " Web Faac " msgstr "" -#: src/translate.c:289 -msgid "" -" Options experts, definies par l'utilisateur - faac (wav -> m4a) " +#: glade/xcfa.glade:9544 +msgid " Experts options defined by the user - faac (wav -> m4a) " msgstr "" -#: src/translate.c:290 +#: glade/xcfa.glade:9564 msgid " Faac " msgstr "" -#: src/translate.c:291 -msgid " Stereo: Qualite en kbit/s" +#: glade/xcfa.glade:9606 +msgid "Mono: Qualite en kbit/s" msgstr "" -#: src/translate.c:292 -msgid " Mono: Qualite en kbit/s" +#: glade/xcfa.glade:9617 +msgid "Stereo: Qualite en kbit/s" msgstr "" -#: src/translate.c:293 +#: glade/xcfa.glade:9673 msgid " AacplusEnc (fichier .aac): " msgstr "" -#: src/translate.c:295 +#: glade/xcfa.glade:9774 msgid " Options AacPlusEnc " msgstr "" -#: src/translate.c:299 +#: glade/xcfa.glade:9976 msgid " Web AacPlusEnc " msgstr "" -#: src/translate.c:300 +#: glade/xcfa.glade:10021 msgid " AacplusEnc " msgstr "" -#: src/translate.c:301 +#: glade/xcfa.glade:10051 msgid "Artiste" msgstr "" -#: src/translate.c:302 src/translate.c:330 +#: glade/xcfa.glade:10070 glade/xcfa_win_treeview.glade:95 msgid "Titre" msgstr "" -#: src/translate.c:303 +#: glade/xcfa.glade:10089 msgid "Album" msgstr "" -#: src/translate.c:304 +#: glade/xcfa.glade:10108 msgid "Numero" msgstr "" -#: src/translate.c:305 +#: glade/xcfa.glade:10127 msgid "Genre" msgstr "" -#: src/translate.c:306 +#: glade/xcfa.glade:10146 msgid "Annee" msgstr "" -#: src/translate.c:307 +#: glade/xcfa.glade:10165 msgid "Commentaire" msgstr "" -#: src/translate.c:308 +#: glade/xcfa.glade:10190 msgid " Exportation de " msgstr "" -#: src/translate.c:310 +#: glade/xcfa.glade:10226 msgid " Preferences " msgstr "" -#: src/translate.c:311 +#: glade/xcfa.glade:10289 msgid "SCAN" msgstr "" -#: src/translate.c:312 +#: glade/xcfa.glade:10303 msgid " Installation " msgstr "" -#: src/translate.c:313 -msgid " Votre systeme utilise ... " +#: glade/xcfa.glade:10338 +msgid " Your system use ... " msgstr "" -#: src/translate.c:314 +#: glade/xcfa.glade:10375 msgid "" "\n" -"Pour installer les programmes externes requis,\n" -"veuillez utiliser l'installateur de votre distribution Gnu/Linux.\n" +"To install the required external programs\n" +"Please use the installer to your distribution Gnu / Linux.\n" msgstr "" -#: src/translate.c:315 +#: glade/xcfa.glade:10393 msgid "" "Le programme XCFA_INSTALL_ALL ecrit en Perl vous sera utile en ligne de " "commande pour une installation des programmes complementaire." msgstr "" -#: src/translate.c:316 +#: glade/xcfa.glade:10419 msgid " Informations " msgstr "" -#: src/translate.c:317 -msgid " Application externes " +#: glade/xcfa.glade:10443 +msgid " External application " msgstr "" -#: src/translate.c:318 src/translate.c:321 +#: glade/xcfa.glade:10514 glade/xcfa.glade:10618 msgid "parametres:" msgstr "" -#: src/translate.c:319 +#: glade/xcfa.glade:10527 msgid "" "\n" " konqueror : newTab\n" " iceweasel : -new-window -new-tab \n" msgstr "" -#: src/translate.c:320 +#: glade/xcfa.glade:10548 msgid "Navigateur" msgstr "" -#: src/translate.c:322 +#: glade/xcfa.glade:10648 msgid "Lecteurs audio" msgstr "" -#: src/translate.c:323 -msgid " Navigateurs / Lecteurs audio " +#: glade/xcfa.glade:10669 +msgid "  Browsers / Audio Players " msgstr "" -#: src/translate.c:324 +#: glade/xcfa.glade:10692 msgid " Applications externes " msgstr "" -#: src/translate.c:325 -msgid "Scan en cours ..." -msgstr "" - -#: src/translate.c:326 -msgid "Scan du support en cours ..." -msgstr "" - -#: src/translate.c:327 -msgid "Detail extraction mode expert" -msgstr "" - -#: src/translate.c:328 -msgid "Modification des champs" +#: glade/xcfa_win_about.glade:7 +msgid "About X Convert File Audio" msgstr "" -#: src/translate.c:329 -msgid "" -"\n" -"Modification des champs\n" +#: glade/xcfa_win_about.glade:103 +msgid "Author" msgstr "" -#: src/translate.c:337 src/translate.c:356 src/translate.c:377 -#: src/translate.c:389 src/translate.c:400 src/translate.c:408 -msgid " Visibilite " +#: glade/xcfa_win_about.glade:139 +msgid "Licence" msgstr "" -#: src/translate.c:338 src/translate.c:357 src/translate.c:378 -#: src/translate.c:390 src/translate.c:401 src/translate.c:409 -msgid "Nom a gauche" +#: glade/xcfa_win_about.glade:163 +msgid " Informations " msgstr "" -#: src/translate.c:339 src/translate.c:358 src/translate.c:379 -#: src/translate.c:391 src/translate.c:402 src/translate.c:410 -msgid "Nom au centre" +#: glade/xcfa_win_about.glade:198 +msgid " Machine " msgstr "" -#: src/translate.c:340 src/translate.c:359 src/translate.c:380 -#: src/translate.c:392 src/translate.c:403 src/translate.c:411 -msgid "Nom a droite" +#: glade/xcfa_win_about.glade:333 +msgid "Ingenieurs du son\n" msgstr "" -#: src/translate.c:341 -msgid "DVD" +#: glade/xcfa_win_about.glade:350 +msgid "" +"\n" +"Graphisme\n" msgstr "" -#: src/translate.c:346 src/translate.c:367 -msgid "Wavpack" +#: glade/xcfa_win_about.glade:370 +msgid "" +"Traduction Anglaise\n" +"\n" +"\n" msgstr "" -#: src/translate.c:350 src/translate.c:371 -msgid "Musepack" +#: glade/xcfa_win_about.glade:391 +msgid "" +"\n" +"Traduction Allemande" msgstr "" -#: src/translate.c:360 -msgid "CD" +#: glade/xcfa_win_about.glade:628 +msgid "" +"\n" +"Codeur Xcfa" msgstr "" -#: src/translate.c:375 -msgid "Replaygain" +#: glade/xcfa_win_about.glade:665 +msgid "" +"\n" +"ElementSpeak pour Xcfa " msgstr "" -#: src/translate.c:381 -msgid "CONVERSIONS" +#: glade/xcfa_win_about.glade:702 +msgid "" +"\n" +"Codeur pages Web" msgstr "" -#: src/translate.c:382 -msgid "Hertz" +#: glade/xcfa_win_about.glade:739 +msgid "" +"\n" +"Traduction Italienne" msgstr "" -#: src/translate.c:383 -msgid "New Hertz" +#: glade/xcfa_win_about.glade:800 +msgid "" +"\n" +"\n" +"Pages a visiter\n" msgstr "" -#: src/translate.c:384 -msgid "Voie" +#: glade/xcfa_win_about.glade:1123 +msgid "Linux On The Root" msgstr "" -#: src/translate.c:385 -msgid "New Voie" +#: glade/xcfa_win_about.glade:1180 +msgid "Frugalware" msgstr "" -#: src/translate.c:386 -msgid "Bits" +#: glade/xcfa_win_about.glade:1237 +msgid "Road2Mayotte" msgstr "" -#: src/translate.c:387 -msgid "New Bits" +#: glade/xcfa_win_about.glade:1294 +msgid "La Linuxerie" msgstr "" -#: src/translate.c:393 -msgid "WAV" +#: glade/xcfa_win_about.glade:1351 +msgid "Tuxfamily" msgstr "" -#: src/translate.c:396 -msgid "New Bitrate" +#: glade/xcfa_win_about.glade:1408 +msgid "Framasoft" msgstr "" -#: src/translate.c:397 -msgid "Size" +#: glade/xcfa_win_about.glade:1465 +msgid "Ekd (EnKoDeur-Mixeur)" msgstr "" -#: src/translate.c:404 -msgid "MP3-OGG" +#: glade/xcfa_win_about.glade:1544 +msgid "Debian Multimedia" msgstr "" -#: src/translate.c:412 -msgid "TAGS" +#: glade/xcfa_win_about.glade:1598 +msgid "Je suis libre" msgstr "" -#: src/translate.c:413 -msgid "Selection globale" +#: glade/xcfa_win_about.glade:1705 +msgid "" +"\n" +"Forum\n" msgstr "" -#: src/translate.c:414 -msgid "Deselection globale" +#: glade/xcfa_win_about.glade:1825 +msgid "Forum Xcfa" msgstr "" -#: src/translate.c:415 -msgid "Retour" +#: glade/xcfa_win_about.glade:1879 +msgid "XCFA LinuxForen.de" msgstr "" -#: src/translate.c:416 -msgid "About X Convert File Audio" +#: glade/xcfa_win_about.glade:1929 +msgid "" +"\n" +"Documentation\n" msgstr "" -#: src/translate.c:417 -msgid "Author" +#: glade/xcfa_win_about.glade:2164 +msgid "Wiki Xcfa par Shankarius" msgstr "" -#: src/translate.c:418 -msgid "Licence" +#: glade/xcfa_win_about.glade:2219 +msgid "Doc Xcfa par Patachon" msgstr "" -#: src/translate.c:419 -msgid " Informations " +#: glade/xcfa_win_about.glade:2276 +msgid "Ogg Vorbis explique par Shankarius" msgstr "" -#: src/translate.c:420 -msgid " Machine " +#: glade/xcfa_win_about.glade:2333 +msgid "La normalisation expliquee par Dzef" msgstr "" -#: src/translate.c:421 -msgid "Ingenieurs du son\n" +#: glade/xcfa_win_about.glade:2390 +msgid "Xcfa sur Linux On The Root" msgstr "" -#: src/translate.c:422 -msgid "" -"\n" -"Graphisme\n" +#: glade/xcfa_win_about.glade:2433 +msgid " Contributions " msgstr "" -#: src/translate.c:423 -msgid "" -"Traduction Anglaise\n" -"\n" -"\n" +#: glade/xcfa_win_about.glade:2461 +msgid " License " msgstr "" -#: src/translate.c:424 -msgid "" -"\n" -"Traduction Allemande" +#: glade/xcfa_win_about.glade:2482 +msgid "OK" msgstr "" -#: src/translate.c:425 -msgid "" -"\n" -"Codeur Xcfa" +#: glade/xcfa_win_scan.glade:9 +msgid "Scan en cours ..." msgstr "" -#: src/translate.c:426 -msgid "" -"\n" -"ElementSpeak pour Xcfa " +#: glade/xcfa_win_scan.glade:77 +msgid "Scan du support en cours ..." msgstr "" -#: src/translate.c:427 -msgid "" -"\n" -"Codeur pages Web" +#: glade/xcfa_win_scan.glade:128 +msgid "Detail extraction mode expert" msgstr "" -#: src/translate.c:428 -msgid "" -"\n" -"Traduction Italienne" +#: glade/xcfa_win_treeview.glade:7 +msgid "Modification des champs" msgstr "" -#: src/translate.c:429 +#: glade/xcfa_win_treeview.glade:41 msgid "" "\n" -"\n" -"Pages a visiter\n" -msgstr "" - -#: src/translate.c:430 -msgid "Linux On The Root" -msgstr "" - -#: src/translate.c:431 -msgid "Frugalware" +"Modification des champs\n" msgstr "" -#: src/translate.c:432 -msgid "Road2Mayotte" +#: glade/xcfa_win_treeview.glade:129 +msgid "Temps" msgstr "" -#: src/translate.c:433 -msgid "La Linuxerie" +#: glade/xcfa_win_treeview.glade:163 +msgid "Choix" msgstr "" -#: src/translate.c:434 -msgid "Audioptimisation by Dzef" +#: glade/xcfa_win_treeview.glade:197 glade/xcfa_win_treeview.glade:577 +#: glade/xcfa_win_treeview.glade:995 glade/xcfa_win_treeview.glade:1260 +#: glade/xcfa_win_treeview.glade:1508 glade/xcfa_win_treeview.glade:1706 +msgid "Nom" msgstr "" -#: src/translate.c:435 -msgid "Tuxfamily" +#: glade/xcfa_win_treeview.glade:220 glade/xcfa_win_treeview.glade:600 +#: glade/xcfa_win_treeview.glade:1018 glade/xcfa_win_treeview.glade:1283 +#: glade/xcfa_win_treeview.glade:1531 glade/xcfa_win_treeview.glade:1732 +msgid " Visibilite " msgstr "" -#: src/translate.c:436 -msgid "Framasoft" +#: glade/xcfa_win_treeview.glade:250 glade/xcfa_win_treeview.glade:630 +#: glade/xcfa_win_treeview.glade:1048 glade/xcfa_win_treeview.glade:1313 +#: glade/xcfa_win_treeview.glade:1562 glade/xcfa_win_treeview.glade:1763 +msgid "Nom a gauche" msgstr "" -#: src/translate.c:437 -msgid "Ekd (EnKoDeur-Mixeur)" +#: glade/xcfa_win_treeview.glade:267 glade/xcfa_win_treeview.glade:647 +#: glade/xcfa_win_treeview.glade:1065 glade/xcfa_win_treeview.glade:1330 +#: glade/xcfa_win_treeview.glade:1579 glade/xcfa_win_treeview.glade:1780 +msgid "Nom au centre" msgstr "" -#: src/translate.c:438 -msgid "Bishop's page" +#: glade/xcfa_win_treeview.glade:286 glade/xcfa_win_treeview.glade:666 +#: glade/xcfa_win_treeview.glade:1084 glade/xcfa_win_treeview.glade:1349 +#: glade/xcfa_win_treeview.glade:1598 glade/xcfa_win_treeview.glade:1799 +msgid "Nom a droite" msgstr "" -#: src/translate.c:439 -msgid "Je suis libre" +#: glade/xcfa_win_treeview.glade:326 +msgid "DVD" msgstr "" -#: src/translate.c:440 -msgid "Debian Multimedia" +#: glade/xcfa_win_treeview.glade:373 glade/xcfa_win_treeview.glade:791 +msgid "Wav" msgstr "" -#: src/translate.c:441 -msgid "" -"\n" -"Forum\n" +#: glade/xcfa_win_treeview.glade:390 glade/xcfa_win_treeview.glade:808 +msgid "Flac" msgstr "" -#: src/translate.c:442 -msgid "XCFA Vorstellung " +#: glade/xcfa_win_treeview.glade:407 glade/xcfa_win_treeview.glade:825 +msgid "Ape" msgstr "" -#: src/translate.c:443 -msgid "XCFA LinuxForen.de" +#: glade/xcfa_win_treeview.glade:424 glade/xcfa_win_treeview.glade:842 +msgid "Wavpack" msgstr "" -#: src/translate.c:444 -msgid "Forum Xcfa" +#: glade/xcfa_win_treeview.glade:441 glade/xcfa_win_treeview.glade:859 +msgid "Ogg" msgstr "" -#: src/translate.c:445 -msgid "" -"\n" -"Documentation\n" +#: glade/xcfa_win_treeview.glade:458 glade/xcfa_win_treeview.glade:876 +msgid "M4a" msgstr "" -#: src/translate.c:446 -msgid "Wiki Xcfa par Shankarius" +#: glade/xcfa_win_treeview.glade:475 glade/xcfa_win_treeview.glade:893 +msgid "Aac" msgstr "" -#: src/translate.c:447 -msgid "Doc Xcfa par Patachon" +#: glade/xcfa_win_treeview.glade:492 glade/xcfa_win_treeview.glade:910 +msgid "Musepack" msgstr "" -#: src/translate.c:448 -msgid "Ogg Vorbis explique par Shankarius" +#: glade/xcfa_win_treeview.glade:509 glade/xcfa_win_treeview.glade:927 +msgid "Mp3" msgstr "" -#: src/translate.c:449 -msgid "La normalisation expliquee par Dzef" +#: glade/xcfa_win_treeview.glade:526 +msgid "Num" msgstr "" -#: src/translate.c:450 -msgid "Xcfa sur Linux On The Root" +#: glade/xcfa_win_treeview.glade:709 +msgid "CD" msgstr "" -#: src/translate.c:451 -msgid " Contributions " +#: glade/xcfa_win_treeview.glade:978 +msgid "Replaygain" msgstr "" -#: src/translate.c:452 -msgid " License " +#: glade/xcfa_win_treeview.glade:1127 +msgid "CONVERSIONS" msgstr "" -#: src/translate.c:453 -msgid "OK" +#: glade/xcfa_win_treeview.glade:1158 +msgid "Hertz" msgstr "" -#: src/web.c:173 src/web.c:234 -msgid "PAS de navigateur present" +#: glade/xcfa_win_treeview.glade:1175 +msgid "New Hertz" msgstr "" -#: src/web.c:174 -msgid "L'acces au web est impossible car aucun navigateur" +#: glade/xcfa_win_treeview.glade:1192 +msgid "Voie" msgstr "" -#: src/web.c:176 -msgid "n'est present dans votre configuration." +#: glade/xcfa_win_treeview.glade:1209 +msgid "New Voie" msgstr "" -#: src/web.c:178 -msgid "Veuillez installez un navigateur." +#: glade/xcfa_win_treeview.glade:1226 +msgid "Bits" msgstr "" -#: src/web.c:188 -msgid "Vous devez ouvrir l'acces internet" +#: glade/xcfa_win_treeview.glade:1243 +msgid "New Bits" msgstr "" -#: src/web.c:236 -msgid " L'acces au web est impossible car aucun navigateur" +#: glade/xcfa_win_treeview.glade:1392 +msgid "WAV" msgstr "" -#: src/web.c:238 -msgid " n'est present dans votre configuration." +#: glade/xcfa_win_treeview.glade:1440 +msgid "Bitrate" msgstr "" -#: src/web.c:240 -msgid " Veuillez installez un navigateur." +#: glade/xcfa_win_treeview.glade:1457 +msgid "New Bitrate" msgstr "" -#: src/web.c:250 -msgid "L'application est absente." +#: glade/xcfa_win_treeview.glade:1641 +msgid "MP3-OGG" msgstr "" -#: src/web.c:251 -msgid "Veuillez installer : " +#: glade/xcfa_win_treeview.glade:1842 +msgid "TAGS" msgstr "" -#: src/win_about.c:130 -msgid " Xcfa sur le web" +#: glade/xcfa_win_treeview.glade:1894 +msgid "Selection globale" msgstr "" -#: src/win_about.c:180 -msgid "" -"\n" -"Au tout debut:\n" -"\n" -"Serres Patrick, Hamann Regis, Fabien Gregis, @Dzef, @alteo_gange, \n" -"@Leonux, @zarer, @Shankarius, @bishop, @Ludo, @Patachonf,\n" -"... ;-)\n" -"\n" -"" +#: glade/xcfa_win_treeview.glade:1948 +msgid "Deselection globale" msgstr "" -#: src/win_scan.c:161 -msgid "Waiting ..." +#: glade/xcfa_win_treeview.glade:2009 +msgid "Retour" msgstr "" diff -Nru xcfa-4.3.8/po_cli/boldquot.sed xcfa-5.0.1/po_cli/boldquot.sed --- xcfa-4.3.8/po_cli/boldquot.sed 1970-01-01 00:00:00.000000000 +0000 +++ xcfa-5.0.1/po_cli/boldquot.sed 2014-11-11 21:10:08.000000000 +0000 @@ -0,0 +1,10 @@ +s/"\([^"]*\)"/“\1”/g +s/`\([^`']*\)'/‘\1’/g +s/ '\([^`']*\)' / ‘\1’ /g +s/ '\([^`']*\)'$/ ‘\1’/g +s/^'\([^`']*\)' /‘\1’ /g +s/“”/""/g +s/“/“/g +s/”/”/g +s/‘/‘/g +s/’/’/g diff -Nru xcfa-4.3.8/po_cli/ChangeLog xcfa-5.0.1/po_cli/ChangeLog --- xcfa-4.3.8/po_cli/ChangeLog 1970-01-01 00:00:00.000000000 +0000 +++ xcfa-5.0.1/po_cli/ChangeLog 2014-11-11 21:10:08.000000000 +0000 @@ -0,0 +1,12 @@ +2014-11-11 gettextize + + * Makefile.in.in: New file, from gettext-0.19.2. + * boldquot.sed: New file, from gettext-0.19.2. + * en@boldquot.header: New file, from gettext-0.19.2. + * en@quot.header: New file, from gettext-0.19.2. + * insert-header.sin: New file, from gettext-0.19.2. + * quot.sed: New file, from gettext-0.19.2. + * remove-potcdate.sin: New file, from gettext-0.19.2. + * Rules-quot: New file, from gettext-0.19.2. + * POTFILES.in: New file. + Binary files /tmp/U9mREQ24T4/xcfa-4.3.8/po_cli/de.gmo and /tmp/9PqOMEw8oW/xcfa-5.0.1/po_cli/de.gmo differ diff -Nru xcfa-4.3.8/po_cli/de.po xcfa-5.0.1/po_cli/de.po --- xcfa-4.3.8/po_cli/de.po 1970-01-01 00:00:00.000000000 +0000 +++ xcfa-5.0.1/po_cli/de.po 2015-02-07 16:34:36.000000000 +0000 @@ -0,0 +1,400 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2014 Free Software Foundation, Inc. +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR , 2014. +# +msgid "" +msgstr "" +"Project-Id-Version: xcfa_cli 0.0.6\n" +"Report-Msgid-Bugs-To: http://www.xcfa.tuxfamily.org/\n" +"POT-Creation-Date: 2015-02-07 17:34+0100\n" +"PO-Revision-Date: 2015-02-07 10:45+0100\n" +"Last-Translator: MyName \n" +"Language-Team: german\n" +"Language: de\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: Poedit 1.7.3\n" + +#: src_cli/main.c:313 +#, c-format +msgid "" +"xcfa_cli is an implementation of xcfa in command line.\n" +"xcfa_cli is an application for conversion, normalization, reconfiguring wav " +"files and cut audio files ...\n" +"\n" +"What xcfa_cli can do:\n" +" - replaygain on files: flac, mp3, ogg, wavpack\n" +" - conversions:\n" +" - from files:\n" +" wav, flac, ape, wavpack, ogg, m4a, mpc, mp3, wma, shorten, rm, dts, " +"aif, ac3\t\t\n" +" - to files:\t\t\t\n" +" wav, flac, ape, wavpack, ogg, m4a, mpc, mp3, aac\n" +" - conversion settings for file management:\n" +" flac, ape, wavpack, ogg, m4a, aac, mpc, mp3\n" +" - management tags\n" +" - management cue wav file\n" +" - manipulation of the frequency, track and bit wav files\n" +" - standardization on files: wav, mp3, ogg\n" +" - cuts (split) wav files\n" +" - displaying information on files\n" +msgstr "" +"xcfa_cli ist eine Implementierung des xcfa in Befehlszeile ein.\n" +"xcfa_cli ist eine Anwendung für die Konvertierung, Normalisierung, zur " +"Neukonfiguration des wav Dateien und schneiden Audio-Dateien ...\n" +"\n" +"Was xcfa_cli Möglichkeiten:\n" +" - replaygain auf Dateien: flac, mp3, ogg, wavpack\n" +" - konvertierungen:\n" +" - von Dateien:\n" +" wav, flac, ape, wavpack, ogg, m4a, mpc, mp3, wma, shorten, rm, dts, " +"aif, ac3\t\t\n" +" - dateien:\t\t\t\n" +" wav, flac, ape, wavpack, ogg, m4a, mpc, mp3, aac\n" +" - konvertierungseinstellungen für die Dateiverwaltung:\n" +" flac, ape, wavpack, ogg, m4a, aac, mpc, mp3\n" +" - management-Tags\n" +" - management-Cue wav-Datei\n" +" - manipulation der Frequenz, Leichtathletik-Bit-WAV-Dateien\n" +" - standardisierung auf Dateien: wav, mp3, ogg\n" +" - schnitte (split) WAV-Dateien\n" +" - anzeigen von Informationen über Dateien\n" + +#: src_cli/main.c:338 +#, c-format +msgid "" +" --verbose Verbose mode\n" +" -h --help Print help mode and quit\n" +"\n" +" -i <\"file.type\"> --input <\"file.type\">\n" +" Input name file to convert in " +"inverted commas, by example: --input \"*.flac\"\n" +" Type input files: wav, flac, ape, " +"wavpack, ogg, m4a, mpc, mp3, wma, shorten, rm, dts, aif, ac3\n" +" -o --output \n" +" Destination folder. By default in " +"the source file folder.\n" +" -d --dest \n" +" Destination file: wav, flac, ape, " +"wavpack, ogg, m4a, mpc, mp3, aac\n" +" -r --recursion Recursive search\n" +" -e --ext2src Extract in the source folder. This " +"option is useful with '--recursion'\n" +" --nice Change the priority of running " +"processes in the interval: 0 .. 20\n" +"\n" +"Management options with default parameters:\n" +"\n" +" --op_flac <\"-5\">\n" +" --op_ape <\"c2000\">\n" +" --op_wavpack <\"-y -j1\">\n" +" --op_ogg <\"--quality=3\">\n" +" --op_m4a <\"-q 100\">\n" +" --op_aac <\"48\">\n" +" --op_mpc <\"--verbose --overwrite --insane\">\n" +" --op_mp3 <\"-h --nohist --noreplaygain -b 128\">\n" +"\n" +"Displays information about the files:\n" +"\n" +" --info_files Displays time, level dBFS, frequency/" +"track/quantification\n" +" --info_tags Displays tags\n" +" --info_head Displays head\n" +"\n" +"Management tags:\n" +"\n" +" --no_tag The tags will not be carried\n" +" --tag_album <\"tags\"> Tag of album\n" +" --tag_artist <\"tags\"> Tag of artist\n" +" --tag_title <\"tags\"> Tag of title\n" +" --tag_number <\"tags\"> Tag of number\n" +" --tag_genre <\"tags\"> Tag of genre\n" +" --tag_year <\"tags\"> Tag of year\n" +" --tag_comment <\"tags\"> Tag of comment\n" +" --tag_description <\"tags\"> Tag of description\n" +"\n" +"Management cue file:\n" +" -c --cue \n" +" info Provides information on a " +"WAV or CUE file.\n" +" extract Extract all tracks of a WAV " +"file.\n" +"\n" +"Management split:\n" +"\n" +" -s --split Mark the beginning of the file to be " +"cut.\n" +" -l --length Specifies the length of the file to " +"cut with the seconds parameter.\n" +"\n" +"Changing the settings of a WAV file:\n" +"\n" +" -f --frequency Changing the frequency: 8000, " +"22000, 32000, 44056, 44100, 48000, 88200, 96000 or other\n" +" -t --track Changing the number of tracks: 1, 2, " +"4, 6\n" +" -q --quantification Changing the quantification: 8, " +"16, 24, 32, 64\n" +"\n" +"Replaygain: dynamic modification for next files: FLAC, MP3, OGG, WAVPACK\n" +"\n" +" -g --replaygain \n" +" FLAC [ clear | album ]\n" +" MP3 [ clear | album | track ]\n" +" OGG [ clear | album | track ]\n" +" WAVPACK [ clear | album | track ]\n" +"\n" +"Normalize: static modification for next files: MP3, WAV, OGG\n" +" See an excellent article by @Dzef on standardization: http://ubunteros." +"tuxfamily.org/spip.php?article159\n" +"\n" +" --peak Action on a single file.\n" +" Maximum volume amplification for " +"each file:\n" +" Increase the overall level of the " +"signal so as to bring the level to 0 dBFS peak without changing dynamics.\n" +" --peak_album Action on a group of files.\n" +" Maximum volume boost for a group of " +"files in accordance with the level of differences between each of them.\n" +" If the maximum level of one or more " +"files is already at 0 dBFS, the level of all the selected files remain " +"unchanged\n" +" after normalization. So this mode " +"can be safely used almost systematically.\n" +" --mix_rms_album Action on a group of files.\n" +" Adjusting the average volume for a " +"group of files respecting average level of the differences between each of " +"them.\n" +" The selecting a value for a file " +"modifies the other files in the group.\n" +" --fix_rms Action on a single file.\n" +" Adjusting the average volume of each " +"file..\n" +"\n" +msgstr "" +" --verbose Verbose mode\n" +" -h --help Print help mode and quit\n" +"\n" +" -i <\"file.type\"> --input <\"file.type\">\n" +" Input name file to convert in " +"inverted commas, by example: --input \"*.flac\"\n" +" Type input files: wav, flac, ape, " +"wavpack, ogg, m4a, mpc, mp3, wma, shorten, rm, dts, aif, ac3\n" +" -o --output \n" +" Destination folder. By default in " +"the source file folder.\n" +" -d --dest \n" +" Destination file: wav, flac, ape, " +"wavpack, ogg, m4a, mpc, mp3, aac\n" +" -r --recursion Recursive search\n" +" -e --ext2src Extract in the source folder. This " +"option is useful with '--recursion'\n" +" --nice Change the priority of running " +"processes in the interval: 0 .. 20\n" +"\n" +"Management options with default parameters:\n" +"\n" +" --op_flac <\"-5\">\n" +" --op_ape <\"c2000\">\n" +" --op_wavpack <\"-y -j1\">\n" +" --op_ogg <\"--quality=3\">\n" +" --op_m4a <\"-q 100\">\n" +" --op_aac <\"48\">\n" +" --op_mpc <\"--verbose --overwrite --insane\">\n" +" --op_mp3 <\"-h --nohist --noreplaygain -b 128\">\n" +"\n" +"Displays information about the files:\n" +"\n" +" --info_files Displays time, level dBFS, frequency/" +"track/quantification\n" +" --info_tags Displays tags\n" +" --info_head Displays head\n" +"\n" +"Management tags:\n" +"\n" +" --no_tag The tags will not be carried\n" +" --tag_album <\"tags\"> Tag of album\n" +" --tag_artist <\"tags\"> Tag of artist\n" +" --tag_title <\"tags\"> Tag of title\n" +" --tag_number <\"tags\"> Tag of number\n" +" --tag_genre <\"tags\"> Tag of genre\n" +" --tag_year <\"tags\"> Tag of year\n" +" --tag_comment <\"tags\"> Tag of comment\n" +" --tag_description <\"tags\"> Tag of description\n" +"\n" +"Management cue file:\n" +" -c --cue \n" +" info Provides information on a " +"WAV or CUE file.\n" +" extract Extract all tracks of a WAV " +"file.\n" +"\n" +"Management split:\n" +"\n" +" -s --split Mark the beginning of the file to be " +"cut.\n" +" -l --length Specifies the length of the file to " +"cut with the seconds parameter.\n" +"\n" +"Changing the settings of a WAV file:\n" +"\n" +" -f --frequency Changing the frequency: 8000, " +"22000, 32000, 44056, 44100, 48000, 88200, 96000 or other\n" +" -t --track Changing the number of tracks: 1, 2, " +"4, 6\n" +" -q --quantification Changing the quantification: 8, " +"16, 24, 32, 64\n" +"\n" +"Replaygain: dynamic modification for next files: FLAC, MP3, OGG, WAVPACK\n" +"\n" +" -g --replaygain \n" +" FLAC [ clear | album ]\n" +" MP3 [ clear | album | track ]\n" +" OGG [ clear | album | track ]\n" +" WAVPACK [ clear | album | track ]\n" +"\n" +"Normalize: static modification for next files: MP3, WAV, OGG\n" +" See an excellent article by @Dzef on standardization: http://ubunteros." +"tuxfamily.org/spip.php?article159\n" +"\n" +" --peak Action on a single file.\n" +" Maximum volume amplification for " +"each file:\n" +" Increase the overall level of the " +"signal so as to bring the level to 0 dBFS peak without changing dynamics.\n" +" --peak_album Action on a group of files.\n" +" Maximum volume boost for a group of " +"files in accordance with the level of differences between each of them.\n" +" If the maximum level of one or more " +"files is already at 0 dBFS, the level of all the selected files remain " +"unchanged\n" +" after normalization. So this mode " +"can be safely used almost systematically.\n" +" --mix_rms_album Action on a group of files.\n" +" Adjusting the average volume for a " +"group of files respecting average level of the differences between each of " +"them.\n" +" The selecting a value for a file " +"modifies the other files in the group.\n" +" --fix_rms Action on a single file.\n" +" Adjusting the average volume of each " +"file..\n" +"\n" + +#: src_cli/main.c:431 +#, c-format +msgid "Example conversion:\n" +msgstr "Beispiel Konvertierung:\n" + +#: src_cli/main.c:438 +#, c-format +msgid "Conversion example with two inputs:\n" +msgstr "Umrechnungsbeispiel mit zwei eingängen:\n" + +#: src_cli/main.c:443 +#, c-format +msgid "Example split:\n" +msgstr "Beispiel split:\n" + +#: src_cli/main.c:450 +#, c-format +msgid "Example cue:\n" +msgstr "Beispiel cue:\n" + +#: src_cli/main.c:458 +#, c-format +msgid "Example setting wav:\n" +msgstr "Beispiel einstellung wav:\n" + +#: src_cli/main.c:463 +#, c-format +msgid "Example replaygain:\n" +msgstr "Beispiel replaygain:\n" + +#: src_cli/main.c:469 +#, c-format +msgid "Example normalize:\n" +msgstr "Beispiel normalisieren:\n" + +#: src_cli/main.c:478 +#, c-format +msgid "Example info:\n" +msgstr "Beispiel info:\n" + +#: src_cli/prg_init.c:54 +msgid " Decode ATSC A/52 audio streams" +msgstr " Decode ATSC A / 52-Kanal" + +#: src_cli/prg_init.c:62 +msgid " AAC+ encoder" +msgstr " AAC+ encoder" + +#: src_cli/prg_init.c:70 +msgid " Cherche des renseignements sur les formats mp3" +msgstr " Ich suche Informationen über mp3-Formate" + +#: src_cli/prg_init.c:78 +msgid " Audio Codeur freeware" +msgstr " Freeware Audio-Encoder" + +#: src_cli/prg_init.c:86 +msgid " MPEG-4 AAC decodeur" +msgstr " MPEG-4 AAC-Decoder" + +#: src_cli/prg_init.c:94 +msgid " Conversion wav : flac" +msgstr " Umwandlung wav : flac" + +#: src_cli/prg_init.c:102 +msgid " Conversion wav : mp3" +msgstr " Umwandlung wav : mp3" + +#: src_cli/prg_init.c:111 +msgid " Monkey's Audio Console Front End : APE" +msgstr " Monkey's Audio Console Front End : APE" + +#: src_cli/prg_init.c:120 src_cli/prg_init.c:128 +msgid " MusePack commandline utilities" +msgstr " MusePack commandline utilities" + +#: src_cli/prg_init.c:136 +msgid " Lecteur et extracteur" +msgstr " Spieler und Dunstabzug" + +#: src_cli/prg_init.c:144 +msgid " Replaygain pour les fichiers mp3" +msgstr " Für MP3-Dateien replaygain" + +#: src_cli/prg_init.c:152 +msgid " Normaliseur de fichier wav" +msgstr " Normalizer WAV-Datei" + +#: src_cli/prg_init.c:160 +msgid " A program to send desktop notifications" +msgstr " Ein Programm zur Desktop-Benachrichtigungen zu senden" + +#: src_cli/prg_init.c:168 +msgid " Forte compression au format wave" +msgstr " Starke Kompression im Wave-Format" + +#: src_cli/prg_init.c:176 +msgid " Decoupage de fichiers sans decodage" +msgstr " Cutting-Dateien ohne Dekodierung" + +#: src_cli/prg_init.c:184 +msgid " Transformation universelle de fichiers son" +msgstr " Universal-Datei ihre Umwandlung" + +#: src_cli/prg_init.c:192 +msgid " Conversion wav : ogg" +msgstr " Umwandlung wav : ogg" + +#: src_cli/prg_init.c:200 +msgid " Replaygain pour les fichiers ogg" +msgstr " Replaygain für ogg-Dateien" + +#: src_cli/prg_init.c:208 +msgid " WAVPACK Hybrid Lossless Audio Compressor" +msgstr " WAVPACK Hybrid Lossless Audio Compressor" diff -Nru xcfa-4.3.8/po_cli/en@boldquot.header xcfa-5.0.1/po_cli/en@boldquot.header --- xcfa-4.3.8/po_cli/en@boldquot.header 1970-01-01 00:00:00.000000000 +0000 +++ xcfa-5.0.1/po_cli/en@boldquot.header 2014-11-11 21:10:08.000000000 +0000 @@ -0,0 +1,25 @@ +# All this catalog "translates" are quotation characters. +# The msgids must be ASCII and therefore cannot contain real quotation +# characters, only substitutes like grave accent (0x60), apostrophe (0x27) +# and double quote (0x22). These substitutes look strange; see +# http://www.cl.cam.ac.uk/~mgk25/ucs/quotes.html +# +# This catalog translates grave accent (0x60) and apostrophe (0x27) to +# left single quotation mark (U+2018) and right single quotation mark (U+2019). +# It also translates pairs of apostrophe (0x27) to +# left single quotation mark (U+2018) and right single quotation mark (U+2019) +# and pairs of quotation mark (0x22) to +# left double quotation mark (U+201C) and right double quotation mark (U+201D). +# +# When output to an UTF-8 terminal, the quotation characters appear perfectly. +# When output to an ISO-8859-1 terminal, the single quotation marks are +# transliterated to apostrophes (by iconv in glibc 2.2 or newer) or to +# grave/acute accent (by libiconv), and the double quotation marks are +# transliterated to 0x22. +# When output to an ASCII terminal, the single quotation marks are +# transliterated to apostrophes, and the double quotation marks are +# transliterated to 0x22. +# +# This catalog furthermore displays the text between the quotation marks in +# bold face, assuming the VT100/XTerm escape sequences. +# Binary files /tmp/U9mREQ24T4/xcfa-4.3.8/po_cli/en_GB.gmo and /tmp/9PqOMEw8oW/xcfa-5.0.1/po_cli/en_GB.gmo differ diff -Nru xcfa-4.3.8/po_cli/en_GB.po xcfa-5.0.1/po_cli/en_GB.po --- xcfa-4.3.8/po_cli/en_GB.po 1970-01-01 00:00:00.000000000 +0000 +++ xcfa-5.0.1/po_cli/en_GB.po 2015-02-07 16:34:36.000000000 +0000 @@ -0,0 +1,399 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2014 Free Software Foundation, Inc. +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR , 2014. +# +msgid "" +msgstr "" +"Project-Id-Version: xcfa_cli 0.0.6\n" +"Report-Msgid-Bugs-To: http://www.xcfa.tuxfamily.org/\n" +"POT-Creation-Date: 2015-02-07 17:34+0100\n" +"PO-Revision-Date: 2014-11-11 22:10:09.622832\n" +"Last-Translator: MyName \n" +"Language-Team: english\n" +"Language: en_GB\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: src_cli/main.c:313 +#, c-format +msgid "" +"xcfa_cli is an implementation of xcfa in command line.\n" +"xcfa_cli is an application for conversion, normalization, reconfiguring wav " +"files and cut audio files ...\n" +"\n" +"What xcfa_cli can do:\n" +" - replaygain on files: flac, mp3, ogg, wavpack\n" +" - conversions:\n" +" - from files:\n" +" wav, flac, ape, wavpack, ogg, m4a, mpc, mp3, wma, shorten, rm, dts, " +"aif, ac3\t\t\n" +" - to files:\t\t\t\n" +" wav, flac, ape, wavpack, ogg, m4a, mpc, mp3, aac\n" +" - conversion settings for file management:\n" +" flac, ape, wavpack, ogg, m4a, aac, mpc, mp3\n" +" - management tags\n" +" - management cue wav file\n" +" - manipulation of the frequency, track and bit wav files\n" +" - standardization on files: wav, mp3, ogg\n" +" - cuts (split) wav files\n" +" - displaying information on files\n" +msgstr "" +"xcfa_cli is an implementation of xcfa in command line.\n" +"xcfa_cli is an application for conversion, normalization, reconfiguring wav " +"files and cut audio files ...\n" +"\n" +"What xcfa_cli can do:\n" +" - replaygain on files: flac, mp3, ogg, wavpack\n" +" - conversions:\n" +" - from files:\n" +" wav, flac, ape, wavpack, ogg, m4a, mpc, mp3, wma, shorten, rm, dts, " +"aif, ac3\t\t\n" +" - to files:\t\t\t\n" +" wav, flac, ape, wavpack, ogg, m4a, mpc, mp3, aac\n" +" - conversion settings for file management:\n" +" flac, ape, wavpack, ogg, m4a, aac, mpc, mp3\n" +" - management tags\n" +" - management cue wav file\n" +" - manipulation of the frequency, track and bit wav files\n" +" - standardization on files: wav, mp3, ogg\n" +" - cuts (split) wav files\n" +" - displaying information on files\n" + +#: src_cli/main.c:338 +#, c-format +msgid "" +" --verbose Verbose mode\n" +" -h --help Print help mode and quit\n" +"\n" +" -i <\"file.type\"> --input <\"file.type\">\n" +" Input name file to convert in " +"inverted commas, by example: --input \"*.flac\"\n" +" Type input files: wav, flac, ape, " +"wavpack, ogg, m4a, mpc, mp3, wma, shorten, rm, dts, aif, ac3\n" +" -o --output \n" +" Destination folder. By default in " +"the source file folder.\n" +" -d --dest \n" +" Destination file: wav, flac, ape, " +"wavpack, ogg, m4a, mpc, mp3, aac\n" +" -r --recursion Recursive search\n" +" -e --ext2src Extract in the source folder. This " +"option is useful with '--recursion'\n" +" --nice Change the priority of running " +"processes in the interval: 0 .. 20\n" +"\n" +"Management options with default parameters:\n" +"\n" +" --op_flac <\"-5\">\n" +" --op_ape <\"c2000\">\n" +" --op_wavpack <\"-y -j1\">\n" +" --op_ogg <\"--quality=3\">\n" +" --op_m4a <\"-q 100\">\n" +" --op_aac <\"48\">\n" +" --op_mpc <\"--verbose --overwrite --insane\">\n" +" --op_mp3 <\"-h --nohist --noreplaygain -b 128\">\n" +"\n" +"Displays information about the files:\n" +"\n" +" --info_files Displays time, level dBFS, frequency/" +"track/quantification\n" +" --info_tags Displays tags\n" +" --info_head Displays head\n" +"\n" +"Management tags:\n" +"\n" +" --no_tag The tags will not be carried\n" +" --tag_album <\"tags\"> Tag of album\n" +" --tag_artist <\"tags\"> Tag of artist\n" +" --tag_title <\"tags\"> Tag of title\n" +" --tag_number <\"tags\"> Tag of number\n" +" --tag_genre <\"tags\"> Tag of genre\n" +" --tag_year <\"tags\"> Tag of year\n" +" --tag_comment <\"tags\"> Tag of comment\n" +" --tag_description <\"tags\"> Tag of description\n" +"\n" +"Management cue file:\n" +" -c --cue \n" +" info Provides information on a " +"WAV or CUE file.\n" +" extract Extract all tracks of a WAV " +"file.\n" +"\n" +"Management split:\n" +"\n" +" -s --split Mark the beginning of the file to be " +"cut.\n" +" -l --length Specifies the length of the file to " +"cut with the seconds parameter.\n" +"\n" +"Changing the settings of a WAV file:\n" +"\n" +" -f --frequency Changing the frequency: 8000, " +"22000, 32000, 44056, 44100, 48000, 88200, 96000 or other\n" +" -t --track Changing the number of tracks: 1, 2, " +"4, 6\n" +" -q --quantification Changing the quantification: 8, " +"16, 24, 32, 64\n" +"\n" +"Replaygain: dynamic modification for next files: FLAC, MP3, OGG, WAVPACK\n" +"\n" +" -g --replaygain \n" +" FLAC [ clear | album ]\n" +" MP3 [ clear | album | track ]\n" +" OGG [ clear | album | track ]\n" +" WAVPACK [ clear | album | track ]\n" +"\n" +"Normalize: static modification for next files: MP3, WAV, OGG\n" +" See an excellent article by @Dzef on standardization: http://ubunteros." +"tuxfamily.org/spip.php?article159\n" +"\n" +" --peak Action on a single file.\n" +" Maximum volume amplification for " +"each file:\n" +" Increase the overall level of the " +"signal so as to bring the level to 0 dBFS peak without changing dynamics.\n" +" --peak_album Action on a group of files.\n" +" Maximum volume boost for a group of " +"files in accordance with the level of differences between each of them.\n" +" If the maximum level of one or more " +"files is already at 0 dBFS, the level of all the selected files remain " +"unchanged\n" +" after normalization. So this mode " +"can be safely used almost systematically.\n" +" --mix_rms_album Action on a group of files.\n" +" Adjusting the average volume for a " +"group of files respecting average level of the differences between each of " +"them.\n" +" The selecting a value for a file " +"modifies the other files in the group.\n" +" --fix_rms Action on a single file.\n" +" Adjusting the average volume of each " +"file..\n" +"\n" +msgstr "" +" --verbose Verbose mode\n" +" -h --help Print help mode and quit\n" +"\n" +" -i <\"file.type\"> --input <\"file.type\">\n" +" Input name file to convert in " +"inverted commas, by example: --input \"*.flac\"\n" +" Type input files: wav, flac, ape, " +"wavpack, ogg, m4a, mpc, mp3, wma, shorten, rm, dts, aif, ac3\n" +" -o --output \n" +" Destination folder. By default in " +"the source file folder.\n" +" -d --dest \n" +" Destination file: wav, flac, ape, " +"wavpack, ogg, m4a, mpc, mp3, aac\n" +" -r --recursion Recursive search\n" +" -e --ext2src Extract in the source folder. This " +"option is useful with '--recursion'\n" +" --nice Change the priority of running " +"processes in the interval: 0 .. 20\n" +"\n" +"Management options with default parameters:\n" +"\n" +" --op_flac <\"-5\">\n" +" --op_ape <\"c2000\">\n" +" --op_wavpack <\"-y -j1\">\n" +" --op_ogg <\"--quality=3\">\n" +" --op_m4a <\"-q 100\">\n" +" --op_aac <\"48\">\n" +" --op_mpc <\"--verbose --overwrite --insane\">\n" +" --op_mp3 <\"-h --nohist --noreplaygain -b 128\">\n" +"\n" +"Displays information about the files:\n" +"\n" +" --info_files Displays time, level dBFS, frequency/" +"track/quantification\n" +" --info_tags Displays tags\n" +" --info_head Displays head\n" +"\n" +"Management tags:\n" +"\n" +" --no_tag The tags will not be carried\n" +" --tag_album <\"tags\"> Tag of album\n" +" --tag_artist <\"tags\"> Tag of artist\n" +" --tag_title <\"tags\"> Tag of title\n" +" --tag_number <\"tags\"> Tag of number\n" +" --tag_genre <\"tags\"> Tag of genre\n" +" --tag_year <\"tags\"> Tag of year\n" +" --tag_comment <\"tags\"> Tag of comment\n" +" --tag_description <\"tags\"> Tag of description\n" +"\n" +"Management cue file:\n" +" -c --cue \n" +" info Provides information on a " +"WAV or CUE file.\n" +" extract Extract all tracks of a WAV " +"file.\n" +"\n" +"Management split:\n" +"\n" +" -s --split Mark the beginning of the file to be " +"cut.\n" +" -l --length Specifies the length of the file to " +"cut with the seconds parameter.\n" +"\n" +"Changing the settings of a WAV file:\n" +"\n" +" -f --frequency Changing the frequency: 8000, " +"22000, 32000, 44056, 44100, 48000, 88200, 96000 or other\n" +" -t --track Changing the number of tracks: 1, 2, " +"4, 6\n" +" -q --quantification Changing the quantification: 8, " +"16, 24, 32, 64\n" +"\n" +"Replaygain: dynamic modification for next files: FLAC, MP3, OGG, WAVPACK\n" +"\n" +" -g --replaygain \n" +" FLAC [ clear | album ]\n" +" MP3 [ clear | album | track ]\n" +" OGG [ clear | album | track ]\n" +" WAVPACK [ clear | album | track ]\n" +"\n" +"Normalize: static modification for next files: MP3, WAV, OGG\n" +" See an excellent article by @Dzef on standardization: http://ubunteros." +"tuxfamily.org/spip.php?article159\n" +"\n" +" --peak Action on a single file.\n" +" Maximum volume amplification for " +"each file:\n" +" Increase the overall level of the " +"signal so as to bring the level to 0 dBFS peak without changing dynamics.\n" +" --peak_album Action on a group of files.\n" +" Maximum volume boost for a group of " +"files in accordance with the level of differences between each of them.\n" +" If the maximum level of one or more " +"files is already at 0 dBFS, the level of all the selected files remain " +"unchanged\n" +" after normalization. So this mode " +"can be safely used almost systematically.\n" +" --mix_rms_album Action on a group of files.\n" +" Adjusting the average volume for a " +"group of files respecting average level of the differences between each of " +"them.\n" +" The selecting a value for a file " +"modifies the other files in the group.\n" +" --fix_rms Action on a single file.\n" +" Adjusting the average volume of each " +"file..\n" +"\n" + +#: src_cli/main.c:431 +#, c-format +msgid "Example conversion:\n" +msgstr "Example conversion:\n" + +#: src_cli/main.c:438 +#, c-format +msgid "Conversion example with two inputs:\n" +msgstr "Conversion example with two inputs:\n" + +#: src_cli/main.c:443 +#, c-format +msgid "Example split:\n" +msgstr "Example split:\n" + +#: src_cli/main.c:450 +#, c-format +msgid "Example cue:\n" +msgstr "Example cue:\n" + +#: src_cli/main.c:458 +#, c-format +msgid "Example setting wav:\n" +msgstr "Example setting wav:\n" + +#: src_cli/main.c:463 +#, c-format +msgid "Example replaygain:\n" +msgstr "Example replaygain:\n" + +#: src_cli/main.c:469 +#, c-format +msgid "Example normalize:\n" +msgstr "Example normalize:\n" + +#: src_cli/main.c:478 +#, c-format +msgid "Example info:\n" +msgstr "Example info:\n" + +#: src_cli/prg_init.c:54 +msgid " Decode ATSC A/52 audio streams" +msgstr " Decode ATSC A/52 audio streams" + +#: src_cli/prg_init.c:62 +msgid " AAC+ encoder" +msgstr " AAC+ encode" + +#: src_cli/prg_init.c:70 +msgid " Cherche des renseignements sur les formats mp3" +msgstr " Cherche des renseignements sur les formats mp3" + +#: src_cli/prg_init.c:78 +msgid " Audio Codeur freeware" +msgstr " Audio Codeur freeware" + +#: src_cli/prg_init.c:86 +msgid " MPEG-4 AAC decodeur" +msgstr " MPEG-4 AAC decodeu" + +#: src_cli/prg_init.c:94 +msgid " Conversion wav : flac" +msgstr " Conversion wav : flac" + +#: src_cli/prg_init.c:102 +msgid " Conversion wav : mp3" +msgstr " Conversion wav : mp3" + +#: src_cli/prg_init.c:111 +msgid " Monkey's Audio Console Front End : APE" +msgstr " Monkey's Audio Console Front End : APE" + +#: src_cli/prg_init.c:120 src_cli/prg_init.c:128 +msgid " MusePack commandline utilities" +msgstr " MusePack commandline utilities" + +#: src_cli/prg_init.c:136 +msgid " Lecteur et extracteur" +msgstr " Lecteur et extracteur" + +#: src_cli/prg_init.c:144 +msgid " Replaygain pour les fichiers mp3" +msgstr " Replaygain pour les fichiers mp3" + +#: src_cli/prg_init.c:152 +msgid " Normaliseur de fichier wav" +msgstr " Normaliseur de fichier wa" + +#: src_cli/prg_init.c:160 +msgid " A program to send desktop notifications" +msgstr " A program to send desktop notifications" + +#: src_cli/prg_init.c:168 +msgid " Forte compression au format wave" +msgstr " Forte compression au format wave" + +#: src_cli/prg_init.c:176 +msgid " Decoupage de fichiers sans decodage" +msgstr " Decoupage de fichiers sans decodage" + +#: src_cli/prg_init.c:184 +msgid " Transformation universelle de fichiers son" +msgstr " Transformation universelle de fichiers son" + +#: src_cli/prg_init.c:192 +msgid " Conversion wav : ogg" +msgstr " Conversion wav : og" + +#: src_cli/prg_init.c:200 +msgid " Replaygain pour les fichiers ogg" +msgstr " Replaygain pour les fichiers ogg" + +#: src_cli/prg_init.c:208 +msgid " WAVPACK Hybrid Lossless Audio Compressor" +msgstr " WAVPACK Hybrid Lossless Audio Compressor" Binary files /tmp/U9mREQ24T4/xcfa-4.3.8/po_cli/en.gmo and /tmp/9PqOMEw8oW/xcfa-5.0.1/po_cli/en.gmo differ diff -Nru xcfa-4.3.8/po_cli/en.po xcfa-5.0.1/po_cli/en.po --- xcfa-4.3.8/po_cli/en.po 1970-01-01 00:00:00.000000000 +0000 +++ xcfa-5.0.1/po_cli/en.po 2015-02-07 16:34:36.000000000 +0000 @@ -0,0 +1,399 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2014 Free Software Foundation, Inc. +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR , 2014. +# +msgid "" +msgstr "" +"Project-Id-Version: xcfa_cli 0.0.6\n" +"Report-Msgid-Bugs-To: http://www.xcfa.tuxfamily.org/\n" +"POT-Creation-Date: 2015-02-07 17:34+0100\n" +"PO-Revision-Date: 2014-11-11 22:10:09.622832\n" +"Last-Translator: MyName \n" +"Language-Team: english\n" +"Language: en\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: src_cli/main.c:313 +#, c-format +msgid "" +"xcfa_cli is an implementation of xcfa in command line.\n" +"xcfa_cli is an application for conversion, normalization, reconfiguring wav " +"files and cut audio files ...\n" +"\n" +"What xcfa_cli can do:\n" +" - replaygain on files: flac, mp3, ogg, wavpack\n" +" - conversions:\n" +" - from files:\n" +" wav, flac, ape, wavpack, ogg, m4a, mpc, mp3, wma, shorten, rm, dts, " +"aif, ac3\t\t\n" +" - to files:\t\t\t\n" +" wav, flac, ape, wavpack, ogg, m4a, mpc, mp3, aac\n" +" - conversion settings for file management:\n" +" flac, ape, wavpack, ogg, m4a, aac, mpc, mp3\n" +" - management tags\n" +" - management cue wav file\n" +" - manipulation of the frequency, track and bit wav files\n" +" - standardization on files: wav, mp3, ogg\n" +" - cuts (split) wav files\n" +" - displaying information on files\n" +msgstr "" +"xcfa_cli is an implementation of xcfa in command line.\n" +"xcfa_cli is an application for conversion, normalization, reconfiguring wav " +"files and cut audio files ...\n" +"\n" +"What xcfa_cli can do:\n" +" - replaygain on files: flac, mp3, ogg, wavpack\n" +" - conversions:\n" +" - from files:\n" +" wav, flac, ape, wavpack, ogg, m4a, mpc, mp3, wma, shorten, rm, dts, " +"aif, ac3\t\t\n" +" - to files:\t\t\t\n" +" wav, flac, ape, wavpack, ogg, m4a, mpc, mp3, aac\n" +" - conversion settings for file management:\n" +" flac, ape, wavpack, ogg, m4a, aac, mpc, mp3\n" +" - management tags\n" +" - management cue wav file\n" +" - manipulation of the frequency, track and bit wav files\n" +" - standardization on files: wav, mp3, ogg\n" +" - cuts (split) wav files\n" +" - displaying information on files\n" + +#: src_cli/main.c:338 +#, c-format +msgid "" +" --verbose Verbose mode\n" +" -h --help Print help mode and quit\n" +"\n" +" -i <\"file.type\"> --input <\"file.type\">\n" +" Input name file to convert in " +"inverted commas, by example: --input \"*.flac\"\n" +" Type input files: wav, flac, ape, " +"wavpack, ogg, m4a, mpc, mp3, wma, shorten, rm, dts, aif, ac3\n" +" -o --output \n" +" Destination folder. By default in " +"the source file folder.\n" +" -d --dest \n" +" Destination file: wav, flac, ape, " +"wavpack, ogg, m4a, mpc, mp3, aac\n" +" -r --recursion Recursive search\n" +" -e --ext2src Extract in the source folder. This " +"option is useful with '--recursion'\n" +" --nice Change the priority of running " +"processes in the interval: 0 .. 20\n" +"\n" +"Management options with default parameters:\n" +"\n" +" --op_flac <\"-5\">\n" +" --op_ape <\"c2000\">\n" +" --op_wavpack <\"-y -j1\">\n" +" --op_ogg <\"--quality=3\">\n" +" --op_m4a <\"-q 100\">\n" +" --op_aac <\"48\">\n" +" --op_mpc <\"--verbose --overwrite --insane\">\n" +" --op_mp3 <\"-h --nohist --noreplaygain -b 128\">\n" +"\n" +"Displays information about the files:\n" +"\n" +" --info_files Displays time, level dBFS, frequency/" +"track/quantification\n" +" --info_tags Displays tags\n" +" --info_head Displays head\n" +"\n" +"Management tags:\n" +"\n" +" --no_tag The tags will not be carried\n" +" --tag_album <\"tags\"> Tag of album\n" +" --tag_artist <\"tags\"> Tag of artist\n" +" --tag_title <\"tags\"> Tag of title\n" +" --tag_number <\"tags\"> Tag of number\n" +" --tag_genre <\"tags\"> Tag of genre\n" +" --tag_year <\"tags\"> Tag of year\n" +" --tag_comment <\"tags\"> Tag of comment\n" +" --tag_description <\"tags\"> Tag of description\n" +"\n" +"Management cue file:\n" +" -c --cue \n" +" info Provides information on a " +"WAV or CUE file.\n" +" extract Extract all tracks of a WAV " +"file.\n" +"\n" +"Management split:\n" +"\n" +" -s --split Mark the beginning of the file to be " +"cut.\n" +" -l --length Specifies the length of the file to " +"cut with the seconds parameter.\n" +"\n" +"Changing the settings of a WAV file:\n" +"\n" +" -f --frequency Changing the frequency: 8000, " +"22000, 32000, 44056, 44100, 48000, 88200, 96000 or other\n" +" -t --track Changing the number of tracks: 1, 2, " +"4, 6\n" +" -q --quantification Changing the quantification: 8, " +"16, 24, 32, 64\n" +"\n" +"Replaygain: dynamic modification for next files: FLAC, MP3, OGG, WAVPACK\n" +"\n" +" -g --replaygain \n" +" FLAC [ clear | album ]\n" +" MP3 [ clear | album | track ]\n" +" OGG [ clear | album | track ]\n" +" WAVPACK [ clear | album | track ]\n" +"\n" +"Normalize: static modification for next files: MP3, WAV, OGG\n" +" See an excellent article by @Dzef on standardization: http://ubunteros." +"tuxfamily.org/spip.php?article159\n" +"\n" +" --peak Action on a single file.\n" +" Maximum volume amplification for " +"each file:\n" +" Increase the overall level of the " +"signal so as to bring the level to 0 dBFS peak without changing dynamics.\n" +" --peak_album Action on a group of files.\n" +" Maximum volume boost for a group of " +"files in accordance with the level of differences between each of them.\n" +" If the maximum level of one or more " +"files is already at 0 dBFS, the level of all the selected files remain " +"unchanged\n" +" after normalization. So this mode " +"can be safely used almost systematically.\n" +" --mix_rms_album Action on a group of files.\n" +" Adjusting the average volume for a " +"group of files respecting average level of the differences between each of " +"them.\n" +" The selecting a value for a file " +"modifies the other files in the group.\n" +" --fix_rms Action on a single file.\n" +" Adjusting the average volume of each " +"file..\n" +"\n" +msgstr "" +" --verbose Verbose mode\n" +" -h --help Print help mode and quit\n" +"\n" +" -i <\"file.type\"> --input <\"file.type\">\n" +" Input name file to convert in " +"inverted commas, by example: --input \"*.flac\"\n" +" Type input files: wav, flac, ape, " +"wavpack, ogg, m4a, mpc, mp3, wma, shorten, rm, dts, aif, ac3\n" +" -o --output \n" +" Destination folder. By default in " +"the source file folder.\n" +" -d --dest \n" +" Destination file: wav, flac, ape, " +"wavpack, ogg, m4a, mpc, mp3, aac\n" +" -r --recursion Recursive search\n" +" -e --ext2src Extract in the source folder. This " +"option is useful with '--recursion'\n" +" --nice Change the priority of running " +"processes in the interval: 0 .. 20\n" +"\n" +"Management options with default parameters:\n" +"\n" +" --op_flac <\"-5\">\n" +" --op_ape <\"c2000\">\n" +" --op_wavpack <\"-y -j1\">\n" +" --op_ogg <\"--quality=3\">\n" +" --op_m4a <\"-q 100\">\n" +" --op_aac <\"48\">\n" +" --op_mpc <\"--verbose --overwrite --insane\">\n" +" --op_mp3 <\"-h --nohist --noreplaygain -b 128\">\n" +"\n" +"Displays information about the files:\n" +"\n" +" --info_files Displays time, level dBFS, frequency/" +"track/quantification\n" +" --info_tags Displays tags\n" +" --info_head Displays head\n" +"\n" +"Management tags:\n" +"\n" +" --no_tag The tags will not be carried\n" +" --tag_album <\"tags\"> Tag of album\n" +" --tag_artist <\"tags\"> Tag of artist\n" +" --tag_title <\"tags\"> Tag of title\n" +" --tag_number <\"tags\"> Tag of number\n" +" --tag_genre <\"tags\"> Tag of genre\n" +" --tag_year <\"tags\"> Tag of year\n" +" --tag_comment <\"tags\"> Tag of comment\n" +" --tag_description <\"tags\"> Tag of description\n" +"\n" +"Management cue file:\n" +" -c --cue \n" +" info Provides information on a " +"WAV or CUE file.\n" +" extract Extract all tracks of a WAV " +"file.\n" +"\n" +"Management split:\n" +"\n" +" -s --split Mark the beginning of the file to be " +"cut.\n" +" -l --length Specifies the length of the file to " +"cut with the seconds parameter.\n" +"\n" +"Changing the settings of a WAV file:\n" +"\n" +" -f --frequency Changing the frequency: 8000, " +"22000, 32000, 44056, 44100, 48000, 88200, 96000 or other\n" +" -t --track Changing the number of tracks: 1, 2, " +"4, 6\n" +" -q --quantification Changing the quantification: 8, " +"16, 24, 32, 64\n" +"\n" +"Replaygain: dynamic modification for next files: FLAC, MP3, OGG, WAVPACK\n" +"\n" +" -g --replaygain \n" +" FLAC [ clear | album ]\n" +" MP3 [ clear | album | track ]\n" +" OGG [ clear | album | track ]\n" +" WAVPACK [ clear | album | track ]\n" +"\n" +"Normalize: static modification for next files: MP3, WAV, OGG\n" +" See an excellent article by @Dzef on standardization: http://ubunteros." +"tuxfamily.org/spip.php?article159\n" +"\n" +" --peak Action on a single file.\n" +" Maximum volume amplification for " +"each file:\n" +" Increase the overall level of the " +"signal so as to bring the level to 0 dBFS peak without changing dynamics.\n" +" --peak_album Action on a group of files.\n" +" Maximum volume boost for a group of " +"files in accordance with the level of differences between each of them.\n" +" If the maximum level of one or more " +"files is already at 0 dBFS, the level of all the selected files remain " +"unchanged\n" +" after normalization. So this mode " +"can be safely used almost systematically.\n" +" --mix_rms_album Action on a group of files.\n" +" Adjusting the average volume for a " +"group of files respecting average level of the differences between each of " +"them.\n" +" The selecting a value for a file " +"modifies the other files in the group.\n" +" --fix_rms Action on a single file.\n" +" Adjusting the average volume of each " +"file..\n" +"\n" + +#: src_cli/main.c:431 +#, c-format +msgid "Example conversion:\n" +msgstr "Example conversion:\n" + +#: src_cli/main.c:438 +#, c-format +msgid "Conversion example with two inputs:\n" +msgstr "Conversion example with two inputs:\n" + +#: src_cli/main.c:443 +#, c-format +msgid "Example split:\n" +msgstr "Example split:\n" + +#: src_cli/main.c:450 +#, c-format +msgid "Example cue:\n" +msgstr "Example cue:\n" + +#: src_cli/main.c:458 +#, c-format +msgid "Example setting wav:\n" +msgstr "Example setting wav:\n" + +#: src_cli/main.c:463 +#, c-format +msgid "Example replaygain:\n" +msgstr "Example replaygain:\n" + +#: src_cli/main.c:469 +#, c-format +msgid "Example normalize:\n" +msgstr "Example normalize:\n" + +#: src_cli/main.c:478 +#, c-format +msgid "Example info:\n" +msgstr "Example info:\n" + +#: src_cli/prg_init.c:54 +msgid " Decode ATSC A/52 audio streams" +msgstr " Decode ATSC A/52 audio streams" + +#: src_cli/prg_init.c:62 +msgid " AAC+ encoder" +msgstr " AAC+ encode" + +#: src_cli/prg_init.c:70 +msgid " Cherche des renseignements sur les formats mp3" +msgstr " Cherche des renseignements sur les formats mp3" + +#: src_cli/prg_init.c:78 +msgid " Audio Codeur freeware" +msgstr " Audio Codeur freeware" + +#: src_cli/prg_init.c:86 +msgid " MPEG-4 AAC decodeur" +msgstr " MPEG-4 AAC decodeu" + +#: src_cli/prg_init.c:94 +msgid " Conversion wav : flac" +msgstr " Conversion wav : flac" + +#: src_cli/prg_init.c:102 +msgid " Conversion wav : mp3" +msgstr " Conversion wav : mp3" + +#: src_cli/prg_init.c:111 +msgid " Monkey's Audio Console Front End : APE" +msgstr " Monkey's Audio Console Front End : APE" + +#: src_cli/prg_init.c:120 src_cli/prg_init.c:128 +msgid " MusePack commandline utilities" +msgstr " MusePack commandline utilities" + +#: src_cli/prg_init.c:136 +msgid " Lecteur et extracteur" +msgstr " Lecteur et extracteur" + +#: src_cli/prg_init.c:144 +msgid " Replaygain pour les fichiers mp3" +msgstr " Replaygain pour les fichiers mp3" + +#: src_cli/prg_init.c:152 +msgid " Normaliseur de fichier wav" +msgstr " Normaliseur de fichier wa" + +#: src_cli/prg_init.c:160 +msgid " A program to send desktop notifications" +msgstr " A program to send desktop notifications" + +#: src_cli/prg_init.c:168 +msgid " Forte compression au format wave" +msgstr " Forte compression au format wave" + +#: src_cli/prg_init.c:176 +msgid " Decoupage de fichiers sans decodage" +msgstr " Decoupage de fichiers sans decodage" + +#: src_cli/prg_init.c:184 +msgid " Transformation universelle de fichiers son" +msgstr " Transformation universelle de fichiers son" + +#: src_cli/prg_init.c:192 +msgid " Conversion wav : ogg" +msgstr " Conversion wav : og" + +#: src_cli/prg_init.c:200 +msgid " Replaygain pour les fichiers ogg" +msgstr " Replaygain pour les fichiers ogg" + +#: src_cli/prg_init.c:208 +msgid " WAVPACK Hybrid Lossless Audio Compressor" +msgstr " WAVPACK Hybrid Lossless Audio Compressor" diff -Nru xcfa-4.3.8/po_cli/en@quot.header xcfa-5.0.1/po_cli/en@quot.header --- xcfa-4.3.8/po_cli/en@quot.header 1970-01-01 00:00:00.000000000 +0000 +++ xcfa-5.0.1/po_cli/en@quot.header 2014-11-11 21:10:08.000000000 +0000 @@ -0,0 +1,22 @@ +# All this catalog "translates" are quotation characters. +# The msgids must be ASCII and therefore cannot contain real quotation +# characters, only substitutes like grave accent (0x60), apostrophe (0x27) +# and double quote (0x22). These substitutes look strange; see +# http://www.cl.cam.ac.uk/~mgk25/ucs/quotes.html +# +# This catalog translates grave accent (0x60) and apostrophe (0x27) to +# left single quotation mark (U+2018) and right single quotation mark (U+2019). +# It also translates pairs of apostrophe (0x27) to +# left single quotation mark (U+2018) and right single quotation mark (U+2019) +# and pairs of quotation mark (0x22) to +# left double quotation mark (U+201C) and right double quotation mark (U+201D). +# +# When output to an UTF-8 terminal, the quotation characters appear perfectly. +# When output to an ISO-8859-1 terminal, the single quotation marks are +# transliterated to apostrophes (by iconv in glibc 2.2 or newer) or to +# grave/acute accent (by libiconv), and the double quotation marks are +# transliterated to 0x22. +# When output to an ASCII terminal, the single quotation marks are +# transliterated to apostrophes, and the double quotation marks are +# transliterated to 0x22. +# Binary files /tmp/U9mREQ24T4/xcfa-4.3.8/po_cli/es.gmo and /tmp/9PqOMEw8oW/xcfa-5.0.1/po_cli/es.gmo differ diff -Nru xcfa-4.3.8/po_cli/es.po xcfa-5.0.1/po_cli/es.po --- xcfa-4.3.8/po_cli/es.po 1970-01-01 00:00:00.000000000 +0000 +++ xcfa-5.0.1/po_cli/es.po 2015-02-07 16:34:36.000000000 +0000 @@ -0,0 +1,271 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2014 Free Software Foundation, Inc. +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR , 2014. +# +msgid "" +msgstr "" +"Project-Id-Version: xcfa_cli 0.0.6\n" +"Report-Msgid-Bugs-To: http://www.xcfa.tuxfamily.org/\n" +"POT-Creation-Date: 2015-02-07 17:34+0100\n" +"PO-Revision-Date: 2014-11-11 22:10:09.624052\n" +"Last-Translator: MyName \n" +"Language-Team: spanish\n" +"Language: es\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: src_cli/main.c:313 +#, c-format +msgid "" +"xcfa_cli is an implementation of xcfa in command line.\n" +"xcfa_cli is an application for conversion, normalization, reconfiguring wav " +"files and cut audio files ...\n" +"\n" +"What xcfa_cli can do:\n" +" - replaygain on files: flac, mp3, ogg, wavpack\n" +" - conversions:\n" +" - from files:\n" +" wav, flac, ape, wavpack, ogg, m4a, mpc, mp3, wma, shorten, rm, dts, " +"aif, ac3\t\t\n" +" - to files:\t\t\t\n" +" wav, flac, ape, wavpack, ogg, m4a, mpc, mp3, aac\n" +" - conversion settings for file management:\n" +" flac, ape, wavpack, ogg, m4a, aac, mpc, mp3\n" +" - management tags\n" +" - management cue wav file\n" +" - manipulation of the frequency, track and bit wav files\n" +" - standardization on files: wav, mp3, ogg\n" +" - cuts (split) wav files\n" +" - displaying information on files\n" +msgstr "" + +#: src_cli/main.c:338 +#, c-format +msgid "" +" --verbose Verbose mode\n" +" -h --help Print help mode and quit\n" +"\n" +" -i <\"file.type\"> --input <\"file.type\">\n" +" Input name file to convert in " +"inverted commas, by example: --input \"*.flac\"\n" +" Type input files: wav, flac, ape, " +"wavpack, ogg, m4a, mpc, mp3, wma, shorten, rm, dts, aif, ac3\n" +" -o --output \n" +" Destination folder. By default in " +"the source file folder.\n" +" -d --dest \n" +" Destination file: wav, flac, ape, " +"wavpack, ogg, m4a, mpc, mp3, aac\n" +" -r --recursion Recursive search\n" +" -e --ext2src Extract in the source folder. This " +"option is useful with '--recursion'\n" +" --nice Change the priority of running " +"processes in the interval: 0 .. 20\n" +"\n" +"Management options with default parameters:\n" +"\n" +" --op_flac <\"-5\">\n" +" --op_ape <\"c2000\">\n" +" --op_wavpack <\"-y -j1\">\n" +" --op_ogg <\"--quality=3\">\n" +" --op_m4a <\"-q 100\">\n" +" --op_aac <\"48\">\n" +" --op_mpc <\"--verbose --overwrite --insane\">\n" +" --op_mp3 <\"-h --nohist --noreplaygain -b 128\">\n" +"\n" +"Displays information about the files:\n" +"\n" +" --info_files Displays time, level dBFS, frequency/" +"track/quantification\n" +" --info_tags Displays tags\n" +" --info_head Displays head\n" +"\n" +"Management tags:\n" +"\n" +" --no_tag The tags will not be carried\n" +" --tag_album <\"tags\"> Tag of album\n" +" --tag_artist <\"tags\"> Tag of artist\n" +" --tag_title <\"tags\"> Tag of title\n" +" --tag_number <\"tags\"> Tag of number\n" +" --tag_genre <\"tags\"> Tag of genre\n" +" --tag_year <\"tags\"> Tag of year\n" +" --tag_comment <\"tags\"> Tag of comment\n" +" --tag_description <\"tags\"> Tag of description\n" +"\n" +"Management cue file:\n" +" -c --cue \n" +" info Provides information on a " +"WAV or CUE file.\n" +" extract Extract all tracks of a WAV " +"file.\n" +"\n" +"Management split:\n" +"\n" +" -s --split Mark the beginning of the file to be " +"cut.\n" +" -l --length Specifies the length of the file to " +"cut with the seconds parameter.\n" +"\n" +"Changing the settings of a WAV file:\n" +"\n" +" -f --frequency Changing the frequency: 8000, " +"22000, 32000, 44056, 44100, 48000, 88200, 96000 or other\n" +" -t --track Changing the number of tracks: 1, 2, " +"4, 6\n" +" -q --quantification Changing the quantification: 8, " +"16, 24, 32, 64\n" +"\n" +"Replaygain: dynamic modification for next files: FLAC, MP3, OGG, WAVPACK\n" +"\n" +" -g --replaygain \n" +" FLAC [ clear | album ]\n" +" MP3 [ clear | album | track ]\n" +" OGG [ clear | album | track ]\n" +" WAVPACK [ clear | album | track ]\n" +"\n" +"Normalize: static modification for next files: MP3, WAV, OGG\n" +" See an excellent article by @Dzef on standardization: http://ubunteros." +"tuxfamily.org/spip.php?article159\n" +"\n" +" --peak Action on a single file.\n" +" Maximum volume amplification for " +"each file:\n" +" Increase the overall level of the " +"signal so as to bring the level to 0 dBFS peak without changing dynamics.\n" +" --peak_album Action on a group of files.\n" +" Maximum volume boost for a group of " +"files in accordance with the level of differences between each of them.\n" +" If the maximum level of one or more " +"files is already at 0 dBFS, the level of all the selected files remain " +"unchanged\n" +" after normalization. So this mode " +"can be safely used almost systematically.\n" +" --mix_rms_album Action on a group of files.\n" +" Adjusting the average volume for a " +"group of files respecting average level of the differences between each of " +"them.\n" +" The selecting a value for a file " +"modifies the other files in the group.\n" +" --fix_rms Action on a single file.\n" +" Adjusting the average volume of each " +"file..\n" +"\n" +msgstr "" + +#: src_cli/main.c:431 +#, c-format +msgid "Example conversion:\n" +msgstr "" + +#: src_cli/main.c:438 +#, c-format +msgid "Conversion example with two inputs:\n" +msgstr "" + +#: src_cli/main.c:443 +#, c-format +msgid "Example split:\n" +msgstr "" + +#: src_cli/main.c:450 +#, c-format +msgid "Example cue:\n" +msgstr "" + +#: src_cli/main.c:458 +#, c-format +msgid "Example setting wav:\n" +msgstr "" + +#: src_cli/main.c:463 +#, c-format +msgid "Example replaygain:\n" +msgstr "" + +#: src_cli/main.c:469 +#, c-format +msgid "Example normalize:\n" +msgstr "" + +#: src_cli/main.c:478 +#, c-format +msgid "Example info:\n" +msgstr "" + +#: src_cli/prg_init.c:54 +msgid " Decode ATSC A/52 audio streams" +msgstr "" + +#: src_cli/prg_init.c:62 +msgid " AAC+ encoder" +msgstr "" + +#: src_cli/prg_init.c:70 +msgid " Cherche des renseignements sur les formats mp3" +msgstr "" + +#: src_cli/prg_init.c:78 +msgid " Audio Codeur freeware" +msgstr "" + +#: src_cli/prg_init.c:86 +msgid " MPEG-4 AAC decodeur" +msgstr "" + +#: src_cli/prg_init.c:94 +msgid " Conversion wav : flac" +msgstr "" + +#: src_cli/prg_init.c:102 +msgid " Conversion wav : mp3" +msgstr "" + +#: src_cli/prg_init.c:111 +msgid " Monkey's Audio Console Front End : APE" +msgstr "" + +#: src_cli/prg_init.c:120 src_cli/prg_init.c:128 +msgid " MusePack commandline utilities" +msgstr "" + +#: src_cli/prg_init.c:136 +msgid " Lecteur et extracteur" +msgstr "" + +#: src_cli/prg_init.c:144 +msgid " Replaygain pour les fichiers mp3" +msgstr "" + +#: src_cli/prg_init.c:152 +msgid " Normaliseur de fichier wav" +msgstr "" + +#: src_cli/prg_init.c:160 +msgid " A program to send desktop notifications" +msgstr "" + +#: src_cli/prg_init.c:168 +msgid " Forte compression au format wave" +msgstr "" + +#: src_cli/prg_init.c:176 +msgid " Decoupage de fichiers sans decodage" +msgstr "" + +#: src_cli/prg_init.c:184 +msgid " Transformation universelle de fichiers son" +msgstr "" + +#: src_cli/prg_init.c:192 +msgid " Conversion wav : ogg" +msgstr "" + +#: src_cli/prg_init.c:200 +msgid " Replaygain pour les fichiers ogg" +msgstr "" + +#: src_cli/prg_init.c:208 +msgid " WAVPACK Hybrid Lossless Audio Compressor" +msgstr "" Binary files /tmp/U9mREQ24T4/xcfa-4.3.8/po_cli/fr.gmo and /tmp/9PqOMEw8oW/xcfa-5.0.1/po_cli/fr.gmo differ diff -Nru xcfa-4.3.8/po_cli/fr.po xcfa-5.0.1/po_cli/fr.po --- xcfa-4.3.8/po_cli/fr.po 1970-01-01 00:00:00.000000000 +0000 +++ xcfa-5.0.1/po_cli/fr.po 2015-02-07 16:34:36.000000000 +0000 @@ -0,0 +1,410 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2014 Free Software Foundation, Inc. +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR , 2014. +# +msgid "" +msgstr "" +"Project-Id-Version: xcfa_cli 0.0.6\n" +"Report-Msgid-Bugs-To: http://www.xcfa.tuxfamily.org/\n" +"POT-Creation-Date: 2015-02-07 17:34+0100\n" +"PO-Revision-Date: 2014-11-11 22:10:09.623273\n" +"Last-Translator: MyName \n" +"Language-Team: french\n" +"Language: fr\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: src_cli/main.c:313 +#, c-format +msgid "" +"xcfa_cli is an implementation of xcfa in command line.\n" +"xcfa_cli is an application for conversion, normalization, reconfiguring wav " +"files and cut audio files ...\n" +"\n" +"What xcfa_cli can do:\n" +" - replaygain on files: flac, mp3, ogg, wavpack\n" +" - conversions:\n" +" - from files:\n" +" wav, flac, ape, wavpack, ogg, m4a, mpc, mp3, wma, shorten, rm, dts, " +"aif, ac3\t\t\n" +" - to files:\t\t\t\n" +" wav, flac, ape, wavpack, ogg, m4a, mpc, mp3, aac\n" +" - conversion settings for file management:\n" +" flac, ape, wavpack, ogg, m4a, aac, mpc, mp3\n" +" - management tags\n" +" - management cue wav file\n" +" - manipulation of the frequency, track and bit wav files\n" +" - standardization on files: wav, mp3, ogg\n" +" - cuts (split) wav files\n" +" - displaying information on files\n" +msgstr "" +"xcfa_cli est une implémentation de xcfa en ligne de commande.\n" +"xcfa_cli est une application pour la conversion, la normalisation, la " +"reconfiguration des fichiers wav et découpe des fichiers audio ...\n" +"\n" +"Ce que xcfa_cli sait faire:\n" +" - replaygain sur des fichiers: flac, mp3, ogg, wavpack\n" +" - conversions:\n" +" - depuis des fichiers:\n" +" wav, flac, ape, wavpack, ogg, m4a, mpc, mp3, wma, shorten, rm, dts, " +"aif, ac3\n" +" - vers des fichiers:\n" +" wav, flac, ape, wavpack, ogg, m4a, mpc, mp3, aac\n" +" - gestion des paramètres de conversion pour les fichiers:\n" +" flac, ape, wavpack, ogg, m4a, aac, mpc, mp3\n" +" - gestion des tags\n" +" - gestion des fichiers cue (wav)\n" +" - manipulation de la fréquence, voie et bits sur les fichiers wav\n" +" - normalisations sur des fichiers: wav, mp3, ogg\n" +" - découpes (split) de fichiers wav\n" +" - affichage d'informations sur des fichiers\n" + +#: src_cli/main.c:338 +#, c-format +msgid "" +" --verbose Verbose mode\n" +" -h --help Print help mode and quit\n" +"\n" +" -i <\"file.type\"> --input <\"file.type\">\n" +" Input name file to convert in " +"inverted commas, by example: --input \"*.flac\"\n" +" Type input files: wav, flac, ape, " +"wavpack, ogg, m4a, mpc, mp3, wma, shorten, rm, dts, aif, ac3\n" +" -o --output \n" +" Destination folder. By default in " +"the source file folder.\n" +" -d --dest \n" +" Destination file: wav, flac, ape, " +"wavpack, ogg, m4a, mpc, mp3, aac\n" +" -r --recursion Recursive search\n" +" -e --ext2src Extract in the source folder. This " +"option is useful with '--recursion'\n" +" --nice Change the priority of running " +"processes in the interval: 0 .. 20\n" +"\n" +"Management options with default parameters:\n" +"\n" +" --op_flac <\"-5\">\n" +" --op_ape <\"c2000\">\n" +" --op_wavpack <\"-y -j1\">\n" +" --op_ogg <\"--quality=3\">\n" +" --op_m4a <\"-q 100\">\n" +" --op_aac <\"48\">\n" +" --op_mpc <\"--verbose --overwrite --insane\">\n" +" --op_mp3 <\"-h --nohist --noreplaygain -b 128\">\n" +"\n" +"Displays information about the files:\n" +"\n" +" --info_files Displays time, level dBFS, frequency/" +"track/quantification\n" +" --info_tags Displays tags\n" +" --info_head Displays head\n" +"\n" +"Management tags:\n" +"\n" +" --no_tag The tags will not be carried\n" +" --tag_album <\"tags\"> Tag of album\n" +" --tag_artist <\"tags\"> Tag of artist\n" +" --tag_title <\"tags\"> Tag of title\n" +" --tag_number <\"tags\"> Tag of number\n" +" --tag_genre <\"tags\"> Tag of genre\n" +" --tag_year <\"tags\"> Tag of year\n" +" --tag_comment <\"tags\"> Tag of comment\n" +" --tag_description <\"tags\"> Tag of description\n" +"\n" +"Management cue file:\n" +" -c --cue \n" +" info Provides information on a " +"WAV or CUE file.\n" +" extract Extract all tracks of a WAV " +"file.\n" +"\n" +"Management split:\n" +"\n" +" -s --split Mark the beginning of the file to be " +"cut.\n" +" -l --length Specifies the length of the file to " +"cut with the seconds parameter.\n" +"\n" +"Changing the settings of a WAV file:\n" +"\n" +" -f --frequency Changing the frequency: 8000, " +"22000, 32000, 44056, 44100, 48000, 88200, 96000 or other\n" +" -t --track Changing the number of tracks: 1, 2, " +"4, 6\n" +" -q --quantification Changing the quantification: 8, " +"16, 24, 32, 64\n" +"\n" +"Replaygain: dynamic modification for next files: FLAC, MP3, OGG, WAVPACK\n" +"\n" +" -g --replaygain \n" +" FLAC [ clear | album ]\n" +" MP3 [ clear | album | track ]\n" +" OGG [ clear | album | track ]\n" +" WAVPACK [ clear | album | track ]\n" +"\n" +"Normalize: static modification for next files: MP3, WAV, OGG\n" +" See an excellent article by @Dzef on standardization: http://ubunteros." +"tuxfamily.org/spip.php?article159\n" +"\n" +" --peak Action on a single file.\n" +" Maximum volume amplification for " +"each file:\n" +" Increase the overall level of the " +"signal so as to bring the level to 0 dBFS peak without changing dynamics.\n" +" --peak_album Action on a group of files.\n" +" Maximum volume boost for a group of " +"files in accordance with the level of differences between each of them.\n" +" If the maximum level of one or more " +"files is already at 0 dBFS, the level of all the selected files remain " +"unchanged\n" +" after normalization. So this mode " +"can be safely used almost systematically.\n" +" --mix_rms_album Action on a group of files.\n" +" Adjusting the average volume for a " +"group of files respecting average level of the differences between each of " +"them.\n" +" The selecting a value for a file " +"modifies the other files in the group.\n" +" --fix_rms Action on a single file.\n" +" Adjusting the average volume of each " +"file..\n" +"\n" +msgstr "" +" --verbose Mode verbeux\n" +" -h --help Print help mode and quit\n" +"\n" +" -i <\"file.type\"> --input <\"file.type\">\n" +" Le nom de fichier en entrée doit " +"^etre entre guillemets, par exemple: --input \"*.flac\"\n" +" Types des fichiers acceptés en " +"entrée: wav, flac, ape, wavpack, ogg, m4a, mpc, mp3, wma, shorten, rm, dts, " +"aif, ac3\n" +" -o --output \n" +" Dossier de destination. Par défaut " +"dans le dossier source.\n" +" -d --dest \n" +" Types des fichiers acceptés en " +"destination: wav, flac, ape, wavpack, ogg, m4a, mpc, mp3, aac\n" +" -r --recursion Recherche récursive\n" +" -e --ext2src Extraction dans le dossier source. " +"Cette option est utile avec '--recursion'\n" +" --nice Changer la priorité d'exécution des " +"processus dans l'interval: 0 .. 20\n" +"\n" +"Les options de gestion avec les paramètres par défaut:\n" +"\n" +" --op_flac <\"-5\">\n" +" --op_ape <\"c2000\">\n" +" --op_wavpack <\"-y -j1\">\n" +" --op_ogg <\"--quality=3\">\n" +" --op_m4a <\"-q 100\">\n" +" --op_aac <\"48\">\n" +" --op_mpc <\"--verbose --overwrite --insane\">\n" +" --op_mp3 <\"-h --nohist --noreplaygain -b 128\">\n" +"\n" +"Affiche des informations sur les fichiers:\n" +"\n" +" --info_files Affichage: durée, niveau dBFS, " +"fréquence/piste/quantification\n" +" --info_tags Affichage: tags\n" +" --info_head Affichage: entete\n" +"\n" +"Gestion des tags:\n" +"\n" +" --no_tag Les tags ne seront pas inclus\n" +" --tag_album <\"tags\"> Tag album\n" +" --tag_artist <\"tags\"> Tag artist\n" +" --tag_title <\"tags\"> Tag title\n" +" --tag_number <\"tags\"> Tag number\n" +" --tag_genre <\"tags\"> Tag genre\n" +" --tag_year <\"tags\"> Tag year\n" +" --tag_comment <\"tags\"> Tag comment\n" +" --tag_description <\"tags\"> Tag description\n" +"\n" +"Gestion des fichiers cue:\n" +" -c --cue \n" +" info Fournit des informations " +"sur un fichier WAV ou CUE.\n" +" extract Extrait toutes les pistes " +"d'un fichier WAV.\n" +"\n" +"Gestion du split:\n" +"\n" +" -s --split Marque le début du fichier à " +"découper.\n" +" -l --length Indique la longueur du fichier de " +"couper en secondes.\n" +"\n" +"Modification des paramètres d'un fichier WAV:\n" +"\n" +" -f --frequency Changement de la fréquence: " +"8000, 22000, 32000, 44056, 44100, 48000, 88200, 96000 ou autre valeur\n" +" -t --track Changement du nombre de pistes: " +"1, 2, 4, 6\n" +" -q --quantification Changement de la quantification: " +"8, 16, 24, 32, 64\n" +"\n" +"Replaygain: modification dynamique pour les fichiers suivants: FLAC, MP3, " +"OGG, WAVPACK\n" +"\n" +" -g --replaygain \n" +" FLAC [ clear | album ]\n" +" MP3 [ clear | album | track ]\n" +" OGG [ clear | album | track ]\n" +" WAVPACK [ clear | album | track ]\n" +"\n" +"Normalize: modification statique pour les fichiers suivants: MP3, WAV, OGG\n" +" Voir un excellent article de @Dzef sur la normalisation: http://ubunteros." +"tuxfamily.org/spip.php?article159\n" +"\n" +" --peak Action sur un fichier.\n" +" L'amplification du volume maximale " +"pour chaque fichier:\n" +" Augmenter le niveau global du signal " +"de façon à amener le niveau à 0 dBFS sans changer la dynamique.\n" +" --peak_album Action sur un groupe de fichiers.\n" +" Gain de volume maximum pour un " +"groupe de fichiers en fonction du niveau de différences entre chacun d'eux.\n" +" Si le niveau maximum de un ou " +"plusieurs fichiers est déjà à 0 dBFS, le niveau de tous les fichiers " +"sélectionnés\n" +" restent inchangés après " +"normalisation. Donc, ce mode peut être utilisé en toute sécurité presque " +"systématiquement.\n" +" --mix_rms_album Action sur un groupe de fichiers.\n" +" Réglage du volume moyen d'un groupe " +"de fichiers concernant le niveau moyen de la différence entre chacun d'eux.\n" +" La sélection d'une valeur d'un " +"fichier modifie les autres fichiers dans le groupe.\n" +" --fix_rms Action sur un fichier.\n" +" Réglage du volume moyen de chaque " +"fichier.\n" +" La sélection d'une valeur d'un " +"fichier.\n" +"\n" + +#: src_cli/main.c:431 +#, c-format +msgid "Example conversion:\n" +msgstr "Exemple conversion:\n" + +#: src_cli/main.c:438 +#, c-format +msgid "Conversion example with two inputs:\n" +msgstr "Exemple de conversion avec deux entrées:\n" + +#: src_cli/main.c:443 +#, c-format +msgid "Example split:\n" +msgstr "Exemple de split:\n" + +#: src_cli/main.c:450 +#, c-format +msgid "Example cue:\n" +msgstr "Exemple cue:\n" + +#: src_cli/main.c:458 +#, c-format +msgid "Example setting wav:\n" +msgstr "Exemple de reparamétrage de fichier wav:\n" + +#: src_cli/main.c:463 +#, c-format +msgid "Example replaygain:\n" +msgstr "Exemple de replaygain:\n" + +#: src_cli/main.c:469 +#, c-format +msgid "Example normalize:\n" +msgstr "Exemple avec normalize:\n" + +#: src_cli/main.c:478 +#, c-format +msgid "Example info:\n" +msgstr "Exemple info:\n" + +#: src_cli/prg_init.c:54 +msgid " Decode ATSC A/52 audio streams" +msgstr " Decode ATSC A/52 audio streams" + +#: src_cli/prg_init.c:62 +msgid " AAC+ encoder" +msgstr " AAC+ encoder" + +#: src_cli/prg_init.c:70 +msgid " Cherche des renseignements sur les formats mp3" +msgstr " Cherche des renseignements sur les formats mp3" + +#: src_cli/prg_init.c:78 +msgid " Audio Codeur freeware" +msgstr " Audio Codeur freeware" + +#: src_cli/prg_init.c:86 +msgid " MPEG-4 AAC decodeur" +msgstr " MPEG-4 AAC decodeur" + +#: src_cli/prg_init.c:94 +msgid " Conversion wav : flac" +msgstr " Conversion wav : flac" + +#: src_cli/prg_init.c:102 +msgid " Conversion wav : mp3" +msgstr " Conversion wav : mp3" + +#: src_cli/prg_init.c:111 +msgid " Monkey's Audio Console Front End : APE" +msgstr " Monkey's Audio Console Front End : APE" + +#: src_cli/prg_init.c:120 src_cli/prg_init.c:128 +msgid " MusePack commandline utilities" +msgstr " MusePack commandline utilities" + +#: src_cli/prg_init.c:136 +msgid " Lecteur et extracteur" +msgstr " Lecteur et extracteur" + +#: src_cli/prg_init.c:144 +msgid " Replaygain pour les fichiers mp3" +msgstr " Replaygain pour les fichiers mp3" + +#: src_cli/prg_init.c:152 +msgid " Normaliseur de fichier wav" +msgstr " Normaliseur de fichier wav" + +#: src_cli/prg_init.c:160 +msgid " A program to send desktop notifications" +msgstr " A program to send desktop notifications" + +#: src_cli/prg_init.c:168 +msgid " Forte compression au format wave" +msgstr " Forte compression au format wave" + +#: src_cli/prg_init.c:176 +msgid " Decoupage de fichiers sans decodage" +msgstr " Découpage de fichiers sans décodage" + +#: src_cli/prg_init.c:184 +msgid " Transformation universelle de fichiers son" +msgstr " Transformation universelle de fichiers son" + +#: src_cli/prg_init.c:192 +msgid " Conversion wav : ogg" +msgstr " Conversion wav : ogg" + +#: src_cli/prg_init.c:200 +msgid " Replaygain pour les fichiers ogg" +msgstr " Replaygain pour les fichiers ogg" + +#: src_cli/prg_init.c:208 +msgid " WAVPACK Hybrid Lossless Audio Compressor" +msgstr " WAVPACK Hybrid Lossless Audio Compressor" + +#~ msgid "" +#~ "un\n" +#~ "deux" +#~ msgstr "" +#~ "uno\n" +#~ "DOS" diff -Nru xcfa-4.3.8/po_cli/insert-header.sin xcfa-5.0.1/po_cli/insert-header.sin --- xcfa-4.3.8/po_cli/insert-header.sin 1970-01-01 00:00:00.000000000 +0000 +++ xcfa-5.0.1/po_cli/insert-header.sin 2014-11-11 21:10:08.000000000 +0000 @@ -0,0 +1,23 @@ +# Sed script that inserts the file called HEADER before the header entry. +# +# At each occurrence of a line starting with "msgid ", we execute the following +# commands. At the first occurrence, insert the file. At the following +# occurrences, do nothing. The distinction between the first and the following +# occurrences is achieved by looking at the hold space. +/^msgid /{ +x +# Test if the hold space is empty. +s/m/m/ +ta +# Yes it was empty. First occurrence. Read the file. +r HEADER +# Output the file's contents by reading the next line. But don't lose the +# current line while doing this. +g +N +bb +:a +# The hold space was nonempty. Following occurrences. Do nothing. +x +:b +} Binary files /tmp/U9mREQ24T4/xcfa-4.3.8/po_cli/it.gmo and /tmp/9PqOMEw8oW/xcfa-5.0.1/po_cli/it.gmo differ diff -Nru xcfa-4.3.8/po_cli/it.po xcfa-5.0.1/po_cli/it.po --- xcfa-4.3.8/po_cli/it.po 1970-01-01 00:00:00.000000000 +0000 +++ xcfa-5.0.1/po_cli/it.po 2015-02-07 16:34:36.000000000 +0000 @@ -0,0 +1,271 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2014 Free Software Foundation, Inc. +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR , 2014. +# +msgid "" +msgstr "" +"Project-Id-Version: xcfa_cli 0.0.6\n" +"Report-Msgid-Bugs-To: http://www.xcfa.tuxfamily.org/\n" +"POT-Creation-Date: 2015-02-07 17:34+0100\n" +"PO-Revision-Date: 2014-11-11 22:10:09.623885\n" +"Last-Translator: MyName \n" +"Language-Team: italian\n" +"Language: it\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: src_cli/main.c:313 +#, c-format +msgid "" +"xcfa_cli is an implementation of xcfa in command line.\n" +"xcfa_cli is an application for conversion, normalization, reconfiguring wav " +"files and cut audio files ...\n" +"\n" +"What xcfa_cli can do:\n" +" - replaygain on files: flac, mp3, ogg, wavpack\n" +" - conversions:\n" +" - from files:\n" +" wav, flac, ape, wavpack, ogg, m4a, mpc, mp3, wma, shorten, rm, dts, " +"aif, ac3\t\t\n" +" - to files:\t\t\t\n" +" wav, flac, ape, wavpack, ogg, m4a, mpc, mp3, aac\n" +" - conversion settings for file management:\n" +" flac, ape, wavpack, ogg, m4a, aac, mpc, mp3\n" +" - management tags\n" +" - management cue wav file\n" +" - manipulation of the frequency, track and bit wav files\n" +" - standardization on files: wav, mp3, ogg\n" +" - cuts (split) wav files\n" +" - displaying information on files\n" +msgstr "" + +#: src_cli/main.c:338 +#, c-format +msgid "" +" --verbose Verbose mode\n" +" -h --help Print help mode and quit\n" +"\n" +" -i <\"file.type\"> --input <\"file.type\">\n" +" Input name file to convert in " +"inverted commas, by example: --input \"*.flac\"\n" +" Type input files: wav, flac, ape, " +"wavpack, ogg, m4a, mpc, mp3, wma, shorten, rm, dts, aif, ac3\n" +" -o --output \n" +" Destination folder. By default in " +"the source file folder.\n" +" -d --dest \n" +" Destination file: wav, flac, ape, " +"wavpack, ogg, m4a, mpc, mp3, aac\n" +" -r --recursion Recursive search\n" +" -e --ext2src Extract in the source folder. This " +"option is useful with '--recursion'\n" +" --nice Change the priority of running " +"processes in the interval: 0 .. 20\n" +"\n" +"Management options with default parameters:\n" +"\n" +" --op_flac <\"-5\">\n" +" --op_ape <\"c2000\">\n" +" --op_wavpack <\"-y -j1\">\n" +" --op_ogg <\"--quality=3\">\n" +" --op_m4a <\"-q 100\">\n" +" --op_aac <\"48\">\n" +" --op_mpc <\"--verbose --overwrite --insane\">\n" +" --op_mp3 <\"-h --nohist --noreplaygain -b 128\">\n" +"\n" +"Displays information about the files:\n" +"\n" +" --info_files Displays time, level dBFS, frequency/" +"track/quantification\n" +" --info_tags Displays tags\n" +" --info_head Displays head\n" +"\n" +"Management tags:\n" +"\n" +" --no_tag The tags will not be carried\n" +" --tag_album <\"tags\"> Tag of album\n" +" --tag_artist <\"tags\"> Tag of artist\n" +" --tag_title <\"tags\"> Tag of title\n" +" --tag_number <\"tags\"> Tag of number\n" +" --tag_genre <\"tags\"> Tag of genre\n" +" --tag_year <\"tags\"> Tag of year\n" +" --tag_comment <\"tags\"> Tag of comment\n" +" --tag_description <\"tags\"> Tag of description\n" +"\n" +"Management cue file:\n" +" -c --cue \n" +" info Provides information on a " +"WAV or CUE file.\n" +" extract Extract all tracks of a WAV " +"file.\n" +"\n" +"Management split:\n" +"\n" +" -s --split Mark the beginning of the file to be " +"cut.\n" +" -l --length Specifies the length of the file to " +"cut with the seconds parameter.\n" +"\n" +"Changing the settings of a WAV file:\n" +"\n" +" -f --frequency Changing the frequency: 8000, " +"22000, 32000, 44056, 44100, 48000, 88200, 96000 or other\n" +" -t --track Changing the number of tracks: 1, 2, " +"4, 6\n" +" -q --quantification Changing the quantification: 8, " +"16, 24, 32, 64\n" +"\n" +"Replaygain: dynamic modification for next files: FLAC, MP3, OGG, WAVPACK\n" +"\n" +" -g --replaygain \n" +" FLAC [ clear | album ]\n" +" MP3 [ clear | album | track ]\n" +" OGG [ clear | album | track ]\n" +" WAVPACK [ clear | album | track ]\n" +"\n" +"Normalize: static modification for next files: MP3, WAV, OGG\n" +" See an excellent article by @Dzef on standardization: http://ubunteros." +"tuxfamily.org/spip.php?article159\n" +"\n" +" --peak Action on a single file.\n" +" Maximum volume amplification for " +"each file:\n" +" Increase the overall level of the " +"signal so as to bring the level to 0 dBFS peak without changing dynamics.\n" +" --peak_album Action on a group of files.\n" +" Maximum volume boost for a group of " +"files in accordance with the level of differences between each of them.\n" +" If the maximum level of one or more " +"files is already at 0 dBFS, the level of all the selected files remain " +"unchanged\n" +" after normalization. So this mode " +"can be safely used almost systematically.\n" +" --mix_rms_album Action on a group of files.\n" +" Adjusting the average volume for a " +"group of files respecting average level of the differences between each of " +"them.\n" +" The selecting a value for a file " +"modifies the other files in the group.\n" +" --fix_rms Action on a single file.\n" +" Adjusting the average volume of each " +"file..\n" +"\n" +msgstr "" + +#: src_cli/main.c:431 +#, c-format +msgid "Example conversion:\n" +msgstr "" + +#: src_cli/main.c:438 +#, c-format +msgid "Conversion example with two inputs:\n" +msgstr "" + +#: src_cli/main.c:443 +#, c-format +msgid "Example split:\n" +msgstr "" + +#: src_cli/main.c:450 +#, c-format +msgid "Example cue:\n" +msgstr "" + +#: src_cli/main.c:458 +#, c-format +msgid "Example setting wav:\n" +msgstr "" + +#: src_cli/main.c:463 +#, c-format +msgid "Example replaygain:\n" +msgstr "" + +#: src_cli/main.c:469 +#, c-format +msgid "Example normalize:\n" +msgstr "" + +#: src_cli/main.c:478 +#, c-format +msgid "Example info:\n" +msgstr "" + +#: src_cli/prg_init.c:54 +msgid " Decode ATSC A/52 audio streams" +msgstr "" + +#: src_cli/prg_init.c:62 +msgid " AAC+ encoder" +msgstr "" + +#: src_cli/prg_init.c:70 +msgid " Cherche des renseignements sur les formats mp3" +msgstr "" + +#: src_cli/prg_init.c:78 +msgid " Audio Codeur freeware" +msgstr "" + +#: src_cli/prg_init.c:86 +msgid " MPEG-4 AAC decodeur" +msgstr "" + +#: src_cli/prg_init.c:94 +msgid " Conversion wav : flac" +msgstr "" + +#: src_cli/prg_init.c:102 +msgid " Conversion wav : mp3" +msgstr "" + +#: src_cli/prg_init.c:111 +msgid " Monkey's Audio Console Front End : APE" +msgstr "" + +#: src_cli/prg_init.c:120 src_cli/prg_init.c:128 +msgid " MusePack commandline utilities" +msgstr "" + +#: src_cli/prg_init.c:136 +msgid " Lecteur et extracteur" +msgstr "" + +#: src_cli/prg_init.c:144 +msgid " Replaygain pour les fichiers mp3" +msgstr "" + +#: src_cli/prg_init.c:152 +msgid " Normaliseur de fichier wav" +msgstr "" + +#: src_cli/prg_init.c:160 +msgid " A program to send desktop notifications" +msgstr "" + +#: src_cli/prg_init.c:168 +msgid " Forte compression au format wave" +msgstr "" + +#: src_cli/prg_init.c:176 +msgid " Decoupage de fichiers sans decodage" +msgstr "" + +#: src_cli/prg_init.c:184 +msgid " Transformation universelle de fichiers son" +msgstr "" + +#: src_cli/prg_init.c:192 +msgid " Conversion wav : ogg" +msgstr "" + +#: src_cli/prg_init.c:200 +msgid " Replaygain pour les fichiers ogg" +msgstr "" + +#: src_cli/prg_init.c:208 +msgid " WAVPACK Hybrid Lossless Audio Compressor" +msgstr "" diff -Nru xcfa-4.3.8/po_cli/Makefile.in.in xcfa-5.0.1/po_cli/Makefile.in.in --- xcfa-4.3.8/po_cli/Makefile.in.in 1970-01-01 00:00:00.000000000 +0000 +++ xcfa-5.0.1/po_cli/Makefile.in.in 2015-02-05 21:07:53.000000000 +0000 @@ -0,0 +1,476 @@ +# Makefile for PO directory in any package using GNU gettext. +# Copyright (C) 1995-1997, 2000-2007, 2009-2010 by Ulrich Drepper +# +# This file can be copied and used freely without restrictions. It can +# be used in projects which are not available under the GNU General Public +# License but which still want to provide support for the GNU gettext +# functionality. +# Please note that the actual code of GNU gettext is covered by the GNU +# General Public License and is *not* in the public domain. +# +# Origin: gettext-0.19 +GETTEXT_MACRO_VERSION = 0.19 + +# PACKAGE = @PACKAGE@ +PACKAGE = xcfa_cli +VERSION = @VERSION@ +PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ + +SED = @SED@ +SHELL = /bin/sh +@SET_MAKE@ + +srcdir = @srcdir@ +top_srcdir = @top_srcdir@ +VPATH = @srcdir@ + +prefix = @prefix@ +exec_prefix = @exec_prefix@ +datarootdir = @datarootdir@ +datadir = @datadir@ +localedir = @localedir@ +gettextsrcdir = $(datadir)/gettext/po + +INSTALL = @INSTALL@ +INSTALL_DATA = @INSTALL_DATA@ + +# We use $(mkdir_p). +# In automake <= 1.9.x, $(mkdir_p) is defined either as "mkdir -p --" or as +# "$(mkinstalldirs)" or as "$(install_sh) -d". For these automake versions, +# @install_sh@ does not start with $(SHELL), so we add it. +# In automake >= 1.10, @mkdir_p@ is derived from ${MKDIR_P}, which is defined +# either as "/path/to/mkdir -p" or ".../install-sh -c -d". For these automake +# versions, $(mkinstalldirs) and $(install_sh) are unused. +mkinstalldirs = $(SHELL) @install_sh@ -d +install_sh = $(SHELL) @install_sh@ +MKDIR_P = @MKDIR_P@ +mkdir_p = @mkdir_p@ + +GMSGFMT_ = @GMSGFMT@ +GMSGFMT_no = @GMSGFMT@ +GMSGFMT_yes = @GMSGFMT_015@ +GMSGFMT = $(GMSGFMT_$(USE_MSGCTXT)) +MSGFMT_ = @MSGFMT@ +MSGFMT_no = @MSGFMT@ +MSGFMT_yes = @MSGFMT_015@ +MSGFMT = $(MSGFMT_$(USE_MSGCTXT)) +XGETTEXT_ = @XGETTEXT@ +XGETTEXT_no = @XGETTEXT@ +XGETTEXT_yes = @XGETTEXT_015@ +XGETTEXT = $(XGETTEXT_$(USE_MSGCTXT)) +MSGMERGE = msgmerge +MSGMERGE_UPDATE = @MSGMERGE@ --update +MSGINIT = msginit +MSGCONV = msgconv +MSGFILTER = msgfilter + +POFILES = @POFILES@ +GMOFILES = @GMOFILES@ +UPDATEPOFILES = @UPDATEPOFILES@ +DUMMYPOFILES = @DUMMYPOFILES@ +DISTFILES.common = Makefile.in.in remove-potcdate.sin \ +$(DISTFILES.common.extra1) $(DISTFILES.common.extra2) $(DISTFILES.common.extra3) +DISTFILES = $(DISTFILES.common) Makevars POTFILES.in \ +$(POFILES) $(GMOFILES) \ +$(DISTFILES.extra1) $(DISTFILES.extra2) $(DISTFILES.extra3) + +POTFILES = \ + +CATALOGS = @CATALOGS@ + +POFILESDEPS_ = $(srcdir)/$(DOMAIN).pot +POFILESDEPS_yes = $(POFILESDEPS_) +POFILESDEPS_no = +POFILESDEPS = $(POFILESDEPS_$(PO_DEPENDS_ON_POT)) + +DISTFILESDEPS_ = update-po +DISTFILESDEPS_yes = $(DISTFILESDEPS_) +DISTFILESDEPS_no = +DISTFILESDEPS = $(DISTFILESDEPS_$(DIST_DEPENDS_ON_UPDATE_PO)) + +# Makevars gets inserted here. (Don't remove this line!) + +.SUFFIXES: +.SUFFIXES: .po .gmo .mo .sed .sin .nop .po-create .po-update + +.po.mo: + @echo "$(MSGFMT) -c -o $@ $<"; \ + $(MSGFMT) -c -o t-$@ $< && mv t-$@ $@ + +.po.gmo: + @lang=`echo $* | sed -e 's,.*/,,'`; \ + test "$(srcdir)" = . && cdcmd="" || cdcmd="cd $(srcdir) && "; \ + echo "$${cdcmd}rm -f $${lang}.gmo && $(GMSGFMT) -c --statistics --verbose -o $${lang}.gmo $${lang}.po"; \ + cd $(srcdir) && rm -f $${lang}.gmo && $(GMSGFMT) -c --statistics --verbose -o t-$${lang}.gmo $${lang}.po && mv t-$${lang}.gmo $${lang}.gmo + +.sin.sed: + sed -e '/^#/d' $< > t-$@ + mv t-$@ $@ + + +all: all-@USE_NLS@ + +all-yes: stamp-po +all-no: + +# Ensure that the gettext macros and this Makefile.in.in are in sync. +CHECK_MACRO_VERSION = \ + test "$(GETTEXT_MACRO_VERSION)" = "@GETTEXT_MACRO_VERSION@" \ + || { echo "*** error: gettext infrastructure mismatch: using a Makefile.in.in from gettext version $(GETTEXT_MACRO_VERSION) but the autoconf macros are from gettext version @GETTEXT_MACRO_VERSION@" 1>&2; \ + exit 1; \ + } + +# $(srcdir)/$(DOMAIN).pot is only created when needed. When xgettext finds no +# internationalized messages, no $(srcdir)/$(DOMAIN).pot is created (because +# we don't want to bother translators with empty POT files). We assume that +# LINGUAS is empty in this case, i.e. $(POFILES) and $(GMOFILES) are empty. +# In this case, stamp-po is a nop (i.e. a phony target). + +# stamp-po is a timestamp denoting the last time at which the CATALOGS have +# been loosely updated. Its purpose is that when a developer or translator +# checks out the package via CVS, and the $(DOMAIN).pot file is not in CVS, +# "make" will update the $(DOMAIN).pot and the $(CATALOGS), but subsequent +# invocations of "make" will do nothing. This timestamp would not be necessary +# if updating the $(CATALOGS) would always touch them; however, the rule for +# $(POFILES) has been designed to not touch files that don't need to be +# changed. +stamp-po: $(srcdir)/$(DOMAIN).pot + @$(CHECK_MACRO_VERSION) + test ! -f $(srcdir)/$(DOMAIN).pot || \ + test -z "$(GMOFILES)" || $(MAKE) $(GMOFILES) + @test ! -f $(srcdir)/$(DOMAIN).pot || { \ + echo "touch stamp-po" && \ + echo timestamp > stamp-poT && \ + mv stamp-poT stamp-po; \ + } + +# Note: Target 'all' must not depend on target '$(DOMAIN).pot-update', +# otherwise packages like GCC can not be built if only parts of the source +# have been downloaded. + +# This target rebuilds $(DOMAIN).pot; it is an expensive operation. +# Note that $(DOMAIN).pot is not touched if it doesn't need to be changed. +# The determination of whether the package xyz is a GNU one is based on the +# heuristic whether some file in the top level directory mentions "GNU xyz". +# If GNU 'find' is available, we avoid grepping through monster files. +$(DOMAIN).pot-update: $(POTFILES) $(srcdir)/POTFILES.in remove-potcdate.sed + package_gnu="$(PACKAGE_GNU)"; \ + test -n "$$package_gnu" || { \ + if { if (LC_ALL=C find --version) 2>/dev/null | grep GNU >/dev/null; then \ + LC_ALL=C find -L $(top_srcdir) -maxdepth 1 -type f \ + -size -10000000c -exec grep 'GNU @PACKAGE@' \ + /dev/null '{}' ';' 2>/dev/null; \ + else \ + LC_ALL=C grep 'GNU @PACKAGE@' $(top_srcdir)/* 2>/dev/null; \ + fi; \ + } | grep -v 'libtool:' >/dev/null; then \ + package_gnu=yes; \ + else \ + package_gnu=no; \ + fi; \ + }; \ + if test "$$package_gnu" = "yes"; then \ + package_prefix='GNU '; \ + else \ + package_prefix=''; \ + fi; \ + if test -n '$(MSGID_BUGS_ADDRESS)' || test '$(PACKAGE_BUGREPORT)' = '@'PACKAGE_BUGREPORT'@'; then \ + msgid_bugs_address='$(MSGID_BUGS_ADDRESS)'; \ + else \ + msgid_bugs_address='$(PACKAGE_BUGREPORT)'; \ + fi; \ + case `$(XGETTEXT) --version | sed 1q | sed -e 's,^[^0-9]*,,'` in \ + '' | 0.[0-9] | 0.[0-9].* | 0.1[0-5] | 0.1[0-5].* | 0.16 | 0.16.[0-1]*) \ + $(XGETTEXT) --default-domain=$(DOMAIN) --directory=$(top_srcdir) \ + --add-comments=TRANSLATORS: $(XGETTEXT_OPTIONS) @XGETTEXT_EXTRA_OPTIONS@ \ + --files-from=$(srcdir)/POTFILES.in \ + --copyright-holder='$(COPYRIGHT_HOLDER)' \ + --msgid-bugs-address="$$msgid_bugs_address" \ + ;; \ + *) \ + $(XGETTEXT) --default-domain=$(DOMAIN) --directory=$(top_srcdir) \ + --add-comments=TRANSLATORS: $(XGETTEXT_OPTIONS) @XGETTEXT_EXTRA_OPTIONS@ \ + --files-from=$(srcdir)/POTFILES.in \ + --copyright-holder='$(COPYRIGHT_HOLDER)' \ + --package-name="$${package_prefix}@PACKAGE@" \ + --package-version='@VERSION@' \ + --msgid-bugs-address="$$msgid_bugs_address" \ + ;; \ + esac + test ! -f $(DOMAIN).po || { \ + if test -f $(srcdir)/$(DOMAIN).pot; then \ + sed -f remove-potcdate.sed < $(srcdir)/$(DOMAIN).pot > $(DOMAIN).1po && \ + sed -f remove-potcdate.sed < $(DOMAIN).po > $(DOMAIN).2po && \ + if cmp $(DOMAIN).1po $(DOMAIN).2po >/dev/null 2>&1; then \ + rm -f $(DOMAIN).1po $(DOMAIN).2po $(DOMAIN).po; \ + else \ + rm -f $(DOMAIN).1po $(DOMAIN).2po $(srcdir)/$(DOMAIN).pot && \ + mv $(DOMAIN).po $(srcdir)/$(DOMAIN).pot; \ + fi; \ + else \ + mv $(DOMAIN).po $(srcdir)/$(DOMAIN).pot; \ + fi; \ + } + +# This rule has no dependencies: we don't need to update $(DOMAIN).pot at +# every "make" invocation, only create it when it is missing. +# Only "make $(DOMAIN).pot-update" or "make dist" will force an update. +$(srcdir)/$(DOMAIN).pot: + $(MAKE) $(DOMAIN).pot-update + +# This target rebuilds a PO file if $(DOMAIN).pot has changed. +# Note that a PO file is not touched if it doesn't need to be changed. +$(POFILES): $(POFILESDEPS) + @lang=`echo $@ | sed -e 's,.*/,,' -e 's/\.po$$//'`; \ + if test -f "$(srcdir)/$${lang}.po"; then \ + test -f $(srcdir)/$(DOMAIN).pot || $(MAKE) $(srcdir)/$(DOMAIN).pot; \ + test "$(srcdir)" = . && cdcmd="" || cdcmd="cd $(srcdir) && "; \ + echo "$${cdcmd}$(MSGMERGE_UPDATE) $(MSGMERGE_OPTIONS) --lang=$${lang} $${lang}.po $(DOMAIN).pot"; \ + cd $(srcdir) \ + && { case `$(MSGMERGE_UPDATE) --version | sed 1q | sed -e 's,^[^0-9]*,,'` in \ + '' | 0.[0-9] | 0.[0-9].* | 0.1[0-7] | 0.1[0-7].*) \ + $(MSGMERGE_UPDATE) $(MSGMERGE_OPTIONS) $${lang}.po $(DOMAIN).pot;; \ + *) \ + $(MSGMERGE_UPDATE) $(MSGMERGE_OPTIONS) --lang=$${lang} $${lang}.po $(DOMAIN).pot;; \ + esac; \ + }; \ + else \ + $(MAKE) $${lang}.po-create; \ + fi + + +install: install-exec install-data +install-exec: +install-data: install-data-@USE_NLS@ + if test "$(PACKAGE)" = "gettext-tools"; then \ + $(mkdir_p) $(DESTDIR)$(gettextsrcdir); \ + for file in $(DISTFILES.common) Makevars.template; do \ + $(INSTALL_DATA) $(srcdir)/$$file \ + $(DESTDIR)$(gettextsrcdir)/$$file; \ + done; \ + for file in Makevars; do \ + rm -f $(DESTDIR)$(gettextsrcdir)/$$file; \ + done; \ + else \ + : ; \ + fi +install-data-no: all +install-data-yes: all + @catalogs='$(CATALOGS)'; \ + for cat in $$catalogs; do \ + cat=`basename $$cat`; \ + lang=`echo $$cat | sed -e 's/\.gmo$$//'`; \ + dir=$(localedir)/$$lang/LC_MESSAGES; \ + $(mkdir_p) $(DESTDIR)$$dir; \ + if test -r $$cat; then realcat=$$cat; else realcat=$(srcdir)/$$cat; fi; \ + $(INSTALL_DATA) $$realcat $(DESTDIR)$$dir/$(DOMAIN).mo; \ + echo "installing $$realcat as $(DESTDIR)$$dir/$(DOMAIN).mo"; \ + for lc in '' $(EXTRA_LOCALE_CATEGORIES); do \ + if test -n "$$lc"; then \ + if (cd $(DESTDIR)$(localedir)/$$lang && LC_ALL=C ls -l -d $$lc 2>/dev/null) | grep ' -> ' >/dev/null; then \ + link=`cd $(DESTDIR)$(localedir)/$$lang && LC_ALL=C ls -l -d $$lc | sed -e 's/^.* -> //'`; \ + mv $(DESTDIR)$(localedir)/$$lang/$$lc $(DESTDIR)$(localedir)/$$lang/$$lc.old; \ + mkdir $(DESTDIR)$(localedir)/$$lang/$$lc; \ + (cd $(DESTDIR)$(localedir)/$$lang/$$lc.old && \ + for file in *; do \ + if test -f $$file; then \ + ln -s ../$$link/$$file $(DESTDIR)$(localedir)/$$lang/$$lc/$$file; \ + fi; \ + done); \ + rm -f $(DESTDIR)$(localedir)/$$lang/$$lc.old; \ + else \ + if test -d $(DESTDIR)$(localedir)/$$lang/$$lc; then \ + :; \ + else \ + rm -f $(DESTDIR)$(localedir)/$$lang/$$lc; \ + mkdir $(DESTDIR)$(localedir)/$$lang/$$lc; \ + fi; \ + fi; \ + rm -f $(DESTDIR)$(localedir)/$$lang/$$lc/$(DOMAIN).mo; \ + ln -s ../LC_MESSAGES/$(DOMAIN).mo $(DESTDIR)$(localedir)/$$lang/$$lc/$(DOMAIN).mo 2>/dev/null || \ + ln $(DESTDIR)$(localedir)/$$lang/LC_MESSAGES/$(DOMAIN).mo $(DESTDIR)$(localedir)/$$lang/$$lc/$(DOMAIN).mo 2>/dev/null || \ + cp -p $(DESTDIR)$(localedir)/$$lang/LC_MESSAGES/$(DOMAIN).mo $(DESTDIR)$(localedir)/$$lang/$$lc/$(DOMAIN).mo; \ + echo "installing $$realcat link as $(DESTDIR)$(localedir)/$$lang/$$lc/$(DOMAIN).mo"; \ + fi; \ + done; \ + done + +install-strip: install + +installdirs: installdirs-exec installdirs-data +installdirs-exec: +installdirs-data: installdirs-data-@USE_NLS@ + if test "$(PACKAGE)" = "gettext-tools"; then \ + $(mkdir_p) $(DESTDIR)$(gettextsrcdir); \ + else \ + : ; \ + fi +installdirs-data-no: +installdirs-data-yes: + @catalogs='$(CATALOGS)'; \ + for cat in $$catalogs; do \ + cat=`basename $$cat`; \ + lang=`echo $$cat | sed -e 's/\.gmo$$//'`; \ + dir=$(localedir)/$$lang/LC_MESSAGES; \ + $(mkdir_p) $(DESTDIR)$$dir; \ + for lc in '' $(EXTRA_LOCALE_CATEGORIES); do \ + if test -n "$$lc"; then \ + if (cd $(DESTDIR)$(localedir)/$$lang && LC_ALL=C ls -l -d $$lc 2>/dev/null) | grep ' -> ' >/dev/null; then \ + link=`cd $(DESTDIR)$(localedir)/$$lang && LC_ALL=C ls -l -d $$lc | sed -e 's/^.* -> //'`; \ + mv $(DESTDIR)$(localedir)/$$lang/$$lc $(DESTDIR)$(localedir)/$$lang/$$lc.old; \ + mkdir $(DESTDIR)$(localedir)/$$lang/$$lc; \ + (cd $(DESTDIR)$(localedir)/$$lang/$$lc.old && \ + for file in *; do \ + if test -f $$file; then \ + ln -s ../$$link/$$file $(DESTDIR)$(localedir)/$$lang/$$lc/$$file; \ + fi; \ + done); \ + rm -f $(DESTDIR)$(localedir)/$$lang/$$lc.old; \ + else \ + if test -d $(DESTDIR)$(localedir)/$$lang/$$lc; then \ + :; \ + else \ + rm -f $(DESTDIR)$(localedir)/$$lang/$$lc; \ + mkdir $(DESTDIR)$(localedir)/$$lang/$$lc; \ + fi; \ + fi; \ + fi; \ + done; \ + done + +# Define this as empty until I found a useful application. +installcheck: + +uninstall: uninstall-exec uninstall-data +uninstall-exec: +uninstall-data: uninstall-data-@USE_NLS@ + if test "$(PACKAGE)" = "gettext-tools"; then \ + for file in $(DISTFILES.common) Makevars.template; do \ + rm -f $(DESTDIR)$(gettextsrcdir)/$$file; \ + done; \ + else \ + : ; \ + fi +uninstall-data-no: +uninstall-data-yes: + catalogs='$(CATALOGS)'; \ + for cat in $$catalogs; do \ + cat=`basename $$cat`; \ + lang=`echo $$cat | sed -e 's/\.gmo$$//'`; \ + for lc in LC_MESSAGES $(EXTRA_LOCALE_CATEGORIES); do \ + rm -f $(DESTDIR)$(localedir)/$$lang/$$lc/$(DOMAIN).mo; \ + done; \ + done + +check: all + +info dvi ps pdf html tags TAGS ctags CTAGS ID: + +mostlyclean: + rm -f remove-potcdate.sed + rm -f stamp-poT + rm -f core core.* $(DOMAIN).po $(DOMAIN).1po $(DOMAIN).2po *.new.po + rm -fr *.o + +clean: mostlyclean + +distclean: clean + rm -f Makefile Makefile.in POTFILES *.mo + +maintainer-clean: distclean + @echo "This command is intended for maintainers to use;" + @echo "it deletes files that may require special tools to rebuild." + rm -f stamp-po $(GMOFILES) + +distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir) +dist distdir: + test -z "$(DISTFILESDEPS)" || $(MAKE) $(DISTFILESDEPS) + @$(MAKE) dist2 +# This is a separate target because 'update-po' must be executed before. +dist2: stamp-po $(DISTFILES) + dists="$(DISTFILES)"; \ + if test "$(PACKAGE)" = "gettext-tools"; then \ + dists="$$dists Makevars.template"; \ + fi; \ + if test -f $(srcdir)/$(DOMAIN).pot; then \ + dists="$$dists $(DOMAIN).pot stamp-po"; \ + fi; \ + if test -f $(srcdir)/ChangeLog; then \ + dists="$$dists ChangeLog"; \ + fi; \ + for i in 0 1 2 3 4 5 6 7 8 9; do \ + if test -f $(srcdir)/ChangeLog.$$i; then \ + dists="$$dists ChangeLog.$$i"; \ + fi; \ + done; \ + if test -f $(srcdir)/LINGUAS; then dists="$$dists LINGUAS"; fi; \ + for file in $$dists; do \ + if test -f $$file; then \ + cp -p $$file $(distdir) || exit 1; \ + else \ + cp -p $(srcdir)/$$file $(distdir) || exit 1; \ + fi; \ + done + +update-po: Makefile + $(MAKE) $(DOMAIN).pot-update + test -z "$(UPDATEPOFILES)" || $(MAKE) $(UPDATEPOFILES) + $(MAKE) update-gmo + +# General rule for creating PO files. + +.nop.po-create: + @lang=`echo $@ | sed -e 's/\.po-create$$//'`; \ + echo "File $$lang.po does not exist. If you are a translator, you can create it through 'msginit'." 1>&2; \ + exit 1 + +# General rule for updating PO files. + +.nop.po-update: + @lang=`echo $@ | sed -e 's/\.po-update$$//'`; \ + if test "$(PACKAGE)" = "gettext-tools"; then PATH=`pwd`/../src:$$PATH; fi; \ + tmpdir=`pwd`; \ + echo "$$lang:"; \ + test "$(srcdir)" = . && cdcmd="" || cdcmd="cd $(srcdir) && "; \ + echo "$${cdcmd}$(MSGMERGE) $(MSGMERGE_OPTIONS) --lang=$$lang $$lang.po $(DOMAIN).pot -o $$lang.new.po"; \ + cd $(srcdir); \ + if { case `$(MSGMERGE) --version | sed 1q | sed -e 's,^[^0-9]*,,'` in \ + '' | 0.[0-9] | 0.[0-9].* | 0.1[0-7] | 0.1[0-7].*) \ + $(MSGMERGE) $(MSGMERGE_OPTIONS) -o $$tmpdir/$$lang.new.po $$lang.po $(DOMAIN).pot;; \ + *) \ + $(MSGMERGE) $(MSGMERGE_OPTIONS) --lang=$$lang -o $$tmpdir/$$lang.new.po $$lang.po $(DOMAIN).pot;; \ + esac; \ + }; then \ + if cmp $$lang.po $$tmpdir/$$lang.new.po >/dev/null 2>&1; then \ + rm -f $$tmpdir/$$lang.new.po; \ + else \ + if mv -f $$tmpdir/$$lang.new.po $$lang.po; then \ + :; \ + else \ + echo "msgmerge for $$lang.po failed: cannot move $$tmpdir/$$lang.new.po to $$lang.po" 1>&2; \ + exit 1; \ + fi; \ + fi; \ + else \ + echo "msgmerge for $$lang.po failed!" 1>&2; \ + rm -f $$tmpdir/$$lang.new.po; \ + fi + +$(DUMMYPOFILES): + +update-gmo: Makefile $(GMOFILES) + @: + +# Recreate Makefile by invoking config.status. Explicitly invoke the shell, +# because execution permission bits may not work on the current file system. +# Use @SHELL@, which is the shell determined by autoconf for the use by its +# scripts, not $(SHELL) which is hardwired to /bin/sh and may be deficient. +Makefile: Makefile.in.in Makevars $(top_builddir)/config.status @POMAKEFILEDEPS@ + cd $(top_builddir) \ + && @SHELL@ ./config.status $(subdir)/$@.in po-directories + +force: + +# Tell versions [3.59,3.63) of GNU make not to export all variables. +# Otherwise a system limit (for SysV at least) may be exceeded. +.NOEXPORT: diff -Nru xcfa-4.3.8/po_cli/Makevars xcfa-5.0.1/po_cli/Makevars --- xcfa-4.3.8/po_cli/Makevars 1970-01-01 00:00:00.000000000 +0000 +++ xcfa-5.0.1/po_cli/Makevars 2014-11-11 21:10:08.000000000 +0000 @@ -0,0 +1,72 @@ +# Makefile variables for PO directory in any package using GNU gettext. + +# Usually the message domain is the same as the package name. +DOMAIN = $(PACKAGE) + +# These two variables depend on the location of this directory. +subdir = po +top_builddir = .. + +# These options get passed to xgettext. +XGETTEXT_OPTIONS = --keyword=_ --keyword=N_ + +# This is the copyright holder that gets inserted into the header of the +# $(DOMAIN).pot file. Set this to the copyright holder of the surrounding +# package. (Note that the msgstr strings, extracted from the package's +# sources, belong to the copyright holder of the package.) Translators are +# expected to transfer the copyright for their translations to this person +# or entity, or to disclaim their copyright. The empty string stands for +# the public domain; in this case the translators are expected to disclaim +# their copyright. +COPYRIGHT_HOLDER = Free Software Foundation, Inc. + +# This tells whether or not to prepend "GNU " prefix to the package +# name that gets inserted into the header of the $(DOMAIN).pot file. +# Possible values are "yes", "no", or empty. If it is empty, try to +# detect it automatically by scanning the files in $(top_srcdir) for +# "GNU packagename" string. +PACKAGE_GNU = + +# This is the email address or URL to which the translators shall report +# bugs in the untranslated strings: +# - Strings which are not entire sentences, see the maintainer guidelines +# in the GNU gettext documentation, section 'Preparing Strings'. +# - Strings which use unclear terms or require additional context to be +# understood. +# - Strings which make invalid assumptions about notation of date, time or +# money. +# - Pluralisation problems. +# - Incorrect English spelling. +# - Incorrect formatting. +# It can be your email address, or a mailing list address where translators +# can write to without being subscribed, or the URL of a web page through +# which the translators can contact you. +MSGID_BUGS_ADDRESS = + +# This is the list of locale categories, beyond LC_MESSAGES, for which the +# message catalogs shall be used. It is usually empty. +EXTRA_LOCALE_CATEGORIES = + +# This tells whether the $(DOMAIN).pot file contains messages with an 'msgctxt' +# context. Possible values are "yes" and "no". Set this to yes if the +# package uses functions taking also a message context, like pgettext(), or +# if in $(XGETTEXT_OPTIONS) you define keywords with a context argument. +USE_MSGCTXT = no + +# These options get passed to msgmerge. +# Useful options are in particular: +# --previous to keep previous msgids of translated messages, +# --quiet to reduce the verbosity. +MSGMERGE_OPTIONS = + +# This tells whether or not to regenerate a PO file when $(DOMAIN).pot +# has changed. Possible values are "yes" and "no". Set this to no if +# the POT file is checked in the repository and the version control +# program ignores timestamps. +PO_DEPENDS_ON_POT = yes + +# This tells whether or not to forcibly update $(DOMAIN).pot and +# regenerate PO files on "make dist". Possible values are "yes" and +# "no". Set this to no if the POT file and PO files are maintained +# externally. +DIST_DEPENDS_ON_UPDATE_PO = yes Binary files /tmp/U9mREQ24T4/xcfa-4.3.8/po_cli/nl.gmo and /tmp/9PqOMEw8oW/xcfa-5.0.1/po_cli/nl.gmo differ diff -Nru xcfa-4.3.8/po_cli/nl.po xcfa-5.0.1/po_cli/nl.po --- xcfa-4.3.8/po_cli/nl.po 1970-01-01 00:00:00.000000000 +0000 +++ xcfa-5.0.1/po_cli/nl.po 2015-02-07 16:34:36.000000000 +0000 @@ -0,0 +1,399 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2014 Free Software Foundation, Inc. +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR , 2014. +# +msgid "" +msgstr "" +"Project-Id-Version: xcfa_cli 0.0.6\n" +"Report-Msgid-Bugs-To: http://www.xcfa.tuxfamily.org/\n" +"POT-Creation-Date: 2015-02-07 17:34+0100\n" +"PO-Revision-Date: 2014-11-11 22:10:09.622832\n" +"Last-Translator: MyName \n" +"Language-Team: english\n" +"Language: nl\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: src_cli/main.c:313 +#, c-format +msgid "" +"xcfa_cli is an implementation of xcfa in command line.\n" +"xcfa_cli is an application for conversion, normalization, reconfiguring wav " +"files and cut audio files ...\n" +"\n" +"What xcfa_cli can do:\n" +" - replaygain on files: flac, mp3, ogg, wavpack\n" +" - conversions:\n" +" - from files:\n" +" wav, flac, ape, wavpack, ogg, m4a, mpc, mp3, wma, shorten, rm, dts, " +"aif, ac3\t\t\n" +" - to files:\t\t\t\n" +" wav, flac, ape, wavpack, ogg, m4a, mpc, mp3, aac\n" +" - conversion settings for file management:\n" +" flac, ape, wavpack, ogg, m4a, aac, mpc, mp3\n" +" - management tags\n" +" - management cue wav file\n" +" - manipulation of the frequency, track and bit wav files\n" +" - standardization on files: wav, mp3, ogg\n" +" - cuts (split) wav files\n" +" - displaying information on files\n" +msgstr "" +"xcfa_cli is an implementation of xcfa in command line.\n" +"xcfa_cli is an application for conversion, normalization, reconfiguring wav " +"files and cut audio files ...\n" +"\n" +"What xcfa_cli can do:\n" +" - replaygain on files: flac, mp3, ogg, wavpack\n" +" - conversions:\n" +" - from files:\n" +" wav, flac, ape, wavpack, ogg, m4a, mpc, mp3, wma, shorten, rm, dts, " +"aif, ac3\t\t\n" +" - to files:\t\t\t\n" +" wav, flac, ape, wavpack, ogg, m4a, mpc, mp3, aac\n" +" - conversion settings for file management:\n" +" flac, ape, wavpack, ogg, m4a, aac, mpc, mp3\n" +" - management tags\n" +" - management cue wav file\n" +" - manipulation of the frequency, track and bit wav files\n" +" - standardization on files: wav, mp3, ogg\n" +" - cuts (split) wav files\n" +" - displaying information on files\n" + +#: src_cli/main.c:338 +#, c-format +msgid "" +" --verbose Verbose mode\n" +" -h --help Print help mode and quit\n" +"\n" +" -i <\"file.type\"> --input <\"file.type\">\n" +" Input name file to convert in " +"inverted commas, by example: --input \"*.flac\"\n" +" Type input files: wav, flac, ape, " +"wavpack, ogg, m4a, mpc, mp3, wma, shorten, rm, dts, aif, ac3\n" +" -o --output \n" +" Destination folder. By default in " +"the source file folder.\n" +" -d --dest \n" +" Destination file: wav, flac, ape, " +"wavpack, ogg, m4a, mpc, mp3, aac\n" +" -r --recursion Recursive search\n" +" -e --ext2src Extract in the source folder. This " +"option is useful with '--recursion'\n" +" --nice Change the priority of running " +"processes in the interval: 0 .. 20\n" +"\n" +"Management options with default parameters:\n" +"\n" +" --op_flac <\"-5\">\n" +" --op_ape <\"c2000\">\n" +" --op_wavpack <\"-y -j1\">\n" +" --op_ogg <\"--quality=3\">\n" +" --op_m4a <\"-q 100\">\n" +" --op_aac <\"48\">\n" +" --op_mpc <\"--verbose --overwrite --insane\">\n" +" --op_mp3 <\"-h --nohist --noreplaygain -b 128\">\n" +"\n" +"Displays information about the files:\n" +"\n" +" --info_files Displays time, level dBFS, frequency/" +"track/quantification\n" +" --info_tags Displays tags\n" +" --info_head Displays head\n" +"\n" +"Management tags:\n" +"\n" +" --no_tag The tags will not be carried\n" +" --tag_album <\"tags\"> Tag of album\n" +" --tag_artist <\"tags\"> Tag of artist\n" +" --tag_title <\"tags\"> Tag of title\n" +" --tag_number <\"tags\"> Tag of number\n" +" --tag_genre <\"tags\"> Tag of genre\n" +" --tag_year <\"tags\"> Tag of year\n" +" --tag_comment <\"tags\"> Tag of comment\n" +" --tag_description <\"tags\"> Tag of description\n" +"\n" +"Management cue file:\n" +" -c --cue \n" +" info Provides information on a " +"WAV or CUE file.\n" +" extract Extract all tracks of a WAV " +"file.\n" +"\n" +"Management split:\n" +"\n" +" -s --split Mark the beginning of the file to be " +"cut.\n" +" -l --length Specifies the length of the file to " +"cut with the seconds parameter.\n" +"\n" +"Changing the settings of a WAV file:\n" +"\n" +" -f --frequency Changing the frequency: 8000, " +"22000, 32000, 44056, 44100, 48000, 88200, 96000 or other\n" +" -t --track Changing the number of tracks: 1, 2, " +"4, 6\n" +" -q --quantification Changing the quantification: 8, " +"16, 24, 32, 64\n" +"\n" +"Replaygain: dynamic modification for next files: FLAC, MP3, OGG, WAVPACK\n" +"\n" +" -g --replaygain \n" +" FLAC [ clear | album ]\n" +" MP3 [ clear | album | track ]\n" +" OGG [ clear | album | track ]\n" +" WAVPACK [ clear | album | track ]\n" +"\n" +"Normalize: static modification for next files: MP3, WAV, OGG\n" +" See an excellent article by @Dzef on standardization: http://ubunteros." +"tuxfamily.org/spip.php?article159\n" +"\n" +" --peak Action on a single file.\n" +" Maximum volume amplification for " +"each file:\n" +" Increase the overall level of the " +"signal so as to bring the level to 0 dBFS peak without changing dynamics.\n" +" --peak_album Action on a group of files.\n" +" Maximum volume boost for a group of " +"files in accordance with the level of differences between each of them.\n" +" If the maximum level of one or more " +"files is already at 0 dBFS, the level of all the selected files remain " +"unchanged\n" +" after normalization. So this mode " +"can be safely used almost systematically.\n" +" --mix_rms_album Action on a group of files.\n" +" Adjusting the average volume for a " +"group of files respecting average level of the differences between each of " +"them.\n" +" The selecting a value for a file " +"modifies the other files in the group.\n" +" --fix_rms Action on a single file.\n" +" Adjusting the average volume of each " +"file..\n" +"\n" +msgstr "" +" --verbose Verbose mode\n" +" -h --help Print help mode and quit\n" +"\n" +" -i <\"file.type\"> --input <\"file.type\">\n" +" Input name file to convert in " +"inverted commas, by example: --input \"*.flac\"\n" +" Type input files: wav, flac, ape, " +"wavpack, ogg, m4a, mpc, mp3, wma, shorten, rm, dts, aif, ac3\n" +" -o --output \n" +" Destination folder. By default in " +"the source file folder.\n" +" -d --dest \n" +" Destination file: wav, flac, ape, " +"wavpack, ogg, m4a, mpc, mp3, aac\n" +" -r --recursion Recursive search\n" +" -e --ext2src Extract in the source folder. This " +"option is useful with '--recursion'\n" +" --nice Change the priority of running " +"processes in the interval: 0 .. 20\n" +"\n" +"Management options with default parameters:\n" +"\n" +" --op_flac <\"-5\">\n" +" --op_ape <\"c2000\">\n" +" --op_wavpack <\"-y -j1\">\n" +" --op_ogg <\"--quality=3\">\n" +" --op_m4a <\"-q 100\">\n" +" --op_aac <\"48\">\n" +" --op_mpc <\"--verbose --overwrite --insane\">\n" +" --op_mp3 <\"-h --nohist --noreplaygain -b 128\">\n" +"\n" +"Displays information about the files:\n" +"\n" +" --info_files Displays time, level dBFS, frequency/" +"track/quantification\n" +" --info_tags Displays tags\n" +" --info_head Displays head\n" +"\n" +"Management tags:\n" +"\n" +" --no_tag The tags will not be carried\n" +" --tag_album <\"tags\"> Tag of album\n" +" --tag_artist <\"tags\"> Tag of artist\n" +" --tag_title <\"tags\"> Tag of title\n" +" --tag_number <\"tags\"> Tag of number\n" +" --tag_genre <\"tags\"> Tag of genre\n" +" --tag_year <\"tags\"> Tag of year\n" +" --tag_comment <\"tags\"> Tag of comment\n" +" --tag_description <\"tags\"> Tag of description\n" +"\n" +"Management cue file:\n" +" -c --cue \n" +" info Provides information on a " +"WAV or CUE file.\n" +" extract Extract all tracks of a WAV " +"file.\n" +"\n" +"Management split:\n" +"\n" +" -s --split Mark the beginning of the file to be " +"cut.\n" +" -l --length Specifies the length of the file to " +"cut with the seconds parameter.\n" +"\n" +"Changing the settings of a WAV file:\n" +"\n" +" -f --frequency Changing the frequency: 8000, " +"22000, 32000, 44056, 44100, 48000, 88200, 96000 or other\n" +" -t --track Changing the number of tracks: 1, 2, " +"4, 6\n" +" -q --quantification Changing the quantification: 8, " +"16, 24, 32, 64\n" +"\n" +"Replaygain: dynamic modification for next files: FLAC, MP3, OGG, WAVPACK\n" +"\n" +" -g --replaygain \n" +" FLAC [ clear | album ]\n" +" MP3 [ clear | album | track ]\n" +" OGG [ clear | album | track ]\n" +" WAVPACK [ clear | album | track ]\n" +"\n" +"Normalize: static modification for next files: MP3, WAV, OGG\n" +" See an excellent article by @Dzef on standardization: http://ubunteros." +"tuxfamily.org/spip.php?article159\n" +"\n" +" --peak Action on a single file.\n" +" Maximum volume amplification for " +"each file:\n" +" Increase the overall level of the " +"signal so as to bring the level to 0 dBFS peak without changing dynamics.\n" +" --peak_album Action on a group of files.\n" +" Maximum volume boost for a group of " +"files in accordance with the level of differences between each of them.\n" +" If the maximum level of one or more " +"files is already at 0 dBFS, the level of all the selected files remain " +"unchanged\n" +" after normalization. So this mode " +"can be safely used almost systematically.\n" +" --mix_rms_album Action on a group of files.\n" +" Adjusting the average volume for a " +"group of files respecting average level of the differences between each of " +"them.\n" +" The selecting a value for a file " +"modifies the other files in the group.\n" +" --fix_rms Action on a single file.\n" +" Adjusting the average volume of each " +"file..\n" +"\n" + +#: src_cli/main.c:431 +#, c-format +msgid "Example conversion:\n" +msgstr "Example conversion:\n" + +#: src_cli/main.c:438 +#, c-format +msgid "Conversion example with two inputs:\n" +msgstr "Conversion example with two inputs:\n" + +#: src_cli/main.c:443 +#, c-format +msgid "Example split:\n" +msgstr "Example split:\n" + +#: src_cli/main.c:450 +#, c-format +msgid "Example cue:\n" +msgstr "Example cue:\n" + +#: src_cli/main.c:458 +#, c-format +msgid "Example setting wav:\n" +msgstr "Example setting wav:\n" + +#: src_cli/main.c:463 +#, c-format +msgid "Example replaygain:\n" +msgstr "Example replaygain:\n" + +#: src_cli/main.c:469 +#, c-format +msgid "Example normalize:\n" +msgstr "Example normalize:\n" + +#: src_cli/main.c:478 +#, c-format +msgid "Example info:\n" +msgstr "Example info:\n" + +#: src_cli/prg_init.c:54 +msgid " Decode ATSC A/52 audio streams" +msgstr " Decode ATSC A/52 audio streams" + +#: src_cli/prg_init.c:62 +msgid " AAC+ encoder" +msgstr " AAC+ encode" + +#: src_cli/prg_init.c:70 +msgid " Cherche des renseignements sur les formats mp3" +msgstr " Cherche des renseignements sur les formats mp3" + +#: src_cli/prg_init.c:78 +msgid " Audio Codeur freeware" +msgstr " Audio Codeur freeware" + +#: src_cli/prg_init.c:86 +msgid " MPEG-4 AAC decodeur" +msgstr " MPEG-4 AAC decodeu" + +#: src_cli/prg_init.c:94 +msgid " Conversion wav : flac" +msgstr " Conversion wav : flac" + +#: src_cli/prg_init.c:102 +msgid " Conversion wav : mp3" +msgstr " Conversion wav : mp3" + +#: src_cli/prg_init.c:111 +msgid " Monkey's Audio Console Front End : APE" +msgstr " Monkey's Audio Console Front End : APE" + +#: src_cli/prg_init.c:120 src_cli/prg_init.c:128 +msgid " MusePack commandline utilities" +msgstr " MusePack commandline utilities" + +#: src_cli/prg_init.c:136 +msgid " Lecteur et extracteur" +msgstr " Lecteur et extracteur" + +#: src_cli/prg_init.c:144 +msgid " Replaygain pour les fichiers mp3" +msgstr " Replaygain pour les fichiers mp3" + +#: src_cli/prg_init.c:152 +msgid " Normaliseur de fichier wav" +msgstr " Normaliseur de fichier wa" + +#: src_cli/prg_init.c:160 +msgid " A program to send desktop notifications" +msgstr " A program to send desktop notifications" + +#: src_cli/prg_init.c:168 +msgid " Forte compression au format wave" +msgstr " Forte compression au format wave" + +#: src_cli/prg_init.c:176 +msgid " Decoupage de fichiers sans decodage" +msgstr " Decoupage de fichiers sans decodage" + +#: src_cli/prg_init.c:184 +msgid " Transformation universelle de fichiers son" +msgstr " Transformation universelle de fichiers son" + +#: src_cli/prg_init.c:192 +msgid " Conversion wav : ogg" +msgstr " Conversion wav : og" + +#: src_cli/prg_init.c:200 +msgid " Replaygain pour les fichiers ogg" +msgstr " Replaygain pour les fichiers ogg" + +#: src_cli/prg_init.c:208 +msgid " WAVPACK Hybrid Lossless Audio Compressor" +msgstr " WAVPACK Hybrid Lossless Audio Compressor" diff -Nru xcfa-4.3.8/po_cli/POTFILES.in xcfa-5.0.1/po_cli/POTFILES.in --- xcfa-4.3.8/po_cli/POTFILES.in 1970-01-01 00:00:00.000000000 +0000 +++ xcfa-5.0.1/po_cli/POTFILES.in 2015-02-05 17:24:08.000000000 +0000 @@ -0,0 +1,30 @@ +# List of source files which contain translatable strings. +src_cli/clib.c +src_cli/conv.c +src_cli/cue.c +src_cli/file_conv.c +src_cli/file_is.c +src_cli/get_info.c +src_cli/main.c +src_cli/normalize.c +src_cli/prg_init.c +src_cli/replaygain.c +src_cli/split.c +src_cli/tags_aac.c +src_cli/tags_ac3.c +src_cli/tags_aiff.c +src_cli/tags_ape.c +src_cli/tags.c +src_cli/tags_dts.c +src_cli/tags_flac.c +src_cli/tags_m4a.c +src_cli/tags_mp3.c +src_cli/tags_mpc.c +src_cli/tags_ogg.c +src_cli/tags_rm.c +src_cli/tags_shn.c +src_cli/tags_wav.c +src_cli/tags_wavpack.c +src_cli/tags_wma.c +src_cli/utils.c +src_cli/wav.c diff -Nru xcfa-4.3.8/po_cli/quot.sed xcfa-5.0.1/po_cli/quot.sed --- xcfa-4.3.8/po_cli/quot.sed 1970-01-01 00:00:00.000000000 +0000 +++ xcfa-5.0.1/po_cli/quot.sed 2014-11-11 21:10:08.000000000 +0000 @@ -0,0 +1,6 @@ +s/"\([^"]*\)"/“\1”/g +s/`\([^`']*\)'/‘\1’/g +s/ '\([^`']*\)' / ‘\1’ /g +s/ '\([^`']*\)'$/ ‘\1’/g +s/^'\([^`']*\)' /‘\1’ /g +s/“”/""/g diff -Nru xcfa-4.3.8/po_cli/remove-potcdate.sin xcfa-5.0.1/po_cli/remove-potcdate.sin --- xcfa-4.3.8/po_cli/remove-potcdate.sin 1970-01-01 00:00:00.000000000 +0000 +++ xcfa-5.0.1/po_cli/remove-potcdate.sin 2014-11-11 21:10:08.000000000 +0000 @@ -0,0 +1,19 @@ +# Sed script that remove the POT-Creation-Date line in the header entry +# from a POT file. +# +# The distinction between the first and the following occurrences of the +# pattern is achieved by looking at the hold space. +/^"POT-Creation-Date: .*"$/{ +x +# Test if the hold space is empty. +s/P/P/ +ta +# Yes it was empty. First occurrence. Remove the line. +g +d +bb +:a +# The hold space was nonempty. Following occurrences. Do nothing. +x +:b +} diff -Nru xcfa-4.3.8/po_cli/Rules-quot xcfa-5.0.1/po_cli/Rules-quot --- xcfa-4.3.8/po_cli/Rules-quot 1970-01-01 00:00:00.000000000 +0000 +++ xcfa-5.0.1/po_cli/Rules-quot 2014-11-11 21:10:08.000000000 +0000 @@ -0,0 +1,58 @@ +# This file, Rules-quot, can be copied and used freely without restrictions. +# Special Makefile rules for English message catalogs with quotation marks. + +DISTFILES.common.extra1 = quot.sed boldquot.sed en@quot.header en@boldquot.header insert-header.sin Rules-quot + +.SUFFIXES: .insert-header .po-update-en + +en@quot.po-create: + $(MAKE) en@quot.po-update +en@boldquot.po-create: + $(MAKE) en@boldquot.po-update + +en@quot.po-update: en@quot.po-update-en +en@boldquot.po-update: en@boldquot.po-update-en + +.insert-header.po-update-en: + @lang=`echo $@ | sed -e 's/\.po-update-en$$//'`; \ + if test "$(PACKAGE)" = "gettext-tools"; then PATH=`pwd`/../src:$$PATH; GETTEXTLIBDIR=`cd $(top_srcdir)/src && pwd`; export GETTEXTLIBDIR; fi; \ + tmpdir=`pwd`; \ + echo "$$lang:"; \ + ll=`echo $$lang | sed -e 's/@.*//'`; \ + LC_ALL=C; export LC_ALL; \ + cd $(srcdir); \ + if $(MSGINIT) -i $(DOMAIN).pot --no-translator -l $$lang -o - 2>/dev/null \ + | $(SED) -f $$tmpdir/$$lang.insert-header | $(MSGCONV) -t UTF-8 | \ + { case `$(MSGFILTER) --version | sed 1q | sed -e 's,^[^0-9]*,,'` in \ + '' | 0.[0-9] | 0.[0-9].* | 0.1[0-8] | 0.1[0-8].*) \ + $(MSGFILTER) $(SED) -f `echo $$lang | sed -e 's/.*@//'`.sed \ + ;; \ + *) \ + $(MSGFILTER) `echo $$lang | sed -e 's/.*@//'` \ + ;; \ + esac } 2>/dev/null > $$tmpdir/$$lang.new.po \ + ; then \ + if cmp $$lang.po $$tmpdir/$$lang.new.po >/dev/null 2>&1; then \ + rm -f $$tmpdir/$$lang.new.po; \ + else \ + if mv -f $$tmpdir/$$lang.new.po $$lang.po; then \ + :; \ + else \ + echo "creation of $$lang.po failed: cannot move $$tmpdir/$$lang.new.po to $$lang.po" 1>&2; \ + exit 1; \ + fi; \ + fi; \ + else \ + echo "creation of $$lang.po failed!" 1>&2; \ + rm -f $$tmpdir/$$lang.new.po; \ + fi + +en@quot.insert-header: insert-header.sin + sed -e '/^#/d' -e 's/HEADER/en@quot.header/g' $(srcdir)/insert-header.sin > en@quot.insert-header + +en@boldquot.insert-header: insert-header.sin + sed -e '/^#/d' -e 's/HEADER/en@boldquot.header/g' $(srcdir)/insert-header.sin > en@boldquot.insert-header + +mostlyclean: mostlyclean-quot +mostlyclean-quot: + rm -f *.insert-header diff -Nru xcfa-4.3.8/po_cli/stamp-po xcfa-5.0.1/po_cli/stamp-po --- xcfa-4.3.8/po_cli/stamp-po 1970-01-01 00:00:00.000000000 +0000 +++ xcfa-5.0.1/po_cli/stamp-po 2015-02-07 16:34:37.000000000 +0000 @@ -0,0 +1 @@ +timestamp diff -Nru xcfa-4.3.8/po_cli/xcfa_cli.pot xcfa-5.0.1/po_cli/xcfa_cli.pot --- xcfa-4.3.8/po_cli/xcfa_cli.pot 1970-01-01 00:00:00.000000000 +0000 +++ xcfa-5.0.1/po_cli/xcfa_cli.pot 2015-02-07 16:34:36.000000000 +0000 @@ -0,0 +1,272 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR Free Software Foundation, Inc. +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR , YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: xcfa 5.0.1\n" +"Report-Msgid-Bugs-To: http://www.xcfa.tuxfamily.org/\n" +"POT-Creation-Date: 2015-02-07 17:34+0100\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"Language: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=CHARSET\n" +"Content-Transfer-Encoding: 8bit\n" + +#: src_cli/main.c:313 +#, c-format +msgid "" +"xcfa_cli is an implementation of xcfa in command line.\n" +"xcfa_cli is an application for conversion, normalization, reconfiguring wav " +"files and cut audio files ...\n" +"\n" +"What xcfa_cli can do:\n" +" - replaygain on files: flac, mp3, ogg, wavpack\n" +" - conversions:\n" +" - from files:\n" +" wav, flac, ape, wavpack, ogg, m4a, mpc, mp3, wma, shorten, rm, dts, " +"aif, ac3\t\t\n" +" - to files:\t\t\t\n" +" wav, flac, ape, wavpack, ogg, m4a, mpc, mp3, aac\n" +" - conversion settings for file management:\n" +" flac, ape, wavpack, ogg, m4a, aac, mpc, mp3\n" +" - management tags\n" +" - management cue wav file\n" +" - manipulation of the frequency, track and bit wav files\n" +" - standardization on files: wav, mp3, ogg\n" +" - cuts (split) wav files\n" +" - displaying information on files\n" +msgstr "" + +#: src_cli/main.c:338 +#, c-format +msgid "" +" --verbose Verbose mode\n" +" -h --help Print help mode and quit\n" +"\n" +" -i <\"file.type\"> --input <\"file.type\">\n" +" Input name file to convert in " +"inverted commas, by example: --input \"*.flac\"\n" +" Type input files: wav, flac, ape, " +"wavpack, ogg, m4a, mpc, mp3, wma, shorten, rm, dts, aif, ac3\n" +" -o --output \n" +" Destination folder. By default in " +"the source file folder.\n" +" -d --dest \n" +" Destination file: wav, flac, ape, " +"wavpack, ogg, m4a, mpc, mp3, aac\n" +" -r --recursion Recursive search\n" +" -e --ext2src Extract in the source folder. This " +"option is useful with '--recursion'\n" +" --nice Change the priority of running " +"processes in the interval: 0 .. 20\n" +"\n" +"Management options with default parameters:\n" +"\n" +" --op_flac <\"-5\">\n" +" --op_ape <\"c2000\">\n" +" --op_wavpack <\"-y -j1\">\n" +" --op_ogg <\"--quality=3\">\n" +" --op_m4a <\"-q 100\">\n" +" --op_aac <\"48\">\n" +" --op_mpc <\"--verbose --overwrite --insane\">\n" +" --op_mp3 <\"-h --nohist --noreplaygain -b 128\">\n" +"\n" +"Displays information about the files:\n" +"\n" +" --info_files Displays time, level dBFS, frequency/" +"track/quantification\n" +" --info_tags Displays tags\n" +" --info_head Displays head\n" +"\n" +"Management tags:\n" +"\n" +" --no_tag The tags will not be carried\n" +" --tag_album <\"tags\"> Tag of album\n" +" --tag_artist <\"tags\"> Tag of artist\n" +" --tag_title <\"tags\"> Tag of title\n" +" --tag_number <\"tags\"> Tag of number\n" +" --tag_genre <\"tags\"> Tag of genre\n" +" --tag_year <\"tags\"> Tag of year\n" +" --tag_comment <\"tags\"> Tag of comment\n" +" --tag_description <\"tags\"> Tag of description\n" +"\n" +"Management cue file:\n" +" -c --cue \n" +" info Provides information on a " +"WAV or CUE file.\n" +" extract Extract all tracks of a WAV " +"file.\n" +"\n" +"Management split:\n" +"\n" +" -s --split Mark the beginning of the file to be " +"cut.\n" +" -l --length Specifies the length of the file to " +"cut with the seconds parameter.\n" +"\n" +"Changing the settings of a WAV file:\n" +"\n" +" -f --frequency Changing the frequency: 8000, " +"22000, 32000, 44056, 44100, 48000, 88200, 96000 or other\n" +" -t --track Changing the number of tracks: 1, 2, " +"4, 6\n" +" -q --quantification Changing the quantification: 8, " +"16, 24, 32, 64\n" +"\n" +"Replaygain: dynamic modification for next files: FLAC, MP3, OGG, WAVPACK\n" +"\n" +" -g --replaygain \n" +" FLAC [ clear | album ]\n" +" MP3 [ clear | album | track ]\n" +" OGG [ clear | album | track ]\n" +" WAVPACK [ clear | album | track ]\n" +"\n" +"Normalize: static modification for next files: MP3, WAV, OGG\n" +" See an excellent article by @Dzef on standardization: http://ubunteros." +"tuxfamily.org/spip.php?article159\n" +"\n" +" --peak Action on a single file.\n" +" Maximum volume amplification for " +"each file:\n" +" Increase the overall level of the " +"signal so as to bring the level to 0 dBFS peak without changing dynamics.\n" +" --peak_album Action on a group of files.\n" +" Maximum volume boost for a group of " +"files in accordance with the level of differences between each of them.\n" +" If the maximum level of one or more " +"files is already at 0 dBFS, the level of all the selected files remain " +"unchanged\n" +" after normalization. So this mode " +"can be safely used almost systematically.\n" +" --mix_rms_album Action on a group of files.\n" +" Adjusting the average volume for a " +"group of files respecting average level of the differences between each of " +"them.\n" +" The selecting a value for a file " +"modifies the other files in the group.\n" +" --fix_rms Action on a single file.\n" +" Adjusting the average volume of each " +"file..\n" +"\n" +msgstr "" + +#: src_cli/main.c:431 +#, c-format +msgid "Example conversion:\n" +msgstr "" + +#: src_cli/main.c:438 +#, c-format +msgid "Conversion example with two inputs:\n" +msgstr "" + +#: src_cli/main.c:443 +#, c-format +msgid "Example split:\n" +msgstr "" + +#: src_cli/main.c:450 +#, c-format +msgid "Example cue:\n" +msgstr "" + +#: src_cli/main.c:458 +#, c-format +msgid "Example setting wav:\n" +msgstr "" + +#: src_cli/main.c:463 +#, c-format +msgid "Example replaygain:\n" +msgstr "" + +#: src_cli/main.c:469 +#, c-format +msgid "Example normalize:\n" +msgstr "" + +#: src_cli/main.c:478 +#, c-format +msgid "Example info:\n" +msgstr "" + +#: src_cli/prg_init.c:54 +msgid " Decode ATSC A/52 audio streams" +msgstr "" + +#: src_cli/prg_init.c:62 +msgid " AAC+ encoder" +msgstr "" + +#: src_cli/prg_init.c:70 +msgid " Cherche des renseignements sur les formats mp3" +msgstr "" + +#: src_cli/prg_init.c:78 +msgid " Audio Codeur freeware" +msgstr "" + +#: src_cli/prg_init.c:86 +msgid " MPEG-4 AAC decodeur" +msgstr "" + +#: src_cli/prg_init.c:94 +msgid " Conversion wav : flac" +msgstr "" + +#: src_cli/prg_init.c:102 +msgid " Conversion wav : mp3" +msgstr "" + +#: src_cli/prg_init.c:111 +msgid " Monkey's Audio Console Front End : APE" +msgstr "" + +#: src_cli/prg_init.c:120 src_cli/prg_init.c:128 +msgid " MusePack commandline utilities" +msgstr "" + +#: src_cli/prg_init.c:136 +msgid " Lecteur et extracteur" +msgstr "" + +#: src_cli/prg_init.c:144 +msgid " Replaygain pour les fichiers mp3" +msgstr "" + +#: src_cli/prg_init.c:152 +msgid " Normaliseur de fichier wav" +msgstr "" + +#: src_cli/prg_init.c:160 +msgid " A program to send desktop notifications" +msgstr "" + +#: src_cli/prg_init.c:168 +msgid " Forte compression au format wave" +msgstr "" + +#: src_cli/prg_init.c:176 +msgid " Decoupage de fichiers sans decodage" +msgstr "" + +#: src_cli/prg_init.c:184 +msgid " Transformation universelle de fichiers son" +msgstr "" + +#: src_cli/prg_init.c:192 +msgid " Conversion wav : ogg" +msgstr "" + +#: src_cli/prg_init.c:200 +msgid " Replaygain pour les fichiers ogg" +msgstr "" + +#: src_cli/prg_init.c:208 +msgid " WAVPACK Hybrid Lossless Audio Compressor" +msgstr "" diff -Nru xcfa-4.3.8/src/alsa_audio.c xcfa-5.0.1/src/alsa_audio.c --- xcfa-4.3.8/src/alsa_audio.c 2013-03-21 10:55:49.000000000 +0000 +++ xcfa-5.0.1/src/alsa_audio.c 2015-01-30 16:01:16.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : alsa_audio.c * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License @@ -53,29 +53,29 @@ VAR_ALSA VarAlsa = { - NULL, // snd_pcm_t *playback_handle; // Handle - 0, // guint bytesPerFrame; // 8, 16, 24, 32, 64 ... - 0, // guint channels; // 1, 2, 4 ... - 0, // gint SampleRate; // Frequence: 44100 ... - 0, // gint TotalChunckSize; // - NULL, // guchar *buffer; // Pointeur de buffer - 0, // guint SizeBuffer; // Taille requise du buffer - 0, // gint Sec; // Duree total en secondes - 0.0, // gdouble Percent; // Poucentage en retour sur la duree total - 0.0, // gdouble PercentSel; // Poucentage en retour depuis la selection + NULL, // snd_pcm_t *playback_handle; // Handle + 0, // guint bytesPerFrame; // 8, 16, 24, 32, 64 ... + 0, // guint channels; // 1, 2, 4 ... + 0, // gint SampleRate; // Frequence: 44100 ... + 0, // gint TotalChunckSize; // + NULL, // guchar *buffer; // Pointeur de buffer + 0, // guint SizeBuffer; // Taille requise du buffer + 0, // gint Sec; // Duree total en secondes + 0.0, // gdouble Percent; // Poucentage en retour sur la duree total + 0.0, // gdouble PercentSel; // Poucentage en retour depuis la selection - 0.0, // gdouble PercentBegin; // - 0.0, // gdouble PercentEnd; // + 0.0, // gdouble PercentBegin; // + 0.0, // gdouble PercentEnd; // - FALSE, // gboolean BoolThreadEnd; // - 0, // guint HandlerTimeout; // + FALSE, // gboolean BoolThreadEnd; // + 0, // guint HandlerTimeout; // - TRUE, // gboolean StopPlay; // - TRUE, // gboolean PauseAlsa; // + TRUE, // gboolean StopPlay; // + TRUE, // gboolean PauseAlsa; // NULL, // void (*FuncSetValueTime) (gdouble p_value); // - NULL, // void (*FuncIconeStop) (void); // + NULL, // void (*FuncIconeStop) (void); // - NULL // FILE *pFile; // Handler du fichier ouvert + NULL // FILE *pFile; // Handler du fichier ouvert }; @@ -164,9 +164,9 @@ gboolean AlsaAudio_open_device( const gchar *audio_dev, // "default" gint p_bitsPerSample, // 8, 16, 24, ... - gint p_channels, // 1, 2, 4, , ... + gint p_channels, // 1, 2, 4, , ... guint p_samplesPerSec, // 44100, ... - guint *p_bufferSize // Taille buffer retournee + guint *p_bufferSize // Taille buffer retournee ) { gint err; diff -Nru xcfa-4.3.8/src/alsa_audio.h xcfa-5.0.1/src/alsa_audio.h --- xcfa-4.3.8/src/alsa_audio.h 2013-03-21 10:55:27.000000000 +0000 +++ xcfa-5.0.1/src/alsa_audio.h 2015-01-21 16:28:42.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : alsa_audio.h * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License @@ -41,39 +41,39 @@ #include typedef struct { - snd_pcm_t *playback_handle; // Handle - guint bytesPerFrame; // 8, 16, 24, 32, 64 ... - guint channels; // 1, 2, 4 ... - gint SampleRate; // Frequence: 44100 ... - gint TotalChunckSize; // - guchar *buffer; // Pointeur de buffer - guint SizeBuffer; // Taille requise du buffer - gint Sec; // Duree total en secondes - gdouble Percent; // Poucentage en retour sur la duree total - gdouble PercentSel; // Poucentage en retour depuis la selection + snd_pcm_t *playback_handle; // Handle + guint bytesPerFrame; // 8, 16, 24, 32, 64 ... + guint channels; // 1, 2, 4 ... + gint SampleRate; // Frequence: 44100 ... + gint TotalChunckSize; // + guchar *buffer; // Pointeur de buffer + guint SizeBuffer; // Taille requise du buffer + gint Sec; // Duree total en secondes + gdouble Percent; // Poucentage en retour sur la duree total + gdouble PercentSel; // Poucentage en retour depuis la selection - gdouble PercentBegin; // - gdouble PercentEnd; // + gdouble PercentBegin; // + gdouble PercentEnd; // - gboolean BoolThreadEnd; // - guint HandlerTimeout; // + gboolean BoolThreadEnd; // + guint HandlerTimeout; // - gboolean StopPlay; // - gboolean PauseAlsa; // - void (*FuncSetValueTime) (gdouble p_value); // - void (*FuncIconeStop) (void); // + gboolean StopPlay; // + gboolean PauseAlsa; // + void (*FuncSetValueTime) (gdouble p_value); + void (*FuncIconeStop) (void); // - FILE *pFile; // Handler du fichier ouvert + FILE *pFile; // Handler du fichier ouvert } VAR_ALSA; extern VAR_ALSA VarAlsa; void AlsaAudio_close_device (void); gboolean AlsaAudio_open_device (const gchar *audio_dev, // default - gint p_bitsPerSample, // 8, 16, 24, ... - gint p_channels, // 1, 2, 4, ... - guint p_samplesPerSec, // 44100, ... - guint *p_bufferSize); // Taille buffer retournee + gint p_bitsPerSample, // 8, 16, 24, ... + gint p_channels, // 1, 2, 4, ... + guint p_samplesPerSec, // 44100, ... + guint *p_bufferSize); // Taille buffer retournee gboolean AlsaAudio_write (gint size); diff -Nru xcfa-4.3.8/src/alsa_play.c xcfa-5.0.1/src/alsa_play.c --- xcfa-4.3.8/src/alsa_play.c 2013-03-21 10:55:49.000000000 +0000 +++ xcfa-5.0.1/src/alsa_play.c 2015-01-30 16:01:16.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : alsa_play.c * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License @@ -142,7 +142,7 @@ fclose (VarAlsa.pFile); VarAlsa.pFile = NULL; AlsaAudio_close_device (); - gtk_timeout_remove (VarAlsa.HandlerTimeout); + g_source_remove (VarAlsa.HandlerTimeout); if (NULL != VarAlsa.FuncSetValueTime) (*VarAlsa.FuncSetValueTime) (VarAlsa.PercentSel); if (NULL != VarAlsa.FuncIconeStop) (*VarAlsa.FuncIconeStop) (); @@ -217,11 +217,11 @@ // TEST OUVERTURE DEVICE BoolOpenDevice = AlsaAudio_open_device( - "default", // const char *audio_dev, default + "default", // const char *audio_dev, default WaveHeader.FMT.BitsPerSample, // int p_bitsPerSample, 8, 16, 24, ... - WaveHeader.FMT.NumChannels, // int p_channels, 1, 2, 4, ... - WaveHeader.FMT.SampleRate, // unsigned int p_samplesPerSec 44100, ... - &VarAlsa.SizeBuffer // unsigned int *p_bufferSize, Taille buffer retournee + WaveHeader.FMT.NumChannels, // int p_channels, 1, 2, 4, ... + WaveHeader.FMT.SampleRate, // unsigned int p_samplesPerSec 44100, ... + &VarAlsa.SizeBuffer // unsigned int *p_bufferSize, Taille buffer retournee ); if (BoolOpenDevice == TRUE) { @@ -236,7 +236,7 @@ g_print ("\t%s\n", NameFile); pthread_create (&nmr_tid, NULL ,(void *)AlsaPlay_thread, (void *)NULL); PRINT("DEBUT TIMEOUT ALSA"); - VarAlsa.HandlerTimeout = gtk_timeout_add (100, AlsaPlay_timeout, 0); + VarAlsa.HandlerTimeout = g_timeout_add (100, AlsaPlay_timeout, 0); } else { fclose (VarAlsa.pFile); diff -Nru xcfa-4.3.8/src/alsa_play.h xcfa-5.0.1/src/alsa_play.h --- xcfa-4.3.8/src/alsa_play.h 2013-03-21 10:55:27.000000000 +0000 +++ xcfa-5.0.1/src/alsa_play.h 2015-01-21 16:28:42.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : alsa_play.h * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License diff -Nru xcfa-4.3.8/src/bacon.c xcfa-5.0.1/src/bacon.c --- xcfa-4.3.8/src/bacon.c 2013-03-21 10:55:49.000000000 +0000 +++ xcfa-5.0.1/src/bacon.c 2015-02-26 10:53:03.000000000 +0000 @@ -1,9 +1,9 @@ /* - * file : bacon.h + * file : bacon.c * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * Code from : bacon-message-connection.h * Copyright (C) 2003 @@ -47,14 +47,6 @@ #include #include -/* For the workspace/viewport stuff */ -#ifdef GDK_WINDOWING_X11 -#include -#include -#include -#include -#endif - #ifdef ENABLE_STATIC_LIBRARY #include "../lib/lib.h" #endif @@ -437,40 +429,3 @@ return conn->is_server; } -// -// -guint bacon_utils_get_current_workspace( void ) -{ - GdkWindow *root_win; - GdkDisplay *display; - Atom type; - gint format; - gulong nitems; - gulong bytes_after; - guint *current_desktop; - gint err, result; - guint ret = 0; - GdkScreen *screen = gdk_screen_get_default (); - - g_return_val_if_fail (GDK_IS_SCREEN (screen), 0); - - root_win = gdk_screen_get_root_window (screen); - display = gdk_screen_get_display (screen); - - gdk_error_trap_push (); - result = XGetWindowProperty (GDK_DISPLAY_XDISPLAY (display), GDK_WINDOW_XID (root_win), - gdk_x11_get_xatom_by_name_for_display (display, "_NET_CURRENT_DESKTOP"), - 0, G_MAXLONG, False, XA_CARDINAL, &type, &format, &nitems, - &bytes_after, (gpointer) ¤t_desktop); - err = gdk_error_trap_pop (); - - if (err != Success || result != Success) - return ret; - - if (type == XA_CARDINAL && format == 32 && nitems > 0) - ret = current_desktop[0]; - - XFree (current_desktop); - return ret; -} - diff -Nru xcfa-4.3.8/src/bacon.h xcfa-5.0.1/src/bacon.h --- xcfa-4.3.8/src/bacon.h 2013-03-21 10:55:27.000000000 +0000 +++ xcfa-5.0.1/src/bacon.h 2015-01-21 16:28:42.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : bacon.h * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * Code from : bacon-message-connection.h * Copyright (C) 2003 diff -Nru xcfa-4.3.8/src/builder.c xcfa-5.0.1/src/builder.c --- xcfa-4.3.8/src/builder.c 1970-01-01 00:00:00.000000000 +0000 +++ xcfa-5.0.1/src/builder.c 2015-02-02 09:24:04.000000000 +0000 @@ -0,0 +1,104 @@ +/* + * file : src/builder.c + * project : xcfa + * copyright : (C) 2015 by BULIN Claude + * + * This file is part of xcfa project + * + * xcfa is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; version 3. + * + * xcfa is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 + * USA + */ + + +#ifdef HAVE_CONFIG_H + #include "../config.h" +#endif +#include +#include + +#ifdef ENABLE_STATIC_LIBRARY + #include "../lib/lib.h" +#endif + +#include "global.h" + +GtkBuilder *Builder_open( gchar *p_name_glade, GtkBuilder *p_GtkBuilder ) +{ + GError *p_err = NULL; + gchar *CurrentDir = g_get_current_dir (); + gchar *PathCurrentDir = NULL; + gchar *PathShareProjet = NULL; + gchar *Path = NULL; + GtkBuilder *GtkBuilderLocal = NULL; + // if exist alloc return ok + if( NULL != p_GtkBuilder ) { + return( p_GtkBuilder ); + } + // if not init return + if( NULL == ( GtkBuilderLocal = gtk_builder_new() )) { + return( NULL ); + } + gtk_builder_set_translation_domain( GtkBuilderLocal, GETTEXT_PACKAGE ); + PathCurrentDir = g_strdup_printf( "%s/glade/%s", CurrentDir, p_name_glade ); + g_free( CurrentDir ); + CurrentDir = NULL; +/** +#ifdef ENABLE_XDG + printf(" SEARCH WITH XDG\n" ); + PathShareProjet = xdg_search_data_xdg( p_name_glade ); +#else + printf(" SEARCH WITH-OUT XDG\n" ); + PathShareProjet = g_strdup_printf( "%s/%s/%s", DATA_DIR, PACKAGE_NAME, p_name_glade ); +#endif +*/ + if( NULL == (PathShareProjet = xdg_search_data_xdg( p_name_glade ))) + PathShareProjet = g_strdup_printf( "%s/%s/%s", DATA_DIR, PACKAGE_NAME, p_name_glade ); + + if( FALSE == g_file_test( PathCurrentDir, G_FILE_TEST_EXISTS ) && FALSE == g_file_test( PathShareProjet, G_FILE_TEST_EXISTS )) { + g_print( "!---------------------------------------------------------------------------------------------------\n" ); + g_print( "! LE FICHIER XML: [ %s ] N'EXISTE PAS !!!\n", PathCurrentDir ); + g_print( "!---------------------------------------------------------------------------------------------------\n" ); + g_print( "! LE FICHIER XML: [ %s ] N'EXISTE PAS !!!\n", PathShareProjet ); + g_print( "!---------------------------------------------------------------------------------------------------\n" ); + g_free( PathCurrentDir ); + PathCurrentDir = NULL; + g_free( PathShareProjet ); + PathShareProjet = NULL; + return( NULL ); + } + else if( TRUE == g_file_test( PathCurrentDir, G_FILE_TEST_EXISTS )) { + Path = PathCurrentDir; + } + else if( TRUE == g_file_test( PathShareProjet, G_FILE_TEST_EXISTS )) { + Path = PathShareProjet; + } + // g_print( "\nPATHNAME FILE %s: %s\n\n", p_name_glade, Path ); + if( gtk_builder_add_from_file( GtkBuilderLocal, Path, &p_err) <= 0 ) { + g_warning( "Couldn't load builder file: %s", p_err->message ); + g_error_free( p_err ); + g_free( PathCurrentDir ); + PathCurrentDir = NULL; + g_free( PathShareProjet ); + PathShareProjet = NULL; + Path = NULL; + return( NULL ); + } + g_free( PathCurrentDir ); + PathCurrentDir = NULL; + g_free( PathShareProjet ); + PathShareProjet = NULL; + Path = NULL; + return( GtkBuilderLocal ); +} + diff -Nru xcfa-4.3.8/src/cd_audio.c xcfa-5.0.1/src/cd_audio.c --- xcfa-4.3.8/src/cd_audio.c 2013-03-21 10:55:49.000000000 +0000 +++ xcfa-5.0.1/src/cd_audio.c 2015-02-07 16:33:06.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : cd_audio.c * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License @@ -101,7 +101,6 @@ COLUMN_CDAUDIO_TRACK_TIME, COLUMN_CDAUDIO_FILE_NORMALIZE, COLUMN_CDAUDIO_TRACK_NAME, - COLUMN_CDAUDIO_COLOR, CD_NUM_COLUMNS }; @@ -125,9 +124,9 @@ } ARTICLES_CD; -GArray *Articles_cd = NULL; /* */ -VAR_CD var_cd; /* */ -ENTETE_CD EnteteCD; /* */ +GArray *Articles_cd = NULL; +VAR_CD var_cd; +ENTETE_CD EnteteCD; gboolean BoolPathCaractersStrip = FALSE; @@ -569,8 +568,8 @@ gint NumTrack = -1; GdkPixbuf *Pixbuf = NULL; gint Pos_X, Pos_Y; - gboolean bool_key_Control = (keys.keyval == GDK_Control_L || keys.keyval == GDK_Control_R); - gboolean bool_key_Shift = (keys.keyval == GDK_Shift_L || keys.keyval == GDK_Shift_R); + gboolean bool_key_Control = (keys.keyval == GDK_KEY_Control_L || keys.keyval == GDK_KEY_Control_R); + gboolean bool_key_Shift = (keys.keyval == GDK_KEY_Shift_L || keys.keyval == GDK_KEY_Shift_R); gboolean bool_key_Release = (bool_key_Control == FALSE && bool_key_Shift == FALSE); gboolean bool_click_droit = (event->button == 3); gboolean bool_click_gauche = (event->button == 1); @@ -634,19 +633,19 @@ /* g_print ("\tNUM IS: %d\n", i); */ switch ( i ) { case NUM_TREE_CDAUDIO_PLAY : BoolSelectColPlay = TRUE; break; - case NUM_TREE_CDAUDIO_WAV : BoolSelectColWav = TRUE; break; + case NUM_TREE_CDAUDIO_WAV : BoolSelectColWav = TRUE; break; case NUM_TREE_CDAUDIO_FLAC : BoolSelectColFlac = TRUE; break; - case NUM_TREE_CDAUDIO_APE : BoolSelectColApe = TRUE; break; + case NUM_TREE_CDAUDIO_APE : BoolSelectColApe = TRUE; break; case NUM_TREE_CDAUDIO_WAVP : BoolSelectColWavP = TRUE; break; - case NUM_TREE_CDAUDIO_OGG : BoolSelectColOgg = TRUE; break; - case NUM_TREE_CDAUDIO_M4A : BoolSelectColM4a = TRUE; break; - case NUM_TREE_CDAUDIO_AAC : BoolSelectColAac = TRUE; break; - case NUM_TREE_CDAUDIO_MPC : BoolSelectColMpc = TRUE; break; - case NUM_TREE_CDAUDIO_MP3 : BoolSelectColMp3 = TRUE; break; - case NUM_TREE_CDAUDIO_NUM : break; + case NUM_TREE_CDAUDIO_OGG : BoolSelectColOgg = TRUE; break; + case NUM_TREE_CDAUDIO_M4A : BoolSelectColM4a = TRUE; break; + case NUM_TREE_CDAUDIO_AAC : BoolSelectColAac = TRUE; break; + case NUM_TREE_CDAUDIO_MPC : BoolSelectColMpc = TRUE; break; + case NUM_TREE_CDAUDIO_MP3 : BoolSelectColMp3 = TRUE; break; + case NUM_TREE_CDAUDIO_NUM : break; case NUM_TREE_CDAUDIO_TIME : BoolSelectColTime = TRUE; break; case NUM_TREE_CDAUDIO_NORMALISE : BoolSelectColNormalise = TRUE; break; - case NUM_TREE_CDAUDIO_NOM : BoolSelectColNom = TRUE; break; + case NUM_TREE_CDAUDIO_NOM : BoolSelectColNom = TRUE; break; default: return (FALSE); } @@ -654,6 +653,9 @@ break; } } + // TODO + if( BoolSelectColNom ); + if( BoolSelectColTime ); /* BoolSelectColPlay = strcmp(column->title, "Play") == 0 ? TRUE : FALSE; BoolSelectColWav = strcmp(column->title, "Wav") == 0 ? TRUE : FALSE; @@ -807,10 +809,10 @@ if (TRUE == mplayer_is_used ()) { - wininfo_create ( + wind_info_init ( WindMain, - _("MPLAYER deja en action"), - _("MPLAYER est deja utilise !!"), + _("MPLAYER already in action"), + _("MPLAYER is already in use !!"), ""); } else { @@ -829,7 +831,8 @@ StrTitle = g_strdup_printf("CD Read - Track %s", piste); // APPEL DE mplayer_init AVANT WinReader_open () mplayer_init (LIST_MPLAYER_FROM_CD, 0.0, 0, WinReader_close, WinReader_set_value, cdaudio_set_icone_stop, WinReader_is_close); - WinReader_open (StrTitle); + // WinReader_open (StrTitle); + wind_reader_init( WindMain ); g_free (StrTitle); StrTitle = NULL; WinReader_set_pause (); @@ -1221,28 +1224,28 @@ // switch (p_EtatSelectionCd) { switch ( etat ) { case CD_ETAT_NONE : - StatusBar_set_mess( NOTEBOOK_CD_AUDIO, _STATUSBAR_SIMPLE_, _("(Click Droit = Menu) / En attente de selection.")); + StatusBar_set_mess( NOTEBOOK_CD_AUDIO, _STATUSBAR_SIMPLE_, _("(Right click = Menu) / Waiting for selection.")); break; case CD_ETAT_PRG_ABSENT : - StatusBar_set_mess( NOTEBOOK_CD_AUDIO, _STATUSBAR_SIMPLE_, _("Le programme externe d'extraction est absent.")); + StatusBar_set_mess( NOTEBOOK_CD_AUDIO, _STATUSBAR_SIMPLE_, _("The external ripping program is missing.")); break; case CD_ETAT_ATTENTE : - StatusBar_set_mess( NOTEBOOK_CD_AUDIO, _STATUSBAR_SIMPLE_, _("(Click Droit = Menu) / En attente de selection.")); + StatusBar_set_mess( NOTEBOOK_CD_AUDIO, _STATUSBAR_SIMPLE_, _("(Right click = Menu) / Waiting for selection.")); break; case CD_ETAT_ATTENTE_EXIST : - StatusBar_set_mess( NOTEBOOK_CD_AUDIO, _STATUSBAR_SIMPLE_, _("(Click Droit = Menu) / En attente de selection. Le fichier existe.")); + StatusBar_set_mess( NOTEBOOK_CD_AUDIO, _STATUSBAR_SIMPLE_, _("(Right click = Menu) / Waiting for Selection. File exists..")); break; case CD_ETAT_SELECT : - StatusBar_set_mess( NOTEBOOK_CD_AUDIO, _STATUSBAR_SIMPLE_, _("(Click Droit = Menu) / En selection.")); + StatusBar_set_mess( NOTEBOOK_CD_AUDIO, _STATUSBAR_SIMPLE_, _("(Right click = Menu) / Selected files.")); break; case CD_ETAT_SELECT_EXPERT : - StatusBar_set_mess( NOTEBOOK_CD_AUDIO, _STATUSBAR_SIMPLE_, _("(Click Droit = Menu) / Selection avec options expert.")); + StatusBar_set_mess( NOTEBOOK_CD_AUDIO, _STATUSBAR_SIMPLE_, _("(Right click = Menu) / Selection - expert mode.")); break; case CD_ETAT_SELECT_EXIST : - StatusBar_set_mess( NOTEBOOK_CD_AUDIO, _STATUSBAR_SIMPLE_, _("(Click Droit = Menu) / En selection. Le fichier existe.")); + StatusBar_set_mess( NOTEBOOK_CD_AUDIO, _STATUSBAR_SIMPLE_, _("(Right click = Menu) / Selected files. File exists.")); break; case CD_ETAT_SELECT_EXPERT_EXIST : - StatusBar_set_mess( NOTEBOOK_CD_AUDIO, _STATUSBAR_SIMPLE_, _("(Click Droit = Menu) / Selection avec options expert. Le fichier existe.")); + StatusBar_set_mess( NOTEBOOK_CD_AUDIO, _STATUSBAR_SIMPLE_, _("(Right click = Menu) / Selection - expert mode. File exists.")); break; } } @@ -1251,15 +1254,15 @@ void cdaudio_set_normalise (gboolean p_EtatNormalise) { if (FALSE == p_EtatNormalise) { - StatusBar_set_mess( NOTEBOOK_CD_AUDIO, _STATUSBAR_SIMPLE_, _("(Click Droit = Menu) / Possibilite d'ajustement INDIVIDUEL ou COLLECTIF maximal du volume")); + StatusBar_set_mess( NOTEBOOK_CD_AUDIO, _STATUSBAR_SIMPLE_, _("(Right click = Menu) / Possibilities for individual adaptation or maximum collection volume")); } else { switch (gtk_combo_box_get_active (GTK_COMBO_BOX (var_cd.Adr_combobox_normalise_cd))) { case 0 : // case CD_NORM_PEAK : - StatusBar_set_mess( NOTEBOOK_CD_AUDIO, _STATUSBAR_SIMPLE_, _("(Click Droit = Menu) / Ajustement INDIVIDUEL maximal du volume")); + StatusBar_set_mess( NOTEBOOK_CD_AUDIO, _STATUSBAR_SIMPLE_, _("(Right click = Menu) / INDIVIDUAL maximum volume adjustment")); break; case 1 : // case CD_NORM_PEAK_WAITING : - StatusBar_set_mess( NOTEBOOK_CD_AUDIO, _STATUSBAR_SIMPLE_, _("(Click Droit = Menu) / Ajustement COLLECTIF maximal du volume")); + StatusBar_set_mess( NOTEBOOK_CD_AUDIO, _STATUSBAR_SIMPLE_, _("(Right click = Menu) / COLLECTIVE maximum volume adjustment")); break; } } @@ -1302,7 +1305,10 @@ } /* Si pas de selection a cet endroit retour */ - gdk_window_get_pointer (((GdkEventButton*)event)->window, &x, &y, &state); + GdkDeviceManager *manager = gdk_display_get_device_manager( gdk_display_get_default() ); + GdkDevice *device = gdk_device_manager_get_client_pointer( manager ); + gdk_window_get_device_position( ((GdkEventButton*)event)->window, device, &x, &y, &state ); + // gdk_window_get_pointer (((GdkEventButton*)event)->window, &x, &y, &state); if (!gtk_tree_view_get_path_at_pos (GTK_TREE_VIEW(treeview), x, y, &path, &column, &Pos_X, &Pos_Y)) { @@ -1357,6 +1363,7 @@ break; } } + if( BoolSelectColTime ); if (BoolSelectColNormalise == TRUE) { cdaudio_set_normalise (Audio->EtatNormalise); @@ -1499,7 +1506,7 @@ g_object_set (renderer, "xalign", 0.5, NULL); var_cd.Adr_Column_Play = column = gtk_tree_view_column_new_with_attributes ( - _("Play"), + "Play", renderer, "pixbuf", COLUMN_CDAUDIO_PLAY, NULL); @@ -1540,7 +1547,7 @@ g_object_set (renderer, "xalign", 0.5, NULL); var_cd.Adr_Column_Wav = column = gtk_tree_view_column_new_with_attributes ( - _("Wav"), + "Wav", renderer, "pixbuf", COLUMN_CDAUDIO_WAV, /*"text", COLUMN_CDAUDIO_WAV,*/ @@ -1561,7 +1568,7 @@ g_object_set (renderer, "xalign", 0.5, NULL); var_cd.Adr_Column_Flac = column = gtk_tree_view_column_new_with_attributes ( - _("Flac"), + "Flac", renderer, "pixbuf", COLUMN_CDAUDIO_FLAC, NULL); @@ -1581,7 +1588,7 @@ g_object_set (renderer, "xalign", 0.5, NULL); var_cd.Adr_Column_Ape = column = gtk_tree_view_column_new_with_attributes ( - _("Ape"), + "Ape", renderer, "pixbuf", COLUMN_CDAUDIO_APE, NULL); @@ -1601,7 +1608,7 @@ g_object_set (renderer, "xalign", 0.5, NULL); var_cd.Adr_Column_Wavpack = column = gtk_tree_view_column_new_with_attributes ( - _("WavP"), + "WavP", renderer, "pixbuf", COLUMN_CDAUDIO_WAVPACK, NULL); @@ -1621,7 +1628,7 @@ g_object_set (renderer, "xalign", 0.5, NULL); var_cd.Adr_Column_Ogg = column = gtk_tree_view_column_new_with_attributes ( - _("Ogg"), + "Ogg", renderer, "pixbuf", COLUMN_CDAUDIO_OGG, /*"text", COLUMN_CDAUDIO_OGG,*/ @@ -1642,7 +1649,7 @@ g_object_set (renderer, "xalign", 0.5, NULL); var_cd.Adr_Column_M4a = column = gtk_tree_view_column_new_with_attributes ( - _("M4a"), + "M4a", renderer, "pixbuf", COLUMN_CDAUDIO_M4A, /*"text", COLUMN_CDAUDIO_OGG,*/ @@ -1663,7 +1670,7 @@ g_object_set (renderer, "xalign", 0.5, NULL); var_cd.Adr_Column_Aac = column = gtk_tree_view_column_new_with_attributes ( - _("Aac"), + "Aac", renderer, "pixbuf", COLUMN_CDAUDIO_AAC, NULL); @@ -1683,7 +1690,7 @@ g_object_set (renderer, "xalign", 0.5, NULL); var_cd.Adr_Column_Mpc = column = gtk_tree_view_column_new_with_attributes ( - _("Mpc"), + "Mpc", renderer, "pixbuf", COLUMN_CDAUDIO_MPC, NULL); @@ -1703,7 +1710,7 @@ g_object_set (renderer, "xalign", 0.5, NULL); var_cd.Adr_Column_Mp3 = column = gtk_tree_view_column_new_with_attributes ( - _("Mp3"), + "Mp3", renderer, "pixbuf", COLUMN_CDAUDIO_MP3, /*"text", COLUMN_CDAUDIO_MP3,*/ @@ -1724,7 +1731,7 @@ g_object_set (renderer, "xalign", 0.5, NULL); var_cd.Adr_Column_Num = column = gtk_tree_view_column_new_with_attributes ( - _("Num"), + "Num", renderer, "text", COLUMN_CDAUDIO_TRACK_NUM, NULL); @@ -1739,7 +1746,7 @@ g_object_set (renderer, "xalign", 0.5, NULL); var_cd.Adr_Column_Time = column = gtk_tree_view_column_new_with_attributes ( - _("Time"), + "Time", renderer, "text", COLUMN_CDAUDIO_TRACK_TIME, NULL); @@ -1779,10 +1786,10 @@ g_object_set_data (G_OBJECT (renderer), "column", (gint *)COLUMN_CDAUDIO_TRACK_NAME); var_cd.Adr_Column_Nom = column = gtk_tree_view_column_new_with_attributes ( - _("Nom"), + _("Name"), renderer, "markup", COLUMN_CDAUDIO_TRACK_NAME, - "background-gdk", COLUMN_CDAUDIO_COLOR, + // "background-gdk", COLUMN_CDAUDIO_COLOR, /* "editable", CF_COLUMN_EDITABLE */ NULL); gtk_tree_view_column_set_sizing (GTK_TREE_VIEW_COLUMN (column), @@ -1834,8 +1841,8 @@ G_TYPE_STRING, // COLUMN_CDAUDIO_TRACK_NUM G_TYPE_STRING, // COLUMN_CDAUDIO_TRACK_TIME GDK_TYPE_PIXBUF, // COLUMN_CDAUDIO_FILE_NORMALIZE - G_TYPE_STRING, // COLUMN_CDAUDIO_TRACK_NAME - GDK_TYPE_COLOR // COLUMN_CDAUDIO_COLOR + G_TYPE_STRING // COLUMN_CDAUDIO_TRACK_NAME + //GDK_TYPE_COLOR // COLUMN_CDAUDIO_COLOR ); var_cd.Adr_Tree_Model = model = GTK_TREE_MODEL (store); @@ -1844,7 +1851,7 @@ */ var_cd.Adr_TreeView = treeview = gtk_tree_view_new_with_model (model); - gtk_tree_view_set_rules_hint (GTK_TREE_VIEW (treeview), TRUE); + // gtk_tree_view_set_rules_hint (GTK_TREE_VIEW (treeview), TRUE); g_object_unref (model); gtk_container_add (GTK_CONTAINER (widget), treeview); cdaudio_add_columns_scrolledwindow_cd (GTK_TREE_VIEW (treeview)); @@ -1935,8 +1942,8 @@ COLUMN_CDAUDIO_TRACK_NAME, // g_array_index (Articles_cd, ARTICLES_CD, Num_cell).Track_Name, StrLine, - COLUMN_CDAUDIO_COLOR, - &YellowColor, + // COLUMN_CDAUDIO_COLOR, + // &YellowColor, -1); g_free (StrLine); StrLine = NULL; @@ -2086,7 +2093,7 @@ COLUMN_CDAUDIO_TRACK_TIME, Foo.Track_Time, COLUMN_CDAUDIO_FILE_NORMALIZE, Foo.ColumnCDNormalize, COLUMN_CDAUDIO_TRACK_NAME, Foo.Track_Name, - COLUMN_CDAUDIO_COLOR, &YellowColor, + //COLUMN_CDAUDIO_COLOR, &YellowColor, -1); } List = g_list_next(List); @@ -2343,6 +2350,8 @@ gtk_widget_set_sensitive( GTK_WIDGET(GLADE_GET_OBJECT("vbox_titres_expanderCD")), NULL != EnteteCD.GList_Audio_cd ? TRUE : FALSE ); gtk_widget_set_sensitive( GTK_WIDGET(GLADE_GET_OBJECT("button_cue_creation_from_cd")), NULL != EnteteCD.GList_Audio_cd ? TRUE : FALSE ); + gtk_widget_set_sensitive( GTK_WIDGET(GLADE_GET_OBJECT("button_import_title_cd")), NULL != EnteteCD.GList_Audio_cd ? TRUE : FALSE ); + StatusBar_puts(); } // Recuperation d'un pointeur de texte sur le contenu du bouton 'destination' qui est @@ -2381,12 +2390,10 @@ MEDIA *Media = NULL; gint Cpt = 0; - // libcombo_alloc (GTK_COMBO_BOX (widget)); - List = g_list_first (scan_get_glist ()); while (List) { if ((Media = (MEDIA *)List->data)) { - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), (gchar *)Media->Full_Name); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), (gchar *)Media->Full_Name); Cpt ++; } List = g_list_next(List); @@ -2454,10 +2461,9 @@ // void on_cdaudio_combobox_serveur_cd_realize (GtkWidget *widget, gpointer user_data) { - // libcombo_alloc (GTK_COMBO_BOX (widget)); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), "Auto: freedb"); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), "Param CDDB"); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), "Param PROXY"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), "Auto: freedb"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), "Param CDDB"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), "Param PROXY"); var_cd.Adr_combobox_serveur = GTK_COMBO_BOX (widget); gtk_combo_box_set_active (GTK_COMBO_BOX (widget), Config.ServeurCddb); @@ -2508,7 +2514,7 @@ if( SERVER_CDDB_PARAM == Config.ServeurCddb ) { // label101 - gtk_label_set_markup (GTK_LABEL(GTK_WIDGET (GLADE_GET_OBJECT("label101"))), _(" Parametrage CDDB: [ Nom du serveur ]")); + gtk_label_set_markup (GTK_LABEL(GTK_WIDGET (GLADE_GET_OBJECT("label101"))), _(" Setting up CDDB: [ Server name ]")); gtk_widget_show (GTK_WIDGET (GLADE_GET_OBJECT("alignment_cddb_server"))); gtk_widget_hide (GTK_WIDGET (GLADE_GET_OBJECT("alignment_cddb_port"))); gtk_widget_show (GTK_WIDGET (GLADE_GET_OBJECT("button_init_cddb"))); @@ -2517,7 +2523,7 @@ } else if( SERVER_PROXY_PARAM == Config.ServeurCddb ) { // label101 - gtk_label_set_markup (GTK_LABEL(GTK_WIDGET (GLADE_GET_OBJECT("label101"))), _(" Parametrage PROXY: [ serveur ] [ port ]")); + gtk_label_set_markup (GTK_LABEL(GTK_WIDGET (GLADE_GET_OBJECT("label101"))), _(" Proxy settings: [ server ] [ port ] ")); gtk_widget_show (GTK_WIDGET (GLADE_GET_OBJECT("alignment_cddb_server"))); gtk_widget_show (GTK_WIDGET (GLADE_GET_OBJECT("alignment_cddb_port"))); gtk_widget_show (GTK_WIDGET (GLADE_GET_OBJECT("button_init_cddb"))); @@ -2527,7 +2533,7 @@ } else { // label101 - gtk_label_set_markup (GTK_LABEL(GTK_WIDGET (GLADE_GET_OBJECT("label101"))), _(" Serveur ")); + gtk_label_set_markup (GTK_LABEL(GTK_WIDGET (GLADE_GET_OBJECT("label101"))), _(" Server ")); gtk_widget_hide (GTK_WIDGET (GLADE_GET_OBJECT("alignment_cddb_server"))); gtk_widget_hide (GTK_WIDGET (GLADE_GET_OBJECT("alignment_cddb_port"))); gtk_widget_hide (GTK_WIDGET (GLADE_GET_OBJECT("button_init_cddb"))); @@ -2601,10 +2607,9 @@ // void on_combobox_normalise_cd_realize (GtkWidget *widget, gpointer user_data) { - libcombo_alloc (GTK_COMBO_BOX (widget)); var_cd.Adr_combobox_normalise_cd = GTK_COMBO_BOX (widget); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), "Peak/Album"); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), "Peak"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), "Peak/Album"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), "Peak"); gtk_combo_box_set_active (GTK_COMBO_BOX (widget), 0); } // diff -Nru xcfa-4.3.8/src/cd_audio_extract.c xcfa-5.0.1/src/cd_audio_extract.c --- xcfa-4.3.8/src/cd_audio_extract.c 2013-06-27 18:18:16.000000000 +0000 +++ xcfa-5.0.1/src/cd_audio_extract.c 2015-02-05 18:17:19.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : cd_audio_extract.c * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License @@ -291,7 +291,7 @@ Audio->ListConv[ NUM_FLAC ].WithCommandLineUser = param_filelc.With_CommandLineUser; PtrTabArgs = filelc_get_command_line (¶m_filelc); cdaudioextract_save_arg_from_conv( PtrTabArgs, Audio, NUM_FLAC ); - PtrTabArgs = filelc_RevoveTab( PtrTabArgs ); + PtrTabArgs = filelc_RemoveTab( PtrTabArgs ); } if (Audio->Etat_Ape == ETAT_CONV_CD_WAITING) { param_filelc.type_conv = MAC_WAV_TO_APE; @@ -307,7 +307,7 @@ Audio->ListConv[ NUM_APE ].WithCommandLineUser = param_filelc.With_CommandLineUser; PtrTabArgs = filelc_get_command_line (¶m_filelc); cdaudioextract_save_arg_from_conv (PtrTabArgs, Audio, NUM_APE); - PtrTabArgs = filelc_RevoveTab( PtrTabArgs ); + PtrTabArgs = filelc_RemoveTab( PtrTabArgs ); } if (Audio->Etat_WavPack == ETAT_CONV_CD_WAITING) { param_filelc.type_conv = WAVPACK_WAV_TO_WAVPACK; @@ -323,7 +323,7 @@ Audio->ListConv[ NUM_WAVPACK ].WithCommandLineUser = param_filelc.With_CommandLineUser; PtrTabArgs = filelc_get_command_line (¶m_filelc); cdaudioextract_save_arg_from_conv (PtrTabArgs, Audio, NUM_WAVPACK); - PtrTabArgs = filelc_RevoveTab( PtrTabArgs ); + PtrTabArgs = filelc_RemoveTab( PtrTabArgs ); } if (Audio->Etat_Sox == ETAT_CONV_CD_WAITING || Audio->Etat_Ogg == ETAT_CONV_CD_WAITING) { param_filelc.type_conv = OGGENC_WAV_TO_OGG; @@ -347,7 +347,7 @@ Audio->ListConv[ NUM_OGG ].WithCommandLineUser = param_filelc.With_CommandLineUser; PtrTabArgs = filelc_get_command_line (¶m_filelc); cdaudioextract_save_arg_from_conv (PtrTabArgs, Audio, NUM_OGG); - PtrTabArgs = filelc_RevoveTab( PtrTabArgs ); + PtrTabArgs = filelc_RemoveTab( PtrTabArgs ); } if (Audio->Etat_m4a == ETAT_CONV_CD_WAITING) { param_filelc.type_conv = FAAC_WAV_TO_M4A; @@ -363,7 +363,7 @@ Audio->ListConv[ NUM_M4A ].WithCommandLineUser = param_filelc.With_CommandLineUser; PtrTabArgs = filelc_get_command_line (¶m_filelc); cdaudioextract_save_arg_from_conv (PtrTabArgs, Audio, NUM_M4A); - PtrTabArgs = filelc_RevoveTab( PtrTabArgs ); + PtrTabArgs = filelc_RemoveTab( PtrTabArgs ); } if (Audio->Etat_Aac == ETAT_CONV_CD_WAITING) { param_filelc.type_conv = AACPLUSENC_WAV_TO_AAC; @@ -380,7 +380,7 @@ Audio->ListConv[ NUM_AAC ].WithCommandLineUser = param_filelc.With_CommandLineUser; PtrTabArgs = filelc_get_command_line (¶m_filelc); cdaudioextract_save_arg_from_conv (PtrTabArgs, Audio, NUM_AAC); - PtrTabArgs = filelc_RevoveTab( PtrTabArgs ); + PtrTabArgs = filelc_RemoveTab( PtrTabArgs ); } if (Audio->Etat_Sox == ETAT_CONV_CD_WAITING || Audio->Etat_Mpc == ETAT_CONV_CD_WAITING) { param_filelc.type_conv = MPPENC_WAV_TO_MPC; @@ -403,7 +403,7 @@ Audio->ListConv[ NUM_MPC ].WithCommandLineUser = param_filelc.With_CommandLineUser; PtrTabArgs = filelc_get_command_line (¶m_filelc); cdaudioextract_save_arg_from_conv (PtrTabArgs, Audio, NUM_MPC); - PtrTabArgs = filelc_RevoveTab( PtrTabArgs ); + PtrTabArgs = filelc_RemoveTab( PtrTabArgs ); } if (Audio->Etat_Mp3 == ETAT_CONV_CD_WAITING) { param_filelc.type_conv = LAME_WAV_TO_MP3; @@ -420,7 +420,7 @@ Audio->ListConv[ NUM_MP3 ].WithCommandLineUser = param_filelc.With_CommandLineUser; PtrTabArgs = filelc_get_command_line (¶m_filelc); cdaudioextract_save_arg_from_conv (PtrTabArgs, Audio, NUM_MP3); - PtrTabArgs = filelc_RevoveTab( PtrTabArgs ); + PtrTabArgs = filelc_RemoveTab( PtrTabArgs ); } } List = g_list_next(List); @@ -670,14 +670,14 @@ if (*Ptr1 != *Ptr2) { if (NbrPass <= 4) { // Si le contenu des segments est different - Str = g_strdup_printf (_("[Erreur du segment numero: %d]\n%d) Lecture PASS 1/2\n"), Elem, NbrPass); + Str = g_strdup_printf (_("[Error on segment #%d] %d) Playing PASS 1/2\n"), Elem, NbrPass); cdaudioextract_set_list_to_vte (Str); g_free (Str); Str = NULL; BoolDiff = TRUE; } else { // NbrPass > 4 - Str = g_strdup_printf (_("--> Deja %d fois 2 lectures du segment %d!\n Abandon :/\n"), NbrPass, Elem); + Str = g_strdup_printf (_("--> Segment %d already read two %d times!\n Abandon :/\n"), NbrPass, Elem); cdaudioextract_set_list_to_vte (Str); g_free (Str); Str = NULL; @@ -697,7 +697,7 @@ conv_exec_extract (FALSE, CDPARANOIA_CD_TO_WAV_EXPERT_SEGMENT, "CDPARANOIA_CD_TO_WAV_EXPERT_SEGMENT"); // Extraction segment 'Elem' PASS 2/2 - Str = g_strdup_printf (_("%d) Lecture PASS 2/2\n"), NbrPass); + Str = g_strdup_printf (_("%d) Read PASS 2/2\n"), NbrPass); cdaudioextract_set_list_to_vte (Str); g_free (Str); Str = NULL; @@ -777,11 +777,11 @@ gchar *Str = NULL; - Str = g_strdup_printf (_("\n[Piste: %d]\n"), Audio->Num_Track); + Str = g_strdup_printf (_("\n[Track: %d]\n"), Audio->Num_Track); cdaudioextract_set_list_to_vte (Str); g_free (Str); Str = NULL; - Str = g_strdup (_("Extraction mode expert PASS 1/2\n")); + Str = g_strdup (_("Ripping expert mode PASS 1/2\n")); cdaudioextract_set_list_to_vte (Str); g_free (Str); Str = NULL; @@ -792,7 +792,7 @@ if (FALSE == conv.bool_stop) { - cdaudioextract_set_list_to_vte (_("Extraction mode expert PASS 2/2\n")); + cdaudioextract_set_list_to_vte (_("Ripping expert mode PASS 2/2\n")); cdaudioextract_restitue_arg_to_extract (Audio, NUM_WAV_EXPERT_2); conv_exec_extract (Audio->ListConv[ NUM_WAV_EXPERT_2 ].WithCommandLineUser, CDPARANOIA_CD_TO_WAV_EXPERT, "CDPARANOIA_CD_TO_WAV_EXPERT"); @@ -800,7 +800,7 @@ if (FALSE == conv.bool_stop) { - cdaudioextract_set_list_to_vte (_("Controle du contenu des fichiers extraits\n")); + cdaudioextract_set_list_to_vte (_("Control the content of the extracted files\n")); cdaudioextract_copy_src_to_dest ( Audio->ExtractExpert.Name1, @@ -915,7 +915,7 @@ conv.bool_percent_extract = conv.bool_percent_conv = TRUE; conv_to_convert (PtrTabArgs, FALSE, NORMALISE_GET_LEVEL, "NORMALISE_GET_LEVEL -> PEAK/GROUP"); - PtrTabArgs = filelc_RevoveTab( PtrTabArgs ); + PtrTabArgs = filelc_RemoveTab( PtrTabArgs ); // -- APPLIQUER LA MOYENNE PEAK if (FALSE == conv.bool_stop) { @@ -940,7 +940,7 @@ conv.bool_percent_extract = conv.bool_percent_conv = TRUE; conv_to_convert (PtrTabArgs, FALSE, NORMALISE_EXEC, "NORMALISE_EXEC Wav -> PEAK/GROUP"); - PtrTabArgs = filelc_RevoveTab( PtrTabArgs ); + PtrTabArgs = filelc_RemoveTab( PtrTabArgs ); CdNormalise_set_normalise_ok (); @@ -1032,7 +1032,7 @@ // NORMALISATION PEAK conv_to_convert (PtrTabArgs, FALSE, NORMALISE_EXEC, "NORMALISE_EXEC Wav -> Peak"); - PtrTabArgs = filelc_RevoveTab( PtrTabArgs ); + PtrTabArgs = filelc_RemoveTab( PtrTabArgs ); conv_copy_src_to_dest (Name, Audio->PathName_Dest_Wav); g_unlink (Name); @@ -1089,7 +1089,7 @@ PtrTabArgs [ pos++ ] = NULL; conv_to_convert (PtrTabArgs, FALSE, SOX_WAV_TO_WAV, "SOX_WAV_TO_WAV"); - PtrTabArgs = filelc_RevoveTab( PtrTabArgs ); + PtrTabArgs = filelc_RemoveTab( PtrTabArgs ); PRINT("DEBUG FOR @DZEF"); if( TRUE == OptionsCommandLine.BoolVerboseMode ) @@ -1119,7 +1119,7 @@ g_free( PtrTabArgs[ 2 ] ); cdaudioextract_restitue_arg_to_conv( PtrTabArgs, Audio, NUM_FLAC ); conv_to_convert (PtrTabArgs, Audio->ListConv[ NUM_FLAC ].WithCommandLineUser, FLAC_WAV_TO_FLAC, "FLAC_WAV_TO_FLAC"); - PtrTabArgs = filelc_RevoveTab( PtrTabArgs ); + PtrTabArgs = filelc_RemoveTab( PtrTabArgs ); Audio->EtatSelection_Flac = CD_ETAT_ATTENTE; @@ -1146,7 +1146,7 @@ g_free( PtrTabArgs[ 2 ] ); cdaudioextract_restitue_arg_to_conv (PtrTabArgs, Audio, NUM_APE); conv_to_convert (PtrTabArgs, Audio->ListConv[ NUM_APE ].WithCommandLineUser, MAC_WAV_TO_APE, "MAC_WAV_TO_APE"); - PtrTabArgs = filelc_RevoveTab( PtrTabArgs ); + PtrTabArgs = filelc_RemoveTab( PtrTabArgs ); Audio->EtatSelection_Ape = CD_ETAT_ATTENTE; @@ -1178,7 +1178,7 @@ g_free( PtrTabArgs[ 2 ] ); cdaudioextract_restitue_arg_to_conv (PtrTabArgs, Audio, NUM_WAVPACK); conv_to_convert (PtrTabArgs, Audio->ListConv[ NUM_WAVPACK ].WithCommandLineUser, WAVPACK_WAV_TO_WAVPACK, "WAVPACK_WAV_TO_WAVPACK"); - PtrTabArgs = filelc_RevoveTab( PtrTabArgs ); + PtrTabArgs = filelc_RemoveTab( PtrTabArgs ); Audio->EtatSelection_WavPack = CD_ETAT_ATTENTE; @@ -1220,7 +1220,7 @@ g_free( PtrTabArgs[ 2 ] ); cdaudioextract_restitue_arg_to_conv (PtrTabArgs, Audio, NUM_OGG); conv_to_convert( PtrTabArgs, Audio->ListConv[ NUM_OGG ].WithCommandLineUser, OGGENC_WAV_TO_OGG, "OGGENC_WAV_TO_OGG"); - PtrTabArgs = filelc_RevoveTab( PtrTabArgs ); + PtrTabArgs = filelc_RemoveTab( PtrTabArgs ); Audio->EtatSelection_Ogg = CD_ETAT_ATTENTE; @@ -1247,7 +1247,7 @@ g_free( PtrTabArgs[ 2 ] ); cdaudioextract_restitue_arg_to_conv (PtrTabArgs, Audio, NUM_M4A); conv_to_convert( PtrTabArgs, Audio->ListConv[ NUM_M4A ].WithCommandLineUser, FAAC_WAV_TO_M4A, "FAAC_WAV_TO_M4A"); - PtrTabArgs = filelc_RevoveTab( PtrTabArgs ); + PtrTabArgs = filelc_RemoveTab( PtrTabArgs ); Audio->EtatSelection_M4a = CD_ETAT_ATTENTE; @@ -1274,7 +1274,7 @@ g_free( PtrTabArgs[ 2 ] ); cdaudioextract_restitue_arg_to_conv (PtrTabArgs, Audio, NUM_AAC); conv_to_convert( PtrTabArgs, Audio->ListConv[ NUM_AAC ].WithCommandLineUser, AACPLUSENC_WAV_TO_AAC, "AACPLUSENC_WAV_TO_AAC"); - PtrTabArgs = filelc_RevoveTab( PtrTabArgs ); + PtrTabArgs = filelc_RemoveTab( PtrTabArgs ); Audio->EtatSelection_Aac = CD_ETAT_ATTENTE; @@ -1303,7 +1303,7 @@ g_free( PtrTabArgs[ 2 ] ); cdaudioextract_restitue_arg_to_conv (PtrTabArgs, Audio, NUM_MPC); conv_to_convert( PtrTabArgs, Audio->ListConv[ NUM_MPC ].WithCommandLineUser, MPPENC_WAV_TO_MPC, "MPPENC_WAV_TO_MPC"); - PtrTabArgs = filelc_RevoveTab( PtrTabArgs ); + PtrTabArgs = filelc_RemoveTab( PtrTabArgs ); Audio->EtatSelection_Mpc = CD_ETAT_ATTENTE; @@ -1330,7 +1330,7 @@ g_free( PtrTabArgs[ 2 ] ); cdaudioextract_restitue_arg_to_conv (PtrTabArgs, Audio, NUM_MP3); conv_to_convert( PtrTabArgs, Audio->ListConv[ NUM_MP3 ].WithCommandLineUser, LAME_WAV_TO_MP3, "LAME_WAV_TO_MP3"); - PtrTabArgs = filelc_RevoveTab( PtrTabArgs ); + PtrTabArgs = filelc_RemoveTab( PtrTabArgs ); Audio->EtatSelection_Mp3 = CD_ETAT_ATTENTE; @@ -1473,7 +1473,7 @@ GList *List = NULL; FILE *fp = NULL; - gtk_timeout_remove (conv.handler_timeout_conv); + g_source_remove (conv.handler_timeout_conv); // Creation du fichier *.m3u if (TRUE == var_cd.Bool_create_file_m3u) { @@ -1709,7 +1709,7 @@ if (FALSE == conv.bool_stop) { NotifySend_msg (_("XCFA: Extraction CD"), _("Ok"), conv.bool_stop); } else { - NotifySend_msg (_("XCFA: Extraction CD"), _("Arret par l'utilisateur"), conv.bool_stop); + NotifySend_msg (_("XCFA: Extraction CD"), _("Stop by user"), conv.bool_stop); } } return (TRUE); @@ -1978,10 +1978,10 @@ gchar *Ptr = NULL; Ptr = (gchar *)gtk_entry_get_text (GTK_ENTRY (var_cd.Adr_entry_name_file_cue)); if (*Ptr == '\0') { - wininfo_create ( + wind_info_init ( WindMain, - _("Nom de fichier unique absent"), - _("Veuillez saisir un nom pour le fichier unique"), + _("File name not found"), + _("Please enter a file name"), ""); return; } @@ -2010,7 +2010,12 @@ BaseIoctl.PathNameDestFileCue = NULL; cdaudioextract_set_flags_before_extraction (); - WindScan_open ("Extract / Convert from CD", WINDSCAN_PULSE); + // WindScan_open ("Extract / Convert from CD", WINDSCAN_PULSE); + wind_scan_init( + WindMain, + "Extract / Convert from CD", + WINDSCAN_PULSE + ); WindScan_set_label ("Extract from CD ..."); WindScan_set_pulse (); if (EXTRACT_WITH_CDPARANOIA_EXPERT == Config.ExtractCdWith) { @@ -2037,7 +2042,7 @@ conv.bool_thread_extract = TRUE; pthread_create (&nmr_tid, NULL ,(void *)cdaudioextract_thread_extraction_from_cd, (void *)NULL); PRINT("DEBUT TIMEOUT"); - conv.handler_timeout_conv = gtk_timeout_add (50, cdaudioextract_timeout, 0); + conv.handler_timeout_conv = g_timeout_add (50, cdaudioextract_timeout, 0); } diff -Nru xcfa-4.3.8/src/cd_audio_extract.h xcfa-5.0.1/src/cd_audio_extract.h --- xcfa-4.3.8/src/cd_audio_extract.h 2013-03-21 10:55:27.000000000 +0000 +++ xcfa-5.0.1/src/cd_audio_extract.h 2015-02-10 10:33:35.000000000 +0000 @@ -3,7 +3,7 @@ * project : xcfa * with : Gtk-2 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License diff -Nru xcfa-4.3.8/src/cd_audio.h xcfa-5.0.1/src/cd_audio.h --- xcfa-4.3.8/src/cd_audio.h 2013-03-21 10:55:27.000000000 +0000 +++ xcfa-5.0.1/src/cd_audio.h 2015-01-21 21:47:02.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : cd_audio.h * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License @@ -46,52 +46,52 @@ typedef struct { - GtkWidget *Adr_checkbutton_log_cdparanoia_mode_expert; // - GtkComboBox *Adr_combobox_discid_cd; // - GtkComboBox *Adr_combobox_normalise_cd; // - GtkComboBox *Adr_Combo_Box; // - GtkComboBox *Adr_combobox_serveur; // + GtkWidget *Adr_checkbutton_log_cdparanoia_mode_expert; + GtkComboBox *Adr_combobox_discid_cd; // + GtkComboBox *Adr_combobox_normalise_cd; // + GtkComboBox *Adr_Combo_Box; // + GtkComboBox *Adr_combobox_serveur; // GtkWidget *Adr_button_applique_change; // - GtkWidget *Adr_Button_Cancel_cddb; // - GtkWidget *Adr_Button_Raffraichir; // - GtkWidget *Adr_Label_Duree; // - GtkWidget *Adr_Label_Titre; // - GtkWidget *Adr_Label_Statusbar; // - GtkButton *Adr_Button_Destination; // - GtkWidget *Adr_Progressbar; // - GtkWidget *Adr_scroll; // - GtkListStore *Adr_List_Store; // - GtkTreeModel *Adr_Tree_Model; // - GtkTreeSelection *Adr_Line_Selected; // - GtkWidget *Adr_TreeView; // - GdkPixbuf *Pixbuf_Coche; // coche.png - GdkPixbuf *Pixbuf_Coche_exist; // coche_exist.png - GdkPixbuf *Pixbuf_Selected; // selected.png - GdkPixbuf *Pixbuf_Selected_exist; // selected_exist.png - GdkPixbuf *Pixbuf_Selected_expert; // selected_expert.png + GtkWidget *Adr_Button_Cancel_cddb; // + GtkWidget *Adr_Button_Raffraichir; // + GtkWidget *Adr_Label_Duree; // + GtkWidget *Adr_Label_Titre; // + GtkWidget *Adr_Label_Statusbar; // + GtkButton *Adr_Button_Destination; // + GtkWidget *Adr_Progressbar; // + GtkWidget *Adr_scroll; // + GtkListStore *Adr_List_Store; // + GtkTreeModel *Adr_Tree_Model; // + GtkTreeSelection *Adr_Line_Selected; // + GtkWidget *Adr_TreeView; // + GdkPixbuf *Pixbuf_Coche; // coche.png + GdkPixbuf *Pixbuf_Coche_exist; // coche_exist.png + GdkPixbuf *Pixbuf_Selected; // selected.png + GdkPixbuf *Pixbuf_Selected_exist; // selected_exist.png + GdkPixbuf *Pixbuf_Selected_expert; // selected_expert.png GdkPixbuf *Pixbuf_Selected_expert_exist; // selected_expert_exist.png - GdkPixbuf *Pixbuf_CdPlay; // play.png - GdkPixbuf *Pixbuf_CdStop; // sol.png - GdkPixbuf *Pixbuf_Normalize; // normalize1.png - GdkPixbuf *Pixbuf_Normalize_Coche; // normalize2.png - GdkPixbuf *Pixbuf_NotInstall; // not_install.png - gboolean Bool_create_file_m3u; // - gchar *Pathname_m3u; // - gchar *Pathname_xspf; // - GtkWidget *Adr_Expander; // - GtkWidget *Adr_notebook; // - GtkWidget *Adr_entry_tag_titre_album; // - GtkWidget *Adr_entry_tag_nom_artiste; // - GtkWidget *Adr_spinbutton_tag_annee; // + GdkPixbuf *Pixbuf_CdPlay; // play.png + GdkPixbuf *Pixbuf_CdStop; // sol.png + GdkPixbuf *Pixbuf_Normalize; // normalize1.png + GdkPixbuf *Pixbuf_Normalize_Coche; // normalize2.png + GdkPixbuf *Pixbuf_NotInstall; // not_install.png + gboolean Bool_create_file_m3u; // + gchar *Pathname_m3u; // + gchar *Pathname_xspf; // + GtkWidget *Adr_Expander; // + GtkWidget *Adr_notebook; // + GtkWidget *Adr_entry_tag_titre_album; // + GtkWidget *Adr_entry_tag_nom_artiste; // + GtkWidget *Adr_spinbutton_tag_annee; // GtkWidget *Adr_entry_new_titre_cdaudio; // GtkWidget *Adr_entry_tag_titre_chanson; // GtkWidget *Adr_entry_tag_titre_fichier; // - GtkWidget *Adr_entry_tag_commentaire; // - GtkWidget *Adr_spinbutton_tag_piste; // + GtkWidget *Adr_entry_tag_commentaire; // + GtkWidget *Adr_spinbutton_tag_piste; // GtkWidget *Adr_entry_stockage_cdaudio; // GtkWidget *Adr_label_stockage_cdaudio; // - GtkWidget *Adr_entry_name_file_cue; // - TYPE_CUE TypeCreateCue; // TYPE_CUE_NONE | TYPE_CUE_CD | TYPE_CUE_FILE + GtkWidget *Adr_entry_name_file_cue; // + TYPE_CUE TypeCreateCue; // TYPE_CUE_NONE | TYPE_CUE_CD | TYPE_CUE_FILE GtkTreeViewColumn *Adr_Column_Play; GtkTreeViewColumn *Adr_Column_Flac; GtkTreeViewColumn *Adr_Column_Wav; @@ -115,10 +115,10 @@ extern VAR_CD var_cd; -typedef enum { // Pour extraction / conversion */ - ETAT_CONV_CD_NONE, // Aucune demande - ETAT_CONV_CD_WAITING, // En attente - ETAT_CONV_CD_CONV_OK // Fait +typedef enum { // Pour extraction / conversion */ + ETAT_CONV_CD_NONE, // Aucune demande + ETAT_CONV_CD_WAITING, // En attente + ETAT_CONV_CD_CONV_OK // Fait } ETAT_CONV_CD; typedef enum { @@ -143,8 +143,8 @@ typedef enum { CD_NORM_PEAK_NONE = 0, - CD_NORM_PEAK, // INDIVIDUEL ajustement maximal du volume - CD_NORM_PEAK_WAITING // COLLECTIF ajustement maximal du volume + CD_NORM_PEAK, // INDIVIDUEL ajustement maximal du volume + CD_NORM_PEAK_WAITING // COLLECTIF ajustement maximal du volume } ETAT_NORMALISE_CD; @@ -176,74 +176,74 @@ typedef struct { LIST_CONV *ListConv; - ETAT_PLAY_CD EtatPlay; // - gboolean Bool_Delette_Flac; // Le fichier provisoir doit etre efface - gboolean Bool_Delette_Wav; // - gboolean Bool_Delette_Mp3; // - gboolean Bool_Delette_Ogg; // - gboolean Bool_Delette_M4a; // - gboolean Bool_Delette_Aac; // - gboolean Bool_Delette_Mpc; // - gboolean Bool_Delette_Ape; // - gboolean Bool_Delette_WavPack; // + ETAT_PLAY_CD EtatPlay; // + gboolean Bool_Delette_Flac; // Le fichier provisoir doit etre efface + gboolean Bool_Delette_Wav; // + gboolean Bool_Delette_Mp3; // + gboolean Bool_Delette_Ogg; // + gboolean Bool_Delette_M4a; // + gboolean Bool_Delette_Aac; // + gboolean Bool_Delette_Mpc; // + gboolean Bool_Delette_Ape; // + gboolean Bool_Delette_WavPack; // ETAT_SELECTION_CD EtatSelection_Flac; // - ETAT_SELECTION_CD EtatSelection_Wav; // - ETAT_SELECTION_CD EtatSelection_Mp3; // - ETAT_SELECTION_CD EtatSelection_Ogg; // - ETAT_SELECTION_CD EtatSelection_M4a; // - ETAT_SELECTION_CD EtatSelection_Aac; // - ETAT_SELECTION_CD EtatSelection_Mpc; // - ETAT_SELECTION_CD EtatSelection_Ape; // + ETAT_SELECTION_CD EtatSelection_Wav; // + ETAT_SELECTION_CD EtatSelection_Mp3; // + ETAT_SELECTION_CD EtatSelection_Ogg; // + ETAT_SELECTION_CD EtatSelection_M4a; // + ETAT_SELECTION_CD EtatSelection_Aac; // + ETAT_SELECTION_CD EtatSelection_Mpc; // + ETAT_SELECTION_CD EtatSelection_Ape; // ETAT_SELECTION_CD EtatSelection_WavPack; // - gint Num_Track; // Numero de piste - gchar *Str_Track; // - gchar *NameSong; // Le nom du futur fichier - gchar *Duree; // La duree d'ecoute - ETAT_CONV_CD Etat_Flac; // Pour extraction / conversion - ETAT_CONV_CD Etat_Wav; // - ETAT_CONV_CD Etat_Mp3; // - ETAT_CONV_CD Etat_Ogg; // - ETAT_CONV_CD Etat_m4a; // - ETAT_CONV_CD Etat_Aac; // - ETAT_CONV_CD Etat_Mpc; // - ETAT_CONV_CD Etat_Ape; // - ETAT_CONV_CD Etat_WavPack; // + gint Num_Track; // Numero de piste + gchar *Str_Track; // + gchar *NameSong; // Le nom du futur fichier + gchar *Duree; // La duree d'ecoute + ETAT_CONV_CD Etat_Flac; // Pour extraction / conversion + ETAT_CONV_CD Etat_Wav; // + ETAT_CONV_CD Etat_Mp3; // + ETAT_CONV_CD Etat_Ogg; // + ETAT_CONV_CD Etat_m4a; // + ETAT_CONV_CD Etat_Aac; // + ETAT_CONV_CD Etat_Mpc; // + ETAT_CONV_CD Etat_Ape; // + ETAT_CONV_CD Etat_WavPack; // ETAT_CONV_CD Etat_Sox; gboolean EtatNormalise; ETAT_NORMALISE_CD EtatPeak; - gchar *PathName_Dest_Flac; // Emplacement du fichier - gchar *PathName_Dest_Wav; // - gchar *PathName_Dest_Mp3; // - gchar *PathName_Dest_Ogg; // - gchar *PathName_Dest_M4a; // - gchar *PathName_Dest_Aac; // - gchar *PathName_Dest_Mpc; // - gchar *PathName_Dest_Ape; // - gchar *PathName_Dest_WavPack; // + gchar *PathName_Dest_Flac; // Emplacement du fichier + gchar *PathName_Dest_Wav; // + gchar *PathName_Dest_Mp3; // + gchar *PathName_Dest_Ogg; // + gchar *PathName_Dest_M4a; // + gchar *PathName_Dest_Aac; // + gchar *PathName_Dest_Mpc; // + gchar *PathName_Dest_Ape; // + gchar *PathName_Dest_WavPack; // gchar *PathName_Dest_Tmp; - TAGS *tags; // Tags + TAGS *tags; // Tags gboolean BoolM3uForWav; - EXTRACT_EXPERT ExtractExpert; + EXTRACT_EXPERT ExtractExpert; gboolean EtatBoolWavpack; } CD_AUDIO; -typedef struct { // UN ENTETE POUR LE CD - gchar *TitleCD; // Titre integral du CD - gchar *Title; // Titre du CD - gchar *Artiste; // Nom de l'artiste - gboolean BoolMultiArtiste; // - gchar *StrDureeCd; // Duree totale du cd - gint TotalTracks; // Nombre total de pistes trouvees - gint NumGenre; // Genre en numerique - gchar *StrGenre; // Genre en chaine - gint NumYear; // Annee du cd en numerique - gchar *StrYear; // Annee du cd en chaine - GList *GList_Audio_cd; // UNE STRUCTURE 'AUDIO' PAR PISTE - gboolean Bool_Read_Infos_cd; // TRUE or FALSE - gchar *Message; // Message pour l'utilisateur - gchar *NameCD_Device; // Pointeur sur le device en selection - gchar Str_Nice [ 10 ]; // Priorite systeme - gchar Str_Bitrate_Lame [ 10 ]; // Bitrate pour Lame +typedef struct { // UN ENTETE POUR LE CD + gchar *TitleCD; // Titre integral du CD + gchar *Title; // Titre du CD + gchar *Artiste; // Nom de l'artiste + gboolean BoolMultiArtiste; // + gchar *StrDureeCd; // Duree totale du cd + gint TotalTracks; // Nombre total de pistes trouvees + gint NumGenre; // Genre en numerique + gchar *StrGenre; // Genre en chaine + gint NumYear; // Annee du cd en numerique + gchar *StrYear; // Annee du cd en chaine + GList *GList_Audio_cd; // UNE STRUCTURE 'AUDIO' PAR PISTE + gboolean Bool_Read_Infos_cd; // TRUE or FALSE + gchar *Message; // Message pour l'utilisateur + gchar *NameCD_Device; // Pointeur sur le device en selection + gchar Str_Nice [ 10 ]; // Priorite systeme + gchar Str_Bitrate_Lame [ 10 ]; // Bitrate pour Lame gchar Str_Bitrate_oggenc [ 10 ]; // Bitrate pour Oggenc } ENTETE_CD; diff -Nru xcfa-4.3.8/src/cd_audio_toc.c xcfa-5.0.1/src/cd_audio_toc.c --- xcfa-4.3.8/src/cd_audio_toc.c 2013-03-21 10:55:49.000000000 +0000 +++ xcfa-5.0.1/src/cd_audio_toc.c 2015-02-05 18:18:14.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : cd_audio_toc.h * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License @@ -91,7 +91,7 @@ if (var_cd.bool_thread_read_toc_cd == FALSE) { // FIN du timeout Update_cdaudio_do_read_toc_cd - gtk_timeout_remove (var_cd.handler_timeout_read_toc_cd); + g_source_remove (var_cd.handler_timeout_read_toc_cd); cdaudio_put_label_duree (""); cdaudio_put_label_titre (""); @@ -151,21 +151,21 @@ PRINT_FUNC_LF(); if( FALSE == libutils_find_file( "icedax" ) && FALSE == libutils_find_file( "cdda2wav" )) { - wininfo_create ( + wind_info_init ( WindMain, _("cdda2wav and icedax NOT FOUND"), _("Please, install packages [ icedax, cdda2wav ]"), ""); } else if( FALSE == libutils_find_file( "icedax" )) { - wininfo_create ( + wind_info_init ( WindMain, _("icedax NOT FOUND"), _("Please, install package [ icedax ]"), ""); } else if( FALSE == libutils_find_file( "cdda2wav" )) { - wininfo_create ( + wind_info_init ( WindMain, _("cdda2wav NOT FOUND"), _("Please, install package [ cdda2wav ]"), @@ -175,7 +175,7 @@ } if( FALSE == PrgInit.bool_cdparanoia ) { PRINT_FUNC_LF(); - wininfo_create ( + wind_info_init ( WindMain, _("cdparanoia NOT FOUND"), _("Please, install package [ cdparanoia ]"), @@ -183,7 +183,7 @@ return; } if( FALSE == PrgInit.bool_cd_discid ) { - wininfo_create ( + wind_info_init ( WindMain, _("cd-discid NOT FOUND"), _("Please, install packages [ cd-discid ]"), @@ -198,16 +198,21 @@ if( '\0' == *Config.entry_proxy_server ) BoolAccess = FALSE; if( '\0' == *Config.entry_proxy_port ) BoolAccess = FALSE; if( FALSE == BoolAccess ) { - wininfo_create ( + wind_info_init ( WindMain, - _("ERREUR datas proxy"), - _("Veuillez renseigner les champs du proxy"), + _("ERROR datas proxy"), + _("Please complete all fields proxy"), ""); return; } } - WindScan_open ("Scan CD", WINDSCAN_PULSE); + // WindScan_open ("Scan CD", WINDSCAN_PULSE); + wind_scan_init( + WindMain, + "Scan CD", + WINDSCAN_PULSE + ); WindScan_show_cancel( FALSE ); WindScan_set_label ("Scanning CD ..."); WindScan_set_pulse (); @@ -224,7 +229,7 @@ // ACTIVATION de l'update qui attends la fin du thread cd audio var_cd.bool_thread_read_toc_cd = TRUE; var_cd.bool_timeout_read_toc_cd = TRUE; - var_cd.handler_timeout_read_toc_cd = gtk_timeout_add (50, cdaudiotoc_timeout_do_read_toc_cd, 0); + var_cd.handler_timeout_read_toc_cd = g_timeout_add (50, cdaudiotoc_timeout_do_read_toc_cd, 0); pthread_create (&nmr_tid, NULL ,(void *)cdaudiotoc_thread_do_read_toc_cd, (void *)NULL); } // @@ -233,7 +238,7 @@ { if (FALSE == libutils_find_file ("eject")) { PRINT_FUNC_LF(); - wininfo_create ( + wind_info_init ( WindMain, "eject NOT FOUND !", "Please, install package [ eject ]", diff -Nru xcfa-4.3.8/src/cd_cue.c xcfa-5.0.1/src/cd_cue.c --- xcfa-4.3.8/src/cd_cue.c 2013-03-21 10:55:49.000000000 +0000 +++ xcfa-5.0.1/src/cd_cue.c 2015-01-30 16:01:16.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : cd_cue.c * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License @@ -539,7 +539,7 @@ cdcue_write_cue (); // FIN timeout - gtk_timeout_remove (cdcue.handler_timeout); + g_source_remove (cdcue.handler_timeout); } return (TRUE); @@ -565,7 +565,7 @@ var_cd.bool_timeout_read_toc_cd = TRUE; // Le timer de fin - cdcue.handler_timeout = gtk_timeout_add (100, cdcue_timeout, 0); + cdcue.handler_timeout = g_timeout_add (100, cdcue_timeout, 0); // Et action cdaudiotoc_reffresh_list_cd (); diff -Nru xcfa-4.3.8/src/cd_cue.h xcfa-5.0.1/src/cd_cue.h --- xcfa-4.3.8/src/cd_cue.h 2013-03-21 10:55:27.000000000 +0000 +++ xcfa-5.0.1/src/cd_cue.h 2015-01-21 21:51:16.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : cd_cue.h * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License @@ -39,21 +39,21 @@ typedef struct { // 1. length 12375 [02:45:00] begin 32 [00:00:32] - gint Len; // - gint Start; // - gint StartMin; // - gint StartSec; // - gint StartCent; // + gint Len; // + gint Start; // + gint StartMin; // + gint StartSec; // + gint StartCent; // } CDCUE_PARTIEL; typedef struct { - gchar *Performer; // - gchar *Title; // - gboolean BoolExtract; // TRUE si extraction - gchar *Partiel_Title; // - CUE_TIME EndTime; // - CUE_TIME BeginTime; // - CDCUE_PARTIEL CuePartiel; // + gchar *Performer; // + gchar *Title; // + gboolean BoolExtract; // TRUE si extraction + gchar *Partiel_Title; // + CUE_TIME EndTime; // + CUE_TIME BeginTime; // + CDCUE_PARTIEL CuePartiel; // } CDCUE; // length DIV 75 @@ -62,23 +62,23 @@ // length MOD 75 = Cent typedef struct { - gint length; // Longueur totale + gint length; // Longueur totale gint length_min ,length_sec ,length_cent; // Details - gint begin; // Longueur totale - gint begin_min ,begin_sec ,begin_cent; // Details + gint begin; // Longueur totale + gint begin_min ,begin_sec ,begin_cent; // Details } BASE_IOCTL_DATAS; typedef struct { // Base obtenue pae IOCTL ou CDPARANOIA - gint TotalTracks; // Nombre total de pistes - BASE_IOCTL_DATAS *Datas; // + gint TotalTracks; // Nombre total de pistes + BASE_IOCTL_DATAS *Datas; // // CUE - gchar *Performer; // - gchar *Title; // - gchar *File; // - CDCUE *Cue; // - gchar *PathNameDestFileCue; // + gchar *Performer; // + gchar *Title; // + gchar *File; // + CDCUE *Cue; // + gchar *PathNameDestFileCue; // } BASE_IOCTL; diff -Nru xcfa-4.3.8/src/cd_curl.c xcfa-5.0.1/src/cd_curl.c --- xcfa-4.3.8/src/cd_curl.c 2013-03-21 10:55:49.000000000 +0000 +++ xcfa-5.0.1/src/cd_curl.c 2015-02-05 18:19:13.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : cd_curl.c * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License @@ -153,22 +153,22 @@ */ typedef struct { - gchar *NameGenre; // jazz || rock || ... + gchar *NameGenre; // jazz || rock || ... gint NumCdDiscId; // NUM gchar *StrCdDiscId; // STR } VAR_LIST_POPUP; typedef struct { - gchar *Title; // Titre d'une piste + gchar *Title; // Titre d'une piste gchar StrTime[ 10 ]; // Temps ( duree ) d'une piste mm:ss - gint NumSector; // Numero du secteur corespondant a la piste + gint NumSector; // Numero du secteur corespondant a la piste } LIST_SECTOR; typedef struct { - gchar *StrDiscID; // STR + gchar *StrDiscID; // STR GString *GStrCdDiscID; // STRING - gint LenDisc; // EN SECONDES + gint LenDisc; // EN SECONDES gint TotalTracks; // TOTAL TRACKS GList *ListDiscId; // VAR_LIST_POPUP LIST_SECTOR *ListSector; // CDPARANOIA @@ -180,9 +180,9 @@ VAR_SECTOR VarSector; -typedef enum { // DO_CURL_QUERY CdCurl_discdb_do_query( void ) +typedef enum { // DO_CURL_QUERY CdCurl_discdb_do_query( void ) DO_CURL_QUERY_FALSE = 0, // NO QUERY - DO_CURL_QUERY_TRUE, // QUERY IS OK + DO_CURL_QUERY_TRUE, // QUERY IS OK DO_CURL_QUERY_REPEAT // 211 Found inexact matches } DO_CURL_QUERY; @@ -325,7 +325,7 @@ List = g_list_first( VarSector.ListDiscId ); while ( List ) { if( NULL != ( PtrVarList = (VAR_LIST_POPUP *)List->data )) { - gtk_combo_box_append_text( GTK_COMBO_BOX(var_cd.Adr_combobox_discid_cd), PtrVarList->NameGenre ); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_cd.Adr_combobox_discid_cd), PtrVarList->NameGenre ); NbrOptions ++; } List = g_list_next( List ); @@ -731,7 +731,7 @@ } if( NULL == DatasBuffer ) { - EnteteCD.Message = g_strdup( _("La liaison internet est absente") ); + EnteteCD.Message = g_strdup( _("A web connection is missing") ); // MINIMUM D'INFORMATION ET RETOUR // SET Track for( Track = 0; Track < VarSector.TotalTracks; Track ++ ) { diff -Nru xcfa-4.3.8/src/cd_curl.h xcfa-5.0.1/src/cd_curl.h --- xcfa-4.3.8/src/cd_curl.h 2013-03-21 10:55:27.000000000 +0000 +++ xcfa-5.0.1/src/cd_curl.h 2015-01-21 21:51:41.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : cd_curl.h * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License @@ -32,8 +32,8 @@ typedef enum { SERVER_CDDB_DEFAULT = 0, // freedb.org - SERVER_CDDB_PARAM, // CDDB: NAME - SERVER_PROXY_PARAM // PROXY: NAME and PORT + SERVER_CDDB_PARAM, // CDDB: NAME + SERVER_PROXY_PARAM // PROXY: NAME and PORT } SERVER_CDDB; typedef enum { diff -Nru xcfa-4.3.8/src/cd_expander.c xcfa-5.0.1/src/cd_expander.c --- xcfa-4.3.8/src/cd_expander.c 2013-03-21 10:55:49.000000000 +0000 +++ xcfa-5.0.1/src/cd_expander.c 2015-01-30 16:01:16.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : cd_expander.c * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License @@ -451,6 +451,7 @@ // gint num; // gchar *name; // } STRUCT_TAGS_FILE_MP3; +/** gboolean on_match_select(GtkEntryCompletion *widget, GtkTreeModel *model, GtkTreeIter *iter, gpointer user_data) { if( TRUE == OptionsCommandLine.BoolVerboseMode ) { @@ -460,7 +461,8 @@ g_value_unset(&value); } return FALSE; -} +} +*/ void on_entry_tag_genre_realize( GtkWidget *widget, gpointer user_data ) { STRUCT_TAGS_FILE_MP3 *Contact; @@ -472,7 +474,7 @@ completion = gtk_entry_completion_new(); gtk_entry_completion_set_text_column( completion, _CONTACT_NAME_ ); gtk_entry_set_completion( GTK_ENTRY(widget), completion ); - g_signal_connect( G_OBJECT(completion), "match-selected", G_CALLBACK(on_match_select), NULL ); + // g_signal_connect( G_OBJECT(completion), "match-selected", G_CALLBACK(on_match_select), NULL ); g_signal_connect( G_OBJECT(widget), "changed", G_CALLBACK(on_entry_tag_genre_changed), widget ); model = gtk_list_store_new( 1, G_TYPE_STRING ); for( Contact = StructTagsFileMp3; Contact && Contact->name; Contact++ ) { @@ -587,11 +589,10 @@ // void on_combobox_choice_file_cue_realize (GtkWidget *widget, gpointer user_data) { - libcombo_alloc (GTK_COMBO_BOX (widget)); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), "WAV"); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), "FLAC"); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), "OGG"); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), "MPC"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), "WAV"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), "FLAC"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), "OGG"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), "MPC"); gtk_combo_box_set_active (GTK_COMBO_BOX (widget), 0); } // diff -Nru xcfa-4.3.8/src/cd_normalise.c xcfa-5.0.1/src/cd_normalise.c --- xcfa-4.3.8/src/cd_normalise.c 2013-03-21 10:55:49.000000000 +0000 +++ xcfa-5.0.1/src/cd_normalise.c 2015-01-30 16:01:16.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : cd_normalise.c * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License @@ -54,15 +54,15 @@ typedef struct { GList *ListPeakGroup; // Pointeur sur AUDIO gint MaxElements; // - gint NumExtract; // - gchar *TmpRep; // Le dossier temporaire + gint NumExtract; // + gchar *TmpRep; // Le dossier temporaire } VAR_CD_NORMALISE; VAR_CD_NORMALISE VarCdNormalise = { - NULL, // GList *ListPeakGroup - 0, // gint MaxElements - 0, // gint NumExtract - NULL // gchar *TmpRep + NULL, // GList *ListPeakGroup + 0, // gint MaxElements + 0, // gint NumExtract + NULL // gchar *TmpRep }; diff -Nru xcfa-4.3.8/src/cd_normalise.h xcfa-5.0.1/src/cd_normalise.h --- xcfa-4.3.8/src/cd_normalise.h 2013-03-21 10:55:27.000000000 +0000 +++ xcfa-5.0.1/src/cd_normalise.h 2015-01-21 16:28:42.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : cd_normalise.h * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License diff -Nru xcfa-4.3.8/src/configuser.c xcfa-5.0.1/src/configuser.c --- xcfa-4.3.8/src/configuser.c 2013-03-21 10:55:49.000000000 +0000 +++ xcfa-5.0.1/src/configuser.c 2015-01-30 16:01:16.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : configuser_new.c * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License @@ -60,12 +60,12 @@ VAR_CONFIG ConfigSaveToRest; // Pour les restitutions par defaut VAR_CONFIG Config = { FALSE, // BoolConfigOk - 1, // gulong UsesOfXcfa; // 0 to G_MAXULONG ( 18446744073709551615 ) - 0, // WinPos_X - 0, // WinPos_Y + 1, // gulong UsesOfXcfa; // 0 to G_MAXULONG ( 18446744073709551615 ) + 0, // WinPos_X + 0, // WinPos_Y 800, // WinWidth 520, // WinHeight - 0, // Nice + 0, // Nice NULL, // PathLoadFileAll NULL, // PathLoadFileWav NULL, // PathLoadFileMp3Ogg @@ -85,34 +85,34 @@ NULL, // PathStockeImagesPochette NULL, // PathDestFilePostScript NULL, // PathLoadImages - 0, // NotebookGeneral - 0, // NotebookExpanderCd - 0, // NotebookFile - 0, // NotebookOptions - 0, // NotebookAppExterns - 0, // ExtractCdWith = EXTRACT_WITH_CDPARANOIA = 0 - 1, // BitrateLameIndice + 0, // NotebookGeneral + 0, // NotebookExpanderCd + 0, // NotebookFile + 0, // NotebookOptions + 0, // NotebookAppExterns + 0, // ExtractCdWith = EXTRACT_WITH_CDPARANOIA = 0 + 1, // BitrateLameIndice {0,8,0,0}, // TabBitrateLame {0,0,0,0}, // TabModeLame - 15, // BitrateOggenc - 1, // ManagedOggenc - 1, // DownmixOggenc - 5, // CompressionLevelFlac - 1, // CompressionLevelApeMac - 0, // CompressionWavpack - 1, // SoundWavpack - 0, // ModeHybrideWavpack - 0, // CorrectionFileWavpack - 0, // CompressionMaximumWavpack - 0, // SignatureMd5Wavpack - 0, // ExtraEncodingWavpack - 5, // QualityMppenc - 0, // ConteneurFacc - 0, // AbrVbrFacc - 0, // AbrFaccIndice - 6, // VbrFaccIndice - 7, // ChoiceMonoAacplusenc - 4, // ChoiceStereoAacplusenc + 15, // BitrateOggenc + 1, // ManagedOggenc + 1, // DownmixOggenc + 5, // CompressionLevelFlac + 1, // CompressionLevelApeMac + 0, // CompressionWavpack + 1, // SoundWavpack + 0, // ModeHybrideWavpack + 0, // CorrectionFileWavpack + 0, // CompressionMaximumWavpack + 0, // SignatureMd5Wavpack + 0, // ExtraEncodingWavpack + 5, // QualityMppenc + 0, // ConteneurFacc + 0, // AbrVbrFacc + 0, // AbrFaccIndice + 6, // VbrFaccIndice + 7, // ChoiceMonoAacplusenc + 4, // ChoiceStereoAacplusenc TRUE, // BoolArtistTag TRUE, // BoolTitleTag TRUE, // BoolAlbumTag @@ -128,7 +128,7 @@ NULL, // StringExpanderMppenc NULL, // StringExpanderMac NULL, // StringExpanderWavpack - 0, // ServeurCddb SERVER_CDDB_DEFAULT = 0 OR SERVER_CDDB_PARAM + 0, // ServeurCddb SERVER_CDDB_DEFAULT = 0 OR SERVER_CDDB_PARAM NULL, // StringNameFile_m3u_xspf NULL, // Templates_title_cdaudio NULL, // Templates_rep_cdaudio @@ -139,8 +139,8 @@ NULL, // StringParamNameLecteurAudio NULL, // StringBoolFieldsIsVisible FIELDS DVD,CD,FILES : FALSE or HIDE = 0, TRUE or SHOW = 1 NULL, // StringPosFieldsName POS NAME OF DVD,CD,FILES: 0 = LEFT, 1 = CENTER, 2 = RIGHT - 0, // NumSelectComboBoxDvd - 0, // NumSelectComboBoxCd + 0, // NumSelectComboBoxDvd + 0, // NumSelectComboBoxCd NULL, // entry_cddp_server NULL, // entry_proxy_server; NULL, // entry_proxy_port diff -Nru xcfa-4.3.8/src/configuser.h xcfa-5.0.1/src/configuser.h --- xcfa-4.3.8/src/configuser.h 2013-03-21 10:55:27.000000000 +0000 +++ xcfa-5.0.1/src/configuser.h 2015-01-21 21:54:46.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : configuser.h * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License @@ -30,129 +30,129 @@ typedef struct { - gint Bitrate_type_Lame; // Bitrate Lame - gint If_abr; // SI ABR est defini - gint If_cbr; // SI CBR est defini - gint If_vbr; // SI VBR est defini - gint If_vbr_new; // SI VBR_NEW est defini - gint Mode_Lame; // Mode Lame - gint Bitrate_Oggenc; // Bitrate Oggenc - gint Managed_Oggenc; // Managed Oggenc - gint Downmix_Oggenc; // Downmix Oggenc + gint Bitrate_type_Lame; // Bitrate Lame + gint If_abr; // SI ABR est defini + gint If_cbr; // SI CBR est defini + gint If_vbr; // SI VBR est defini + gint If_vbr_new; // SI VBR_NEW est defini + gint Mode_Lame; // Mode Lame + gint Bitrate_Oggenc; // Bitrate Oggenc + gint Managed_Oggenc; // Managed Oggenc + gint Downmix_Oggenc; // Downmix Oggenc } RATE_MP3OGG; typedef struct { - gboolean BoolConfigOk; // Attendre la fin de la config.: Voir main.c - gulong UsesOfXcfa; // 0 to G_MAXULONG ( 18446744073709551615 ) - gint WinPos_X; // - gint WinPos_Y; // - gint WinWidth; // - gint WinHeight; // - gint Nice; // - gchar *PathLoadFileAll; // - gchar *PathLoadFileWav; // - gchar *PathLoadFileMp3Ogg; // - gchar *PathLoadFileTags; // - gint TabIndiceComboDestFile[4]; // - gchar *PathDestinationFileAll; // - gchar *PathDestinationFileWav; // - gchar *PathDestinationFileMp3Ogg; // - gchar *PathDestinationFileTags; // - gchar *PathDestinationDVD; // - gchar *PathChoiceFileDVD; // - gchar *PathDestinationCD; // - gchar *PathChoiceFileCD; // - gchar *PathDestinationSplit; // - gchar *PathLoadSplit; // - gchar *PathnameTMP; // - gchar *PathStockeImagesPochette; // - gchar *PathDestFilePostScript; // - gchar *PathLoadImages; // - gint NotebookGeneral; // - gint NotebookExpanderCd; // - gint NotebookFile; // - gint NotebookOptions; // - gint NotebookAppExterns; // - gint ExtractCdWith; // EXTRACT_WITH_CDPARANOIA = 0, EXTRACT_WITH_CDPARANOIA_EXPERT, EXTRACT_WITH_CDDA2WAV - - gint BitrateLameIndice; // abr .. vbr_new - gint TabBitrateLame[4]; // [ abr | cbr | vbr | vbr_new ] - gint TabModeLame[4]; // [ ModeAbr | ModeCbr | ModeVbr | ModeVbrNew ] - - gint BitrateOggenc; // - gint ManagedOggenc; // - gint DownmixOggenc; // - - gint CompressionLevelFlac; // - - gint CompressionLevelApeMac; // - - gint CompressionWavpack; // - gint SoundWavpack; // - gint ModeHybrideWavpack; // - gint CorrectionFileWavpack; // - gint CompressionMaximumWavpack; // - gint SignatureMd5Wavpack; // - gint ExtraEncodingWavpack; // - - gint QualityMppenc; // - - gint ConteneurFacc; // - gint AbrVbrFacc; // - gint AbrFaccIndice; // - gint VbrFaccIndice; // - - gint ChoiceMonoAacplusenc; // - gint ChoiceStereoAacplusenc; // - - gboolean BoolArtistTag; // - gboolean BoolTitleTag; // - gboolean BoolAlbumTag; // - gboolean BoolNumerateTag; // - gboolean BoolGenreTag; // - gboolean BoolYearTag; // - gboolean BoolCommentTag; // - gboolean BoolEtatExpanderCd; // - - gchar *StringExpanderLame; // Lignes de saisie: options pour les geeks - gchar *StringExpanderOggenc; // - gchar *StringExpanderFlac; // - gchar *StringExpanderFaac; // - gchar *StringExpanderMppenc; // - gchar *StringExpanderMac; // - gchar *StringExpanderWavpack; // - - gint ServeurCddb; // SERVER_CDDB_DEFAULT = 0 OR SERVER_CDDB_PARAM - gchar *StringNameFile_m3u_xspf; // - gchar *Templates_title_cdaudio; // Format titres cdaudio - gchar *Templates_rep_cdaudio; // Dossier de sauvegarde des fichiers cdaudio + gboolean BoolConfigOk; // Attendre la fin de la config.: Voir main.c + gulong UsesOfXcfa; // 0 to G_MAXULONG ( 18446744073709551615 ) + gint WinPos_X; // + gint WinPos_Y; // + gint WinWidth; // + gint WinHeight; // + gint Nice; // + gchar *PathLoadFileAll; // + gchar *PathLoadFileWav; // + gchar *PathLoadFileMp3Ogg; // + gchar *PathLoadFileTags; // + gint TabIndiceComboDestFile[4]; // + gchar *PathDestinationFileAll; // + gchar *PathDestinationFileWav; // + gchar *PathDestinationFileMp3Ogg; // + gchar *PathDestinationFileTags; // + gchar *PathDestinationDVD; // + gchar *PathChoiceFileDVD; // + gchar *PathDestinationCD; // + gchar *PathChoiceFileCD; // + gchar *PathDestinationSplit; // + gchar *PathLoadSplit; // + gchar *PathnameTMP; // + gchar *PathStockeImagesPochette; // + gchar *PathDestFilePostScript; // + gchar *PathLoadImages; // + gint NotebookGeneral; // + gint NotebookExpanderCd; // + gint NotebookFile; // + gint NotebookOptions; // + gint NotebookAppExterns; // + gint ExtractCdWith; // EXTRACT_WITH_CDPARANOIA = 0, EXTRACT_WITH_CDPARANOIA_EXPERT, EXTRACT_WITH_CDDA2WAV + + gint BitrateLameIndice; // abr .. vbr_new + gint TabBitrateLame[4]; // [ abr | cbr | vbr | vbr_new ] + gint TabModeLame[4]; // [ ModeAbr | ModeCbr | ModeVbr | ModeVbrNew ] + + gint BitrateOggenc; // + gint ManagedOggenc; // + gint DownmixOggenc; // + + gint CompressionLevelFlac; // + + gint CompressionLevelApeMac; // + + gint CompressionWavpack; // + gint SoundWavpack; // + gint ModeHybrideWavpack; // + gint CorrectionFileWavpack; // + gint CompressionMaximumWavpack; // + gint SignatureMd5Wavpack; // + gint ExtraEncodingWavpack; // + + gint QualityMppenc; // + + gint ConteneurFacc; // + gint AbrVbrFacc; // + gint AbrFaccIndice; // + gint VbrFaccIndice; // + + gint ChoiceMonoAacplusenc; // + gint ChoiceStereoAacplusenc; // + + gboolean BoolArtistTag; // + gboolean BoolTitleTag; // + gboolean BoolAlbumTag; // + gboolean BoolNumerateTag; // + gboolean BoolGenreTag; // + gboolean BoolYearTag; // + gboolean BoolCommentTag; // + gboolean BoolEtatExpanderCd; // + + gchar *StringExpanderLame; // Lignes de saisie: options pour les geeks + gchar *StringExpanderOggenc; // + gchar *StringExpanderFlac; // + gchar *StringExpanderFaac; // + gchar *StringExpanderMppenc; // + gchar *StringExpanderMac; // + gchar *StringExpanderWavpack; // + + gint ServeurCddb; // SERVER_CDDB_DEFAULT = 0 OR SERVER_CDDB_PARAM + gchar *StringNameFile_m3u_xspf; // + gchar *Templates_title_cdaudio; // Format titres cdaudio + gchar *Templates_rep_cdaudio; // Dossier de sauvegarde des fichiers cdaudio - gchar *StringNameNavigateur; // - gchar *StringParamNameNavigateur; // + gchar *StringNameNavigateur; // + gchar *StringParamNameNavigateur; // gchar *StringNameLecteurPostScript; // - gchar *StringNameLecteurAudio; // + gchar *StringNameLecteurAudio; // gchar *StringParamNameLecteurAudio; // - gchar *StringBoolFieldsIsVisible; // FIELDS DVD,CD,FILES: FALSE or HIDE = 0, TRUE or SHOW = 1 - gchar *StringPosFieldsName; // POS NAME OF DVD,CD,FILES: 0 = LEFT, 1 = CENTER, 2 = RIGHT + gchar *StringBoolFieldsIsVisible; // FIELDS DVD,CD,FILES: FALSE or HIDE = 0, TRUE or SHOW = 1 + gchar *StringPosFieldsName; // POS NAME OF DVD,CD,FILES: 0 = LEFT, 1 = CENTER, 2 = RIGHT - gint NumSelectComboBoxDvd; // - gint NumSelectComboBoxCd; // + gint NumSelectComboBoxDvd; // + gint NumSelectComboBoxCd; // - gchar *entry_cddp_server; // - gchar *entry_proxy_server; // - gchar *entry_proxy_port; // - - gchar *NameImg; // NEW - gchar *PathLoadImg; // - gchar *PathSaveImg; // - gchar *PathPochette; // + gchar *entry_cddp_server; // + gchar *entry_proxy_server; // + gchar *entry_proxy_port; // + + gchar *NameImg; // NEW + gchar *PathLoadImg; // + gchar *PathSaveImg; // + gchar *PathPochette; // gboolean BoolCheckbuttonEndOfConvert; // - gchar *PathMusicFileEndOfConvert; // - gchar *FileMusicFileEndOfConvert; // + gchar *PathMusicFileEndOfConvert; // + gchar *FileMusicFileEndOfConvert; // - gchar *StringCommentCD; // + gchar *StringCommentCD; // gboolean BoolLogCdparanoiaModeExpert; // diff -Nru xcfa-4.3.8/src/conv.c xcfa-5.0.1/src/conv.c --- xcfa-4.3.8/src/conv.c 2013-10-25 12:13:27.000000000 +0000 +++ xcfa-5.0.1/src/conv.c 2015-01-30 16:01:16.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : conv.c * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License @@ -46,6 +46,7 @@ #include "global.h" #include "file.h" #include "conv.h" +#include "configuser.h" /* @@ -68,6 +69,48 @@ CONV conv; +// +// Allocate Tab Args +// +gchar **conv_AllocTabArgs( gint *p_tab ) +{ +// gint len_malloc = +// 50 + // nbr elements +// C_list_length( Detail.ListFile ); // list length + gint len_malloc = 50; + gchar **PtrTab = (gchar **)g_malloc0( sizeof(gchar **) * len_malloc ); + + *p_tab = 0; + //if( Detail.Nice >= 0 && Detail.Nice <= 20) { + PtrTab [ 0 ] = g_strdup( "nice" ); + PtrTab [ 1 ] = g_strdup( "-n" ); + // PtrTab [ 2 ] = g_strdup_printf( "%d", Detail.Nice ); + PtrTab [ 2 ] = g_strdup_printf( "%d", Config.Nice ); + *p_tab = 3; + //} + return( (gchar **)PtrTab ); +} + +// +// Remove Tab Args +// +gchar **conv_RemoveTab( gchar **p_PtrTabArgs ) +{ + gint i; + + for( i = 0; p_PtrTabArgs[ i ] != NULL; i ++ ) { + g_free( p_PtrTabArgs[ i ] ); + p_PtrTabArgs[ i ] = NULL; + } + g_free( p_PtrTabArgs ); + p_PtrTabArgs = NULL; + + return( (gchar **)NULL ); +} + + + + /* *--------------------------------------------------------------------------- * STOP THREAD AND TIMEOUT diff -Nru xcfa-4.3.8/src/conv.h xcfa-5.0.1/src/conv.h --- xcfa-4.3.8/src/conv.h 2013-07-01 14:48:41.000000000 +0000 +++ xcfa-5.0.1/src/conv.h 2015-01-21 21:57:32.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : conv.h * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License @@ -33,56 +33,56 @@ #include typedef enum { - _EXTRACT_ = 0, // - _CONV_ // + _EXTRACT_ = 0, // + _CONV_ // } TYPE_OPER; -typedef enum { // Les types de conversions possibles - NONE_CONV = 0, // - FLAC_FLAC_TO_WAV, // - FLAC_WAV_TO_FLAC, // - LAME_WAV_TO_MP3, // - LAME_FLAC_TO_MP3, // - OGGENC_WAV_TO_OGG, // - OGGENC_FLAC_TO_OGG, // - OGG123_OGG_TO_WAV, // - MPG321_MP3_TO_WAV, // - SOX_WAV_TO_WAV, // - SHORTEN_SHN_TO_WAV, // - FAAD_M4A_TO_WAV, // - FAAC_WAV_TO_M4A, // - MPLAYER_WAV_TO_WAV, // - MPLAYER_WMA_TO_WAV, // - MPLAYER_AUDIO_TO_WAV, // - MPLAYER_M4A_TO_WAV, // - MPLAYER_OGG_TO_WAV, // - MPLAYER_MP3_TO_WAV, // - MPLAYER_MPC_TO_WAV, // - MPLAYER_RM_TO_WAV, // - MPLAYER_DTS_TO_WAV, // - MPLAYER_AIFF_TO_WAV, // - COPY_FILE, // - NORMALISE_CALCUL, // - NORMALISE_APPLIQUE, // - NORMALISE_EXEC, // - NORMALISE_GET_LEVEL, // - MPPDEC_MPC_TO_WAV, // - MPPENC_WAV_TO_MPC, // - MAC_APE_TO_WAV, // - MAC_WAV_TO_APE, // - WAVPACK_WAV_TO_WAVPACK, // - WVUNPACK_WAVPACK_TO_WAV, // - CDPARANOIA_CD_TO_WAV, // - CDPARANOIA_CD_TO_WAV_EXPERT, // - CDPARANOIA_CD_TO_WAV_EXPERT_SEGMENT, // - CDDA2WAV_CD_TO_WAV, // - REPLAYGAIN, // - LSDVD, // - SPLIT, // - CDDB_TOOL, // - ICEDAX, // - AACPLUSENC_WAV_TO_AAC, // - WAVSPLIT_EXTRACT, // +typedef enum { // Les types de conversions possibles + NONE_CONV = 0, // + FLAC_FLAC_TO_WAV, // + FLAC_WAV_TO_FLAC, // + LAME_WAV_TO_MP3, // + LAME_FLAC_TO_MP3, // + OGGENC_WAV_TO_OGG, // + OGGENC_FLAC_TO_OGG, // + OGG123_OGG_TO_WAV, // + MPG321_MP3_TO_WAV, // + SOX_WAV_TO_WAV, // + SHORTEN_SHN_TO_WAV, // + FAAD_M4A_TO_WAV, // + FAAC_WAV_TO_M4A, // + MPLAYER_WAV_TO_WAV, // + MPLAYER_WMA_TO_WAV, // + MPLAYER_AUDIO_TO_WAV, // + MPLAYER_M4A_TO_WAV, // + MPLAYER_OGG_TO_WAV, // + MPLAYER_MP3_TO_WAV, // + MPLAYER_MPC_TO_WAV, // + MPLAYER_RM_TO_WAV, // + MPLAYER_DTS_TO_WAV, // + MPLAYER_AIFF_TO_WAV, // + COPY_FILE, // + NORMALISE_CALCUL, // + NORMALISE_APPLIQUE, // + NORMALISE_EXEC, // + NORMALISE_GET_LEVEL, // + MPPDEC_MPC_TO_WAV, // + MPPENC_WAV_TO_MPC, // + MAC_APE_TO_WAV, // + MAC_WAV_TO_APE, // + WAVPACK_WAV_TO_WAVPACK, // + WVUNPACK_WAVPACK_TO_WAV, // + CDPARANOIA_CD_TO_WAV, // + CDPARANOIA_CD_TO_WAV_EXPERT, // + CDPARANOIA_CD_TO_WAV_EXPERT_SEGMENT, // + CDDA2WAV_CD_TO_WAV, // + REPLAYGAIN, // + LSDVD, // + SPLIT, // + CDDB_TOOL, // + ICEDAX, // + AACPLUSENC_WAV_TO_AAC, // + WAVSPLIT_EXTRACT, // A52DEC_AC3_TO_WAV } TYPE_CONV; @@ -90,61 +90,61 @@ #define MAX_ARG_CONV 200 typedef struct { - gboolean BoolIsExtract; // - gboolean BoolIsConvert; // - gboolean BoolIsCopy; // - gboolean BoolIsNormalise; // - gboolean BoolIsReplaygain; // - gboolean BoolIsa52dec; // - - GtkWidget *Adr_label_info_wind; // Adresse label information - GtkWidget *Adr_label_extract; // Adresse label extraction - GtkWidget *Adr_progressbar_extract; // Adresse Progressbar extraction - GtkWidget *Adr_label_conversion; // Adresse label conversion - GtkWidget *Adr_progressbar_conversion; // Adresse Progressbar conversion - GtkWidget *Adr_label_total; // Adresse label total - GtkWidget *Adr_progressbar_total; // Adresse Progressbar total - - double extract_percent; // Pourcentage actuel de progession - gint total_rip; // Nombre total de fichiers a extraires - gint rip_completed; // Nombre de fichiers extraits - - double conversion_percent; // Pourcentage actuel de progession - gdouble TimeMplayer; // Pourcentage actuel de progession en temps - - gint total_convert; // Nombre total de fichiers a convertir - gint encode_completed; // Nombre de fichiers convertis - double total_percent; // Pourcentage TOTAL actuel de progession + gboolean BoolIsExtract; // + gboolean BoolIsConvert; // + gboolean BoolIsCopy; // + gboolean BoolIsNormalise; // + gboolean BoolIsReplaygain; // + gboolean BoolIsa52dec; // + + GtkWidget *Adr_label_info_wind; // Adresse label information + GtkWidget *Adr_label_extract; // Adresse label extraction + GtkWidget *Adr_progressbar_extract; // Adresse Progressbar extraction + GtkWidget *Adr_label_conversion; // Adresse label conversion + GtkWidget *Adr_progressbar_conversion; // Adresse Progressbar conversion + GtkWidget *Adr_label_total; // Adresse label total + GtkWidget *Adr_progressbar_total; // Adresse Progressbar total + + double extract_percent; // Pourcentage actuel de progession + gint total_rip; // Nombre total de fichiers a extraires + gint rip_completed; // Nombre de fichiers extraits + + double conversion_percent; // Pourcentage actuel de progession + gdouble TimeMplayer; // Pourcentage actuel de progession en temps + + gint total_convert; // Nombre total de fichiers a convertir + gint encode_completed; // Nombre de fichiers convertis + double total_percent; // Pourcentage TOTAL actuel de progession - gboolean BoolPutTextview; // - GList *ListPutTextview; // + gboolean BoolPutTextview; // + GList *ListPutTextview; // - gboolean bool_percent_conv; // TRUE : print(conversion_percent, total_percent) - gboolean bool_percent_extract; // TRUE : print(conversion_percent, total_percent) + gboolean bool_percent_conv; // TRUE : print(conversion_percent, total_percent) + gboolean bool_percent_extract; // TRUE : print(conversion_percent, total_percent) - gboolean bool_stop; // TRUE : stop thread and timeout + gboolean bool_stop; // TRUE : stop thread and timeout - gchar *TmpRep; // Le repertoire temporaire d'extractions/conversions + gchar *TmpRep; // Le repertoire temporaire d'extractions/conversions - pid_t code_fork_conv; // Num Code Fork - pid_t code_fork_extract; // Num Code Fork + pid_t code_fork_conv; // Num Code Fork + pid_t code_fork_extract; // Num Code Fork - guint handler_timeout_conv; // Numerate timeout - gboolean bool_thread_conv; // TRUE : thread in - gboolean bool_thread_extract; // TRUE : thread in + guint handler_timeout_conv; // Numerate timeout + gboolean bool_thread_conv; // TRUE : thread in + gboolean bool_thread_extract; // TRUE : thread in - int signal_numchildren_conv; // the signal handler - int signal_numchildren_extract; // the signal handler - int tube_conv [ 2 ]; // for pipe - int tube_extract [ 2 ]; // for pipe + int signal_numchildren_conv; // the signal handler + int signal_numchildren_extract; // the signal handler + int tube_conv [ 2 ]; // for pipe + int tube_extract [ 2 ]; // for pipe - gboolean Bool_MAJ_select; // TRUE + gboolean Bool_MAJ_select; // TRUE gchar *ArgExtract [ MAX_ARG_CONV + 20 ]; // - double value_PEAK_RMS_GROUP_ARGS; // + double value_PEAK_RMS_GROUP_ARGS; // - gboolean (*Func_request_stop) (void); // + gboolean (*Func_request_stop) (void); // } CONV; @@ -162,6 +162,8 @@ gchar **conv_with_sox_get_param (gchar *filesrc, gchar *filedest, gchar *frequence, gchar *voie, gchar *bits); gchar **conv_with_sox_float_get_param (gchar *filesrc, gchar *filedest); gchar **conv_lsdvd_read_get_param( gchar *p_PathDvd ); +gchar **conv_RemoveTab( gchar **p_PtrTabArgs ); +gchar **conv_AllocTabArgs( gint *p_tab ); #endif diff -Nru xcfa-4.3.8/src/cursor.c xcfa-5.0.1/src/cursor.c --- xcfa-4.3.8/src/cursor.c 2013-03-21 10:55:49.000000000 +0000 +++ xcfa-5.0.1/src/cursor.c 2015-01-30 16:01:16.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : cursor.c * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License @@ -58,7 +58,7 @@ if (cursor_type != GDK_HAND2) { cursor_type = GDK_HAND2; _cursor = gdk_cursor_new (cursor_type); - gdk_window_set_cursor (GDK_WINDOW(WindMain->window), _cursor); + gdk_window_set_cursor (gtk_widget_get_window(WindMain), _cursor); gdk_flush (); } } @@ -69,7 +69,7 @@ if (cursor_type != GDK_HAND2) { cursor_type = GDK_HAND2; _cursor = gdk_cursor_new (cursor_type); - gdk_window_set_cursor (GDK_WINDOW(WindMain->window), _cursor); + gdk_window_set_cursor (gtk_widget_get_window(WindMain), _cursor); gdk_flush (); } } @@ -80,7 +80,7 @@ if (cursor_type != GDK_XTERM) { cursor_type = GDK_XTERM; _cursor = gdk_cursor_new (cursor_type); - gdk_window_set_cursor (GDK_WINDOW(WindMain->window), _cursor); + gdk_window_set_cursor (gtk_widget_get_window(WindMain), _cursor); gdk_flush (); } } @@ -91,7 +91,7 @@ if (cursor_type != GDK_SB_H_DOUBLE_ARROW) { cursor_type = GDK_SB_H_DOUBLE_ARROW; _cursor = gdk_cursor_new (cursor_type); - gdk_window_set_cursor (GDK_WINDOW(WindMain->window), _cursor); + gdk_window_set_cursor (gtk_widget_get_window(WindMain), _cursor); gdk_flush (); } } @@ -102,7 +102,7 @@ if (cursor_type != GDK_TOP_SIDE) { cursor_type = GDK_TOP_SIDE; _cursor = gdk_cursor_new (cursor_type); - gdk_window_set_cursor (GDK_WINDOW(WindMain->window), _cursor); + gdk_window_set_cursor (gtk_widget_get_window(WindMain), _cursor); gdk_flush (); } } @@ -113,7 +113,7 @@ if (cursor_type != GDK_BOTTOM_SIDE) { cursor_type = GDK_BOTTOM_SIDE; _cursor = gdk_cursor_new (cursor_type); - gdk_window_set_cursor (GDK_WINDOW(WindMain->window), _cursor); + gdk_window_set_cursor (gtk_widget_get_window(WindMain), _cursor); gdk_flush (); } } @@ -124,7 +124,7 @@ if (cursor_type != GDK_LEFT_SIDE) { cursor_type = GDK_LEFT_SIDE; _cursor = gdk_cursor_new (cursor_type); - gdk_window_set_cursor (GDK_WINDOW(WindMain->window), _cursor); + gdk_window_set_cursor (gtk_widget_get_window(WindMain), _cursor); gdk_flush (); } } @@ -135,7 +135,7 @@ if (cursor_type != GDK_RIGHT_SIDE) { cursor_type = GDK_RIGHT_SIDE; _cursor = gdk_cursor_new (cursor_type); - gdk_window_set_cursor (GDK_WINDOW(WindMain->window), _cursor); + gdk_window_set_cursor (gtk_widget_get_window(WindMain), _cursor); gdk_flush (); } } @@ -146,7 +146,7 @@ if (cursor_type != GDK_TOP_LEFT_CORNER) { cursor_type = GDK_TOP_LEFT_CORNER; _cursor = gdk_cursor_new (cursor_type); - gdk_window_set_cursor (GDK_WINDOW(WindMain->window), _cursor); + gdk_window_set_cursor (gtk_widget_get_window(WindMain), _cursor); gdk_flush (); } } @@ -157,7 +157,7 @@ if (cursor_type != GDK_TOP_RIGHT_CORNER) { cursor_type = GDK_TOP_RIGHT_CORNER; _cursor = gdk_cursor_new (cursor_type); - gdk_window_set_cursor (GDK_WINDOW(WindMain->window), _cursor); + gdk_window_set_cursor (gtk_widget_get_window(WindMain), _cursor); gdk_flush (); } } @@ -168,7 +168,7 @@ if (cursor_type != GDK_BOTTOM_LEFT_CORNER) { cursor_type = GDK_BOTTOM_LEFT_CORNER; _cursor = gdk_cursor_new (cursor_type); - gdk_window_set_cursor (GDK_WINDOW(WindMain->window), _cursor); + gdk_window_set_cursor (gtk_widget_get_window(WindMain), _cursor); gdk_flush (); } } @@ -179,7 +179,7 @@ if (cursor_type != GDK_BOTTOM_RIGHT_CORNER) { cursor_type = GDK_BOTTOM_RIGHT_CORNER; _cursor = gdk_cursor_new (cursor_type); - gdk_window_set_cursor (GDK_WINDOW(WindMain->window), _cursor); + gdk_window_set_cursor (gtk_widget_get_window(WindMain), _cursor); gdk_flush (); } } @@ -190,7 +190,7 @@ if (cursor_type != GDK_FLEUR) { cursor_type = GDK_FLEUR; _cursor = gdk_cursor_new (cursor_type); - gdk_window_set_cursor (GDK_WINDOW(WindMain->window), _cursor); + gdk_window_set_cursor (gtk_widget_get_window(WindMain), _cursor); gdk_flush (); } } @@ -201,7 +201,7 @@ if (cursor_type != GDK_LEFT_PTR) { cursor_type = GDK_LEFT_PTR; _cursor = gdk_cursor_new (cursor_type); - gdk_window_set_cursor (GDK_WINDOW(WindMain->window), _cursor); + gdk_window_set_cursor (gtk_widget_get_window(WindMain), _cursor); gdk_flush (); } } @@ -212,7 +212,7 @@ if (cursor_type != GDK_WATCH) { cursor_type = GDK_WATCH; _cursor = gdk_cursor_new (cursor_type); - gdk_window_set_cursor (GDK_WINDOW(WindMain->window), _cursor); + gdk_window_set_cursor (gtk_widget_get_window(WindMain), _cursor); gdk_flush (); } } diff -Nru xcfa-4.3.8/src/cursor.h xcfa-5.0.1/src/cursor.h --- xcfa-4.3.8/src/cursor.h 2013-03-21 10:55:27.000000000 +0000 +++ xcfa-5.0.1/src/cursor.h 2015-01-21 16:28:42.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : cursor.h * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License diff -Nru xcfa-4.3.8/src/dragNdrop.c xcfa-5.0.1/src/dragNdrop.c --- xcfa-4.3.8/src/dragNdrop.c 2013-07-01 03:53:20.000000000 +0000 +++ xcfa-5.0.1/src/dragNdrop.c 2015-01-30 16:01:16.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : dragNdrop.c * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License diff -Nru xcfa-4.3.8/src/dragNdrop.h xcfa-5.0.1/src/dragNdrop.h --- xcfa-4.3.8/src/dragNdrop.h 2013-03-21 10:55:27.000000000 +0000 +++ xcfa-5.0.1/src/dragNdrop.h 2015-01-21 16:28:42.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : dragNdrop.c * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License diff -Nru xcfa-4.3.8/src/dvd.c xcfa-5.0.1/src/dvd.c --- xcfa-4.3.8/src/dvd.c 2013-03-21 10:55:49.000000000 +0000 +++ xcfa-5.0.1/src/dvd.c 2015-02-06 06:59:55.000000000 +0000 @@ -1,25 +1,25 @@ /* * file : dvd.c * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License * * This file is part of XCFA. - * + * * XCFA is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * at your option) any later version. - * + * * XCFA is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. - * + * * You should have received a copy of the GNU General Public License * along with XCFA. If not, see . */ @@ -72,9 +72,9 @@ DVD_TIME_COLUMN, DVD_CHANNELS_COLUMN, DVD_PIXBUF_CHOICE_COLUMN, - + DVD_PIXBUF_FILE_NORMALIZE, - + DVD_NAME_COLUMN, DVD_NAME_EDITABLE_COLUMN, DVD_POINTER_STRUCT_COLUMN, @@ -102,8 +102,8 @@ -// -// +// +// gboolean dvd_foreach_remove_GtkTree (GtkTreeModel *model, GtkTreePath *path, GtkTreeIter *iter, gpointer user_data) { VAR *var = NULL; @@ -123,15 +123,15 @@ /* continuer à parcourir l'arbre */ return FALSE; } -// -// +// +// void dvd_remove_GtkTree (void) { gtk_tree_model_foreach (GTK_TREE_MODEL(var_dvd.Adr_Tree_Model), dvd_foreach_remove_GtkTree, NULL); gtk_tree_store_clear ((GtkTreeStore *)var_dvd.Adr_Tree_Model); } -// -// +// +// gchar *dvd_get_channels (VAR *var) { /* @@ -154,30 +154,30 @@ } return ("???"); } -// -// +// +// GdkPixbuf *dvd_get_pixbuf_normalise (gboolean EtatNormaliseCd) { if (EtatNormaliseCd == FALSE) return (var_dvd.Pixbuf_Coche); return (var_dvd.Pixbuf_Selected); } -// -// +// +// gchar *dvd_get_name_to_treview (VAR *var) { gboolean BoolIdem = FALSE; gchar *NameSrc = NULL; BoolIdem = (strlen(var->name_file) == strlen(var->StaticNameFile) && 0 == strcmp (var->name_file, var->StaticNameFile)) ? TRUE : FALSE; - + if (TRUE == BoolIdem) NameSrc = g_strdup (var->name_file); else NameSrc = g_strdup_printf ("%s", var->name_file); - + return ((gchar *)NameSrc); } -// -// +// +// void dvd_affiche_list (void) { GtkTreeIter piter0 = {0,NULL,NULL,NULL}; @@ -198,10 +198,10 @@ // COORDONNEES DU SCROLL VERTICAL Adj = gtk_scrolled_window_get_vadjustment (GTK_SCROLLED_WINDOW (var_dvd.Adr_scroll)); AdjValue = gtk_adjustment_get_value (Adj); - + // VIDER DE TREEVIEW gtk_tree_store_clear ((GtkTreeStore *)var_dvd.Adr_Tree_Model); - + list = g_list_first (GlistDvd); while (list) { if (NULL != (var = (VAR *)list->data)) { @@ -216,13 +216,13 @@ gtk_tree_store_append (model, &piter0, NULL); gtk_tree_store_set (model, &piter0, - DVD_TITLE_COLUMN, str, + DVD_TITLE_COLUMN, str, DVD_PIXBUF_COLUMN_PLAY, NULL, - DVD_TIME_COLUMN, "", + DVD_TIME_COLUMN, "", DVD_CHANNELS_COLUMN, "", DVD_PIXBUF_CHOICE_COLUMN, NULL, DVD_PIXBUF_FILE_NORMALIZE, NULL, - DVD_NAME_COLUMN, "", + DVD_NAME_COLUMN, "", DVD_NAME_EDITABLE_COLUMN, FALSE, DVD_POINTER_STRUCT_COLUMN, var, -1); @@ -235,13 +235,13 @@ gtk_tree_store_append (model, &piter1, &piter0); gtk_tree_store_set (model, &piter1, - DVD_TITLE_COLUMN, str, + DVD_TITLE_COLUMN, str, DVD_PIXBUF_COLUMN_PLAY, NULL, - DVD_TIME_COLUMN, "", + DVD_TIME_COLUMN, "", DVD_CHANNELS_COLUMN, "", DVD_PIXBUF_CHOICE_COLUMN, NULL, DVD_PIXBUF_FILE_NORMALIZE, NULL, - DVD_NAME_COLUMN, "", + DVD_NAME_COLUMN, "", DVD_NAME_EDITABLE_COLUMN, FALSE, DVD_POINTER_STRUCT_COLUMN, var, -1); @@ -252,18 +252,18 @@ case _DVD_DATA_ALL : var->OldChannels = var->NewChannels = (gint)atoi (var->StrNumberChannel); - NameDest = dvd_get_name_to_treview (var); + NameDest = dvd_get_name_to_treview (var); time = g_strdup_printf ("%s", var->time); gtk_tree_store_append (model, &piter4, &piter1); gtk_tree_store_set (model, &piter4, - DVD_TITLE_COLUMN, var->def, - DVD_PIXBUF_COLUMN_PLAY, var_dvd.Pixbuf_FilePlay, - DVD_TIME_COLUMN, time, + DVD_TITLE_COLUMN, var->def, + DVD_PIXBUF_COLUMN_PLAY, var->GUINT_TempsTotal == 0 ? NULL : var_dvd.Pixbuf_FilePlay, + DVD_TIME_COLUMN, time, DVD_CHANNELS_COLUMN, dvd_get_channels (var), - DVD_PIXBUF_CHOICE_COLUMN, var_dvd.Pixbuf_Coche, - DVD_PIXBUF_FILE_NORMALIZE, var_dvd.Pixbuf_Coche, - DVD_NAME_COLUMN, NameDest, + DVD_PIXBUF_CHOICE_COLUMN, var->GUINT_TempsTotal == 0 ? NULL : var_dvd.Pixbuf_Coche, + DVD_PIXBUF_FILE_NORMALIZE, var->GUINT_TempsTotal == 0 ? NULL : var_dvd.Pixbuf_Coche, + DVD_NAME_COLUMN, var->GUINT_TempsTotal == 0 ? NULL : NameDest, DVD_NAME_EDITABLE_COLUMN, TRUE, DVD_POINTER_STRUCT_COLUMN, var, -1); @@ -277,13 +277,13 @@ gtk_tree_store_append (model, &piter2, &piter1); gtk_tree_store_set (model, &piter2, - DVD_TITLE_COLUMN, str, + DVD_TITLE_COLUMN, str, DVD_PIXBUF_COLUMN_PLAY, NULL, - DVD_TIME_COLUMN, "", + DVD_TIME_COLUMN, "", DVD_CHANNELS_COLUMN, "", DVD_PIXBUF_CHOICE_COLUMN, NULL, DVD_PIXBUF_FILE_NORMALIZE, NULL, - DVD_NAME_COLUMN, "", + DVD_NAME_COLUMN, "", DVD_NAME_EDITABLE_COLUMN, FALSE, DVD_POINTER_STRUCT_COLUMN, var, -1); @@ -294,18 +294,18 @@ case _DVD_DATA : var->OldChannels = var->NewChannels = (gint)atoi (var->StrNumberChannel); - NameDest = dvd_get_name_to_treview (var); + NameDest = dvd_get_name_to_treview (var); time = g_strdup_printf ("%s", var->time); gtk_tree_store_append (model, &piter3, &piter2); gtk_tree_store_set (model, &piter3, DVD_TITLE_COLUMN, var->def, - DVD_PIXBUF_COLUMN_PLAY, var_dvd.Pixbuf_FilePlay, - DVD_TIME_COLUMN, time, + DVD_PIXBUF_COLUMN_PLAY, var->GUINT_TempsTotal == 0 ? NULL : var_dvd.Pixbuf_FilePlay, + DVD_TIME_COLUMN, time, DVD_CHANNELS_COLUMN, dvd_get_channels (var), - DVD_PIXBUF_CHOICE_COLUMN, var_dvd.Pixbuf_Coche, - DVD_PIXBUF_FILE_NORMALIZE, var_dvd.Pixbuf_Coche, - DVD_NAME_COLUMN, NameDest, + DVD_PIXBUF_CHOICE_COLUMN, var->GUINT_TempsTotal == 0 ? NULL : var_dvd.Pixbuf_Coche, + DVD_PIXBUF_FILE_NORMALIZE, var->GUINT_TempsTotal == 0 ? NULL : var_dvd.Pixbuf_Coche, + DVD_NAME_COLUMN, var->GUINT_TempsTotal == 0 ? NULL : NameDest, DVD_NAME_EDITABLE_COLUMN, TRUE, DVD_POINTER_STRUCT_COLUMN, var, -1); @@ -322,43 +322,45 @@ /* Liste suivante */ list = g_list_next (list); } - + // AJUSTEMENT DU SCROLL VERTICAL gtk_adjustment_set_value (Adj, AdjValue); gtk_scrolled_window_set_vadjustment (GTK_SCROLLED_WINDOW (var_dvd.Adr_scroll), Adj); } -// -// +// +// gboolean dvd_foreach_normalise (GtkTreeModel *model, GtkTreePath *path, GtkTreeIter *iter, gpointer user_data) { gint value = GPOINTER_TO_INT (user_data); VAR *var = NULL; gtk_tree_model_get (model, iter, DVD_POINTER_STRUCT_COLUMN, &var, -1); - + if (var->type_list_dvd == _DVD_DATA_ALL || var->type_list_dvd == _DVD_DATA) { - var->EtatNormalise = value; + if( var->GUINT_TempsTotal > 0 ) { + var->EtatNormalise = value; - gtk_tree_store_set ( - GTK_TREE_STORE (model), - iter, - DVD_PIXBUF_FILE_NORMALIZE, - dvd_get_pixbuf_normalise (var->EtatNormalise), - -1 - ); + gtk_tree_store_set ( + GTK_TREE_STORE (model), + iter, + DVD_PIXBUF_FILE_NORMALIZE, + dvd_get_pixbuf_normalise (var->EtatNormalise), + -1 + ); + } } - + /* continuer à parcourir l'arbre */ return FALSE; } -// -// +// +// void dvd_set_flag_normalise (gboolean EtatNormalise) { gtk_tree_model_foreach (GTK_TREE_MODEL(var_dvd.Adr_Tree_Model), dvd_foreach_normalise, (gpointer)(glong)EtatNormalise); } -// -// +// +// gboolean dvd_foreach_func_if (GtkTreeModel *model, GtkTreePath *path, GtkTreeIter *iter, gpointer user_data) { VAR *var = NULL; @@ -382,23 +384,23 @@ /* continuer à parcourir l'arbre */ return FALSE; } -// -// +// +// gboolean dvd_foreach_is_norm_selected (GtkTreeModel *model, GtkTreePath *path, GtkTreeIter *iter, gpointer user_data) { VAR *var = NULL; gtk_tree_model_get (model, iter, DVD_POINTER_STRUCT_COLUMN, &var, -1); - + if (var->type_list_dvd == _DVD_DATA_ALL || var->type_list_dvd == _DVD_DATA) { - + if (var->EtatNormalise == TRUE) var_dvd.BoolNormIsSelected = TRUE; } - + return FALSE; } -// -// +// +// gboolean dvd_get_is_norm_selected (void) { var_dvd.BoolNormIsSelected = FALSE; @@ -407,7 +409,7 @@ } /* gchar *str = NULL; - + if (GlistDvd == NULL) { str = g_strdup (" "); } @@ -426,11 +428,11 @@ } StatusBar_set_mess( NOTEBOOK_DVD_AUDIO, _STATUSBAR_SIMPLE_, str ); g_free (str); str = NULL; - + */ -// -// +// +// void dvd_set_flag_buttons_dvd (void) { var_dvd.bool_selected = FALSE; @@ -459,8 +461,8 @@ } StatusBar_puts(); } -// -// +// +// gboolean dvd_foreach_stop_play (GtkTreeModel *model, GtkTreePath *path, GtkTreeIter *iter, gpointer user_data) { VAR *var = NULL; @@ -475,8 +477,8 @@ /* continuer à parcourir l'arbre */ return FALSE; } -// -// +// +// gboolean dvd_foreach_affiche_play (GtkTreeModel *model, GtkTreePath *path, GtkTreeIter *iter, gpointer user_data) { VAR *var = NULL; @@ -493,15 +495,15 @@ /* continuer à parcourir l'arbre */ return FALSE; } -// -// +// +// void dvd_set_etat_music_pixbuf (gboolean *PtrBoolDvdPlay, gboolean p_BoolDvdPlay) { static gboolean *BoolDvdPlay = NULL; - + gtk_tree_model_foreach (GTK_TREE_MODEL(var_dvd.Adr_Tree_Model), dvd_foreach_stop_play, NULL); - - if (PtrBoolDvdPlay != NULL) + + if (PtrBoolDvdPlay != NULL) BoolDvdPlay = PtrBoolDvdPlay; if (BoolDvdPlay != NULL) { *BoolDvdPlay = p_BoolDvdPlay; @@ -509,30 +511,30 @@ gtk_tree_model_foreach (GTK_TREE_MODEL(var_dvd.Adr_Tree_Model), dvd_foreach_affiche_play, NULL); } -// -// +// +// void dvd_set_icone_stop (void) { dvd_set_etat_music_pixbuf (NULL, FALSE); } -// -// +// +// void dvd_set_etat_music_pixbuf_with_detail (VAR *p_var, gboolean EtatPlay) { /* Tous les flags et widget sur FILE_ETAT_PLAY_ATTENTE */ - + if (EtatPlay == TRUE) { - + } } -// -// +// +// void dvd_pixbuf_stop_play (void) { gtk_tree_model_foreach (GTK_TREE_MODEL(var_dvd.Adr_Tree_Model), dvd_foreach_stop_play, NULL); } -// -// +// +// gboolean dvd_event_click_mouse (GtkWidget *treeview, GdkEventButton *event, gpointer data) { gint Pos_X = 0, Pos_Y = 0; @@ -545,8 +547,8 @@ GtkTreeIter iter; VAR *var = NULL; GdkPixbuf *Pixbuf = NULL; - gboolean bool_key_Control = (keys.keyval == GDK_Control_L || keys.keyval == GDK_Control_R); - gboolean bool_key_Shift = (keys.keyval == GDK_Shift_L || keys.keyval == GDK_Shift_R); + gboolean bool_key_Control = (keys.keyval == GDK_KEY_Control_L || keys.keyval == GDK_KEY_Control_R); + gboolean bool_key_Shift = (keys.keyval == GDK_KEY_Shift_L || keys.keyval == GDK_KEY_Shift_R); gboolean bool_key_Release = (bool_key_Control == FALSE && bool_key_Shift == FALSE); gboolean bool_click_gauche = (event->button == 1); gboolean bool_click_droit = (event->button == 3); @@ -556,7 +558,7 @@ gboolean BoolSelectColTemps = FALSE; gboolean BoolSelectColFormat = FALSE; gboolean BoolSelectColChoix = FALSE; - gboolean BoolSelectColNormalise = FALSE; + gboolean BoolSelectColNormalise = FALSE; gboolean BoolSelectColNom = FALSE; // Mise a jour du scroll vertical @@ -605,34 +607,38 @@ break; } } - + if( BoolSelectColNom ); + if( BoolSelectColFormat ); + if( BoolSelectColTemps ); + if( BoolSelectColTitres ); gtk_tree_model_get_iter (model, &iter, path); gtk_tree_model_get (model, &iter, DVD_POINTER_STRUCT_COLUMN, &var, -1); - if (var && (var->type_list_dvd == _DVD_DATA || var->type_list_dvd == _DVD_DATA_ALL)) { + // if (var && (var->type_list_dvd == _DVD_DATA || var->type_list_dvd == _DVD_DATA_ALL)) { + if (var && var->GUINT_TempsTotal > 0 && (var->type_list_dvd == _DVD_DATA || var->type_list_dvd == _DVD_DATA_ALL)) { // button = ((GdkEventButton*)event)->button; if (bool_click_droit && BoolSelectColNormalise == TRUE) { popup_normalise_dvd (); } - + else if (bool_click_gauche && BoolSelectColNormalise == TRUE) { - + var->EtatNormalise = (var->EtatNormalise == TRUE) ? FALSE : TRUE; - + gtk_tree_store_set ( GTK_TREE_STORE (model), &iter, DVD_PIXBUF_FILE_NORMALIZE, dvd_get_pixbuf_normalise (var->EtatNormalise), -1 ); - + dvd_set_flag_buttons_dvd (); } - + else if (bool_click_gauche && BoolSelectColChoix == TRUE) { - + if (var->OldChannels == 2) { switch (var->EtatChoix) { case _COCHE_ : @@ -672,26 +678,27 @@ dvd_set_flag_buttons_dvd (); } else if (bool_click_gauche && BoolSelectColPlay == TRUE) { - + if (TRUE == mplayer_is_used ()) { - wininfo_create ( + wind_info_init ( WindMain, - _("MPLAYER deja en action"), - _("MPLAYER est deja utilise !!"), + _("MPLAYER already in action"), + _("MPLAYER is already in use !!"), ""); } else { - + GList *list = NULL; // APPEL DE mplayer_init AVANT WinReader_open () mplayer_init (LIST_MPLAYER_FROM_DVD, (gdouble)var->GUINT_TempsTotal, var_dvd.GUINT_TempsTotal, WinReader_close, WinReader_set_value, dvd_set_icone_stop, WinReader_is_close); - WinReader_open ("Dvd Read"); + // WinReader_open ("Dvd Read"); + wind_reader_init( WindMain ); WinReader_set_pause (); - + list = g_list_append (list, g_strdup ("-vo")); list = g_list_append (list, g_strdup ("null")); - list = g_list_append (list, g_strdup ("-chapter")); + list = g_list_append (list, g_strdup ("-chapter")); if (*var->StrNumerateChapter == '0') list = g_list_append (list, g_strdup ("1")); else list = g_list_append (list, g_strdup_printf ("%s-%s", var->StrNumerateChapter, var->StrNumerateChapter)); @@ -702,13 +709,13 @@ list = g_list_append (list, g_strdup_printf ("%d",libutils_hexa_to_int (var->StrNumerateStreamId))); mplayer_set_list (list); list = libutils_remove_glist (list); - + gtk_tree_model_get (model, &iter, DVD_PIXBUF_COLUMN_PLAY, &Pixbuf, -1); // AFFICHE L ICONE DE PLAY dvd_set_etat_music_pixbuf (&var->BoolDvdPlay, TRUE); } } - + /* position du curseur a l'instant du click */ if (Pos_X < 10 || Pos_X > 22) return (FALSE); if (Pos_Y < 6 || Pos_Y > 18) return (FALSE); @@ -718,11 +725,11 @@ // AJUSTEMENT DU SCROLL VERTICAL gtk_adjustment_set_value (Adj, AdjValue); gtk_scrolled_window_set_vadjustment (GTK_SCROLLED_WINDOW (var_dvd.Adr_scroll), Adj); - while (gtk_events_pending()) gtk_main_iteration(); + while (gtk_events_pending()) gtk_main_iteration(); return (FALSE); } -// -// +// +// static void dvd_cell_edited_namefile (GtkCellRendererText *cell, gchar *path_string, gchar *new_text, @@ -747,22 +754,22 @@ gtk_tree_model_get (model, &iter, DVD_POINTER_STRUCT_COLUMN, &var, -1); g_free (var->name_file); var->name_file = NULL; - + // UN CHAMPS VIDE ACTUALISE LE NOM D ORIGINE if (0 == strlen (new_text)) var->name_file = g_strdup (var->StaticNameFile); else var->name_file = g_strdup (new_text); // actualise le nom - NameDest = dvd_get_name_to_treview (var); + NameDest = dvd_get_name_to_treview (var); gtk_tree_store_set (GTK_TREE_STORE (model), &iter, column, NameDest, -1); g_free (NameDest); NameDest = NULL; } gtk_tree_path_free (path); } -// -// +// +// gboolean dvd_event (GtkWidget *treeview, GdkEvent *event, gpointer user_data) { gint x, y; @@ -783,7 +790,7 @@ gboolean BoolSelectColTemps = FALSE; gboolean BoolSelectColFormat = FALSE; gboolean BoolSelectColChoix = FALSE; - gboolean BoolSelectColNormalise = FALSE; + gboolean BoolSelectColNormalise = FALSE; gboolean BoolSelectColNom = FALSE; if (keys.keyval == GDK_KEY_PRESS) { @@ -812,7 +819,10 @@ /* Si pas de selection a cet endroit retour */ - gdk_window_get_pointer (((GdkEventButton*)event)->window, &x, &y, &state); + GdkDeviceManager *manager = gdk_display_get_device_manager( gdk_display_get_default() ); + GdkDevice *device = gdk_device_manager_get_client_pointer( manager ); + gdk_window_get_device_position( ((GdkEventButton*)event)->window, device, &x, &y, &state ); + // gdk_window_get_pointer (((GdkEventButton*)event)->window, &x, &y, &state); if (FALSE == gtk_tree_view_get_path_at_pos (GTK_TREE_VIEW(treeview), x, y, &path, &column, &Pos_X, &Pos_Y)) { @@ -824,7 +834,12 @@ gtk_tree_model_get_iter (model, &iter, path); gtk_tree_model_get (var_dvd.Adr_Tree_Model, &iter, DVD_POINTER_STRUCT_COLUMN, &var, -1); if (var == NULL) return (FALSE); - + if( var->GUINT_TempsTotal == 0 ) { + StatusBar_set_mess( NOTEBOOK_DVD_AUDIO, _STATUSBAR_SIMPLE_, " "); + StatusBar_puts( ); + return( FALSE ); + } + /* IDEE POUR REMPLACER LES COMPARAISON PAR NOMS. EXEMPLES: * PLAY = 0 * TRASH = 1 @@ -851,25 +866,30 @@ break; } } + if( BoolSelectColFormat ); + if( BoolSelectColTemps ); + if( BoolSelectColTitres ); if (BoolSelectColNormalise == TRUE) { if (var->EtatNormalise == TRUE) { switch (dvd_get_value_normalise_dvd ()) { case 0 : - StatusBar_set_mess( NOTEBOOK_DVD_AUDIO, _STATUSBAR_SIMPLE_, _("(Click Droit = Menu) / PEAK-ALBUM: Amplification maximale du volume pour un groupe de fichiers en respectant les ecarts de niveau entre chacun d'eux.")); + StatusBar_set_mess( NOTEBOOK_DVD_AUDIO, _STATUSBAR_SIMPLE_, _("(Right click = Menu) / Maximum volume amplification of a group of files keeping the level difference between each of them." +)); + break; case 1 : - StatusBar_set_mess( NOTEBOOK_DVD_AUDIO, _STATUSBAR_SIMPLE_, _("(Click Droit = Menu) / PEAK: Amplification maximale du volume pour chaque de fichier.")); + StatusBar_set_mess( NOTEBOOK_DVD_AUDIO, _STATUSBAR_SIMPLE_, _("PEAK: Maximum volume amplification of each file.")); break; } } else { - StatusBar_set_mess( NOTEBOOK_DVD_AUDIO, _STATUSBAR_SIMPLE_, _("(Click Droit = Menu) / En attente de selection.")); + StatusBar_set_mess( NOTEBOOK_DVD_AUDIO, _STATUSBAR_SIMPLE_, _("(Right click = Menu) / ReplayGain: Waiting for selection.")); } } else if (BoolSelectColNom == TRUE) { - + if (var_dvd.NumStruct == var->NumStruct) return (FALSE); var_dvd.NumStruct = var->NumStruct; @@ -897,7 +917,7 @@ if (var->OldChannels == 2) { switch (var->EtatChoix) { case _COCHE_ : - str = g_strdup (_("En attente de selection. Un click activera la conversion vers 2 canaux.")); + str = g_strdup (_("Waiting for selection. A click will activate the conversion to 2 channels.")); StatusBar_set_mess( NOTEBOOK_DVD_AUDIO, _STATUSBAR_SIMPLE_, str ); break; case _SELECTED_ : @@ -909,7 +929,7 @@ */ break; case _CH_2_ : - str = g_strdup_printf (_("Conversion vers 2 canaux.")); + str = g_strdup_printf (_("Conversion to 2 channels.")); StatusBar_set_mess( NOTEBOOK_DVD_AUDIO, _STATUSBAR_SIMPLE_, str ); break; } @@ -917,16 +937,16 @@ else if (var->OldChannels > 2) { switch (var->EtatChoix) { case _COCHE_ : - str = g_strdup (_("En attente de selection. Un click activera la conversion vers 2 canaux.")); + str = g_strdup (_("Waiting for selection. A click will activate the conversion to 2 channels.")); StatusBar_set_mess( NOTEBOOK_DVD_AUDIO, _STATUSBAR_SIMPLE_, str ); break; case _SELECTED_ : - str = g_strdup_printf (_("Conversion vers %s canaux."), var->StrNumberChannel); + str = g_strdup_printf (_("Conversion to %s channels."), var->StrNumberChannel); StatusBar_set_mess( NOTEBOOK_DVD_AUDIO, _STATUSBAR_SIMPLE_, str ); break; case _CH_2_ : str = g_strdup_printf ( - _("Conversion vers 2 canaux. Un second click activera la conversion vers %s canaux."), var->StrNumberChannel); + _("Conversion to 2 channels. A second click will activate the conversion to %s channels."), var->StrNumberChannel); StatusBar_set_mess( NOTEBOOK_DVD_AUDIO, _STATUSBAR_SIMPLE_, str ); break; } @@ -936,24 +956,24 @@ str = NULL; } } - + else if (BoolSelectColPlay == TRUE) { - + gtk_tree_model_get (model, &iter, DVD_PIXBUF_COLUMN_PLAY, &Pixbuf, -1); if (Pixbuf == var_dvd.Pixbuf_FileStop) { - StatusBar_set_mess( NOTEBOOK_DVD_AUDIO, _STATUSBAR_SIMPLE_, _("Musique en ecoute.")); + StatusBar_set_mess( NOTEBOOK_DVD_AUDIO, _STATUSBAR_SIMPLE_, _("Playing music.")); } else if (Pixbuf == var_dvd.Pixbuf_FilePlay) { - StatusBar_set_mess( NOTEBOOK_DVD_AUDIO, _STATUSBAR_SIMPLE_, _("Musique en attente.")); + StatusBar_set_mess( NOTEBOOK_DVD_AUDIO, _STATUSBAR_SIMPLE_, _("Music paused.")); } else { StatusBar_set_mess( NOTEBOOK_DVD_AUDIO, _STATUSBAR_SIMPLE_, " "); } } - + else { gchar *str = NULL; - + if (GlistDvd == NULL) { str = g_strdup (" "); } @@ -966,35 +986,35 @@ ); } else { - str = g_strdup(_("Ce fichier ne peut etre extrait !")); + str = g_strdup(_("This file can not be ripped !")); var_dvd.bool_err --; } } StatusBar_set_mess( NOTEBOOK_DVD_AUDIO, _STATUSBAR_SIMPLE_, str ); g_free (str); str = NULL; - + dvd_set_flag_buttons_dvd (); } StatusBar_puts( ); return (FALSE); } -// -// +// +// void dvd_changed_selection_row_file_dvd (GtkTreeSelection *selection, gpointer data) { var_dvd.Adr_Line_Selected = selection; } -// -// +// +// gboolean dvd_foreach_normalise_column (GtkTreeModel *model, GtkTreePath *path, GtkTreeIter *iter, gpointer user_data) { VAR *var = NULL; gtk_tree_model_get (model, iter, DVD_POINTER_STRUCT_COLUMN, &var, -1); - + if (var->type_list_dvd == _DVD_DATA_ALL || var->type_list_dvd == _DVD_DATA) { - + var->EtatNormalise = (var->EtatNormalise == TRUE) ? FALSE : TRUE; gtk_tree_store_set ( GTK_TREE_STORE (model), @@ -1004,25 +1024,25 @@ -1 ); } - + /* continuer à parcourir l'arbre */ return FALSE; } -// -// +// +// void dvd_selected_column (GtkTreeViewColumn *treeviewcolumn, gpointer user_data) { gtk_tree_model_foreach (GTK_TREE_MODEL(var_dvd.Adr_Tree_Model), dvd_foreach_normalise_column, NULL); } -// -// +// +// gboolean dvd_foreach_update (GtkTreeModel *model, GtkTreePath *path, GtkTreeIter *iter, gpointer user_data) { VAR *var = NULL; GdkPixbuf *Pixbuf = NULL; gtk_tree_model_get (model, iter, DVD_POINTER_STRUCT_COLUMN, &var, -1); - + if (var->type_list_dvd == _DVD_DATA_ALL || var->type_list_dvd == _DVD_DATA) { /* Raffraihcissement COCHE */ @@ -1048,21 +1068,21 @@ /* continuer à parcourir l'arbre */ return FALSE; } -// -// +// +// void dvd_update (void) { gtk_tree_model_foreach (GTK_TREE_MODEL(var_dvd.Adr_Tree_Model), dvd_foreach_update, NULL); } // INIT TREVIEW -// +// static void dvd_add_columns (GtkTreeView *treeview) { gint col_offset; GtkCellRenderer *renderer; GtkTreeViewColumn *column; GtkTreeModel *model = gtk_tree_view_get_model (treeview); - + var_dvd.NumStruct = 0; var_dvd.bool_dedans = FALSE; @@ -1071,20 +1091,20 @@ // SIGNAL : 'button-press-event' g_signal_connect(G_OBJECT(treeview), "button-press-event", (GCallback) dvd_event_click_mouse, model); - + // SIGNAL : Ligne actuellement selectionnee 'changed' var_dvd.Adr_Line_Selected = gtk_tree_view_get_selection(GTK_TREE_VIEW(treeview)); g_signal_connect(G_OBJECT(var_dvd.Adr_Line_Selected), "changed", G_CALLBACK(dvd_changed_selection_row_file_dvd), "1"); - + /* DVD_TITLE_COLUMN */ renderer = gtk_cell_renderer_text_new (); g_object_set (renderer, "xalign", 0.0, NULL); col_offset = gtk_tree_view_insert_column_with_attributes (GTK_TREE_VIEW (treeview), -1, - _("Titres"), renderer, + _("Titles"), renderer, "markup", DVD_TITLE_COLUMN, NULL); var_dvd.Adr_Column_Titres = @@ -1108,7 +1128,7 @@ g_object_set (renderer, "xalign", 0.5, NULL); col_offset = gtk_tree_view_insert_column_with_attributes (GTK_TREE_VIEW (treeview), -1, - _("Temps"), renderer, + _("Time"), renderer, "markup", DVD_TIME_COLUMN, NULL); var_dvd.Adr_Column_Temps = @@ -1132,7 +1152,7 @@ g_object_set (renderer, "xalign", 0.5, NULL); col_offset = gtk_tree_view_insert_column_with_attributes (GTK_TREE_VIEW (treeview), -1, - _("Choix"), renderer, + _("Choice"), renderer, "pixbuf", DVD_PIXBUF_CHOICE_COLUMN, NULL); var_dvd.Adr_Column_Choix = @@ -1157,7 +1177,7 @@ column = gtk_tree_view_get_column (GTK_TREE_VIEW (treeview), col_offset - 1); gtk_tree_view_column_set_alignment (GTK_TREE_VIEW_COLUMN (column), 0.5); */ - + /* DVD_PIXBUF_FILE_NORMALIZE */ renderer = gtk_cell_renderer_pixbuf_new (); @@ -1175,7 +1195,7 @@ "clicked", G_CALLBACK (dvd_selected_column), GINT_TO_POINTER(0)); - + /* DVD_NAME_COLUMN */ var_dvd.Renderer = renderer = gtk_cell_renderer_text_new (); @@ -1184,7 +1204,7 @@ g_signal_connect (renderer, "edited", G_CALLBACK (dvd_cell_edited_namefile), model); col_offset = gtk_tree_view_insert_column_with_attributes (GTK_TREE_VIEW (treeview), -1, - _("Nom"), + _("Name"), renderer, "markup", DVD_NAME_COLUMN, "editable", DVD_NAME_EDITABLE_COLUMN, @@ -1193,8 +1213,8 @@ column = gtk_tree_view_get_column (GTK_TREE_VIEW (treeview), col_offset - 1); gtk_tree_view_column_set_alignment (GTK_TREE_VIEW_COLUMN (column), 0.5); } -// -// +// +// void on_scrolledwindow_dvd_audio_realize (GtkWidget *widget, gpointer user_data) { /* Chargement des PIXBUF */ @@ -1222,7 +1242,7 @@ /* create tree view */ var_dvd.Adr_TreeView = gtk_tree_view_new_with_model (var_dvd.Adr_Tree_Model); g_object_unref (var_dvd.Adr_Tree_Model); - gtk_tree_view_set_rules_hint (GTK_TREE_VIEW (var_dvd.Adr_TreeView), TRUE); + // gtk_tree_view_set_rules_hint (GTK_TREE_VIEW (var_dvd.Adr_TreeView), TRUE); dvd_add_columns (GTK_TREE_VIEW (var_dvd.Adr_TreeView)); @@ -1230,29 +1250,27 @@ gtk_widget_show_all (widget); } -// -// +// +// void on_combobox_peripherique_dvd_realize (GtkWidget *widget, gpointer user_data) { GList *List = NULL; MEDIA *Media = NULL; - libcombo_alloc (GTK_COMBO_BOX (widget)); - List = g_list_first (scan_get_glist ()); while (List) { if ((Media = (MEDIA *)List->data)) { - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), (gchar *)Media->Full_Name); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), (gchar *)Media->Full_Name ); } List = g_list_next(List); } - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), _("Fichier structure DVD")); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), _("DVD file structure")); if( Config.NumSelectComboBoxDvd < 0 ) Config.NumSelectComboBoxDvd = 0; gtk_combo_box_set_active (GTK_COMBO_BOX (widget), Config.NumSelectComboBoxDvd); var_dvd.Adr_ComboBox_Reader = GTK_COMBO_BOX (widget); } -// -// +// +// void dvd_pthread_reffresh_list (void *data) { var_dvd.bool_end_pthread = FALSE; @@ -1260,6 +1278,7 @@ dvdread_remove_list (); + /* if (dvdread_dvd_found () == FALSE) { var_dvd.bool_read_dvd = FALSE; } @@ -1273,12 +1292,14 @@ } } } + */ + var_dvd.bool_read_dvd = dvdread_dvd_read(); var_dvd.bool_end_pthread = TRUE; pthread_exit (0); } -// -// +// +// static gint dvd_timeout (gpointer data) { if (var_dvd.bool_end_pthread == TRUE) { @@ -1296,13 +1317,13 @@ dvd_set_flag_buttons_dvd (); if (var_dvd.bool_read_dvd == FALSE) { - StatusBar_set_mess( NOTEBOOK_DVD_AUDIO, _STATUSBAR_SIMPLE_, _("Le DVD est absent du lecteur.")); + StatusBar_set_mess( NOTEBOOK_DVD_AUDIO, _STATUSBAR_SIMPLE_, _("The DVD player is absent.")); } else { StatusBar_set_mess( NOTEBOOK_DVD_AUDIO, _STATUSBAR_SIMPLE_, "" ); } - gtk_timeout_remove (var_dvd.Handler_Timeout); + g_source_remove (var_dvd.Handler_Timeout); WindScan_close (); } else if (var_dvd.bool_halt == TRUE) { @@ -1311,42 +1332,46 @@ return (TRUE); } -// -// +// +// void dvd_reffresh_list_dvd_action (void) { pthread_t nmr_tid; if (TRUE == mplayer_is_used ()) { - wininfo_create ( + wind_info_init ( WindMain, - _("MPLAYER deja en action"), - _("MPLAYER est deja utilise !!"), + _("MPLAYER already in action"), + _("MPLAYER is already in use !!"), ""); return; } - + dvd_remove_GtkTree (); var_dvd.PathDvd = scan_get_text_combo_cd (_DVD_); // g_print("---------------> var_dvd.PathDvd = %s\n",var_dvd.PathDvd ); - - WindScan_open (_("Scan ..."), WINDSCAN_PULSE); - + + // WindScan_open (_("Scan ..."), WINDSCAN_PULSE); + wind_scan_init( + WindMain, + "Scan ...", + WINDSCAN_PULSE + ); var_dvd.bool_read_dvd = TRUE; var_dvd.bool_halt = FALSE; var_dvd.bool_end_pthread = FALSE; - var_dvd.Handler_Timeout = gtk_timeout_add (100, dvd_timeout, 0); + var_dvd.Handler_Timeout = g_timeout_add (100, dvd_timeout, 0); pthread_create (&nmr_tid, NULL ,(void *)dvd_pthread_reffresh_list, (void *)NULL); // pthread_detach (nmr_tid); } -// -// +// +// void dvd_reffresh_list_directory_dvd (gchar *path) { gchar *Ptr = NULL; - + var_dvd.from.bool_dvd = FALSE; if( NULL != var_dvd.from.path ) { g_free (var_dvd.from.path); var_dvd.from.path = NULL; @@ -1357,14 +1382,14 @@ g_free (Config.PathChoiceFileDVD); Config.PathChoiceFileDVD = NULL; } Config.PathChoiceFileDVD = g_strdup (path); - + if (NULL != (Ptr = strrchr (Config.PathChoiceFileDVD, '/'))) { *Ptr = '\0'; } dvd_reffresh_list_dvd_action (); } -// -// +// +// gboolean dvd_bool_read_dvd_from_directory (void) { guint nbr = g_list_length (scan_get_glist ()); @@ -1372,18 +1397,18 @@ return (Nmr_Combo_Actif >= nbr ? TRUE : FALSE); } -// -// +// +// void dvd_reffresh_list_dvd (void) { if (NULL == var_dvd.Adr_ComboBox_Reader) return; if (libutils_find_file ("lsdvd") == FALSE) { - wininfo_create ( + wind_info_init ( WindMain, - _("lsdvd est absent !"), - _("Il faut installer le programme: lsdvd"), + _("lsdvd is missing !"), + _("You must install the program: lsdvd"), ""); // g_print("VEUILLEZ INSTALLER L APPLICATION [ LSDVD ]\n"); @@ -1401,8 +1426,8 @@ dvd_reffresh_list_dvd_action (); } } -// -// +// +// void on_button_destination_dvd_realize (GtkWidget *widget, gpointer user_data) { var_dvd.bool_selected = FALSE; @@ -1412,8 +1437,8 @@ gtk_button_set_use_underline (GTK_BUTTON (var_dvd.Adr_button_destination_dvd), FALSE); gtk_button_set_label (GTK_BUTTON (var_dvd.Adr_button_destination_dvd), Config.PathDestinationDVD); } -// -// +// +// void dvd_maj_destination_DVD (gchar *path) { if (libutils_test_write (path) == TRUE) { @@ -1423,20 +1448,20 @@ gtk_button_set_label (GTK_BUTTON (var_dvd.Adr_button_destination_dvd), Config.PathDestinationDVD); } } -// -// +// +// void on_button_destination_dvd_clicked (GtkButton *button, gpointer user_data) { fileselect_create (_PATH_CHOICE_DESTINATION_, Config.PathDestinationDVD, dvd_maj_destination_DVD); } -// -// +// +// void dvd_button_annuler_lecture_dvd_clicked (void) { var_dvd.bool_halt = TRUE; } -// -// +// +// gboolean dvd_foreach_func (GtkTreeModel *model, GtkTreePath *path, GtkTreeIter *iter, gpointer user_data) { VAR *var = NULL; @@ -1518,7 +1543,7 @@ utils_hexa_to_int (var->StrNumerateStreamId), param ); - + g_print ("dvd_extract->LineCommand =%s\n", dvd_extract->LineCommand); GlistDvdExtract = g_list_append (GlistDvdExtract, dvd_extract); @@ -1526,12 +1551,12 @@ /* NOUVEAU */ StructDvdExtract = (NEW_DVD_EXTRACT *)g_malloc0 (sizeof (NEW_DVD_EXTRACT)); - + StructDvdExtract->Path = g_strdup_printf ("%s/%s.wav", Config.PathDestinationDVD, var->name_file); StructDvdExtract->Var = var; - + StructDvdExtract->EtatNormalise = var->EtatNormalise; - + if (var->EtatNormalise == TRUE) { switch (dvd_get_value_normalise_dvd ()) { case 0 : var_dvd.TTNormPeakCollectif ++; break; @@ -1543,9 +1568,9 @@ StructDvdExtract->list = g_list_append (StructDvdExtract->list, g_strdup ("-n")); // StructDvdExtract->list = g_list_append (StructDvdExtract->list, g_strdup ("0")); StructDvdExtract->list = g_list_append (StructDvdExtract->list, g_strdup_printf ("%d", Config.Nice)); - + StructDvdExtract->list = g_list_append (StructDvdExtract->list, g_strdup ("mplayer")); - + StructDvdExtract->list = g_list_append (StructDvdExtract->list, g_strdup ("-nojoystick")); StructDvdExtract->list = g_list_append (StructDvdExtract->list, g_strdup ("-nolirc")); @@ -1554,19 +1579,19 @@ StructDvdExtract->list = g_list_append (StructDvdExtract->list, g_strdup ("-ao")); StructDvdExtract->list = g_list_append (StructDvdExtract->list, g_strdup_printf ("pcm:file=%s/%s.wav", Config.PathDestinationDVD, var->name_file)); - + Larrbuf = g_strsplit (chapter, " ", 0); for (cpt=0; Larrbuf[cpt]; cpt++) { StructDvdExtract->list = g_list_append (StructDvdExtract->list, g_strdup (Larrbuf[cpt])); } g_strfreev(Larrbuf); - + StructDvdExtract->list = g_list_append (StructDvdExtract->list, g_strdup_printf ("dvd://%s", var->StrNumerateTitle)); StructDvdExtract->list = g_list_append (StructDvdExtract->list, g_strdup ("-dvd-device")); StructDvdExtract->list = g_list_append (StructDvdExtract->list, g_strdup (scan_get_text_combo_cd (_DVD_))); StructDvdExtract->list = g_list_append (StructDvdExtract->list, g_strdup ("-aid")); StructDvdExtract->list = g_list_append (StructDvdExtract->list, g_strdup_printf ("%d",libutils_hexa_to_int (var->StrNumerateStreamId))); - + Larrbuf = g_strsplit (param, " ", 0); for (cpt=0; Larrbuf[cpt]; cpt++) { StructDvdExtract->list = g_list_append (StructDvdExtract->list, g_strdup (Larrbuf[cpt])); @@ -1585,68 +1610,62 @@ /* continuer à parcourir l'arbre */ return FALSE; } -// -// +// +// void on_button_extraction_dvd_clicked (GtkButton *button, gpointer user_data) { var_dvd.int_temp = 0; var_dvd.TTNormPeak = 0; var_dvd.TTNormPeakCollectif = 0; - + gtk_tree_model_foreach (GTK_TREE_MODEL(var_dvd.Adr_Tree_Model), dvd_foreach_func, NULL); // mplayer_fifo_quit (); dvdextract_dvd_to_file (); } -// -// +// +// void on_combobox_sub_dvd_realize (GtkWidget *widget, gpointer user_data) { - libcombo_alloc (GTK_COMBO_BOX (widget)); - var_dvd.Adr_combobox_sub_dvd = GTK_COMBO_BOX (widget); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), "Normal"); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), "-3dB"); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), "-6dB"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), "Normal"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), "-3dB"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), "-6dB"); gtk_combo_box_set_active (GTK_COMBO_BOX (widget), 0); } -// -// +// +// void on_combobox_ambiance_dvd_realize (GtkWidget *widget, gpointer user_data) { - libcombo_alloc (GTK_COMBO_BOX (widget)); - var_dvd.Adr_combobox_ambiance_dvd = GTK_COMBO_BOX (widget); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), "Normal"); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), "-3dB"); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), "-6dB"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), "Normal"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), "-3dB"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), "-6dB"); gtk_combo_box_set_active (GTK_COMBO_BOX (widget), 0); } -// -// +// +// void on_combobox_normalise_dvd_realize (GtkWidget *widget, gpointer user_data) { - libcombo_alloc (GTK_COMBO_BOX (widget)); - var_dvd.Adr_combobox_normalise_dvd = GTK_COMBO_BOX (widget); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), "Peak/Album"); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), "Peak"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), "Peak/Album"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), "Peak"); gtk_combo_box_set_active (GTK_COMBO_BOX (widget), 0); } -// -// +// +// gint dvd_get_value_normalise_dvd (void) { if (var_dvd.Adr_combobox_normalise_dvd == NULL) return (-1); return (gtk_combo_box_get_active (var_dvd.Adr_combobox_normalise_dvd)); } -// +// // SOLVED // Debian Bug report logs - #673640 // xcfa: XCFA crashes when the CD is ejected // http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=673640 -// +// void on_button_eject_dvd_realize( GtkWidget *widget, gpointer user_data ) { // g_print( "on_button_eject_dvd_realize\n" ); @@ -1660,8 +1679,8 @@ dvd_set_flag_buttons_dvd (); scan_eject_media (_DVD_); } -// -// +// +// void on_combobox_peripherique_dvd_changed (GtkComboBox *combobox, gpointer user_data) { if( NULL != var_dvd.Adr_ComboBox_Reader ) { @@ -1669,39 +1688,39 @@ dvd_reffresh_list_dvd (); } } -// -// +// +// void on_button_rafraichir_dvd_clicked (GtkButton *button, gpointer user_data) { dvd_reffresh_list_dvd (); } -// -// +// +// void on_button_deplier_dvd_clicked (GtkButton *button, gpointer user_data) { gtk_tree_view_expand_all ( (GtkTreeView *)var_dvd.Adr_TreeView); } -// -// +// +// void on_button_replier_dvd_clicked (GtkButton *button, gpointer user_data) { gtk_tree_view_collapse_all ( (GtkTreeView *)var_dvd.Adr_TreeView); } -// -// +// +// void dvd_from_popup (TYPE_SET_FROM_POPUP_DVD TypeSetFromPopup, gboolean EtatNormalise) { switch (TypeSetFromPopup) { - + // SELECTION ou DESELECTION POUR LES ICONES DE CONVERSIONS - + case CD_NORMALISE_SELECT_V : // Deselection verticale dvd_set_flag_normalise (FALSE); break; case CD_NORMALISE_DESELECT_V : // Selection verticale dvd_set_flag_normalise (TRUE); break; - + } } diff -Nru xcfa-4.3.8/src/dvd_extract.c xcfa-5.0.1/src/dvd_extract.c --- xcfa-4.3.8/src/dvd_extract.c 2013-06-26 20:20:23.000000000 +0000 +++ xcfa-5.0.1/src/dvd_extract.c 2015-02-05 18:50:23.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : dvd_extract.c * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License @@ -185,7 +185,7 @@ PtrTabArgs = dvdextract_set_arg( (GList *)StructDvdExtract->list ); RetConvert = conv_to_convert( PtrTabArgs, FALSE, MPLAYER_AUDIO_TO_WAV, "NEW:-> MPLAYER_AUDIO_TO_WAV" ); - PtrTabArgs = filelc_RevoveTab( PtrTabArgs ); + PtrTabArgs = filelc_RemoveTab( PtrTabArgs ); if( FALSE == conv.bool_stop && TRUE == RetConvert ) { @@ -207,7 +207,7 @@ PtrTabArgs [ pos++ ] = g_strdup ("44100"); PtrTabArgs [ pos++ ] = NULL; conv_to_convert( PtrTabArgs, FALSE, MPLAYER_WAV_TO_WAV, "MPLAYER_WAV_TO_WAV"); - PtrTabArgs = filelc_RevoveTab( PtrTabArgs ); + PtrTabArgs = filelc_RemoveTab( PtrTabArgs ); conv_copy_src_to_dest ("/tmp/toto.wav", StructDvdExtract->Path); @@ -228,7 +228,7 @@ PtrTabArgs [ pos++ ] = g_strdup (StructDvdExtract->Path); PtrTabArgs [ pos++ ] = NULL; conv_to_convert( PtrTabArgs, FALSE, NORMALISE_EXEC, "NORMALISE_EXEC Wav -> Peak"); - PtrTabArgs = filelc_RevoveTab( PtrTabArgs ); + PtrTabArgs = filelc_RemoveTab( PtrTabArgs ); PRINT("TRAITEMENT NORMALISE PEAK OK"); @@ -299,7 +299,7 @@ } PtrTabArgs [ pos++ ] = NULL; conv_to_convert( PtrTabArgs, FALSE, NORMALISE_GET_LEVEL, "NORMALISE_GET_LEVEL TEST -> PEAK/GROUP"); - PtrTabArgs = filelc_RevoveTab( PtrTabArgs ); + PtrTabArgs = filelc_RemoveTab( PtrTabArgs ); } if (FALSE == conv.bool_stop) { // -- APPLIQUER LA MOYENNE PEAK-GROUP @@ -318,7 +318,7 @@ } PtrTabArgs [ pos++ ] = NULL; conv_to_convert( PtrTabArgs, FALSE, NORMALISE_EXEC, "NORMALISE_EXEC Wav -> PEAK/GROUP"); - PtrTabArgs = filelc_RevoveTab( PtrTabArgs ); + PtrTabArgs = filelc_RemoveTab( PtrTabArgs ); PRINT("TRAITEMENT NORMALISE PEAK_COLLECTIF OK"); } @@ -373,7 +373,7 @@ GList *listTwo = NULL; gchar *ptr = NULL; - gtk_timeout_remove (VarDvdextract.Handler_Timeout); + g_source_remove (VarDvdextract.Handler_Timeout); WindScan_close (); @@ -409,9 +409,9 @@ dvd_set_flag_buttons_dvd (); if (FALSE == conv.bool_stop) { - NotifySend_msg (_("XCFA: Extraction DVD"), _("Ok"), conv.bool_stop); + NotifySend_msg (_("XCFA: DVD rip"), _("Ok"), conv.bool_stop); } else { - NotifySend_msg (_("XCFA: Extraction DVD"), _("Arret par l'utilisateur"), conv.bool_stop); + NotifySend_msg (_("XCFA: DVD rip"), _("Stop by user"), conv.bool_stop); } } else if (TRUE == VarDvdextract.bool_mess) { @@ -445,11 +445,16 @@ VarDvdextract.bool_update = TRUE; VarDvdextract.BoolListIsPeakAlbum = dvd_get_value_normalise_dvd () == 0 ? TRUE : FALSE; - WindScan_open ("Extract With Mplayer", WINDSCAN_PULSE); - WindScan_set_label ("Extraction en cours ..."); + // WindScan_open ("Extract With Mplayer", WINDSCAN_PULSE); + wind_scan_init( + WindMain, + "Extract With Mplayer", + WINDSCAN_PULSE + ); + WindScan_set_label ("Extraction in progress ..."); VarDvdextract.bool_end_pthread = FALSE; - VarDvdextract.Handler_Timeout = gtk_timeout_add (100, dvdextract_timeout, 0); + VarDvdextract.Handler_Timeout = g_timeout_add (100, dvdextract_timeout, 0); pthread_create (&nmr_tid, NULL ,(void *)dvdextract_pthread, (void *)NULL); // DEBUG diff -Nru xcfa-4.3.8/src/dvd.h xcfa-5.0.1/src/dvd.h --- xcfa-4.3.8/src/dvd.h 2013-03-21 10:55:27.000000000 +0000 +++ xcfa-5.0.1/src/dvd.h 2015-01-21 16:28:42.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : dvd.h * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License @@ -29,123 +29,123 @@ #define dvd_audio_h 1 typedef enum { - _DVD_NAME=0, // Le nom du DVD - _DVD_TITLE, // Le titre - _DVD_CHAPTER, // Le chapitre - _DVD_DATA, // Les datas pour une extraction partielle - _DVD_DATA_ALL // Les datas pour une extraction complete + _DVD_NAME=0, // Le nom du DVD + _DVD_TITLE, // Le titre + _DVD_CHAPTER, // Le chapitre + _DVD_DATA, // Les datas pour une extraction partielle + _DVD_DATA_ALL // Les datas pour une extraction complete } TYPE_LIST_DVD; typedef enum { - _INCONNU_ = 0, // - _DTS_, // - _AC3_ // + _INCONNU_ = 0, // + _DTS_, // + _AC3_ // } FORMAT_ID; typedef enum { - _COCHE_ = 0, // Pret a etre selectionne - _SELECTED_, // En selection avec le canal d'origine - _CH_2_ // En selection avec le canal 2 + _COCHE_ = 0, // Pret a etre selectionne + _SELECTED_, // En selection avec le canal d'origine + _CH_2_ // En selection avec le canal 2 } ETAT_CHOIX; typedef struct { - TYPE_LIST_DVD type_list_dvd; // Le type - gchar *def; // La chaine d'info - gchar *time; // La duree - guint GUINT_TempsTotal; // Duree totale en secondes - gchar *name_file; // Le nom du fichier qui pourra etre modifie - gchar *StaticNameFile; // Le nom du fichier original - FORMAT_ID format_id; // _INCONNU_, _DTS_ ou _AC3_ - gchar *StrNumerateTitle; // Le numero du titre - gint NumerateTitle; // Le numero du titre - gchar *StrNumerateChapter; // Le numero du chapitre - gint NumerateChapter; // Le numero du chapitre - gchar *StrNumberChannel; // Le nombre de canaux - gchar *StrNumerateStreamId; // La langue - gint OldChannels; // Le canal d'origine - gint NewChannels; // Le nouveau canal - ETAT_CHOIX EtatChoix; // _COCHE_, _SELECTED_, _CH_2_ - gint NumStruct; // Numero pour dvd_event - gboolean BoolDvdPlay; // TRUE = Play, FALSE = NONE - gint DebutLecture; // - gboolean EtatNormalise; // + TYPE_LIST_DVD type_list_dvd; // Le type + gchar *def; // La chaine d'info + gchar *time; // La duree + guint GUINT_TempsTotal; // Duree totale en secondes + gchar *name_file; // Le nom du fichier qui pourra etre modifie + gchar *StaticNameFile; // Le nom du fichier original + FORMAT_ID format_id; // _INCONNU_, _DTS_ ou _AC3_ + gchar *StrNumerateTitle; // Le numero du titre + gint NumerateTitle; // Le numero du titre + gchar *StrNumerateChapter; // Le numero du chapitre + gint NumerateChapter; // Le numero du chapitre + gchar *StrNumberChannel; // Le nombre de canaux + gchar *StrNumerateStreamId; // La langue + gint OldChannels; // Le canal d'origine + gint NewChannels; // Le nouveau canal + ETAT_CHOIX EtatChoix; // _COCHE_, _SELECTED_, _CH_2_ + gint NumStruct; // Numero pour dvd_event + gboolean BoolDvdPlay; // TRUE = Play, FALSE = NONE + gint DebutLecture; // + gboolean EtatNormalise; // } VAR; typedef enum { - _DVDAUDIO_DVD_ = 0, // La source = DVD - _DVDAUDIO_FILE_ // La source = dossier (DVD) + _DVDAUDIO_DVD_ = 0, // La source = DVD + _DVDAUDIO_FILE_ // La source = dossier (DVD) } DVDAUDIO_SOURCE; typedef struct { - gboolean bool_dvd; // - gchar *path; // + gboolean bool_dvd; // + gchar *path; // } INFO_DVDAUDIO; typedef struct { - gdouble double_TempsTotal; // - guint guint_TempsTotal; // - GList *list; // + gdouble double_TempsTotal; // + guint guint_TempsTotal; // + GList *list; // } PLAY_DVDAUDIO; typedef struct { GtkComboBox *Adr_combobox_normalise_dvd; // Adresse - GtkTreeModel *Adr_Tree_Model; // - GtkWidget *Adr_TreeView; // - GtkWidget *Adr_scroll; // Adresse - GtkTreeSelection *Adr_Line_Selected; // Adresse - - GdkPixbuf *Pixbuf_FilePlay; // - GdkPixbuf *Pixbuf_FileStop; // - GdkPixbuf *Pixbuf_Coche; // - GdkPixbuf *Pixbuf_Coche_Exist; // - GdkPixbuf *Pixbuf_Selected; // - GdkPixbuf *Pixbuf_2ch; // + GtkTreeModel *Adr_Tree_Model; // + GtkWidget *Adr_TreeView; // + GtkWidget *Adr_scroll; // Adresse + GtkTreeSelection *Adr_Line_Selected; // Adresse + + GdkPixbuf *Pixbuf_FilePlay; // + GdkPixbuf *Pixbuf_FileStop; // + GdkPixbuf *Pixbuf_Coche; // + GdkPixbuf *Pixbuf_Coche_Exist; // + GdkPixbuf *Pixbuf_Selected; // + GdkPixbuf *Pixbuf_2ch; // GtkButton *Adr_button_destination_dvd; // - GtkComboBox *Adr_ComboBox_Reader; // + GtkComboBox *Adr_ComboBox_Reader; // - GtkComboBox *Adr_combobox_sub_dvd; // - GtkComboBox *Adr_combobox_ambiance_dvd; // + GtkComboBox *Adr_combobox_sub_dvd; // + GtkComboBox *Adr_combobox_ambiance_dvd; // - gboolean bool_click; // + gboolean bool_click; // - gint total_selected_2ch; // - gint total_selected; // - gboolean bool_selected; // - gboolean bool_sa; // + gint total_selected_2ch; // + gint total_selected; // + gboolean bool_selected; // + gboolean bool_sa; // - guint Handler_Timeout; // - gboolean bool_end_pthread; // - gboolean bool_read_dvd; // - gboolean bool_halt; // + guint Handler_Timeout; // + gboolean bool_end_pthread; // + gboolean bool_read_dvd; // + gboolean bool_halt; // - gint int_temp; // + gint int_temp; // - INFO_DVDAUDIO from; // + INFO_DVDAUDIO from; // - gint NumStruct; // Numero pour dvdaudio_event - gboolean bool_dedans; // + gint NumStruct; // Numero pour dvdaudio_event + gboolean bool_dedans; // - gint bool_err; // + gint bool_err; // - GtkTreeViewColumn *Adr_Column_Titres; // - GtkTreeViewColumn *Adr_Column_Play; // - GtkTreeViewColumn *Adr_Column_Temps; // - GtkTreeViewColumn *Adr_Column_Format; // - GtkTreeViewColumn *Adr_Column_Choix; // + GtkTreeViewColumn *Adr_Column_Titres; // + GtkTreeViewColumn *Adr_Column_Play; // + GtkTreeViewColumn *Adr_Column_Temps; // + GtkTreeViewColumn *Adr_Column_Format; // + GtkTreeViewColumn *Adr_Column_Choix; // GtkTreeViewColumn *Adr_Column_Normalise; // - GtkCellRenderer *Renderer; // - GtkTreeViewColumn *Adr_Column_Nom; // + GtkCellRenderer *Renderer; // + GtkTreeViewColumn *Adr_Column_Nom; // - guint GUINT_TempsTotal; // Duree totale en secondes + guint GUINT_TempsTotal; // Duree totale en secondes - PLAY_DVDAUDIO PlayDvdAudio; // + PLAY_DVDAUDIO PlayDvdAudio; // - gint TTNormPeak; // Nombre total de Peak - gint TTNormPeakCollectif; // Nombre total de Peak Collectif + gint TTNormPeak; // Nombre total de Peak + gint TTNormPeakCollectif; // Nombre total de Peak Collectif gboolean BoolNormIsSelected; @@ -153,15 +153,15 @@ } VAR_DVD; -extern VAR_DVD var_dvd; // +extern VAR_DVD var_dvd; // -extern GList *GlistDvd; // +extern GList *GlistDvd; // typedef struct { - VAR *Var; // + VAR *Var; // gboolean EtatNormalise; - gchar *Path; // Nom du fichier final - GList *list; // Glist pour l'extraction + gchar *Path; // Nom du fichier final + GList *list; // Glist pour l'extraction } NEW_DVD_EXTRACT; extern GList *GlistDvdExtract; @@ -187,17 +187,7 @@ * DVD_READ.C *--------------------------------------------------------------------------- */ -void dvdread_create_list (TYPE_LIST_DVD type_list_dvd, - gchar *def, - gchar *time, - gchar *name_file, - gint format_id, - gint NumerateTitle, - gint NumerateChapter, - gint NumberChannel, - gchar *StrNumerateStreamId); void dvdread_remove_list (void); -gboolean dvdread_dvd_found (void); gboolean dvdread_dvd_read (void); /* diff -Nru xcfa-4.3.8/src/dvd_read.c xcfa-5.0.1/src/dvd_read.c --- xcfa-4.3.8/src/dvd_read.c 2013-06-26 19:42:42.000000000 +0000 +++ xcfa-5.0.1/src/dvd_read.c 2015-02-05 18:53:09.000000000 +0000 @@ -1,25 +1,25 @@ /* * file : dvd_read.c * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License * * This file is part of XCFA. - * + * * XCFA is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * at your option) any later version. - * + * * XCFA is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. - * + * * You should have received a copy of the GNU General Public License * along with XCFA. If not, see . */ @@ -45,10 +45,7 @@ #endif #include "global.h" -#include "scan.h" #include "conv.h" -#include "configuser.h" -#include "file.h" #include "dvd.h" /* @@ -77,78 +74,35 @@ */ -typedef struct { - gint tst; - gchar *Language; - gchar *Lang; - gchar *Format; - gint Frequency; - gchar *Quantization; - gint Channels; - gchar *StreamId; - gint ValStreamId; -} DVD_AUDIO; - -typedef struct { - gchar *Length; -} DVD_CHAPTERS; - -typedef struct { - gint NumTitle; - gint max_chapter; - DVD_CHAPTERS *chapters; - gint max_audio; - DVD_AUDIO *audio; - gchar *length; -} DVD_TITLE; - - -typedef struct { - gchar *DiscTitle; - gint LongestTrack; - gint max_cells; - gint max_subpictures; - - gint max_titles; - DVD_TITLE *titles; - -} DVD_LIST; - -DVD_LIST dvd_data = {NULL, 0,0,0,0, NULL}; - - - -void dvdread_remove_list (void) +void dvdread_remove_list( void ) { - // PRINT_FUNC_LF(); - if (NULL != GlistDvd) { - GList *list = NULL; - VAR *var = NULL; - - list = g_list_first (GlistDvd); - while (list) { - if (NULL != (var = (VAR *)list->data)) { - if (var->def) { g_free (var->def); var->def = NULL; } - if (var->time) { g_free (var->time); var->time = NULL; } + GList *list = NULL; + VAR *var = NULL; + + if( NULL != (list = g_list_first( GlistDvd ))) { + while( list ) { + if( NULL != (var = (VAR *)list->data )) { + if( var->def ) { g_free( var->def ); var->def = NULL; } + if( var->time ) { g_free( var->time ); var->time = NULL; } var->GUINT_TempsTotal = 0; - if (var->name_file) { g_free (var->name_file); var->name_file = NULL; } - if (var->StaticNameFile) { g_free (var->StaticNameFile); var->StaticNameFile = NULL; } - if (var->StrNumerateTitle) { g_free (var->StrNumerateTitle); var->StrNumerateTitle = NULL; } - if (var->StrNumerateChapter) { g_free (var->StrNumerateChapter); var->StrNumerateChapter = NULL; } - if (var->StrNumberChannel) { g_free (var->StrNumberChannel); var->StrNumberChannel = NULL; } - if (var->StrNumerateStreamId) { g_free (var->StrNumerateStreamId); var->StrNumerateStreamId = NULL; } + if( var->name_file ) { g_free( var->name_file ); var->name_file = NULL; } + if( var->StaticNameFile ) { g_free( var->StaticNameFile ); var->StaticNameFile = NULL; } + if( var->StrNumerateTitle ) { g_free( var->StrNumerateTitle ); var->StrNumerateTitle = NULL; } + if( var->StrNumerateChapter ) { g_free( var->StrNumerateChapter ); var->StrNumerateChapter = NULL; } + if( var->StrNumberChannel ) { g_free( var->StrNumberChannel ); var->StrNumberChannel = NULL; } + if( var->StrNumerateStreamId ) { g_free( var->StrNumerateStreamId ); var->StrNumerateStreamId = NULL; } g_free (var); var = list->data = NULL; } - list = g_list_next (list); + list = g_list_next( list ); } - g_list_free (GlistDvd); + g_list_free( GlistDvd ); GlistDvd = NULL; } } -void dvdread_create_list (TYPE_LIST_DVD type_list_dvd, +void dvdread_create_list( TYPE_LIST_DVD type_list_dvd, gchar *def, gchar *time, gchar *name_file, @@ -156,16 +110,14 @@ gint NumerateTitle, gint NumerateChapter, gint NumberChannel, - gchar *StrNumerateStreamId) + gchar *StrNumerateStreamId ) { - VAR *var = g_malloc0( sizeof (VAR)); - + VAR *var = g_malloc0( sizeof(VAR) ); var->type_list_dvd = type_list_dvd; var->def = g_strdup (def ? def : ""); - var->time = g_strdup (time ? time : ""); var->GUINT_TempsTotal = 0; - + if (NULL != time) { guint H = 0; guint M = 0; @@ -179,13 +131,11 @@ M = atoi (Ptr); Ptr += 3; S = atoi (Ptr); - + var->GUINT_TempsTotal = (H * 60) * 60; var->GUINT_TempsTotal += M * 60; var->GUINT_TempsTotal += S; } - - var->name_file = g_strdup (name_file ? name_file : ""); var->StaticNameFile = g_strdup (var->name_file); var->format_id = format_id; @@ -196,737 +146,197 @@ var->StrNumberChannel = g_strdup_printf ("%d", NumberChannel); var->StrNumerateStreamId = g_strdup (StrNumerateStreamId ? StrNumerateStreamId : ""); var->EtatChoix = _COCHE_; - var->DebutLecture = 0; var->EtatNormalise = FALSE; - - GlistDvd = g_list_append (GlistDvd, var); -} - -void dvdread_compteur (void) -{ - GList *list = NULL; - gint title_actif; - VAR *var = NULL; - gint Ch = 0; - gint OldChapter = 0; - - for (title_actif = 0; title_actif < dvd_data.max_titles; title_actif ++) { - - list = g_list_first (GlistDvd); - while (list) { - if (NULL != (var = (VAR *)list->data)) { - if (var->NumerateTitle == title_actif +1) { - if (var->NumerateChapter == 1) { - /* Init */ - Ch = var->GUINT_TempsTotal; - } - else if (var->NumerateChapter > 1) { - /* Ajout */ - - var->DebutLecture += Ch; - if (OldChapter == var->NumerateChapter) { - Ch += var->GUINT_TempsTotal; - } - if (OldChapter != var->NumerateChapter) OldChapter = var->NumerateChapter; - } - } - } - list = g_list_next (list); - } - } -} - -void dvdread_create_list_with_data (void) -{ - gint title_actif = -1; - gint audio_actif = -1; - gint chapter_actif = -1; - gchar *str = NULL; - gchar *ptr_length = NULL; - gchar *name_file = NULL; - gchar *format = NULL; - gint format_id = 0; - - guint H = 0; - guint M = 0; - guint S = 0; - gchar *Ptr = NULL; - - dvdread_remove_list (); - - dvdread_create_list (_DVD_NAME, dvd_data.DiscTitle, NULL, NULL, 0, 0, 0, 0, NULL); - - for (title_actif = 0; title_actif < dvd_data.max_titles; title_actif ++) { - - if (title_actif +1 == dvd_data.LongestTrack) { - str = g_strdup_printf (_("Titre [%02d ** ]"), title_actif +1); - } - else { - str = g_strdup_printf (_("Titre [%02d]"), title_actif +1); - } - dvdread_create_list (_DVD_TITLE, str, NULL, NULL, 0, 0, 0, 0, NULL); - g_free (str); - str = NULL; - - if (title_actif +1 == dvd_data.LongestTrack) { - - /* PRECAUTION - */ - if (dvd_data.titles[ title_actif ].length == NULL) { - if( TRUE == OptionsCommandLine.BoolVerboseMode ) - g_print ("******* SORTIE UN\n"); - continue; - } - - for (audio_actif = 0; audio_actif < dvd_data.titles[ title_actif ].max_audio; audio_actif ++) { - if (dvd_data.titles [ title_actif ].audio [ audio_actif ].tst == 0) { - - /* PRECAUTION - */ - if (dvd_data.titles[ title_actif ].audio[ audio_actif ].Frequency == 0) continue; - - if (strstr (dvd_data.titles[ title_actif ].audio[ audio_actif ].Format, "dts")) { - format = g_strdup_printf ("%s", dvd_data.titles[ title_actif ].audio[ audio_actif ].Format); - format_id = _DTS_; - } - else if (strstr (dvd_data.titles[ title_actif ].audio[ audio_actif ].Format, "ac3")) { - format = g_strdup_printf ("%s", dvd_data.titles[ title_actif ].audio[ audio_actif ].Format); - format_id = _AC3_; - } - else { - format = g_strdup_printf ("%s", dvd_data.titles[ title_actif ].audio[ audio_actif ].Format); - format_id = _INCONNU_; - } - - str = g_strdup_printf ("Audio: [%02d] %s, %s, %d KHz, %s", - audio_actif +1, - dvd_data.titles[ title_actif ].audio[ audio_actif ].Language, - format, - dvd_data.titles[ title_actif ].audio[ audio_actif ].Frequency / 1000, - dvd_data.titles[ title_actif ].audio[ audio_actif ].Quantization - ); - - name_file = g_strdup_printf (_("Fichier_complet_%02d_%s"), - audio_actif +1, dvd_data.titles[ title_actif ].audio[ audio_actif ].Lang); - - Ptr = dvd_data.titles[ title_actif ].length; - /* - TIME=00:08:36 - */ - H = atoi (Ptr); - Ptr += 3; - M = atoi (Ptr); - Ptr += 3; - S = atoi (Ptr); - - var_dvd.GUINT_TempsTotal = (H * 60) * 60; - var_dvd.GUINT_TempsTotal += M * 60; - var_dvd.GUINT_TempsTotal += S; - - - dvdread_create_list (_DVD_DATA_ALL, - str, - dvd_data.titles[ title_actif ].length, - name_file, - format_id, - title_actif +1, - 0, - dvd_data.titles[ title_actif ].audio[ audio_actif ].Channels, - dvd_data.titles[ title_actif ].audio[ audio_actif ].StreamId); - - g_free (name_file); name_file = NULL; - g_free (format); format = NULL; - g_free (str); str = NULL; - } - } - } - - /* PRECAUTION - */ - if (NULL == (dvd_data.titles[ title_actif ].length)) { - if( TRUE == OptionsCommandLine.BoolVerboseMode ) - g_print ("******* SORTIE DEUX\n"); - continue; - } - - for (chapter_actif = 0; chapter_actif < dvd_data.titles[ title_actif ].max_chapter; chapter_actif ++) { - - str = g_strdup_printf (_("Chapitre: [%02d]"), chapter_actif +1); - dvdread_create_list (_DVD_CHAPTER, str, NULL, NULL, 0, 0, 0, 0, NULL); - g_free (str); - str = NULL; - - for (audio_actif = 0; audio_actif < dvd_data.titles[ title_actif ].max_audio; audio_actif ++) { - - if (dvd_data.titles [ title_actif ].audio [ audio_actif ].tst == 0) { - - /* PRECAUTION - */ - if (dvd_data.titles[ title_actif ].audio[ audio_actif ].Frequency == 0) { - if( TRUE == OptionsCommandLine.BoolVerboseMode ) - g_print ("******* SORTIE TROIS\n"); - continue; - } - - if (dvd_data.titles[ title_actif ].chapters[ chapter_actif ].Length != NULL) { - ptr_length = dvd_data.titles[ title_actif ].chapters[ chapter_actif ].Length; - } - else { - ptr_length = dvd_data.titles[ title_actif ].length; - } - - - if (strstr (dvd_data.titles[ title_actif ].audio[ audio_actif ].Format, "dts")) { - format = g_strdup_printf ("%s", dvd_data.titles[ title_actif ].audio[ audio_actif ].Format); - format_id = _DTS_; - } - else if (strstr (dvd_data.titles[ title_actif ].audio[ audio_actif ].Format, "ac3")) { - format = g_strdup_printf ("%s", dvd_data.titles[ title_actif ].audio[ audio_actif ].Format); - format_id = _AC3_; - } - else { - format = g_strdup_printf ("%s", dvd_data.titles[ title_actif ].audio[ audio_actif ].Format); - format_id = _INCONNU_; - } - - str = g_strdup_printf ("Audio: [%02d] %s, %s, %d KHz, %s", - audio_actif +1, - dvd_data.titles[ title_actif ].audio[ audio_actif ].Language, - format, - dvd_data.titles[ title_actif ].audio[ audio_actif ].Frequency / 1000, - dvd_data.titles[ title_actif ].audio[ audio_actif ].Quantization - ); - - name_file = g_strdup_printf (_("Titre_%02d_Chapitre_%02d_audio_%02d_%s"), - title_actif+1, chapter_actif+1, audio_actif+1, dvd_data.titles[ title_actif ].audio[ audio_actif ].Lang); - - dvdread_create_list (_DVD_DATA, - str, - ptr_length, - name_file, - format_id, - title_actif +1, - chapter_actif +1, - dvd_data.titles[ title_actif ].audio[ audio_actif ].Channels, - dvd_data.titles[ title_actif ].audio[ audio_actif ].StreamId); - g_free (name_file); name_file = NULL; - g_free (format); format = NULL; - g_free (str); str = NULL; - ptr_length = NULL; - } - } - } - } -} - -void dvdread_print_data_struct (void) -{ - gint title_actif = -1; - gint chapter_actif = -1; - gint audio_actif = -1; - - /*PRINT_FUNC_LF();*/ - if( TRUE == OptionsCommandLine.BoolVerboseMode ) { - g_print ("DiscTitle: %s\n", dvd_data.DiscTitle); - g_print ("LongestTrack: %d\n", dvd_data.LongestTrack); - - g_print ("max_cells: %d\n", dvd_data.max_cells); - g_print ("max_subpictures: %d\n", dvd_data.max_subpictures); - g_print ("max_titles: %d\n", dvd_data.max_titles); - for (title_actif = 0; title_actif < dvd_data.max_titles; title_actif ++) { - g_print ("Title: %02d\n", title_actif +1); - - g_print ("dvd_data.titles[ %02d ].length: %s\n", title_actif +1, dvd_data.titles[ title_actif ].length); - - g_print ("dvd_data.titles[ %02d ].max_chapter: %d\n", title_actif +1, dvd_data.titles[ title_actif ].max_chapter); - for (chapter_actif = 0; chapter_actif < dvd_data.titles[ title_actif ].max_chapter; chapter_actif ++) { - g_print ("dvd_data.titles[ %02d ].chapters[ %02d ].Length: %s\n", - title_actif +1, - chapter_actif +1, - dvd_data.titles[ title_actif ].chapters[ chapter_actif ].Length); - } - - g_print ("dvd_data.titles[ %02d ].max_audio: %d\n", title_actif +1, dvd_data.titles[ title_actif ].max_audio); - for (audio_actif = 0; audio_actif < dvd_data.titles[ title_actif ].max_audio; audio_actif ++) { - g_print ("dvd_data.titles[ %02d ].audio[ %02d ].Language: %s\n", - title_actif +1, - audio_actif +1, - dvd_data.titles[ title_actif ].audio[ audio_actif ].Language); - g_print ("dvd_data.titles[ %02d ].audio[ %02d ].Lang: %s\n", - title_actif +1, - audio_actif +1, - dvd_data.titles[ title_actif ].audio[ audio_actif ].Lang); - g_print ("dvd_data.titles[ %02d ].audio[ %02d ].Format: %s\n", - title_actif +1, - audio_actif +1, - dvd_data.titles[ title_actif ].audio[ audio_actif ].Format); - g_print ("dvd_data.titles[ %02d ].audio[ %02d ].Frequency: %d\n", - title_actif +1, - audio_actif +1, - dvd_data.titles[ title_actif ].audio[ audio_actif ].Frequency); - g_print ("dvd_data.titles[ %02d ].audio[ %02d ].Quantization: %s\n", - title_actif +1, - audio_actif +1, - dvd_data.titles[ title_actif ].audio[ audio_actif ].Quantization); - g_print ("dvd_data.titles[ %02d ].audio[ %02d ].Channels: %d\n", - title_actif +1, - audio_actif +1, - dvd_data.titles[ title_actif ].audio[ audio_actif ].Channels); - g_print ("dvd_data.titles[ %02d ].audio[ %02d ].StreamId: %s\n", - title_actif +1, - audio_actif +1, - dvd_data.titles[ title_actif ].audio[ audio_actif ].StreamId); - } - } - } -} - -void dvdread_remove (void) -{ - gint title; - gint audio; - gint chapter; - - /*PRINT_FUNC_LF();*/ - - for (title=0; title < dvd_data.max_titles; title ++) { - - for (audio=0; audio < dvd_data.titles[ title ].max_audio; audio ++) { - g_free (dvd_data.titles[ title ].audio[ audio ].Language); dvd_data.titles[ title ].audio[ audio ].Language= NULL; - g_free (dvd_data.titles[ title ].audio[ audio ].Lang); dvd_data.titles[ title ].audio[ audio ].Lang= NULL; - g_free (dvd_data.titles[ title ].audio[ audio ].Format); dvd_data.titles[ title ].audio[ audio ].Format= NULL; - g_free (dvd_data.titles[ title ].audio[ audio ].Quantization); dvd_data.titles[ title ].audio[ audio ].Quantization= NULL; - g_free (dvd_data.titles[ title ].audio[ audio ].StreamId); dvd_data.titles[ title ].audio[ audio ].StreamId= NULL; - } - g_free (dvd_data.titles[ title ].audio); - dvd_data.titles[ title ].audio = NULL; - - for (chapter=0; chapter < dvd_data.titles[ title ].max_chapter; chapter ++) { - g_free (dvd_data.titles[ title ].chapters[ chapter ].Length); - dvd_data.titles[ title ].chapters[ chapter ].Length= NULL; - } - - g_free (dvd_data.titles[ title ].chapters); - dvd_data.titles[ title ].chapters = NULL; - g_free (dvd_data.titles[ title ].length); - dvd_data.titles[ title ].length = NULL; - } - - g_free (dvd_data.titles); - dvd_data.titles = NULL; - - g_free (dvd_data.DiscTitle); - dvd_data.DiscTitle = NULL; - dvd_data.LongestTrack = 0; - dvd_data.max_cells = 0; - dvd_data.max_subpictures = 0; - dvd_data.max_titles = 0; -} - -void dvdread_create_recap_audio (void) -{ - gint cpt; - gchar *LineCommand = NULL; - FILE *fp = NULL; - - // Suppression du fichier precedant si il existe - g_unlink ("/tmp/get_infos_dvd.sh"); - g_unlink ("/tmp/infos_dvd.txt"); - - fp = fopen ("/tmp/get_infos_dvd.sh", "w"); - - fprintf (fp, "#!/bin/sh\n"); - fprintf (fp, "\n"); - fprintf (fp, "set -e\n"); - fprintf (fp, "\n"); - - for (cpt = 0; cpt < dvd_data.max_titles; cpt ++) { - - LineCommand = g_strdup_printf ("mplayer -dvd-device %s dvd://%d -vo null -frames 0 -v 2>&1 | grep aid >> /tmp/infos_dvd.txt", - scan_get_text_combo_cd (_DVD_), cpt +1); - fprintf (fp, "echo \"Title:%d\" >> /tmp/infos_dvd.txt\n", cpt+1); - fprintf (fp, "%s\n", LineCommand); - fprintf (fp, "echo \"\" >> /tmp/infos_dvd.txt\n"); - g_free (LineCommand); - LineCommand = NULL; - } - - fprintf (fp, "\n"); - - fclose (fp); - - system ("chmod +x /tmp/get_infos_dvd.sh"); - - system ("/tmp/get_infos_dvd.sh"); - g_unlink ("/tmp/get_infos_dvd.sh"); -} - -typedef struct { - gint NumTitle; - gint NumLang; - gchar StrLang [ 30 ]; -} LIST_AUDIO; -GList *GListAudio = NULL; - -GList *dvdread_remove_ListAudio (GList *p_list) -{ - GList *list = NULL; - LIST_AUDIO *var = NULL; - - list = g_list_first (GListAudio); - while (list) { - if (NULL != (var = (LIST_AUDIO *)list->data)) { - g_free (var); - var = NULL; - list->data = NULL; - } - list = g_list_next (list); - } - g_list_free (GListAudio); - GListAudio = NULL; - return ((GList *)NULL); -} - -gboolean dvdread_syncro (gint NumTitle, gint NumLang, gchar *StrLang) -{ - gint t, a; - - for (t=0; t < dvd_data.max_titles; t++) { - - if (NumTitle == dvd_data.titles [ t ].NumTitle) { - - for (a=0; a < dvd_data.titles [ t ].max_audio; a++) { - if (NumLang == dvd_data.titles [ t ].audio [ a ].ValStreamId) { - dvd_data.titles [ t ].audio [ a ].tst = 0; - return (TRUE); - } - } - return (FALSE); - } - } - - return (FALSE); -} - -void dvdread_read_info_audio (void) -{ - FILE *fp = NULL; - size_t size; - gchar *buf = NULL; - gchar **Larrbuf = NULL; - gint line; - gchar *ptr = NULL; - gint nmr_title = -1; - gint t, a; - - LIST_AUDIO *list_audio = NULL; - GList *list = NULL; - - size = libutils_get_size_file ("/tmp/infos_dvd.txt"); - buf = (gchar *)g_malloc0 (sizeof (gchar) * (size +10)); - fp = fopen ("/tmp/infos_dvd.txt", "r"); - size = fread (buf, size, 1, fp); - fclose (fp); - - Larrbuf = g_strsplit (buf, "\n", 0); - g_free (buf); - buf = NULL; - - for (t=0; t NumTitle = nmr_title; - list_audio->NumLang = (gint)atoi(ptr + 6); - /* - unknown - */ - while (*ptr != ':') ptr --; - ptr ++; - ptr ++; - t = 0; - while (*ptr != ' ') { - list_audio->StrLang[ t ++ ] = *ptr ++; - } - list_audio->StrLang[ t ] = '\0'; - GListAudio = g_list_append (GListAudio, list_audio); - list_audio = NULL; - } - - if (*Larrbuf[line] == '\0') { - nmr_title = -1; - } - } - - list = g_list_first (GListAudio); - while (list) { - if ((list_audio = (LIST_AUDIO *)list->data)) { - dvdread_syncro (list_audio->NumTitle -1, list_audio->NumLang, list_audio->StrLang); - } - list = g_list_next (list); - } - - if (NULL == GListAudio) { - for (t=0; t LSDVD" ); - PtrTabArgs = filelc_RevoveTab( PtrTabArgs ); - - if (NULL != (buf = libutils_get_datas_on_disk ())) { - Larrbuf = g_strsplit (buf, "\n", 0); - g_free (buf); + gint cpt_chapter; + gint cpt_data; + gint LongestTrack = 0; + gint max_line_chapter; + + gint Frequency = 0; + gchar *StrTime = NULL; + gchar *StrNameFile = NULL; + gint format_id = _INCONNU_; + gint NumerateTitle = -1; + gint NumerateChapter; + gint NumberChannel = 2; + gchar *StrNumerateStreamId = NULL; + gchar *StrLanguage = NULL; + gint NumerateAudio = 0; + + if( FALSE == g_file_test( "/tmp/data_xcfa.txt", G_FILE_TEST_IS_REGULAR )) { + printf("Lecture du contenu de: %s\n",var_dvd.PathDvd ); + PtrTabArgs = conv_lsdvd_read_get_param( var_dvd.PathDvd ); + conv_to_convert( PtrTabArgs, FALSE, LSDVD, "NEW2:-> LSDVD" ); + PtrTabArgs = conv_RemoveTab( PtrTabArgs ); + } + + if( NULL == (buf = libutils_get_datas_on_disk() )) { + return FALSE; + } + else if( NULL != buf ) { + Larrbuf = g_strsplit( buf, "\n", 0 ); + g_free( buf ); buf = NULL; } - else { - PRINT("PROBLEME ALLOC BUF"); - } - - for (line = 0; Larrbuf[line]; line++) { - if ((ptr = strstr (Larrbuf[line], "Disc Title: "))) { - if (var_dvd.from.path != NULL && (ptr = strrchr (var_dvd.from.path, '/'))) { - ptr ++; - } - else { - ptr += 12; - } - dvd_data.DiscTitle = g_strdup (ptr); - } - - if ((ptr = strstr (Larrbuf[line], "Longest track: "))) { - ptr += 15; - - /* ALLOC */ - dvd_data.LongestTrack = atoi (ptr); - } - - if (line > 0 && (ptr = strstr (Larrbuf[line], "Title: "))) { - /* ALLOC */ - dvd_data.max_titles ++; - } - } - dvd_data.titles = (DVD_TITLE *)g_malloc0 (sizeof (DVD_TITLE) * dvd_data.max_titles); - - // CHERCHER: le nombre coherent de chapitres - chapters_per_title = -1; - max_chapters = -1; - title_actif = -1; - for (line = 1; Larrbuf[line]; line++) { - if ((ptr = strstr (Larrbuf[line], "Title: ")) && strstr (Larrbuf[line], "Chapters: ")) { - - title_actif ++; - - if ((ptr = strstr (Larrbuf[line], "Chapters: "))) { - for (ptr+=10, cpt=0; *ptr!=','; cpt++,ptr++) str[cpt]=*ptr; - str[cpt]='\0'; - - max_chapters = atoi (str); - } - } - if ((ptr=strstr (Larrbuf[line], "Chapter: ")) && strstr (Larrbuf[line], ", Length: ")) { - - for (ptr+=9, cpt=0; *ptr!=','; cpt++,ptr++) str[cpt]=*ptr; - str[cpt]='\0'; - chapters_per_title = atoi (str); - } - - if (*Larrbuf[line] == '\0') { - if (chapters_per_title > -1 && max_chapters > -1) { - /* ALLOC */ - dvd_data.titles [ title_actif ].NumTitle = title_actif; - dvd_data.titles [ title_actif ].chapters = (DVD_CHAPTERS *)g_malloc0 (sizeof (DVD_CHAPTERS) * (chapters_per_title)); - dvd_data.titles [ title_actif ].max_chapter = chapters_per_title; - chapters_per_title = -1; - max_chapters = -1; - } - } - } - - // RECUPERE: tous les parametres pour chaque 'Title: xx' - title_actif = -1; - for (line = 1; Larrbuf[line]; line++) { - - if ((ptr = strstr (Larrbuf[line], "Title: ")) && strstr (Larrbuf[line], "Length: ")) { - ptr += 7; - memset (str, '\0', 500); - - title_actif ++; - audio_actif = -1; - chapter_actif = -1; - - if ((ptr = strstr (Larrbuf[line], "Length: "))) { - for (ptr+=8, cpt=0; *ptr!='.'; cpt++,ptr++) str[cpt]=*ptr; - str[cpt]='\0'; - dvd_data.titles[ title_actif ].length = g_strdup (str); - } - if ((ptr = strstr (Larrbuf[line], "Cells: "))) { - for (ptr+=7, cpt=0; *ptr!=','; cpt++,ptr++) str[cpt]=*ptr; - str[cpt]='\0'; - dvd_data.max_cells = atoi (str); - } - if ((ptr = strstr (Larrbuf[line], "Audio streams: "))) { - for (ptr+=15, cpt=0; *ptr!=','; cpt++,ptr++) str[cpt]=*ptr; - str[cpt]='\0'; - max_audio = atoi (str); - } - if ((ptr = strstr (Larrbuf[line], "Subpictures: "))) { - for (ptr+=13, cpt=0; *ptr; cpt++,ptr++) str[cpt]=*ptr; - str[cpt]='\0'; - dvd_data.max_subpictures = atoi (str); - } - - dvd_data.titles [ title_actif ].audio = (DVD_AUDIO *)g_malloc0 (sizeof (DVD_AUDIO) * (max_audio)); - dvd_data.titles [ title_actif ].max_audio = max_audio; - } - - if ((ptr = strstr (Larrbuf[line], "Audio: "))) { - - audio_actif ++; - - for (ptr+=7, cpt=0; *ptr!=','; cpt++,ptr++) str[cpt]=*ptr; - str[cpt]='\0'; - - if ((ptr = strstr (Larrbuf[line], "Language: "))) { - for (ptr+=10, cpt=0; *ptr!=','; cpt++,ptr++) str[cpt]=*ptr; - str[cpt]='\0'; - dvd_data.titles [ title_actif ].audio [ audio_actif ].Language = g_strdup (str); - str [ 2 ] = '\0'; - dvd_data.titles [ title_actif ].audio [ audio_actif ].Lang = g_strdup (str); - - } - if ((ptr = strstr (Larrbuf[line], "Format: "))) { - for (ptr+=8, cpt=0; *ptr!=','; cpt++,ptr++) str[cpt]=*ptr; - str[cpt]='\0'; - dvd_data.titles [ title_actif ].audio [ audio_actif ].Format = g_strdup (str); - } - if ((ptr = strstr (Larrbuf[line], "Frequency: "))) { - for (ptr+=11, cpt=0; *ptr!=','; cpt++,ptr++) str[cpt]=*ptr; - str[cpt]='\0'; - dvd_data.titles [ title_actif ].audio [ audio_actif ].Frequency = atoi (str); - } - if ((ptr = strstr (Larrbuf[line], "Quantization: "))) { - for (ptr+=14, cpt=0; *ptr!=','; cpt++,ptr++) str[cpt]=*ptr; - str[cpt]='\0'; - dvd_data.titles [ title_actif ].audio [ audio_actif ].Quantization = g_strdup (str); - } - if ((ptr = strstr (Larrbuf[line], "Channels: "))) { - for (ptr+=10, cpt=0; *ptr!=','; cpt++,ptr++) str[cpt]=*ptr; - str[cpt]='\0'; - dvd_data.titles [ title_actif ].audio [ audio_actif ].Channels = atoi (str); + // Search dvd title + for( line = 0; Larrbuf && Larrbuf[ line ]; line++ ) + if( NULL != (Ptr = strstr( Larrbuf[ line ], "Disc Title: " ))) { + Ptr += 12; + dvdread_create_list( _DVD_NAME, Ptr, NULL, NULL, 0, 0, 0, 0, NULL ); + break; + } + + // Search Longest track + for( line = 0; Larrbuf && Larrbuf[ line ]; line++ ) + if( NULL != (Ptr = strstr( Larrbuf[ line ], "Longest track: " ))) { + Ptr += 15; + LongestTrack = atoi( Ptr ); + break; + } + + // List Building + for( line = 1; Larrbuf && Larrbuf[ line ]; line ++ ) { + + // Title: 15, Length: 02:05:00.600 Chapters: 21, Cells: 22, Audio streams: 04, Subpictures: 06 + Ptr = Larrbuf[ line ]; + if( *(Ptr +0) == 'T' && + *(Ptr +1) == 'i' && + *(Ptr +2) == 't' && + *(Ptr +3) == 'l' && + *(Ptr +4) == 'e' && + *(Ptr +5) == ':' && + *(Ptr +6) == ' ' ) { + + NumerateTitle = atoi( Ptr +7 ); + if( NumerateTitle == LongestTrack ) + Str = g_strdup_printf( _("Title [%02d ** ]"), NumerateTitle ); + else Str = g_strdup_printf( _("Title [%02d]"), NumerateTitle ); + dvdread_create_list( _DVD_TITLE, Str, NULL, NULL, 0, 0, 0, 0, NULL ); + g_free( Str ); + Str = NULL; + + // Seeking the number of lines per chapter for: max_line_chapter + for( max_line_chapter = line +1; Larrbuf && Larrbuf[ max_line_chapter ]; max_line_chapter ++ ) { + Ptr = Larrbuf[ max_line_chapter ]; + if( *(Ptr +0) == 'T' && + *(Ptr +1) == 'i' && + *(Ptr +2) == 't' && + *(Ptr +3) == 'l' && + *(Ptr +4) == 'e' && + *(Ptr +5) == ':' && + *(Ptr +6) == ' ' ) { + break; + } } - if ((ptr = strstr (Larrbuf[line], "Stream id: "))) { - for (ptr+=11, cpt=0; *ptr; cpt++,ptr++) str[cpt]=*ptr; - str[cpt]='\0'; - dvd_data.titles [ title_actif ].audio [ audio_actif ].StreamId = g_strdup (str); - dvd_data.titles [ title_actif ].audio [ audio_actif ].ValStreamId = (gint)libutils_hexa_to_int (str); - dvd_data.titles [ title_actif ].audio [ audio_actif ].tst = 0; + + // Search all "Chapter: " in: (line +1) .. max_line_chapter + // Chapter: 01, Length: 00:07:26.640, Start Cell: 01 + for( cpt_chapter = line +1; cpt_chapter < max_line_chapter; cpt_chapter ++ ) { + if( NULL != (Ptr = strstr( Larrbuf[ cpt_chapter ], "Chapter: ")) && strstr( Larrbuf[ cpt_chapter ], ", Start Cell: " )) { + Ptr += 9; + NumerateChapter = atoi( Ptr ); + Str = g_strdup_printf( _("Chapter: [%02d]"), NumerateChapter ); + dvdread_create_list( _DVD_CHAPTER, Str, NULL, NULL, 0, 0, 0, 0, NULL ); + g_free( Str ); + Str = NULL; + + if( StrTime ) { g_free( StrTime ); StrTime = NULL; } + Ptr = strstr( Larrbuf[ cpt_chapter ], "Length: "); + Ptr += 8; + StrTime = g_strdup( Ptr ); + Ptr = StrTime; + *(Ptr +8 ) = '\0'; + + // Search all "Audio: " in: (line +1) .. max_line_chapter + // Audio: 1, Language: en - English, Format: ac3, Frequency: 48000, Quantization: drc, Channels: 6, AP: 0, Content: Undefined, Stream id: 0x80 + for( cpt_data = line +1; cpt_data < max_line_chapter; cpt_data ++ ) { + if( NULL != (Ptr = strstr( Larrbuf[ cpt_data ], "Audio: " ))) { + + Ptr += 7; + NumerateAudio = atoi( Ptr ); + + if( NULL != (Ptr = strstr( Larrbuf[ cpt_data ], "Frequency: " ))) { + Ptr += 11; + Frequency = atoi( Ptr ) / 1000; + } + if( NULL != (Ptr = strstr( Larrbuf[ cpt_data ], "Format: " ))) { + Ptr += 8; + if( *Ptr == 'a' && *(Ptr +1) == 'c' && *(Ptr +2) == '3' ) + format_id = _AC3_; + else if( *Ptr == 'd' && *(Ptr +1) == 't' && *(Ptr +2) == 's' ) + format_id = _DTS_; + else + format_id = _INCONNU_; + } + if( NULL != (Ptr = strstr( Larrbuf[ cpt_data ], "Channels: " ))) { + Ptr += 10; + NumberChannel = atoi( Ptr ); + } + if( NULL != (Ptr = strstr( Larrbuf[ cpt_data ], "Stream id: " ))) { + Ptr += 11; + StrNumerateStreamId = g_strdup( Ptr ); + } + if( NULL != (Ptr = strstr( Larrbuf[ cpt_data ], "Language: " ))) { + Ptr += 10; + StrLanguage = g_strdup( Ptr ); + for( Ptr = StrLanguage; *Ptr != ','; Ptr ++ ); + *Ptr = '\0'; + } + + StrNameFile = g_strdup_printf( "Title_%d_chapter_%d_audio_%d_lang_%c%c", + NumerateTitle, + NumerateChapter, + NumerateAudio, + *(StrLanguage +0), + *(StrLanguage +1) + ); + + Str = g_strdup_printf( "%s %s %d KHz", + StrLanguage, + format_id == _AC3_ ? "AC3" : format_id == _DTS_ ? "DTS" : "???", + Frequency + ); + + dvdread_create_list (_DVD_DATA, // TYPE_LIST_DVD type_list_dv + Str, // gchar *def + StrTime, // gchar *time + StrNameFile, // gchar *name_file + format_id, // gint format_id + NumerateTitle, // gint NumerateTitle + NumerateChapter, // gint NumerateChapter + NumberChannel, // gint NumberChannel + StrNumerateStreamId // gchar *StrNumerateStreamId + ); + + if( Str ) { g_free( Str ); Str = NULL; } + if( StrNameFile ) { g_free( StrNameFile ); StrNameFile = NULL; } + if( StrNumerateStreamId ) { g_free( StrNumerateStreamId ); StrNumerateStreamId = NULL; } + if( StrLanguage ) { g_free( StrLanguage ); StrLanguage = NULL; } + + } + } + } } } - - if ((ptr=strstr (Larrbuf[line], "Chapter: ")) && strstr (Larrbuf[line], ", Length: ")) { - - chapter_actif ++; - - for (ptr+=9, cpt=0; *ptr!=','; cpt++,ptr++) str[cpt]=*ptr; - str[cpt]='\0'; - - ptr=strstr (Larrbuf[line], ", Length: "); - for (ptr+=10, cpt=0; *ptr!='.'; cpt++,ptr++) str[cpt]=*ptr; - str[cpt]='\0'; - dvd_data.titles [ title_actif ].chapters [ chapter_actif ].Length = g_strdup (str); - } } - - g_strfreev(Larrbuf); - - dvdread_create_recap_audio (); - dvdread_read_info_audio (); - dvdread_create_list_with_data (); - dvdread_compteur (); + g_strfreev( Larrbuf ); return (TRUE); } -/* -lsdvd /dev/hdd -a -Can't open disc -*/ -gboolean dvdread_dvd_found (void) -{ - gchar *buf = NULL; - gboolean BoolRet = TRUE; - gchar **PtrTabArgs = NULL; - - - PtrTabArgs = conv_lsdvd_read_get_param( var_dvd.PathDvd ); - conv_to_convert( PtrTabArgs, FALSE, LSDVD, "NEW1:-> LSDVD" ); - PtrTabArgs = filelc_RevoveTab( PtrTabArgs ); - - if (NULL == (buf = libutils_get_datas_on_disk ())) { - return (FALSE); - } - if (NULL != buf && (*buf == '\b' || *buf == '\r' || *buf == '\n')) { - BoolRet = FALSE; - } - if (NULL != buf) { - g_free (buf); - buf = NULL; - } - - return (BoolRet); -} - diff -Nru xcfa-4.3.8/src/dvd_table.c xcfa-5.0.1/src/dvd_table.c --- xcfa-4.3.8/src/dvd_table.c 2013-03-21 10:55:49.000000000 +0000 +++ xcfa-5.0.1/src/dvd_table.c 2015-01-30 16:01:16.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : dvd_table.c * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License diff -Nru xcfa-4.3.8/src/extra.c xcfa-5.0.1/src/extra.c --- xcfa-4.3.8/src/extra.c 2013-05-05 00:09:25.000000000 +0000 +++ xcfa-5.0.1/src/extra.c 2015-01-30 16:01:16.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : extra.c * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License diff -Nru xcfa-4.3.8/src/extra.h xcfa-5.0.1/src/extra.h --- xcfa-4.3.8/src/extra.h 2013-03-21 10:55:27.000000000 +0000 +++ xcfa-5.0.1/src/extra.h 2015-01-21 16:28:42.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : extra.h * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License diff -Nru xcfa-4.3.8/src/file_action.c xcfa-5.0.1/src/file_action.c --- xcfa-4.3.8/src/file_action.c 2013-03-21 10:55:49.000000000 +0000 +++ xcfa-5.0.1/src/file_action.c 2015-02-05 19:15:17.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : file_action.c * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License @@ -177,12 +177,12 @@ FALSE == FileAction.bool_trash) { WindScan_close (); - gtk_timeout_remove (FileAction.handler_timeout); + g_source_remove (FileAction.handler_timeout); if (FALSE == conv.bool_stop) { - NotifySend_msg (_("XCFA: Traitement fichiers"), _("Ok"), conv.bool_stop); + NotifySend_msg (_("XCFA: Processing files"), _("Ok"), conv.bool_stop); } else { - NotifySend_msg (_("XCFA: Traitement fichiers"), _("Arret par l'utilisateur"), conv.bool_stop); + NotifySend_msg (_("XCFA: Processing files"), _("Stop by user"), conv.bool_stop); } } @@ -229,7 +229,7 @@ FileAction.bool_ReplaygainApply = file_get_bool_ReplaygainApply (); FileAction.bool_trash = filetrash_ok (); - FileAction.handler_timeout = gtk_timeout_add (150, fileaction_timeout, 0); + FileAction.handler_timeout = g_timeout_add (150, fileaction_timeout, 0); } diff -Nru xcfa-4.3.8/src/file_analyze.c xcfa-5.0.1/src/file_analyze.c --- xcfa-4.3.8/src/file_analyze.c 2013-03-24 10:21:02.000000000 +0000 +++ xcfa-5.0.1/src/file_analyze.c 2015-02-05 19:16:20.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : file_analyse.c * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License @@ -719,17 +719,18 @@ } else if (FALSE == VarAnalyze.BoolInThread) { WindScan_close (); - gtk_timeout_remove (VarAnalyze.HandlerTimeoutDo); + g_source_remove (VarAnalyze.HandlerTimeoutDo); file_affiche_glist (); FileWav_affiche_glist (); FileMp3Ogg_affiche_glist (); FileTags_affiche_glist (); if (TRUE == VarAnalyze.BoolNoFindCheckMp3) { - wininfo_create ( + wind_info_init ( WindMain, _("Package checkmp3 (mp3check) NOT FOUND !"), - _("Veuillez installer checkmp3 ou mp3check pour\nla prise en compte des fichiers mp3"), + _("Please install or checkmp3 mp3check for\nconsideration of mp3 files"), + ""); } } @@ -747,7 +748,12 @@ if (NULL == p_list) return; - WindScan_open ("Files scan", WINDSCAN_PULSE); + // WindScan_open ("Files scan", WINDSCAN_PULSE); + wind_scan_init( + WindMain, + "Files scan", + WINDSCAN_PULSE + ); WindScan_set_label ("Scan directory, verify and load ..."); // TYPE DE FICHIER EN RECHERCHE @@ -770,7 +776,7 @@ VarAnalyze.BoolNoFindCheckMp3 = FALSE; pthread_create (&nmr_tid_1, NULL ,(void *)fileanalyze_thread, (void *)NULL); - VarAnalyze.HandlerTimeoutDo = gtk_timeout_add (100, fileanalyze_timeout, 0); + VarAnalyze.HandlerTimeoutDo = g_timeout_add (100, fileanalyze_timeout, 0); } diff -Nru xcfa-4.3.8/src/file.c xcfa-5.0.1/src/file.c --- xcfa-4.3.8/src/file.c 2014-01-05 12:24:48.000000000 +0000 +++ xcfa-5.0.1/src/file.c 2015-02-05 21:40:41.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : file.c * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License @@ -82,7 +82,6 @@ COLUMN_FILE_REPLAYGAIN, COLUMN_FILE_NAME, COLUMN_FILE_EDITABLE, - COLUMN_FILE_COLOR, COLUMN_FILE_POINTER_STRUCT, @@ -293,7 +292,7 @@ guint total; guint total_select; gboolean BoolButtonsAudio [ 5 ]; - + // SUPPRESSION BoolButtonsAudio [ 0 ] = file_get_line_is_selected (); gtk_widget_set_sensitive (GTK_WIDGET (GLADE_GET_OBJECT("button_del_file")), BoolButtonsAudio [ 0 ]); @@ -310,7 +309,7 @@ break; case 2: case 3: - if (GTK_WIDGET_IS_SENSITIVE(GTK_COMBO_BOX (var_file.AdrComboboxNormalise)) == TRUE) { + if (gtk_widget_is_sensitive(GTK_WIDGET(var_file.AdrComboboxNormalise)) == TRUE) { gtk_widget_set_sensitive (GTK_WIDGET (GTK_SPIN_BUTTON (var_file.AdrSpinbuttonNormalise)), TRUE); } else { @@ -325,7 +324,7 @@ gtk_widget_set_sensitive (GTK_WIDGET (GLADE_GET_OBJECT("button_conv_file")), BoolButtonsAudio [ 3 ]); file_get_etat (&total, &total_select); - Ptr = g_strdup_printf (_("Total fichiers: %d, Selections: %d"), total, total_select); + Ptr = g_strdup_printf (_("Total files: %d, Selections: %d"), total, total_select); if (NULL != var_file.Adr_Label_Number) { gtk_label_set_use_markup (GTK_LABEL (var_file.Adr_Label_Number), TRUE); gtk_label_set_markup (GTK_LABEL (var_file.Adr_Label_Number), Ptr); @@ -437,16 +436,16 @@ Str1 = g_strdup_printf (" %s/ = %lu Ko", Config.PathnameTMP, SizeTmp.SizeTmpKo); Str2 = g_strdup_printf (" %lu Ko en selection", SizeTmp.SizeFileKo); - wininfo_create ( + wind_info_init ( WindMain, - _("CAPACITE DOSSIER TEMPORAIRE TROP FAIBLE"), - _("Pas assez de place dans le dossier temporaire"), + _("TEMPORARY CAPACITY TOO LOW"), + _("WARNING: Not enough space available in the temp folder."), "\n", Str1, "\n", Str2, "\n\n", - _("Veuillez deselectionner des PeakGroup."), + _("Please deselect PeakGroup."), ""); g_free (Str1); @@ -1248,7 +1247,7 @@ COLUMN_FILE_REPLAYGAIN, file_get_pixbuf_replaygain (detail, FALSE), COLUMN_FILE_NAME, NameDest, COLUMN_FILE_EDITABLE, TRUE, - COLUMN_FILE_COLOR, &YellowColor, + //COLUMN_FILE_COLOR, &YellowColor, COLUMN_FILE_POINTER_STRUCT, detail, -1); @@ -1429,24 +1428,23 @@ void on_combobox_dest_file_realize (GtkWidget *widget, gpointer user_data) { var_file.Adr_combobox_DestFile = GTK_COMBO_BOX (widget); - libcombo_alloc (GTK_COMBO_BOX (widget)); - gtk_combo_box_append_text (GTK_COMBO_BOX (var_file.Adr_combobox_DestFile), _("Conversion(s) vers la source")); - gtk_combo_box_append_text (GTK_COMBO_BOX (var_file.Adr_combobox_DestFile), _("Choix d'une nouvelle destination")); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_file.Adr_combobox_DestFile), _("Conversion(s) to source")); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_file.Adr_combobox_DestFile), _("Select a new destination")); switch (Config.NotebookFile) { case NOTEBOOK_FICHIERS_CONVERSION : - gtk_combo_box_append_text (GTK_COMBO_BOX (var_file.Adr_combobox_DestFile), Config.PathDestinationFileAll); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_file.Adr_combobox_DestFile), Config.PathDestinationFileAll); gtk_combo_box_set_active (GTK_COMBO_BOX (var_file.Adr_combobox_DestFile), Config.TabIndiceComboDestFile[ NOTEBOOK_FICHIERS_CONVERSION ]); break; case NOTEBOOK_FICHIERS_WAV : - gtk_combo_box_append_text (GTK_COMBO_BOX (var_file.Adr_combobox_DestFile), Config.PathDestinationFileWav); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_file.Adr_combobox_DestFile), Config.PathDestinationFileWav); gtk_combo_box_set_active (GTK_COMBO_BOX (var_file.Adr_combobox_DestFile), Config.TabIndiceComboDestFile[ NOTEBOOK_FICHIERS_WAV ]); break; case NOTEBOOK_FICHIERS_MP3OGG : - gtk_combo_box_append_text (GTK_COMBO_BOX (var_file.Adr_combobox_DestFile), Config.PathDestinationFileMp3Ogg); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_file.Adr_combobox_DestFile), Config.PathDestinationFileMp3Ogg); gtk_combo_box_set_active (GTK_COMBO_BOX (var_file.Adr_combobox_DestFile), Config.TabIndiceComboDestFile[ NOTEBOOK_FICHIERS_MP3OGG ]); break; case NOTEBOOK_FICHIERS_TAGS : - gtk_combo_box_append_text (GTK_COMBO_BOX (var_file.Adr_combobox_DestFile), Config.PathDestinationFileTags); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_file.Adr_combobox_DestFile), Config.PathDestinationFileTags); gtk_combo_box_set_active (GTK_COMBO_BOX (var_file.Adr_combobox_DestFile), Config.TabIndiceComboDestFile[ NOTEBOOK_FICHIERS_TAGS ]); break; } @@ -1498,24 +1496,23 @@ list = g_list_next (list); } - // libcombo_alloc (GTK_COMBO_BOX (var_file.Adr_combobox_select_type)); libcombo_remove_options (GTK_COMBO_BOX (var_file.Adr_combobox_select_type)); - gtk_combo_box_append_text (GTK_COMBO_BOX (var_file.Adr_combobox_select_type), _("Select type: --")); - if (bool_flac > 0) { g_sprintf (Str, "%03d FLAC", bool_flac); gtk_combo_box_append_text (GTK_COMBO_BOX (var_file.Adr_combobox_select_type), Str); } - if (bool_wav > 0) { g_sprintf (Str, "%03d WAV", bool_wav); gtk_combo_box_append_text (GTK_COMBO_BOX (var_file.Adr_combobox_select_type), Str); } - if (bool_mp3 > 0) { g_sprintf (Str, "%03d MP3", bool_mp3); gtk_combo_box_append_text (GTK_COMBO_BOX (var_file.Adr_combobox_select_type), Str); } - if (bool_ogg > 0) { g_sprintf (Str, "%03d OGG", bool_ogg); gtk_combo_box_append_text (GTK_COMBO_BOX (var_file.Adr_combobox_select_type), Str); } - if (bool_m4a > 0) { g_sprintf (Str, "%03d M4A", bool_m4a); gtk_combo_box_append_text (GTK_COMBO_BOX (var_file.Adr_combobox_select_type), Str); } - if (bool_aac > 0) { g_sprintf (Str, "%03d AAC", bool_aac); gtk_combo_box_append_text (GTK_COMBO_BOX (var_file.Adr_combobox_select_type), Str); } - if (bool_shn > 0) { g_sprintf (Str, "%03d SHN", bool_shn); gtk_combo_box_append_text (GTK_COMBO_BOX (var_file.Adr_combobox_select_type), Str); } - if (bool_wma > 0) { g_sprintf (Str, "%03d WMA", bool_wma); gtk_combo_box_append_text (GTK_COMBO_BOX (var_file.Adr_combobox_select_type), Str); } - if (bool_rm > 0) { g_sprintf (Str, "%03d RM", bool_rm); gtk_combo_box_append_text (GTK_COMBO_BOX (var_file.Adr_combobox_select_type), Str); } - if (bool_dts > 0) { g_sprintf (Str, "%03d DTS", bool_dts); gtk_combo_box_append_text (GTK_COMBO_BOX (var_file.Adr_combobox_select_type), Str); } - if (bool_aiff > 0) { g_sprintf (Str, "%03d AIF", bool_aiff); gtk_combo_box_append_text (GTK_COMBO_BOX (var_file.Adr_combobox_select_type), Str); } - if (bool_mpc > 0) { g_sprintf (Str, "%03d MPC", bool_mpc); gtk_combo_box_append_text (GTK_COMBO_BOX (var_file.Adr_combobox_select_type), Str); } - if (bool_ape > 0) { g_sprintf (Str, "%03d APE", bool_ape); gtk_combo_box_append_text (GTK_COMBO_BOX (var_file.Adr_combobox_select_type), Str); } - if (bool_wavpack > 0) { g_sprintf (Str, "%03d WAVPACK", bool_wavpack); gtk_combo_box_append_text (GTK_COMBO_BOX (var_file.Adr_combobox_select_type), Str); } + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_file.Adr_combobox_select_type), _("Select type: --")); + if (bool_flac > 0) { g_sprintf (Str, "%03d FLAC", bool_flac); gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_file.Adr_combobox_select_type), Str); } + if (bool_wav > 0) { g_sprintf (Str, "%03d WAV", bool_wav); gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_file.Adr_combobox_select_type), Str); } + if (bool_mp3 > 0) { g_sprintf (Str, "%03d MP3", bool_mp3); gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_file.Adr_combobox_select_type), Str); } + if (bool_ogg > 0) { g_sprintf (Str, "%03d OGG", bool_ogg); gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_file.Adr_combobox_select_type), Str); } + if (bool_m4a > 0) { g_sprintf (Str, "%03d M4A", bool_m4a); gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_file.Adr_combobox_select_type), Str); } + if (bool_aac > 0) { g_sprintf (Str, "%03d AAC", bool_aac); gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_file.Adr_combobox_select_type), Str); } + if (bool_shn > 0) { g_sprintf (Str, "%03d SHN", bool_shn); gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_file.Adr_combobox_select_type), Str); } + if (bool_wma > 0) { g_sprintf (Str, "%03d WMA", bool_wma); gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_file.Adr_combobox_select_type), Str); } + if (bool_rm > 0) { g_sprintf (Str, "%03d RM", bool_rm); gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_file.Adr_combobox_select_type), Str); } + if (bool_dts > 0) { g_sprintf (Str, "%03d DTS", bool_dts); gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_file.Adr_combobox_select_type), Str); } + if (bool_aiff > 0) { g_sprintf (Str, "%03d AIF", bool_aiff); gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_file.Adr_combobox_select_type), Str); } + if (bool_mpc > 0) { g_sprintf (Str, "%03d MPC", bool_mpc); gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_file.Adr_combobox_select_type), Str); } + if (bool_ape > 0) { g_sprintf (Str, "%03d APE", bool_ape); gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_file.Adr_combobox_select_type), Str); } + if (bool_wavpack > 0) { g_sprintf (Str, "%03d WAVPACK", bool_wavpack); gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_file.Adr_combobox_select_type), Str); } gtk_combo_box_set_active (GTK_COMBO_BOX (var_file.Adr_combobox_select_type), 0); bool_val = bool_flac + bool_wav + bool_mp3 + bool_ogg + bool_m4a + bool_aac + bool_shn + bool_wma + bool_rm + bool_dts + bool_aiff + bool_mpc + bool_ape + bool_wavpack; @@ -1525,7 +1522,6 @@ // void on_combobox_select_type_realize (GtkWidget *widget, gpointer user_data) { - // libcombo_alloc (GTK_COMBO_BOX (widget)); // gtk_combo_box_append_text (GTK_COMBO_BOX (widget), _("Select type: --")); // gtk_combo_box_set_active (GTK_COMBO_BOX (widget), 0); var_file.Adr_combobox_select_type = GTK_COMBO_BOX (widget); @@ -1545,7 +1541,7 @@ if (var_file.Adr_combobox_select_type != NULL) { if ((nmr = gtk_combo_box_get_active (GTK_COMBO_BOX (var_file.Adr_combobox_select_type)) > 0)) { - ptr = gtk_combo_box_get_active_text (GTK_COMBO_BOX (var_file.Adr_combobox_select_type)); + ptr = gtk_combo_box_text_get_active_text (GTK_COMBO_BOX_TEXT (var_file.Adr_combobox_select_type)); gtk_combo_box_set_active (GTK_COMBO_BOX (var_file.Adr_combobox_select_type), 0); if (NULL != strstr (ptr, "FLAC")) type_file_is = FILE_IS_FLAC; if (NULL != strstr (ptr, "WAV")) type_file_is = FILE_IS_WAV; @@ -1585,11 +1581,10 @@ // void on_combobox_normalise_file_realize (GtkWidget *widget, gpointer user_data) { - libcombo_alloc (GTK_COMBO_BOX (widget)); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), _("Peak/album")); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), _("Peak")); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), _("Mix (scan)Rms/album")); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), _("Fix (scan)Rms")); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), _("Peak/album")); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), _("Peak")); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), _("Mix (scan)Rms/album")); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), _("Fix (scan)Rms")); gtk_combo_box_set_active (GTK_COMBO_BOX (widget), 0); var_file.AdrComboboxNormalise = GTK_COMBO_BOX (widget); } @@ -1727,32 +1722,32 @@ g_free (Config.PathDestinationFileAll); Config.PathDestinationFileAll = NULL; Config.PathDestinationFileAll = g_strdup (path); - gtk_combo_box_remove_text (GTK_COMBO_BOX (var_file.Adr_combobox_DestFile), 2); - gtk_combo_box_append_text (GTK_COMBO_BOX (var_file.Adr_combobox_DestFile), Config.PathDestinationFileAll); + gtk_combo_box_text_remove (GTK_COMBO_BOX_TEXT(var_file.Adr_combobox_DestFile), 2 ); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_file.Adr_combobox_DestFile), Config.PathDestinationFileAll); gtk_combo_box_set_active (GTK_COMBO_BOX (var_file.Adr_combobox_DestFile), Config.TabIndiceComboDestFile[ NOTEBOOK_FICHIERS_CONVERSION ]); break; case NOTEBOOK_FICHIERS_WAV : g_free (Config.PathDestinationFileWav); Config.PathDestinationFileWav = NULL; Config.PathDestinationFileWav = g_strdup (path); - gtk_combo_box_remove_text (GTK_COMBO_BOX (var_file.Adr_combobox_DestFile), 2); - gtk_combo_box_append_text (GTK_COMBO_BOX (var_file.Adr_combobox_DestFile), Config.PathDestinationFileWav); + gtk_combo_box_text_remove (GTK_COMBO_BOX_TEXT(var_file.Adr_combobox_DestFile), 2); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_file.Adr_combobox_DestFile), Config.PathDestinationFileWav); gtk_combo_box_set_active (GTK_COMBO_BOX (var_file.Adr_combobox_DestFile), Config.TabIndiceComboDestFile[ NOTEBOOK_FICHIERS_WAV ]); break; case NOTEBOOK_FICHIERS_MP3OGG : g_free (Config.PathDestinationFileMp3Ogg); Config.PathDestinationFileMp3Ogg = NULL; Config.PathDestinationFileMp3Ogg = g_strdup (path); - gtk_combo_box_remove_text (GTK_COMBO_BOX (var_file.Adr_combobox_DestFile), 2); - gtk_combo_box_append_text (GTK_COMBO_BOX (var_file.Adr_combobox_DestFile), Config.PathDestinationFileMp3Ogg); + gtk_combo_box_text_remove (GTK_COMBO_BOX_TEXT(var_file.Adr_combobox_DestFile), 2); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_file.Adr_combobox_DestFile), Config.PathDestinationFileMp3Ogg); gtk_combo_box_set_active (GTK_COMBO_BOX (var_file.Adr_combobox_DestFile), Config.TabIndiceComboDestFile[ NOTEBOOK_FICHIERS_MP3OGG ]); break; case NOTEBOOK_FICHIERS_TAGS : g_free (Config.PathDestinationFileTags); Config.PathDestinationFileTags = NULL; Config.PathDestinationFileTags = g_strdup (path); - gtk_combo_box_remove_text (GTK_COMBO_BOX (var_file.Adr_combobox_DestFile), 2); - gtk_combo_box_append_text (GTK_COMBO_BOX (var_file.Adr_combobox_DestFile), Config.PathDestinationFileTags); + gtk_combo_box_text_remove (GTK_COMBO_BOX_TEXT(var_file.Adr_combobox_DestFile), 2); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_file.Adr_combobox_DestFile), Config.PathDestinationFileTags); gtk_combo_box_set_active (GTK_COMBO_BOX (var_file.Adr_combobox_DestFile), Config.TabIndiceComboDestFile[ NOTEBOOK_FICHIERS_TAGS ]); break; } @@ -2402,8 +2397,8 @@ // GdkPixbuf *Pixbuf = NULL; DETAIL *detail = NULL; gint Pos_X = 0, Pos_Y = 0; - gboolean bool_key_Control = (keys.keyval == GDK_Control_L || keys.keyval == GDK_Control_R); - gboolean bool_key_Shift = (keys.keyval == GDK_Shift_L || keys.keyval == GDK_Shift_R); + gboolean bool_key_Control = (keys.keyval == GDK_KEY_Control_L || keys.keyval == GDK_KEY_Control_R); + gboolean bool_key_Shift = (keys.keyval == GDK_KEY_Shift_L || keys.keyval == GDK_KEY_Shift_R); gboolean bool_key_Release = (bool_key_Control == FALSE && bool_key_Shift == FALSE); gboolean bool_click_gauche = (event->button == 1); gboolean bool_click_droit = (event->button == 3); @@ -2466,7 +2461,9 @@ break; } } - + if( BoolSelectColNom ); + if( BoolSelectColTime ); + if( BoolSelectColType ); BoolSelectColNorm &= (detail->type_infosong_file_is == FILE_IS_WAV || detail->type_infosong_file_is == FILE_IS_OGG || @@ -2731,7 +2728,7 @@ gtk_tree_selection_unselect_all (var_file.Adr_Line_Selected); gtk_tree_selection_select_all (var_file.Adr_Line_Selected); } - if (keys.keyval == GDK_Delete) { + if (keys.keyval == GDK_KEY_Delete) { GtkTreeIter iter; if (gtk_tree_model_get_iter_first (var_file.Adr_Tree_Model, &iter)) { on_file_button_del_file_clicked (NULL, NULL); @@ -2743,30 +2740,33 @@ // // Drag import // -static void file_drag_data_received( GtkWidget *widget, - GdkDragContext *drag_context, +static void file_drag_data_received( + GtkWidget *widget, + GdkDragContext *context, gint x, gint y, GtkSelectionData *data, guint info, guint time, - gpointer user_data ) + gpointer user_data) { // Une copie ne peut aller vers elle meme !!! - if (gtk_drag_get_source_widget(drag_context) != widget) { - dragndrop_list_drag_data (widget, (gchar *)data->data); + if (gtk_drag_get_source_widget(context) != widget) { + // dragndrop_list_drag_data (widget, (gchar *)data->data); + dragndrop_list_drag_data( widget, (gchar*)gtk_selection_data_get_data( data )); } } // // DRag export // -static void file_drag_data_drop( GtkWidget *widget, - GdkDragContext *dc, - GtkSelectionData *selection_data, - guint info, - guint t, - gpointer data ) +static void file_drag_data_drop( + GtkWidget *widget, + GdkDragContext *dc, + GtkSelectionData *selection_data, + guint info, + guint t, + gpointer data ) { GtkTreeIter iter; GtkTreeModel *model = NULL; @@ -2795,9 +2795,19 @@ gdk_drag_status (dc, GDK_ACTION_COPY, t); - gtk_selection_data_set( selection_data, + /* + gtk_selection_data_set( + GtkSelectionData *selection_data, + GdkAtom type, + gint format, + const guchar *data, + gint length); + */ + gtk_selection_data_set( + selection_data, // GDK_SELECTION_TYPE_STRING, - selection_data->target, + // selection_data->target, + GDK_POINTER_TO_ATOM(gtk_selection_data_get_data( selection_data )), 8, (guchar *)text, strlen( text ) @@ -2821,25 +2831,25 @@ StatusBar_set_mess( NOTEBOOK_FICHIERS, _STATUSBAR_SIMPLE_, "" ); break; case ETAT_PRG_ABSENT : - StatusBar_set_mess( NOTEBOOK_FICHIERS, _STATUSBAR_SIMPLE_, _("Le programme externe d'extraction est absent.")); + StatusBar_set_mess( NOTEBOOK_FICHIERS, _STATUSBAR_SIMPLE_, _("The external ripping program is missing")); break; case ETAT_ATTENTE : - StatusBar_set_mess( NOTEBOOK_FICHIERS, _STATUSBAR_SIMPLE_, _("(Click Droit = Menu) / En attente de selection.")); + StatusBar_set_mess( NOTEBOOK_FICHIERS, _STATUSBAR_SIMPLE_, _("(Right click = Menu) / Waiting for selection.")); break; case ETAT_ATTENTE_EXIST : - StatusBar_set_mess( NOTEBOOK_FICHIERS, _STATUSBAR_SIMPLE_, _("(Click Droit = Menu) / En attente de selection. Le fichier existe.")); + StatusBar_set_mess( NOTEBOOK_FICHIERS, _STATUSBAR_SIMPLE_, _("(Right click = Menu) / Waiting for Selection. File exists.")); break; case ETAT_SELECT : - StatusBar_set_mess( NOTEBOOK_FICHIERS, _STATUSBAR_SIMPLE_, _("(Click Droit = Menu) / En selection.")); + StatusBar_set_mess( NOTEBOOK_FICHIERS, _STATUSBAR_SIMPLE_, _("(Right click = Menu) / Selected files")); break; case ETAT_SELECT_EXIST : - StatusBar_set_mess( NOTEBOOK_FICHIERS, _STATUSBAR_SIMPLE_, _("(Click Droit = Menu) / En selection. Le fichier existe.")); + StatusBar_set_mess( NOTEBOOK_FICHIERS, _STATUSBAR_SIMPLE_, _("(Right click = Menu) / Selected files. File exists.")); break; case ETAT_SELECT_EXPERT : - StatusBar_set_mess( NOTEBOOK_FICHIERS, _STATUSBAR_SIMPLE_, _("(Click Droit = Menu) / Selection avec options expert.")); + StatusBar_set_mess( NOTEBOOK_FICHIERS, _STATUSBAR_SIMPLE_, _("(Right click = Menu) / Selection - expert mode.")); break; case ETAT_SELECT_EXPERT_EXIST : - StatusBar_set_mess( NOTEBOOK_FICHIERS, _STATUSBAR_SIMPLE_, _("(Click Droit = Menu) / Selection avec options expert. Le fichier existe.")); + StatusBar_set_mess( NOTEBOOK_FICHIERS, _STATUSBAR_SIMPLE_, _("(Right click = Menu) / Selection - expert mode. File exists.")); break; } } @@ -2848,7 +2858,7 @@ void file_set_normalise (ETAT_NORMALISE p_EtatNormalise) { if (FALSE == file_ok_to_normalise ()) { - gchar *Str = g_strdup_printf (_("MAX FICHIERS ATTEINT = %d"), MAX_ARG_CONV); + gchar *Str = g_strdup_printf (_("MAX FILES REACHED = %d"), MAX_ARG_CONV); StatusBar_set_mess( NOTEBOOK_FICHIERS, _STATUSBAR_SIMPLE_, Str ); g_free (Str); Str = NULL; } @@ -2858,24 +2868,24 @@ StatusBar_set_mess( NOTEBOOK_FICHIERS, _STATUSBAR_SIMPLE_, "VOIR LA FONCTION: file_set_normalise()"); break; case NORM_READY_FOR_SELECT : - StatusBar_set_mess( NOTEBOOK_FICHIERS, _STATUSBAR_SIMPLE_, _("Normalise: En attente de selection.")); + StatusBar_set_mess( NOTEBOOK_FICHIERS, _STATUSBAR_SIMPLE_, _("Normalise: Waiting for selection.")); break; case NORM_PEAK_ALBUM : if (FALSE == file_peak_get_size_is_ok (NORM_PEAK_ALBUM, NULL)) { - StatusBar_set_mess( NOTEBOOK_FICHIERS, _STATUSBAR_SIMPLE_, _("ATTENTION: Pas assez de place dans le dossier temporaire.")); + StatusBar_set_mess( NOTEBOOK_FICHIERS, _STATUSBAR_SIMPLE_, _("WARNING: Not enough space available in the temp folder.")); } else { - StatusBar_set_mess( NOTEBOOK_FICHIERS, _STATUSBAR_SIMPLE_, _("PEAK-ALBUM: Amplification maximale du volume pour un groupe de fichiers en respectant les ecarts de niveau entre chacun d'eux.")); - } + StatusBar_set_mess( NOTEBOOK_FICHIERS, _STATUSBAR_SIMPLE_, _("PEAK-ALBUM: Maximum volume amplification for a group of files according to the deviations in level between them")); + } break; case NORM_PEAK : - StatusBar_set_mess( NOTEBOOK_FICHIERS, _STATUSBAR_SIMPLE_, _("PEAK: Amplification maximale du volume pour chaque de fichier.")); + StatusBar_set_mess( NOTEBOOK_FICHIERS, _STATUSBAR_SIMPLE_, _("PEAK: Maximum volume amplification of each file.")); break; case NORM_RMS_MIX_ALBUM : - StatusBar_set_mess( NOTEBOOK_FICHIERS, _STATUSBAR_SIMPLE_, _("RMS-ALBUM: Ajustement du volume moyen pour un groupe de fichiers en respectant les ecarts de niveau moyen entre chacun d'eux.")); + StatusBar_set_mess( NOTEBOOK_FICHIERS, _STATUSBAR_SIMPLE_, _("RMS-ALBUM: Adjusting the average volume for a group of files according to the average level of deviation between them.")); break; case NORM_RMS_FIX : - StatusBar_set_mess( NOTEBOOK_FICHIERS, _STATUSBAR_SIMPLE_, _("RMS: Ajustement du volume moyen de chaque de fichier.")); + StatusBar_set_mess( NOTEBOOK_FICHIERS, _STATUSBAR_SIMPLE_, _("RMS: Average volume amplification of each file.")); break; } } @@ -2889,16 +2899,16 @@ StatusBar_set_mess( NOTEBOOK_FICHIERS, _STATUSBAR_SIMPLE_, "" ); break; case RPG_ATTENTE : - StatusBar_set_mess( NOTEBOOK_FICHIERS, _STATUSBAR_SIMPLE_, _("(Click Droit = Menu) / ReplayGain: En attente de selection.")); + StatusBar_set_mess( NOTEBOOK_FICHIERS, _STATUSBAR_SIMPLE_, _("(Right Click = Menu) / ReplayGain: Waiting for selection.")); break; case RPG_PISTE : - StatusBar_set_mess( NOTEBOOK_FICHIERS, _STATUSBAR_SIMPLE_, _("(Click Droit = Menu) / Mode piste.")); + StatusBar_set_mess( NOTEBOOK_FICHIERS, _STATUSBAR_SIMPLE_, _("(Right Click = Menu) / Track mode.")); break; case RPG_ALBUM : - StatusBar_set_mess( NOTEBOOK_FICHIERS, _STATUSBAR_SIMPLE_, _("(Click Droit = Menu) / Mode album.")); + StatusBar_set_mess( NOTEBOOK_FICHIERS, _STATUSBAR_SIMPLE_, _("(Right Click = Menu) / Album mode.")); break; case RPG_EFFACER : - StatusBar_set_mess( NOTEBOOK_FICHIERS, _STATUSBAR_SIMPLE_, _("(Click Droit = Menu) / Mode effacer.")); + StatusBar_set_mess( NOTEBOOK_FICHIERS, _STATUSBAR_SIMPLE_, _("(Right Click = Menu) / Erase mode.")); break; } } @@ -2933,8 +2943,11 @@ gboolean BoolSelectColReplayGain = FALSE; gboolean BoolSelectColNom = FALSE; - // SI PAS DANS LE TREEVIEW - gdk_window_get_pointer (((GdkEventButton*)event)->window, &x, &y, &state); + /* Si pas de selection a cet endroit retour */ + GdkDeviceManager *manager = gdk_display_get_device_manager( gdk_display_get_default() ); + GdkDevice *device = gdk_device_manager_get_client_pointer( manager ); + gdk_window_get_device_position( ((GdkEventButton*)event)->window, device, &x, &y, &state ); + // gdk_window_get_pointer (((GdkEventButton*)event)->window, &x, &y, &state); if (FALSE == gtk_tree_view_get_path_at_pos (GTK_TREE_VIEW(treeview), x, y, &path, &column, &Pos_X, &Pos_Y)) { @@ -3010,10 +3023,10 @@ else if (TRUE == BoolSelectColTrash) { switch (detail->EtatTrash) { case FILE_TRASH_NONE : - StatusBar_set_mess( NOTEBOOK_FICHIERS, _STATUSBAR_SIMPLE_, _("(Click Droit = Menu) / Cliquez ici pour envoyer ce fichier apres traitement a la corbeille")); + StatusBar_set_mess( NOTEBOOK_FICHIERS, _STATUSBAR_SIMPLE_, _("(Click Droit = Menu) / Click here to send the processed file to the trash")); break; case FILE_TRASH_OK : - StatusBar_set_mess( NOTEBOOK_FICHIERS, _STATUSBAR_SIMPLE_, _("(Click Droit = Menu) / Ce fichier sera dirige apres traitement vers la corbeille")); + StatusBar_set_mess( NOTEBOOK_FICHIERS, _STATUSBAR_SIMPLE_, _("(Right Click = Menu) / This file will be sent to the trash after processing")); break; case FILE_TRASH_VERIF_OK : StatusBar_set_mess( NOTEBOOK_FICHIERS, _STATUSBAR_SIMPLE_, ""); @@ -3134,7 +3147,7 @@ renderer = gtk_cell_renderer_pixbuf_new (); g_object_set (renderer, "xalign", 0.5, NULL); var_file.Adr_ColumnFilePlay = - column = gtk_tree_view_column_new_with_attributes (_("Play"), + column = gtk_tree_view_column_new_with_attributes( "Play", renderer, "pixbuf", COLUMN_FILE_PLAY, NULL); @@ -3199,7 +3212,7 @@ renderer = gtk_cell_renderer_pixbuf_new (); g_object_set (renderer, "xalign", 0.5, NULL); var_file.Adr_ColumnFileWav = - column = gtk_tree_view_column_new_with_attributes (_("Wav"), + column = gtk_tree_view_column_new_with_attributes ("Wav", renderer, "pixbuf", COLUMN_FILE_WAV, NULL); @@ -3218,7 +3231,7 @@ renderer = gtk_cell_renderer_pixbuf_new (); g_object_set (renderer, "xalign", 0.5, NULL); var_file.Adr_ColumnFileFlac = - column = gtk_tree_view_column_new_with_attributes (_("Flac"), + column = gtk_tree_view_column_new_with_attributes ("Flac", renderer, "pixbuf", COLUMN_FILE_FLAC, NULL); @@ -3237,7 +3250,7 @@ renderer = gtk_cell_renderer_pixbuf_new (); g_object_set (renderer, "xalign", 0.5, NULL); var_file.Adr_ColumnFileApe = - column = gtk_tree_view_column_new_with_attributes (_("Ape"), + column = gtk_tree_view_column_new_with_attributes ("Ape", renderer, "pixbuf", COLUMN_FILE_APE, NULL); @@ -3256,7 +3269,7 @@ renderer = gtk_cell_renderer_pixbuf_new (); g_object_set (renderer, "xalign", 0.5, NULL); var_file.Adr_ColumnFileWavPack = - column = gtk_tree_view_column_new_with_attributes (_("WavP"), + column = gtk_tree_view_column_new_with_attributes ("WavP", renderer, "pixbuf", COLUMN_FILE_WAVPACK, NULL); @@ -3275,7 +3288,7 @@ renderer = gtk_cell_renderer_pixbuf_new (); g_object_set (renderer, "xalign", 0.5, NULL); var_file.Adr_ColumnFileOgg = - column = gtk_tree_view_column_new_with_attributes (_("Ogg"), + column = gtk_tree_view_column_new_with_attributes ("Ogg", renderer, "pixbuf", COLUMN_FILE_OGG, NULL); @@ -3294,7 +3307,7 @@ renderer = gtk_cell_renderer_pixbuf_new (); g_object_set (renderer, "xalign", 0.5, NULL); var_file.Adr_ColumnFileM4a = - column = gtk_tree_view_column_new_with_attributes (_("M4a"), + column = gtk_tree_view_column_new_with_attributes ("M4a", renderer, "pixbuf", COLUMN_FILE_M4A, NULL); @@ -3313,7 +3326,7 @@ renderer = gtk_cell_renderer_pixbuf_new (); g_object_set (renderer, "xalign", 0.5, NULL); var_file.Adr_ColumnFileAac = - column = gtk_tree_view_column_new_with_attributes (_("Aac"), + column = gtk_tree_view_column_new_with_attributes ("Aac", renderer, "pixbuf", COLUMN_FILE_AAC, NULL); @@ -3332,7 +3345,7 @@ renderer = gtk_cell_renderer_pixbuf_new (); g_object_set (renderer, "xalign", 0.5, NULL); var_file.Adr_ColumnFileMpc = - column = gtk_tree_view_column_new_with_attributes (_("Mpc"), + column = gtk_tree_view_column_new_with_attributes ("Mpc", renderer, "pixbuf", COLUMN_FILE_MPC, NULL); @@ -3351,7 +3364,7 @@ renderer = gtk_cell_renderer_pixbuf_new (); g_object_set (renderer, "xalign", 0.5, NULL); var_file.Adr_ColumnFileMp3 = - column = gtk_tree_view_column_new_with_attributes (_("Mp3"), + column = gtk_tree_view_column_new_with_attributes ("Mp3", renderer, "pixbuf", COLUMN_FILE_MP3, NULL); @@ -3370,7 +3383,7 @@ renderer = gtk_cell_renderer_text_new (); g_object_set (renderer, "xalign", 0.5, NULL); var_file.Adr_ColumnFileTime = - column = gtk_tree_view_column_new_with_attributes (_("Temps"), + column = gtk_tree_view_column_new_with_attributes (_("Time"), renderer, /*"pixbuf", COLUMN_FILE_TYPE,*/ "text", COLUMN_FILE_TIME, @@ -3406,7 +3419,7 @@ renderer = gtk_cell_renderer_pixbuf_new (); g_object_set (renderer, "xalign", 0.5, NULL); var_file.Adr_ColumnFileReplayGain = - column = gtk_tree_view_column_new_with_attributes (_("ReplayGain"), + column = gtk_tree_view_column_new_with_attributes( "ReplayGain", renderer, "pixbuf", COLUMN_FILE_REPLAYGAIN, NULL); @@ -3429,11 +3442,11 @@ g_object_set (renderer, "xalign", 0.5, NULL); g_object_set_data (G_OBJECT (renderer), "column", (gint *)COLUMN_FILE_NAME); var_file.Adr_ColumnFileName = - column = gtk_tree_view_column_new_with_attributes (_("Nom"), + column = gtk_tree_view_column_new_with_attributes (_("Name"), renderer, "markup", COLUMN_FILE_NAME, "editable", COLUMN_FILE_EDITABLE, - "background-gdk", COLUMN_FILE_COLOR, + // "background-gdk", COLUMN_FILE_COLOR, NULL); gtk_tree_view_column_set_sizing (GTK_TREE_VIEW_COLUMN (column), GTK_TREE_VIEW_COLUMN_FIXED); @@ -3493,13 +3506,13 @@ GDK_TYPE_PIXBUF, /* COLUMN_FILE_REPLAYGAIN */ G_TYPE_STRING, /* COLUMN_FILE_NAME */ G_TYPE_BOOLEAN, /* COLUMN_FILE_EDITABLE */ - GDK_TYPE_COLOR, /* COLUMN_FILE_COLOR */ + //GDK_TYPE_COLOR, /* COLUMN_FILE_COLOR */ G_TYPE_POINTER /* COLUMN_FILE_POINTER_STRUCT */ ); var_file.Adr_Tree_Model = model = GTK_TREE_MODEL (store); var_file.Adr_TreeView = treeview = gtk_tree_view_new_with_model (model); - gtk_tree_view_set_rules_hint (GTK_TREE_VIEW (treeview), TRUE); + // gtk_tree_view_set_rules_hint (GTK_TREE_VIEW (treeview), TRUE); gtk_tree_selection_set_mode (gtk_tree_view_get_selection (GTK_TREE_VIEW (treeview)), GTK_SELECTION_MULTIPLE); // GTK_SELECTION_BROWSE MULTIPLE g_object_unref (model); gtk_container_add (GTK_CONTAINER (widget), treeview); diff -Nru xcfa-4.3.8/src/file_conv.c xcfa-5.0.1/src/file_conv.c --- xcfa-4.3.8/src/file_conv.c 2014-01-20 15:40:10.000000000 +0000 +++ xcfa-5.0.1/src/file_conv.c 2015-02-05 19:18:53.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : file_conv.c * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License @@ -216,7 +216,7 @@ PtrTabArgs = conv_with_sox_get_param( PConv->tmp_wav, PConv->tmp_sox, StrHertz, StrChannels, StrBits ); pthread_mutex_unlock( &mutex ); conv_to_convert( PtrTabArgs, FALSE, SOX_WAV_TO_WAV, "SOX_WAV_TO_WAV"); - PtrTabArgs = filelc_RevoveTab( PtrTabArgs ); + PtrTabArgs = filelc_RemoveTab( PtrTabArgs ); return( libutils_test_file_exist( PConv->tmp_sox )); } @@ -287,7 +287,7 @@ PConv->tmp_sox ); conv_to_convert( PtrTabArgs, FALSE, SOX_WAV_TO_WAV, "SOX_WAV_TO_WAV"); - PtrTabArgs = filelc_RevoveTab( PtrTabArgs ); + PtrTabArgs = filelc_RemoveTab( PtrTabArgs ); conv_copy_src_to_dest( PConv->tmp_sox, PConv->tmp_wav ); } conv.Bool_MAJ_select = TRUE; @@ -315,7 +315,7 @@ PtrTabArgs = filelc_get_command_line (¶m_filelc); pthread_mutex_unlock( &mutex ); conv_to_convert( PtrTabArgs, param_filelc.With_CommandLineUser, FLAC_FLAC_TO_WAV, "FLAC_FLAC_TO_WAV"); - PtrTabArgs = filelc_RevoveTab( PtrTabArgs ); + PtrTabArgs = filelc_RemoveTab( PtrTabArgs ); conv.Bool_MAJ_select = TRUE; break; } @@ -341,7 +341,7 @@ PtrTabArgs = filelc_get_command_line (¶m_filelc); pthread_mutex_unlock( &mutex ); conv_to_convert( PtrTabArgs, param_filelc.With_CommandLineUser, MAC_APE_TO_WAV, "MAC_APE_TO_WAV"); - PtrTabArgs = filelc_RevoveTab( PtrTabArgs ); + PtrTabArgs = filelc_RemoveTab( PtrTabArgs ); conv.Bool_MAJ_select = TRUE; break; } @@ -369,7 +369,7 @@ PtrTabArgs [ pos++ ] = g_strdup (PConv->tmp_wav); PtrTabArgs [ pos++ ] = NULL; conv_to_convert( PtrTabArgs, FALSE, WVUNPACK_WAVPACK_TO_WAV, "WVUNPACK_WAVPACK_TO_WAV"); - PtrTabArgs = filelc_RevoveTab( PtrTabArgs ); + PtrTabArgs = filelc_RemoveTab( PtrTabArgs ); conv.Bool_MAJ_select = TRUE; break; } @@ -428,7 +428,7 @@ conv_copy_src_to_dest( PConv->tmp_sox, PConv->tmp_wav ); } } - PtrTabArgs = filelc_RevoveTab( PtrTabArgs ); + PtrTabArgs = filelc_RemoveTab( PtrTabArgs ); conv.Bool_MAJ_select = TRUE; break; } @@ -458,7 +458,7 @@ PtrTabArgs [ pos++ ] = g_strdup ("44100"); PtrTabArgs [ pos++ ] = NULL; VarFileConv.BoolResultMplayerIsOk = conv_to_convert( PtrTabArgs, FALSE, MPLAYER_MPC_TO_WAV, "MPLAYER_MPC_TO_WAV"); - PtrTabArgs = filelc_RevoveTab( PtrTabArgs ); + PtrTabArgs = filelc_RemoveTab( PtrTabArgs ); if( FALSE == libutils_test_file_exist( PConv->tmp_wav )) { PtrTabArgs = filelc_AllocTabArgs(); @@ -488,7 +488,7 @@ } PtrTabArgs[ pos++ ] = NULL; conv_to_convert( PtrTabArgs, FALSE, MPPDEC_MPC_TO_WAV, "MPPDEC_MPC_TO_WAV" ); - PtrTabArgs = filelc_RevoveTab( PtrTabArgs ); + PtrTabArgs = filelc_RemoveTab( PtrTabArgs ); conv.Bool_MAJ_select = TRUE; } conv.Bool_MAJ_select = TRUE; @@ -516,7 +516,7 @@ PtrTabArgs [ pos++ ] = g_strdup (PConv->tmp_wav); PtrTabArgs [ pos++ ] = NULL; conv_to_convert( PtrTabArgs, FALSE, A52DEC_AC3_TO_WAV, "A52DEC_AC3_TO_WAV" ); - PtrTabArgs = filelc_RevoveTab( PtrTabArgs ); + PtrTabArgs = filelc_RemoveTab( PtrTabArgs ); tagswav_file_GetBitrate( PConv->tmp_wav, &Channels, &Hertz, &Bits ); fileconv_change_quantification_with_sox( PConv, Hertz, Channels, Bits ); @@ -559,7 +559,7 @@ } PtrTabArgs [ pos++ ] = NULL; VarFileConv.BoolResultMplayerIsOk = conv_to_convert( PtrTabArgs, FALSE, MPLAYER_M4A_TO_WAV, "MPLAYER_M4A_TO_WAV"); - PtrTabArgs = filelc_RevoveTab( PtrTabArgs ); + PtrTabArgs = filelc_RemoveTab( PtrTabArgs ); conv.Bool_MAJ_select = TRUE; break; } @@ -613,7 +613,7 @@ PtrTabArgs [ pos++ ] = g_strdup ("44100"); PtrTabArgs [ pos++ ] = NULL; VarFileConv.BoolResultMplayerIsOk = conv_to_convert( PtrTabArgs, FALSE, MPLAYER_WMA_TO_WAV, "MPLAYER_WMA_TO_WAV"); - PtrTabArgs = filelc_RevoveTab( PtrTabArgs ); + PtrTabArgs = filelc_RemoveTab( PtrTabArgs ); conv.Bool_MAJ_select = TRUE; break; } @@ -639,7 +639,7 @@ PtrTabArgs [ pos++ ] = g_strdup (PConv->tmp_wav); PtrTabArgs [ pos++ ] = NULL; conv_to_convert( PtrTabArgs, FALSE, SHORTEN_SHN_TO_WAV, "SHORTEN_SHN_TO_WAV"); - PtrTabArgs = filelc_RevoveTab( PtrTabArgs ); + PtrTabArgs = filelc_RemoveTab( PtrTabArgs ); conv.Bool_MAJ_select = TRUE; break; } @@ -683,7 +683,7 @@ PtrTabArgs = filelc_get_command_line (¶m_filelc); pthread_mutex_unlock( &mutex ); conv_to_convert( PtrTabArgs, param_filelc.With_CommandLineUser, FLAC_WAV_TO_FLAC, "FLAC_WAV_TO_FLAC"); - PtrTabArgs = filelc_RevoveTab( PtrTabArgs ); + PtrTabArgs = filelc_RemoveTab( PtrTabArgs ); conv.Bool_MAJ_select = TRUE; fileconv_copy_src_to_dest( FILE_IS_FLAC, detail, PConv ); } @@ -710,7 +710,7 @@ PtrTabArgs = filelc_get_command_line (¶m_filelc); pthread_mutex_unlock( &mutex ); conv_to_convert( PtrTabArgs, param_filelc.With_CommandLineUser, MAC_WAV_TO_APE, "MAC_WAV_TO_APE"); - PtrTabArgs = filelc_RevoveTab( PtrTabArgs ); + PtrTabArgs = filelc_RemoveTab( PtrTabArgs ); conv.Bool_MAJ_select = TRUE; fileconv_copy_src_to_dest( FILE_IS_APE, detail, PConv ); } @@ -731,7 +731,7 @@ PtrTabArgs = filelc_get_command_line (¶m_filelc); pthread_mutex_unlock( &mutex ); conv_to_convert( PtrTabArgs, param_filelc.With_CommandLineUser, WAVPACK_WAV_TO_WAVPACK, "WAVPACK_WAV_TO_WAVPACK"); - PtrTabArgs = filelc_RevoveTab( PtrTabArgs ); + PtrTabArgs = filelc_RemoveTab( PtrTabArgs ); conv.Bool_MAJ_select = TRUE; fileconv_copy_src_to_dest( FILE_IS_WAVPACK, detail, PConv ); } @@ -761,7 +761,7 @@ ); conv_to_convert( PtrTabArgs, FALSE, SOX_WAV_TO_WAV, "SOX_WAV_TO_WAV"); - PtrTabArgs = filelc_RevoveTab( PtrTabArgs ); + PtrTabArgs = filelc_RemoveTab( PtrTabArgs ); conv_copy_src_to_dest( PConv->tmp_sox_24, PConv->tmp_sox); } @@ -786,7 +786,7 @@ PtrTabArgs = filelc_get_command_line (¶m_filelc); pthread_mutex_unlock( &mutex ); conv_to_convert( PtrTabArgs, param_filelc.With_CommandLineUser, OGGENC_WAV_TO_OGG, "OGGENC_WAV_TO_OGG"); - PtrTabArgs = filelc_RevoveTab( PtrTabArgs ); + PtrTabArgs = filelc_RemoveTab( PtrTabArgs ); conv.Bool_MAJ_select = TRUE; fileconv_copy_src_to_dest( FILE_IS_OGG, detail, PConv ); } @@ -819,7 +819,7 @@ PConv->tmp_sox_24 ); conv_to_convert( PtrTabArgs, FALSE, SOX_WAV_TO_WAV, "SOX_WAV_TO_WAV"); - PtrTabArgs = filelc_RevoveTab( PtrTabArgs ); + PtrTabArgs = filelc_RemoveTab( PtrTabArgs ); conv_copy_src_to_dest( PConv->tmp_sox_24, PConv->tmp_sox); } @@ -835,7 +835,7 @@ PtrTabArgs = filelc_get_command_line (¶m_filelc); pthread_mutex_unlock( &mutex ); conv_to_convert( PtrTabArgs, param_filelc.With_CommandLineUser, FAAC_WAV_TO_M4A, "FAAC_WAV_TO_M4A"); - PtrTabArgs = filelc_RevoveTab( PtrTabArgs ); + PtrTabArgs = filelc_RemoveTab( PtrTabArgs ); conv.Bool_MAJ_select = TRUE; fileconv_copy_src_to_dest( FILE_IS_M4A, detail, PConv ); } @@ -869,7 +869,7 @@ PConv->tmp_sox_24 ); conv_to_convert( PtrTabArgs, FALSE, SOX_WAV_TO_WAV, "SOX_WAV_TO_WAV"); - PtrTabArgs = filelc_RevoveTab( PtrTabArgs ); + PtrTabArgs = filelc_RemoveTab( PtrTabArgs ); conv_copy_src_to_dest( PConv->tmp_sox_24, PConv->tmp_sox); } @@ -889,7 +889,7 @@ PtrTabArgs [ pos++ ] = g_strdup ("44100"); PtrTabArgs [ pos++ ] = NULL; VarFileConv.BoolResultMplayerIsOk = conv_to_convert( PtrTabArgs, FALSE, MPLAYER_WAV_TO_WAV, "MPLAYER_WAV_TO_WAV"); - PtrTabArgs = filelc_RevoveTab( PtrTabArgs ); + PtrTabArgs = filelc_RemoveTab( PtrTabArgs ); VarFileConv.BoolResultMplayerIsOk = libutils_test_file_exist( PConv->tmp_sox_24 ); conv_copy_src_to_dest( PConv->tmp_sox_24, PConv->tmp_sox); } @@ -906,7 +906,7 @@ PtrTabArgs = filelc_get_command_line (¶m_filelc); pthread_mutex_unlock( &mutex ); conv_to_convert( PtrTabArgs, param_filelc.With_CommandLineUser, AACPLUSENC_WAV_TO_AAC, "AACPLUSENC_WAV_TO_AAC"); - PtrTabArgs = filelc_RevoveTab( PtrTabArgs ); + PtrTabArgs = filelc_RemoveTab( PtrTabArgs ); conv.Bool_MAJ_select = TRUE; fileconv_copy_src_to_dest( FILE_IS_AAC, detail, PConv ); } @@ -941,7 +941,7 @@ PConv->tmp_sox_24 ); conv_to_convert( PtrTabArgs, FALSE, SOX_WAV_TO_WAV, "SOX_WAV_TO_WAV"); - PtrTabArgs = filelc_RevoveTab( PtrTabArgs ); + PtrTabArgs = filelc_RemoveTab( PtrTabArgs ); conv_copy_src_to_dest( PConv->tmp_sox_24, PConv->tmp_sox); } @@ -961,7 +961,7 @@ PtrTabArgs [ pos++ ] = g_strdup ("44100"); PtrTabArgs [ pos++ ] = NULL; VarFileConv.BoolResultMplayerIsOk = conv_to_convert( PtrTabArgs, FALSE, MPLAYER_WAV_TO_WAV, "MPLAYER_WAV_TO_WAV"); - PtrTabArgs = filelc_RevoveTab( PtrTabArgs ); + PtrTabArgs = filelc_RemoveTab( PtrTabArgs ); VarFileConv.BoolResultMplayerIsOk = libutils_test_file_exist( PConv->tmp_sox_24 ); conv_copy_src_to_dest( PConv->tmp_sox_24, PConv->tmp_sox); } @@ -978,7 +978,7 @@ PtrTabArgs = filelc_get_command_line (¶m_filelc); pthread_mutex_unlock( &mutex ); conv_to_convert( PtrTabArgs, param_filelc.With_CommandLineUser, MPPENC_WAV_TO_MPC, "MPPENC_WAV_TO_MPC"); - PtrTabArgs = filelc_RevoveTab( PtrTabArgs ); + PtrTabArgs = filelc_RemoveTab( PtrTabArgs ); conv.Bool_MAJ_select = TRUE; fileconv_copy_src_to_dest( FILE_IS_MPC, detail, PConv ); } @@ -1003,7 +1003,7 @@ ); conv_to_convert( PtrTabArgs, FALSE, SOX_WAV_TO_WAV, "SOX_WAV_TO_WAV"); - PtrTabArgs = filelc_RevoveTab( PtrTabArgs ); + PtrTabArgs = filelc_RemoveTab( PtrTabArgs ); } else { // CORRECTION @@ -1031,7 +1031,7 @@ PtrTabArgs = filelc_get_command_line (¶m_filelc); pthread_mutex_unlock( &mutex ); conv_to_convert( PtrTabArgs, param_filelc.With_CommandLineUser, LAME_WAV_TO_MP3, "LAME_WAV_TO_MP3"); - PtrTabArgs = filelc_RevoveTab( PtrTabArgs ); + PtrTabArgs = filelc_RemoveTab( PtrTabArgs ); conv.Bool_MAJ_select = TRUE; fileconv_copy_src_to_dest( FILE_IS_MP3, detail, PConv ); } @@ -1177,31 +1177,31 @@ // WindScan_close (); PRINT("FIN TIMEOUT FILECONV"); - gtk_timeout_remove (conv.handler_timeout_conv); + g_source_remove (conv.handler_timeout_conv); file_pixbuf_update_glist (); fileaction_set_end (TYPE_CONVERSION); if( FALSE == VarFileConv.BoolResultMplayerIsOk ) { - wininfo_create ( + wind_info_init ( WindMain, - _("Erreur depuis MPLAYER !"), - _("Vous pouvez activer XCFA en ligne de commande avec: "), + _("Error since MPLAYER !"), + _("You can enable XCFA command line with: "), "\n", _("$ xcfa -verbose"), "\n", - _("pour consulter le type d'erreur renvoye par mplayer."), + _("to see the type of error returned by mplayer."), ""); VarFileConv.BoolResultMplayerIsOk = FALSE; } else if( FALSE == VarFileConv.BoolResultSoxIsOk ) { - wininfo_create ( + wind_info_init ( WindMain, - _("Erreur depuis SOX !"), - _("Vous pouvez activer XCFA en ligne de commande avec: "), + _("Error since SOX !"), + _("You can enable XCFA command line with: "), "\n", _("$ xcfa -verbose"), "\n", - _("pour consulter le type d'erreur renvoye par sox."), + _("to see the type of error returned by sox."), ""); VarFileConv.BoolResultSoxIsOk = FALSE; } @@ -1546,7 +1546,12 @@ { pthread_t nmr_tid; - WindScan_open ("Conversions files", WINDSCAN_PULSE); + // WindScan_open ("Conversions files", WINDSCAN_PULSE); + wind_scan_init( + WindMain, + "Conversions files", + WINDSCAN_PULSE + ); WindScan_set_label ("Conversions files ..."); conv_reset_struct (WindScan_close_request); @@ -1563,7 +1568,7 @@ pthread_create (&nmr_tid, NULL ,(void *)fileconv_thread_one, (void *)NULL); PRINT("DEBUT TIMEOUT FILECONV"); - conv.handler_timeout_conv = gtk_timeout_add( 100, fileconv_timeout, 0 ); + conv.handler_timeout_conv = g_timeout_add( 100, fileconv_timeout, 0 ); } diff -Nru xcfa-4.3.8/src/file.h xcfa-5.0.1/src/file.h --- xcfa-4.3.8/src/file.h 2014-01-06 07:16:58.000000000 +0000 +++ xcfa-5.0.1/src/file.h 2015-03-01 16:54:31.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : file.h * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright :( C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License @@ -29,19 +29,19 @@ #define file_h 1 typedef struct { - gboolean bool_tag_cd; // TRUE is CD-AUDIO else is FILE - gboolean bool_save; // TRUE -> save - gchar *Album; // %b - gchar *Artist; // %a - gchar *Title; // %d - gchar *Number; // %c - gint IntNumber; // - gchar *Genre; // %g - gint IntGenre; // - gchar *Year; // %e - gint IntYear; // - gchar *Comment; // - gchar *Description; // + gboolean bool_tag_cd; // TRUE is CD-AUDIO else is FILE + gboolean bool_save; // TRUE -> save + gchar *Album; // %b + gchar *Artist; // %a + gchar *Title; // %d + gchar *Number; // %c + gint IntNumber; // + gchar *Genre; // %g + gint IntGenre; // + gchar *Year; // %e + gint IntYear; // + gchar *Comment; // + gchar *Description; // } TAGS; // @@ -51,117 +51,117 @@ // typedef struct { - gint level; // Niveau en dBFS - gint NewLevel; // Nouveau niveau en dBFS + gint level; // Niveau en dBFS + gint NewLevel; // Nouveau niveau en dBFS } LEVEL_DBFS; typedef struct { - gchar *time; // Temps d'ecoute - guint SecTime; // Temps d'ecoute en secondes - gchar *hertz; // - TAGS *tags; // Tags + gchar *time; // Temps d'ecoute + guint SecTime; // Temps d'ecoute en secondes + gchar *hertz; // + TAGS *tags; // Tags } INFO_M4A; typedef struct { - gchar *time; // Temps d'ecoute - guint SecTime; // Temps d'ecoute en secondes - gchar *hertz; // - TAGS *tags; // Tags + gchar *time; // Temps d'ecoute + guint SecTime; // Temps d'ecoute en secondes + gchar *hertz; // + TAGS *tags; // Tags } INFO_AAC; typedef struct { - gboolean BoolBwf; // 'fmt ', 'bext', 'qlty', 'levl', 'link','axml' - gchar *time; // Temps d'ecoute - guint SecTime; // Temps d'ecoute en secondes - gchar *hertz; // Taux d'échantillonnage en hertz( qualité du son) - gchar *voie; // 1, 2, 4, 6 - gchar *bits; // 8, 16, ,24, 32 ou 64 - gchar *NewHertz; // Nouvelle valeur - gchar *NewVoie; // Nouvelle valeur - gchar *NewBits; // Nouvelle valeur - gboolean BoolConv; // TRUE si nouvelles valeurs differenetes de anciennes valeurs - TAGS *tags; // Tags - LEVEL_DBFS LevelDbfs; // + gboolean BoolBwf; // 'fmt ', 'bext', 'qlty', 'levl', 'link','axml' + gchar *time; // Temps d'ecoute + guint SecTime; // Temps d'ecoute en secondes + gchar *hertz; // Taux d'échantillonnage en hertz( qualité du son) + gchar *voie; // 1, 2, 4, 6 + gchar *bits; // 8, 16, ,24, 32 ou 64 + gchar *NewHertz; // Nouvelle valeur + gchar *NewVoie; // Nouvelle valeur + gchar *NewBits; // Nouvelle valeur + gboolean BoolConv; // TRUE si nouvelles valeurs differenetes de anciennes valeurs + TAGS *tags; // Tags + LEVEL_DBFS LevelDbfs; // } INFO_WAV; -typedef enum { // type: bitrate: +typedef enum { // type: bitrate: NONE_MPEG = -1, - MPEG_1 = 0, // MPV_1 [ 32 40 48 56 64 80 96 112 128 160 192 224 256 320 ] - MPEG_2, // MPV_2 [ 8 16 24 32 40 48 56 64 80 96 112 128 144 160 ] - MPEG_25 // MPV_25 [ 8 16 24 32 40 48 56 64 80 96 112 128 144 160 ] + MPEG_1 = 0, // MPV_1 [ 32 40 48 56 64 80 96 112 128 160 192 224 256 320 ] + MPEG_2, // MPV_2 [ 8 16 24 32 40 48 56 64 80 96 112 128 144 160 ] + MPEG_25 // MPV_25 [ 8 16 24 32 40 48 56 64 80 96 112 128 144 160 ] } MPEG_IS; typedef struct { - gchar *bitrate; // - gchar *time; // Temps d'ecoute - guint SecTime; // Temps d'ecoute en secondes - MPEG_IS mpeg_is; // - gchar *size; // - TAGS *tags; // Tags - LEVEL_DBFS LevelDbfs; // + gchar *bitrate; // + gchar *time; // Temps d'ecoute + guint SecTime; // Temps d'ecoute en secondes + MPEG_IS mpeg_is; // + gchar *size; // + TAGS *tags; // Tags + LEVEL_DBFS LevelDbfs; // } INFO_MP3; typedef struct { - gchar *Channels; // - gchar *Rate; // - gchar *Nominal_bitrate; // - gchar *time; // Temps d'ecoute - guint SecTime; // Temps d'ecoute en secondes - gchar *size; // - TAGS *tags; // Tags - LEVEL_DBFS LevelDbfs; // Datas du dBFS + gchar *Channels; // + gchar *Rate; // + gchar *Nominal_bitrate; // + gchar *time; // Temps d'ecoute + guint SecTime; // Temps d'ecoute en secondes + gchar *size; // + TAGS *tags; // Tags + LEVEL_DBFS LevelDbfs; // Datas du dBFS } INFO_OGG; typedef struct { - gchar *time; // Temps d'ecoute - guint SecTime; // Temps d'ecoute en secondes - TAGS *tags; // Tags + gchar *time; // Temps d'ecoute + guint SecTime; // Temps d'ecoute en secondes + TAGS *tags; // Tags } INFO_FLAC; typedef struct { - TAGS *tags; // Tags + TAGS *tags; // Tags } INFO_WMA; typedef struct { - TAGS *tags; // Tags + TAGS *tags; // Tags } INFO_RM; typedef struct { - TAGS *tags; // Tags + TAGS *tags; // Tags } INFO_DTS; typedef struct { - TAGS *tags; // Tags + TAGS *tags; // Tags } INFO_AIFF; typedef struct { - gchar *namefile; // Nom complet du fichier - TAGS *tags; // Tags + gchar *namefile; // Nom complet du fichier + TAGS *tags; // Tags } INFO_MPC; typedef struct { - TAGS *tags; // Tags - gchar *time; // Temps d'ecoute - guint SecTime; // Temps d'ecoute en secondes - gchar *size; // + TAGS *tags; // Tags + gchar *time; // Temps d'ecoute + guint SecTime; // Temps d'ecoute en secondes + gchar *size; // } INFO_SHN; typedef struct { - TAGS *tags; // Tags - gchar *time; // Temps d'ecoute - guint SecTime; // Temps d'ecoute en secondes - gchar *size; // + TAGS *tags; // Tags + gchar *time; // Temps d'ecoute + guint SecTime; // Temps d'ecoute en secondes + gchar *size; // } INFO_APE; typedef struct { - TAGS *tags; // Tags - gchar *time; // Temps d'ecoute - guint SecTime; // Temps d'ecoute en secondes - gchar *size; // + TAGS *tags; // Tags + gchar *time; // Temps d'ecoute + guint SecTime; // Temps d'ecoute en secondes + gchar *size; // } INFO_WAVPACK; typedef struct { - TAGS *tags; // Tags + TAGS *tags; // Tags } INFO_AC3; /* @@ -192,13 +192,13 @@ */ typedef struct { - gboolean Bool_Conv; // TRUE si conversion - gchar *destwav; // Temporaire: Pathname - gchar *destsox; // Temporaire: Pathname - gchar *destmp3; // Temporaire: Pathname - gchar *destogg; // Temporaire: Pathname - gchar *destfile; // Destination du fichier apres rectification - gchar *Bitrate; // Le bitrate actuel + gboolean Bool_Conv; // TRUE si conversion + gchar *destwav; // Temporaire: Pathname + gchar *destsox; // Temporaire: Pathname + gchar *destmp3; // Temporaire: Pathname + gchar *destogg; // Temporaire: Pathname + gchar *destfile; // Destination du fichier apres rectification + gchar *Bitrate; // Le bitrate actuel } CONV_FIC_MP3OGG; // @@ -208,11 +208,11 @@ // typedef struct { - gchar *Path; // Path du fichier source - gchar *TmpSrc; // $TMP/original - gchar *TmpDest; // $TMP/modifie - gchar *TmpMplayer; // $TMP/ - gchar *NameDest; // Copie vers la destination + gchar *Path; // Path du fichier source + gchar *TmpSrc; // $TMP/original + gchar *TmpDest; // $TMP/modifie + gchar *TmpMplayer; // $TMP/ + gchar *NameDest; // Copie vers la destination } CONV_FIC_WAV; // @@ -225,7 +225,7 @@ FILE_IS_NONE = 0, FILE_IS_FLAC, FILE_IS_WAV, - // FILE_IS_BFW, // BROADCAST WAVE FORMAT + // FILE_IS_BFW, // BROADCAST WAVE FORMAT FILE_IS_MP3, FILE_IS_OGG, /* Les fichiers au format AAC, portant l'extension @@ -293,19 +293,19 @@ */ typedef enum { NORM_NONE = 0, - NORM_READY_FOR_SELECT, // Pret a la selection wav,mp3, ogg - NORM_PEAK_ALBUM, // NORM_PEAK_ALBUM - NORM_PEAK, // NORM_PEAK - NORM_RMS_MIX_ALBUM, //( scan) NORM_RMS_MIX_ALBUM - NORM_RMS_FIX //( scan) NORM_RMS_FIX + NORM_READY_FOR_SELECT, // Pret a la selection wav,mp3, ogg + NORM_PEAK_ALBUM, // NORM_PEAK_ALBUM + NORM_PEAK, // NORM_PEAK + NORM_RMS_MIX_ALBUM, //( scan) NORM_RMS_MIX_ALBUM + NORM_RMS_FIX //( scan) NORM_RMS_FIX } ETAT_NORMALISE; typedef enum { - RPG_NONE = 0, // Attente de selection - RPG_ATTENTE, // Attente de selection - RPG_PISTE, // Mode PISTE - RPG_ALBUM, // Mode ALBUM - RPG_EFFACER // Mode EFFACER + RPG_NONE = 0, // Attente de selection + RPG_ATTENTE, // Attente de selection + RPG_PISTE, // Mode PISTE + RPG_ALBUM, // Mode ALBUM + RPG_EFFACER // Mode EFFACER } ETAT_REPLAYGAIN; typedef enum { @@ -346,56 +346,56 @@ typedef struct { - ETAT_PLAY_FILE EtatPlay; // - gchar *name_dest; // Nom du fichier de destination sans le path ni l'extension - gchar *dest_flac; // - gchar *dest_wav; // - gchar *dest_mp3; // - gchar *dest_ogg; // - gchar *dest_m4a; // - gchar *dest_aac; // - gchar *dest_mpc; // - gchar *dest_ape; // - gchar *dest_wavpack; // - gchar *dest_wavpack_md5; // - gchar *tmp_flac; // - gchar *tmp_wav; // - gchar *tmp_sox; // wav to wav - gchar *tmp_sox_24; // wav to wav - gchar *tmp_mp3; // - gchar *tmp_ogg; // - gchar *tmp_m4a; // - gchar *tmp_aac; // - gchar *tmp_shn; // - gchar *tmp_wma; // - gchar *tmp_rm; // - gchar *tmp_dts; // - gchar *tmp_aiff; // - gchar *tmp_mpc; // - gchar *tmp_ape; // - gchar *tmp_wavpack; // - gchar *tmp_wavpack_md5; // - gchar *tmp_ac3; // - gboolean BoolEtatConv [ ETAT_BOOL_TOTAL ]; // - ETAT_CONV_FILE Etat_Flac; // - ETAT_CONV_FILE Etat_Wav; // - ETAT_CONV_FILE Etat_Mp3; // - ETAT_CONV_FILE Etat_Ogg; // - ETAT_CONV_FILE Etat_m4a; // - ETAT_CONV_FILE Etat_aac; // - ETAT_CONV_FILE Etat_Mpc; // - ETAT_CONV_FILE Etat_Ape; // - ETAT_CONV_FILE Etat_wavpack; // - gboolean BoolNewString; // + ETAT_PLAY_FILE EtatPlay; // + gchar *name_dest; // Nom du fichier de destination sans le path ni l'extension + gchar *dest_flac; // + gchar *dest_wav; // + gchar *dest_mp3; // + gchar *dest_ogg; // + gchar *dest_m4a; // + gchar *dest_aac; // + gchar *dest_mpc; // + gchar *dest_ape; // + gchar *dest_wavpack; // + gchar *dest_wavpack_md5; // + gchar *tmp_flac; // + gchar *tmp_wav; // + gchar *tmp_sox; // wav to wav + gchar *tmp_sox_24; // wav to wav + gchar *tmp_mp3; // + gchar *tmp_ogg; // + gchar *tmp_m4a; // + gchar *tmp_aac; // + gchar *tmp_shn; // + gchar *tmp_wma; // + gchar *tmp_rm; // + gchar *tmp_dts; // + gchar *tmp_aiff; // + gchar *tmp_mpc; // + gchar *tmp_ape; // + gchar *tmp_wavpack; // + gchar *tmp_wavpack_md5; // + gchar *tmp_ac3; // + gboolean BoolEtatConv [ ETAT_BOOL_TOTAL ]; + ETAT_CONV_FILE Etat_Flac; // + ETAT_CONV_FILE Etat_Wav; // + ETAT_CONV_FILE Etat_Mp3; // + ETAT_CONV_FILE Etat_Ogg; // + ETAT_CONV_FILE Etat_m4a; // + ETAT_CONV_FILE Etat_aac; // + ETAT_CONV_FILE Etat_Mpc; // + ETAT_CONV_FILE Etat_Ape; // + ETAT_CONV_FILE Etat_wavpack; // + gboolean BoolNewString; // } CONV_FIC; typedef enum { - STRUCT_NO_REMOVE = 0, // - STRUCT_ALL_REMOVE, // Remove in treeview ALL FILE - STRUCT_WAV_REMOVE_WAV, // Remove in treeview WAV - STRUCT_MP3OGG_REMOVE, // Remove in treeview MP3OGG - STRUCT_SPLIT_REMOVE // Remove in treeview SPLIT + STRUCT_NO_REMOVE = 0, // + STRUCT_ALL_REMOVE, // Remove in treeview ALL FILE + STRUCT_WAV_REMOVE_WAV, // Remove in treeview WAV + STRUCT_MP3OGG_REMOVE, // Remove in treeview MP3OGG + STRUCT_SPLIT_REMOVE // Remove in treeview SPLIT } TYPE_REMOVE_STRUCT; @@ -407,41 +407,41 @@ typedef struct { - gchar *namefile; // Nom complet du fichier + gchar *namefile; // Nom complet du fichier gchar *NameFileCopyFromNormalizate; // - gchar *NameDest; // Nom de la destination + gchar *NameDest; // Nom de la destination TYPE_FILE_IS type_infosong_file_is; // Type du fichier - void *info; // En fonction du type de fichier pointeur sur INFO_xxx - ETAT_TRASH_FILE EtatTrash; // Etat pour la poubelle - ETAT_SELECTION EtatSelection_Wav; // Etat de la selection WAV + void *info; // En fonction du type de fichier pointeur sur INFO_xxx + ETAT_TRASH_FILE EtatTrash; // Etat pour la poubelle + ETAT_SELECTION EtatSelection_Wav; // Etat de la selection WAV ETAT_SELECTION EtatSelection_Flac; // Etat de la selection FLAC - ETAT_SELECTION EtatSelection_Ape; // Etat de la selection APE + ETAT_SELECTION EtatSelection_Ape; // Etat de la selection APE ETAT_SELECTION EtatSelection_WavPack; // Etat de la selection WAVPACK - ETAT_SELECTION EtatSelection_Ogg; // Etat de la selection OGG - ETAT_SELECTION EtatSelection_M4a; // Etat de la selection M4A - ETAT_SELECTION EtatSelection_Aac; // Etat de la selection AAC - ETAT_SELECTION EtatSelection_Mpc; // Etat de la selection MPC - ETAT_SELECTION EtatSelection_Mp3; // Etat de la selection MP3 - ETAT_NORMALISE Etat_Normalise; // Etat de la selection de normalisation - ETAT_SCAN Etat_Scan; // Etat de la selection du scan - gint LevelMix; // Niveau du MIX - ETAT_REPLAYGAIN Etat_ReplayGain; // Etat de la selection du gain - CONV_FIC *PConv; // Pointeur pour conversion de tous les fichiers - CONV_FIC_WAV *PConvWav; // Pointeur pour conversion WAV TO WAV - CONV_FIC_MP3OGG *PConvMp3Ogg; // Pointeur pour modification bitrate mp3 et ogg - TYPE_REMOVE_STRUCT BoolRemove; // TRUE si suppression de la liste sinon FALSE + ETAT_SELECTION EtatSelection_Ogg; // Etat de la selection OGG + ETAT_SELECTION EtatSelection_M4a; // Etat de la selection M4A + ETAT_SELECTION EtatSelection_Aac; // Etat de la selection AAC + ETAT_SELECTION EtatSelection_Mpc; // Etat de la selection MPC + ETAT_SELECTION EtatSelection_Mp3; // Etat de la selection MP3 + ETAT_NORMALISE Etat_Normalise; // Etat de la selection de normalisation + ETAT_SCAN Etat_Scan; // Etat de la selection du scan + gint LevelMix; // Niveau du MIX + ETAT_REPLAYGAIN Etat_ReplayGain; // Etat de la selection du gain + CONV_FIC *PConv; // Pointeur pour conversion de tous les fichiers + CONV_FIC_WAV *PConvWav; // Pointeur pour conversion WAV TO WAV + CONV_FIC_MP3OGG *PConvMp3Ogg; // Pointeur pour modification bitrate mp3 et ogg + TYPE_REMOVE_STRUCT BoolRemove; // TRUE si suppression de la liste sinon FALSE // MP3: DEBIT MODE - gint Mp3_Debit; // - gint Mp3_Mode; // + gint Mp3_Debit; // + gint Mp3_Mode; // // OGG: DEBIT MANAGED DOWNMIX - gint Ogg_Debit; // - gint Ogg_Managed; // - gint Ogg_Downmix; // - gboolean BoolChanged; // + gint Ogg_Debit; // + gint Ogg_Managed; // + gint Ogg_Downmix; // + gboolean BoolChanged; // } DETAIL; -extern GList *entetefile; // pointeur sur DETAIL +extern GList *entetefile; // pointeur sur DETAIL // // --------------------------------------------------------------------------- @@ -449,29 +449,29 @@ // --------------------------------------------------------------------------- // typedef struct { - GtkComboBox *AdrComboboxNormalise; // Adresse + GtkComboBox *AdrComboboxNormalise; // Adresse GtkSpinButton *AdrSpinbuttonNormalise; // Adresse - GtkWidget *Adr_Label_Number; // Adresse - GtkWidget *Adr_scroll; // Adresse - GtkListStore *Adr_List_Store; // Adresse - GtkTreeModel *Adr_Tree_Model; // Adresse - GtkTreeSelection *Adr_Line_Selected; // Adresse - GtkWidget *Adr_TreeView; // Adresse - GtkComboBox *Adr_combobox_DestFile; // Adresse - GtkComboBox *Adr_combobox_select_type; // Adresse - GtkComboBox *Adr_combobox_normalise; // Adresse - GdkPixbuf *Pixbuf_Trash; // trash.png - GdkPixbuf *Pixbuf_NoTrash; // coche.png - GdkPixbuf *Pixbuf_FilePlay; // play.png - GdkPixbuf *Pixbuf_FileStop; // sol.png - GdkPixbuf *Pixbuf_Coche; // coche.png - GdkPixbuf *Pixbuf_Coche_exist; // coche_exist.png - GdkPixbuf *Pixbuf_Selected; // selected.png - GdkPixbuf *Pixbuf_Selected_exist; // selected_exist.png - GdkPixbuf *Pixbuf_Selected_expert; // selected_expert.png + GtkWidget *Adr_Label_Number; // Adresse + GtkWidget *Adr_scroll; // Adresse + GtkListStore *Adr_List_Store; // Adresse + GtkTreeModel *Adr_Tree_Model; // Adresse + GtkTreeSelection *Adr_Line_Selected; // Adresse + GtkWidget *Adr_TreeView; // Adresse + GtkComboBox *Adr_combobox_DestFile; // Adresse + GtkComboBox *Adr_combobox_select_type; // Adresse + GtkComboBox *Adr_combobox_normalise; // Adresse + GdkPixbuf *Pixbuf_Trash; // trash.png + GdkPixbuf *Pixbuf_NoTrash; // coche.png + GdkPixbuf *Pixbuf_FilePlay; // play.png + GdkPixbuf *Pixbuf_FileStop; // sol.png + GdkPixbuf *Pixbuf_Coche; // coche.png + GdkPixbuf *Pixbuf_Coche_exist; // coche_exist.png + GdkPixbuf *Pixbuf_Selected; // selected.png + GdkPixbuf *Pixbuf_Selected_exist; // selected_exist.png + GdkPixbuf *Pixbuf_Selected_expert; // selected_expert.png GdkPixbuf *Pixbuf_Selected_expert_exist; // selected_expert_exist.png - GdkPixbuf *Pixbuf_Normalize_Coche; // normalize2.png - GdkPixbuf *Pixbuf_NotInstall; // not_install.png + GdkPixbuf *Pixbuf_Normalize_Coche; // normalize2.png + GdkPixbuf *Pixbuf_NotInstall; // not_install.png GtkCellRenderer *Renderer; GtkTreeViewColumn *Adr_ColumnFilePlay; GtkTreeViewColumn *Adr_ColumnFileTrash; @@ -490,28 +490,28 @@ GtkTreeViewColumn *Adr_ColumnFileReplayGain; GtkTreeViewColumn *Adr_ColumnFileName; gint PageNum; - GdkPixbuf *Pixbuf_rpg_piste; // rpg_piste.png - GdkPixbuf *Pixbuf_rpg_album; // rpg_album.png - GdkPixbuf *Pixbuf_rpg_effacer; // rpg_effacer.png - GdkPixbuf *Pixbuf_rpg_wait; // rpg_wait.png - - GdkPixbuf *Pixbuf_norm_fix; // norm_fix.png - GdkPixbuf *Pixbuf_norm_mix; // norm_mix.png - GdkPixbuf *Pixbuf_norm_peak; // norm_peak.png - GdkPixbuf *Pixbuf_norm_wait; // norm_wait.png + GdkPixbuf *Pixbuf_rpg_piste; // rpg_piste.png + GdkPixbuf *Pixbuf_rpg_album; // rpg_album.png + GdkPixbuf *Pixbuf_rpg_effacer; // rpg_effacer.png + GdkPixbuf *Pixbuf_rpg_wait; // rpg_wait.png + + GdkPixbuf *Pixbuf_norm_fix; // norm_fix.png + GdkPixbuf *Pixbuf_norm_mix; // norm_mix.png + GdkPixbuf *Pixbuf_norm_peak; // norm_peak.png + GdkPixbuf *Pixbuf_norm_wait; // norm_wait.png } VAR_FILE; extern VAR_FILE var_file; typedef struct { - GtkWidget *Adr_scroll; // Adresse - GtkListStore *Adr_List_Store; // Adresse - GtkTreeModel *Adr_Tree_Model; // Adresse - GtkTreeSelection *Adr_Line_Selected; // Adresse - GtkWidget *Adr_TreeView; // Adresse - GtkWidget *Adr_Entry_Dest; // Adresse - GdkPixbuf *Pixbuf_NotInstall; // not_install.png + GtkWidget *Adr_scroll; // Adresse + GtkListStore *Adr_List_Store; // Adresse + GtkTreeModel *Adr_Tree_Model; // Adresse + GtkTreeSelection *Adr_Line_Selected; // Adresse + GtkWidget *Adr_TreeView; // Adresse + GtkWidget *Adr_Entry_Dest; // Adresse + GdkPixbuf *Pixbuf_NotInstall; // not_install.png GtkCellRenderer *Renderer; GtkTreeViewColumn *Adr_ColumnFileWavHertz; GtkTreeViewColumn *Adr_ColumnFileWavVoie; @@ -526,15 +526,15 @@ extern VAR_FILE_WAV var_file_wav; typedef struct { - GtkWidget *Adr_scroll; // Adresse - GtkListStore *Adr_List_Store; // Adresse - GtkTreeModel *Adr_Tree_Model; // Adresse - GtkTreeSelection *Adr_Line_Selected; // Adresse - GtkWidget *Adr_TreeView; // Adresse - GtkWidget *Adr_Entry_Dest; // Adresse - GtkWidget *Adr_Button_Dest; // Adresse - GtkComboBox *Adr_combobox_DestFile; // Adresse - GdkPixbuf *Pixbuf_NotInstall; // not_install.png + GtkWidget *Adr_scroll; // Adresse + GtkListStore *Adr_List_Store; // Adresse + GtkTreeModel *Adr_Tree_Model; // Adresse + GtkTreeSelection *Adr_Line_Selected; // Adresse + GtkWidget *Adr_TreeView; // Adresse + GtkWidget *Adr_Entry_Dest; // Adresse + GtkWidget *Adr_Button_Dest; // Adresse + GtkComboBox *Adr_combobox_DestFile; // Adresse + GdkPixbuf *Pixbuf_NotInstall; // not_install.png GtkCellRenderer *Renderer; GtkTreeViewColumn *Adr_ColumnFileMp3OggType; GtkTreeViewColumn *Adr_ColumnFileMp3OggBitrate; @@ -547,18 +547,17 @@ extern VAR_FILE_MP3OGG var_file_mp3ogg; typedef struct { - GtkWidget *Adr_scroll; // Adresse - GtkListStore *Adr_List_Store; // Adresse - GtkTreeModel *Adr_Tree_Model; // Adresse - GtkTreeSelection *Adr_Line_Selected; // Adresse - GtkWidget *Adr_TreeView; // Adresse + GtkWidget *Adr_scroll; // Adresse + GtkListStore *Adr_List_Store; // Adresse + GtkTreeModel *Adr_Tree_Model; // Adresse + GtkTreeSelection *Adr_Line_Selected; // Adresse + GtkWidget *Adr_TreeView; // Adresse GtkWidget *Adr_entry_tag_album; GtkWidget *Adr_entry_tag_title; GtkWidget *Adr_entry_tag_artist; GtkWidget *Adr_entry_tag_comment; GtkWidget *Adr_spinbutton_tag_year; GtkWidget *Adr_spinbutton_tag_track; - GtkComboBox *Adr_combobox_tag_genre; GtkWidget *Adr_label_tag_change; GtkWidget *Adr_table_tag; GtkCellRenderer *Renderer; @@ -673,6 +672,7 @@ gboolean FileTags_del_file_clicked( void ); void FileTags_appliquer_clicked( void ); void FileTags_set_flag_buttons( void ); +void FileTags_changed_all_tags (gint TYPE_TAG); // // --------------------------------------------------------------------------- // FILE_WAV_CONV.C @@ -717,7 +717,7 @@ // Allocate Tab Args // gchar **filelc_AllocTabArgs( void ); -gchar **filelc_RevoveTab( gchar **p_PtrTabArgs ); +gchar **filelc_RemoveTab( gchar **p_PtrTabArgs ); // gint filelc_get_command_line_remove( void ); // gint filelc_get_command_line_nice( void ); gchar **filelc_get_command_line( PARAM_FILELC *param_filelc ); @@ -731,9 +731,6 @@ // void filetrash_action( void ); gboolean filetrash_ok( void ); -gboolean filetrash_move_to_trash( gchar *Name ); -gchar *filetrash_get_trash( void ); -void filetrash_test_trash_is_ok( void ); #endif diff -Nru xcfa-4.3.8/src/file_lc.c xcfa-5.0.1/src/file_lc.c --- xcfa-4.3.8/src/file_lc.c 2013-06-27 16:00:54.000000000 +0000 +++ xcfa-5.0.1/src/file_lc.c 2015-01-30 16:01:16.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : file_lc.c * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License @@ -68,7 +68,7 @@ // // Remove Tab Args // -gchar **filelc_RevoveTab( gchar **p_PtrTabArgs ) +gchar **filelc_RemoveTab( gchar **p_PtrTabArgs ) { gint i; @@ -402,6 +402,30 @@ if (Config.BoolGenreTag && param_filelc->tags && param_filelc->tags->Genre && *param_filelc->tags->Genre) { + +/** +NAME + lame - create mp3 audio files + +SYNOPSIS + lame [options] + +DESCRIPTION + LAME is a program which can be used to create compressed audio files. + (Lame ain't an MP3 encoder). + These audio files can be played back by popular MP3 players such as mpg123 or madplay. + To read from stdin, use "-" for . + To write to stdout, use "-" for . + +OPTIONS + ID3 tag options: + + Input options: + --tg genre + audio/song genre (name or number in list) + +*/ + /** gint value = 147; if (param_filelc->tags->bool_tag_cd == FALSE) { @@ -410,10 +434,15 @@ value = param_filelc->tags->IntGenre; } if (value < 0 || value > 147) value = 147; - /*New = g_list_append (New, g_strdup ("--tg")); - New = g_list_append (New, g_strdup_printf ("%d", value));*/ + // New = g_list_append (New, g_strdup ("--tg")); + // New = g_list_append (New, g_strdup_printf ("%d", value)); PtrTabArgs [ pos++ ] = g_strdup ("--tg"); PtrTabArgs [ pos++ ] = g_strdup_printf ("%d", value); + */ + PtrTabArgs [ pos++ ] = g_strdup ("--tg"); + PtrTabArgs [ pos++ ] = g_strdup_printf ("%s", param_filelc->tags->Genre); + + } if (Config.BoolYearTag && param_filelc->tags && param_filelc->tags->Year && *param_filelc->tags->Year) { diff -Nru xcfa-4.3.8/src/file_mp3ogg.c xcfa-5.0.1/src/file_mp3ogg.c --- xcfa-4.3.8/src/file_mp3ogg.c 2013-03-21 21:40:09.000000000 +0000 +++ xcfa-5.0.1/src/file_mp3ogg.c 2015-02-06 06:56:50.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : file_mp3ogg.c * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License @@ -89,7 +89,6 @@ COLUMN_FILEMP3OGG_SIZE, COLUMN_FILEMP3OGG_TIME, COLUMN_FILEMP3OGG_NAME, - COLUMN_FILEMP3OGG_COLOR, COLUMN_FILEMP3OGG_POINTER_STRUCT, COLUMN_FILE_NUM @@ -506,7 +505,7 @@ COLUMN_FILEMP3OGG_SIZE, file_get_size (detail), COLUMN_FILEMP3OGG_TIME, file_get_time (detail), COLUMN_FILEMP3OGG_NAME, NameDest, - COLUMN_FILEMP3OGG_COLOR, &YellowColor, + // COLUMN_FILEMP3OGG_COLOR, &YellowColor, COLUMN_FILEMP3OGG_POINTER_STRUCT, detail, -1); @@ -595,7 +594,7 @@ gtk_tree_selection_unselect_all (var_file_mp3ogg.Adr_Line_Selected); gtk_tree_selection_select_all (var_file_mp3ogg.Adr_Line_Selected); } - if (keys.keyval == GDK_Delete) { + if (keys.keyval == GDK_KEY_Delete) { GtkTreeIter iter; if (gtk_tree_model_get_iter_first (var_file_mp3ogg.Adr_Tree_Model, &iter)) { on_file_button_del_file_clicked (NULL, NULL); @@ -621,8 +620,11 @@ gboolean BoolSelectColNom = FALSE; gboolean BoolSelectNewBitrate = FALSE; - // SI PAS DANS LE TREEVIEW - gdk_window_get_pointer (((GdkEventButton*)event)->window, &x, &y, &state); + /* Si pas de selection a cet endroit retour */ + GdkDeviceManager *manager = gdk_display_get_device_manager( gdk_display_get_default() ); + GdkDevice *device = gdk_device_manager_get_client_pointer( manager ); + gdk_window_get_device_position( ((GdkEventButton*)event)->window, device, &x, &y, &state ); + // gdk_window_get_pointer (((GdkEventButton*)event)->window, &x, &y, &state); if (FALSE == gtk_tree_view_get_path_at_pos (GTK_TREE_VIEW(treeview), x, y, &path, &column, &Pos_X, &Pos_Y)) { @@ -665,7 +667,7 @@ StatusBar_set_mess( NOTEBOOK_FICHIERS, _STATUSBAR_SIMPLE_, detail->namefile ); } else if( BoolSelectNewBitrate ) { - StatusBar_set_mess( NOTEBOOK_FICHIERS, _STATUSBAR_SIMPLE_, _("Click droit: acces popup") ); + StatusBar_set_mess( NOTEBOOK_FICHIERS, _STATUSBAR_SIMPLE_, _("Right click: access popup") ); } StatusBar_puts( ); @@ -674,17 +676,20 @@ } // // -static void FileMp3Ogg_drag_data_received (GtkWidget *widget, - GdkDragContext *drag_context, - gint x, - gint y, - GtkSelectionData *data, - guint info, - guint time) -{ - /* Une copie ne peut aller vers elle meme !!! */ - if (gtk_drag_get_source_widget(drag_context) != widget) { - dragndrop_list_drag_data (widget, (gchar *)data->data); +static void FileMp3Ogg_drag_data_received( + GtkWidget *widget, + GdkDragContext *context, + gint x, + gint y, + GtkSelectionData *data, + guint info, + guint time, + gpointer user_data) +{ + // Une copie ne peut aller vers elle meme !!! */ + if (gtk_drag_get_source_widget(context) != widget) { + // dragndrop_list_drag_data (widget, (gchar *)data->data); + dragndrop_list_drag_data( widget, (gchar*)gtk_selection_data_get_data( data )); } } // @@ -725,7 +730,8 @@ gtk_selection_data_set( selection_data, // GDK_SELECTION_TYPE_STRING, - selection_data->target, + // selection_data->target, + GDK_POINTER_TO_ATOM(gtk_selection_data_get_data( selection_data )), 8, (guchar *)text, strlen( text ) @@ -896,7 +902,7 @@ renderer = gtk_cell_renderer_text_new (); g_object_set (renderer, "xalign", 0.5, NULL); var_file_mp3ogg.Adr_ColumnFileMp3OggBitrate = - column = gtk_tree_view_column_new_with_attributes (_("Bitrate"), + column = gtk_tree_view_column_new_with_attributes ("Bitrate", renderer, "text", COLUMN_FILEMP3OGG_BITRATE, NULL); @@ -912,7 +918,7 @@ renderer = gtk_cell_renderer_text_new (); g_object_set (renderer, "xalign", 0.5, NULL); var_file_mp3ogg.Adr_ColumnFileMp3OggNewBitrate = - column = gtk_tree_view_column_new_with_attributes (_("Nouveau bitrate"), + column = gtk_tree_view_column_new_with_attributes (_("New bitrate"), renderer, "markup", COLUMN_FILEMP3OGG_NEWBITRATE, NULL); @@ -926,7 +932,7 @@ renderer = gtk_cell_renderer_text_new (); g_object_set (renderer, "xalign", 0.5, NULL); var_file_mp3ogg.Adr_ColumnFileMp3OggSize = - column = gtk_tree_view_column_new_with_attributes (_("Taille"), + column = gtk_tree_view_column_new_with_attributes (_("Size"), renderer, "text", COLUMN_FILEMP3OGG_SIZE, NULL); @@ -940,7 +946,7 @@ renderer = gtk_cell_renderer_text_new (); g_object_set (renderer, "xalign", 0.5, NULL); var_file_mp3ogg.Adr_ColumnFileMp3OggTime = - column = gtk_tree_view_column_new_with_attributes (_("Temps"), + column = gtk_tree_view_column_new_with_attributes (_("Time"), renderer, "text", COLUMN_FILEMP3OGG_TIME, NULL); @@ -955,10 +961,10 @@ renderer = gtk_cell_renderer_text_new (); g_object_set (renderer, "xalign", 0.5, NULL); var_file_mp3ogg.Adr_ColumnFileMp3OggName = - column = gtk_tree_view_column_new_with_attributes (_("Nom"), + column = gtk_tree_view_column_new_with_attributes (_("Name"), renderer, "markup", COLUMN_FILEMP3OGG_NAME, - "background-gdk", COLUMN_FILEMP3OGG_COLOR, + // "background-gdk", COLUMN_FILEMP3OGG_COLOR, NULL); gtk_tree_view_column_set_sizing (GTK_TREE_VIEW_COLUMN (column), GTK_TREE_VIEW_COLUMN_FIXED); @@ -986,13 +992,13 @@ G_TYPE_STRING, /* COLUMN_FILEMP3OGG_SIZE */ G_TYPE_STRING, /* COLUMN_FILEMP3OGG_TIME */ G_TYPE_STRING, /* COLUMN_FILEMP3OGG_NAME */ - GDK_TYPE_COLOR, /* COLUMN_FILEMP3OGG_COLOR */ + // GDK_TYPE_COLOR, /* COLUMN_FILEMP3OGG_COLOR */ G_TYPE_POINTER /* COLUMN_FILEMP3OGG_POINTER_STRUCT */ ); var_file_mp3ogg.Adr_Tree_Model = model = GTK_TREE_MODEL (store); var_file_mp3ogg.Adr_TreeView = treeview = gtk_tree_view_new_with_model (model); - gtk_tree_view_set_rules_hint (GTK_TREE_VIEW (treeview), TRUE); + // gtk_tree_view_set_rules_hint (GTK_TREE_VIEW (treeview), TRUE); gtk_tree_selection_set_mode (gtk_tree_view_get_selection (GTK_TREE_VIEW (treeview)), GTK_SELECTION_MULTIPLE); // GTK_SELECTION_BROWSE MULTIPLE g_object_unref (model); gtk_container_add (GTK_CONTAINER (widget), treeview); diff -Nru xcfa-4.3.8/src/file_mp3ogg_conv.c xcfa-5.0.1/src/file_mp3ogg_conv.c --- xcfa-4.3.8/src/file_mp3ogg_conv.c 2014-01-20 15:15:26.000000000 +0000 +++ xcfa-5.0.1/src/file_mp3ogg_conv.c 2015-02-06 06:57:49.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : file_mp3ogg_conv.c * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License @@ -128,7 +128,7 @@ PtrTabArgs [ pos++ ] = g_strdup ("44100"); PtrTabArgs [ pos++ ] = NULL; conv_to_convert( PtrTabArgs, FALSE, MPLAYER_WAV_TO_WAV, "MPLAYER_WAV_TO_WAV"); - PtrTabArgs = filelc_RevoveTab( PtrTabArgs ); + PtrTabArgs = filelc_RemoveTab( PtrTabArgs ); if( TRUE == libutils_test_file_exist( PConvMp3Ogg->destwav )) { @@ -143,7 +143,7 @@ } PtrTabArgs = conv_with_sox_get_param( PConvMp3Ogg->destwav, PConvMp3Ogg->destsox, "44100", "2", "16" ); conv_to_convert( PtrTabArgs, FALSE, SOX_WAV_TO_WAV, "SOX_WAV_TO_WAV"); - PtrTabArgs = filelc_RevoveTab( PtrTabArgs ); + PtrTabArgs = filelc_RemoveTab( PtrTabArgs ); conv_copy_src_to_dest (PConvMp3Ogg->destsox, PConvMp3Ogg->destwav); // conv.encode_completed ++; @@ -169,7 +169,7 @@ PtrTabArgs = filelc_get_command_line (¶m_filelc); conv_to_convert( PtrTabArgs, FALSE, LAME_WAV_TO_MP3, "LAME_WAV_TO_MP3"); - PtrTabArgs = filelc_RevoveTab( PtrTabArgs ); + PtrTabArgs = filelc_RemoveTab( PtrTabArgs ); /* copy SOURCE MP3 -> DESTINATION MP3 * ---------------------------------- @@ -213,7 +213,7 @@ PtrTabArgs [ pos++ ] = g_strdup ("44100"); PtrTabArgs [ pos++ ] = NULL; conv_to_convert( PtrTabArgs, param_filelc.With_CommandLineUser, MPLAYER_OGG_TO_WAV, "MPLAYER_OGG_TO_WAV"); - PtrTabArgs = filelc_RevoveTab( PtrTabArgs ); + PtrTabArgs = filelc_RemoveTab( PtrTabArgs ); if( TRUE == libutils_test_file_exist( PConvMp3Ogg->destwav ) && libutils_get_size_file( PConvMp3Ogg->destwav ) > 0 ) { @@ -236,7 +236,7 @@ PtrTabArgs = filelc_get_command_line (¶m_filelc); conv_to_convert( PtrTabArgs, FALSE, OGGENC_WAV_TO_OGG, "OGGENC_WAV_TO_OGG"); - PtrTabArgs = filelc_RevoveTab( PtrTabArgs ); + PtrTabArgs = filelc_RemoveTab( PtrTabArgs ); /* copy SOURCE OGG -> DESTINATION MP3 * ---------------------------------- @@ -321,36 +321,36 @@ conv.TmpRep = libutils_remove_temporary_rep (conv.TmpRep); } - gtk_timeout_remove (conv.handler_timeout_conv); + g_source_remove (conv.handler_timeout_conv); WindScan_close (); FileMp3Ogg_set_flag_buttons (); if (FALSE == conv.bool_stop) { - NotifySend_msg (_("XCFA: Modification bitrate"), _("Ok"), conv.bool_stop); + NotifySend_msg (_("XCFA: Bitrate change"), _("Ok"), conv.bool_stop); } else { - NotifySend_msg (_("XCFA: Modification bitrate"), _("Arret par l'utilisateur"), conv.bool_stop); + NotifySend_msg (_("XCFA: Bitrate change"), _("Stop by user"), conv.bool_stop); } if( TRUE == BoolErrMplayer ) { - wininfo_create ( + wind_info_init ( WindMain, - _("Erreur depuis MPLAYER !"), - _("Vous pouvez activer XCFA en ligne de commande avec: "), + _("Error from MPLAYER !"), + _("You can enable XCFA command line with: "), "\n", _("$ xcfa -verbose"), "\n", - _("pour consulter le type d'erreur renvoye par mplayer."), + _("to see the type of error returned by mplayer."), ""); } else if( TRUE == BoolErrSox ) { - wininfo_create ( + wind_info_init ( WindMain, - _("Erreur depuis SOX !"), - _("Vous pouvez activer XCFA en ligne de commande avec: "), + _("Error from SOX !"), + _("You can enable XCFA command line with: "), "\n", _("$ xcfa -verbose"), "\n", - _("pour consulter le type d'erreur renvoye par sox."), + _("to see the type of error returned by sox."), ""); } @@ -429,7 +429,7 @@ if (bool_mp3 && bool_ogg) { if (FALSE == PrgInit.bool_mplayer || FALSE == PrgInit.bool_lame || FALSE == PrgInit.bool_oggenc) - str = g_strdup_printf (_(" ATTENTION: Il faut installer %s%s%s"), + str = g_strdup_printf (_(" WARNING : you need to install %s%s%s"), FALSE == PrgInit.bool_mplayer ? " \n MPLAYER" : "", FALSE == PrgInit.bool_lame ? " \n LAME" : "", FALSE == PrgInit.bool_oggenc ? " \n OGGENC" : "" @@ -437,19 +437,19 @@ } else if (bool_mp3) { if (FALSE == PrgInit.bool_mplayer || FALSE == PrgInit.bool_lame) - str = g_strdup_printf (_(" ATTENTION: Il faut installer %s%s"), + str = g_strdup_printf (_(" WARNING : you need to install %s%s"), FALSE == PrgInit.bool_mplayer ? " \n MPLAYER" : "", FALSE == PrgInit.bool_lame ? " \n LAME" : "" ); } else if (bool_ogg) { if (FALSE == PrgInit.bool_oggenc) - str = g_strdup_printf (_(" ATTENTION: Il faut installer %s"), + str = g_strdup_printf (_(" WARNING : you need to install %s"), FALSE == PrgInit.bool_oggenc ? " \n OGGENC" : "" ); } if (NULL != str) { - wininfo_create ( + wind_info_init ( WindMain, _("Package NOT FOUND !"), str, @@ -471,7 +471,12 @@ if (TRUE == filemp3oggconv_is_regul_ok ()) { - WindScan_open ("Conversions bitrate", WINDSCAN_PULSE); + // WindScan_open ("Conversions bitrate", WINDSCAN_PULSE); + wind_scan_init( + WindMain, + "Conversions bitrate", + WINDSCAN_PULSE + ); WindScan_set_label ("Conversions bitrate ..."); BoolErrMplayer = FALSE; @@ -481,7 +486,7 @@ filemp3oggconv_set_flags_before_conversion (); conv.bool_thread_conv = TRUE; pthread_create (&nmr_tid, NULL ,(void *)filemp3oggconv_thread, (void *)NULL); - conv.handler_timeout_conv = gtk_timeout_add (100, filemp3oggconv_timeout, 0); + conv.handler_timeout_conv = g_timeout_add (100, filemp3oggconv_timeout, 0); } } diff -Nru xcfa-4.3.8/src/file_scan_db.c xcfa-5.0.1/src/file_scan_db.c --- xcfa-4.3.8/src/file_scan_db.c 2013-03-21 10:55:49.000000000 +0000 +++ xcfa-5.0.1/src/file_scan_db.c 2015-01-30 16:38:37.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : file_scan_db.c * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License @@ -200,7 +200,7 @@ if (VarFileScanDB.bool_thread_end == TRUE) { if (FALSE == VarFileScanDB.BoolWindScanUsed) WindScan_close (); - gtk_timeout_remove (VarFileScanDB.handler_timeout); + g_source_remove (VarFileScanDB.handler_timeout); } return (TRUE); @@ -221,8 +221,14 @@ VarFileScanDB.bool_update = FALSE; VarFileScanDB.MessUser = NULL; - VarFileScanDB.BoolWindScanUsed = WindScan_open ("Scan dBFS", WINDSCAN_PULSE); - VarFileScanDB.handler_timeout = gtk_timeout_add (50, FileScanDB_timeout, 0); + // VarFileScanDB.BoolWindScanUsed = WindScan_open ("Scan dBFS", WINDSCAN_PULSE); + VarFileScanDB.BoolWindScanUsed = + wind_scan_init( + WindMain, + "Scan dBFS", + WINDSCAN_PULSE + ); + VarFileScanDB.handler_timeout = g_timeout_add (50, FileScanDB_timeout, 0); pthread_create (&VarFileScanDB.nmr_tid, NULL ,(void *)FileScanDB_thread, (void *)NULL); } } diff -Nru xcfa-4.3.8/src/fileselect.c xcfa-5.0.1/src/fileselect.c --- xcfa-4.3.8/src/fileselect.c 2013-05-04 11:14:22.000000000 +0000 +++ xcfa-5.0.1/src/fileselect.c 2015-02-26 10:06:58.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : fileselect.c * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License @@ -102,17 +102,17 @@ SELECT Select [ ] = { -{gettext_noop("Choix d'un dossier de destination"), _REP_SIMPLE_, NULL, ON_button_PATH_CHOICE_DESTINATION_clicked, NULL}, -{gettext_noop("Choix d'un fichier CUE WAV FLAC OGG MP3 APE WMA"), _FILE_SIMPLE_, NULL, ON_button_PATH_LOAD_ONE_FILE_clicked, NULL}, -{gettext_noop("Choix d'un fichier musical"), _FILE_SIMPLE_, NULL, ON_button_PATH_LOAD_ONE_FILE_clicked, NULL}, -{gettext_noop("Choix d'un fichier"), _FILE_SIMPLE_, NULL, ON_button_PATH_LOAD_ONE_FILE_clicked, NULL}, -{gettext_noop("Choix de fichiers"), _FILE_MULTIPLE_, NULL, ON_button_PATH_LOAD_ONE_FILE_clicked, NULL}, -{gettext_noop("Choix de fichiers WAV"), _FILE_MULTIPLE_, NULL, ON_button_PATH_LOAD_ONE_FILE_clicked, NULL}, -{gettext_noop("Choix de fichiers MP3/OGG"), _FILE_MULTIPLE_, NULL, ON_button_PATH_LOAD_ONE_FILE_clicked, NULL}, -{gettext_noop("Choix de fichiers FLAC MPC OGG MP3"), _FILE_MULTIPLE_, NULL, ON_button_PATH_LOAD_ONE_FILE_clicked, NULL}, -{gettext_noop("Importer des images pour la pochette"), _FILE_IMG_MULTIPLE_, NULL, ON_button_PATH_IMPORT_IMAGES_clicked, NULL}, -{gettext_noop("Choix d'un chemin de stockage des images"), _FILE_MULTIPLE_, NULL, ON_button_PATH_POCHETTE_clicked, NULL}, -{gettext_noop("Choix d'un lieu de sauvegarde"), _FILE_MULTIPLE_, NULL, ON_button_PATH_POCHETTE_clicked, NULL}, +{gettext_noop("Choosing a destination folder"), _REP_SIMPLE_, NULL, ON_button_PATH_CHOICE_DESTINATION_clicked, NULL}, +{gettext_noop("Choosing a file CUE WAV FLAC OGG MP3 APE WMA"), _FILE_SIMPLE_, NULL, ON_button_PATH_LOAD_ONE_FILE_clicked, NULL}, +{gettext_noop("Choosing a file musical"), _FILE_SIMPLE_, NULL, ON_button_PATH_LOAD_ONE_FILE_clicked, NULL}, +{gettext_noop("Choosing a file"), _FILE_SIMPLE_, NULL, ON_button_PATH_LOAD_ONE_FILE_clicked, NULL}, +{gettext_noop("Choosing a file"), _FILE_MULTIPLE_, NULL, ON_button_PATH_LOAD_ONE_FILE_clicked, NULL}, +{gettext_noop("Choosing a WAV file"), _FILE_MULTIPLE_, NULL, ON_button_PATH_LOAD_ONE_FILE_clicked, NULL}, +{gettext_noop("Choosing a MP3 OGG file"), _FILE_MULTIPLE_, NULL, ON_button_PATH_LOAD_ONE_FILE_clicked, NULL}, +{gettext_noop("Choosing a FLAC MPC OGG MP3 file"), _FILE_MULTIPLE_, NULL, ON_button_PATH_LOAD_ONE_FILE_clicked, NULL}, +{gettext_noop("Import pictures for the cover"), _FILE_IMG_MULTIPLE_, NULL, ON_button_PATH_IMPORT_IMAGES_clicked, NULL}, +{gettext_noop("Choosing an Image Storage path"), _FILE_MULTIPLE_, NULL, ON_button_PATH_POCHETTE_clicked, NULL}, +{gettext_noop("Choosing a place for backup"), _FILE_MULTIPLE_, NULL, ON_button_PATH_POCHETTE_clicked, NULL}, {NULL, -1} }; @@ -334,16 +334,18 @@ } } // Demande de creation de la fenetre de selection de fichier(s) ou de repertoire +// https://developer.gnome.org/gtk3/stable/GtkFileChooserDialog.html // void fileselect_create (TYPE_FILESELECTION Choice, gchar *Path, void *Func_Extern) { GtkWidget *filechooserdialog; - GtkWidget *dialog_vbox1; - GtkWidget *dialog_action_area1; - GtkWidget *button_cancel; - GtkWidget *button_ok; + // GtkWidget *dialog_vbox1; + // GtkWidget *dialog_action_area1; + // GtkWidget *button_cancel; + // GtkWidget *button_ok; GtkWidget *preview; GtkFileFilter *filter; + gint res; if (_NB_PATH_ <= 0) return; if (Choice < 0 || Choice > _NB_PATH_) return; @@ -354,7 +356,7 @@ filechooserdialog = Select[ Choice ].AdrFileChooser; if (filechooserdialog != NULL) { - gdk_window_raise (filechooserdialog->window); + gdk_window_raise( gtk_widget_get_window(filechooserdialog) ); return; } @@ -379,22 +381,42 @@ */ if (Select[ Choice ].TypeSelect == _REP_SIMPLE_ || Select[ Choice ].TypeSelect == _REP_MULTIPLE_) { /* selection de directory */ + /** filechooserdialog = gtk_file_chooser_dialog_new (Select[ Choice ].Title, NULL, GTK_FILE_CHOOSER_ACTION_SELECT_FOLDER, - /* | - GTK_FILE_CHOOSER_ACTION_CREATE_FOLDER, - */ + // GTK_FILE_CHOOSER_ACTION_CREATE_FOLDER, NULL, NULL); + */ + filechooserdialog = gtk_file_chooser_dialog_new ( + Select[ Choice ].Title, + NULL, + GTK_FILE_CHOOSER_ACTION_SELECT_FOLDER, + _("Cancel"), + GTK_RESPONSE_CANCEL, + _("Open"), + GTK_RESPONSE_ACCEPT, + NULL); } else if (Select[ Choice ].TypeSelect == _FILE_SIMPLE_ || Select[ Choice ].TypeSelect == _FILE_MULTIPLE_) { /* selection de fichiers(s) */ + /** filechooserdialog = gtk_file_chooser_dialog_new (Select[ Choice ].Title, NULL, GTK_FILE_CHOOSER_ACTION_OPEN, NULL, NULL); + */ + filechooserdialog = gtk_file_chooser_dialog_new ( + Select[ Choice ].Title, + NULL, + GTK_FILE_CHOOSER_ACTION_OPEN, + _("Cancel"), + GTK_RESPONSE_CANCEL, + _("Open"), + GTK_RESPONSE_ACCEPT, + NULL); if (_PATH_LOAD_SPLIT_FILE_ == Choice) { filter = gtk_file_filter_new (); gtk_file_filter_add_pattern (filter, "*.wav"); @@ -663,17 +685,28 @@ } else if (Select[ Choice ].TypeSelect == _FILE_IMG_SIMPLE_ || Select[ Choice ].TypeSelect == _FILE_IMG_MULTIPLE_) { /* selection de fichiers images avec previsualisation */ + /** filechooserdialog = gtk_file_chooser_dialog_new (Select[ Choice ].Title, NULL, GTK_FILE_CHOOSER_ACTION_OPEN, - /*GTK_STOCK_CANCEL, - GTK_RESPONSE_CANCEL, - GTK_STOCK_OPEN, - GTK_RESPONSE_ACCEPT,*/ + // GTK_STOCK_CANCEL, + // GTK_RESPONSE_CANCEL, + // GTK_STOCK_OPEN, + // GTK_RESPONSE_ACCEPT, NULL, NULL); + */ + filechooserdialog = gtk_file_chooser_dialog_new ( + Select[ Choice ].Title, + NULL, + GTK_FILE_CHOOSER_ACTION_OPEN, + _("Cancel"), + GTK_RESPONSE_CANCEL, + _("Open"), + GTK_RESPONSE_ACCEPT, + NULL); preview = gtk_image_new (); - gtk_widget_set_usize(GTK_WIDGET(preview), 200, 200); + gtk_widget_set_size_request(GTK_WIDGET(preview), 200, 200); gtk_file_chooser_set_preview_widget(GTK_FILE_CHOOSER(filechooserdialog), GTK_WIDGET(preview)); gtk_file_chooser_set_preview_widget_active (GTK_FILE_CHOOSER (filechooserdialog), TRUE); g_signal_connect(GTK_FILE_CHOOSER(filechooserdialog), "update-preview", G_CALLBACK (chooserDialog_preview_update), preview); @@ -701,37 +734,15 @@ gtk_window_set_type_hint (GTK_WINDOW (filechooserdialog), GDK_WINDOW_TYPE_HINT_DIALOG); - dialog_vbox1 = GTK_DIALOG (filechooserdialog)->vbox; - gtk_widget_show (dialog_vbox1); - - dialog_action_area1 = GTK_DIALOG (filechooserdialog)->action_area; - gtk_widget_show (dialog_action_area1); - gtk_button_box_set_layout (GTK_BUTTON_BOX (dialog_action_area1), GTK_BUTTONBOX_END); - - button_cancel = gtk_button_new_from_stock ("gtk-cancel"); - gtk_widget_show (button_cancel); - gtk_dialog_add_action_widget (GTK_DIALOG (filechooserdialog), button_cancel, GTK_RESPONSE_CANCEL); - GTK_WIDGET_SET_FLAGS (button_cancel, GTK_CAN_DEFAULT); - - button_ok = gtk_button_new_from_stock ("gtk-open"); - gtk_widget_show (button_ok); - gtk_dialog_add_action_widget (GTK_DIALOG (filechooserdialog), button_ok, GTK_RESPONSE_OK); - GTK_WIDGET_SET_FLAGS (button_ok, GTK_CAN_DEFAULT); - g_signal_connect ((gpointer) filechooserdialog, "delete_event", G_CALLBACK (fileselect_on_filechooserdialog_delete_event), (gpointer)Choice); g_signal_connect ((gpointer) filechooserdialog, "destroy_event", G_CALLBACK (fileselect_on_filechooserdialog_destroy_event), (gpointer)Choice); - g_signal_connect ((gpointer) button_cancel, "clicked", G_CALLBACK (fileselect_on_button_cancel_clicked), (gpointer)Choice); - g_signal_connect ((gpointer) button_ok, "clicked", G_CALLBACK (Select[ Choice ].Call_Func), (gpointer)Choice); - - /* Store pointers to all widgets, for use by lookup_widget(). - */ - GLADE_HOOKUP_OBJECT_NO_REF (filechooserdialog, filechooserdialog, "filechooserdialog"); - GLADE_HOOKUP_OBJECT_NO_REF (filechooserdialog, dialog_vbox1, "dialog_vbox1"); - GLADE_HOOKUP_OBJECT_NO_REF (filechooserdialog, dialog_action_area1, "dialog_action_area1"); - GLADE_HOOKUP_OBJECT (filechooserdialog, button_cancel, "button_cancel"); - GLADE_HOOKUP_OBJECT (filechooserdialog, button_ok, "button_ok"); - - gtk_widget_grab_default (button_ok); - gtk_widget_show (filechooserdialog); + + res = gtk_dialog_run (GTK_DIALOG (filechooserdialog)); + if (res == GTK_RESPONSE_ACCEPT) { + Select[ Choice ].Call_Func( NULL, (gpointer)Choice ); + } + else if(res == GTK_RESPONSE_CANCEL) { + fileselect_on_button_cancel_clicked( NULL, (gpointer)Choice ); + } } diff -Nru xcfa-4.3.8/src/fileselect.h xcfa-5.0.1/src/fileselect.h --- xcfa-4.3.8/src/fileselect.h 2013-03-21 10:55:27.000000000 +0000 +++ xcfa-5.0.1/src/fileselect.h 2015-01-21 16:28:42.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : fileselect.h * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License diff -Nru xcfa-4.3.8/src/file_tags.c xcfa-5.0.1/src/file_tags.c --- xcfa-4.3.8/src/file_tags.c 2013-03-22 06:59:01.000000000 +0000 +++ xcfa-5.0.1/src/file_tags.c 2015-02-05 19:24:54.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : file_tags.c * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License @@ -57,6 +57,7 @@ #include "file.h" #include #include "statusbar.h" +#include "popup.h" @@ -67,7 +68,6 @@ COLUMN_FILETAGS_TYPE = 0, COLUMN_FILETAGS_TIME, COLUMN_FILETAGS_NAME, - COLUMN_FILETAGS_COLOR, COLUMN_FILETAGS_POINTER_STRUCT, @@ -352,20 +352,18 @@ gtk_spin_button_set_value (GTK_SPIN_BUTTON (var_file_tags.Adr_spinbutton_tag_track), (gdouble)tags->IntNumber); FileTags_bool_changed_OK = TRUE; } -// -// -void FileTags_set_combobox_tag_genre (void) +void FileTags_set_combobox_tag_genre( void ) { TAGS *tags = FileTags_get_tag (NULL); - - if (NULL == var_file_tags.Adr_combobox_tag_genre) return; - if (NULL == tags) return; - + // tags->Genre = g_strdup( FilePopupGenre.name ); + // tags->IntGenre = tags_get_genre_by_value( FilePopupGenre.name ); FileTags_bool_changed_OK = FALSE; - - gtk_combo_box_set_active (GTK_COMBO_BOX (var_file_tags.Adr_combobox_tag_genre), tags_get_elements_combobox (tags->IntGenre)); + gtk_entry_set_text( GTK_ENTRY(GLADE_GET_OBJECT("entry_tag_genre_file")), tags->Genre ? tags->Genre : "" ); + printf(">tags->Genre = %s\n", tags->Genre ); + printf(">tags->IntGenre = %d\n", tags->IntGenre ); FileTags_bool_changed_OK = TRUE; } + // CETTE FONCTION INDIQUE QU UNE MODIFICATION DE TAG A EU LIEU // FLAG MODIFIE: : LA COLONNE 'TYPE' EST EN ROUGE GRAS // APRES UNE SAUVEGARDE : COLONNE 'TYPE' EST EN COULEUR NORMALE @@ -491,12 +489,29 @@ switch (TYPE_TAG) { case TAG_GENRE : if (NULL != (tags = FileTags_get_tag (detail))) { - g_free (tags->Genre); - tags->Genre = NULL; - tags->Genre = g_strdup ((gchar *)gtk_combo_box_get_active_text (var_file_tags.Adr_combobox_tag_genre)); - tags->IntGenre = tags_get_num_combobox ((gint)gtk_combo_box_get_active (var_file_tags.Adr_combobox_tag_genre)); - tags_set_flag_modification (tags, TRUE); - FileTags_set_label_tag_change (); + if( TRUE == FilePopupGenre.BoolFromPopup ) { + printf("TRUE == FilePopupGenre.BoolFromPopup\n"); + if( tags->Genre ) + g_free (tags->Genre); + tags->Genre = NULL; + tags->Genre = g_strdup( FilePopupGenre.name ); + tags->IntGenre = tags_get_genre_by_value( FilePopupGenre.name ); + gtk_entry_set_text( GTK_ENTRY(GLADE_GET_OBJECT("entry_tag_genre_file")), FilePopupGenre.name ); + if( TRUE == FileTags_bool_changed_OK ) + tags_set_flag_modification (tags, TRUE); + FileTags_set_label_tag_change (); + } + else { + printf("FALSE == FilePopupGenre.BoolFromPopup\n"); + if( tags->Genre ) + g_free (tags->Genre); + tags->Genre = NULL; + tags->Genre = g_strdup( (gchar *)gtk_entry_get_text( GTK_ENTRY(GLADE_GET_OBJECT("entry_tag_genre_file")) )); + tags->IntGenre = tags_get_genre_by_value( tags->Genre ); + if( TRUE == FileTags_bool_changed_OK ) + tags_set_flag_modification (tags, TRUE); + FileTags_set_label_tag_change (); + } } break; case TAG_TRACK : @@ -649,24 +664,64 @@ if (FALSE == FileTags_bool_changed_OK) return; FileTags_changed_all_tags (TAG_YEAR); } -// -// -void on_combobox_tag_genre_file_realize (GtkWidget *widget, gpointer user_data) + +#define _CONTACT_NAME_ 0 +void on_entry_tag_genre_file_changed( GtkEditable *editable, gpointer user_data ) { - libcombo_alloc (GTK_COMBO_BOX (widget)); - tags_set_elements_combobox (widget); - gtk_combo_box_set_wrap_width (GTK_COMBO_BOX (widget), 4); - gtk_combo_box_set_active (GTK_COMBO_BOX (widget), 0); - var_file_tags.Adr_combobox_tag_genre = GTK_COMBO_BOX (widget); + gchar *PtrEntry = NULL; + gint NumEntry = -1; + + if( FALSE == FilePopupGenre.BoolFromPopup ) { + PRINT_FUNC_LF(); + PtrEntry = (gchar *)gtk_entry_get_text( GTK_ENTRY(GLADE_GET_OBJECT("entry_tag_genre_file"))); + NumEntry = tags_get_genre_by_value( PtrEntry ); + if( TRUE == OptionsCommandLine.BoolVerboseMode ) { + g_print( "\tPtrEntry = %s\n", PtrEntry ); + g_print( "\tNumEntry = %d\n", NumEntry); + } + FileTags_changed_all_tags (TAG_GENRE); + // cd_expander_set_genre( NumEntry, PtrEntry ); + } } -// -// -void on_combobox_tag_genre_file_changed (GtkComboBox *combobox, gpointer user_data) +/** +gboolean on_match_select_file(GtkEntryCompletion *widget, GtkTreeModel *model, GtkTreeIter *iter, gpointer user_data) +{ + if( TRUE == OptionsCommandLine.BoolVerboseMode ) { + GValue value = {0, }; + gtk_tree_model_get_value(model, iter, _CONTACT_NAME_, &value); + g_print( "You have selected %s\n", g_value_get_string(&value) ); + g_value_unset(&value); + } + return FALSE; +} +*/ +void on_entry_tag_genre_file_realize( GtkWidget *widget, gpointer user_data ) +{ + STRUCT_TAGS_FILE_MP3 *Contact; + GtkEntryCompletion *completion; + GtkListStore *model; + GtkTreeIter iter; + + // set up completion + completion = gtk_entry_completion_new(); + gtk_entry_completion_set_text_column( completion, _CONTACT_NAME_ ); + gtk_entry_set_completion( GTK_ENTRY(widget), completion ); + // g_signal_connect( G_OBJECT(completion), "match-selected", G_CALLBACK(on_match_select_file), NULL ); + g_signal_connect( G_OBJECT(widget), "changed", G_CALLBACK(on_entry_tag_genre_file_changed), widget ); + model = gtk_list_store_new( 1, G_TYPE_STRING ); + for( Contact = StructTagsFileMp3; Contact && Contact->name; Contact++ ) { + gtk_list_store_append( model, &iter ); + gtk_list_store_set( model, &iter, _CONTACT_NAME_, Contact->name, -1 ); + } + gtk_entry_completion_set_model( completion, GTK_TREE_MODEL(model) ); +} + + +void on_button_tag_call_popup_file_clicked( GtkButton *button, gpointer user_data ) { - if (NULL == var_file_tags.Adr_combobox_tag_genre) return; - if (FALSE == FileTags_bool_changed_OK) return; - FileTags_changed_all_tags (TAG_GENRE); + popup_menu_file(); } + // // void on_spinbutton_tag_track_file_realize (GtkWidget *widget, gpointer user_data) @@ -891,7 +946,7 @@ COLUMN_FILETAGS_TYPE, tags_get_str_type_file_is (detail->type_infosong_file_is), COLUMN_FILETAGS_TIME, file_get_time (detail), COLUMN_FILETAGS_NAME, NameDest, - COLUMN_FILETAGS_COLOR, &YellowColor, + // COLUMN_FILETAGS_COLOR, &YellowColor, COLUMN_FILETAGS_POINTER_STRUCT, detail, -1); @@ -960,7 +1015,7 @@ gtk_tree_selection_unselect_all (var_file_tags.Adr_Line_Selected); gtk_tree_selection_select_all (var_file_tags.Adr_Line_Selected); } - if (keys.keyval == GDK_Delete) { + if (keys.keyval == GDK_KEY_Delete) { GtkTreeIter iter; if (gtk_tree_model_get_iter_first (var_file_tags.Adr_Tree_Model, &iter)) { on_file_button_del_file_clicked (NULL, NULL); @@ -989,8 +1044,11 @@ // return (FALSE); // PRINT_FUNC_LF(); - // SI PAS DANS LE TREEVIEW - gdk_window_get_pointer (((GdkEventButton*)event)->window, &x, &y, &state); + /* Si pas de selection a cet endroit retour */ + GdkDeviceManager *manager = gdk_display_get_device_manager( gdk_display_get_default() ); + GdkDevice *device = gdk_device_manager_get_client_pointer( manager ); + gdk_window_get_device_position( ((GdkEventButton*)event)->window, device, &x, &y, &state ); + // gdk_window_get_pointer (((GdkEventButton*)event)->window, &x, &y, &state); if (FALSE == gtk_tree_view_get_path_at_pos (GTK_TREE_VIEW(treeview), x, y, &path, &column, &Pos_X, &Pos_Y)) { @@ -1036,18 +1094,21 @@ } // // -static void FileTags_drag_data_received (GtkWidget *widget, - GdkDragContext *drag_context, - gint x, - gint y, - GtkSelectionData *data, - guint info, - guint time) +static void FileTags_drag_data_received( + GtkWidget *widget, + GdkDragContext *context, + gint x, + gint y, + GtkSelectionData *data, + guint info, + guint time, + gpointer user_data) { /* PRINT_FUNC_LF(); */ /* Une copie ne peut aller vers elle meme !!! */ - if (gtk_drag_get_source_widget(drag_context) != widget) { - dragndrop_list_drag_data (widget, (gchar *)data->data); + if (gtk_drag_get_source_widget(context) != widget) { + //dragndrop_list_drag_data (widget, (gchar *)data->data); + dragndrop_list_drag_data( widget, (gchar*)gtk_selection_data_get_data( data )); } } // @@ -1089,7 +1150,8 @@ gtk_selection_data_set( selection_data, // GDK_SELECTION_TYPE_STRING, - selection_data->target, + // selection_data->target, + GDK_POINTER_TO_ATOM(gtk_selection_data_get_data( selection_data )), 8, (guchar *)text, strlen( text ) @@ -1172,7 +1234,7 @@ g_object_set (renderer, "xalign", 0.5, NULL); // var_file_tags.Adr_ColumnFileWavNewHertz = var_file_tags.Adr_ColumnFileTagsTime = - column = gtk_tree_view_column_new_with_attributes (_("Temps"), + column = gtk_tree_view_column_new_with_attributes (_("Time"), renderer, "markup", COLUMN_FILETAGS_TIME, NULL); @@ -1188,10 +1250,10 @@ g_object_set (renderer, "xalign", 0.5, NULL); // var_file_tags.Adr_ColumnFileWavNewHertz = var_file_tags.Adr_ColumnFileTagsName = - column = gtk_tree_view_column_new_with_attributes (_("Nom"), + column = gtk_tree_view_column_new_with_attributes (_("Name"), renderer, "markup", COLUMN_FILETAGS_NAME, - "background-gdk", COLUMN_FILETAGS_COLOR, + // "background-gdk", COLUMN_FILETAGS_COLOR, NULL); gtk_tree_view_column_set_sizing (GTK_TREE_VIEW_COLUMN (column), GTK_TREE_VIEW_COLUMN_FIXED); @@ -1215,13 +1277,13 @@ G_TYPE_STRING, // COLUMN_FILETAGS_TYPE G_TYPE_STRING, // COLUMN_FILETAGS_TIME G_TYPE_STRING, // COLUMN_FILETAGS_NAME - GDK_TYPE_COLOR, // COLUMN_FILETAGS_COLOR + // GDK_TYPE_COLOR, // COLUMN_FILETAGS_COLOR G_TYPE_POINTER // COLUMN_FILETAGS_POINTER_STRUCT ); var_file_tags.Adr_Tree_Model = model = GTK_TREE_MODEL (store); var_file_tags.Adr_TreeView = treeview = gtk_tree_view_new_with_model (model); - gtk_tree_view_set_rules_hint (GTK_TREE_VIEW (treeview), TRUE); + // gtk_tree_view_set_rules_hint (GTK_TREE_VIEW (treeview), TRUE); gtk_tree_selection_set_mode (gtk_tree_view_get_selection (GTK_TREE_VIEW (treeview)), GTK_SELECTION_MULTIPLE); // GTK_SELECTION_BROWSE MULTIPLE g_object_unref (model); gtk_container_add (GTK_CONTAINER (widget), treeview); diff -Nru xcfa-4.3.8/src/file_trash.c xcfa-5.0.1/src/file_trash.c --- xcfa-4.3.8/src/file_trash.c 2013-03-21 10:55:49.000000000 +0000 +++ xcfa-5.0.1/src/file_trash.c 2015-03-01 16:56:14.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : file_trash.h * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License @@ -29,7 +29,7 @@ /* -void main_trash (void ) +void filetrash_main_test_trash (void ) { GFile *file = NULL; @@ -40,8 +40,7 @@ else { g_print("TRASH OK\n"); } - - g_object_unref( file ); + g_object_unref( file ); } */ @@ -102,169 +101,20 @@ -/* -mv ./11\ Track_11.wav /home/cat/.Trash/11\ Track_11.wav - -Sous Ubuntu - $HOME/.Trash -Kubuntu et Xubuntu - $HOME/.local/share/Trash/files - -*/ - - - -/* #include - * - * gboolean g_file_trash (GFile *file, GCancellable *cancellable, GError **error); - * - * - * -void filetrash_test (gchar *Name) -{ - GError *error; - g_file_trash ((GFile *)Name, NULL, &error); -} - * - * - */ - - - -// -// -gboolean filetrash_test_desktop_is_kde (void) -{ - FILE *fp; -#define MAX_CARS_KDE 255 - gchar buf [ MAX_CARS_KDE +1 ]; - gboolean BoolRet = FALSE; - - /* - KDE_FULL_SESSION - */ - system ("env | grep \"KDE_FULL_SESSION\" > /tmp/tst_kde_full_session.txt"); - if ((fp = fopen ("/tmp/tst_kde_full_session.txt", "r")) != NULL) { - while (fgets (buf, MAX_CARS_KDE, fp) != NULL) { - if (strcmp (buf, "KDE_FULL_SESSION") == 0) { - if (strcmp (buf, "true") == 0 || strcmp (buf, "TRUE") == 0) { - BoolRet = TRUE; - break; - } - } - } - fclose (fp); - } - g_unlink ("/tmp/tst_kde_full_session.txt"); - return (BoolRet); -} -// -// -gboolean filetrash_move_to_trash (gchar *Name) -{ - gchar *NameDest = NULL; - gchar *Ptr = NULL; - gchar *LineCommand = NULL; - - /*PRINT_FUNC_LF();*/ - - if ((Ptr = strrchr (Name, '/'))) - Ptr ++; - else Ptr = Name; - - NameDest = g_strdup_printf ("%s/%s", filetrash_get_trash (), Ptr); - - LineCommand = g_strdup_printf ("mv -f \"%s\" \"%s\"", Name, NameDest); - g_print ("To Trash:\n\t%s\n", LineCommand); - system (LineCommand); - - g_free (LineCommand); - LineCommand = NULL; - - g_free (NameDest); - NameDest = NULL; - - return (TRUE); -} -// -// -gchar *filetrash_get_trash (void) -{ - if (var_filetrash.Bool_kde_full_session == TRUE) - g_sprintf (var_filetrash.PathNameTrash, "%s/.local/share/Trash/files", getenv ("HOME")); - else g_sprintf (var_filetrash.PathNameTrash, "%s/.Trash", getenv ("HOME")); - - return ((gchar *)var_filetrash.PathNameTrash); -} // // -void filetrash_test_trash_is_ok (void) +gboolean filetrash_move_to_trash( gchar *p_Name ) { - gboolean BoolExistTrashOLD; - gboolean BoolExistTrashNEW; - gchar *Path = NULL; - gchar *StrTrash = NULL; - - if( TRUE == OptionsCommandLine.BoolVerboseMode ) - g_print ("\n[ Trash ]\n"); - - if (var_filetrash.BoolTrashIsOk == TRUE) return; - var_filetrash.BoolTrashIsOk = TRUE; - var_filetrash.Bool_kde_full_session = filetrash_test_desktop_is_kde (); - - if( TRUE == OptionsCommandLine.BoolVerboseMode ) - g_print ("KDE SESSION : %s\n", var_filetrash.Bool_kde_full_session ? "TRUE" : "FALSE"); - - Path = g_strdup_printf ("%s/.Trash", getenv ("HOME")); - BoolExistTrashOLD = libutils_test_dir_exist (Path); - if( TRUE == OptionsCommandLine.BoolVerboseMode ) { - if (BoolExistTrashOLD == TRUE) - g_print ("EXIST ......: %s\n", Path); - else g_print ("NOT EXIST ..: %s\n", Path); - } - g_free (Path); - Path = NULL; - - Path = g_strdup_printf ("%s/.local/share/Trash/files", getenv ("HOME")); - BoolExistTrashNEW = libutils_test_dir_exist (Path); - if( TRUE == OptionsCommandLine.BoolVerboseMode ) { - if (BoolExistTrashNEW == TRUE) - g_print ("EXIST ......: %s\n", Path); - else g_print ("NOT EXIST ..: %s\n", Path); - } - g_free (Path); - Path = NULL; + GFile *src_file = NULL; + gboolean bool_ret = FALSE; - // SI SESSION KDE - if (var_filetrash.Bool_kde_full_session == TRUE) { - if (BoolExistTrashNEW == FALSE) { - StrTrash = g_strdup_printf ("mkdir -p %s", filetrash_get_trash ()); - system (StrTrash); - g_free (StrTrash); - StrTrash = NULL; - BoolExistTrashNEW = TRUE; - } - } - // SI PAS SESSION KDE - else { - if (BoolExistTrashNEW == TRUE) { - var_filetrash.Bool_kde_full_session = TRUE; - } - else if (BoolExistTrashOLD == FALSE) { - var_filetrash.Bool_kde_full_session = TRUE; - StrTrash = g_strdup_printf ("mkdir -p %s", filetrash_get_trash ()); - system (StrTrash); - g_free (StrTrash); - StrTrash = NULL; - BoolExistTrashNEW = TRUE; - } - else { - + if( NULL != (src_file = g_file_new_for_path( p_Name ))) { + if( TRUE == g_file_query_exists( src_file, NULL ) ) { + bool_ret = g_file_trash( src_file, NULL, NULL ); } + g_object_unref( src_file ); } - - if( TRUE == OptionsCommandLine.BoolVerboseMode ) - g_print ("---\nUSE ........: %s\n---\n\n", filetrash_get_trash ()); + return( bool_ret ); } // // @@ -299,10 +149,6 @@ // static gint filetrash_timeout (gpointer data) { - // if (TRUE == WindScan_close_request (void)) { - // var_filetrash.bool_thread_end = TRUE; - // } - if (var_filetrash.bool_pass_conv == TRUE) { gchar *str = NULL; @@ -340,7 +186,7 @@ WindScan_close (); fileaction_set_end (TYPE_TRASH); - gtk_timeout_remove (var_filetrash.handler_timeout); + g_source_remove (var_filetrash.handler_timeout); on_file_button_del_file_clicked (NULL, NULL); } return (TRUE); @@ -356,11 +202,16 @@ var_filetrash.BoolEtat = FALSE; var_filetrash.bool_pass_conv = FALSE; - WindScan_open (_("Trash"), WINDSCAN_PULSE); + // WindScan_open (_("Trash"), WINDSCAN_PULSE); + wind_scan_init( + WindMain, + _("Trash"), + WINDSCAN_PULSE + ); WindScan_set_label (_("Trash files ...")); pthread_create (&var_filetrash.nmr_tid, NULL ,(void *)filetrash_thread, (void *)NULL); - var_filetrash.handler_timeout = gtk_timeout_add (100, filetrash_timeout, 0); + var_filetrash.handler_timeout = g_timeout_add (100, filetrash_timeout, 0); } // // @@ -387,6 +238,8 @@ + + diff -Nru xcfa-4.3.8/src/file_wav.c xcfa-5.0.1/src/file_wav.c --- xcfa-4.3.8/src/file_wav.c 2013-03-21 21:39:56.000000000 +0000 +++ xcfa-5.0.1/src/file_wav.c 2015-02-05 19:27:10.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : file_wav.c * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License @@ -67,7 +67,6 @@ COLUMN_FILEWAV_BITS, COLUMN_FILEWAV_NEW_BITS, COLUMN_FILEWAV_NAME, - COLUMN_FILEWAV_COLOR, COLUMN_FILEWAV_POINTER_STRUCT, @@ -271,7 +270,7 @@ COLUMN_FILEWAV_BITS, info->bits, COLUMN_FILEWAV_NEW_BITS, NewBits, COLUMN_FILEWAV_NAME, NameDest, - COLUMN_FILEWAV_COLOR, &YellowColor, + // COLUMN_FILEWAV_COLOR, &YellowColor, COLUMN_FILEWAV_POINTER_STRUCT, detail, -1); @@ -436,8 +435,11 @@ gboolean BoolSelectColPISTE = FALSE; gboolean BoolSelectColQUANTIFICATION = FALSE; - // SI PAS DANS LE TREEVIEW - gdk_window_get_pointer (((GdkEventButton*)event)->window, &x, &y, &state); + /* Si pas de selection a cet endroit retour */ + GdkDeviceManager *manager = gdk_display_get_device_manager( gdk_display_get_default() ); + GdkDevice *device = gdk_device_manager_get_client_pointer( manager ); + gdk_window_get_device_position( ((GdkEventButton*)event)->window, device, &x, &y, &state ); + // gdk_window_get_pointer (((GdkEventButton*)event)->window, &x, &y, &state); if (FALSE == gtk_tree_view_get_path_at_pos (GTK_TREE_VIEW(treeview), x, y, &path, &column, &Pos_X, &Pos_Y)) { @@ -480,13 +482,13 @@ } } if (TRUE == BoolSelectColFREQUENCE) { - StatusBar_set_mess( NOTEBOOK_FICHIERS, _STATUSBAR_SIMPLE_, _("(Click Droit = Menu) / Choix de la frequence")); + StatusBar_set_mess( NOTEBOOK_FICHIERS, _STATUSBAR_SIMPLE_, _("(Right Click = Menu) / Select frequency")); } else if (TRUE == BoolSelectColPISTE) { - StatusBar_set_mess( NOTEBOOK_FICHIERS, _STATUSBAR_SIMPLE_, _("(Click Droit = Menu) / Choix du nombre de pistes (voies)")); + StatusBar_set_mess( NOTEBOOK_FICHIERS, _STATUSBAR_SIMPLE_, _("(Right Click = Menu) / Select number of tracks (channels)")); } else if (TRUE == BoolSelectColQUANTIFICATION) { - StatusBar_set_mess( NOTEBOOK_FICHIERS, _STATUSBAR_SIMPLE_, _("(Click Droit = Menu) / Choix du codage en nombre de bits")); + StatusBar_set_mess( NOTEBOOK_FICHIERS, _STATUSBAR_SIMPLE_, _("(Right Click = Menu) / Encoding selection in number of bits")); } else if (TRUE == BoolSelectColNom) { StatusBar_set_mess( NOTEBOOK_FICHIERS, _STATUSBAR_SIMPLE_, detail->namefile); @@ -500,17 +502,20 @@ } // // -static void FileWav_drag_data_received (GtkWidget *widget, - GdkDragContext *drag_context, - gint x, - gint y, - GtkSelectionData *data, - guint info, - guint time) +static void FileWav_drag_data_received( + GtkWidget *widget, + GdkDragContext *context, + gint x, + gint y, + GtkSelectionData *data, + guint info, + guint time, + gpointer user_data) { /* Une copie ne peut aller vers elle meme !!! */ - if (gtk_drag_get_source_widget(drag_context) != widget) { - dragndrop_list_drag_data (widget, (gchar *)data->data); + if (gtk_drag_get_source_widget(context) != widget) { + // dragndrop_list_drag_data (widget, (gchar *)data->data); + dragndrop_list_drag_data( widget, (gchar*)gtk_selection_data_get_data( data )); } } // @@ -551,7 +556,8 @@ gtk_selection_data_set( selection_data, // GDK_SELECTION_TYPE_STRING, - selection_data->target, + // selection_data->target, + GDK_POINTER_TO_ATOM(gtk_selection_data_get_data( selection_data )), 8, (guchar *)text, strlen( text ) @@ -570,7 +576,7 @@ gtk_tree_selection_unselect_all (var_file_wav.Adr_Line_Selected); gtk_tree_selection_select_all (var_file_wav.Adr_Line_Selected); } - if (keys.keyval == GDK_Delete) { + if (keys.keyval == GDK_KEY_Delete) { GtkTreeIter iter; if (gtk_tree_model_get_iter_first (var_file_wav.Adr_Tree_Model, &iter)) { on_file_button_del_file_clicked (NULL, NULL); @@ -597,8 +603,8 @@ // GdkPixbuf *Pixbuf = NULL; DETAIL *detail = NULL; gint Pos_X = 0, Pos_Y = 0; - // gboolean bool_key_Control = (keys.keyval == GDK_Control_L || keys.keyval == GDK_Control_R); - // gboolean bool_key_Shift = (keys.keyval == GDK_Shift_L || keys.keyval == GDK_Shift_R); + // gboolean bool_key_Control = (keys.keyval == GDK_KEY_Control_L || keys.keyval == GDK_KEY_Control_R); + // gboolean bool_key_Shift = (keys.keyval == GDK_KEY_Shift_L || keys.keyval == GDK_KEY_Shift_R); // gboolean bool_key_Release = (bool_key_Control == FALSE && bool_key_Shift == FALSE); // gboolean bool_click_gauche = (event->button == 1); gboolean bool_click_droit = (event->button == 3); @@ -730,7 +736,7 @@ renderer = gtk_cell_renderer_text_new (); g_object_set (renderer, "xalign", 0.5, NULL); var_file_wav.Adr_ColumnFileWavHertz = - column = gtk_tree_view_column_new_with_attributes (_("Frequence"), + column = gtk_tree_view_column_new_with_attributes (_("Frequency"), renderer, "text", COLUMN_FILEWAV_HERTZ, NULL); @@ -746,7 +752,7 @@ renderer = gtk_cell_renderer_text_new (); g_object_set (renderer, "xalign", 0.5, NULL); var_file_wav.Adr_ColumnFileWavNewHertz = - column = gtk_tree_view_column_new_with_attributes (_("FREQUENCE"), + column = gtk_tree_view_column_new_with_attributes (_("FREQUENCY"), renderer, "markup", COLUMN_FILEWAV_NEW_HERTZ, NULL); @@ -760,7 +766,7 @@ renderer = gtk_cell_renderer_text_new (); g_object_set (renderer, "xalign", 0.5, NULL); var_file_wav.Adr_ColumnFileWavVoie = - column = gtk_tree_view_column_new_with_attributes (_("Piste"), + column = gtk_tree_view_column_new_with_attributes (_("Track"), renderer, "text", COLUMN_FILEWAV_VOIE, NULL); @@ -776,7 +782,7 @@ renderer = gtk_cell_renderer_text_new (); g_object_set (renderer, "xalign", 0.5, NULL); var_file_wav.Adr_ColumnFileWavNewVoie = - column = gtk_tree_view_column_new_with_attributes (_("PISTE"), + column = gtk_tree_view_column_new_with_attributes (_("TRACK"), renderer, "markup", COLUMN_FILEWAV_NEW_VOIE, NULL); @@ -821,10 +827,10 @@ renderer = gtk_cell_renderer_text_new (); g_object_set (renderer, "xalign", 0.5, NULL); var_file_wav.Adr_ColumnFileWavName = - column = gtk_tree_view_column_new_with_attributes (_("Nom"), + column = gtk_tree_view_column_new_with_attributes (_("Name"), renderer, "markup", COLUMN_FILEWAV_NAME, - "background-gdk", COLUMN_FILEWAV_COLOR, + // "background-gdk", COLUMN_FILEWAV_COLOR, NULL); gtk_tree_view_column_set_sizing (GTK_TREE_VIEW_COLUMN (column), GTK_TREE_VIEW_COLUMN_FIXED); @@ -854,13 +860,13 @@ G_TYPE_STRING, /* COLUMN_FILEWAV_BITS */ G_TYPE_STRING, /* COLUMN_FILEWAV_NEW_BITS */ G_TYPE_STRING, /* COLUMN_FILEWAV_NAME */ - GDK_TYPE_COLOR, /* COLUMN_FILEWAV_COLOR */ + // GDK_TYPE_COLOR, /* COLUMN_FILEWAV_COLOR */ G_TYPE_POINTER /* COLUMN_FILEWAV_POINTER_STRUCT */ ); var_file_wav.Adr_Tree_Model = model = GTK_TREE_MODEL (store); var_file_wav.Adr_TreeView = treeview = gtk_tree_view_new_with_model (model); - gtk_tree_view_set_rules_hint (GTK_TREE_VIEW (treeview), TRUE); + // gtk_tree_view_set_rules_hint (GTK_TREE_VIEW (treeview), TRUE); gtk_tree_selection_set_mode (gtk_tree_view_get_selection (GTK_TREE_VIEW (treeview)), GTK_SELECTION_MULTIPLE); // GTK_SELECTION_BROWSE MULTIPLE g_object_unref (model); gtk_container_add (GTK_CONTAINER (widget), treeview); diff -Nru xcfa-4.3.8/src/file_wav_conv.c xcfa-5.0.1/src/file_wav_conv.c --- xcfa-4.3.8/src/file_wav_conv.c 2014-01-20 15:15:58.000000000 +0000 +++ xcfa-5.0.1/src/file_wav_conv.c 2015-02-05 19:28:55.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : file_wav_conv.c * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License @@ -152,7 +152,7 @@ VarFilewavconv.BoolMplayer = TRUE; conv_to_convert( PtrTabArgs, FALSE, MPLAYER_WAV_TO_WAV, "MPLAYER_WAV_TO_WAV"); - PtrTabArgs = filelc_RevoveTab( PtrTabArgs ); + PtrTabArgs = filelc_RemoveTab( PtrTabArgs ); VarFilewavconv.BoolMplayer = FALSE; VarFilewavconv.BoolCopy = TRUE; @@ -164,7 +164,7 @@ VarFilewavconv.BoolSox = TRUE; PtrTabArgs = conv_with_sox_get_param (PConvWav->TmpSrc, PConvWav->TmpDest, info->NewHertz, info->NewVoie, info->NewBits); conv_to_convert( PtrTabArgs, FALSE, SOX_WAV_TO_WAV, "SOX_WAV_TO_WAV"); - PtrTabArgs = filelc_RevoveTab( PtrTabArgs ); + PtrTabArgs = filelc_RemoveTab( PtrTabArgs ); VarFilewavconv.BoolSox = FALSE; VarFilewavconv.BoolCopy = TRUE; @@ -258,7 +258,7 @@ if (VarFilewavconv.BoolCopy == TRUE) { foo [ 0 ] = filewavconv_get_spinner(); foo [ 1 ] = '\0'; - Str = g_strdup_printf (_("%s Copie fichier: %d%%"), + Str = g_strdup_printf (_("%s Copy file: %d%%"), foo, (gint)(conv.total_percent * 100)); WindScan_set_label (Str); @@ -268,7 +268,7 @@ else if (VarFilewavconv.BoolRest == TRUE) { foo [ 0 ] = filewavconv_get_spinner(); foo [ 1 ] = '\0'; - Str = g_strdup_printf (_("%s Restitution fichier: %d%%"), + Str = g_strdup_printf (_("%s Return file: %d%%"), foo, (gint)(conv.total_percent * 100)); WindScan_set_label (Str); @@ -278,7 +278,7 @@ else if (VarFilewavconv.BoolSox == TRUE) { foo [ 0 ] = filewavconv_get_spinner(); foo [ 1 ] = '\0'; - Str = g_strdup_printf (_("%s Traitement Sox: %d%%"), + Str = g_strdup_printf (_("%s Use Sox: %d%%"), foo, (gint)(conv.total_percent * 100)); WindScan_set_label (Str); @@ -295,7 +295,7 @@ foo [ 0 ] = filewavconv_get_spinner(); foo [ 1 ] = '\0'; - Str = g_strdup_printf (_("%s Traitement Mplayer: %d%%"), + Str = g_strdup_printf (_("%s Use Mplayer: %d%%"), foo, (gint)(conv.total_percent * 100)); WindScan_set_label (Str); @@ -310,7 +310,7 @@ CONV_FIC_WAV *PConvWav = NULL; DETAIL *detail = NULL; - gtk_timeout_remove (conv.handler_timeout_conv); + g_source_remove (conv.handler_timeout_conv); WindScan_close (); // SUPPRESSION DE LA STRUCTURE: DETAIL->CONV_FIC_WAV @@ -342,7 +342,7 @@ if (FALSE == conv.bool_stop) { NotifySend_msg (_("XCFA: Conversions WAV TO WAV"), _("Ok"), conv.bool_stop); } else { - NotifySend_msg (_("XCFA: Conversions WAV TO WAV"), _("Arret par l'utilisateur"), conv.bool_stop); + NotifySend_msg (_("XCFA: Conversions WAV TO WAV"), _("Stop by user"), conv.bool_stop); } } @@ -456,7 +456,12 @@ // PRINT_FUNC_LF(); - WindScan_open ("Conversions files WAV", WINDSCAN_PULSE); + // WindScan_open ("Conversions files WAV", WINDSCAN_PULSE); + wind_scan_init( + WindMain, + "Conversions files WAV", + WINDSCAN_PULSE + ); WindScan_set_label ("Conversions WAV TO WAV ..."); VarFilewavconv.PassMplayer = 0; @@ -464,7 +469,7 @@ filewavconv_set_flags_before (); conv.bool_thread_conv = TRUE; - conv.handler_timeout_conv = gtk_timeout_add (50, filewavconv_timeout, 0); + conv.handler_timeout_conv = g_timeout_add (50, filewavconv_timeout, 0); pthread_create (&nmr_tid, NULL ,(void *)filewavconv_thread, (void *)NULL); } diff -Nru xcfa-4.3.8/src/get_info.c xcfa-5.0.1/src/get_info.c --- xcfa-4.3.8/src/get_info.c 2013-10-25 11:03:29.000000000 +0000 +++ xcfa-5.0.1/src/get_info.c 2015-01-30 16:01:16.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : get_info.c * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License diff -Nru xcfa-4.3.8/src/get_info.h xcfa-5.0.1/src/get_info.h --- xcfa-4.3.8/src/get_info.h 2013-03-21 10:55:27.000000000 +0000 +++ xcfa-5.0.1/src/get_info.h 2015-01-21 16:28:42.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : get_info.h * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License diff -Nru xcfa-4.3.8/src/global.h xcfa-5.0.1/src/global.h --- xcfa-4.3.8/src/global.h 2013-03-21 10:55:27.000000000 +0000 +++ xcfa-5.0.1/src/global.h 2015-02-04 08:36:32.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : global.h * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License @@ -49,43 +49,45 @@ #define GLADE_GET_OBJECT(OBJ) gtk_builder_get_object (GtkXcfaProjet, OBJ) +GtkBuilder *Builder_open( gchar *p_name_glade, GtkBuilder *p_GtkBuilder ); + // // --------------------------------------------------------------------------- // NOTEBOOK // --------------------------------------------------------------------------- // // notebook_general -#define NOTEBOOK_DVD_AUDIO 0 -#define NOTEBOOK_CD_AUDIO 1 +#define NOTEBOOK_DVD_AUDIO 0 +#define NOTEBOOK_CD_AUDIO 1 // notebook_expander_cd - #define NOTEBOOK_CD_AUDIO_TAGS 0 - #define NOTEBOOK_CD_AUDIO_TITRE_CD 1 - #define NOTEBOOK_CD_AUDIO_CUE 2 -#define NOTEBOOK_FICHIERS 2 + #define NOTEBOOK_CD_AUDIO_TAGS 0 + #define NOTEBOOK_CD_AUDIO_TITRE_CD 1 + #define NOTEBOOK_CD_AUDIO_CUE 2 +#define NOTEBOOK_FICHIERS 2 // notebook_in_file #define NOTEBOOK_FICHIERS_CONVERSION 0 - #define NOTEBOOK_FICHIERS_WAV 1 - #define NOTEBOOK_FICHIERS_MP3OGG 2 - #define NOTEBOOK_FICHIERS_TAGS 3 -#define NOTEBOOK_SPLIT 3 -#define NOTEBOOK_POCHETTE 4 -#define NOTEBOOK_OPTIONS 5 + #define NOTEBOOK_FICHIERS_WAV 1 + #define NOTEBOOK_FICHIERS_MP3OGG 2 + #define NOTEBOOK_FICHIERS_TAGS 3 +#define NOTEBOOK_SPLIT 3 +#define NOTEBOOK_POCHETTE 4 +#define NOTEBOOK_OPTIONS 5 // notebook_options - #define NOTEBOOK_OPTIONS_GENERAL 0 - #define NOTEBOOK_OPTIONS_CD_AUDIO 1 - #define NOTEBOOK_OPTIONS_LAME 2 - #define NOTEBOOK_OPTIONS_OGGENC 3 - #define NOTEBOOK_OPTIONS_FLAC 4 - #define NOTEBOOK_OPTIONS_MAC 5 - #define NOTEBOOK_OPTIONS_WAVPACK 6 - #define NOTEBOOK_OPTIONS_MUSEPACK 7 - #define NOTEBOOK_OPTIONS_FAAC 8 - #define NOTEBOOK_OPTIONS_AACPLUSENC 9 + #define NOTEBOOK_OPTIONS_GENERAL 0 + #define NOTEBOOK_OPTIONS_CD_AUDIO 1 + #define NOTEBOOK_OPTIONS_LAME 2 + #define NOTEBOOK_OPTIONS_OGGENC 3 + #define NOTEBOOK_OPTIONS_FLAC 4 + #define NOTEBOOK_OPTIONS_MAC 5 + #define NOTEBOOK_OPTIONS_WAVPACK 6 + #define NOTEBOOK_OPTIONS_MUSEPACK 7 + #define NOTEBOOK_OPTIONS_FAAC 8 + #define NOTEBOOK_OPTIONS_AACPLUSENC 9 #define NOTEBOOK_OPTIONS_EXPORT_TAGS 10 #define NOTEBOOK_PRGEXTERNES 6 // notebook_app_externes #define NOTEBOOK_OPTIONS_PRGEXTERNES 0 - #define NOTEBOOK_OPTIONS_EXTRA 1 + #define NOTEBOOK_OPTIONS_EXTRA 1 // // --------------------------------------------------------------------------- @@ -105,8 +107,8 @@ // #ifndef GLADE_HOOKUP_OBJECT #define GLADE_HOOKUP_OBJECT(component,widget,name) \ - g_object_set_data_full (G_OBJECT (component), name, \ - gtk_widget_ref (widget), (GDestroyNotify) gtk_widget_unref) + g_object_set_data_full(G_OBJECT(component), name, \ + g_object_ref(widget), (GDestroyNotify) g_object_unref) #endif #ifndef GLADE_HOOKUP_OBJECT_NO_REF @@ -125,10 +127,10 @@ // /usr/include/gtk-2.0/gdk/gdkkeysyms.h typedef struct { - gboolean BoolGDKPress; // + gboolean BoolGDKPress; // gboolean BoolGDK_Control_L_R; // - gboolean BoolGDK_Control_A; // - guint keyval; // + gboolean BoolGDK_Control_A; // + guint keyval; // } KEYS; extern KEYS keys; diff -Nru xcfa-4.3.8/src/main.c xcfa-5.0.1/src/main.c --- xcfa-4.3.8/src/main.c 2013-09-02 15:44:06.000000000 +0000 +++ xcfa-5.0.1/src/main.c 2015-03-01 16:49:42.000000000 +0000 @@ -1,25 +1,25 @@ /* * file : main.c * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License * * This file is part of XCFA. - * + * * XCFA is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * at your option) any later version. - * + * * XCFA is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. - * + * * You should have received a copy of the GNU General Public License * along with XCFA. If not, see . */ @@ -41,14 +41,6 @@ #include #include -/* For the workspace/viewport stuff */ -#ifdef GDK_WINDOWING_X11 -#include -#include -#include -#include -#endif - #ifdef ENABLE_STATIC_LIBRARY #include "../lib/lib.h" #endif @@ -64,7 +56,7 @@ #include "dvd.h" #include "web.h" #include "poche.h" -#include "treeview.h" +#include "win_treeview.h" #include "get_info.h" #include "mplayer.h" #include "win_about.h" @@ -88,51 +80,52 @@ KEYS keys = { FALSE, // gboolean BoolGDKPress - FALSE, // gboolean BoolGDK_Control_L_R + FALSE, // gboolean BoolGDK_KEY_Control_L_R FALSE, // gboolean BoolGDK_Control_A 0, // guint keyval }; -// -// +// +// void on_label_statusbar_global_realize (GtkWidget *widget, gpointer user_data) { AdrLabelStatusbarGlobal = widget; } // -RECUPERATION DES DATAS // -SAUVEGARDE DES DATAS -// +// void remove_memory_apply (void) { static gboolean BoolDoEnterRemove = FALSE; - + if (TRUE == BoolDoEnterRemove) return; BoolDoEnterRemove = TRUE; - + VERBOSE ("\n--------------------------------------------------\n"); PRINT_FUNC_LF(); VERBOSE ("--------------------------------------------------\n"); - + VERBOSE("AlsaPlay_stop ()\n") AlsaPlay_stop (); - + VERBOSE ("split_set_stop ()\n"); split_set_stop (); - + VERBOSE ("Recuperation position et taille de la fenetre\n"); - gdk_window_get_root_origin (WindMain->window, &Config.WinPos_X, &Config.WinPos_Y); - gdk_window_get_size (WindMain->window, &Config.WinWidth, &Config.WinHeight); - + gdk_window_get_root_origin( gtk_widget_get_window(WindMain), &Config.WinPos_X, &Config.WinPos_Y ); + Config.WinWidth = gdk_window_get_width( gtk_widget_get_window(WindMain) ); + Config.WinHeight = gdk_window_get_height( gtk_widget_get_window(WindMain) ) ; + VERBOSE ("Sauvegarde l'etat de l'expander CD\n"); Config.BoolEtatExpanderCd = gtk_expander_get_expanded (GTK_EXPANDER (var_cd.Adr_Expander)); - + VERBOSE ("Sauvegarde de la configuration\n"); config_save (); - + VERBOSE ("config_remove ()\n"); config_remove (); - + VERBOSE ("fileanalyze_remove_entetefile ()\n"); fileanalyze_remove_entetefile (); @@ -146,46 +139,43 @@ VERBOSE ("NotifySend_remove ()\n"); NotifySend_remove (); - + VERBOSE ("Parse_remove (PARSE_TYPE_STOCKAGE_CD)\n"); Parse_remove (PARSE_TYPE_STOCKAGE_CD, TRUE); VERBOSE ("Parse_remove (PARSE_TYPE_TITLE_CD)\n"); Parse_remove (PARSE_TYPE_TITLE_CD, TRUE); - + VERBOSE ("poche_remove_view()\n"); poche_remove_view(); - + VERBOSE ("poche_remove_ListImage()\n"); poche_remove_ListImage(); - VERBOSE ("libcombo_remove ()\n"); - libcombo_remove (); - VERBOSE ("scan_remove_glist_media ()\n"); scan_remove_glist_media (); VERBOSE ("web_remove_temporary_rep ()\n"); web_remove_temporary_rep (); - + VERBOSE ("CdCurl_remove_struct_all ()\n"); CdCurl_remove_struct_all(); - + VERBOSE ("mplayer_remove_list_args ()\n"); mplayer_remove_list_args (); - + VERBOSE ("SplitSpectre_remove ()\n"); SplitSpectre_remove (); - + VERBOSE ("AlsaPlay_remove ()\n"); AlsaPlay_remove (); - + if (TRUE == libutils_test_file_exist (XCFA_FILE_LOAD)) { - if( TRUE == OptionsCommandLine.BoolVerboseMode ) + if( TRUE == OptionsCommandLine.BoolVerboseMode ) g_print ("g_unlink (%s)\n", XCFA_FILE_LOAD); g_unlink (XCFA_FILE_LOAD); } if (TRUE == libutils_test_file_exist (SPLIT_FILE_TMP_WAV)) { - if( TRUE == OptionsCommandLine.BoolVerboseMode ) + if( TRUE == OptionsCommandLine.BoolVerboseMode ) g_print ("g_unlink (%s)\n", SPLIT_FILE_TMP_WAV); g_unlink (SPLIT_FILE_TMP_WAV); } @@ -193,7 +183,7 @@ StatusBar_remove(); Config.PathPochette = libutils_remove_temporary_rep( Config.PathPochette ); - + if( NULL != Config.PathLoadImg ) { g_free( Config.PathLoadImg ); Config.PathLoadImg = NULL; @@ -205,13 +195,13 @@ g_print ("\n"); } -// -// -void on_notebook_general_switch_page (GtkNotebook *notebook, GtkNotebookPage *page, guint page_num, gpointer user_data) +// +// +void on_notebook_general_switch_page( GtkNotebook *notebook, gpointer page, guint page_num, gpointer user_data ) { if (TRUE == Config.BoolConfigOk) { Config.NotebookGeneral = page_num; - + if (NOTEBOOK_SPLIT == Config.NotebookGeneral) { split_set_name_file (); } @@ -220,38 +210,38 @@ } } } -// -// -void on_notebook_expander_cd_switch_page (GtkNotebook *notebook, GtkNotebookPage *page, guint page_num, gpointer user_data) +// +// +void on_notebook_expander_cd_switch_page( GtkNotebook *notebook, gpointer page, guint page_num, gpointer user_data ) { if (TRUE == Config.BoolConfigOk) Config.NotebookExpanderCd = page_num; } -// -// -void on_notebook_in_file_switch_page (GtkNotebook *notebook, GtkNotebookPage *page, guint page_num, gpointer user_data) +// +// +void on_notebook_in_file_switch_page( GtkNotebook *notebook, gpointer page, guint page_num, gpointer user_data ) { if (TRUE == Config.BoolConfigOk) { Config.NotebookFile = page_num; switch (Config.NotebookFile) { case NOTEBOOK_FICHIERS_CONVERSION : - gtk_combo_box_remove_text (GTK_COMBO_BOX (var_file.Adr_combobox_DestFile), 2); - gtk_combo_box_append_text (GTK_COMBO_BOX (var_file.Adr_combobox_DestFile), Config.PathDestinationFileAll); + gtk_combo_box_text_remove( GTK_COMBO_BOX_TEXT(var_file.Adr_combobox_DestFile), 2 ); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_file.Adr_combobox_DestFile), Config.PathDestinationFileAll); gtk_combo_box_set_active (GTK_COMBO_BOX (var_file.Adr_combobox_DestFile), Config.TabIndiceComboDestFile[ NOTEBOOK_FICHIERS_CONVERSION ]); break; case NOTEBOOK_FICHIERS_WAV : - gtk_combo_box_remove_text (GTK_COMBO_BOX (var_file.Adr_combobox_DestFile), 2); - gtk_combo_box_append_text (GTK_COMBO_BOX (var_file.Adr_combobox_DestFile), Config.PathDestinationFileWav); + gtk_combo_box_text_remove( GTK_COMBO_BOX_TEXT(var_file.Adr_combobox_DestFile), 2 ); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_file.Adr_combobox_DestFile), Config.PathDestinationFileWav); gtk_combo_box_set_active (GTK_COMBO_BOX (var_file.Adr_combobox_DestFile), Config.TabIndiceComboDestFile[ NOTEBOOK_FICHIERS_WAV ]); break; case NOTEBOOK_FICHIERS_MP3OGG : - gtk_combo_box_remove_text (GTK_COMBO_BOX (var_file.Adr_combobox_DestFile), 2); - gtk_combo_box_append_text (GTK_COMBO_BOX (var_file.Adr_combobox_DestFile), Config.PathDestinationFileMp3Ogg); + gtk_combo_box_text_remove( GTK_COMBO_BOX_TEXT(var_file.Adr_combobox_DestFile), 2 ); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_file.Adr_combobox_DestFile), Config.PathDestinationFileMp3Ogg); gtk_combo_box_set_active (GTK_COMBO_BOX (var_file.Adr_combobox_DestFile), Config.TabIndiceComboDestFile[ NOTEBOOK_FICHIERS_MP3OGG ]); break; case NOTEBOOK_FICHIERS_TAGS : - gtk_combo_box_remove_text (GTK_COMBO_BOX (var_file.Adr_combobox_DestFile), 2); - gtk_combo_box_append_text (GTK_COMBO_BOX (var_file.Adr_combobox_DestFile), Config.PathDestinationFileTags); + gtk_combo_box_text_remove( GTK_COMBO_BOX_TEXT(var_file.Adr_combobox_DestFile), 2 ); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_file.Adr_combobox_DestFile), Config.PathDestinationFileTags); gtk_combo_box_set_active (GTK_COMBO_BOX (var_file.Adr_combobox_DestFile), Config.TabIndiceComboDestFile[ NOTEBOOK_FICHIERS_TAGS ]); break; } @@ -259,49 +249,49 @@ StatusBar_puts(); } } -// -// -void on_notebook_options_switch_page (GtkNotebook *notebook, GtkNotebookPage *page, guint page_num, gpointer user_data) +// +// +void on_notebook_options_switch_page( GtkNotebook *notebook, gpointer page, guint page_num, gpointer user_data ) { if (TRUE == Config.BoolConfigOk) Config.NotebookOptions = page_num; } -// -// -void on_notebook_app_externes_switch_page (GtkNotebook *notebook, GtkNotebookPage *page, guint page_num, gpointer user_data) +// +// +void on_notebook_app_externes_switch_page( GtkNotebook *notebook, gpointer page, guint page_num, gpointer user_data ) { if (TRUE == Config.BoolConfigOk) Config.NotebookAppExterns = page_num; } -// -// +// +// gboolean on_wind_main_key_press_event( GtkWidget *widget, GdkEventKey *kevent, gpointer user_data ) { keys.BoolGDKPress = TRUE; keys.keyval = kevent->keyval; - - if( kevent->keyval == GDK_Control_L || kevent->keyval == GDK_Control_R ) { + + if( kevent->keyval == GDK_KEY_Control_L || kevent->keyval == GDK_KEY_Control_R ) { keys.BoolGDK_Control_L_R = TRUE; - } + } else if( kevent->state == 20 || kevent->state == 21 ) { if( kevent->keyval == 65 || kevent->keyval == 97 ) { keys.BoolGDK_Control_A = TRUE; } } - + if( NOTEBOOK_POCHETTE == Config.NotebookGeneral ) { if( TRUE == keys.BoolGDK_Control_L_R ) { pochedir_set_ctrl( TRUE ); } - else if( kevent->keyval == GDK_Delete) { + else if( kevent->keyval == GDK_KEY_Delete) { // poche_remove_image(); } } else if( NOTEBOOK_SPLIT == Config.NotebookGeneral ) { - if( kevent->keyval == GDK_Delete ) { + if( kevent->keyval == GDK_KEY_Delete ) { SplitSelector_cut (); } - else if( kevent->keyval == GDK_space ) { + else if( kevent->keyval == GDK_KEY_space ) { // Une action sur la barre espace agit sur sur le play/pause split_play (); } @@ -309,19 +299,19 @@ return FALSE; } -// -// +// +// gboolean on_wind_main_key_release_event( GtkWidget *widget, GdkEventKey *kevent, gpointer user_data ) { keys.BoolGDKPress = FALSE; keys.BoolGDK_Control_L_R = FALSE; keys.BoolGDK_Control_A = FALSE; keys.keyval = 0; - + if( NOTEBOOK_POCHETTE == Config.NotebookGeneral ) { pochedir_set_ctrl( FALSE ); } - + return FALSE; } @@ -340,48 +330,49 @@ } GdkWindowState; */ if( GDK_WINDOW_STATE_MAXIMIZED == event->new_window_state ) { - gdk_window_maximize( WindMain->window ); + gdk_window_maximize( gtk_widget_get_window(WindMain) ); } return FALSE; } -// -// +// +// gboolean on_wind_main_delete_event (GtkWidget *widget, GdkEvent *event, gpointer user_data) { remove_memory_apply (); gtk_main_quit (); return FALSE; } -// -// +// +// gboolean on_wind_main_destroy_event (GtkWidget *widget, GdkEvent *event, gpointer user_data) { remove_memory_apply (); gtk_main_quit (); return FALSE; } -// -// +// +// void on_quitter1_activate (GtkMenuItem *menuitem, gpointer user_data) { remove_memory_apply (); gtk_main_quit (); } -// -// +// +// void on_a_propos1_activate (GtkMenuItem *menuitem, gpointer user_data) { gchar *StrAboutXcfa = g_strdup_printf ("About XCFA - %s", VERSION); - WinAbout_open (StrAboutXcfa); + // WinAbout_open (StrAboutXcfa); + wind_about_init( WindMain ); g_free (StrAboutXcfa); StrAboutXcfa = NULL; } -// -// +// +// void on_show_fields_activate (GtkMenuItem *menuitem, gpointer user_data) { - treeview_open_window (); + wintreeview_init( WindMain ); } /* Install un 'handler' sur une mauvaise allocation memoire * -- @@ -392,37 +383,37 @@ { g_unlink (XCFA_FILE_LOAD); remove_memory_apply (); - + g_print ("\n=========================================================\n"); g_print ("= Segmentation fault\n"); - g_print (_("= Adressage memoire invalide\n")); + g_print ("= Adressage memoire invalide\n"); g_print ("=-------------------------------------------------------=\n"); g_print ("= You've probably found a bug in XCFA\n"); - g_print (_("= Vous avez probablement trouve un bug dans XCFA\n")); + g_print ("= Vous avez probablement trouve un bug dans XCFA\n"); g_print ("=========================================================\n\n"); - + exit (EXIT_FAILURE); } -// -// +// +// typedef enum { _PARAMS_GET_ALL_OPTIONS_ = 0, _PARAMS_GET_OPTIONS_ONLY_ } PARAMS_CMD_LINE; -// -// +// +// GList *AnalyseCommandLine_set_argv( gint argc, gchar *argv[], PARAMS_CMD_LINE ParamsCmdLine ) { gint i; gchar *str_current_dir = NULL; // FILE *fp = NULL; GList *GListFile = NULL; - + if( optind < argc ) { - + for( i = optind; i < argc; i++ ) { // VERBOSE MODE - if( 0 == strcmp( argv[i], "-verbose" )) { + if( 0 == strcmp( argv[i], "--verbose" )) { OptionsCommandLine.BoolVerboseMode = TRUE; // g_print( "\nVERBOSE MODE:\n"); // g_print( " argv[ %d ] = %s\n", i, argv[ i ] ); @@ -430,7 +421,7 @@ // g_print( "\n" ); } // VERSION MODE - else if( 0 == strcmp( argv[i], "-version" )) { + else if( 0 == strcmp( argv[i], "--version" )) { OptionsCommandLine.BoolVersionMode = TRUE; // g_print( "\nVERSION MODE:\n"); // g_print( " argv[ %d ] = %s\n", i, argv[ i ] ); @@ -438,21 +429,21 @@ // g_print( "\n" ); } // HELP MODE - else if( 0 == strcmp( argv[i], "-help" ) || 0 == strcmp( argv[i], "-h" )) { + else if( 0 == strcmp( argv[i], "--help" ) || 0 == strcmp( argv[i], "-h" )) { OptionsCommandLine.BoolHelpMode = TRUE; } } - + // STOP ? if( _PARAMS_GET_OPTIONS_ONLY_ == ParamsCmdLine )return( (GList *)NULL ); - + if( FALSE == OptionsCommandLine.BoolVerboseMode && FALSE == OptionsCommandLine.BoolVersionMode ) { str_current_dir = g_get_current_dir(); // fp = fopen( XCFA_FILE_LOAD, "a" ); for( i = optind; i < argc; i++ ) - { + { if( *argv[ i ] == '-' ) continue; - + // FROM DESKTOP if( argv[i][0] == '/' ) { @@ -461,7 +452,7 @@ } else { gchar *str = NULL; - + str = g_strdup_printf( "%s/%s", str_current_dir, argv[i] ); // fprintf( fp, "%s\n", str ); GListFile = g_list_append( GListFile, g_strdup( str )); @@ -476,14 +467,14 @@ } return( (GList *)GListFile ); } -// -// +// +// void main_save( GList *p_GListFile ) { GList *list = NULL; gchar *PtrName = NULL; FILE *fp = NULL; - + // g_return_if_fail (p_GListFile != NULL); if( NULL != p_GListFile ) { if( NULL != (list = g_list_first( p_GListFile ))) { @@ -499,12 +490,12 @@ } } } -// -// +// +// static void on_message_received( const char *message, gpointer data ) { FILE *fp = NULL; - + fp = fopen( XCFA_FILE_LOAD, "a" ); fprintf( fp, "%s\n", message ); fclose( fp ); @@ -529,7 +520,7 @@ /* Init type system as soon as possible */ // g_type_init (); g_set_prgname ("xcfa"); - + PRINT_FUNC_LF(); g_print ("\n"); g_print ("***************************\n"); @@ -541,16 +532,16 @@ g_print ("Gtk version = %d.%d.%d\n", GTK_MAJOR_VERSION, GTK_MICRO_VERSION, GTK_MINOR_VERSION); g_print ("Glib version = %d.%d.%d\n", GLIB_MAJOR_VERSION, GLIB_MICRO_VERSION, GLIB_MINOR_VERSION); g_print ("***************************\n\n"); - + // ANALYSE UNIQUEMENT LES OPTIONS AnalyseCommandLine_set_argv( argc, &argv[0], _PARAMS_GET_OPTIONS_ONLY_ ); - + if( TRUE == OptionsCommandLine.BoolVersionMode || TRUE == OptionsCommandLine.BoolHelpMode ) { if( TRUE == OptionsCommandLine.BoolHelpMode ) { g_print( "HELP MODE:\n"); - g_print( " -help -h Displays this help section and exits\n" ); - g_print( " -version Displays the version of the program and exits\n" ); - g_print( " -verbose Activate verbose mode\n" ); + g_print( " --help -h Displays this help section and exits\n" ); + g_print( " --version Displays the version of the program and exits\n" ); + g_print( " --verbose Activate verbose mode\n" ); } g_print( "\n" ); g_unlink( XCFA_FILE_LOAD ); @@ -562,9 +553,9 @@ if( TRUE == OptionsCommandLine.BoolVerboseMode ) { g_print ("ENABLE_NLS OK\n"); g_print ("\tGETTEXT_PACKAGE = %s\n", GETTEXT_PACKAGE); - g_print ("\tLOCALE_DIR = %s\n", LOCALE_DIR); + g_print ("\tLOCALE_DIR = %s\n", LOCALE_DIR); } - + setlocale( LC_ALL, "" ); bindtextdomain (GETTEXT_PACKAGE, LOCALE_DIR); bind_textdomain_codeset (GETTEXT_PACKAGE, "UTF-8"); @@ -572,14 +563,14 @@ #else // g_error ("ENABLE_NLS IS NOT OK\n\n"); #endif - + GetInfo_cpu_print (); - - // IF Segmentation fault + + // IF Segmentation fault signal (SIGSEGV, segfault_handler); - + config_read(); - + setlocale( LC_ALL, "" ); gtk_init( &argc, &argv ); @@ -595,7 +586,7 @@ connection = bacon_message_connection_new( "xcfa" ); if( NULL != connection ) { - if( FALSE == bacon_message_connection_get_is_server( connection )) + if( FALSE == bacon_message_connection_get_is_server( connection )) { // g_print( "\nCLIENT:\nGET COMMAND LINE AND EXIT\n" ); GListFile = AnalyseCommandLine_set_argv( argc, &argv[0], _PARAMS_GET_ALL_OPTIONS_ ); // Get and save param-file @@ -605,10 +596,10 @@ GListFile = libutils_remove_glist( GListFile ); // g_print( "bacon_utils_get_current_workspace() = %d\n", bacon_utils_get_current_workspace() +1 ); bacon_message_connection_free( connection ); - + exit( EXIT_SUCCESS ); } - else + else { g_unlink( XCFA_FILE_LOAD ); g_unlink( SPLIT_FILE_TMP_WAV ); @@ -625,10 +616,8 @@ { g_warning( "Cannot create the 'gedit' connection." ); } - - gdk_threads_enter (); + if (NULL == (GtkXcfaProjet = gtk_builder_new ())) { - gdk_threads_leave (); return (EXIT_FAILURE); } gtk_builder_set_translation_domain (GtkXcfaProjet, NULL); @@ -647,14 +636,13 @@ g_print("! File XML: [ %s ] %s\n", PathShareProjet != NULL ? PathShareProjet : PACKAGE_NAME_GLADE, g_file_test (PathShareProjet, G_FILE_TEST_EXISTS) ? "Found" : "Not Found !!!" ); g_print("!---\n"); } - + if (FALSE == g_file_test (PathCurrentDir, G_FILE_TEST_EXISTS) && FALSE == g_file_test (PathShareProjet, G_FILE_TEST_EXISTS)) { g_free (PathCurrentDir); PathCurrentDir = NULL; g_free (PathShareProjet); PathShareProjet = NULL; - gdk_threads_leave (); return (EXIT_FAILURE); } else if (TRUE == g_file_test (PathCurrentDir, G_FILE_TEST_EXISTS)) { @@ -677,7 +665,6 @@ PathShareProjet = NULL; Path = NULL; - gdk_threads_leave (); return (EXIT_FAILURE); } g_free (PathCurrentDir); @@ -689,26 +676,26 @@ gtk_builder_set_translation_domain (GtkXcfaProjet, setlocale( LC_ALL, "" ) ); gtk_builder_connect_signals (GtkXcfaProjet, NULL); WindMain = GTK_WIDGET (GLADE_GET_OBJECT("wind_main")); - + // REDIMENSIONNER LA FENETRE gtk_window_resize(GTK_WINDOW(WindMain), Config.WinWidth, Config.WinHeight); // PLACER LA FENETRE gtk_window_move(GTK_WINDOW(WindMain), Config.WinPos_X, Config.WinPos_Y); - + PackageVersion = g_strdup_printf ("X Convert File Audio - %s", VERSION); gtk_window_set_title (GTK_WINDOW (WindMain), PackageVersion); g_free (PackageVersion); PackageVersion = NULL; - + libutils_set_default_icone_to_win (WindMain); - + gtk_widget_show (WindMain); - + // NOTEBOOK gtk_notebook_set_current_page (GTK_NOTEBOOK (GLADE_GET_OBJECT("notebook_general")), NOTEBOOK_PRGEXTERNES); gtk_notebook_set_current_page (GTK_NOTEBOOK (GLADE_GET_OBJECT("notebook_app_externes")), NOTEBOOK_OPTIONS_EXTRA); gtk_notebook_set_current_page (GTK_NOTEBOOK (GLADE_GET_OBJECT("notebook_app_externes")), NOTEBOOK_OPTIONS_PRGEXTERNES); - + // OPTIONS gtk_notebook_set_current_page (GTK_NOTEBOOK (GLADE_GET_OBJECT("notebook_general")), NOTEBOOK_OPTIONS); gtk_notebook_set_current_page (GTK_NOTEBOOK (GLADE_GET_OBJECT("notebook_options")), NOTEBOOK_OPTIONS_EXPORT_TAGS); @@ -744,13 +731,13 @@ // DVD-AUDIO gtk_notebook_set_current_page (GTK_NOTEBOOK (GLADE_GET_OBJECT("notebook_general")), NOTEBOOK_DVD_AUDIO); - + var_options.ColorLineCommand = COLOR_INIT; options_set_all_interne (); var_options.ColorLineCommand = COLOR_NONE; - + Config.BoolConfigOk = TRUE; - + gtk_notebook_set_current_page (GTK_NOTEBOOK (GLADE_GET_OBJECT("notebook_general")), Config.NotebookGeneral); gtk_notebook_set_current_page (GTK_NOTEBOOK (GLADE_GET_OBJECT("notebook_expander_cd")), Config.NotebookExpanderCd); gtk_notebook_set_current_page (GTK_NOTEBOOK (GLADE_GET_OBJECT("notebook_in_file")), Config.NotebookFile); @@ -759,7 +746,7 @@ if (NOTEBOOK_SPLIT == Config.NotebookGeneral) { split_set_name_file (); } - + cdaudio_set_flag_buttons (); file_set_flag_buttons (); FileWav_set_flag_buttons (); @@ -767,39 +754,39 @@ FileTags_set_flag_buttons (); gtk_widget_set_sensitive (GTK_WIDGET (var_file_tags.Adr_table_tag), FALSE); gtk_widget_set_sensitive (GTK_WIDGET (GLADE_GET_OBJECT("button_tag_appliquer")), FALSE); - + gtk_widget_hide( GTK_WIDGET (GLADE_GET_OBJECT("frame_discid"))); - treeview_set_etat_fields (); - treeview_radiobutton_set_PosFieldsName (); - - filetrash_test_trash_is_ok (); + // TODO: re-encoding unit [ poche_web.c ] function [ void pocheweb_analyze_file_html( void ) ] -> OK + // gtk_widget_hide( GTK_WIDGET (GLADE_GET_OBJECT("frame_import_img_web"))); + + wintreeview_set_etat_fields (); + wintreeview_radiobutton_set_PosFieldsName (); + poche_set_flag_buttons(); - + // SI CHARGEMENT DE FICHIERS DEPUIS LE BUREAU AVEC LE MENU CONTEXTUEL process_goto_timeout (); - + // ADMINISTRATOR MODE ? if( 0 == getuid() ) { - wininfo_create ( + wind_info_init ( WindMain, - _("MODE ADMINISTRATEUR"), + _("ADMINISTRATOR MODE"), "\n", - _(" Vous ne devriez pas utiliser "), + _(" You should not use "), "\n", - _(" XCFA sous ROOT !"), + _(" XCFA under ROOT !"), "\n", ""); } xdg_print_list_config_path(); xdg_print_list_data_path(); - + gtk_main (); // bacon_message_connection_free( connection ); - - gdk_threads_leave (); exit(EXIT_SUCCESS); } diff -Nru xcfa-4.3.8/src/Makefile.am xcfa-5.0.1/src/Makefile.am --- xcfa-4.3.8/src/Makefile.am 2014-01-20 15:41:57.000000000 +0000 +++ xcfa-5.0.1/src/Makefile.am 2015-02-06 07:24:30.000000000 +0000 @@ -16,6 +16,7 @@ bin_PROGRAMS=xcfa xcfa_SOURCES=main.c \ +builder.c \ alsa_audio.c alsa_audio.h alsa_play.c alsa_play.h \ bacon.c bacon.h \ cd_audio.c cd_audio_extract.c cd_audio_extract.h cd_audio_toc.c cd_cue.c cd_cue.h cd_expander.c cd_normalise.c cd_normalise.h cd_audio.h cd_curl.c cd_curl.h \ @@ -44,9 +45,8 @@ split.c split_selector.c split_spectre.c split_cue.c split_conv.c split_wav.c split.h \ statusbar.c statusbar.h \ tags.c tags_aac.c tags_aiff.c tags_ape.c tags_dts.c tags_flac.c tags_m4a.c tags_mp3.c tags_mpc.c tags_ogg.c tags_rm.c tags_shn.c tags_wav.c tags_wavpack.c tags_wma.c tags_ac3.c tags.h \ -translate.c \ -treeview.c treeview.h \ web.c web.h \ +win_treeview.c win_treeview.h \ win_about.c win_about.h \ win_info.c win_info.h \ win_reader.c win_reader.h \ diff -Nru xcfa-4.3.8/src/Makefile.in xcfa-5.0.1/src/Makefile.in --- xcfa-4.3.8/src/Makefile.in 2014-01-31 12:25:46.000000000 +0000 +++ xcfa-5.0.1/src/Makefile.in 2015-03-01 14:14:56.000000000 +0000 @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.14.1 from Makefile.am. +# Makefile.in generated by automake 1.15 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2013 Free Software Foundation, Inc. +# Copyright (C) 1994-2014 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -15,7 +15,17 @@ @SET_MAKE@ VPATH = @srcdir@ -am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)' +am__is_gnu_make = { \ + if test -z '$(MAKELEVEL)'; then \ + false; \ + elif test -n '$(MAKE_HOST)'; then \ + true; \ + elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \ + true; \ + else \ + false; \ + fi; \ +} am__make_running_with_option = \ case $${target_option-} in \ ?) ;; \ @@ -80,25 +90,25 @@ host_triplet = @host@ bin_PROGRAMS = xcfa$(EXEEXT) subdir = src -DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \ - $(top_srcdir)/depcomp ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) +DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON) mkinstalldirs = $(install_sh) -d CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = am__installdirs = "$(DESTDIR)$(bindir)" PROGRAMS = $(bin_PROGRAMS) -am_xcfa_OBJECTS = xcfa-main.$(OBJEXT) xcfa-alsa_audio.$(OBJEXT) \ - xcfa-alsa_play.$(OBJEXT) xcfa-bacon.$(OBJEXT) \ - xcfa-cd_audio.$(OBJEXT) xcfa-cd_audio_extract.$(OBJEXT) \ - xcfa-cd_audio_toc.$(OBJEXT) xcfa-cd_cue.$(OBJEXT) \ - xcfa-cd_expander.$(OBJEXT) xcfa-cd_normalise.$(OBJEXT) \ - xcfa-cd_curl.$(OBJEXT) xcfa-configuser.$(OBJEXT) \ - xcfa-conv.$(OBJEXT) xcfa-cursor.$(OBJEXT) xcfa-dvd.$(OBJEXT) \ +am_xcfa_OBJECTS = xcfa-main.$(OBJEXT) xcfa-builder.$(OBJEXT) \ + xcfa-alsa_audio.$(OBJEXT) xcfa-alsa_play.$(OBJEXT) \ + xcfa-bacon.$(OBJEXT) xcfa-cd_audio.$(OBJEXT) \ + xcfa-cd_audio_extract.$(OBJEXT) xcfa-cd_audio_toc.$(OBJEXT) \ + xcfa-cd_cue.$(OBJEXT) xcfa-cd_expander.$(OBJEXT) \ + xcfa-cd_normalise.$(OBJEXT) xcfa-cd_curl.$(OBJEXT) \ + xcfa-configuser.$(OBJEXT) xcfa-conv.$(OBJEXT) \ + xcfa-cursor.$(OBJEXT) xcfa-dvd.$(OBJEXT) \ xcfa-dvd_table.$(OBJEXT) xcfa-dvd_read.$(OBJEXT) \ xcfa-dvd_extract.$(OBJEXT) xcfa-dragNdrop.$(OBJEXT) \ xcfa-extra.$(OBJEXT) xcfa-file.$(OBJEXT) \ @@ -134,11 +144,10 @@ xcfa-tags_ogg.$(OBJEXT) xcfa-tags_rm.$(OBJEXT) \ xcfa-tags_shn.$(OBJEXT) xcfa-tags_wav.$(OBJEXT) \ xcfa-tags_wavpack.$(OBJEXT) xcfa-tags_wma.$(OBJEXT) \ - xcfa-tags_ac3.$(OBJEXT) xcfa-translate.$(OBJEXT) \ - xcfa-treeview.$(OBJEXT) xcfa-web.$(OBJEXT) \ - xcfa-win_about.$(OBJEXT) xcfa-win_info.$(OBJEXT) \ - xcfa-win_reader.$(OBJEXT) xcfa-win_scan.$(OBJEXT) \ - xcfa-win_vte.$(OBJEXT) + xcfa-tags_ac3.$(OBJEXT) xcfa-web.$(OBJEXT) \ + xcfa-win_treeview.$(OBJEXT) xcfa-win_about.$(OBJEXT) \ + xcfa-win_info.$(OBJEXT) xcfa-win_reader.$(OBJEXT) \ + xcfa-win_scan.$(OBJEXT) xcfa-win_vte.$(OBJEXT) xcfa_OBJECTS = $(am_xcfa_OBJECTS) am__DEPENDENCIES_1 = xcfa_DEPENDENCIES = ${top_builddir}/lib/lib.a $(am__DEPENDENCIES_1) @@ -200,6 +209,7 @@ done | $(am__uniquify_input)` ETAGS = etags CTAGS = ctags +am__DIST_COMMON = $(srcdir)/Makefile.in $(top_srcdir)/depcomp DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ AMTAR = @AMTAR@ @@ -344,6 +354,7 @@ -DPIXMAPS_DIR=\""$(datadir)/pixmaps/xcfa"\" xcfa_SOURCES = main.c \ +builder.c \ alsa_audio.c alsa_audio.h alsa_play.c alsa_play.h \ bacon.c bacon.h \ cd_audio.c cd_audio_extract.c cd_audio_extract.h cd_audio_toc.c cd_cue.c cd_cue.h cd_expander.c cd_normalise.c cd_normalise.h cd_audio.h cd_curl.c cd_curl.h \ @@ -372,9 +383,8 @@ split.c split_selector.c split_spectre.c split_cue.c split_conv.c split_wav.c split.h \ statusbar.c statusbar.h \ tags.c tags_aac.c tags_aiff.c tags_ape.c tags_dts.c tags_flac.c tags_m4a.c tags_mp3.c tags_mpc.c tags_ogg.c tags_rm.c tags_shn.c tags_wav.c tags_wavpack.c tags_wma.c tags_ac3.c tags.h \ -translate.c \ -treeview.c treeview.h \ web.c web.h \ +win_treeview.c win_treeview.h \ win_about.c win_about.h \ win_info.c win_info.h \ win_reader.c win_reader.h \ @@ -402,7 +412,6 @@ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu src/Makefile'; \ $(am__cd) $(top_srcdir) && \ $(AUTOMAKE) --gnu src/Makefile -.PRECIOUS: Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ *config.status*) \ @@ -476,6 +485,7 @@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xcfa-alsa_audio.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xcfa-alsa_play.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xcfa-bacon.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xcfa-builder.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xcfa-cd_audio.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xcfa-cd_audio_extract.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xcfa-cd_audio_toc.Po@am__quote@ @@ -559,13 +569,12 @@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xcfa-tags_wav.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xcfa-tags_wavpack.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xcfa-tags_wma.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xcfa-translate.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xcfa-treeview.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xcfa-web.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xcfa-win_about.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xcfa-win_info.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xcfa-win_reader.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xcfa-win_scan.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xcfa-win_treeview.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xcfa-win_vte.Po@am__quote@ .c.o: @@ -596,6 +605,20 @@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xcfa_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o xcfa-main.obj `if test -f 'main.c'; then $(CYGPATH_W) 'main.c'; else $(CYGPATH_W) '$(srcdir)/main.c'; fi` +xcfa-builder.o: builder.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xcfa_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT xcfa-builder.o -MD -MP -MF $(DEPDIR)/xcfa-builder.Tpo -c -o xcfa-builder.o `test -f 'builder.c' || echo '$(srcdir)/'`builder.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/xcfa-builder.Tpo $(DEPDIR)/xcfa-builder.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='builder.c' object='xcfa-builder.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xcfa_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o xcfa-builder.o `test -f 'builder.c' || echo '$(srcdir)/'`builder.c + +xcfa-builder.obj: builder.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xcfa_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT xcfa-builder.obj -MD -MP -MF $(DEPDIR)/xcfa-builder.Tpo -c -o xcfa-builder.obj `if test -f 'builder.c'; then $(CYGPATH_W) 'builder.c'; else $(CYGPATH_W) '$(srcdir)/builder.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/xcfa-builder.Tpo $(DEPDIR)/xcfa-builder.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='builder.c' object='xcfa-builder.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xcfa_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o xcfa-builder.obj `if test -f 'builder.c'; then $(CYGPATH_W) 'builder.c'; else $(CYGPATH_W) '$(srcdir)/builder.c'; fi` + xcfa-alsa_audio.o: alsa_audio.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xcfa_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT xcfa-alsa_audio.o -MD -MP -MF $(DEPDIR)/xcfa-alsa_audio.Tpo -c -o xcfa-alsa_audio.o `test -f 'alsa_audio.c' || echo '$(srcdir)/'`alsa_audio.c @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/xcfa-alsa_audio.Tpo $(DEPDIR)/xcfa-alsa_audio.Po @@ -1786,34 +1809,6 @@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xcfa_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o xcfa-tags_ac3.obj `if test -f 'tags_ac3.c'; then $(CYGPATH_W) 'tags_ac3.c'; else $(CYGPATH_W) '$(srcdir)/tags_ac3.c'; fi` -xcfa-translate.o: translate.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xcfa_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT xcfa-translate.o -MD -MP -MF $(DEPDIR)/xcfa-translate.Tpo -c -o xcfa-translate.o `test -f 'translate.c' || echo '$(srcdir)/'`translate.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/xcfa-translate.Tpo $(DEPDIR)/xcfa-translate.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='translate.c' object='xcfa-translate.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xcfa_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o xcfa-translate.o `test -f 'translate.c' || echo '$(srcdir)/'`translate.c - -xcfa-translate.obj: translate.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xcfa_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT xcfa-translate.obj -MD -MP -MF $(DEPDIR)/xcfa-translate.Tpo -c -o xcfa-translate.obj `if test -f 'translate.c'; then $(CYGPATH_W) 'translate.c'; else $(CYGPATH_W) '$(srcdir)/translate.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/xcfa-translate.Tpo $(DEPDIR)/xcfa-translate.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='translate.c' object='xcfa-translate.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xcfa_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o xcfa-translate.obj `if test -f 'translate.c'; then $(CYGPATH_W) 'translate.c'; else $(CYGPATH_W) '$(srcdir)/translate.c'; fi` - -xcfa-treeview.o: treeview.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xcfa_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT xcfa-treeview.o -MD -MP -MF $(DEPDIR)/xcfa-treeview.Tpo -c -o xcfa-treeview.o `test -f 'treeview.c' || echo '$(srcdir)/'`treeview.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/xcfa-treeview.Tpo $(DEPDIR)/xcfa-treeview.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='treeview.c' object='xcfa-treeview.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xcfa_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o xcfa-treeview.o `test -f 'treeview.c' || echo '$(srcdir)/'`treeview.c - -xcfa-treeview.obj: treeview.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xcfa_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT xcfa-treeview.obj -MD -MP -MF $(DEPDIR)/xcfa-treeview.Tpo -c -o xcfa-treeview.obj `if test -f 'treeview.c'; then $(CYGPATH_W) 'treeview.c'; else $(CYGPATH_W) '$(srcdir)/treeview.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/xcfa-treeview.Tpo $(DEPDIR)/xcfa-treeview.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='treeview.c' object='xcfa-treeview.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xcfa_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o xcfa-treeview.obj `if test -f 'treeview.c'; then $(CYGPATH_W) 'treeview.c'; else $(CYGPATH_W) '$(srcdir)/treeview.c'; fi` - xcfa-web.o: web.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xcfa_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT xcfa-web.o -MD -MP -MF $(DEPDIR)/xcfa-web.Tpo -c -o xcfa-web.o `test -f 'web.c' || echo '$(srcdir)/'`web.c @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/xcfa-web.Tpo $(DEPDIR)/xcfa-web.Po @@ -1828,6 +1823,20 @@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xcfa_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o xcfa-web.obj `if test -f 'web.c'; then $(CYGPATH_W) 'web.c'; else $(CYGPATH_W) '$(srcdir)/web.c'; fi` +xcfa-win_treeview.o: win_treeview.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xcfa_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT xcfa-win_treeview.o -MD -MP -MF $(DEPDIR)/xcfa-win_treeview.Tpo -c -o xcfa-win_treeview.o `test -f 'win_treeview.c' || echo '$(srcdir)/'`win_treeview.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/xcfa-win_treeview.Tpo $(DEPDIR)/xcfa-win_treeview.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='win_treeview.c' object='xcfa-win_treeview.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xcfa_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o xcfa-win_treeview.o `test -f 'win_treeview.c' || echo '$(srcdir)/'`win_treeview.c + +xcfa-win_treeview.obj: win_treeview.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xcfa_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT xcfa-win_treeview.obj -MD -MP -MF $(DEPDIR)/xcfa-win_treeview.Tpo -c -o xcfa-win_treeview.obj `if test -f 'win_treeview.c'; then $(CYGPATH_W) 'win_treeview.c'; else $(CYGPATH_W) '$(srcdir)/win_treeview.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/xcfa-win_treeview.Tpo $(DEPDIR)/xcfa-win_treeview.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='win_treeview.c' object='xcfa-win_treeview.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xcfa_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o xcfa-win_treeview.obj `if test -f 'win_treeview.c'; then $(CYGPATH_W) 'win_treeview.c'; else $(CYGPATH_W) '$(srcdir)/win_treeview.c'; fi` + xcfa-win_about.o: win_about.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(xcfa_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT xcfa-win_about.o -MD -MP -MF $(DEPDIR)/xcfa-win_about.Tpo -c -o xcfa-win_about.o `test -f 'win_about.c' || echo '$(srcdir)/'`win_about.c @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/xcfa-win_about.Tpo $(DEPDIR)/xcfa-win_about.Po @@ -2102,6 +2111,8 @@ ps ps-am tags tags-am uninstall uninstall-am \ uninstall-binPROGRAMS +.PRECIOUS: Makefile + # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. diff -Nru xcfa-4.3.8/src/mplayer.c xcfa-5.0.1/src/mplayer.c --- xcfa-4.3.8/src/mplayer.c 2013-03-21 10:55:49.000000000 +0000 +++ xcfa-5.0.1/src/mplayer.c 2015-01-30 17:37:48.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : mplayer.c * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License @@ -284,7 +284,7 @@ PRINT("DEBUT THREAD"); VarMplayer.BoolThreadActivate = TRUE; - fd = mplayer_call_exec (VarMplayer.PlayerArgs, &VarMplayer.CodeFork, STDOUT_FILENO); // STDERR_FILENO + fd = mplayer_call_exec (VarMplayer.PlayerArgs, &VarMplayer.CodeFork, STDOUT_FILENO); // STDERR_FILENO STDOUT_FILENO // // mplayer -input cmdlist // @@ -468,7 +468,7 @@ } else if (VarMplayer.BoolThreadActivate == FALSE) { - gtk_timeout_remove (VarMplayer.HandlerTimeout); + g_source_remove (VarMplayer.HandlerTimeout); // Widget de l'onglet dvd, cd ou fichiers sur ATTENTE switch (VarMplayer.ListPlayFrom) { @@ -604,7 +604,7 @@ if (FALSE == VarMplayer.BoolTimeoutActivate) { VarMplayer.BoolTimeoutActivate = TRUE; PRINT("DEBUT TIMEOUT"); - VarMplayer.HandlerTimeout = gtk_timeout_add (100, mplayer_timeout, 0); + VarMplayer.HandlerTimeout = g_timeout_add (100, mplayer_timeout, 0); } } diff -Nru xcfa-4.3.8/src/mplayer.h xcfa-5.0.1/src/mplayer.h --- xcfa-4.3.8/src/mplayer.h 2013-03-21 10:55:27.000000000 +0000 +++ xcfa-5.0.1/src/mplayer.h 2015-01-21 16:28:42.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : mplayer.h * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License diff -Nru xcfa-4.3.8/src/normalise.c xcfa-5.0.1/src/normalise.c --- xcfa-4.3.8/src/normalise.c 2014-01-20 15:16:11.000000000 +0000 +++ xcfa-5.0.1/src/normalise.c 2015-01-30 16:41:17.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : normalise.c * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License @@ -284,7 +284,7 @@ normalise_set_mess ("Normalise Wav -> Fix"); conv_to_convert( PtrTabArgs, FALSE, NORMALISE_EXEC, "NORMALISE_EXEC Wav -> Fix"); - PtrTabArgs = filelc_RevoveTab( PtrTabArgs ); + PtrTabArgs = filelc_RemoveTab( PtrTabArgs ); normalise.ElementActif ++; @@ -344,7 +344,7 @@ PtrTabArgs [ pos++ ] = NULL; conv_to_convert( PtrTabArgs, FALSE, MPLAYER_OGG_TO_WAV, "MPLAYER_OGG_TO_WAV"); - PtrTabArgs = filelc_RevoveTab( PtrTabArgs ); + PtrTabArgs = filelc_RemoveTab( PtrTabArgs ); normalise.ElementActif ++; @@ -362,7 +362,7 @@ PtrTabArgs [ pos++ ] = NULL; conv_to_convert( PtrTabArgs, FALSE, NORMALISE_EXEC, "NORMALISE_EXEC NORMALISATION du Wav"); - PtrTabArgs = filelc_RevoveTab( PtrTabArgs ); + PtrTabArgs = filelc_RemoveTab( PtrTabArgs ); normalise.ElementActif ++; @@ -388,7 +388,7 @@ PtrTabArgs = filelc_get_command_line (¶m_filelc); conv_to_convert( PtrTabArgs, FALSE, OGGENC_WAV_TO_OGG, "OGGENC_WAV_TO_OGG"); - PtrTabArgs = filelc_RevoveTab( PtrTabArgs ); + PtrTabArgs = filelc_RemoveTab( PtrTabArgs ); g_unlink (IndiFix->NameFileCopieWav); @@ -435,7 +435,7 @@ PtrTabArgs [ pos++ ] = NULL; conv_to_convert( PtrTabArgs, FALSE, MPLAYER_MP3_TO_WAV, "MPLAYER_MP3_TO_WAV"); - PtrTabArgs = filelc_RevoveTab( PtrTabArgs ); + PtrTabArgs = filelc_RemoveTab( PtrTabArgs ); normalise.ElementActif ++; @@ -453,7 +453,7 @@ PtrTabArgs [ pos++ ] = NULL; conv_to_convert( PtrTabArgs, FALSE, NORMALISE_EXEC, "NORMALISE_EXEC NORMALISATION du Wav"); - PtrTabArgs = filelc_RevoveTab( PtrTabArgs ); + PtrTabArgs = filelc_RemoveTab( PtrTabArgs ); normalise.ElementActif ++; @@ -479,7 +479,7 @@ PtrTabArgs = filelc_get_command_line (¶m_filelc); conv_to_convert( PtrTabArgs, FALSE, LAME_WAV_TO_MP3, "LAME_WAV_TO_MP3"); - PtrTabArgs = filelc_RevoveTab( PtrTabArgs ); + PtrTabArgs = filelc_RemoveTab( PtrTabArgs ); g_unlink (IndiFix->NameFileCopieWav); @@ -530,7 +530,7 @@ if (*IndiFix->EtatTrash == FILE_TRASH_OK) *IndiFix->EtatTrash = FILE_TRASH_VERIF_OK; conv_to_convert( PtrTabArgs, FALSE, NORMALISE_EXEC, "NORMALISE_EXEC Wav -> Peak"); - PtrTabArgs = filelc_RevoveTab( PtrTabArgs ); + PtrTabArgs = filelc_RemoveTab( PtrTabArgs ); normalise.ElementActif ++; @@ -584,7 +584,7 @@ PtrTabArgs [ pos++ ] = NULL; conv_to_convert( PtrTabArgs, FALSE, OGG123_OGG_TO_WAV, "OGG123_OGG_TO_WAV CONVERSION Ogg vers Wav"); - PtrTabArgs = filelc_RevoveTab( PtrTabArgs ); + PtrTabArgs = filelc_RemoveTab( PtrTabArgs ); normalise.ElementActif ++; @@ -602,7 +602,7 @@ if (*IndiFix->EtatTrash == FILE_TRASH_OK) *IndiFix->EtatTrash = FILE_TRASH_VERIF_OK; conv_to_convert( PtrTabArgs, FALSE, NORMALISE_EXEC, "NORMALISE_EXEC Wav -> Peak"); - PtrTabArgs = filelc_RevoveTab( PtrTabArgs ); + PtrTabArgs = filelc_RemoveTab( PtrTabArgs ); normalise.ElementActif ++; @@ -628,7 +628,7 @@ PtrTabArgs = filelc_get_command_line (¶m_filelc); conv_to_convert( PtrTabArgs, FALSE, OGGENC_WAV_TO_OGG, "OGGENC_WAV_TO_OGG"); - PtrTabArgs = filelc_RevoveTab( PtrTabArgs ); + PtrTabArgs = filelc_RemoveTab( PtrTabArgs ); g_unlink (IndiFix->NameFileCopieWav); @@ -674,7 +674,7 @@ PtrTabArgs [ pos++ ] = NULL; conv_to_convert( PtrTabArgs, FALSE, MPLAYER_MP3_TO_WAV, "MPLAYER_MP3_TO_WAV"); - PtrTabArgs = filelc_RevoveTab( PtrTabArgs ); + PtrTabArgs = filelc_RemoveTab( PtrTabArgs ); normalise.ElementActif ++; @@ -690,7 +690,7 @@ PtrTabArgs [ pos++ ] = NULL; conv_to_convert( PtrTabArgs, FALSE, NORMALISE_EXEC, "NORMALISE_EXEC Wav -> Peak"); - PtrTabArgs = filelc_RevoveTab( PtrTabArgs ); + PtrTabArgs = filelc_RemoveTab( PtrTabArgs ); normalise.ElementActif ++; @@ -716,7 +716,7 @@ PtrTabArgs = filelc_get_command_line (¶m_filelc); conv_to_convert( PtrTabArgs, FALSE, LAME_WAV_TO_MP3, "LAME_WAV_TO_MP3"); - PtrTabArgs = filelc_RevoveTab( PtrTabArgs ); + PtrTabArgs = filelc_RemoveTab( PtrTabArgs ); g_unlink (IndiFix->NameFileCopieWav); @@ -770,7 +770,7 @@ PtrTabArgs [ pos++ ] = NULL; conv_to_convert( PtrTabArgs, FALSE, OGG123_OGG_TO_WAV, "OGG123_OGG_TO_WAV CONVERSION Ogg vers Wav"); - PtrTabArgs = filelc_RevoveTab( PtrTabArgs ); + PtrTabArgs = filelc_RemoveTab( PtrTabArgs ); normalise.ElementActif ++; } @@ -803,7 +803,7 @@ PtrTabArgs [ pos++ ] = NULL; conv_to_convert( PtrTabArgs, FALSE, MPLAYER_MP3_TO_WAV, "MPLAYER_MP3_TO_WAV"); - PtrTabArgs = filelc_RevoveTab( PtrTabArgs ); + PtrTabArgs = filelc_RemoveTab( PtrTabArgs ); normalise.ElementActif ++; } @@ -854,7 +854,7 @@ /* Normalisation */ conv_to_convert( PtrTabArgs, FALSE, NORMALISE_EXEC, "NORMALISE_EXEC Wav -> (MIX)RMS/GROUPE"); - PtrTabArgs = filelc_RevoveTab( PtrTabArgs ); + PtrTabArgs = filelc_RemoveTab( PtrTabArgs ); normalise.ElementActif ++; } @@ -897,7 +897,7 @@ PtrTabArgs = filelc_get_command_line (¶m_filelc); conv_to_convert( PtrTabArgs, FALSE, OGGENC_WAV_TO_OGG, "OGGENC_WAV_TO_OGG"); - PtrTabArgs = filelc_RevoveTab( PtrTabArgs ); + PtrTabArgs = filelc_RemoveTab( PtrTabArgs ); g_unlink (IndiFix->NameFileCopieWav); @@ -925,7 +925,7 @@ PtrTabArgs = filelc_get_command_line (¶m_filelc); conv_to_convert( PtrTabArgs,FALSE, LAME_WAV_TO_MP3, "LAME_WAV_TO_MP3"); - PtrTabArgs = filelc_RevoveTab( PtrTabArgs ); + PtrTabArgs = filelc_RemoveTab( PtrTabArgs ); g_unlink (IndiFix->NameFileCopieWav); @@ -974,7 +974,7 @@ PtrTabArgs [ pos++ ] = NULL; conv_to_convert( PtrTabArgs, FALSE, OGG123_OGG_TO_WAV, "OGG123_OGG_TO_WAV CONVERSION Ogg vers Wav"); - PtrTabArgs = filelc_RevoveTab( PtrTabArgs ); + PtrTabArgs = filelc_RemoveTab( PtrTabArgs ); normalise.ElementActif ++; } @@ -1007,7 +1007,7 @@ PtrTabArgs [ pos++ ] = NULL; conv_to_convert( PtrTabArgs, FALSE, MPLAYER_MP3_TO_WAV, "MPLAYER_MP3_TO_WAV"); - PtrTabArgs = filelc_RevoveTab( PtrTabArgs ); + PtrTabArgs = filelc_RemoveTab( PtrTabArgs ); normalise.ElementActif ++; } @@ -1055,7 +1055,7 @@ /* Chercher la moyenne PEAK */ conv_to_convert( PtrTabArgs, FALSE, NORMALISE_GET_LEVEL, "NORMALISE_GET_LEVEL -> PEAK/GROUP"); - PtrTabArgs = filelc_RevoveTab( PtrTabArgs ); + PtrTabArgs = filelc_RemoveTab( PtrTabArgs ); /* APPLIQUER LA MOYENNE PEAK */ @@ -1097,7 +1097,7 @@ /* Normalisation */ conv_to_convert( PtrTabArgs, FALSE, NORMALISE_EXEC, "NORMALISE_EXEC Wav -> PEAK/GROUP"); - PtrTabArgs = filelc_RevoveTab( PtrTabArgs ); + PtrTabArgs = filelc_RemoveTab( PtrTabArgs ); normalise.ElementActif ++; } @@ -1143,7 +1143,7 @@ PtrTabArgs = filelc_get_command_line (¶m_filelc); conv_to_convert( PtrTabArgs, FALSE, OGGENC_WAV_TO_OGG, "OGGENC_WAV_TO_OGG"); - PtrTabArgs = filelc_RevoveTab( PtrTabArgs ); + PtrTabArgs = filelc_RemoveTab( PtrTabArgs ); g_unlink (IndiFix->NameFileCopieWav); @@ -1171,7 +1171,7 @@ PtrTabArgs = filelc_get_command_line (¶m_filelc); conv_to_convert( PtrTabArgs, FALSE, LAME_WAV_TO_MP3, "LAME_WAV_TO_MP3"); - PtrTabArgs = filelc_RevoveTab( PtrTabArgs ); + PtrTabArgs = filelc_RemoveTab( PtrTabArgs ); g_unlink (IndiFix->NameFileCopieWav); @@ -1753,7 +1753,7 @@ normalise.ListPeakGroupOgg = normalise_remove_glist_STRUCT (normalise.ListPeakGroupOgg); normalise.ListPeakGroupMp3 = normalise_remove_glist_STRUCT (normalise.ListPeakGroupMp3); - gtk_timeout_remove (normalise.Handler_Timeout); + g_source_remove (normalise.Handler_Timeout); file_pixbuf_update_glist (); fileaction_set_end (TYPE_NORMALISE); } @@ -1766,7 +1766,12 @@ { // PRINT_FUNC_LF(); - WindScan_open ("Normalisation", WINDSCAN_PULSE); + // WindScan_open ("Normalisation", WINDSCAN_PULSE); + wind_scan_init( + WindMain, + "Normalisation", + WINDSCAN_PULSE + ); WindScan_set_label ("Normalisation des fichiers ..."); normalise.bool_thread_end = FALSE; normalise.bool_set_end_of_user = FALSE; @@ -1778,7 +1783,7 @@ normalise.ElementActif = 0; conv_reset_struct (WindScan_close_request); pthread_create (&normalise.nmr_tid, NULL ,(void *)normalise_struct_lists, (void *)NULL); - normalise.Handler_Timeout = gtk_timeout_add (100, normalise_timeout, 0); + normalise.Handler_Timeout = g_timeout_add (100, normalise_timeout, 0); } diff -Nru xcfa-4.3.8/src/normalise.h xcfa-5.0.1/src/normalise.h --- xcfa-4.3.8/src/normalise.h 2013-03-21 10:55:27.000000000 +0000 +++ xcfa-5.0.1/src/normalise.h 2015-01-21 16:28:42.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : normalise.h * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License diff -Nru xcfa-4.3.8/src/notify_send.c xcfa-5.0.1/src/notify_send.c --- xcfa-4.3.8/src/notify_send.c 2013-03-21 10:55:49.000000000 +0000 +++ xcfa-5.0.1/src/notify_send.c 2015-01-30 16:01:16.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : notify_send.c * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License @@ -110,7 +110,7 @@ NotifySend_remove (); if (FALSE == PrgInit.bool_notify_send) { // SUPPRESSION DE L'ALERTE INDIQUANT L'ABSENCE DU PAQUET: LIBNOTIFY-BIN - // wininfo_create ( + // wind_info_init ( // WindMain, // _("Package NOT FOUND !"), // _("(Package libnotify-bin): notify-send NOT EXIST"), diff -Nru xcfa-4.3.8/src/notify_send.h xcfa-5.0.1/src/notify_send.h --- xcfa-4.3.8/src/notify_send.h 2013-03-21 10:55:27.000000000 +0000 +++ xcfa-5.0.1/src/notify_send.h 2015-01-21 16:28:42.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : notify_send.c * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License diff -Nru xcfa-4.3.8/src/options_aacplusenc.c xcfa-5.0.1/src/options_aacplusenc.c --- xcfa-4.3.8/src/options_aacplusenc.c 2013-03-21 10:55:49.000000000 +0000 +++ xcfa-5.0.1/src/options_aacplusenc.c 2015-02-10 10:33:56.000000000 +0000 @@ -3,7 +3,7 @@ * project : xcfa * with : Gtk-2 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License @@ -63,15 +63,14 @@ // void on_combobox_accplusenc_mono_realize (GtkWidget *widget, gpointer user_data) { - libcombo_alloc (GTK_COMBO_BOX (widget)); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), "10"); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), "12"); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), "14"); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), "18"); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), "20"); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), "24"); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), "32"); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), "40"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), "10"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), "12"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), "14"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), "18"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), "20"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), "24"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), "32"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), "40"); gtk_combo_box_set_active (GTK_COMBO_BOX (widget), Config.ChoiceMonoAacplusenc); var_options.Adr_Widget_aacplusenc_mono = GTK_COMBO_BOX (widget); } @@ -89,12 +88,11 @@ // void on_combobox_accplusenc_stereo_realize (GtkWidget *widget, gpointer user_data) { - libcombo_alloc (GTK_COMBO_BOX (widget)); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), "18"); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), "24"); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), "32"); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), "40"); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), "48"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), "18"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), "24"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), "32"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), "40"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), "48"); gtk_combo_box_set_active (GTK_COMBO_BOX (widget), Config.ChoiceStereoAacplusenc); var_options.Adr_Widget_aacplusenc_stereo = GTK_COMBO_BOX (widget); } diff -Nru xcfa-4.3.8/src/options.c xcfa-5.0.1/src/options.c --- xcfa-4.3.8/src/options.c 2013-03-21 10:55:49.000000000 +0000 +++ xcfa-5.0.1/src/options.c 2015-02-05 19:31:30.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : options.c * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License @@ -129,11 +129,9 @@ gint i; gchar *Ptr = NULL; - // libcombo_alloc (GTK_COMBO_BOX (widget)); - for (i = 0; i < 20; i++) { Ptr = g_strdup_printf ("%d", i); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), Ptr); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), Ptr ); g_free (Ptr); Ptr = NULL; } @@ -166,10 +164,10 @@ gtk_button_set_label (GTK_BUTTON (var_options.Adr_path_temp), Config.PathnameTMP); } else { - wininfo_create ( + wind_info_init ( WindMain, - _("ERREUR: Lieu de stockage non autorise !"), - _("Veuillez recommencer."), + _("ERROR : storage location not permitted !"), + _("Please start again."), ""); } } diff -Nru xcfa-4.3.8/src/options_cd.c xcfa-5.0.1/src/options_cd.c --- xcfa-4.3.8/src/options_cd.c 2013-03-21 10:55:49.000000000 +0000 +++ xcfa-5.0.1/src/options_cd.c 2015-02-05 19:32:22.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : options_cd.c * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License @@ -119,7 +119,7 @@ Ptr ); g_string_append_printf (gstr, - _("Pour evaluer les templates, vous devez activer une lecture de cdaudio") + _("To assess the templates, you must enable a reading cdaudio") ); g_string_append_printf (gstr, "" diff -Nru xcfa-4.3.8/src/options_faac.c xcfa-5.0.1/src/options_faac.c --- xcfa-4.3.8/src/options_faac.c 2013-03-21 10:55:49.000000000 +0000 +++ xcfa-5.0.1/src/options_faac.c 2015-01-30 16:01:16.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : options_faac.c * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License @@ -91,10 +91,8 @@ void on_combobox_faac_conteneur_realize (GtkWidget *widget, gpointer user_data) { - libcombo_alloc (GTK_COMBO_BOX (widget)); - - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), _("Transport Stream (ADTS) - Extension .aac")); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), _("MPEG-4 File Format (MP4) - Extension .m4a")); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), _("Transport Stream (ADTS) - Extension .aac")); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), _("MPEG-4 File Format (MP4) - Extension .m4a")); gtk_combo_box_set_active (GTK_COMBO_BOX (widget), Config.ConteneurFacc); var_options.Adr_Widget_faac_conteneur = GTK_COMBO_BOX (widget); @@ -116,10 +114,9 @@ void on_combobox_faac_choice_vbr_abr_realize (GtkWidget *widget, gpointer user_data) { - libcombo_alloc (GTK_COMBO_BOX (widget)); var_options.Adr_Widget_faac_choice_vbr_abr = GTK_COMBO_BOX (widget); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), "VBR"); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), "ABR"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), "VBR"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), "ABR"); gtk_combo_box_set_active (GTK_COMBO_BOX (widget), Config.AbrVbrFacc); } void on_combobox_faac_choice_vbr_abr_changed (GtkComboBox *combobox, gpointer user_data) @@ -132,28 +129,26 @@ if (var_options.Adr_Widget_faac_choice_vbr_abr == NULL) return; if (var_options.Adr_Widget_faac_set_choice_vbr_abr == NULL) return; - libcombo_alloc (GTK_COMBO_BOX (var_options.Adr_Widget_faac_set_choice_vbr_abr)); - switch (gtk_combo_box_get_active (var_options.Adr_Widget_faac_choice_vbr_abr)) { /* VBR * 10, 30, 50, 70, 80, 90, 100, 120, 150, 200, 250, 300, 400, 500 */ case 0 : - gtk_combo_box_append_text (GTK_COMBO_BOX (var_options.Adr_Widget_faac_set_choice_vbr_abr), "10"); - gtk_combo_box_append_text (GTK_COMBO_BOX (var_options.Adr_Widget_faac_set_choice_vbr_abr), "30"); - gtk_combo_box_append_text (GTK_COMBO_BOX (var_options.Adr_Widget_faac_set_choice_vbr_abr), "50"); - gtk_combo_box_append_text (GTK_COMBO_BOX (var_options.Adr_Widget_faac_set_choice_vbr_abr), "70"); - gtk_combo_box_append_text (GTK_COMBO_BOX (var_options.Adr_Widget_faac_set_choice_vbr_abr), "80"); - gtk_combo_box_append_text (GTK_COMBO_BOX (var_options.Adr_Widget_faac_set_choice_vbr_abr), "90"); - gtk_combo_box_append_text (GTK_COMBO_BOX (var_options.Adr_Widget_faac_set_choice_vbr_abr), "100"); - gtk_combo_box_append_text (GTK_COMBO_BOX (var_options.Adr_Widget_faac_set_choice_vbr_abr), "120"); - gtk_combo_box_append_text (GTK_COMBO_BOX (var_options.Adr_Widget_faac_set_choice_vbr_abr), "150"); - gtk_combo_box_append_text (GTK_COMBO_BOX (var_options.Adr_Widget_faac_set_choice_vbr_abr), "200"); - gtk_combo_box_append_text (GTK_COMBO_BOX (var_options.Adr_Widget_faac_set_choice_vbr_abr), "250"); - gtk_combo_box_append_text (GTK_COMBO_BOX (var_options.Adr_Widget_faac_set_choice_vbr_abr), "300"); - gtk_combo_box_append_text (GTK_COMBO_BOX (var_options.Adr_Widget_faac_set_choice_vbr_abr), "400"); - gtk_combo_box_append_text (GTK_COMBO_BOX (var_options.Adr_Widget_faac_set_choice_vbr_abr), "500"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_options.Adr_Widget_faac_set_choice_vbr_abr), "10"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_options.Adr_Widget_faac_set_choice_vbr_abr), "30"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_options.Adr_Widget_faac_set_choice_vbr_abr), "50"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_options.Adr_Widget_faac_set_choice_vbr_abr), "70"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_options.Adr_Widget_faac_set_choice_vbr_abr), "80"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_options.Adr_Widget_faac_set_choice_vbr_abr), "90"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_options.Adr_Widget_faac_set_choice_vbr_abr), "100"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_options.Adr_Widget_faac_set_choice_vbr_abr), "120"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_options.Adr_Widget_faac_set_choice_vbr_abr), "150"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_options.Adr_Widget_faac_set_choice_vbr_abr), "200"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_options.Adr_Widget_faac_set_choice_vbr_abr), "250"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_options.Adr_Widget_faac_set_choice_vbr_abr), "300"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_options.Adr_Widget_faac_set_choice_vbr_abr), "400"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_options.Adr_Widget_faac_set_choice_vbr_abr), "500"); gtk_combo_box_set_active (GTK_COMBO_BOX (var_options.Adr_Widget_faac_set_choice_vbr_abr), Config.VbrFaccIndice); break; @@ -162,12 +157,12 @@ * 56, 64, 80, 96, 128, 152 */ case 1 : - gtk_combo_box_append_text (GTK_COMBO_BOX (var_options.Adr_Widget_faac_set_choice_vbr_abr), "56"); - gtk_combo_box_append_text (GTK_COMBO_BOX (var_options.Adr_Widget_faac_set_choice_vbr_abr), "64"); - gtk_combo_box_append_text (GTK_COMBO_BOX (var_options.Adr_Widget_faac_set_choice_vbr_abr), "80"); - gtk_combo_box_append_text (GTK_COMBO_BOX (var_options.Adr_Widget_faac_set_choice_vbr_abr), "96"); - gtk_combo_box_append_text (GTK_COMBO_BOX (var_options.Adr_Widget_faac_set_choice_vbr_abr), "128"); - gtk_combo_box_append_text (GTK_COMBO_BOX (var_options.Adr_Widget_faac_set_choice_vbr_abr), "152"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_options.Adr_Widget_faac_set_choice_vbr_abr), "56"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_options.Adr_Widget_faac_set_choice_vbr_abr), "64"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_options.Adr_Widget_faac_set_choice_vbr_abr), "80"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_options.Adr_Widget_faac_set_choice_vbr_abr), "96"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_options.Adr_Widget_faac_set_choice_vbr_abr), "128"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_options.Adr_Widget_faac_set_choice_vbr_abr), "152"); gtk_combo_box_set_active (GTK_COMBO_BOX (var_options.Adr_Widget_faac_set_choice_vbr_abr), Config.AbrFaccIndice); break; @@ -179,7 +174,6 @@ void on_combobox_faac_set_choice_vbr_abr_realize (GtkWidget *widget, gpointer user_data) { - // libcombo_alloc (GTK_COMBO_BOX (widget)); var_options.Adr_Widget_faac_set_choice_vbr_abr = GTK_COMBO_BOX (widget); on_combobox_faac_choice_vbr_abr_changed (NULL,NULL); } diff -Nru xcfa-4.3.8/src/options_flac.c xcfa-5.0.1/src/options_flac.c --- xcfa-4.3.8/src/options_flac.c 2013-03-21 10:55:49.000000000 +0000 +++ xcfa-5.0.1/src/options_flac.c 2015-02-05 19:33:48.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : options_flac.c * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License @@ -58,21 +58,19 @@ -void on_options_combobox_flac_compression_realize (GtkWidget *widget, gpointer user_data) +void on_combobox_flac_compression_realize (GtkWidget *widget, gpointer user_data) { var_options.Adr_Widget_flac_compression = GTK_COMBO_BOX (widget); - // libcombo_alloc (GTK_COMBO_BOX (widget)); - - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), _("0 (Rapide)")); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), "1"); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), "2"); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), "3"); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), "4"); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), "5"); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), "6"); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), "7"); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), _("8 (Lent)")); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), _("0 (Fast)")); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), "1"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), "2"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), "3"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), "4"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), "5"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), "6"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), "7"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), _("8 (Low)")); gtk_combo_box_set_active (GTK_COMBO_BOX (widget), Config.CompressionLevelFlac); } diff -Nru xcfa-4.3.8/src/options.h xcfa-5.0.1/src/options.h --- xcfa-4.3.8/src/options.h 2013-03-21 10:55:27.000000000 +0000 +++ xcfa-5.0.1/src/options.h 2015-01-21 22:08:20.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : options.h * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License @@ -30,100 +30,100 @@ typedef enum { - COLOR_INIT = 0, // - COLOR_NONE, // - COLOR_LAME_DEBIT, // - COLOR_LAME_MODE, // - COLOR_OGGENC_DEBIT, // - COLOR_OGGENC_MANAGED, // - COLOR_OGGENC_DOWNMIX, // - COLOR_FLAC_TAUX_COMPRESSION, // - COLOR_MAC_QUALITE, // - COLOR_WAVPACK_MODE_HYBRIDE, // - COLOR_WAVPACK_COMPRESSION, // - COLOR_WAVPACK_SOUND, // - COLOR_WAVPACK_FICHIER_CORRECTION, // - COLOR_WAVPACK_COMPRESSION_MAXIMUM, // - COLOR_WAVPACK_SIGNATURE_MD5, // - COLOR_WAVPACK_EXTRA_ENCODING, // - COLOR_MUSEPACK_QUALITE, // - COLOR_FAAC_CONTENEUR, // - COLOR_FAAC_SET_CHOICE_VBR_ABR, // - COLOR_TAG_ARTIST, // - COLOR_TAG_TITLE, // - COLOR_TAG_ALBUM, // - COLOR_TAG_NUMERATE, // - COLOR_TAG_GENRE, // - COLOR_TAG_YEAR, // - COLOR_TAG_COMMENT // + COLOR_INIT = 0, // + COLOR_NONE, // + COLOR_LAME_DEBIT, // + COLOR_LAME_MODE, // + COLOR_OGGENC_DEBIT, // + COLOR_OGGENC_MANAGED, // + COLOR_OGGENC_DOWNMIX, // + COLOR_FLAC_TAUX_COMPRESSION, // + COLOR_MAC_QUALITE, // + COLOR_WAVPACK_MODE_HYBRIDE, // + COLOR_WAVPACK_COMPRESSION, // + COLOR_WAVPACK_SOUND, // + COLOR_WAVPACK_FICHIER_CORRECTION, // + COLOR_WAVPACK_COMPRESSION_MAXIMUM, // + COLOR_WAVPACK_SIGNATURE_MD5, // + COLOR_WAVPACK_EXTRA_ENCODING, // + COLOR_MUSEPACK_QUALITE, // + COLOR_FAAC_CONTENEUR, // + COLOR_FAAC_SET_CHOICE_VBR_ABR, // + COLOR_TAG_ARTIST, // + COLOR_TAG_TITLE, // + COLOR_TAG_ALBUM, // + COLOR_TAG_NUMERATE, // + COLOR_TAG_GENRE, // + COLOR_TAG_YEAR, // + COLOR_TAG_COMMENT // } COLOR_LINE_COMMAND; typedef enum { - _NONE_ = 0, // - _DEBIAN_, // - _TGZ_, // - _RPM_, // - _FPM_, // - _ARCHLINUX_, // - _PACKAGE_NOT_FOUND_ // + _NONE_ = 0, // + _DEBIAN_, // + _TGZ_, // + _RPM_, // + _FPM_, // + _ARCHLINUX_, // + _PACKAGE_NOT_FOUND_ // } TYPE_PACKAGE; typedef struct { GtkWidget *Adr_button_music_file_end_of_convert; // - GtkWidget *Adr_checkbutton_end_of_convert; // - GtkComboBox *Adr_Widget_Nice; // - GtkComboBox *Adr_Widget_Lame_bitrate; // - GtkComboBox *Adr_Widget_Lame_abr_cbr_vbr; // - GtkComboBox *Adr_Widget_Lame_Mode; // - GtkComboBox *Adr_Widget_Oggenc_bitrate; // - GtkComboBox *Adr_Widget_Oggenc_managed; // - GtkComboBox *Adr_Widget_Oggenc_downmix; // - GtkComboBox *Adr_Widget_Mppenc; // - GtkComboBox *Adr_Widget_wavpack; // - GtkComboBox *Adr_Widget_wavpack_sound; // - GtkComboBox *Adr_Widget_wavpack_mode_hybride; // + GtkWidget *Adr_checkbutton_end_of_convert; // + GtkComboBox *Adr_Widget_Nice; // + GtkComboBox *Adr_Widget_Lame_bitrate; // + GtkComboBox *Adr_Widget_Lame_abr_cbr_vbr; // + GtkComboBox *Adr_Widget_Lame_Mode; // + GtkComboBox *Adr_Widget_Oggenc_bitrate; // + GtkComboBox *Adr_Widget_Oggenc_managed; // + GtkComboBox *Adr_Widget_Oggenc_downmix; // + GtkComboBox *Adr_Widget_Mppenc; // + GtkComboBox *Adr_Widget_wavpack; // + GtkComboBox *Adr_Widget_wavpack_sound; // + GtkComboBox *Adr_Widget_wavpack_mode_hybride; // GtkComboBox *Adr_Widget_wavpack_correction_file; // GtkComboBox *Adr_Widget_wavpack_maximum_compression; // - GtkComboBox *Adr_Widget_wavpack_signature_md5; // - GtkComboBox *Adr_Widget_wavpack_extra_encoding; // - GtkComboBox *Adr_Widget_flac_compression; // - GtkComboBox *Adr_Widget_ape_compression; // - GtkWidget *Adr_radiobutton_cdparanoia; // - GtkWidget *Adr_radiobutton_libcddb; // + GtkComboBox *Adr_Widget_wavpack_signature_md5; // + GtkComboBox *Adr_Widget_wavpack_extra_encoding; // + GtkComboBox *Adr_Widget_flac_compression; // + GtkComboBox *Adr_Widget_ape_compression; // + GtkWidget *Adr_radiobutton_cdparanoia; // + GtkWidget *Adr_radiobutton_libcddb; // GtkWidget *Adr_radiobutton_extract_with_cdparanoia; // - GtkWidget *Adr_radiobutton_cdparanoia_mode_2; // + GtkWidget *Adr_radiobutton_cdparanoia_mode_2; // GtkWidget *Adr_radiobutton_cdparanoia_mode_expert; // GtkWidget *Adr_radiobutton_extract_with_cdda2wav; // - GtkWidget *Adr_label_type_paquege; // - TYPE_PACKAGE Type_Package; // _NONE_ = 0, _DEBIAN_, _TGZ_, _RPM_, _FPM_, _PACKAGE_NOT_FOUND_ - GtkWidget *Adr_entry_lame_mp3; // - GtkWidget *Adr_label_lame_mp3; // - GtkWidget *Adr_entry_oggenc_ogg; // - GtkWidget *Adr_label_oggenc_ogg; // - GtkWidget *Adr_entry_flac_flac; // - GtkWidget *Adr_label_flac_flac; // - GtkWidget *Adr_entry_mac_ape; // - GtkWidget *Adr_label_mac_ape; // - GtkWidget *Adr_entry_wavpack_wv; // - GtkWidget *Adr_label_wavpack_wv; // - GtkWidget *Adr_entry_musepack_mpc; // - GtkWidget *Adr_label_musepack_mpc; // - GtkWidget *Adr_entry_faac_m4a; // - GtkWidget *Adr_label_faac_m4a; // - GtkWidget *Adr_checkbutton_artist_tag; // - GtkWidget *Adr_checkbutton_title_tag; // - GtkWidget *Adr_checkbutton_album_tag; // - GtkWidget *Adr_checkbutton_numerate_tag; // - GtkWidget *Adr_checkbutton_genre_tag; // - GtkWidget *Adr_checkbutton_year_tag; // - GtkWidget *Adr_checkbutton_comment_tag; // - COLOR_LINE_COMMAND ColorLineCommand; // - GtkWidget *Adr_path_temp; // - GtkComboBox *Adr_Widget_faac_conteneur; // - GtkComboBox *Adr_Widget_faac_choice_vbr_abr; // + GtkWidget *Adr_label_type_paquege; // + TYPE_PACKAGE Type_Package; // _NONE_ = 0, _DEBIAN_, _TGZ_, _RPM_, _FPM_, _PACKAGE_NOT_FOUND_ + GtkWidget *Adr_entry_lame_mp3; // + GtkWidget *Adr_label_lame_mp3; // + GtkWidget *Adr_entry_oggenc_ogg; // + GtkWidget *Adr_label_oggenc_ogg; // + GtkWidget *Adr_entry_flac_flac; // + GtkWidget *Adr_label_flac_flac; // + GtkWidget *Adr_entry_mac_ape; // + GtkWidget *Adr_label_mac_ape; // + GtkWidget *Adr_entry_wavpack_wv; // + GtkWidget *Adr_label_wavpack_wv; // + GtkWidget *Adr_entry_musepack_mpc; // + GtkWidget *Adr_label_musepack_mpc; // + GtkWidget *Adr_entry_faac_m4a; // + GtkWidget *Adr_label_faac_m4a; // + GtkWidget *Adr_checkbutton_artist_tag; // + GtkWidget *Adr_checkbutton_title_tag; // + GtkWidget *Adr_checkbutton_album_tag; // + GtkWidget *Adr_checkbutton_numerate_tag; // + GtkWidget *Adr_checkbutton_genre_tag; // + GtkWidget *Adr_checkbutton_year_tag; // + GtkWidget *Adr_checkbutton_comment_tag; // + COLOR_LINE_COMMAND ColorLineCommand; // + GtkWidget *Adr_path_temp; // + GtkComboBox *Adr_Widget_faac_conteneur; // + GtkComboBox *Adr_Widget_faac_choice_vbr_abr; // GtkComboBox *Adr_Widget_faac_set_choice_vbr_abr; // - GtkComboBox *Adr_Widget_aacplusenc_mono; // - GtkComboBox *Adr_Widget_aacplusenc_stereo; // + GtkComboBox *Adr_Widget_aacplusenc_mono; // + GtkComboBox *Adr_Widget_aacplusenc_stereo; // } VAR_OPTIONS; // diff -Nru xcfa-4.3.8/src/options_internal.c xcfa-5.0.1/src/options_internal.c --- xcfa-4.3.8/src/options_internal.c 2013-03-21 10:55:49.000000000 +0000 +++ xcfa-5.0.1/src/options_internal.c 2015-01-30 16:01:16.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : options_internal.c * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License diff -Nru xcfa-4.3.8/src/options_mac.c xcfa-5.0.1/src/options_mac.c --- xcfa-4.3.8/src/options_mac.c 2013-03-21 10:55:49.000000000 +0000 +++ xcfa-5.0.1/src/options_mac.c 2015-01-30 16:01:16.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : options_mac.c * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License @@ -57,13 +57,11 @@ { var_options.Adr_Widget_ape_compression = GTK_COMBO_BOX (widget); - libcombo_alloc (GTK_COMBO_BOX (widget)); - - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), "Compress (fast): '-c1000'"); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), "Compress (normal): '-c2000'"); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), "Compress (high): '-c3000'"); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), "Compress (extra high): '-c4000'"); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), "Compress (insane): '-c5000'"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), "Compress (fast): '-c1000'"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), "Compress (normal): '-c2000'"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), "Compress (high): '-c3000'"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), "Compress (extra high): '-c4000'"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), "Compress (insane): '-c5000'"); gtk_combo_box_set_active (GTK_COMBO_BOX (widget), Config.CompressionLevelApeMac); } diff -Nru xcfa-4.3.8/src/options_mp3.c xcfa-5.0.1/src/options_mp3.c --- xcfa-4.3.8/src/options_mp3.c 2013-03-21 10:55:49.000000000 +0000 +++ xcfa-5.0.1/src/options_mp3.c 2015-02-05 19:34:42.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : options_mp3.c * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License @@ -208,12 +208,10 @@ void on_combobox_lame_abr_cbr_vbr_realize (GtkWidget *widget, gpointer user_data) { - // libcombo_alloc (GTK_COMBO_BOX (widget)); - - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), "ABR"); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), "CBR"); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), "VBR"); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), "VBR-NEW"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), "ABR"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), "CBR"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), "VBR"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), "VBR-NEW"); gtk_combo_box_set_active (GTK_COMBO_BOX (widget), Config.BitrateLameIndice); var_options.Adr_Widget_Lame_abr_cbr_vbr = GTK_COMBO_BOX (widget); } @@ -226,7 +224,6 @@ if (NULL == var_options.Adr_Widget_Lame_bitrate) return; if ((ind = gtk_combo_box_get_active (GTK_COMBO_BOX (var_options.Adr_Widget_Lame_abr_cbr_vbr))) < 0) return; Config.BitrateLameIndice = ind; - // libcombo_alloc (GTK_COMBO_BOX (var_options.Adr_Widget_Lame_bitrate)); bool_do_enter_options_mp3 = FALSE; libcombo_remove_options (GTK_COMBO_BOX (var_options.Adr_Widget_Lame_bitrate)); @@ -234,78 +231,78 @@ /* ABR 0 .. 13 */ case 0 : - gtk_combo_box_append_text (GTK_COMBO_BOX (var_options.Adr_Widget_Lame_bitrate), " 32"); - gtk_combo_box_append_text (GTK_COMBO_BOX (var_options.Adr_Widget_Lame_bitrate), " 40"); - gtk_combo_box_append_text (GTK_COMBO_BOX (var_options.Adr_Widget_Lame_bitrate), " 48"); - gtk_combo_box_append_text (GTK_COMBO_BOX (var_options.Adr_Widget_Lame_bitrate), " 56"); - gtk_combo_box_append_text (GTK_COMBO_BOX (var_options.Adr_Widget_Lame_bitrate), " 64"); - gtk_combo_box_append_text (GTK_COMBO_BOX (var_options.Adr_Widget_Lame_bitrate), " 80"); - gtk_combo_box_append_text (GTK_COMBO_BOX (var_options.Adr_Widget_Lame_bitrate), " 96"); - gtk_combo_box_append_text (GTK_COMBO_BOX (var_options.Adr_Widget_Lame_bitrate), "112"); - gtk_combo_box_append_text (GTK_COMBO_BOX (var_options.Adr_Widget_Lame_bitrate), "128"); - gtk_combo_box_append_text (GTK_COMBO_BOX (var_options.Adr_Widget_Lame_bitrate), "160"); - gtk_combo_box_append_text (GTK_COMBO_BOX (var_options.Adr_Widget_Lame_bitrate), "192"); - gtk_combo_box_append_text (GTK_COMBO_BOX (var_options.Adr_Widget_Lame_bitrate), "224"); - gtk_combo_box_append_text (GTK_COMBO_BOX (var_options.Adr_Widget_Lame_bitrate), "256"); - gtk_combo_box_append_text (GTK_COMBO_BOX (var_options.Adr_Widget_Lame_bitrate), "320"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_options.Adr_Widget_Lame_bitrate), " 32"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_options.Adr_Widget_Lame_bitrate), " 40"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_options.Adr_Widget_Lame_bitrate), " 48"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_options.Adr_Widget_Lame_bitrate), " 56"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_options.Adr_Widget_Lame_bitrate), " 64"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_options.Adr_Widget_Lame_bitrate), " 80"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_options.Adr_Widget_Lame_bitrate), " 96"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_options.Adr_Widget_Lame_bitrate), "112"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_options.Adr_Widget_Lame_bitrate), "128"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_options.Adr_Widget_Lame_bitrate), "160"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_options.Adr_Widget_Lame_bitrate), "192"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_options.Adr_Widget_Lame_bitrate), "224"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_options.Adr_Widget_Lame_bitrate), "256"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_options.Adr_Widget_Lame_bitrate), "320"); break; /* CBR 0 .. 14 */ case 1 : - gtk_combo_box_append_text (GTK_COMBO_BOX (var_options.Adr_Widget_Lame_bitrate), " 32"); - gtk_combo_box_append_text (GTK_COMBO_BOX (var_options.Adr_Widget_Lame_bitrate), " 40"); - gtk_combo_box_append_text (GTK_COMBO_BOX (var_options.Adr_Widget_Lame_bitrate), " 48"); - gtk_combo_box_append_text (GTK_COMBO_BOX (var_options.Adr_Widget_Lame_bitrate), " 56"); - gtk_combo_box_append_text (GTK_COMBO_BOX (var_options.Adr_Widget_Lame_bitrate), " 64"); - gtk_combo_box_append_text (GTK_COMBO_BOX (var_options.Adr_Widget_Lame_bitrate), " 80"); - gtk_combo_box_append_text (GTK_COMBO_BOX (var_options.Adr_Widget_Lame_bitrate), " 96"); - gtk_combo_box_append_text (GTK_COMBO_BOX (var_options.Adr_Widget_Lame_bitrate), "112"); - gtk_combo_box_append_text (GTK_COMBO_BOX (var_options.Adr_Widget_Lame_bitrate), "128"); - gtk_combo_box_append_text (GTK_COMBO_BOX (var_options.Adr_Widget_Lame_bitrate), "160"); - gtk_combo_box_append_text (GTK_COMBO_BOX (var_options.Adr_Widget_Lame_bitrate), "192"); - gtk_combo_box_append_text (GTK_COMBO_BOX (var_options.Adr_Widget_Lame_bitrate), "224"); - gtk_combo_box_append_text (GTK_COMBO_BOX (var_options.Adr_Widget_Lame_bitrate), "256"); - gtk_combo_box_append_text (GTK_COMBO_BOX (var_options.Adr_Widget_Lame_bitrate), "320"); - gtk_combo_box_append_text (GTK_COMBO_BOX (var_options.Adr_Widget_Lame_bitrate), "preset insane"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_options.Adr_Widget_Lame_bitrate), " 32"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_options.Adr_Widget_Lame_bitrate), " 40"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_options.Adr_Widget_Lame_bitrate), " 48"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_options.Adr_Widget_Lame_bitrate), " 56"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_options.Adr_Widget_Lame_bitrate), " 64"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_options.Adr_Widget_Lame_bitrate), " 80"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_options.Adr_Widget_Lame_bitrate), " 96"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_options.Adr_Widget_Lame_bitrate), "112"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_options.Adr_Widget_Lame_bitrate), "128"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_options.Adr_Widget_Lame_bitrate), "160"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_options.Adr_Widget_Lame_bitrate), "192"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_options.Adr_Widget_Lame_bitrate), "224"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_options.Adr_Widget_Lame_bitrate), "256"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_options.Adr_Widget_Lame_bitrate), "320"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_options.Adr_Widget_Lame_bitrate), "preset insane"); break; /* VBR 0 .. 14 */ case 2 : - gtk_combo_box_append_text (GTK_COMBO_BOX (var_options.Adr_Widget_Lame_bitrate), "preset medium"); - gtk_combo_box_append_text (GTK_COMBO_BOX (var_options.Adr_Widget_Lame_bitrate), "preset standard"); - gtk_combo_box_append_text (GTK_COMBO_BOX (var_options.Adr_Widget_Lame_bitrate), "preset extreme"); - gtk_combo_box_append_text (GTK_COMBO_BOX (var_options.Adr_Widget_Lame_bitrate), "preset fast standard"); - gtk_combo_box_append_text (GTK_COMBO_BOX (var_options.Adr_Widget_Lame_bitrate), "preset fast extreme"); - gtk_combo_box_append_text (GTK_COMBO_BOX (var_options.Adr_Widget_Lame_bitrate), _("V0 (meilleure qualite)")); - gtk_combo_box_append_text (GTK_COMBO_BOX (var_options.Adr_Widget_Lame_bitrate), "V1"); - gtk_combo_box_append_text (GTK_COMBO_BOX (var_options.Adr_Widget_Lame_bitrate), "V2"); - gtk_combo_box_append_text (GTK_COMBO_BOX (var_options.Adr_Widget_Lame_bitrate), "V3"); - gtk_combo_box_append_text (GTK_COMBO_BOX (var_options.Adr_Widget_Lame_bitrate), "V4"); - gtk_combo_box_append_text (GTK_COMBO_BOX (var_options.Adr_Widget_Lame_bitrate), "V5"); - gtk_combo_box_append_text (GTK_COMBO_BOX (var_options.Adr_Widget_Lame_bitrate), "V6"); - gtk_combo_box_append_text (GTK_COMBO_BOX (var_options.Adr_Widget_Lame_bitrate), "V7"); - gtk_combo_box_append_text (GTK_COMBO_BOX (var_options.Adr_Widget_Lame_bitrate), "V8"); - gtk_combo_box_append_text (GTK_COMBO_BOX (var_options.Adr_Widget_Lame_bitrate), _("V9 (moins bonne qualite)")); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_options.Adr_Widget_Lame_bitrate), "preset medium"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_options.Adr_Widget_Lame_bitrate), "preset standard"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_options.Adr_Widget_Lame_bitrate), "preset extreme"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_options.Adr_Widget_Lame_bitrate), "preset fast standard"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_options.Adr_Widget_Lame_bitrate), "preset fast extreme"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_options.Adr_Widget_Lame_bitrate), _("V0 (Best quality)")); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_options.Adr_Widget_Lame_bitrate), "V1"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_options.Adr_Widget_Lame_bitrate), "V2"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_options.Adr_Widget_Lame_bitrate), "V3"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_options.Adr_Widget_Lame_bitrate), "V4"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_options.Adr_Widget_Lame_bitrate), "V5"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_options.Adr_Widget_Lame_bitrate), "V6"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_options.Adr_Widget_Lame_bitrate), "V7"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_options.Adr_Widget_Lame_bitrate), "V8"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_options.Adr_Widget_Lame_bitrate), _("V9 (Poor quality)")); break; /* VBR_NEW 0 .. 15 */ case 3 : - gtk_combo_box_append_text (GTK_COMBO_BOX (var_options.Adr_Widget_Lame_bitrate), " "); - gtk_combo_box_append_text (GTK_COMBO_BOX (var_options.Adr_Widget_Lame_bitrate), "preset medium"); - gtk_combo_box_append_text (GTK_COMBO_BOX (var_options.Adr_Widget_Lame_bitrate), "preset standard"); - gtk_combo_box_append_text (GTK_COMBO_BOX (var_options.Adr_Widget_Lame_bitrate), "preset extreme"); - gtk_combo_box_append_text (GTK_COMBO_BOX (var_options.Adr_Widget_Lame_bitrate), "preset fast standard"); - gtk_combo_box_append_text (GTK_COMBO_BOX (var_options.Adr_Widget_Lame_bitrate), "preset fast extreme"); - gtk_combo_box_append_text (GTK_COMBO_BOX (var_options.Adr_Widget_Lame_bitrate), "V0"); - gtk_combo_box_append_text (GTK_COMBO_BOX (var_options.Adr_Widget_Lame_bitrate), "V1"); - gtk_combo_box_append_text (GTK_COMBO_BOX (var_options.Adr_Widget_Lame_bitrate), "V2"); - gtk_combo_box_append_text (GTK_COMBO_BOX (var_options.Adr_Widget_Lame_bitrate), "V3"); - gtk_combo_box_append_text (GTK_COMBO_BOX (var_options.Adr_Widget_Lame_bitrate), "V4"); - gtk_combo_box_append_text (GTK_COMBO_BOX (var_options.Adr_Widget_Lame_bitrate), "V5"); - gtk_combo_box_append_text (GTK_COMBO_BOX (var_options.Adr_Widget_Lame_bitrate), "V6"); - gtk_combo_box_append_text (GTK_COMBO_BOX (var_options.Adr_Widget_Lame_bitrate), "V7"); - gtk_combo_box_append_text (GTK_COMBO_BOX (var_options.Adr_Widget_Lame_bitrate), "V8"); - gtk_combo_box_append_text (GTK_COMBO_BOX (var_options.Adr_Widget_Lame_bitrate), "V9"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_options.Adr_Widget_Lame_bitrate), " "); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_options.Adr_Widget_Lame_bitrate), "preset medium"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_options.Adr_Widget_Lame_bitrate), "preset standard"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_options.Adr_Widget_Lame_bitrate), "preset extreme"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_options.Adr_Widget_Lame_bitrate), "preset fast standard"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_options.Adr_Widget_Lame_bitrate), "preset fast extreme"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_options.Adr_Widget_Lame_bitrate), "V0"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_options.Adr_Widget_Lame_bitrate), "V1"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_options.Adr_Widget_Lame_bitrate), "V2"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_options.Adr_Widget_Lame_bitrate), "V3"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_options.Adr_Widget_Lame_bitrate), "V4"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_options.Adr_Widget_Lame_bitrate), "V5"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_options.Adr_Widget_Lame_bitrate), "V6"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_options.Adr_Widget_Lame_bitrate), "V7"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_options.Adr_Widget_Lame_bitrate), "V8"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(var_options.Adr_Widget_Lame_bitrate), "V9"); break; } bool_do_enter_options_mp3 = TRUE; @@ -334,14 +331,12 @@ void on_combobox_lame_mode_realize (GtkWidget *widget, gpointer user_data) { - libcombo_alloc (GTK_COMBO_BOX (widget)); - - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), "Defaut"); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), "Stereo"); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), "Join Stereo"); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), "Forced Join Stereo"); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), "Duo Channels"); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), "Mono"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), "Defaut"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), "Stereo"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), "Join Stereo"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), "Forced Join Stereo"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), "Duo Channels"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), "Mono"); gtk_combo_box_set_active (GTK_COMBO_BOX (widget), Config.TabModeLame[ Config.BitrateLameIndice ]); var_options.Adr_Widget_Lame_Mode = GTK_COMBO_BOX (widget); on_combobox_lame_abr_cbr_vbr_changed (NULL, NULL); diff -Nru xcfa-4.3.8/src/options_musepack.c xcfa-5.0.1/src/options_musepack.c --- xcfa-4.3.8/src/options_musepack.c 2013-03-21 10:55:49.000000000 +0000 +++ xcfa-5.0.1/src/options_musepack.c 2015-01-30 16:01:16.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : options_musepack.c * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License @@ -65,15 +65,13 @@ { var_options.Adr_Widget_Mppenc = GTK_COMBO_BOX (widget); - libcombo_alloc (GTK_COMBO_BOX (widget)); - - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), _("telephone: lowest quality : 32 .. 48 kbit/s")); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), _("thumb : low quality/internet : 58 .. 86 kbit/s")); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), _("radio : medium (MP3) quality : 112 .. 152 kbit/s")); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), _("standard : high quality (dflt) : 142 .. 184 kbit/s")); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), _("xtreme : extreme high quality : 168 .. 212 kbit/s")); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), _("insane : extreme high quality : 232 .. 268 kbit/s")); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), _("braindead : extreme high quality : 232 .. 278 kbit/s")); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), _("telephone: lowest quality : 32 .. 48 kbit/s")); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), _("thumb : low quality/internet : 58 .. 86 kbit/s")); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), _("radio : medium (MP3) quality : 112 .. 152 kbit/s")); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), _("standard : high quality (dflt) : 142 .. 184 kbit/s")); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), _("xtreme : extreme high quality : 168 .. 212 kbit/s")); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), _("insane : extreme high quality : 232 .. 268 kbit/s")); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), _("braindead : extreme high quality : 232 .. 278 kbit/s")); gtk_combo_box_set_active (GTK_COMBO_BOX (widget), Config.QualityMppenc); } diff -Nru xcfa-4.3.8/src/options_oggenc.c xcfa-5.0.1/src/options_oggenc.c --- xcfa-4.3.8/src/options_oggenc.c 2013-03-21 10:55:49.000000000 +0000 +++ xcfa-5.0.1/src/options_oggenc.c 2015-02-06 14:13:36.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : options_oggenc.c * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License @@ -102,7 +102,7 @@ // gboolean optionsOggenc_get_bool_managed_oggenc (void) { - if (GTK_WIDGET_IS_SENSITIVE(GTK_WIDGET (GLADE_GET_OBJECT("eventbox_combobox_oggenc_managed"))) == TRUE) { + if( gtk_widget_is_sensitive(GTK_WIDGET (GLADE_GET_OBJECT("eventbox_combobox_oggenc_managed"))) == TRUE) { if (gtk_combo_box_get_active (GTK_COMBO_BOX (var_options.Adr_Widget_Oggenc_managed)) == 0) return (TRUE); } return (FALSE); @@ -111,7 +111,7 @@ // gboolean optionsOggenc_get_bool_downmix_oggenc (void) { - if (GTK_WIDGET_IS_SENSITIVE(GTK_WIDGET (GLADE_GET_OBJECT("eventbox_combobox_oggenc_downmix"))) == TRUE) { + if (gtk_widget_is_sensitive(GTK_WIDGET (GLADE_GET_OBJECT("eventbox_combobox_oggenc_downmix"))) == TRUE) { if (gtk_combo_box_get_active (GTK_COMBO_BOX (var_options.Adr_Widget_Oggenc_downmix)) == 0) return (TRUE); } return (FALSE); @@ -121,32 +121,31 @@ void on_combobox_oggenc_bitrate_realize (GtkWidget *widget, gpointer user_data) { var_options.Adr_Widget_Oggenc_bitrate = GTK_COMBO_BOX (widget); - // libcombo_alloc (GTK_COMBO_BOX (widget)); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), " 45 kbit/s"); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), " 64 kbit/s"); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), " 80 kbit/s"); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), " 96 kbit/s"); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), "112 kbit/s"); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), "128 kbit/s"); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), "160 kbit/s"); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), "192 kbit/s"); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), "224 kbit/s"); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), "256 kbit/s"); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), "320 kbit/s"); - - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), _("Qualite -1 (Moins bonne qualite)")); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), _("Qualite 0")); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), _("Qualite 1")); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), _("Qualite 2")); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), _("Qualite 3")); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), _("Qualite 4")); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), _("Qualite 5")); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), _("Qualite 6")); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), _("Qualite 7")); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), _("Qualite 8")); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), _("Qualite 9")); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), _("Qualite 10 (Meilleure qualite)")); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), " 45 kbit/s"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), " 64 kbit/s"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), " 80 kbit/s"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), " 96 kbit/s"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), "112 kbit/s"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), "128 kbit/s"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), "160 kbit/s"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), "192 kbit/s"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), "224 kbit/s"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), "256 kbit/s"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), "320 kbit/s"); + + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), _("Quality -1 (Poor quality)")); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), _("Quality 0")); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), _("Quality 1")); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), _("Quality 2")); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), _("Quality 3")); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), _("Quality 4")); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), _("Quality 5")); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), _("Quality 6")); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), _("Quality 7")); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), _("Quality 8")); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), _("Quality 9")); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), _("Quality 10 (Best quality)")); gtk_combo_box_set_active (GTK_COMBO_BOX (widget), Config.BitrateOggenc); } @@ -174,10 +173,8 @@ // void on_combobox_oggenc_managed_realize (GtkWidget *widget, gpointer user_data) { - libcombo_alloc (GTK_COMBO_BOX (widget)); - - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), _("Oui")); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), _("Non")); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), _("Yes")); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), _("No")); gtk_combo_box_set_active (GTK_COMBO_BOX (widget), Config.ManagedOggenc); @@ -196,10 +193,8 @@ // void on_combobox_oggenc_downmix_realize (GtkWidget *widget, gpointer user_data) { - libcombo_alloc (GTK_COMBO_BOX (widget)); - - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), _("Mono force")); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), _("Stereo")); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), _("Force mono")); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), _("Stereo")); gtk_combo_box_set_active (GTK_COMBO_BOX (widget), Config.DownmixOggenc); diff -Nru xcfa-4.3.8/src/options_tags.c xcfa-5.0.1/src/options_tags.c --- xcfa-4.3.8/src/options_tags.c 2013-03-21 10:55:49.000000000 +0000 +++ xcfa-5.0.1/src/options_tags.c 2015-01-30 16:01:16.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : options_tags.c * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License diff -Nru xcfa-4.3.8/src/options_wavpack.c xcfa-5.0.1/src/options_wavpack.c --- xcfa-4.3.8/src/options_wavpack.c 2013-03-21 10:55:49.000000000 +0000 +++ xcfa-5.0.1/src/options_wavpack.c 2015-02-05 19:38:31.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : options_wavpack.c * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License @@ -90,17 +90,15 @@ { var_options.Adr_Widget_wavpack = GTK_COMBO_BOX (widget); - libcombo_alloc (GTK_COMBO_BOX (widget)); - /* -f Mode rapide de compression -h Ume bonne qualite de compression dans tous les modes mais plus lent -hh La meilleure qualite de compression dans tous les modes mais la plus lente */ - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), _("Mode normal")); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), _("Mode rapide de compression")); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), _("Bonne qualite de compression")); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), _("Meilleure qualite de compression")); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), _("Standard")); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), _("Fast (Faster encode and decode)")); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), _("High quality (Better compression ratio)")); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), _("Very high quality (Best compression but slowest)")); gtk_combo_box_set_active (GTK_COMBO_BOX (widget), Config.CompressionWavpack); } @@ -118,16 +116,14 @@ { var_options.Adr_Widget_wavpack_sound = GTK_COMBO_BOX (widget); - libcombo_alloc (GTK_COMBO_BOX (widget)); - /* -jn Joint-stereo override (0 = left/right, 1 = mid/side) ---------------------- -j0 Joint-stereo override (0 = left/right) -j1 Joint-stereo override (1 = mid/side) */ - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), _("stereo left/right")); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), _("stereo mid/side")); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), _("stereo left/right")); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), _("stereo mid/side")); gtk_combo_box_set_active (GTK_COMBO_BOX (widget), Config.SoundWavpack); } @@ -143,12 +139,10 @@ } void on_combobox_wavpack_mode_hybride_realize (GtkWidget *widget, gpointer user_data) { - libcombo_alloc (GTK_COMBO_BOX (widget)); - - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), _("Non")); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), "320 kbit/s"); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), "384 kbit/s"); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), "448 kbit/s"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), _("No")); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), "320 kbit/s"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), "384 kbit/s"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), "448 kbit/s"); var_options.Adr_Widget_wavpack_mode_hybride = GTK_COMBO_BOX (widget); @@ -175,10 +169,8 @@ { var_options.Adr_Widget_wavpack_correction_file = GTK_COMBO_BOX (widget); - libcombo_alloc (GTK_COMBO_BOX (widget)); - - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), _("Non")); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), _("Oui")); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), _("No")); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), _("Yes")); gtk_combo_box_set_active (GTK_COMBO_BOX (widget), Config.CorrectionFileWavpack); @@ -198,10 +190,8 @@ { var_options.Adr_Widget_wavpack_maximum_compression = GTK_COMBO_BOX (widget); - libcombo_alloc (GTK_COMBO_BOX (widget)); - - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), _("Non")); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), _("Oui")); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), _("No")); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), _("Yes")); gtk_combo_box_set_active (GTK_COMBO_BOX (widget), Config.CompressionMaximumWavpack); @@ -221,10 +211,8 @@ { var_options.Adr_Widget_wavpack_signature_md5 = GTK_COMBO_BOX (widget); - libcombo_alloc (GTK_COMBO_BOX (widget)); - - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), _("Non")); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), _("Oui")); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), _("No")); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), _("Yes")); gtk_combo_box_set_active (GTK_COMBO_BOX (widget), Config.SignatureMd5Wavpack); } @@ -242,15 +230,13 @@ { var_options.Adr_Widget_wavpack_extra_encoding = GTK_COMBO_BOX (widget); - libcombo_alloc (GTK_COMBO_BOX (widget)); - - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), _("Non")); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), _("1 (fast / rapide)")); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), "2"); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), "3"); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), "4"); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), "5"); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), _("6 (very slow / tres lent)")); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), _("No")); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), _("1 (fast / rapide)")); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), "2"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), "3"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), "4"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), "5"); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), _("6 (very slow / tres lent)")); gtk_combo_box_set_active (GTK_COMBO_BOX (widget), Config.ExtraEncodingWavpack); } diff -Nru xcfa-4.3.8/src/parse.c xcfa-5.0.1/src/parse.c --- xcfa-4.3.8/src/parse.c 2013-03-21 10:55:49.000000000 +0000 +++ xcfa-5.0.1/src/parse.c 2015-01-30 16:01:16.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : parse.c * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License diff -Nru xcfa-4.3.8/src/parse.h xcfa-5.0.1/src/parse.h --- xcfa-4.3.8/src/parse.h 2013-03-21 10:55:27.000000000 +0000 +++ xcfa-5.0.1/src/parse.h 2015-01-21 16:28:42.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : parse.h * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License diff -Nru xcfa-4.3.8/src/play_file.c xcfa-5.0.1/src/play_file.c --- xcfa-4.3.8/src/play_file.c 2013-03-21 10:55:49.000000000 +0000 +++ xcfa-5.0.1/src/play_file.c 2015-02-05 19:39:29.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : play_file.c * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License @@ -102,11 +102,10 @@ PRINT_FUNC_LF(); if (FALSE == extra_get_lecteur_audio_is_ok ()) { - PRINT("VEUILLEZ SAISIR UN LECTEUR AUDIO"); - wininfo_create ( + wind_info_init ( WindMain, - _("PAS de lecteur audio present"), - _("Veuillez installez un lecteur audio."), + _("NO audio player present"), + _("Please install an audio player."), ""); return; } diff -Nru xcfa-4.3.8/src/play_file.h xcfa-5.0.1/src/play_file.h --- xcfa-4.3.8/src/play_file.h 2013-03-21 10:55:27.000000000 +0000 +++ xcfa-5.0.1/src/play_file.h 2015-01-21 16:28:42.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : play_file.h * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License diff -Nru xcfa-4.3.8/src/poche.c xcfa-5.0.1/src/poche.c --- xcfa-4.3.8/src/poche.c 2013-03-21 10:55:49.000000000 +0000 +++ xcfa-5.0.1/src/poche.c 2015-02-03 14:40:29.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : poche.c * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License @@ -61,38 +61,38 @@ VIEW view = { - FALSE, // BoolAccessChanged; // COMBOBOX changed is TRUE + FALSE, // BoolAccessChanged; // COMBOBOX changed is TRUE - NULL, // *AdrComboBoxChoice; // + NULL, // *AdrComboBoxChoice; // - NULL, // *AdrEntrySearchImgWeb; // Adresse saisie image web - NULL, // *AdrEntryNameFileSave; // Adresse saisie nom fichier image - NULL, // *AdrEntryTitleCD; // Adresse saisie titre du CD - - NULL, // *TitleCD; // - NULL, // *Buffer_none; // - NULL, // *Buffer_title; // - NULL, // *Buffer_title_time; // + NULL, // *AdrEntrySearchImgWeb; // Adresse saisie image web + NULL, // *AdrEntryNameFileSave; // Adresse saisie nom fichier image + NULL, // *AdrEntryTitleCD; // Adresse saisie titre du CD + + NULL, // *TitleCD; // + NULL, // *Buffer_none; // + NULL, // *Buffer_title; // + NULL, // *Buffer_title_time; // NULL, // *Buffer_artist_title_time; // - NULL, // *AdrDrawingarea; // Adresse de la surface - FALSE, // BoolScaleAdjust; // TRUE = ajustement de l'echelle avec la surface de la fentre - NULL, // *image; // Adresse de l'image - 1.0, // scale; // Pourcentage de surface de l'image - 0.0, // x0; // Pos X - 0.0, // y0; // Pos Y - 0, // image_width; // Width - 0, // image_height; // Height - NULL, // *ListImage; // Pointeur de structure IMAGE pour AdrDrawingarea - FALSE, // BoolEventButtonPress; // TRUE == BOUTON SOURIS PRESSED - NULL, // *GetImage; // Adresse de l'image en selection - IMG_NONE, // ImgCorner; // See IMG_CORNER + NULL, // *AdrDrawingarea; // Adresse de la surface + FALSE, // BoolScaleAdjust; // TRUE = ajustement de l'echelle avec la surface de la fentre + NULL, // *image; // Adresse de l'image + 1.0, // scale; // Pourcentage de surface de l'image + 0.0, // x0; // Pos X + 0.0, // y0; // Pos Y + 0, // image_width; // Width + 0, // image_height; // Height + NULL, // *ListImage; // Pointeur de structure IMAGE pour AdrDrawingarea + FALSE, // BoolEventButtonPress; // TRUE == BOUTON SOURIS PRESSED + NULL, // *GetImage; // Adresse de l'image en selection + IMG_NONE, // ImgCorner; // See IMG_CORNER NULL, // *Adr_viewport_image_preview; // Adresse viewport - NULL, // *Adr_table; // Adresse table contenu dans le viewport - NULL, // *glist; // Contient les structures GLIST_POCHETTE - NULL, // *AdrTextview; // Adresse textview - FALSE, // BoolSaveToFile; // TRUE si sauvegarde vers fichier - // HandleMove; // Les coordonnees de saisie de l'image + NULL, // *Adr_table; // Adresse table contenu dans le viewport + NULL, // *glist; // Contient les structures GLIST_POCHETTE + NULL, // *AdrTextview; // Adresse textview + FALSE, // BoolSaveToFile; // TRUE si sauvegarde vers fichier + // HandleMove; // Les coordonnees de saisie de l'image }; @@ -101,6 +101,67 @@ +void draw_queue( void ) +{ + /** + void + gtk_widget_queue_draw_area( GtkWidget *widget, + gint x, + gint y, + gint width, + gint height); + GtkAllocation allocation; + gtk_widget_get_allocation( view.AdrDrawingarea, &allocation ); + + GtkAllocation allocation; + + + + gtk_widget_get_allocation( GTK_WIDGET(GLADE_GET_OBJECT("viewport1")), &allocation ); + + gtk_widget_queue_draw_area( + // view.AdrDrawingarea, + GTK_WIDGET(GLADE_GET_OBJECT("viewport1")), + 0, + 0, + // view.image_width, + // view.image_height + // allocation.width, + // allocation.height + // gtk_widget_get_allocated_width( view.AdrDrawingarea ) , + // gtk_widget_get_allocated_height( view.AdrDrawingarea ) + gtk_widget_get_allocated_width( GTK_WIDGET(GLADE_GET_OBJECT("viewport1")) ) , + gtk_widget_get_allocated_height( GTK_WIDGET(GLADE_GET_OBJECT("viewport1")) ) + ); + printf("1) 0, 0, %d %d \n", view.image_width, view.image_height ); + printf("2) 0, 0, %d %d \n", allocation.width, allocation.height ); + + + gtk_widget_queue_draw_area( + view.AdrDrawingarea, + 0, + 0, + view.image_width, + view.image_height + ); + + gtk_widget_queue_draw( + view.AdrDrawingarea + ); + + + gtk_widget_queue_draw_area( + view.AdrDrawingarea, + 0, + 0, + view.image_width, + view.image_height + ); + */ + gtk_widget_queue_draw( + view.AdrDrawingarea + ); +} // // void poche_remove_view (void) @@ -169,8 +230,8 @@ gboolean poche_is_erase_active( void ) { GList *List = NULL; - IMAGE *Image = NULL; - gboolean BoolEraseActive = FALSE; + IMAGE *Image = NULL; + gboolean BoolEraseActive = FALSE; List = g_list_first( view.ListImage ); while( List ) { @@ -194,13 +255,15 @@ gtk_widget_set_sensitive( GTK_WIDGET(GLADE_GET_OBJECT("button_normal")), TRUE ); gtk_widget_set_sensitive( GTK_WIDGET(GLADE_GET_OBJECT("button_plus")), TRUE ); gtk_widget_set_sensitive( GTK_WIDGET(GLADE_GET_OBJECT("button_ajuster")), TRUE ); - gtk_widget_set_sensitive( GTK_WIDGET(GLADE_GET_OBJECT("button_change_font")), poche_get_struct_selected_is_txt() == NULL ? FALSE : TRUE ); - gtk_widget_set_sensitive( GTK_WIDGET(GLADE_GET_OBJECT("togglebutton_font_bold")), poche_get_struct_selected_is_txt() == NULL ? FALSE : TRUE ); - gtk_widget_set_sensitive( GTK_WIDGET(GLADE_GET_OBJECT("togglebutton_font_italic")), poche_get_struct_selected_is_txt() == NULL ? FALSE : TRUE ); + gtk_widget_set_sensitive( GTK_WIDGET(GLADE_GET_OBJECT("button_change_font")), Image && Image->BoolIsSelected ? TRUE : FALSE ); + gtk_widget_set_sensitive( GTK_WIDGET(GLADE_GET_OBJECT("togglebutton_font_bold")), Image && Image->BoolIsSelected ? TRUE : FALSE ); + gtk_widget_set_sensitive( GTK_WIDGET(GLADE_GET_OBJECT("togglebutton_font_italic")), Image && Image->BoolIsSelected ? TRUE : FALSE ); gtk_widget_set_sensitive( GTK_WIDGET(GLADE_GET_OBJECT("button_import_img_web")), *pochetxt_get_ptr_entry_img_web() == '\0' ? FALSE : TRUE ); - gtk_widget_set_sensitive( GTK_WIDGET(GLADE_GET_OBJECT("combobox_choice_get_cd")), (NULL != view.Buffer_none && NULL != Image) ? TRUE : FALSE ); + gtk_widget_set_sensitive( GTK_WIDGET(GLADE_GET_OBJECT("combobox_choice_get_cd")), Image && Image->BoolIsSelected ? TRUE : FALSE ); gtk_widget_set_sensitive( GTK_WIDGET(GLADE_GET_OBJECT("frame_texte_poche")), (NULL != Image) ? TRUE : FALSE ); - gtk_widget_set_sensitive( GTK_WIDGET(GLADE_GET_OBJECT("button_import_title_cd")), (NULL != view.Buffer_none) ? TRUE : FALSE ); + + // For 'button_import_title_cd' see: void cdaudio_set_flag_buttons (void) + if( NULL != Image ) { gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON(GLADE_GET_OBJECT("togglebutton_font_bold")), Image->BoolFontBold ); @@ -227,30 +290,52 @@ // void poche_set_size_request( void ) { - gtk_widget_set_size_request( view.AdrDrawingarea, (gint)((gdouble)view.image_width * view.scale), (gint)((gdouble)view.image_height * view.scale) ); + gtk_widget_set_size_request( + view.AdrDrawingarea, + (gint)((gdouble)view.image_width * view.scale), + (gint)((gdouble)view.image_height * view.scale) + // view.image_width * view.scale, + // view.image_height * view.scale + ); } // // +gboolean on_drawingareamain_draw( GtkWidget *widget, cairo_t *p_cr, gpointer user_data ) +{ + pochedraw_paint( NULL, p_cr ); + // poche_set_flag_buttons(); + return( FALSE ); +} +/* gboolean on_drawingareamain_expose_event( GtkWidget *widget, GdkEventExpose *event, gpointer user_data ) { - pochedraw_paint( NULL ); + pochedraw_paint( NULL, p_cr ); poche_set_flag_buttons(); return( FALSE ); } +*/ +gboolean on_scrolledwindow_poche_draw( GtkWidget *widget, cairo_t *p_cr, gpointer user_data ) +{ + pochedraw_paint( NULL, p_cr ); + // poche_set_flag_buttons(); + return( FALSE ); +} + // // IMAGE *poche_get_is_move( gdouble x, gdouble y ) { cairo_t *cr; GdkRectangle zone; - GdkRegion *region = NULL; + // GdkRegion *region = NULL; + cairo_region_t *region = NULL; IMAGE *Image = NULL; GList *List = NULL; gboolean BoolInZone = FALSE; - cr = gdk_cairo_create( view.AdrDrawingarea->window ); - cairo_scale (cr, view.scale, view.scale); - cairo_translate (cr, view.x0, view.y0); + cr = gdk_cairo_create( gtk_widget_get_window(view.AdrDrawingarea) ); + cairo_scale (cr, view.scale, view.scale); + cairo_translate (cr, view.x0, view.y0); List = g_list_last( view.ListImage ); while( List ) { if( NULL != (Image = (IMAGE *)List->data ) && FALSE == Image->BoolStructRemove ) { @@ -262,13 +347,14 @@ zone.y = Image->y0; zone.width = Image->image_width; zone.height = Image->image_height; - region = gdk_region_rectangle (&zone); - if( gdk_region_point_in( region, x, y )) { + region = cairo_region_create_rectangle (&zone); + if( cairo_region_contains_point( region, x, y )) { + // if( gdk_region_point_in( region, x, y )) { BoolInZone = TRUE; Image->XPointer = x; Image->YPointer = y; } - gdk_region_destroy (region); + cairo_region_destroy (region); if( TRUE == BoolInZone ) { cairo_destroy( cr ); return( Image ); @@ -284,15 +370,16 @@ IMAGE *poche_get( gdouble x, gdouble y ) { cairo_t *cr; - GdkRegion *region = NULL; + // GdkRegion *region = NULL; + cairo_region_t *region = NULL; IMAGE *Image = NULL; GList *List = NULL; gboolean BoolInZone = FALSE; gint CptImgCorner; - - cr = gdk_cairo_create( view.AdrDrawingarea->window ); - cairo_scale (cr, view.scale, view.scale); - cairo_translate (cr, view.x0, view.y0); + + cr = gdk_cairo_create( gtk_widget_get_window(view.AdrDrawingarea) ); + cairo_scale (cr, view.scale, view.scale); + cairo_translate (cr, view.x0, view.y0); List = g_list_last( view.ListImage ); while( List ) { if( NULL != (Image = (IMAGE *)List->data ) && FALSE == Image->BoolStructRemove ) { @@ -306,13 +393,14 @@ pochedraw_get_handle_move( Image, TRUE ); for( CptImgCorner = 0; CptImgCorner < IMG_SIZE; CptImgCorner ++ ) { - region = gdk_region_rectangle( &view.HandleMove.zone [ CptImgCorner ] ); - if( gdk_region_point_in( region, x, y )) { + region = cairo_region_create_rectangle( &view.HandleMove.zone [ CptImgCorner ] ); + // if( gdk_region_point_in( region, x, y )) { + if( cairo_region_contains_point( region, x, y )) { BoolInZone = TRUE; Image->XPointer = x; Image->YPointer = y; } - gdk_region_destroy (region); + cairo_region_destroy (region); if( TRUE == BoolInZone ) { cairo_destroy( cr ); view.ImgCorner = CptImgCorner; @@ -380,7 +468,8 @@ if( NULL != List && NULL != ListLast ) { ListLast->data = Image; List->data = ImageLast; - gtk_widget_queue_draw( view.AdrDrawingarea ); + // gtk_widget_queue_draw( view.AdrDrawingarea ); + draw_queue(); } } void poche_set_selected_up_image( IMAGE *p_Image ) @@ -403,7 +492,8 @@ if( NULL != List && NULL != ListLast ) { ListLast->data = Image; List->data = ImageLast; - gtk_widget_queue_draw( view.AdrDrawingarea ); + // gtk_widget_queue_draw( view.AdrDrawingarea ); + draw_queue(); } } } @@ -433,7 +523,8 @@ if( NULL != List && NULL != ListLast ) { ListLast->data = Image; List->data = ImageLast; - gtk_widget_queue_draw( view.AdrDrawingarea ); + // gtk_widget_queue_draw( view.AdrDrawingarea ); + draw_queue(); } } } @@ -477,7 +568,8 @@ if( NULL != List && NULL != ListFisrt ) { ListFisrt->data = Image; List->data = ImageLast; - gtk_widget_queue_draw( view.AdrDrawingarea ); + // gtk_widget_queue_draw( view.AdrDrawingarea ); + draw_queue(); } } // @@ -492,12 +584,12 @@ GList *List = NULL; gboolean bool_click_droit = (event->button == 3); - cr = gdk_cairo_create( view.AdrDrawingarea->window ); - cairo_scale (cr, view.scale, view.scale); - cairo_translate (cr, view.x0, view.y0); - x = event->x; - y = event->y; - cairo_device_to_user (cr, &x, &y); + cr = gdk_cairo_create( gtk_widget_get_window(view.AdrDrawingarea) ); + cairo_scale (cr, view.scale, view.scale); + cairo_translate (cr, view.x0, view.y0); + x = event->x; + y = event->y; + cairo_device_to_user (cr, &x, &y); if( TRUE == bool_click_droit ) { if( NULL != (Image = (IMAGE *)poche_get_is_move( x, y ))) { @@ -536,7 +628,8 @@ view.ImgCorner = IMG_MOVE; view.GetImage = Image; cairo_destroy( cr ); - gtk_widget_queue_draw( view.AdrDrawingarea ); + // gtk_widget_queue_draw( view.AdrDrawingarea ); + draw_queue(); view.BoolEventButtonPress = TRUE; pochetxt_set_text_to_textview( Image ); @@ -557,7 +650,8 @@ } cursor_set_old(); cairo_destroy( cr ); - gtk_widget_queue_draw( view.AdrDrawingarea ); + // gtk_widget_queue_draw( view.AdrDrawingarea ); + draw_queue(); view.BoolEventButtonPress = TRUE; return( FALSE ); } @@ -572,17 +666,20 @@ gboolean on_drawingareamain_button_release_event( GtkWidget *widget, GdkEventButton *event, gpointer user_data ) { cairo_t *cr; - gdouble x, y; + gdouble x, y; - cr = gdk_cairo_create( view.AdrDrawingarea->window ); - cairo_scale (cr, view.scale, view.scale); - cairo_translate (cr, view.x0, view.y0); - x = event->x; - y = event->y; - cairo_device_to_user (cr, &x, &y); + cr = gdk_cairo_create( gtk_widget_get_window(view.AdrDrawingarea) ); + cairo_scale (cr, view.scale, view.scale); + cairo_translate (cr, view.x0, view.y0); + x = event->x; + y = event->y; + cairo_device_to_user (cr, &x, &y); view.BoolEventButtonPress = FALSE; view.GetImage = NULL; cairo_destroy( cr ); + + poche_set_flag_buttons(); + return( FALSE ); } // @@ -590,15 +687,16 @@ gboolean on_drawingareamain_motion_notify_event( GtkWidget *widget, GdkEventMotion *event, gpointer user_data ) { cairo_t *cr; - gdouble x, y; - gboolean BoolRedraw = FALSE; - - cr = gdk_cairo_create( view.AdrDrawingarea->window ); - cairo_scale (cr, view.scale, view.scale); - cairo_translate (cr, view.x0, view.y0); - x = event->x; - y = event->y; - cairo_device_to_user (cr, &x, &y); + gdouble x, y; + gboolean BoolRedraw = FALSE; + + + cr = gdk_cairo_create( gtk_widget_get_window(view.AdrDrawingarea) ); + cairo_scale (cr, view.scale, view.scale); + cairo_translate (cr, view.x0, view.y0); + x = event->x; + y = event->y; + cairo_device_to_user (cr, &x, &y); if (oldX == -1.0 || oldY == -1.0) { oldX = x; @@ -822,7 +920,10 @@ oldX = x; oldY = y; cairo_destroy( cr ); - if( TRUE == BoolRedraw ) gtk_widget_queue_draw( view.AdrDrawingarea ); + if( TRUE == BoolRedraw ) { + // gtk_widget_queue_draw( view.AdrDrawingarea ); + draw_queue(); + } return( FALSE ); } // @@ -833,7 +934,8 @@ view.scale -= 0.4; if( view.scale < 0.4 ) view.scale = 0.4; poche_set_size_request(); - gtk_widget_queue_draw( view.AdrDrawingarea ); + // gtk_widget_queue_draw( view.AdrDrawingarea ); + draw_queue(); } // // @@ -842,7 +944,8 @@ view.BoolScaleAdjust = FALSE; view.scale = 1.0; poche_set_size_request(); - gtk_widget_queue_draw( view.AdrDrawingarea ); + // gtk_widget_queue_draw( view.AdrDrawingarea ); + draw_queue(); } // // @@ -852,14 +955,16 @@ view.scale += 0.4; if( view.scale > 6.0 ) view.scale = 6.0; poche_set_size_request(); - gtk_widget_queue_draw( view.AdrDrawingarea ); + // gtk_widget_queue_draw( view.AdrDrawingarea ); + draw_queue(); } // // void on_button_ajuster_clicked( GtkButton *button, gpointer user_data ) { view.BoolScaleAdjust = TRUE; - gtk_widget_queue_draw( view.AdrDrawingarea ); + // gtk_widget_queue_draw( view.AdrDrawingarea ); + draw_queue(); } // // @@ -1005,22 +1110,26 @@ } Image->Texte = g_strdup( p_str ); } - gtk_widget_queue_draw( view.AdrDrawingarea ); + // gtk_widget_queue_draw( view.AdrDrawingarea ); + draw_queue(); } // // -static void poche_drag_data_received (GtkWidget *widget, - GdkDragContext *drag_context, - gint x, - gint y, - GtkSelectionData *data, - guint info, - guint time) +static void poche_drag_data_received( + GtkWidget *widget, + GdkDragContext *context, + gint x, + gint y, + GtkSelectionData *data, + guint info, + guint time, + gpointer user_data) { // PRINT("DND FROM DESKTOP TO DRAWING"); // Une copie ne peut aller vers elle meme !!! - if (gtk_drag_get_source_widget(drag_context) != widget) { - dragndrop_list_drag_data (widget, (gchar *)data->data); + if (gtk_drag_get_source_widget(context) != widget) { + // dragndrop_list_drag_data (widget, (gchar *)data->data); + dragndrop_list_drag_data( widget, (gchar*)gtk_selection_data_get_data( data )); } } // @@ -1040,6 +1149,7 @@ view.image_width = cairo_image_surface_get_width( view.image ); view.image_height = cairo_image_surface_get_height( view.image ); + poche_set_size_request(); // Drag and drop support @@ -1093,7 +1203,8 @@ pochetxt_set_text_to_textview( Image ); } - gtk_widget_queue_draw( view.AdrDrawingarea ); + // gtk_widget_queue_draw( view.AdrDrawingarea ); + draw_queue(); poche_set_flag_buttons(); // DEBUG CDDB_CURL pochetxt_set_combobox_choice( 0 ); @@ -1112,15 +1223,18 @@ } // // -static void poche_drag_data_received_file (GtkWidget *widget, - GdkDragContext *drag_context, - gint x, - gint y, - GtkSelectionData *data, - guint info, - guint time) +static void poche_drag_data_received_file( + GtkWidget *widget, + GdkDragContext *context, + gint x, + gint y, + GtkSelectionData *data, + guint info, + guint time, + gpointer user_data) { - dragndrop_list_drag_data (widget, (gchar *)data->data); + // dragndrop_list_drag_data (widget, (gchar *)data->data); + dragndrop_list_drag_data( widget, (gchar*)gtk_selection_data_get_data( data )); } // // @@ -1130,7 +1244,8 @@ gtk_widget_destroy( view.Adr_table ); view.Adr_table = NULL; } - view.Adr_table = gtk_table_new (4, 5, TRUE); + // view.Adr_table = gtk_grid_new (4, 5, TRUE); + view.Adr_table = gtk_grid_new(); gtk_container_add (GTK_CONTAINER (view.Adr_viewport_image_preview), view.Adr_table); gtk_widget_show_all (view.Adr_table); } @@ -1188,13 +1303,18 @@ PRINT_FUNC_LF(); - gdk_window_get_pointer( view.AdrDrawingarea->window, &X, &Y, &state ); - cr = gdk_cairo_create( view.AdrDrawingarea->window ); - cairo_scale (cr, view.scale, view.scale); - cairo_translate (cr, view.x0, view.y0); - x = X; - y = Y; - cairo_device_to_user (cr, &x, &y); + /* Si pas de selection a cet endroit retour */ + GdkDeviceManager *manager = gdk_display_get_device_manager( gdk_display_get_default() ); + GdkDevice *device = gdk_device_manager_get_client_pointer( manager ); + gdk_window_get_device_position( gtk_widget_get_window(view.AdrDrawingarea), device, &X, &Y, &state ); + // gdk_window_get_pointer( view.AdrDrawingarea->window, &X, &Y, &state ); + + cr = gdk_cairo_create( gtk_widget_get_window(view.AdrDrawingarea) ); + cairo_scale (cr, view.scale, view.scale); + cairo_translate (cr, view.x0, view.y0); + x = X; + y = Y; + cairo_device_to_user (cr, &x, &y); cairo_destroy( cr ); while (gs_List) { @@ -1203,7 +1323,8 @@ if( TRUE == FileIs_image( Ptr )) { Image = poche_add_to_glist( Ptr, x, y, TRUE, _TYPE_IMAGE_ ); poche_set_selected_flag_image( Image ); - gtk_widget_queue_draw( view.AdrDrawingarea ); + // gtk_widget_queue_draw( view.AdrDrawingarea ); + draw_queue(); return; } } diff -Nru xcfa-4.3.8/src/poche_dir.c xcfa-5.0.1/src/poche_dir.c --- xcfa-4.3.8/src/poche_dir.c 2013-03-21 10:55:49.000000000 +0000 +++ xcfa-5.0.1/src/poche_dir.c 2015-02-05 19:40:21.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : poche_dir.h * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License @@ -346,14 +346,17 @@ IMAGE *Image = NULL; cairo_t *cr; - // PRINT("DND FROM STOCKAGE TO DRAWING"); - gdk_window_get_pointer( view.AdrDrawingarea->window, &X, &Y, &state ); - cr = gdk_cairo_create( view.AdrDrawingarea->window ); - cairo_scale (cr, view.scale, view.scale); - cairo_translate (cr, view.x0, view.y0); - x = X; - y = Y; - cairo_device_to_user (cr, &x, &y); + /* Si pas de selection a cet endroit retour */ + GdkDeviceManager *manager = gdk_display_get_device_manager( gdk_display_get_default() ); + GdkDevice *device = gdk_device_manager_get_client_pointer( manager ); + gdk_window_get_device_position( gtk_widget_get_window(view.AdrDrawingarea), device, &X, &Y, &state ); + // gdk_window_get_pointer( view.AdrDrawingarea->window, &X, &Y, &state ); + cr = gdk_cairo_create( gtk_widget_get_window(view.AdrDrawingarea) ); + cairo_scale (cr, view.scale, view.scale); + cairo_translate (cr, view.x0, view.y0); + x = X; + y = Y; + cairo_device_to_user (cr, &x, &y); cairo_destroy( cr ); Image = poche_add_to_glist( Str, x, y, TRUE, _TYPE_IMAGE_ ); @@ -450,7 +453,6 @@ { GLIST_POCHETTE *gl = NULL; GList *list = NULL; - gint total_row_table = 0; gint row_table = 0; GdkPixbuf *Pixbuf = NULL; @@ -477,9 +479,16 @@ // CONSTRUCTION TABLE - total_row_table = g_list_length (view.glist); + // total_row_table = g_list_length (view.glist); - view.Adr_table = gtk_table_new (1, total_row_table, FALSE); + // view.Adr_table = gtk_grid_new (1, total_row_table, FALSE); + view.Adr_table = gtk_grid_new(); + // gtk_table_resize( + // view.Adr_table, // GtkTable *table, + // total_row_table, // guint rows, + // 1 // guint columns + // ); + gtk_widget_show (view.Adr_table); gtk_container_add (GTK_CONTAINER (view.Adr_viewport_image_preview), view.Adr_table); @@ -495,11 +504,21 @@ // BUTTON gl->togglebutton = gtk_toggle_button_new (); gtk_widget_show (gl->togglebutton); - gtk_table_attach (GTK_TABLE (view.Adr_table), - gl->togglebutton, - row_table, row_table +1, 0, 1, - (GtkAttachOptions) (GTK_FILL), - (GtkAttachOptions) (0), 0, 0); + // gtk_table_attach( + // GTK_TABLE (view.Adr_table), + // gl->togglebutton, + // row_table, row_table +1, 0, 1, + // (GtkAttachOptions) (GTK_FILL), + // (GtkAttachOptions) (0), 0, 0 + // ); + gtk_grid_attach( + GTK_GRID(view.Adr_table), // GtkGrid *grid, + gl->togglebutton, // GtkWidget *child, + row_table, // gint left, + 0, // gint top, + 1, // gint width, + 1 // gint height + ); gtk_widget_set_size_request (gl->togglebutton, SIZE_IMAGE_VIEWPORT, SIZE_IMAGE_VIEWPORT); gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (gl->togglebutton), FALSE); gtk_container_set_border_width (GTK_CONTAINER (gl->togglebutton), 5); @@ -552,7 +571,7 @@ Str = NULL; } else if (FALSE == VarPocheDir.BoolInThread) { - gtk_timeout_remove (VarPocheDir.HandlerTimeout); + g_source_remove (VarPocheDir.HandlerTimeout); pochedir_table_add_images (); WindScan_close (); g_print("END TIMEOUT\n"); @@ -567,7 +586,12 @@ GSList *gs_List = p_list; pthread_t nmr_tid_1; - WindScan_open ("Files scan", WINDSCAN_PULSE); + // WindScan_open ("Files scan", WINDSCAN_PULSE); + wind_scan_init( + WindMain, + "Files scan", + WINDSCAN_PULSE + ); WindScan_set_label ("Scan directory, verify and load ..."); // PRINT_FUNC_LF(); @@ -588,7 +612,7 @@ VarPocheDir.BoolSetPercent = FALSE; g_print("DEBUT TIMEOUT\n"); - VarPocheDir.HandlerTimeout = gtk_timeout_add (100, pochedir_timeout_, 0); + VarPocheDir.HandlerTimeout = g_timeout_add (100, pochedir_timeout_, 0); g_print("DEBUT THREAD\n"); pthread_create (&nmr_tid_1, NULL ,(void *)pochedir_thread_, (void *)NULL); diff -Nru xcfa-4.3.8/src/poche_draw.c xcfa-5.0.1/src/poche_draw.c --- xcfa-4.3.8/src/poche_draw.c 2013-03-21 10:57:03.000000000 +0000 +++ xcfa-5.0.1/src/poche_draw.c 2015-02-03 15:19:10.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : poche_draw.c * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License @@ -65,6 +65,7 @@ gdouble pochedraw_get_scale_adjust( void ) { gdouble return_scale = 1.0; + GtkAllocation allocation; if( TRUE == view.BoolScaleAdjust ) { gdouble scale_width = 1.0; @@ -77,8 +78,11 @@ view.scale = SCALE_MIN; poche_set_size_request(); } - scale_width = (gdouble)view.AdrDrawingarea->allocation.width / (gdouble)view.image_width; - scale_height = (gdouble)view.AdrDrawingarea->allocation.height / (gdouble)view.image_height; + gtk_widget_get_allocation( view.AdrDrawingarea, &allocation ); + // scale_width = (gdouble)view.AdrDrawingarea->allocation.width / (gdouble)view.image_width; + scale_width = (gdouble)allocation.width / (gdouble)view.image_width; + // scale_height = (gdouble)view.AdrDrawingarea->allocation.height / (gdouble)view.image_height; + scale_height = (gdouble)allocation.height / (gdouble)view.image_height; new_scale = MIN(scale_width, scale_height); return_scale = new_scale; } @@ -534,54 +538,65 @@ LocateY = MM(177); cairo_move_to( cr, LocateX, LocateY ); - PackageVersion = g_strdup_printf ("X Convert File Audio %s - GNU General Public License - 2003..2013, Claude Bulin - fr", VERSION); + PackageVersion = g_strdup_printf ("X Convert File Audio %s - GNU General Public License - 2003..2015, Claude Bulin - fr", VERSION); cairo_show_text( cr, PackageVersion ); - // cairo_show_text( cr, "ZoomC 0.0.19 GNU General Public License - 2003 - 2013, Claude Bulin - fr" ); + // cairo_show_text( cr, "ZoomC 0.0.19 GNU General Public License - 2003 - 2015, Claude Bulin - fr" ); g_free( PackageVersion ); PackageVersion = NULL; cairo_restore (cr); } -void pochedraw_paint( cairo_surface_t *cs ) +cairo_t *pochedraw_paint( cairo_surface_t *cs, cairo_t *p_cr ) { cairo_t *cr; gint canvas_w, canvas_h; GList *List = NULL; IMAGE *Image = NULL; IMAGE *ImageSelected = NULL; + GtkAllocation allocation; - - if( FALSE == view.BoolSaveToFile ) { - cr = gdk_cairo_create( view.AdrDrawingarea->window ); + if( TRUE == view.BoolSaveToFile ) { + // cr = gdk_cairo_create( gtk_widget_get_window(view.AdrDrawingarea) ); + cr = cairo_create( cs ); } else { - cr = cairo_create( cs ); + // cr = cairo_create( cs ); + cr = p_cr; } - cairo_save (cr); + // cairo_save (cr); view.scale = pochedraw_get_scale_adjust(); + gtk_widget_get_allocation( view.AdrDrawingarea, &allocation ); // gdk_drawable_get_size (view.AdrDrawingarea->window, &canvas_w, &canvas_h ); - canvas_w = view.AdrDrawingarea->allocation.width; - canvas_h = view.AdrDrawingarea->allocation.height; + // gdk_drawable_get_size( gtk_widget_get_window( view.AdrDrawingarea ), &canvas_w, &canvas_h ); + // canvas_w = view.AdrDrawingarea->allocation.width; + canvas_w = allocation.width; + // canvas_h = view.AdrDrawingarea->allocation.height; + canvas_h = allocation.height; + // canvas_w = view.image_width; + // canvas_h = view.image_height; + view.x0 = ((canvas_w / view.scale) - view.image_width) / 2.0; view.y0 = ((canvas_h / view.scale) - view.image_height) / 2.0; + cairo_save (cr); cairo_scale( cr, view.scale, view.scale ); cairo_translate( cr, view.x0, view.y0 ); cairo_set_source_surface( cr, view.image, 0.0, 0.0 ); cairo_paint( cr ); + // PAINT PREVIEW SURFACE cairo_set_source_rgb( cr, 1.0, 1.0, 1.0 ); + // cairo_set_source_rgb( cr, 0.0, 0.0, 0.0 ); cairo_rectangle( cr, 0, 0, view.image_width, view.image_height - ); + ); cairo_fill( cr ); - + cairo_restore (cr); - // // Image[ n ] image en dessous / image below // Image[ n +1 ] @@ -611,7 +626,9 @@ } cairo_restore (cr); pochedraw_set_format( cr ); - cairo_destroy( cr ); + + return( cr ); + // cairo_destroy( cr ); } diff -Nru xcfa-4.3.8/src/poche.h xcfa-5.0.1/src/poche.h --- xcfa-4.3.8/src/poche.h 2013-03-21 10:55:27.000000000 +0000 +++ xcfa-5.0.1/src/poche.h 2015-02-03 15:16:26.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : poche.h * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License @@ -41,101 +41,101 @@ } TYPE_IMAGE; typedef struct { - TYPE_IMAGE TypeImage; // IMAGE | TEXT + TYPE_IMAGE TypeImage; // IMAGE | TEXT // _TYPE_TEXT_ // _TYPE_TEXT_TITLE_ - gchar *Texte; // + gchar *Texte; // - gchar *FontName; // - gint SizeFontName; // - gboolean BoolFontBold; // TRUE = BOLD, FALSE = NORMAL - gboolean BoolFontItalic; // TRUE = ITALIC, FALSE = NORMAL - gint PosCombobox; // -1 OR 0 .. 3 + gchar *FontName; // + gint SizeFontName; // + gboolean BoolFontBold; // TRUE = BOLD, FALSE = NORMAL + gboolean BoolFontItalic; // TRUE = ITALIC, FALSE = NORMAL + gint PosCombobox; // -1 OR 0 .. 3 // _TYPE_IMAGE_ - GdkPixbuf *Pixbuf; // Adresse du PixBuf en traitement - GdkPixbuf *PixbufOriginal; // Adresse du PixBuf original + GdkPixbuf *Pixbuf; // Adresse du PixBuf en traitement + GdkPixbuf *PixbufOriginal; // Adresse du PixBuf original // VALUES - gdouble x0; // Pos X - gdouble y0; // Pos Y - gint image_width; // Width - gint image_height; // Height - gdouble XPointer; // Position x de la souris lors du clic - gdouble YPointer; // Position y de la souris lors du clic - gboolean BoolIsSelected; // TRUE = selected with mouse cursor - gboolean BoolStructRemove; // TRUE = STRUCT IS REMOVE | FALSE = ACTIVE - gboolean BoolFlipVertical; // TRUE = Force flip Vertical - gboolean BoolFlipHorizontal; // TRUE = Force flip Horizontal + gdouble x0; // Pos X + gdouble y0; // Pos Y + gint image_width; // Width + gint image_height; // Height + gdouble XPointer; // Position x de la souris lors du clic + gdouble YPointer; // Position y de la souris lors du clic + gboolean BoolIsSelected; // TRUE = selected with mouse cursor + gboolean BoolStructRemove; // TRUE = STRUCT IS REMOVE | FALSE = ACTIVE + gboolean BoolFlipVertical; // TRUE = Force flip Vertical + gboolean BoolFlipHorizontal; // TRUE = Force flip Horizontal } IMAGE; typedef enum { - IMG_HAUT_GAUCHE = 0, // - IMG_HAUT, // - IMG_HAUT_DROIT, // - IMG_DROIT, // - IMG_BAS_DROIT, // - IMG_BAS, // - IMG_BAS_GAUCHE, // - IMG_GAUCHE, // - IMG_MOVE, // - IMG_SIZE, // For size tab HANDLE_MOVE [] - IMG_NONE // NO IMAGE SELECTED + IMG_HAUT_GAUCHE = 0, // + IMG_HAUT, // + IMG_HAUT_DROIT, // + IMG_DROIT, // + IMG_BAS_DROIT, // + IMG_BAS, // + IMG_BAS_GAUCHE, // + IMG_GAUCHE, // + IMG_MOVE, // + IMG_SIZE, // For size tab HANDLE_MOVE [] + IMG_NONE // NO IMAGE SELECTED } IMG_CORNER; typedef struct { GdkRectangle zone[ IMG_SIZE ]; // Les IMG_SIZE coordonnees de saisie de l'image - // EX: - // zone [ IMG_HAUT ] . x - // zone [ IMG_HAUT ] . y - // zone [ IMG_HAUT ] . width - // zone [ IMG_HAUT ] . height + // EX: + // zone [ IMG_HAUT ] . x + // zone [ IMG_HAUT ] . y + // zone [ IMG_HAUT ] . width + // zone [ IMG_HAUT ] . height } HANDLE_MOVE; typedef struct { - // UNE STRUCTURE PAR FICHIER IMAGE - gchar *name_img; // Nom du fichier image original - gchar *name_png; // Nom du fichier PNG - GtkWidget *togglebutton; // Adresse du bouton - GtkWidget *image; // Adresse de l'image - gboolean BoolStructRemove; // TRUE = STRUCT IS REMOVE | FALSE = ACTIVE + // UNE STRUCTURE PAR FICHIER IMAGE + gchar *name_img; // Nom du fichier image original + gchar *name_png; // Nom du fichier PNG + GtkWidget *togglebutton; // Adresse du bouton + GtkWidget *image; // Adresse de l'image + gboolean BoolStructRemove; // TRUE = STRUCT IS REMOVE | FALSE = ACTIVE } GLIST_POCHETTE; typedef struct { - gboolean BoolAccessChanged; // COMBOBOX changed is TRUE - - GtkComboBox *AdrComboBoxChoice; // + gboolean BoolAccessChanged; // COMBOBOX changed is TRUE + GtkComboBox *AdrComboBoxChoice; // + GtkWidget *AdrEntrySearchImgWeb; // Adresse saisie image web GtkWidget *AdrEntryNameFileSave; // Adresse saisie nom fichier image - GtkWidget *AdrEntryTitleCD; // Adresse saisie titre du CD + GtkWidget *AdrEntryTitleCD; // Adresse saisie titre du CD - gchar *TitleCD; // - gchar *Buffer_none; // - gchar *Buffer_title; // - gchar *Buffer_title_time; // + gchar *TitleCD; // + gchar *Buffer_none; // + gchar *Buffer_title; // + gchar *Buffer_title_time; // gchar *Buffer_artist_title_time; // - GtkWidget *AdrDrawingarea; // Adresse de la surface - gboolean BoolScaleAdjust; // TRUE = ajustement de l'echelle avec la surface de la fentre - cairo_surface_t *image; // Adresse de l'image - gdouble scale; // Pourcentage de surface de l'image - gdouble x0; // Pos X - gdouble y0; // Pos Y - gint image_width; // Width - gint image_height; // Height - GList *ListImage; // Pointeur de structure IMAGE pour AdrDrawingarea + GtkWidget *AdrDrawingarea; // Adresse de la surface + gboolean BoolScaleAdjust; // TRUE = ajustement de l'echelle avec la surface de la fentre + cairo_surface_t *image; // Adresse de l'image + gdouble scale; // Pourcentage de surface de l'image + gdouble x0; // Pos X + gdouble y0; // Pos Y + gint image_width; // Width + gint image_height; // Height + GList *ListImage; // Pointeur de structure IMAGE pour AdrDrawingarea gboolean BoolEventButtonPress; // TRUE == BOUTON SOURIS PRESSED - IMAGE *GetImage; // Adresse de l'image en selection - IMG_CORNER ImgCorner; // See IMG_CORNER - GtkWidget *Adr_viewport_image_preview; // Adresse viewport - GtkWidget *Adr_table; // Adresse table contenu dans le viewport - GList *glist; // Contient les structures GLIST_POCHETTE - GtkWidget *AdrTextview; // Adresse textview - gboolean BoolSaveToFile; // TRUE si sauvegarde vers fichier - HANDLE_MOVE HandleMove; // Les coordonnees de saisie de l'image + IMAGE *GetImage; // Adresse de l'image en selection + IMG_CORNER ImgCorner; // See IMG_CORNER + GtkWidget *Adr_viewport_image_preview; // Adresse viewport + GtkWidget *Adr_table; // Adresse table contenu dans le viewport + GList *glist; // Contient les structures GLIST_POCHETTE + GtkWidget *AdrTextview; // Adresse textview + gboolean BoolSaveToFile; // TRUE si sauvegarde vers fichier + HANDLE_MOVE HandleMove; // Les coordonnees de saisie de l'image } VIEW; extern VIEW view; @@ -185,7 +185,8 @@ // // POCHE_DRAW.C // -void pochedraw_paint( cairo_surface_t *cs ); +// void pochedraw_paint( cairo_surface_t *cs ); +cairo_t *pochedraw_paint( cairo_surface_t *cs, cairo_t *p_cr ); void pochedraw_get_handle_move( IMAGE *p_Image, gboolean p_BoolTestCursor ); // // POCHE_TXT.C diff -Nru xcfa-4.3.8/src/poche_save.c xcfa-5.0.1/src/poche_save.c --- xcfa-4.3.8/src/poche_save.c 2013-03-21 10:55:49.000000000 +0000 +++ xcfa-5.0.1/src/poche_save.c 2015-02-05 19:41:58.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : poche_save.c * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License @@ -65,8 +65,8 @@ { cairo_surface_t *cs; - cs = cairo_image_surface_create( CAIRO_FORMAT_ARGB32, width, height ); - pochedraw_paint( cs ); + cs = cairo_image_surface_create( CAIRO_FORMAT_ARGB32, MM(290), MM(360) ); + pochedraw_paint( cs, NULL ); cairo_surface_write_to_png( cs, fname ); cairo_surface_destroy( cs ); } @@ -76,10 +76,17 @@ void pochesave_write_pdf( gchar *fname, gint width, gint height ) { cairo_surface_t *cs; - - cs = cairo_pdf_surface_create( fname, width, height ); - pochedraw_paint( cs ); + cairo_t *cr = NULL; + + + // cs = cairo_pdf_surface_create( fname, MM(280), MM(300) ); + // cs = cairo_pdf_surface_create( fname, width, height ); + cs = cairo_pdf_surface_create( fname, width, 816 ); + cr = pochedraw_paint( cs, NULL ); + // cairo_surface_flush( cs ); cairo_surface_destroy( cs ); + cairo_show_page( cr ); + cairo_destroy( cr ); } // SEE: // http://en.literateprograms.org/Hello_World_%28C,_Cairo%29 @@ -89,7 +96,7 @@ cairo_surface_t *cs; cs = cairo_ps_surface_create( fname, width, height ); - pochedraw_paint( cs ); + pochedraw_paint( cs, NULL ); cairo_surface_destroy( cs ); } // @@ -98,21 +105,20 @@ // void on_button_save_clicked( GtkButton *button, gpointer user_data ) { - gint width; - gint height; gdouble OldScale = view.scale; gboolean BoolScaleAdjust = view.BoolScaleAdjust; gchar *PathNameSaveFile = NULL; gchar *NameSaveFile = pochetxt_get_ptr_entry_name_file_to_save(); + GtkAllocation allocation; if( NULL == NameSaveFile || '\0' == *NameSaveFile ) { - wininfo_create ( + wind_info_init ( WindMain, - _("Nom de fichier absent !!"), - _("Pour resoudre ce probleme:"), + _("File name not found !!"), + _("To solve this problem :"), "\n", "-----------------------------------\n", - _("Saisissez un nom de fichier sans extention"), + _("Enter a file name without extension"), ""); return; } @@ -122,24 +128,31 @@ // // PDF POSTSCRIPT // - // StatusBar_puts( _("Sauvegarde aux formats PDF et PostScript") ); - StatusBar_set_mess( NOTEBOOK_POCHETTE, _STATUSBAR_SIMPLE_, _("Sauvegarde aux formats PDF et PostScript") ); - view.scale = 1.55; + StatusBar_set_mess( NOTEBOOK_POCHETTE, _STATUSBAR_SIMPLE_, _("Saving to PDF") ); + view.scale = 10; poche_set_size_request(); - gtk_widget_queue_draw( view.AdrDrawingarea ); - while (gtk_events_pending()) gtk_main_iteration(); - width = view.AdrDrawingarea->allocation.width; - height = view.AdrDrawingarea->allocation.height; + view.scale = 1.55; + printf("view.scale = 1.55 \n" ); + do { + poche_set_size_request(); + while (gtk_events_pending()) gtk_main_iteration(); + gtk_widget_get_allocation( view.AdrDrawingarea, &allocation ); + printf(" allocation.width = %d allocation.height = %d\n", allocation.width, allocation.height ); + } while( allocation.width != 576 && allocation.height != 816 ); - PathNameSaveFile = g_strdup_printf( "%s/%s.pdf", Config.PathSaveImg, NameSaveFile ); - // REDIRECTION VERS PDF ET POSTSCRIPT + // REDIRECTION VERS PDF view.BoolSaveToFile = TRUE; - pochesave_write_pdf( PathNameSaveFile, width, height ); + + PathNameSaveFile = g_strdup_printf( "%s/%s.pdf", Config.PathSaveImg, NameSaveFile ); + gtk_widget_get_allocation( view.AdrDrawingarea, &allocation ); + pochesave_write_pdf( PathNameSaveFile, allocation.width, allocation.height ); g_free( PathNameSaveFile ); PathNameSaveFile = NULL; + /** + // REDIRECTION VERS POSTSCRIPT PathNameSaveFile = g_strdup_printf( "%s/%s.ps", Config.PathSaveImg, NameSaveFile ); - pochesave_write_ps( PathNameSaveFile, width, height ); + pochesave_write_ps( PathNameSaveFile, allocation.width, allocation.height ); g_free( PathNameSaveFile ); PathNameSaveFile = NULL; view.BoolSaveToFile = FALSE; @@ -150,20 +163,23 @@ // StatusBar_puts( _("Sauvegarde au format PNG") ); StatusBar_set_mess( NOTEBOOK_POCHETTE, _STATUSBAR_SIMPLE_, _("Sauvegarde au format PNG") ); view.scale = 2.0; - poche_set_size_request(); - gtk_widget_queue_draw( view.AdrDrawingarea ); - while (gtk_events_pending()) gtk_main_iteration(); - width = view.AdrDrawingarea->allocation.width; - height = view.AdrDrawingarea->allocation.height; + printf("view.scale = 2.0 \n" ); + do { + poche_set_size_request(); + while (gtk_events_pending()) gtk_main_iteration(); + gtk_widget_get_allocation( view.AdrDrawingarea, &allocation ); + printf(" allocation.width = %d allocation.height = %d\n", allocation.width, allocation.height ); + } while( allocation.width > 576 && allocation.height > 816 ); PathNameSaveFile = g_strdup_printf( "%s/%s.png", Config.PathSaveImg, NameSaveFile ); // REDIRECTION VERS PNG view.BoolSaveToFile = TRUE; - pochesave_write_png( PathNameSaveFile, width, height ); + pochesave_write_png( PathNameSaveFile, allocation.width, allocation.height ); g_free( PathNameSaveFile ); PathNameSaveFile = NULL; - view.BoolSaveToFile = FALSE; + */ + view.BoolSaveToFile = FALSE; view.scale = OldScale; view.BoolScaleAdjust = BoolScaleAdjust; poche_set_size_request(); diff -Nru xcfa-4.3.8/src/poche_txt.c xcfa-5.0.1/src/poche_txt.c --- xcfa-4.3.8/src/poche_txt.c 2013-03-21 10:55:49.000000000 +0000 +++ xcfa-5.0.1/src/poche_txt.c 2015-01-30 16:01:16.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : poche_txt.c * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License @@ -168,6 +168,7 @@ pochetxt_set_text_to_textview( Image ); // DEBUG CDDB_CURL pochetxt_set_combobox_choice( Image->PosCombobox ); + poche_set_flag_buttons(); } // @@ -236,8 +237,8 @@ gchar *Ptr = NULL; gchar *Font = g_strdup_printf( "%s %d", Image->FontName, Image->SizeFontName ); - dialog = gtk_font_selection_dialog_new("Select Font"); - gtk_font_selection_dialog_set_font_name( GTK_FONT_SELECTION_DIALOG(dialog), Font ); + dialog = gtk_font_chooser_dialog_new( "Select Font", GTK_WINDOW(WindMain) ); + gtk_font_chooser_set_font( GTK_FONT_CHOOSER (dialog), Font ); g_free( Font ); Font = NULL; result = gtk_dialog_run(GTK_DIALOG(dialog)); @@ -247,7 +248,7 @@ g_free( Image->FontName ); Image->FontName = NULL; } - Image->FontName = gtk_font_selection_dialog_get_font_name( GTK_FONT_SELECTION_DIALOG(dialog)); + Image->FontName = g_strdup( gtk_font_chooser_get_font( GTK_FONT_CHOOSER (dialog) )); // LE NOM DE LA POLICE: FontName Ptr = Image->FontName; @@ -260,7 +261,7 @@ Image->SizeFontName = atoi( Ptr ); Ptr --; *Ptr = '\0'; - + // FORCER AFFICHAGE gtk_widget_queue_draw( view.AdrDrawingarea ); } @@ -354,12 +355,10 @@ // void on_combobox_choice_get_cd_realize( GtkWidget *widget, gpointer user_data ) { - libcombo_alloc (GTK_COMBO_BOX (widget)); - - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), "Aucun" ); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), "Titre" ); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), "Titre - Temps" ); - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), "Artiste - Titre - Temps" ); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), "Aucun" ); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), "Titre" ); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), "Titre - Temps" ); + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), "Artiste - Titre - Temps" ); gtk_combo_box_set_active(GTK_COMBO_BOX (widget), 0 ); view.AdrComboBoxChoice = GTK_COMBO_BOX (widget); } diff -Nru xcfa-4.3.8/src/poche_web.c xcfa-5.0.1/src/poche_web.c --- xcfa-4.3.8/src/poche_web.c 2013-03-21 10:55:49.000000000 +0000 +++ xcfa-5.0.1/src/poche_web.c 2015-02-26 10:03:31.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : poche_web.c * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License @@ -145,10 +145,10 @@ gchar *buffer = NULL; gchar *result = NULL; FILE *fp; - gchar *PtrBegin = NULL; - gchar *PtrEnd = NULL; gchar *PtrName = NULL; - gint NumFile = 1; + const char *prefix = "/images?q=tbn:"; + char *url_start = NULL; + char *url_end = NULL; PRINT_FUNC_LF(); @@ -168,71 +168,48 @@ fread (buffer, 1, lenfile, fp); fclose (fp); - // - // RECHERCHE D'UNE SEQUENCE: - // .jpg - // ... PRECEDEE D'UNE SEQUENCE: - // http:// - // - PtrEnd = buffer; - // BOUCLE - while( (PtrEnd - buffer) < lenfile ) { - // SEARCH END STRING '.jpg' - if( NULL != ( PtrEnd = strstr( PtrEnd, ".jpg" ))) { - PtrBegin = PtrEnd; - PtrBegin --; - PtrEnd += 4; - // SEARCH BEGIN STRING 'http:' - while( PtrBegin > buffer ) { + url_start = buffer; + do { + url_start = strstr( url_start, prefix ); + if( NULL != url_start ) { + url_end = strstr( url_start, "\"" ); + if( NULL != url_end ) { - if( *(PtrBegin + 0) == 'h' && - *(PtrBegin + 1) == 't' && - *(PtrBegin + 2) == 't' && - *(PtrBegin + 3) == 'p' && - *(PtrBegin + 4) == ':' ) { - - // MAKE STRING - result = g_strnfill( (PtrEnd - PtrBegin) + 10, '\0' ); - // GET STRING - strncpy( result, PtrBegin, PtrEnd - PtrBegin ); - - if( TRUE == OptionsCommandLine.BoolVerboseMode ) { - g_print( "NumFile = %d\n", NumFile ); - g_print( "result = %s\n", result ); + result = g_strnfill( (url_end - url_start) + 100, '\0' ); + strcpy( result, "www.google.com/" ); + strncat( result, url_start, url_end - url_start ); + + // printf("result = www.google.com/%s\n", result ); + + if ((PtrName = pocheweb_get_on_web_file_img (result))) { + if (pocheweb_event.name) { + g_free (pocheweb_event.name); + pocheweb_event.name = NULL; } - NumFile ++; + pocheweb_event.name = g_strdup( PtrName ); + pochedir_make_glist( PtrName ); - if ((PtrName = pocheweb_get_on_web_file_img (result))) { - if (pocheweb_event.name) { - g_free (pocheweb_event.name); - pocheweb_event.name = NULL; - } - pocheweb_event.name = g_strdup( PtrName ); - pochedir_make_glist( PtrName ); - - g_free( PtrName ); - PtrName = NULL; + g_free( PtrName ); + PtrName = NULL; + } + + url_start = url_end + 1; + + g_free( result ); + result = NULL; + + if (WindScan_close_request ()) { + if( TRUE == OptionsCommandLine.BoolVerboseMode ) { + g_print ("DEMANDE D'ANNULATION DEPUIS: "); + PRINT_FUNC_LF(); } - g_free( result ); - result = NULL; break; } - else { - PtrBegin --; - } - } - - if (WindScan_close_request ()) { - if( TRUE == OptionsCommandLine.BoolVerboseMode ) { - g_print ("DEMANDE D'ANNULATION DEPUIS: "); - PRINT_FUNC_LF(); - } - break; + } + else break; } - PtrEnd ++; - if ((PtrEnd - buffer) >= lenfile -100) break; - } + } while( NULL != url_start ); g_free (buffer); buffer = NULL; @@ -342,20 +319,20 @@ pochedir_table_add_images (); // pocheevnt_set_flag_buttons_recto (); // pocheevnt_set_flag_buttons_verso (); - gtk_timeout_remove (pocheweb_event.timeout); + g_source_remove (pocheweb_event.timeout); WindScan_close (); if (pocheweb_bool_file_add () == FALSE) { - wininfo_create ( + wind_info_init ( WindMain, - _("Aucun fichier trouve !"), - _("Pour resoudre ce probleme:"), + _("No file found !"), + _("To solve this problem :"), "\n", "-----------------------------------\n", - _("Modifiez la chaine de recherche et"), + _("Modify the search parameters and"), "\n", - _("recommencez."), + _("start again."), ""); } } @@ -369,33 +346,31 @@ // PRINT_FUNC_LF(); if( NULL == StrEntryWeb || '\0' == *StrEntryWeb ) { - wininfo_create ( + wind_info_init ( WindMain, - _("Critere de recherche absent !!"), - _("Pour resoudre ce probleme:"), + _("Search criteria away !!"), + _("To solve this problem :"), "\n", "-----------------------------------\n", - _("Saisissez une chaine de recherche et"), - "\n", - _("recommencez."), + _("Modify the search parameters and"), + "\n", + _("start again."), ""); return; } pocheweb_event.pocheweb_tt_glist = g_list_length (view.glist); - WindScan_open ("Recherche des fichiers images", WINDSCAN_PULSE); + // WindScan_open ("Recherche des fichiers images", WINDSCAN_PULSE); + wind_scan_init( + WindMain, + "Recherche des fichiers images", + WINDSCAN_PULSE + ); WindScan_set_label ("Recherche des fichiers images ..."); - pocheweb_event.name = g_strdup (_("[Recherche des fichiers images]")); + pocheweb_event.name = g_strdup (_("[Search images files]")); pocheweb_event.name = NULL; pocheweb_event.EndThread = FALSE; pocheweb_event.EndTimeout = FALSE; - pocheweb_event.timeout = gtk_timeout_add (10, pocheweb_timeout, 0); + pocheweb_event.timeout = g_timeout_add (10, pocheweb_timeout, 0); pthread_create (&pocheweb_event.nmr_tid, NULL ,(void *)pocheweb_thread, (void *)NULL); } - - - - - - - diff -Nru xcfa-4.3.8/src/popup.c xcfa-5.0.1/src/popup.c --- xcfa-4.3.8/src/popup.c 2013-03-21 10:55:49.000000000 +0000 +++ xcfa-5.0.1/src/popup.c 2015-02-06 14:16:05.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : popup.c * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright :( C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License @@ -319,7 +319,7 @@ } menu = gtk_menu_new( ); - gtk_widget_set_extension_events( menu, GDK_EXTENSION_EVENTS_ALL ); + // gtk_widget_set_extension_events( menu, GDK_EXTENSION_EVENTS_ALL ); for( cpt = 0; cpt < nbr_op; cpt ++ ) { if( p_popup[ cpt ].Op.Type > -1 ) { @@ -346,7 +346,7 @@ gtk_menu_item_set_submenu( GTK_MENU_ITEM( p_popup[ cpt ].Widget), SubMenu ); } else if( p_popup[ cpt ].Op.Type == -10 ) { - p_popup[ cpt ].Widget = gtk_image_menu_item_new_with_mnemonic( gettext(p_popup[ cpt ].Title) ); + p_popup[ cpt ].Widget = gtk_menu_item_new_with_mnemonic( gettext(p_popup[ cpt ].Title) ); gtk_widget_show( p_popup[ cpt ].Widget ); gtk_container_add( GTK_CONTAINER( SubMenu), p_popup[ cpt ].Widget ); } @@ -486,22 +486,22 @@ Menu = gtk_menu_new( ); - CellTrack1 = gtk_menu_item_new_with_mnemonic( _("1 piste") ); + CellTrack1 = gtk_menu_item_new_with_mnemonic( "1 track" ); gtk_widget_show( CellTrack1 ); gtk_container_add( GTK_CONTAINER( Menu), CellTrack1 ); - CellTrack2 = gtk_menu_item_new_with_mnemonic( _("2 pistes") ); + CellTrack2 = gtk_menu_item_new_with_mnemonic( "2 track" ); gtk_widget_show( CellTrack2 ); gtk_container_add( GTK_CONTAINER( Menu), CellTrack2 ); - CellTrack4 = gtk_menu_item_new_with_mnemonic( _("4 pistes") ); + CellTrack4 = gtk_menu_item_new_with_mnemonic( "4 track" ); gtk_widget_show( CellTrack4 ); gtk_container_add( GTK_CONTAINER( Menu), CellTrack4 ); - CellTrack6 = gtk_menu_item_new_with_mnemonic( _("6 pistes") ); + CellTrack6 = gtk_menu_item_new_with_mnemonic( "6 track" ); gtk_widget_show( CellTrack6 ); gtk_container_add( GTK_CONTAINER( Menu), CellTrack6 ); CellSeparate = gtk_separator_menu_item_new( ); gtk_widget_show( CellSeparate ); gtk_container_add( GTK_CONTAINER( Menu), CellSeparate ); - CellTrackOriginal = gtk_menu_item_new_with_mnemonic( _("Valeur d'origine") ); + CellTrackOriginal = gtk_menu_item_new_with_mnemonic( _("Original value") ); gtk_widget_show( CellTrackOriginal ); gtk_container_add( GTK_CONTAINER( Menu), CellTrackOriginal ); @@ -586,37 +586,37 @@ GtkWidget *CellHertzOriginal; Menu = gtk_menu_new( ); - gtk_widget_set_extension_events( Menu, GDK_EXTENSION_EVENTS_ALL ); + // gtk_widget_set_extension_events( Menu, GDK_EXTENSION_EVENTS_ALL ); - CellHertz8000 = gtk_menu_item_new_with_mnemonic( _(" 8000 Hertz") ); + CellHertz8000 = gtk_menu_item_new_with_mnemonic( " 8000 Hertz" ); gtk_widget_show( CellHertz8000 ); gtk_container_add( GTK_CONTAINER( Menu), CellHertz8000 ); - CellHertz22000 = gtk_menu_item_new_with_mnemonic( _("22000 Hertz") ); + CellHertz22000 = gtk_menu_item_new_with_mnemonic( "22000 Hertz" ); gtk_widget_show( CellHertz22000 ); gtk_container_add( GTK_CONTAINER( Menu), CellHertz22000 ); - CellHertz32000 = gtk_menu_item_new_with_mnemonic( _("32000 Hertz") ); + CellHertz32000 = gtk_menu_item_new_with_mnemonic( "32000 Hertz" ); gtk_widget_show( CellHertz32000 ); gtk_container_add( GTK_CONTAINER( Menu), CellHertz32000 ); - CellHertz44056 = gtk_menu_item_new_with_mnemonic( _("44056 Hertz") ); + CellHertz44056 = gtk_menu_item_new_with_mnemonic( "44056 Hertz" ); gtk_widget_show( CellHertz44056 ); gtk_container_add( GTK_CONTAINER( Menu), CellHertz44056 ); - CellHertz44100 = gtk_menu_item_new_with_mnemonic( _("44100 Hertz") ); + CellHertz44100 = gtk_menu_item_new_with_mnemonic( "44100 Hertz" ); gtk_widget_show( CellHertz44100 ); gtk_container_add( GTK_CONTAINER( Menu), CellHertz44100 ); - CellHertz48000 = gtk_menu_item_new_with_mnemonic( _("48000 Hertz") ); + CellHertz48000 = gtk_menu_item_new_with_mnemonic( "48000 Hertz" ); gtk_widget_show( CellHertz48000 ); gtk_container_add( GTK_CONTAINER( Menu), CellHertz48000 ); - CellHertz88200 = gtk_menu_item_new_with_mnemonic( _("88200 Hertz") ); + CellHertz88200 = gtk_menu_item_new_with_mnemonic( "88200 Hertz" ); gtk_widget_show( CellHertz88200 ); gtk_container_add( GTK_CONTAINER( Menu), CellHertz88200 ); - CellHertz96000 = gtk_menu_item_new_with_mnemonic( _("96000 Hertz") ); + CellHertz96000 = gtk_menu_item_new_with_mnemonic( "96000 Hertz" ); gtk_widget_show( CellHertz96000 ); gtk_container_add( GTK_CONTAINER( Menu), CellHertz96000 ); CellSeparate = gtk_separator_menu_item_new( ); gtk_widget_show( CellSeparate ); gtk_container_add( GTK_CONTAINER( Menu), CellSeparate ); - CellHertzOriginal = gtk_menu_item_new_with_mnemonic( _("Valeur d'origine") ); + CellHertzOriginal = gtk_menu_item_new_with_mnemonic( _("Original value") ); gtk_widget_show( CellHertzOriginal ); gtk_container_add( GTK_CONTAINER( Menu), CellHertzOriginal ); @@ -692,28 +692,27 @@ GtkWidget *CellOriginal; Menu = gtk_menu_new( ); - - gtk_widget_set_extension_events( Menu, GDK_EXTENSION_EVENTS_ALL ); + // gtk_widget_set_extension_events( Menu, GDK_EXTENSION_EVENTS_ALL ); - CellWav8 = gtk_menu_item_new_with_mnemonic( _(" 8 bits") ); + CellWav8 = gtk_menu_item_new_with_mnemonic( " 8 bits" ); gtk_widget_show( CellWav8 ); gtk_container_add( GTK_CONTAINER( Menu), CellWav8 ); - CellWav16 = gtk_menu_item_new_with_mnemonic( _("16 bits") ); + CellWav16 = gtk_menu_item_new_with_mnemonic( "16 bits" ); gtk_widget_show( CellWav16 ); gtk_container_add( GTK_CONTAINER( Menu), CellWav16 ); - CellWav24 = gtk_menu_item_new_with_mnemonic( _("24 bits") ); + CellWav24 = gtk_menu_item_new_with_mnemonic( "24 bits" ); gtk_widget_show( CellWav24 ); gtk_container_add( GTK_CONTAINER( Menu), CellWav24 ); - CellWav32 = gtk_menu_item_new_with_mnemonic( _("32 bits") ); + CellWav32 = gtk_menu_item_new_with_mnemonic( "32 bits" ); gtk_widget_show( CellWav32 ); gtk_container_add( GTK_CONTAINER( Menu), CellWav32 ); - CellWav64 = gtk_menu_item_new_with_mnemonic( _("64 bits") ); + CellWav64 = gtk_menu_item_new_with_mnemonic( "64 bits" ); gtk_widget_show( CellWav64 ); gtk_container_add( GTK_CONTAINER( Menu), CellWav64 ); CellSeparate = gtk_separator_menu_item_new( ); gtk_widget_show( CellSeparate ); gtk_container_add( GTK_CONTAINER( Menu), CellSeparate ); - CellOriginal = gtk_menu_item_new_with_mnemonic( _("Valeur d'origine") ); + CellOriginal = gtk_menu_item_new_with_mnemonic( _("Original value") ); gtk_widget_show( CellOriginal ); gtk_container_add( GTK_CONTAINER( Menu), CellOriginal ); @@ -761,12 +760,13 @@ GtkWidget *SplitRemove; Menu = gtk_menu_new( ); - gtk_widget_set_extension_events( Menu, GDK_EXTENSION_EVENTS_ALL ); - SplitNext = gtk_menu_item_new_with_mnemonic( _("Selecteur suivant") ); + // gtk_widget_set_extension_events( Menu, GDK_EXTENSION_EVENTS_ALL ); + + SplitNext = gtk_menu_item_new_with_mnemonic( _("Next selector") ); gtk_widget_show( SplitNext ); gtk_container_add( GTK_CONTAINER( Menu), SplitNext ); - SplitPrevious = gtk_menu_item_new_with_mnemonic( _("Selecteur precedant") ); + SplitPrevious = gtk_menu_item_new_with_mnemonic( _("Previous selector") ); gtk_widget_show( SplitPrevious ); gtk_container_add( GTK_CONTAINER( Menu), SplitPrevious ); @@ -774,7 +774,7 @@ gtk_widget_show( Separate ); gtk_container_add( GTK_CONTAINER( Menu), Separate ); - SplitRemove = gtk_menu_item_new_with_mnemonic( _("Supprimer la plage active") ); + SplitRemove = gtk_menu_item_new_with_mnemonic( _("Delete the active range") ); gtk_widget_show( SplitRemove ); gtk_container_add( GTK_CONTAINER( Menu), SplitRemove ); @@ -845,12 +845,13 @@ GtkWidget *ImageLast; Menu = gtk_menu_new( ); - gtk_widget_set_extension_events( Menu, GDK_EXTENSION_EVENTS_ALL ); - FlipHorizontal = gtk_menu_item_new_with_mnemonic( _("Retourner horizontalement") ); + // gtk_widget_set_extension_events( Menu, GDK_EXTENSION_EVENTS_ALL ); + + FlipHorizontal = gtk_menu_item_new_with_mnemonic( _("Flip Horizontal") ); gtk_widget_show( FlipHorizontal ); gtk_container_add( GTK_CONTAINER( Menu), FlipHorizontal ); - FlipVertical = gtk_menu_item_new_with_mnemonic( _("Retourner verticalement") ); + FlipVertical = gtk_menu_item_new_with_mnemonic( _("Flip Vertical") ); gtk_widget_show( FlipVertical ); gtk_container_add( GTK_CONTAINER( Menu), FlipVertical ); @@ -858,19 +859,19 @@ gtk_widget_show( Separate ); gtk_container_add( GTK_CONTAINER( Menu), Separate ); - ImageFisrt = gtk_menu_item_new_with_mnemonic( _("Image au premier plan") ); + ImageFisrt = gtk_menu_item_new_with_mnemonic( _("Foreground image") ); gtk_widget_show( ImageFisrt ); gtk_container_add( GTK_CONTAINER( Menu), ImageFisrt ); - ImageUp = gtk_menu_item_new_with_mnemonic( _("Image au dessus") ); + ImageUp = gtk_menu_item_new_with_mnemonic( _("Image above") ); gtk_widget_show( ImageUp ); gtk_container_add( GTK_CONTAINER( Menu), ImageUp ); - ImageDown = gtk_menu_item_new_with_mnemonic( _("Image en dessous") ); + ImageDown = gtk_menu_item_new_with_mnemonic( _("Image below") ); gtk_widget_show( ImageDown ); gtk_container_add( GTK_CONTAINER( Menu), ImageDown ); - ImageLast = gtk_menu_item_new_with_mnemonic( _("Image au dernier plan") ); + ImageLast = gtk_menu_item_new_with_mnemonic( _("Image to the background") ); gtk_widget_show( ImageLast ); gtk_container_add( GTK_CONTAINER( Menu), ImageLast ); @@ -878,7 +879,7 @@ gtk_widget_show( Separate ); gtk_container_add( GTK_CONTAINER( Menu), Separate ); - RemoveImage = gtk_menu_item_new_with_mnemonic( _("Effacer l'image") ); + RemoveImage = gtk_menu_item_new_with_mnemonic( _("Clear image") ); gtk_widget_show( RemoveImage ); gtk_container_add( GTK_CONTAINER( Menu), RemoveImage ); @@ -914,8 +915,9 @@ GtkWidget *RemoveImage; Menu = gtk_menu_new( ); - gtk_widget_set_extension_events( Menu, GDK_EXTENSION_EVENTS_ALL ); - RemoveImage = gtk_menu_item_new_with_mnemonic( _("Supprimer l'image de la liste") ); + // gtk_widget_set_extension_events( Menu, GDK_EXTENSION_EVENTS_ALL ); + + RemoveImage = gtk_menu_item_new_with_mnemonic( _("Remove image from the list") ); gtk_widget_show( RemoveImage ); gtk_container_add( GTK_CONTAINER( Menu), RemoveImage ); @@ -975,7 +977,7 @@ gint Choice; Menu = gtk_menu_new( ); - gtk_widget_set_extension_events( Menu, GDK_EXTENSION_EVENTS_ALL ); + // gtk_widget_set_extension_events( Menu, GDK_EXTENSION_EVENTS_ALL ); for( Choice = 0; -1 != StructTagsFileMp3[ Choice ].num; Choice ++ ) { @@ -998,6 +1000,79 @@ } +// +// +// POPUP TAG FILE +// +// +/* +typedef struct { + gboolean BoolFromPopup; + gint num; + gchar *name; +} FILE_POPUP_GENRE; +*/ +FILE_POPUP_GENRE FilePopupGenre = { FALSE, -1, NULL }; + +void on_menu_popup_num_file_activate( GtkMenuItem *menuitem, gpointer user_data ) +{ + gint Choice = GPOINTER_TO_INT(user_data); + + FilePopupGenre.num = Choice; + FilePopupGenre.BoolFromPopup = TRUE; + + PRINT_FUNC_LF(); + if( TRUE == OptionsCommandLine.BoolVerboseMode ) { + g_print( "\tPtrEntry = %s\n", FilePopupGenre.name ); + g_print( "\tNumEntry = %d\n", Choice); + } + + gtk_entry_set_text( GTK_ENTRY(GLADE_GET_OBJECT("entry_tag_genre_file")), FilePopupGenre.name ); + // cd_expander_set_genre( CdPopupGenre.num, CdPopupGenre.name ); + + FileTags_changed_all_tags( 0 ); // #define TAG_GENRE 0 + + FilePopupGenre.BoolFromPopup = FALSE; +} +void on_menu_popup_txt_file_activate( GtkMenuItem *menuitem, gpointer user_data ) +{ + gchar *Ptr = (gchar *)user_data; + + if( NULL != FilePopupGenre.name ) { + g_free( FilePopupGenre.name ); + FilePopupGenre.name = NULL; + } + FilePopupGenre.name = g_strdup( Ptr ); +} +void popup_menu_file( void ) +{ + GtkWidget *Menu; + GtkWidget *RemoveImage; + gint Choice; + + Menu = gtk_menu_new( ); + // gtk_widget_set_extension_events( Menu, GDK_EXTENSION_EVENTS_ALL ); + + for( Choice = 0; -1 != StructTagsFileMp3[ Choice ].num; Choice ++ ) { + + // StructTagsFileMp3[ i ].name + // StructTagsFileMp3[ i ].num + + // ********* gtk_combo_box_set_wrap_width (GTK_COMBO_BOX (widget), 4); + RemoveImage = gtk_menu_item_new_with_mnemonic( StructTagsFileMp3[ Choice ].name ); + + gtk_widget_show( RemoveImage ); + gtk_container_add( GTK_CONTAINER( Menu), RemoveImage ); + + g_signal_connect(( gpointer) RemoveImage, "activate", G_CALLBACK(on_menu_popup_txt_file_activate), (gpointer)StructTagsFileMp3[ Choice ].name ); + g_signal_connect(( gpointer) RemoveImage, "activate", G_CALLBACK(on_menu_popup_num_file_activate), GINT_TO_POINTER(StructTagsFileMp3[ Choice ].num)); + + GLADE_HOOKUP_OBJECT( Menu, RemoveImage, "RemoveImage" ); + } + GLADE_HOOKUP_OBJECT_NO_REF( Menu, Menu, "Menu" ); + + gtk_menu_popup( GTK_MENU( Menu), NULL, NULL, NULL, NULL, 3, 0 ); +} @@ -1033,10 +1108,10 @@ " 32", " 40", " 48", " 56", " 64", " 80", " 96", "112", "128", "160", "192", "224", "256", "320", "preset insane", // VBR // 29 .. 43 - "preset medium", "preset standard", "preset extreme", "preset fast standard", "preset fast extreme", gettext_noop("V0 [ meilleure qualite ]"), "V1", "V2", "V3", gettext_noop("V4 [ defaut ]"), "V5", "V6", "V7", "V8", gettext_noop("V9 [ moins bonne qualite ]"), + "preset medium", "preset standard", "preset extreme", "preset fast standard", "preset fast extreme", gettext_noop("V0 [ best quality ]"), "V1", "V2", "V3", gettext_noop("V4 [ default ]"), "V5", "V6", "V7", "V8", gettext_noop("V9 [ Lower quality ]"), // VBR-NEW // 44 .. 59 - "NONE", "preset medium", "preset standard", "preset extreme", "preset fast standard", "preset fast extreme", "V0", "V1", "V2", "V3", gettext_noop("V4 [ defaut ]"), "V5", "V6", "V7", "V8", "V9", + "NONE", "preset medium", "preset standard", "preset extreme", "preset fast standard", "preset fast extreme", "V0", "V1", "V2", "V3", gettext_noop("V4 [ default ]"), "V5", "V6", "V7", "V8", "V9", // MODE // 60 .. 65 "Default", "Stereo", "Join Stereo", "Forced Join Stereo", "Duo Channels", "Mono" @@ -1085,7 +1160,7 @@ Detail_VarOptionsFileOggMp3 = detail; Menu = gtk_menu_new( ); - gtk_widget_set_extension_events( Menu, GDK_EXTENSION_EVENTS_ALL ); + // gtk_widget_set_extension_events( Menu, GDK_EXTENSION_EVENTS_ALL ); // ABR Type = gtk_menu_item_new_with_mnemonic( "Abr" ); @@ -1216,11 +1291,11 @@ gchar *VarOptionsFileOgg[] = { // 0 .. 22 " 45 kbit/s", " 64 kbit/s", " 80 kbit/s", " 96 kbit/s", "112 kbit/s", "128 kbit/s", "160 kbit/", "192 kbit/s", "224 kbit/s", "256 kbit/s", "320 kbit/s", - gettext_noop("Qualite -1 [ Moins bonne qualite ]"), gettext_noop("Qualite 0"), gettext_noop("Qualite 1"), gettext_noop("Qualite 2"), - gettext_noop("Qualite 3 [ Defaut ]"), gettext_noop("Qualite 4"), gettext_noop("Qualite 5"), gettext_noop("Qualite 6"), gettext_noop("Qualite 7"), - gettext_noop("Qualite 8"), gettext_noop("Qualite 9"), gettext_noop("Qualite 10 [ Meilleure qualite ]"), + gettext_noop("Quality -1 [ Lower quality ]"), gettext_noop("Quality 0"), gettext_noop("Quality 1"), gettext_noop("Quality 2"), + gettext_noop("Quality 3 [ Defaut ]"), gettext_noop("Quality 4"), gettext_noop("Quality 5"), gettext_noop("Quality 6"), gettext_noop("Quality 7"), + gettext_noop("Quality 8"), gettext_noop("Quality 9"), gettext_noop("Quality 10 [ Best Quality ]"), // 23 .. 24 - gettext_noop("Oui"), gettext_noop("Non"), + gettext_noop("Yes"), gettext_noop("No"), // 25 .. 26 "Mono force", "Stereo" }; @@ -1277,7 +1352,7 @@ Detail_VarOptionsFileOggMp3 = detail; Menu = gtk_menu_new( ); - gtk_widget_set_extension_events( Menu, GDK_EXTENSION_EVENTS_ALL ); + // gtk_widget_set_extension_events( Menu, GDK_EXTENSION_EVENTS_ALL ); // DEBIT Debit = gtk_menu_item_new_with_mnemonic( "Debit" ); diff -Nru xcfa-4.3.8/src/popup.h xcfa-5.0.1/src/popup.h --- xcfa-4.3.8/src/popup.h 2013-03-21 10:55:27.000000000 +0000 +++ xcfa-5.0.1/src/popup.h 2015-01-28 15:38:44.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : popup.h * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License @@ -49,16 +49,27 @@ void popup_normalise_cd (void); void popup_normalise_dvd (void); + + typedef struct { gboolean BoolFromPopup; gint num; gchar *name; } CD_POPUP_GENRE; extern CD_POPUP_GENRE CdPopupGenre ; - void popup_menu_cd( void ); +typedef struct { + gboolean BoolFromPopup; + gint num; + gchar *name; +} FILE_POPUP_GENRE; +extern FILE_POPUP_GENRE FilePopupGenre ; +void popup_menu_file( void ); + + + void popup_file_mp3_type( DETAIL *detail, gint p_debit, gint p_mode ); void popup_file_ogg_type( DETAIL *detail, gint p_debit, gint p_managed, gint p_downmix ); gchar *popup_get_param_ogg( gint p_debit, gint p_managed, gint p_downmix ); diff -Nru xcfa-4.3.8/src/prg_init.c xcfa-5.0.1/src/prg_init.c --- xcfa-4.3.8/src/prg_init.c 2013-06-30 17:10:03.000000000 +0000 +++ xcfa-5.0.1/src/prg_init.c 2015-02-05 19:52:52.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : prg_init.c * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License @@ -354,37 +354,37 @@ if (libutils_find_file ("apt-get") == TRUE || libutils_find_file ("aptitude") == TRUE) { if (widget != NULL) { - New_Str = g_strdup_printf (_(" ... les paquets: deb ")); + New_Str = g_strdup_printf (_(" ... Packets: deb ")); } var_options.Type_Package = _DEBIAN_; } else if (libutils_find_file ("slackpkg") == TRUE || libutils_find_file ("installpkg") == TRUE) { if (widget != NULL) { - New_Str = g_strdup_printf (_(" ... les paquets: tgz ")); + New_Str = g_strdup_printf (_(" ... Packets: tgz ")); } var_options.Type_Package = _TGZ_; } else if (libutils_find_file ("pacman-g2") == TRUE) { if (widget != NULL) { - New_Str = g_strdup_printf (_(" ... les paquets: fpm ")); + New_Str = g_strdup_printf (_(" ... Packets: fpm ")); } var_options.Type_Package = _FPM_; } else if (libutils_find_file ("rpm") == TRUE || libutils_find_file ("urpmi") == TRUE || libutils_find_file ("zypper") == TRUE || libutils_find_file ("yum") == TRUE) { if (widget != NULL) { - New_Str = g_strdup_printf (_(" ... les paquets: rpm ")); + New_Str = g_strdup_printf (_(" ... Packets: rpm ")); } var_options.Type_Package = _RPM_; } else if (libutils_find_file ("yaourt") == TRUE || libutils_find_file ("pacman") == TRUE) { if (widget != NULL) { - New_Str = g_strdup_printf (_(" ... les paquets: pkg.tar.xz ")); + New_Str = g_strdup_printf (_(" ... Packets: pkg.tar.xz ")); } var_options.Type_Package = _ARCHLINUX_; } else { if (widget != NULL) { - New_Str = g_strdup_printf (_(" ... les paquets: ? ")); + New_Str = g_strdup_printf (_(" ... Packets: ? ")); } var_options.Type_Package = _PACKAGE_NOT_FOUND_; } @@ -606,7 +606,7 @@ // PRGEXT_NAME renderer = gtk_cell_renderer_text_new (); g_object_set (renderer, "xalign", 0.0, NULL); - column = gtk_tree_view_column_new_with_attributes (_("Nom"), + column = gtk_tree_view_column_new_with_attributes (_("Name"), renderer, "markup", PRGEXT_NAME, NULL); @@ -634,7 +634,7 @@ renderer = gtk_cell_renderer_text_new (); g_object_set (renderer, "xalign", 0.0, NULL); column = gtk_tree_view_column_new_with_attributes ( - _("Paquet"), + _("Packets"), renderer, "markup", PRGEXT_PAQUAGE, NULL); @@ -681,7 +681,7 @@ ); var_prgextern.Adr_Tree_Model = model = GTK_TREE_MODEL (store); treeview = gtk_tree_view_new_with_model (model); - gtk_tree_view_set_rules_hint (GTK_TREE_VIEW (treeview), TRUE); + // gtk_tree_view_set_rules_hint (GTK_TREE_VIEW (treeview), TRUE); g_object_unref (model); gtk_container_add (GTK_CONTAINER (widget), treeview); prginit_add_columns (GTK_TREE_VIEW (treeview)); diff -Nru xcfa-4.3.8/src/prg_init.h xcfa-5.0.1/src/prg_init.h --- xcfa-4.3.8/src/prg_init.h 2013-06-30 17:12:51.000000000 +0000 +++ xcfa-5.0.1/src/prg_init.h 2015-01-21 22:10:02.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : prg_init.h * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License @@ -34,78 +34,78 @@ GtkListStore *Adr_List_Store; // GtkTreeModel *Adr_Tree_Model; // GtkWidget *Adr_scroll; // - GtkTreeSelection *Adr_Line_Selected; // - gboolean Bool_Goto_Page_Options; // + GtkTreeSelection *Adr_Line_Selected; // + gboolean Bool_Goto_Page_Options; // GdkPixbuf *Pixbuf_Ok; // GdkPixbuf *Pixbuf_Not_Ok; // } VAR_PRGEXTERN; typedef enum { - NMR_a52dec = 0, // - NMR_aacplusenc, // - NMR_cdparanoia, // - NMR_cd_discid, // - NMR_checkmp3, // - NMR_faac, // - NMR_faad, // - NMR_flac, // - NMR_icedax, // - NMR_lame, // - NMR_lsdvd, // - NMR_mac, // - NMR_musepack_tools_mppdec, // - NMR_musepack_tools_mppenc, // - NMR_mplayer, // - NMR_mp3gain, // - NMR_normalize, // - NMR_libnotify_bin, // - NMR_shorten, // - NMR_shntool, // - NMR_sox, // - NMR_vorbis_tools_oggenc, // - NMR_vorbisgain, // - NMR_wavpack, // - NMR_MAX_TABLEAU // + NMR_a52dec = 0, // + NMR_aacplusenc, // + NMR_cdparanoia, // + NMR_cd_discid, // + NMR_checkmp3, // + NMR_faac, // + NMR_faad, // + NMR_flac, // + NMR_icedax, // + NMR_lame, // + NMR_lsdvd, // + NMR_mac, // + NMR_musepack_tools_mppdec, // + NMR_musepack_tools_mppenc, // + NMR_mplayer, // + NMR_mp3gain, // + NMR_normalize, // + NMR_libnotify_bin, // + NMR_shorten, // + NMR_shntool, // + NMR_sox, // + NMR_vorbis_tools_oggenc, // + NMR_vorbisgain, // + NMR_wavpack, // + NMR_MAX_TABLEAU // } TYPE_PROGINIT; typedef struct { - gchar *PackageDebian64; // PACKAGEDEBIAN_64 - gchar *PackageDebian32; // PACKAGEDEBIAN_32 - gchar *Name1; // NAME1 - gchar *Name2; // NAME2 - gchar *Name3; // NAME3 - gboolean *BoolFound; // FOUND - gchar *PtrName; // NAME TREE-VIEW : pointeur sur Name1 | Name2 | Name3 - GdkPixbuf *Pixbuf; // PIXBUF TREE-VIEW - gchar *Paquage; // PAQUAGE - gchar *Description; // DESCRIPTION TREE-VIEW + gchar *PackageDebian64; // PACKAGEDEBIAN_64 + gchar *PackageDebian32; // PACKAGEDEBIAN_32 + gchar *Name1; // NAME1 + gchar *Name2; // NAME2 + gchar *Name3; // NAME3 + gboolean *BoolFound; // FOUND + gchar *PtrName; // NAME TREE-VIEW : pointeur sur Name1 | Name2 | Name3 + GdkPixbuf *Pixbuf; // PIXBUF TREE-VIEW + gchar *Paquage; // PAQUAGE + gchar *Description; // DESCRIPTION TREE-VIEW } TABLEAU_PRG_EXTERN; typedef struct { - gboolean bool_a52dec; // - gboolean bool_notify_send; // - gboolean bool_ape; // - gboolean bool_mpc123_mppdec; // - gboolean bool_mppenc; // - gboolean bool_cdparanoia; // - gboolean bool_cdda2wav; // - gboolean bool_lame; // - gboolean bool_oggenc; // - gboolean bool_sox; // - gboolean bool_normalize; // - gboolean bool_checkmp3; // - gboolean bool_faad; // - gboolean bool_faac; // - gboolean bool_mplayer; // - gboolean bool_shorten; // - gboolean bool_lsdvd; // - gboolean bool_vorbisgain; // - gboolean bool_flac; // - gboolean bool_mp3gain; // - gboolean bool_wavpack; // - gboolean bool_shntool; // - gboolean bool_aacplusenc; // - gboolean bool_cd_discid; // + gboolean bool_a52dec; // + gboolean bool_notify_send; // + gboolean bool_ape; // + gboolean bool_mpc123_mppdec; // + gboolean bool_mppenc; // + gboolean bool_cdparanoia; // + gboolean bool_cdda2wav; // + gboolean bool_lame; // + gboolean bool_oggenc; // + gboolean bool_sox; // + gboolean bool_normalize; // + gboolean bool_checkmp3; // + gboolean bool_faad; // + gboolean bool_faac; // + gboolean bool_mplayer; // + gboolean bool_shorten; // + gboolean bool_lsdvd; // + gboolean bool_vorbisgain; // + gboolean bool_flac; // + gboolean bool_mp3gain; // + gboolean bool_wavpack; // + gboolean bool_shntool; // + gboolean bool_aacplusenc; // + gboolean bool_cd_discid; // } PRGINIT; diff -Nru xcfa-4.3.8/src/proc.c xcfa-5.0.1/src/proc.c --- xcfa-4.3.8/src/proc.c 2013-03-21 10:55:49.000000000 +0000 +++ xcfa-5.0.1/src/proc.c 2015-01-30 16:01:16.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : proc.c * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License diff -Nru xcfa-4.3.8/src/process.c xcfa-5.0.1/src/process.c --- xcfa-4.3.8/src/process.c 2013-03-21 10:55:49.000000000 +0000 +++ xcfa-5.0.1/src/process.c 2015-01-30 16:01:16.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : process.c * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License @@ -120,7 +120,7 @@ g_unlink (XCFA_FILE_LOAD); // FIN DU TIMEOUT - gtk_timeout_remove (VarProcess.handler_timeout); + g_source_remove (VarProcess.handler_timeout); // bacon_message_connection_free( connection ); @@ -136,7 +136,7 @@ gtk_notebook_set_current_page (GTK_NOTEBOOK (GLADE_GET_OBJECT("notebook_general")), NOTEBOOK_FICHIERS); gtk_notebook_set_current_page (GTK_NOTEBOOK (GLADE_GET_OBJECT("notebook_in_file")), NOTEBOOK_FICHIERS_CONVERSION); g_usleep (20); - VarProcess.handler_timeout = gtk_timeout_add (400, process_level_timeout_do, 0); + VarProcess.handler_timeout = g_timeout_add (400, process_level_timeout_do, 0); } else { bacon_message_connection_free( connection ); diff -Nru xcfa-4.3.8/src/process.h xcfa-5.0.1/src/process.h --- xcfa-4.3.8/src/process.h 2013-03-21 10:55:27.000000000 +0000 +++ xcfa-5.0.1/src/process.h 2015-01-21 16:28:42.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : process.h * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License diff -Nru xcfa-4.3.8/src/proc.h xcfa-5.0.1/src/proc.h --- xcfa-4.3.8/src/proc.h 2013-03-21 10:55:27.000000000 +0000 +++ xcfa-5.0.1/src/proc.h 2015-01-21 16:28:42.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : proc.h * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License diff -Nru xcfa-4.3.8/src/replaygain.c xcfa-5.0.1/src/replaygain.c --- xcfa-4.3.8/src/replaygain.c 2013-06-27 14:42:07.000000000 +0000 +++ xcfa-5.0.1/src/replaygain.c 2015-01-30 16:42:33.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : replaygain.c * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License @@ -294,7 +294,7 @@ rpg.bool_etat = TRUE; PtrTabArgs [ pos++ ] = NULL; conv_to_convert( PtrTabArgs, FALSE, REPLAYGAIN, rpg.MessUser ); - PtrTabArgs = filelc_RevoveTab( PtrTabArgs ); + PtrTabArgs = filelc_RemoveTab( PtrTabArgs ); rpg.bool_compteur = FALSE; @@ -368,7 +368,7 @@ } else if( rpg.type_replaygain == _APPLY_REPLAYGAIN_ ) { fileaction_set_end (TYPE_REPLAYGAINAPPLY ); } - gtk_timeout_remove (rpg.handler_timeout ); + g_source_remove (rpg.handler_timeout ); } return (TRUE ); @@ -478,9 +478,14 @@ } conv_reset_struct( WindScan_close_request ); - WindScan_open( "ReplayGain", WINDSCAN_PULSE ); + // WindScan_open( "ReplayGain", WINDSCAN_PULSE ); + wind_scan_init( + WindMain, + "ReplayGain", + WINDSCAN_PULSE + ); WindScan_set_label( "ReplayGain ..." ); - rpg.handler_timeout = gtk_timeout_add( 100, replaygain_timeout, 0 ); + rpg.handler_timeout = g_timeout_add( 100, replaygain_timeout, 0 ); pthread_create( &rpg.nmr_tid, NULL ,(void *)replaygain_thread, (void *)NULL ); } diff -Nru xcfa-4.3.8/src/replaygain.h xcfa-5.0.1/src/replaygain.h --- xcfa-4.3.8/src/replaygain.h 2013-03-21 10:55:27.000000000 +0000 +++ xcfa-5.0.1/src/replaygain.h 2015-01-21 16:28:42.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : replaygain.h * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License diff -Nru xcfa-4.3.8/src/scan.c xcfa-5.0.1/src/scan.c --- xcfa-4.3.8/src/scan.c 2013-03-21 10:55:49.000000000 +0000 +++ xcfa-5.0.1/src/scan.c 2015-02-05 19:54:45.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : scan_cd.c * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License @@ -254,18 +254,18 @@ /* test is 'dvd+rw-tools package' present ? */ if (libutils_find_file ("dvd+rw-mediainfo") == FALSE) { - wininfo_create ( + wind_info_init ( WindMain, - _("PACKAGE dvd+rw-tools ABSENT"), - _("Le package 'dvd+rw-tools' est absent"), + _("PACKAGE dvd+rw-tools is missing"), + _("The package 'imagemagick' is missing"), "\n", - _("de votre systeme !"), + _("on your system !"), "\n\n", - _("Veuillez l'installer car j'ai besoin de"), + _("Please install it and resume"), "\n", - _("'dvd+rw-mediainfo' pour identifier le(s)"), + _("'Dvd + rw-mediainfo' to identify the"), "\n", - _("lecteur(s) de cd / dvd."), + _("reader of cd / dvd."), ""); return (NULL); } diff -Nru xcfa-4.3.8/src/scan.h xcfa-5.0.1/src/scan.h --- xcfa-4.3.8/src/scan.h 2013-03-21 10:55:27.000000000 +0000 +++ xcfa-5.0.1/src/scan.h 2015-01-21 22:10:44.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : scan.h * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License @@ -40,8 +40,8 @@ } MEDIA; typedef enum { - _CD_ = 0, // - _DVD_ // + _CD_ = 0, // + _DVD_ // } TYPE_READER; void scan_remove_glist_media (void); diff -Nru xcfa-4.3.8/src/split.c xcfa-5.0.1/src/split.c --- xcfa-4.3.8/src/split.c 2013-06-30 12:36:41.000000000 +0000 +++ xcfa-5.0.1/src/split.c 2015-02-05 21:11:00.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : split.c * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License @@ -62,9 +62,9 @@ -extern gint n_drag_types; /* Drag And Drop */ -VAR_SPLIT VarSplit; -ADJUST Adjust; +extern gint n_drag_types; // Drag And Drop +VAR_SPLIT VarSplit; +ADJUST Adjust; void SetAjust (void); @@ -199,21 +199,19 @@ gdouble Value; gint Begin; gint LenScroll; + GtkAllocation allocation; if (VarSplit.NbrSelecteurs == 0) return; - SplitSelector_get_pos (); - - Value = (gint)VarSplit.AdjScroll->value; - - LenScroll = VARSPLIT_SPECTRE_WITH -1; + Value = gtk_adjustment_get_value( VarSplit.AdjScroll ); + gtk_widget_get_allocation( VarSplit.AdrWidgetSpectre, &allocation ); + LenScroll = allocation.width -1; Begin = SplitSelector_get_pos_play () - (gint)Value; while( Begin > 100 && Value + LenScroll < SplitSpectre_get_with() ) { Begin --; Value ++; } - if (Value < 0.0) { Value = 0.0; } @@ -225,28 +223,48 @@ // void split_redraw_image (void) { + /** + GtkAllocation allocation; + if (NULL == VarSplit.AdrWidgetSpectre) return; - // PRINT_FUNC_LF(); + gtk_widget_get_allocation( VarSplit.AdrWidgetSpectre, &allocation ); gtk_widget_queue_draw_area ( VarSplit.AdrWidgetSpectre, - VarSplit.AdrWidgetSpectre->allocation.x, - VarSplit.AdrWidgetSpectre->allocation.y, - VarSplit.AdrWidgetSpectre->allocation.width, - VarSplit.AdrWidgetSpectre->allocation.height + allocation.x, + allocation.y, + allocation.width, + allocation.height ); + */ + if (NULL == VarSplit.AdrWidgetSpectre) return; + gtk_widget_queue_draw( VarSplit.AdrWidgetSpectre ); } // // -static void split_drag_data_received_file (GtkWidget *widget, - GdkDragContext *drag_context, - gint x, - gint y, - GtkSelectionData *data, - guint info, - guint time) -{ - if (gtk_drag_get_source_widget(drag_context) != widget) { - dragndrop_list_drag_data (widget, (gchar *)data->data); +static void split_drag_data_received_file( + GtkWidget *widget, + GdkDragContext *context, + gint x, + gint y, + GtkSelectionData *data, + guint info, + guint time, + gpointer user_data) +{ + /** + if( TRUE == VarSplit.BoolPlay ) { + wind_info_init ( + WindMain, + _("Veuillez arreter la lecture du fichier"), + "\n", + _("avant d'impôrter un fichier."), + ""); + return; + } + */ + if (gtk_drag_get_source_widget(context) != widget) { + // dragndrop_list_drag_data (widget, (gchar *)data->data); + dragndrop_list_drag_data( widget, (gchar*)gtk_selection_data_get_data( data )); } } // @@ -276,14 +294,14 @@ g_free (Str); Str = NULL; if (VarSplit.NbrSelecteurs > 1) { - StatusBar_set_mess( NOTEBOOK_SPLIT, _STATUSBAR_SIMPLE_, _("Menu: Click droit / Ajout plage: Click bouton centre / Zoom: Ctrl+Scroll") ); + StatusBar_set_mess( NOTEBOOK_SPLIT, _STATUSBAR_SIMPLE_, _("Menu: right click / Adding track: Click the center button / Zoom: Ctrl+Scroll") ); } else { - StatusBar_set_mess( NOTEBOOK_SPLIT, _STATUSBAR_SIMPLE_, _("Ajout plage: Click bouton centre / Zoom: Ctrl+Scroll") ); + StatusBar_set_mess( NOTEBOOK_SPLIT, _STATUSBAR_SIMPLE_, _("Adding track: Click the center button / Zoom: Ctrl+Scroll") ); } } else { - StatusBar_set_mess( NOTEBOOK_SPLIT, _STATUSBAR_SIMPLE_, _("Pret pour l'import d'un fichier CUE, WAV, FLAC, OGG, MP3, APE, WMA") ); + StatusBar_set_mess( NOTEBOOK_SPLIT, _STATUSBAR_SIMPLE_, _("Ready for imports and a CUE file, WAV, FLAC, OGG, MP3, APE, WMA") ); } } // @@ -292,6 +310,8 @@ { VarSplit.BoolInThread = TRUE; + SplitSpectre_remove(); + VarSplit.Tags = (INFO_WAV *)tagswav_get_info (VarSplit.PathNameFile); SplitSpectre_read_file_spectre (VarSplit.PathNameFile); VarSplit.BoolInThread = FALSE; @@ -305,10 +325,10 @@ if (FALSE == VarSplit.BoolInThread) { gint IndicePoints = 0; - gtk_timeout_remove (VarSplit.HandlerTimeoutDo); + g_source_remove (VarSplit.HandlerTimeoutDo); - VarSplit.Tags = tagswav_remove_info (VarSplit.Tags); - VarSplit.Tags = (INFO_WAV *)tagswav_get_info (VarSplit.PathNameFile); + // VarSplit.Tags = tagswav_remove_info (VarSplit.Tags); + // VarSplit.Tags = (INFO_WAV *)tagswav_get_info (VarSplit.PathNameFile); // split_set_name_file (); @@ -345,25 +365,27 @@ // // IMPORT D'UN FICHIER // -void split_file_load (gchar *p_PathNameFile) +void split_file_load( gchar *p_PathNameFile ) { gchar *PathNameFile = NULL; TYPE_FILE_IS TypeFileIs = GetInfo_file_is (p_PathNameFile); +printf("\n---------------------------- split_file_load( %s\n", p_PathNameFile ); + if (0 == strcmp (p_PathNameFile, SPLIT_FILE_TMP_WAV)) { - wininfo_create ( + wind_info_init ( WindMain, - _("Ce fichier appartient a XCFA"), - _("Selectionnez un autre fichier."), + _("This file belongs XCFA"), + _("Select another file."), ""); return; } if (libutils_get_size_file (p_PathNameFile) <= 0) { - wininfo_create ( + wind_info_init ( WindMain, - _("Fichier vide"), - _("Le fichier ne contient aucune donnee !!!"), + _("Empty file"), + _("The file contains no data !!!"), ""); return; } @@ -380,10 +402,10 @@ return; } if (0 == strcmp (PathNameFile, SPLIT_FILE_TMP_WAV)) { - wininfo_create ( + wind_info_init ( WindMain, - _("Ce fichier appartient a XCFA"), - _("Selectionnez un autre fichier."), + _("This file belongs XCFA"), + _("Select another file."), ""); g_free (PathNameFile); PathNameFile = NULL; @@ -406,14 +428,14 @@ if (FALSE == PrgInit.bool_sox || FALSE == PrgInit.bool_mplayer) { - wininfo_create ( + wind_info_init ( WindMain, - _("Sox et Mplayer absents"), - _("Sox et Mplayer sont absents de votre"), + _("Sox and Mplayer not found"), + _("Sox et Mplayer are not found"), "\n", - _("configuration."), + _("in your configuration."), "\n\n", - _("Veuillez les installer pour pouvoir continuer."), + _("Please install it and resume"), ""); return; @@ -428,12 +450,14 @@ SplitConv_to (PathNameFile); } -void split_file_load_continue (gchar *p_PathNameFile) +void split_file_load_continue( gchar *p_PathNameFile ) { pthread_t nmr_tid; gchar *PathNameFile = p_PathNameFile; TYPE_FILE_IS TypeFileIs = libutils_test_file_exist (p_PathNameFile); +printf("---------------------------- BEGIN split_file_load_continue( %s\n", p_PathNameFile ); + if (TRUE == libutils_test_file_exist (PathNameFile) && (FILE_IS_WAV == TypeFileIs || FILE_IS_FLAC == TypeFileIs || FILE_IS_MP3 == TypeFileIs || FILE_IS_OGG == TypeFileIs || FILE_IS_APE == TypeFileIs)) { @@ -458,17 +482,18 @@ VarSplit.BoolInThread = TRUE; PRINT("DEBUT TIMEOUT SPLIT"); PRINT("DEBUT THREAD SPLIT"); - VarSplit.HandlerTimeoutDo = gtk_timeout_add (100, VarSplit_timeout, 0); + VarSplit.HandlerTimeoutDo = g_timeout_add (100, VarSplit_timeout, 0); pthread_create (&nmr_tid, NULL ,(void *)VarSplit_thread, (void *)NULL); } else { - wininfo_create ( + wind_info_init ( WindMain, - _("Erreur de choix de fichier"), - _("Veuillez selectionner un fichier de type WAV FLAC MP3 OGG APE"), + _("Error file select"), + _("Please select a file type of MP3 WAV OGG FLAC APE"), ""); } split_set_flag_buttons (); +printf("---------------------------- END split_file_load_continue( %s\n", p_PathNameFile ); } @@ -495,15 +520,15 @@ FILE_IS_APE == TypeFileIs || FILE_IS_WMA == TypeFileIs || TRUE == FileIs_g_str_has_suffix (path, ".CUE")) { - split_file_load (path); + split_file_load( path ); BoolTypeFileIsOk = TRUE; } if (FALSE == BoolTypeFileIsOk) { - wininfo_create ( + wind_info_init ( WindMain, - _("Mauvais type de fichier"), - _("Les types de fichiers acceptes\nsont: WAV FLAC MP3 OGG APE WMA CUE"), + _("Wrong type of file"), + _("File types accepted\nsare: WAV FLAC MP3 OGG APE WMA CUE"), ""); } } @@ -511,7 +536,7 @@ // void on_button_importer_split_clicked (GtkButton *button, gpointer user_data) { - if (GDK_space != keys.keyval) + if (GDK_KEY_space != keys.keyval) fileselect_create (_PATH_LOAD_SPLIT_FILE_, Config.PathLoadSplit, split_maj_file_load); } // INIT WIDGET DE LA DESTINAION DES DECOUPES @@ -537,7 +562,7 @@ // void on_button_destination_split_clicked (GtkButton *button, gpointer user_data) { - if (GDK_space != keys.keyval) { + if (GDK_KEY_space != keys.keyval) { fileselect_create (_PATH_CHOICE_DESTINATION_, Config.PathDestinationSplit, split_maj_destination); split_set_flag_buttons (); } @@ -551,8 +576,6 @@ TYPE_FILE_IS TypeFileIs = FILE_IS_NONE; gboolean BoolTypeFileIsOk = FALSE; - // PRINT_FUNC_LF(); - while (NULL != gs_List) { if (NULL != (Ptr = (gchar *)gs_List->data)) { if( TRUE == OptionsCommandLine.BoolVerboseMode ) @@ -565,7 +588,7 @@ FILE_IS_APE == TypeFileIs || FILE_IS_WMA == TypeFileIs || TRUE == FileIs_g_str_has_suffix (Ptr, ".CUE")) { - split_file_load (Ptr); + split_file_load( Ptr ); BoolTypeFileIsOk = TRUE; break; } @@ -574,10 +597,10 @@ } if (FALSE == BoolTypeFileIsOk) { - wininfo_create ( + wind_info_init ( WindMain, - _("Mauvais type de fichier"), - _("Les types de fichiers acceptes\nsont: WAV FLAC MP3 OGG APE WMA CUE"), + _("Wrong type of file"), + _("File types accepted\nsare: WAV FLAC MP3 OGG APE WMA CUE"), ""); } @@ -588,24 +611,27 @@ // void split_set_value (gdouble p_value) { + GtkAllocation allocation; + gdouble Value; + + Value = gtk_adjustment_get_value( VarSplit.AdjScroll ); + gtk_widget_get_allocation( VarSplit.AdrWidgetSpectre, &allocation ); + VarSplit.PercentActivePlay = p_value; if (VarSplit.PercentActivePlay >= 100.0) VarSplit.PercentActivePlay = 99.99; - if( SplitSelector_get_pos_play () > VARSPLIT_SPECTRE_WITH + (gint)VarSplit.AdjScroll->value && - (gint)VarSplit.AdjScroll->value < SplitSpectre_get_with() ) { + if( SplitSelector_get_pos_play () > VARSPLIT_SPECTRE_WITH + (gint)Value && + (gint)Value < SplitSpectre_get_with() ) { SplitSpectre_scroll_droite_play (); } split_set_time (); gtk_widget_queue_draw( VarSplit.AdrWidgetSpectreTop ); - SplitSpectre_draw_lines_play(); - // gtk_widget_queue_draw( VarSplit.AdrWidgetSpectre ); + gtk_widget_queue_draw( VarSplit.AdrWidgetSpectre ); } // // void split_end_play (void) { - PRINT_FUNC_LF(); - split_set_stop (); gtk_widget_show (GTK_WIDGET (GLADE_GET_OBJECT("button_play_split"))); @@ -634,8 +660,6 @@ // void on_button_play_split_clicked (GtkButton *button, gpointer user_data) { - // PRINT_FUNC_LF(); - VarSplit.BoolPlay = TRUE; gtk_widget_show (GTK_WIDGET (GLADE_GET_OBJECT("button_pause_split"))); @@ -659,8 +683,6 @@ // void on_button_pause_split_clicked (GtkButton *button, gpointer user_data) { - // PRINT_FUNC_LF(); - VarSplit.BoolPlay = FALSE; AlsaPlay_stop (); @@ -685,15 +707,10 @@ // void on_button_play_begin_split_clicked (GtkButton *button, gpointer user_data) { - // gdouble Percent; - - // PRINT_FUNC_LF(); - gdouble PercentBegin = SplitSelector_get_percent_begin (VarSplit.SelecteurActif); gdouble PercentEnd = SplitSelector_get_percent_begin (VarSplit.SelecteurActif) + SplitSelector_get_percent_for_x_secondes (5); VarSplit.BoolPlay = TRUE; - // Percent = SplitSelector_get_percent_begin (VarSplit.SelecteurActif); SplitSelector_get_percent_begin (VarSplit.SelecteurActif); AlsaPlay_song ( VarSplit.PathNameFile, @@ -702,8 +719,6 @@ split_set_value, split_end_play ); - - // gtk_widget_set_sensitive (GTK_WIDGET (GLADE_GET_OBJECT("frame_choice_reader")), FALSE); gtk_widget_set_sensitive (GTK_WIDGET (GLADE_GET_OBJECT("button_play_begin_split")), FALSE); gtk_widget_set_sensitive (GTK_WIDGET (GLADE_GET_OBJECT("button_play_split")), FALSE); gtk_widget_set_sensitive (GTK_WIDGET (GLADE_GET_OBJECT("button_play_end_split")), FALSE); @@ -716,15 +731,10 @@ // void on_button_play_end_split_clicked (GtkButton *button, gpointer user_data) { - // gdouble Percent; - - // PRINT_FUNC_LF(); - gdouble PercentBegin = SplitSelector_get_percent_end (VarSplit.SelecteurActif) - SplitSelector_get_percent_for_x_secondes (5); gdouble PercentEnd = SplitSelector_get_percent_end (VarSplit.SelecteurActif); VarSplit.BoolPlay = TRUE; - // Percent = SplitSelector_get_percent_begin (VarSplit.SelecteurActif); SplitSelector_get_percent_begin (VarSplit.SelecteurActif); AlsaPlay_song ( VarSplit.PathNameFile, @@ -733,7 +743,6 @@ split_set_value, split_end_play ); - gtk_widget_set_sensitive (GTK_WIDGET (GLADE_GET_OBJECT("button_play_begin_split")), FALSE); gtk_widget_set_sensitive (GTK_WIDGET (GLADE_GET_OBJECT("button_play_split")), FALSE); gtk_widget_set_sensitive (GTK_WIDGET (GLADE_GET_OBJECT("button_play_end_split")), FALSE); @@ -776,45 +785,58 @@ // void SetAjust (void) { - // PRINT_FUNC_LF(); - VarSplit.AdjScroll->value = Adjust.value; - VarSplit.AdjScroll->lower = Adjust.lower; - VarSplit.AdjScroll->upper = Adjust.upper; - VarSplit.AdjScroll->step_increment = Adjust.step_increment; - VarSplit.AdjScroll->page_increment = Adjust.page_increment; - VarSplit.AdjScroll->page_size = Adjust.page_size; + if( NULL == VarSplit.AdjScroll ) return; + gtk_adjustment_set_value( VarSplit.AdjScroll, Adjust.value ); + gtk_adjustment_set_lower( VarSplit.AdjScroll, Adjust.lower ); + gtk_adjustment_set_upper( VarSplit.AdjScroll, Adjust.upper ); + gtk_adjustment_set_step_increment( VarSplit.AdjScroll, Adjust.step_increment ); + gtk_adjustment_set_page_increment( VarSplit.AdjScroll, Adjust.page_increment ); + gtk_adjustment_set_page_size( VarSplit.AdjScroll, Adjust.page_size ); + gtk_adjustment_value_changed( VarSplit.AdjScroll ); } // // void page_plus_scrolled ( gint p_CursorX ) { - // PRINT_FUNC_LF(); + gdouble Value; + GtkAllocation allocation; + + Value = gtk_adjustment_get_value( VarSplit.AdjScroll ); + gtk_widget_get_allocation( VarSplit.AdrWidgetSpectre, &allocation ); + Adjust.mul += 1; Adjust.with = SplitSpectre_get_with(); Adjust.lower = 0.; Adjust.upper = Adjust.with; Adjust.step_increment = 10; - Adjust.page_size = VarSplit.AdrWidgetSpectre->allocation.width; - Adjust.page_increment = VarSplit.AdrWidgetSpectre->allocation.width; - Adjust.value = VarSplit.AdjScroll->value + p_CursorX; - SetAjust (); + Adjust.page_size = allocation.width; + Adjust.page_increment = allocation.width; + Adjust.value = Value + (gdouble)p_CursorX; + + SetAjust(); + SetAjust(); } // // void rigtht_plus_scrolled (void) { - // PRINT_FUNC_LF(); + gdouble Value; + GtkAllocation allocation; + + Value = gtk_adjustment_get_value( VarSplit.AdjScroll ); + gtk_widget_get_allocation( VarSplit.AdrWidgetSpectre, &allocation ); + // Adjust.mul += 1; Adjust.with = SplitSpectre_get_with(); Adjust.lower = 0.; Adjust.upper = Adjust.with; Adjust.step_increment = 10; - Adjust.page_size = VarSplit.AdrWidgetSpectre->allocation.width; - Adjust.page_increment = VarSplit.AdrWidgetSpectre->allocation.width; - Adjust.value = VarSplit.AdjScroll->value; + Adjust.page_size = allocation.width; + Adjust.page_increment = allocation.width; + Adjust.value = Value; Adjust.value += 10; - while( Adjust.value > Adjust.with - VarSplit.AdrWidgetSpectre->allocation.width ) + while( Adjust.value > Adjust.with - allocation.width ) Adjust.value --; SetAjust (); } @@ -822,39 +844,50 @@ // void page_moins_scrolled ( gint p_CursorX ) { - // PRINT_FUNC_LF(); + gdouble Value; + + Value = gtk_adjustment_get_value( VarSplit.AdjScroll ); + GtkAllocation allocation; + + gtk_widget_get_allocation( VarSplit.AdrWidgetSpectre, &allocation ); + Adjust.mul -= 1; if( Adjust.mul < 1 ) Adjust.mul = 1; Adjust.with = SplitSpectre_get_with(); - if( Adjust.with < VarSplit.AdrWidgetSpectre->allocation.width ) { - Adjust.with = VarSplit.AdrWidgetSpectre->allocation.width; + if( Adjust.with < allocation.width ) { + Adjust.with = allocation.width; Adjust.value = 0; } else { - Adjust.value = VarSplit.AdjScroll->value - p_CursorX; + Adjust.value = Value - p_CursorX; } - while( Adjust.value > Adjust.with - VarSplit.AdrWidgetSpectre->allocation.width ) + while( Adjust.value > Adjust.with - allocation.width ) Adjust.value --; if( Adjust.value < 0. ) Adjust.value = 0.; Adjust.lower = 0.; Adjust.upper = Adjust.with; Adjust.step_increment = 10; - Adjust.page_size = VarSplit.AdrWidgetSpectre->allocation.width; - Adjust.page_increment = VarSplit.AdrWidgetSpectre->allocation.width; + Adjust.page_size = allocation.width; + Adjust.page_increment = allocation.width; SetAjust (); } // // void left_plus_scrolled (void) { - // PRINT_FUNC_LF(); + gdouble Value; + GtkAllocation allocation; + + Value = gtk_adjustment_get_value( VarSplit.AdjScroll ); + gtk_widget_get_allocation( VarSplit.AdrWidgetSpectre, &allocation ); + // Adjust.mul += 1; Adjust.with = SplitSpectre_get_with(); Adjust.lower = 0.; Adjust.upper = Adjust.with; Adjust.step_increment = 10; - Adjust.page_size = VarSplit.AdrWidgetSpectre->allocation.width; - Adjust.page_increment = VarSplit.AdrWidgetSpectre->allocation.width; - Adjust.value = VarSplit.AdjScroll->value; + Adjust.page_size = allocation.width; + Adjust.page_increment = allocation.width; + Adjust.value = Value; Adjust.value -= 10; while( Adjust.value < 0.0 ) Adjust.value = 0.0; @@ -869,10 +902,10 @@ } // // -gboolean on_eventbox_splitspectre_chrono_expose_event (GtkWidget *drawing, GdkEventExpose *e, gpointer data) +gboolean on_eventbox_splitspectre_chrono_draw( GtkWidget *widget, cairo_t *p_cr, gpointer user_data ) { - SplitSpectre_draw_chrono( VarSplit.AdrWidgetSpectreChrono ); - return TRUE; + SplitSpectre_draw_chrono( VarSplit.AdrWidgetSpectreChrono, p_cr ); + return FALSE; } // // @@ -880,9 +913,14 @@ { gint CursorX, CursorY; GdkModifierType state; - - // GET EMPLACEMENT CURSOR MOUSE - gdk_window_get_pointer (((GdkEventButton*)event)->window, &CursorX, &CursorY, &state); + GtkAllocation allocation; + + gtk_widget_get_allocation( VarSplit.AdrWidgetSpectre, &allocation ); + /* Si pas de selection a cet endroit retour */ + GdkDeviceManager *manager = gdk_display_get_device_manager( gdk_display_get_default() ); + GdkDevice *device = gdk_device_manager_get_client_pointer( manager ); + gdk_window_get_device_position( ((GdkEventButton*)event)->window, device, &CursorX, &CursorY, &state ); + // gdk_window_get_pointer (((GdkEventButton*)event)->window, &CursorX, &CursorY, &state); // SI LE CURSEUR N EST PAS DANS LA ZONE ALORS SORTIE if (CursorX < VARSPLIT_CHRONO_X) return FALSE; @@ -903,7 +941,6 @@ // gboolean on_eventbox_splitspectre_top_event (GtkWidget *widget, GdkEvent *event, gpointer user_data) { - // static gint Nbr = 0; gboolean BoolEventTypeScroll = (GDK_SCROLL == event->type) ? TRUE : FALSE; gint EventTypeScrollDirection = ((GdkEventScroll*)event)->direction; gint CursorX, CursorY; @@ -911,16 +948,22 @@ // gboolean bool_click_droit = (((GdkEventButton*)event)->button == 3); // gboolean bool_click_centre = (((GdkEventButton*)event)->button == 2); gboolean bool_click_gauche = (((GdkEventButton*)event)->button == 1); - - // PRINT(""); - - // GET EMPLACEMENT CURSOR MOUSE - gdk_window_get_pointer (((GdkEventButton*)event)->window, &CursorX, &CursorY, &state); + gdouble Value; + Value = gtk_adjustment_get_value( VarSplit.AdjScroll ); + GtkAllocation allocation; + + gtk_widget_get_allocation( VarSplit.AdrWidgetSpectre, &allocation ); + + /* Si pas de selection a cet endroit retour */ + GdkDeviceManager *manager = gdk_display_get_device_manager( gdk_display_get_default() ); + GdkDevice *device = gdk_device_manager_get_client_pointer( manager ); + gdk_window_get_device_position( ((GdkEventButton*)event)->window, device, &CursorX, &CursorY, &state ); + // gdk_window_get_pointer (((GdkEventButton*)event)->window, &CursorX, &CursorY, &state); // UN CLICK BOUTON SOURIS : PRESSED if (TRUE == bool_click_gauche && event->type == GDK_BUTTON_PRESS) { gint Pos; - CursorX += (gint)VarSplit.AdjScroll->value; + CursorX += (gint)Value; for (Pos = 0; Pos < VarSplit.NbrSelecteurs ; Pos ++) { if (CursorX > SplitSelector_get_pos_begin (Pos) && CursorX < SplitSelector_get_pos_end (Pos)) { VarSplit.SelecteurActif = Pos; @@ -955,7 +998,6 @@ if( LenPos < LenWin ) { demi = ( LenWin - LenPos ) / 2; Adjust.value = BeginPos - demi; - } // LA SELECTION EST PLUS GRANDE QUE LA FENETRE else if( LenPos > LenWin ) { @@ -969,7 +1011,6 @@ gtk_widget_queue_draw( VarSplit.AdrWidgetSpectre ); gtk_widget_queue_draw( VarSplit.AdrWidgetSpectreTop ); } - } else { gtk_widget_queue_draw( VarSplit.AdrWidgetSpectreChrono ); @@ -979,20 +1020,40 @@ } // // -gboolean on_eventbox_splitspectre_top_expose_event (GtkWidget *drawing, GdkEventExpose *e, gpointer data) +gboolean on_eventbox_splitspectre_top_draw( GtkWidget *widget, cairo_t *p_cr, gpointer user_data ) { - SplitSpectre_draw_top( VarSplit.AdrWidgetSpectreTop ); - return TRUE; + SplitSpectre_draw_top( VarSplit.AdrWidgetSpectreTop, p_cr ); + return FALSE; +} + +void split_realize( void ) +{ + if( NULL != VarSplit.RangeAdjScroll && NULL != VarSplit.AdrWidgetSpectre ) { + + GtkAllocation allocation; + gtk_widget_get_allocation( VarSplit.AdrWidgetSpectre, &allocation ); + + VarSplit.AdjScroll = gtk_range_get_adjustment( GTK_RANGE(VarSplit.RangeAdjScroll) ); + Adjust.value = gtk_adjustment_get_value( VarSplit.AdjScroll ); + Adjust.lower = gtk_adjustment_get_lower( VarSplit.AdjScroll ); + Adjust.upper = gtk_adjustment_get_upper( VarSplit.AdjScroll ); + Adjust.step_increment = gtk_adjustment_get_step_increment( VarSplit.AdjScroll ); + Adjust.page_size = gtk_adjustment_get_page_size( VarSplit.AdjScroll ); + Adjust.page_increment = gtk_adjustment_get_page_increment( VarSplit.AdjScroll ); + Adjust.with = allocation.width; + Adjust.mul = 1; + } } + // IMAGE // void on_image_split_spectre_realize (GtkWidget *widget, gpointer user_data) { - GtkScrolledWindow *AdrScrolledWindow; - + GtkAllocation allocation; + // INIT COORDONNEES WIDGET VarSplit.AdrWidgetSpectre = widget; - + gtk_widget_get_allocation( VarSplit.AdrWidgetSpectre, &allocation ); // gtk_widget_grab_focus (VarSplit.AdrWidgetSpectre); @@ -1023,44 +1084,35 @@ VarSplit.TypeCursorSpectre = _CURSOR_IS_NONE_; VarSplit.BoolPlay = FALSE; VarSplit.PercentActivePlay = 0.0; - VarSplit.BoolQueueDrawSpectre = FALSE; - VarSplit.BoolQueueDrawChrono = FALSE; - VarSplit.BoolQueueDrawTop = FALSE; VarSplit.BoolBlankWithCue = FALSE; - - // INIT SCROLL - AdrScrolledWindow = GTK_SCROLLED_WINDOW (GLADE_GET_OBJECT("scrolledwindow_splitspectre")); - VarSplit.AdjScroll = gtk_scrolled_window_get_hadjustment (GTK_SCROLLED_WINDOW (AdrScrolledWindow)); - Adjust.mul = 1; - Adjust.with = VarSplit.AdrWidgetSpectre->allocation.width; - Adjust.lower = VarSplit.AdjScroll->lower = 0.0; - Adjust.upper = VarSplit.AdrWidgetSpectre->allocation.width; - Adjust.step_increment = VarSplit.AdjScroll->step_increment = 10.0; - Adjust.page_size = VarSplit.AdrWidgetSpectre->allocation.width; - Adjust.page_increment = VarSplit.AdrWidgetSpectre->allocation.width; - Adjust.value = VarSplit.AdjScroll->value = 0.0; + + split_realize(); SetAjust (); - + gtk_widget_show (GTK_WIDGET (GLADE_GET_OBJECT("button_play_split"))); gtk_widget_hide (GTK_WIDGET (GLADE_GET_OBJECT("button_pause_split"))); split_set_flag_buttons (); split_set_time (); } + + // // gboolean on_eventbox_splitspectre_event (GtkWidget *widget, GdkEvent *event, gpointer user_data) { gboolean BoolEventTypeScroll = (GDK_SCROLL == event->type) ? TRUE : FALSE; - gint EventTypeScrollDirection = ((GdkEventScroll*)event)->direction; + // gint EventTypeScrollDirection = ((GdkEventScroll*)event)->direction; gint CursorX, _CursorX, CursorY; GdkModifierType state; gboolean bool_click_droit = (((GdkEventButton*)event)->button == 3); gboolean bool_click_centre = (((GdkEventButton*)event)->button == 2); gboolean bool_click_gauche = (((GdkEventButton*)event)->button == 1); - + gdouble Value; + gdouble direction_x, direction_y; + GtkAllocation allocation; + // PRINT_FUNC_LF(); - // IMPOSER UN REAFFICHAGE COMPLET // g_print( "event->type = %d\n", event->type ); if( 29 == event->type ) { @@ -1073,21 +1125,27 @@ return FALSE; } + gtk_widget_get_allocation( VarSplit.AdrWidgetSpectre, &allocation ); + + Adjust.value = + Value = gtk_adjustment_get_value( VarSplit.AdjScroll ); Adjust.with = SplitSpectre_get_with(); - Adjust.lower = VarSplit.AdjScroll->lower; + Adjust.lower = gtk_adjustment_get_lower( VarSplit.AdjScroll ); Adjust.upper = Adjust.with; - Adjust.step_increment = VarSplit.AdjScroll->step_increment; - Adjust.page_size = VarSplit.AdrWidgetSpectre->allocation.width; - Adjust.page_increment = VarSplit.AdrWidgetSpectre->allocation.width; - Adjust.value = VarSplit.AdjScroll->value; + Adjust.step_increment = gtk_adjustment_get_step_increment( VarSplit.AdjScroll ); + Adjust.page_size = allocation.width; + Adjust.page_increment = allocation.width; while( Adjust.value + Adjust.page_size > Adjust.upper ) - Adjust.value --; + Adjust.value --; SetAjust (); - // GET EMPLACEMENT CURSOR MOUSE - gdk_window_get_pointer (((GdkEventButton*)event)->window, &CursorX, &CursorY, &state); - _CursorX = CursorX + (gint)VarSplit.AdjScroll->value; - + // Si pas de selection a cet endroit retour + GdkDeviceManager *manager = gdk_display_get_device_manager( gdk_display_get_default() ); + GdkDevice *device = gdk_device_manager_get_client_pointer( manager ); + gdk_window_get_device_position( ((GdkEventButton*)event)->window, device, &CursorX, &CursorY, &state ); + // gdk_window_get_pointer (((GdkEventButton*)event)->window, &CursorX, &CursorY, &state); + _CursorX = CursorX + (gint)gtk_adjustment_get_value( VarSplit.AdjScroll ); + // CHERCHE SI SELECTION if (FALSE == VarSplit.BoolEventButtonPressSpectre) { if (VarSplit.NbrSelecteurs > 0) { @@ -1121,27 +1179,33 @@ VarSplit.TypeCursorSpectre = _CURSOR_IS_NONE_; } } + + gdk_event_get_scroll_deltas( (const GdkEvent *)event, &direction_x, &direction_y ); // SCROLL if( TRUE == BoolEventTypeScroll && VarSplit.NbrSelecteurs > 0 ) { if( TRUE == keys.BoolGDK_Control_L_R ) { - if (GDK_SCROLL_UP == EventTypeScrollDirection) { + if( direction_y == -1. ) { page_plus_scrolled( CursorX ); gtk_widget_queue_draw( VarSplit.AdrWidgetSpectre ); gtk_widget_queue_draw( VarSplit.AdrWidgetSpectreTop ); } - else if (GDK_SCROLL_DOWN == EventTypeScrollDirection) { + else if( direction_y == 1. ) { page_moins_scrolled( CursorX ); gtk_widget_queue_draw( VarSplit.AdrWidgetSpectre ); gtk_widget_queue_draw( VarSplit.AdrWidgetSpectreTop ); } } else { - if (GDK_SCROLL_UP == EventTypeScrollDirection) { + if( direction_y == -1. ) { rigtht_plus_scrolled (); + gtk_widget_queue_draw( VarSplit.AdrWidgetSpectre ); + gtk_widget_queue_draw( VarSplit.AdrWidgetSpectreTop ); } - else if (GDK_SCROLL_DOWN == EventTypeScrollDirection) { + else if( direction_y == 1. ) { left_plus_scrolled (); + gtk_widget_queue_draw( VarSplit.AdrWidgetSpectre ); + gtk_widget_queue_draw( VarSplit.AdrWidgetSpectreTop ); } } } @@ -1216,17 +1280,17 @@ // MOVE CURSEUR if (TRUE == VarSplit.BoolEventButtonPressSpectre && TRUE == bool_click_gauche) { - gint end = VARSPLIT_SPECTRE_WITH + (gint)VarSplit.AdjScroll->value; + gint end = VARSPLIT_SPECTRE_WITH + (gint)Value; // SCROLL RIGHT - if( (gint)VarSplit.AdjScroll->value >= 0 && _CursorX >= end ) { + if( (gint)Value >= 0 && _CursorX >= end ) { rigtht_plus_scrolled (); rigtht_plus_scrolled (); gtk_widget_queue_draw( VarSplit.AdrWidgetSpectre ); gtk_widget_queue_draw( VarSplit.AdrWidgetSpectreTop ); } // SCROLL LEFT - else if( (gint)VarSplit.AdjScroll->value > 0 && _CursorX < (gint)VarSplit.AdjScroll->value ) { + else if( (gint)Value > 0 && _CursorX < (gint)Value ) { left_plus_scrolled (); left_plus_scrolled (); gtk_widget_queue_draw( VarSplit.AdrWidgetSpectre ); @@ -1254,40 +1318,41 @@ split_set_flag_buttons (); if( 4 == event->type || 7 == event->type || 29 == event->type ) { - // gtk_widget_queue_draw( VarSplit.AdrWidgetSpectre ); + gtk_widget_queue_draw( VarSplit.AdrWidgetSpectre ); } gtk_widget_queue_draw( VarSplit.AdrWidgetSpectreChrono ); + gtk_widget_queue_draw( VarSplit.AdrWidgetSpectre ); return FALSE; } // // -gboolean on_eventbox_splitspectre_expose_event (GtkWidget *drawing, GdkEventExpose *e, gpointer data) +gboolean on_eventbox_splitspectre_draw( GtkWidget *widget, cairo_t *p_cr, gpointer user_data ) +{ + SplitSpectre_draw_lines( VarSplit.AdrWidgetSpectre, p_cr ); + return FALSE; +} +// +// +void on_scrollbar_split_realize( GtkWidget *widget, gpointer user_data ) { - SplitSpectre_draw_lines(); - return TRUE; + VarSplit.RangeAdjScroll = GTK_RANGE(widget); + split_realize(); } // SCROLLEDWINDOW // -gboolean on_scrolledwindow_splitspectre_event (GtkWidget *widget, GdkEvent *event, gpointer user_data) +gboolean on_scrollbar_split_event( GtkWidget *widget, GdkEvent *event, gpointer user_data ) { - // PRINT_FUNC_LF(); - Adjust.value = VarSplit.AdjScroll->value; - if (GDK_EXPOSE == event->type) { - gtk_widget_queue_draw( VarSplit.AdrWidgetSpectre ); - gtk_widget_queue_draw( VarSplit.AdrWidgetSpectreTop ); - gtk_widget_queue_draw( VarSplit.AdrWidgetSpectreChrono ); - } + Adjust.value = gtk_adjustment_get_value( VarSplit.AdjScroll ); + gtk_widget_queue_draw( VarSplit.AdrWidgetSpectre ); + gtk_widget_queue_draw( VarSplit.AdrWidgetSpectreTop ); + gtk_widget_queue_draw( VarSplit.AdrWidgetSpectreChrono ); return FALSE; } - - - - diff -Nru xcfa-4.3.8/src/split_conv.c xcfa-5.0.1/src/split_conv.c --- xcfa-4.3.8/src/split_conv.c 2013-06-27 14:59:40.000000000 +0000 +++ xcfa-5.0.1/src/split_conv.c 2015-02-05 20:51:18.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : split_conv.c * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License @@ -125,6 +125,8 @@ gboolean BoolPassSox = FALSE; gchar **PtrTabArgs = NULL; +printf("---------------------------- SplitConv_thread( \n" ); + conv.bool_thread_conv = TRUE; if (FILE_IS_WAV == VarSplitConv.TypeFileIs) { @@ -142,7 +144,7 @@ PtrTabArgs [ pos++ ] = g_strdup ("44100"); PtrTabArgs [ pos++ ] = NULL; conv_to_convert( PtrTabArgs, FALSE, MPLAYER_WAV_TO_WAV, "MPLAYER_WAV_TO_WAV"); - PtrTabArgs = filelc_RevoveTab( PtrTabArgs ); + PtrTabArgs = filelc_RemoveTab( PtrTabArgs ); BoolPassSox = TRUE; } else if (FILE_IS_FLAC == VarSplitConv.TypeFileIs) { @@ -157,7 +159,7 @@ param_filelc.PtrStrBitrate = NULL; PtrTabArgs = filelc_get_command_line (¶m_filelc); conv_to_convert( PtrTabArgs, FALSE, FLAC_FLAC_TO_WAV, "FLAC_FLAC_TO_WAV"); - PtrTabArgs = filelc_RevoveTab( PtrTabArgs ); + PtrTabArgs = filelc_RemoveTab( PtrTabArgs ); BoolPassSox = TRUE; } else if (FILE_IS_APE == VarSplitConv.TypeFileIs) { @@ -172,7 +174,7 @@ param_filelc.PtrStrBitrate = NULL; PtrTabArgs = filelc_get_command_line (¶m_filelc); conv_to_convert( PtrTabArgs, FALSE, MAC_APE_TO_WAV, "MAC_APE_TO_WAV"); - PtrTabArgs = filelc_RevoveTab( PtrTabArgs ); + PtrTabArgs = filelc_RemoveTab( PtrTabArgs ); BoolPassSox = TRUE; } else if (FILE_IS_WAVPACK == VarSplitConv.TypeFileIs) { @@ -190,7 +192,7 @@ PtrTabArgs [ pos++ ] = g_strdup_printf ("pcm:file=%s", SPLIT_FILE_TMP_WAV_SOX); PtrTabArgs [ pos++ ] = NULL; conv_to_convert( PtrTabArgs, FALSE, MPLAYER_OGG_TO_WAV, "MPLAYER_OGG_TO_WAV"); - PtrTabArgs = filelc_RevoveTab( PtrTabArgs ); + PtrTabArgs = filelc_RemoveTab( PtrTabArgs ); BoolPassSox = TRUE; } else if (FILE_IS_M4A == VarSplitConv.TypeFileIs) { @@ -210,7 +212,7 @@ PtrTabArgs [ pos++ ] = g_strdup_printf ("pcm:file=%s", SPLIT_FILE_TMP_WAV_SOX); PtrTabArgs [ pos++ ] = NULL; conv_to_convert( PtrTabArgs, FALSE, MPLAYER_MP3_TO_WAV, "MPLAYER_MP3_TO_WAV"); - PtrTabArgs = filelc_RevoveTab( PtrTabArgs ); + PtrTabArgs = filelc_RemoveTab( PtrTabArgs ); BoolPassSox = TRUE; } else if (FILE_IS_WMA == VarSplitConv.TypeFileIs) { @@ -230,7 +232,7 @@ PtrTabArgs [ pos++ ] = g_strdup ("44100"); PtrTabArgs [ pos++ ] = NULL; conv_to_convert( PtrTabArgs, FALSE, MPLAYER_WMA_TO_WAV, "MPLAYER_WMA_TO_WAV"); - PtrTabArgs = filelc_RevoveTab( PtrTabArgs ); + PtrTabArgs = filelc_RemoveTab( PtrTabArgs ); BoolPassSox = TRUE; } else if (FILE_IS_SHN == VarSplitConv.TypeFileIs) { @@ -246,7 +248,7 @@ if (TRUE == BoolPassSox) { PtrTabArgs = conv_with_sox_get_param (SPLIT_FILE_TMP_WAV_SOX, SPLIT_FILE_TMP_WAV, "44100", "2", "16"); conv_to_convert( PtrTabArgs, FALSE, SOX_WAV_TO_WAV, "SOX_WAV_TO_WAV"); - PtrTabArgs = filelc_RevoveTab( PtrTabArgs ); + PtrTabArgs = filelc_RemoveTab( PtrTabArgs ); } PRINT("FIN THREAD SPLITCONV"); @@ -295,10 +297,11 @@ else if (TRUE == conv.bool_thread_conv) { } else if (FALSE == conv.bool_thread_conv) { +printf("---------------------------- FIN SplitConv_timeout( \n" ); PRINT("FIN TIMEOUT SPLITCONV"); if( TRUE == OptionsCommandLine.BoolVerboseMode ) g_print ("\n"); - gtk_timeout_remove (conv.handler_timeout_conv); + g_source_remove (conv.handler_timeout_conv); // WindScan_close (); while (gtk_events_pending()) gtk_main_iteration(); if (NULL != VarSplitConv.DestPathnameFile) { @@ -308,12 +311,12 @@ else { WindScan_close (); if( FALSE == WindScan_close_request()) { - wininfo_create ( + wind_info_init ( WindMain, - _("Erreur SOX"), - _("Le programme SOX de votre distribution"), + _("SOX Error"), + _("The SOX program on your distribution"), "\n", - _("a generer une erreur pendant la conversion."), + _("has generated an error during conversion."), ""); } } @@ -325,12 +328,12 @@ else { WindScan_close (); if( FALSE == WindScan_close_request()) { - wininfo_create ( + wind_info_init ( WindMain, - _("Erreur SOX"), - _("Le programme SOX de votre distribution"), + _("SOX Error"), + _("The SOX program on your distribution"), "\n", - _("a generer une erreur pendant la conversion."), + _("has generated an error during conversion."), ""); } } @@ -341,12 +344,14 @@ } // // -void SplitConv_to (gchar *p_PathNameFile) +void SplitConv_to( gchar *p_PathNameFile ) { gint Channels; gint Hertz; gint Bits; pthread_t nmr_tid; + +printf("---------------------------- SplitConv_to( %s\n", p_PathNameFile ); VarSplitConv.TypeFileIs = GetInfo_file_is (p_PathNameFile); @@ -402,11 +407,21 @@ conv.total_convert = 2; } if (FILE_IS_NONE != VarSplitConv.TypeFileIs) { - WindScan_open ("SOX files", WINDSCAN_PULSE); + // WindScan_open ("SOX files", WINDSCAN_PULSE); + wind_scan_init( + WindMain, + "SOX files", + WINDSCAN_PULSE + ); WindScan_set_label ("SOX files ..."); } else { - WindScan_open ("Analyse du fichier", WINDSCAN_PULSE); + // WindScan_open ("Analyse du fichier", WINDSCAN_PULSE); + wind_scan_init( + WindMain, + "Analyse du fichier", + WINDSCAN_PULSE + ); WindScan_set_label ("Analyse du fichier ..."); } @@ -414,7 +429,7 @@ PRINT("DEBUT TIMEOUT SPLITCONV"); PRINT("DEBUT THREAD SPLITCONV"); pthread_create (&nmr_tid, NULL ,(void *)SplitConv_thread, (void *)NULL); - conv.handler_timeout_conv = gtk_timeout_add (20, SplitConv_timeout, 0); + conv.handler_timeout_conv = g_timeout_add (20, SplitConv_timeout, 0); } diff -Nru xcfa-4.3.8/src/split_cue.c xcfa-5.0.1/src/split_cue.c --- xcfa-4.3.8/src/split_cue.c 2013-03-21 10:55:49.000000000 +0000 +++ xcfa-5.0.1/src/split_cue.c 2015-02-05 20:55:57.000000000 +0000 @@ -1,25 +1,25 @@ /* * file : split_cue.c * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License * * This file is part of XCFA. - * + * * XCFA is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * at your option) any later version. - * + * * XCFA is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. - * + * * You should have received a copy of the GNU General Public License * along with XCFA. If not, see . */ @@ -55,10 +55,10 @@ extern VAR_SPLIT VarSplit; -// -// -// -// +// +// +// +// float SplitCue_get_time_in_sec (gchar *p_str) { gchar *Ptr = NULL; @@ -80,20 +80,20 @@ if ((Ptr = strrchr (p_str, ':')) != NULL) { Ptr ++; Hundr = atoi (Ptr); - + // Temps Total en secondes SecondesTempsActuel = ((float)Min * 60.0) + (float)Sec + ((float)Hundr / 100.0); } } } - + return (SecondesTempsActuel); } -// +// // TEST LA COHERENCE DU FICHIER CUE // LECTURE DES INFOS DU FICHIER // RETOURNE LE NOM DU FICHIER DE MUSIQUE ASSOCIE -// +// gchar *SplitCue_read_cue_file (gchar *p_pathname) { FILE *fp; @@ -107,25 +107,25 @@ gint FileTimeSec; gboolean BoolResultOk; - // + // // TEST LA COHERENCE DU FICHIER CUE - // + // if (NULL == (fp = fopen (p_pathname, "r"))) { - wininfo_create ( + wind_info_init ( WindMain, - _("Erreur de lecture !"), + _("Misreading !"), ""); return (NULL); } - + // PERFORMER "Rita Mitsouko / Rita Mitsouko" // TITLE "Rita Mitsouko / Rita Mitsouko" // FILE "XCFA_CUE.wav" WAVE - // + // // PERFORMER "José de Divina" // TITLE "Ibiza World Tour @ Space" // FILE "Ibiza1.mp3" WAVE - // + // // REM GENRE Jazz // REM DATE 1966 // REM DISCID 120F4902 @@ -138,9 +138,9 @@ // PERFORMER "Rita Mitsouko" // TITLE "Rita Mitsouko" // FILE "01 - Restez Avec Moi.wav" WAVE - + while (fgets (buf, MAX_CARS_SPLIT_CUE_FILE, fp) != NULL) { - + // Si debut de ligne ok if (NULL != (Ptr = strstr (buf, "FILE \""))) { @@ -154,13 +154,13 @@ return (NULL); } *Ptr = '\0'; - + // Path contiendra le chemin Path = g_strdup (p_pathname); if ((Ptr = strrchr (Path, '/')) != NULL) { *Ptr = '\0'; } - + // PathNameSong contiendra: chemin + nom du fichier musical PathNameSong = g_strdup_printf ("%s/%s", Path, StrNameSong); g_free (Path); Path = NULL; @@ -169,90 +169,89 @@ } } fclose (fp); - + // LES TESTS if (NULL == PathNameSong) { - wininfo_create ( + wind_info_init ( WindMain, - _("Erreur"), - _("Aucun fichier de musique associe au cue-file !"), + _("Error"), + _("No music file associated with the cue-file"), ""); return (NULL); } if (FALSE == FileIs_g_str_has_suffix (PathNameSong, ".WAV")) { if( TRUE == OptionsCommandLine.BoolVerboseMode ) g_print ("====\n%s\n----\n%s\t%s\n\t\tFILE NOT IN: .wav\n====\n", p_pathname, buf, PathNameSong); - wininfo_create ( + wind_info_init ( WindMain, - _("Erreur"), - _("Pas de fichier WAV dans le cue-file !"), + _("Error"), + _("No WAV file in the cue-file"), ""); g_free (PathNameSong); PathNameSong = NULL; return (NULL); } if (FALSE == libutils_test_file_exist (PathNameSong)) { - PRINT("AUCUN FICHIER DE MUSIQUE ASSOCIE DANS LE DOSSIER"); - wininfo_create ( + wind_info_init ( WindMain, - _("Erreur"), - _("Aucun fichier de musique associe dans le dossier"), + _("Error"), + _("No music file in the folder associated"), "\n", - _("du cue-file"), + _("of cue-file"), ""); return (NULL); } - - // + + // // LECTURE DES INFOS DU FICHIER - // + // FileTimeSec = tagswav_get_time_sec (PathNameSong); - + if( NULL != ( fp = fopen( p_pathname, "r" )) ) { while (fgets (buf, MAX_CARS_SPLIT_CUE_FILE, fp) != NULL) { - + if (strstr (buf, "TRACK ")) { // g_print("TRACK ->%s", buf); } - + // DEBUT - + else if (strstr (buf, "INDEX 01")) { - + IndicePoints ++; - + VarSplit.Selecteur [ IndicePoints ] . Nmr = IndicePoints; VarSplit.Selecteur [ IndicePoints ] . BeginPaint = SplitCue_get_time_in_sec (buf); VarSplit.Selecteur [ IndicePoints ] . PercentBegin = ((gdouble)VarSplit.Selecteur [ IndicePoints ] . BeginPaint / (gdouble)FileTimeSec) * 100.0; - } - + } + // FIN - + else if (strstr (buf, "INDEX 00")) { - + // SOLVED Sun, 03 Feb 2013 22:17:05 +0100 if( -1 == IndicePoints ) IndicePoints = 0; - + VarSplit.Selecteur [ IndicePoints ] . Nmr = IndicePoints; VarSplit.Selecteur [ IndicePoints ] . EndPaint = SplitCue_get_time_in_sec (buf); VarSplit.Selecteur [ IndicePoints ] . PercentEnd = ((gdouble)VarSplit.Selecteur [ IndicePoints ] . EndPaint / (gdouble)FileTimeSec) * 100.0; } - + else if (strstr (buf, "TITLE ")) { // g_print("TITLE ->%s", buf); - } - + } + } fclose (fp); } - + // AJUSTER LE DEBUT VarSplit.Selecteur [ 0 ] . BeginPaint = 1; - + // AJUSTER LA FIN VarSplit.Selecteur [ IndicePoints ] . PercentEnd = 99.99; VarSplit.Selecteur [ IndicePoints ] . EndPaint = FileTimeSec; - + // TESTER LA COHERENCE DES DATAS BoolResultOk = TRUE; if( TRUE == OptionsCommandLine.BoolVerboseMode ) @@ -282,39 +281,39 @@ } if( TRUE == OptionsCommandLine.BoolVerboseMode ) g_print ("\n"); - + // ERREUR DE DATAS DANS LE FICHIER CUE !!! if (FALSE == BoolResultOk) { if (NULL != PathNameSong) { g_free (PathNameSong); PathNameSong = NULL; - - wininfo_create ( + + wind_info_init ( WindMain, - _("Erreur de donnees dans le fichier CUE"), - _("La solution est d'importer le fichier de"), + _("Data errors in the CUE file"), + _("The solution is to import the file"), "\n", - _("musique qui sera reconnu et pre-decoupe"), + _("music that will be recognized and pre-cutting"), "\n", - _("dans le module Split."), + _("in the split module."), "\n\n", - _("Il ne restera qu'a ajuster les plages pour"), + _("We will just adjust to the beaches"), "\n", - _("generer un nouveau cue-file ou des decoupes"), + _("generate a new cue-file or cuts"), "\n", - _("correspondant aux plages."), + _("corresponding to the beaches."), ""); } } - - // + + // // RETOURNE LE NOM DU FICHIER DE MUSIQUE ASSOCIE - // + // return ((gchar *)PathNameSong); } -// -// -// +// +// +// void on_button_gen_cue_split_clicked (GtkButton *button, gpointer user_data) { gint IndicePoints; @@ -332,12 +331,12 @@ gchar *NameFileCue = NULL; gint NumFileCue; FILE *fp; - + PRINT_FUNC_LF(); TimeSongSec = VarSplit.Tags->SecTime; for (IndicePoints = 0; VarSplit.Selecteur [ IndicePoints ] . Nmr != -1; IndicePoints ++) { - + Percent = VarSplit.Selecteur [ IndicePoints ] . PercentBegin; sec = (gint) (((gdouble)TimeSongSec * (gdouble)Percent) / 100.0); dsec = ((gdouble)TimeSongSec *(gdouble)Percent) / 100.0; @@ -346,12 +345,12 @@ M = (sec / 60) % 60; S = sec % 60; C = hundr; - + if( TRUE == OptionsCommandLine.BoolVerboseMode ) { g_print ("[ %02d ] ", IndicePoints); g_print ("%02d:%02d:%02d ", M, S, C); } - + Percent = VarSplit.Selecteur [ IndicePoints ] . PercentEnd; sec = (gint) (((gdouble)TimeSongSec * (gdouble)Percent) / 100.0); dsec = ((gdouble)TimeSongSec *(gdouble)Percent) / 100.0; @@ -360,16 +359,16 @@ M = (sec / 60) % 60; S = sec % 60; C = hundr; - + if( TRUE == OptionsCommandLine.BoolVerboseMode ) { g_print ("%02d:%02d:%02d", M, S, C); g_print ("\n"); } } - + if( TRUE == OptionsCommandLine.BoolVerboseMode ) g_print ("\n"); - + // NOM DU CUE /*PathNameFileCue = g_strdup (VarSplit.PathNameFile); Ptr = strrchr (PathNameFileCue, '.'); @@ -386,12 +385,12 @@ *Ptr ++ = 'u'; *Ptr ++ = 'e'; *Ptr ++ = '\0'; - + // NOM DU WAV Ptr = strrchr (VarSplit.PathNameFile, '/'); Ptr ++; NameFileWav = g_strdup (Ptr); - + // DEBUG if( TRUE == OptionsCommandLine.BoolVerboseMode ) { g_print ("PathNameFileCue = %s\n", PathNameFileCue); @@ -400,13 +399,13 @@ // CHANGER LE NOM DU FICHIER CUE SI IL EXIST if (TRUE == libutils_test_file_exist (PathNameFileCue)) { PRINT("PathNameFileCue EXIST"); - + // PATH CUE FILE PathFileCue = g_strdup (PathNameFileCue); Ptr = strrchr (PathFileCue, '/'); Ptr ++; *Ptr = '\0'; - + // NAME CUE FILE Ptr = strrchr (PathNameFileCue, '/'); Ptr ++; @@ -421,10 +420,10 @@ g_free (NameFileCue); NameFileCue = NULL; if( TRUE == OptionsCommandLine.BoolVerboseMode ) g_print ("NOUVEAU PathNameFileCue = %s\n", PathNameFileCue); - } - + } + fp = fopen (PathNameFileCue, "w"); - + // PRODUCTION DU FICHIER CUE if( TRUE == OptionsCommandLine.BoolVerboseMode ) g_print ("\n"); @@ -432,19 +431,19 @@ fprintf (fp, "PERFORMER \"%s\"\n", "CHANTEUR"); fprintf (fp, "TITLE \"%s\"\n", "TITRE DISQUE"); fprintf (fp, "FILE \"%s\" WAVE\n", NameFileWav); - + // DUREE TOTALE EXPRIMEE EN SECONDES TimeSongSec = VarSplit.Tags->SecTime; - + for (IndicePoints = 0; VarSplit.Selecteur [ IndicePoints ] . Nmr != -1; IndicePoints ++) { - + fprintf (fp, " TRACK %02d AUDIO\n", IndicePoints +1); fprintf (fp, " PERFORMER \"\"\n"); fprintf (fp, " TITLE \"Track_%02d\"\n", IndicePoints +1); if (IndicePoints > 0) { - + // INDEX DE FIN - + Percent = VarSplit.Selecteur [ IndicePoints -1 ] . PercentEnd; sec = (gint) (((gdouble)TimeSongSec * (gdouble)Percent) / 100.0); dsec = ((gdouble)TimeSongSec *(gdouble)Percent) / 100.0; @@ -453,12 +452,12 @@ M = (sec / 60) % 60; S = sec % 60; C = hundr; - + fprintf (fp, " INDEX 00 %02d:%02d:%02d\n", M, S, C); } - + // INDEX DE DEBUT - + Percent = VarSplit.Selecteur [ IndicePoints ] . PercentBegin; sec = (gint) (((gdouble)TimeSongSec * (gdouble)Percent) / 100.0); dsec = ((gdouble)TimeSongSec *(gdouble)Percent) / 100.0; @@ -467,61 +466,66 @@ M = (sec / 60) % 60; S = sec % 60; C = hundr; - + fprintf (fp, " INDEX 01 %02d:%02d:%02d\n", M, S, C); } fprintf (fp, "\n"); - + fclose (fp); - + g_free (PathNameFileCue); PathNameFileCue = NULL; g_free (NameFileWav); NameFileWav = NULL; } -// -// -// +// +// +// void SplitCue_thread (void) { SplitWav_extract(); - + PRINT("FIN THREAD SPLIT EXTRACT"); conv.bool_thread_conv = FALSE; pthread_exit(0); } -// -// -// +// +// +// static gint SplitCue_timeout (gpointer data) { if (TRUE == conv.bool_thread_conv) { - + } - else { + else { PRINT("FIN TIMEOUT SPLIT EXTRACT"); - gtk_timeout_remove (conv.handler_timeout_conv); - + g_source_remove (conv.handler_timeout_conv); + WindScan_close (); } return (TRUE); } -// -// -// +// +// +// void on_button_action_split_clicked (GtkButton *button, gpointer user_data) { pthread_t nmr_tid; - + PRINT_FUNC_LF(); - - WindScan_open ("Split file", WINDSCAN_PULSE); + + // WindScan_open ("Split file", WINDSCAN_PULSE); + wind_scan_init( + WindMain, + "Split file", + WINDSCAN_PULSE + ); WindScan_set_label ("Split file ..."); conv_reset_struct (WindScan_close_request); - + conv.bool_thread_conv = TRUE; PRINT("DEBUT THREAD SPLIT EXTRACT"); pthread_create (&nmr_tid, NULL ,(void *)SplitCue_thread, (void *)NULL); PRINT("DEBUT TIMEOUT SPLIT EXTRACT"); - conv.handler_timeout_conv = gtk_timeout_add (300, SplitCue_timeout, 0); + conv.handler_timeout_conv = g_timeout_add (300, SplitCue_timeout, 0); } diff -Nru xcfa-4.3.8/src/split.h xcfa-5.0.1/src/split.h --- xcfa-4.3.8/src/split.h 2013-03-21 10:55:27.000000000 +0000 +++ xcfa-5.0.1/src/split.h 2015-02-02 09:09:53.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : split.h * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License @@ -28,128 +28,29 @@ #ifndef split_h #define split_h 1 -#define FOND_BLANC \ - gdk_color.red = 65535; \ - gdk_color.green = 65535; \ - gdk_color.blue = 65535; \ - gdk_color_alloc (colormap, &gdk_color); \ - gdk_window_set_background (VarSplit.AdrWidgetSpectre->window, &gdk_color); - -#define FOND_NOIR \ - gdk_color.red = 0; \ - gdk_color.green = 0; \ - gdk_color.blue = 0; \ - gdk_color_alloc (colormap, &gdk_color); \ - gdk_window_set_background (VarSplit.AdrWidgetSpectre, &gdk_color); - -#define FOND_BLEU \ - gdk_color.red = 0; \ - gdk_color.green = 0; \ - gdk_color.blue = 65535; \ - gdk_color_alloc (colormap, &gdk_color); \ - gdk_window_set_background (VarSplit.AdrWidgetSpectre->window, &gdk_color); - -#define CRAYON_NOIR \ - gdk_color.red = 0; \ - gdk_color.green = 0; \ - gdk_color.blue = 0; \ - gdk_color_alloc (colormap, &gdk_color); \ - gdk_gc_set_foreground (gc, &gdk_color); - -#define CRAYON_GRIS \ - gdk_color.red = 21845; \ - gdk_color.green = 21845; \ - gdk_color.blue = 21845; \ - gdk_color_alloc (colormap, &gdk_color); \ - gdk_gc_set_foreground (gc, &gdk_color); - -#define CRAYON_GRIS_CLAIR \ - gdk_color.red = 30767; \ - gdk_color.green = 30767; \ - gdk_color.blue = 30767; \ - gdk_color_alloc (colormap, &gdk_color); \ - gdk_gc_set_foreground (gc, &gdk_color); - -#define CRAYON_BLANC \ - gdk_color.red = 65535; \ - gdk_color.green = 65535; \ - gdk_color.blue = 65535; \ - gdk_color_alloc (colormap, &gdk_color); \ - gdk_gc_set_foreground (gc, &gdk_color); - -#define CRAYON_BLEU \ - gdk_color.red = 0; \ - gdk_color.green = 0; \ - gdk_color.blue = 65535; \ - gdk_color_alloc (colormap, &gdk_color); \ - gdk_gc_set_foreground (gc, &gdk_color); - -#define CRAYON_BLEU_CLAIR \ - gdk_color.red = 0; \ - gdk_color.green = 32000; \ - gdk_color.blue = 65535; \ - gdk_color_alloc (colormap, &gdk_color); \ - gdk_gc_set_foreground (gc, &gdk_color); - -#define CRAYON_BLEU_CLAIR_PLUS \ - gdk_color.red = 0; \ - gdk_color.green = 49000; \ - gdk_color.blue = 65535; \ - gdk_color_alloc (colormap, &gdk_color); \ - gdk_gc_set_foreground (gc, &gdk_color); - -#define CRAYON_ROUGE \ - gdk_color.red = 65535; \ - gdk_color.green = 0; \ - gdk_color.blue = 0; \ - gdk_color_alloc (colormap, &gdk_color); \ - gdk_gc_set_foreground (gc, &gdk_color); - -#define CRAYON_VERT \ - gdk_color.red = 0; \ - gdk_color.green = 65500; \ - gdk_color.blue = 0; \ - gdk_color_alloc (colormap, &gdk_color); \ - gdk_gc_set_foreground (gc, &gdk_color); - -#define CRAYON_JAUNE \ - gdk_color.red = 65535; \ - gdk_color.green = 65535; \ - gdk_color.blue = 0; \ - gdk_color_alloc (colormap, &gdk_color); \ - gdk_gc_set_foreground (gc, &gdk_color); - -#define CRAYON_ORANGE \ - gdk_color.red = 0xffff; \ - gdk_color.green = 0x9999; \ - gdk_color.blue = 0; \ - gdk_color_alloc (colormap, &gdk_color); \ - gdk_gc_set_foreground (gc, &gdk_color); - - #include "file.h" -typedef struct { // DEFINITION D'UN POINT POUR LA LECTURE DU FICHIER WAV - float Max; // Partie haute - float Min; // Partie basse +typedef struct { // DEFINITION D'UN POINT POUR LA LECTURE DU FICHIER WAV + float Max; // Partie haute + float Min; // Partie basse } POINTS_FILE; -typedef struct { // SPECIFICATION D'UN SELECTEUR - gint Nmr; // Numero du selecteur - float BeginPaint; // Position debut - float EndPaint; // Position fin - float PercentBegin; // Pourcentage debut - float PercentEnd; // Pourcentage fin +typedef struct { // SPECIFICATION D'UN SELECTEUR + gint Nmr; // Numero du selecteur + float BeginPaint; // Position debut + float EndPaint; // Position fin + float PercentBegin; // Pourcentage debut + float PercentEnd; // Pourcentage fin } SELECTEUR; typedef enum { - _CURSOR_IS_NONE_ = 0, // - _CURSOR_IS_LEFT_, // - _CURSOR_IS_RIGHT_, // - _CURSOR_IS_HAND_ // + _CURSOR_IS_NONE_ = 0, // + _CURSOR_IS_LEFT_, // + _CURSOR_IS_RIGHT_, // + _CURSOR_IS_HAND_ // } TYPE_CURSOR; /* @@ -167,76 +68,73 @@ typedef struct { - GtkWidget *AdrWidgetSpectre; // Adr Widget Spectre - GtkWidget *AdrWidgetSpectreChrono; // Adr Widget Spectre Chrono - GtkWidget *AdrWidgetSpectreTop; // Adr Widget Spectre Chrono - GtkButton *Adr_button_destination; // Adr du widget de la destinations des decoupes - gint NbrSelecteurs; // Nombre total de selecteurs - SELECTEUR Selecteur [ MAX_SELECTEURS_SPLIT +2 ]; // Tableau des selecteurs - gint SelecteurActif; // Le selecteur actif si NbrSelecteurs > -1 - gboolean BoolReadFileSpectre; // TRUE = BoolReadFileSpectre else NONE - gdouble TimeSongSec; // Duree totale du fichier en secondes - void (*FuncExternBegin) (gdouble Percent); // Rappel modif pointeur DEBUT + GtkWidget *AdrWidgetSpectre; // Adr Widget Spectre + GtkWidget *AdrWidgetSpectreChrono; // Adr Widget Spectre Chrono + GtkWidget *AdrWidgetSpectreTop; // Adr Widget Spectre Chrono + GtkButton *Adr_button_destination; // Adr du widget de la destinations des decoupes + gint NbrSelecteurs; // Nombre total de selecteurs + SELECTEUR Selecteur [ MAX_SELECTEURS_SPLIT +2 ]; // Tableau des selecteurs + gint SelecteurActif; // Le selecteur actif si NbrSelecteurs > -1 + gboolean BoolReadFileSpectre; // TRUE = BoolReadFileSpectre else NONE + gdouble TimeSongSec; // Duree totale du fichier en secondes + void (*FuncExternBegin) (gdouble Percent); // Rappel modif pointeur DEBUT void (*FuncExternEnd) (gdouble Percent); // Rappel modif pointeur FIN void (*FuncExternWaitPlay) (void); // Rappel selection d'ecoute void (*FuncExternStopPlay) (void); // Rappel fin d'ecoute - gdouble PercentActivePlay; // Pointeur de lecture audio + gdouble PercentActivePlay; // Pointeur de lecture audio gboolean BoolEventButtonPressSpectre; // - POINTS_FILE *Tab; // Tableau des amplitudes du fichier actif - glong TotalAllocation; // Longeur du tableau Tab - gint MaxPointsInTab; // - GdkPoint *MaxScale_0; // - GdkPoint *MinScale_0; // - GdkPoint *MaxScale_1; // - GdkPoint *MinScale_1; // - GdkPoint *MaxScale_2; // - GdkPoint *MinScale_2; // - glong TotalAllocationTabScreen; // Longeur du tableau TabScreen - gshort nBitsPerSample; // 8 16 24 et 32 - gint nTotalChunckSize; // Taille des données - gchar *PathNameFile; // Nom complet du fichier - gchar *PathNameFileReal; // Nom reel du fichier - TYPE_FILE_IS TypeFileIs; // WAV, MP3, OGG, FLAC, SHN, WAVPACK - INFO_WAV *Tags; // - gboolean BoolInThread; // - guint HandlerTimeoutDo; // - TYPE_CURSOR TypeCursorSpectre; // NONE | LEFT | RIGHT - gboolean BoolPlay; // FALSE -> TRUE -> FALSE - gboolean BoolQueueDrawSpectre; // - gboolean BoolQueueDrawChrono; // - gboolean BoolQueueDrawTop; // - GtkAdjustment *AdjScroll; // - gboolean BoolBlankWithCue; // + POINTS_FILE *Tab; // Tableau des amplitudes du fichier actif + glong TotalAllocation; // Longeur du tableau Tab + gint MaxPointsInTab; // + glong TotalAllocationTabScreen; // Longeur du tableau TabScreen + gshort nBitsPerSample; // 8 16 24 et 32 + gint nTotalChunckSize; // Taille des données + gchar *PathNameFile; // Nom complet du fichier + gchar *PathNameFileReal; // Nom reel du fichier + TYPE_FILE_IS TypeFileIs; // WAV, MP3, OGG, FLAC, SHN, WAVPACK + + INFO_WAV *Tags; // + guint sec_in_time; + + gboolean BoolInThread; // + guint HandlerTimeoutDo; // + TYPE_CURSOR TypeCursorSpectre; // NONE | LEFT | RIGHT + gboolean BoolPlay; // FALSE -> TRUE -> FALSE + + GtkAdjustment *AdjScroll; // + GtkRange *RangeAdjScroll; + + gboolean BoolBlankWithCue; // } VAR_SPLIT; #define VARSPLIT_CHRONO_X ( 0 ) #define VARSPLIT_CHRONO_Y ( 0 ) -#define VARSPLIT_CHRONO_W ( VarSplit.AdrWidgetSpectreChrono->allocation.width - 1 ) -#define VARSPLIT_CHRONO_H ( VarSplit.AdrWidgetSpectreChrono->allocation.height - 1 ) +#define VARSPLIT_CHRONO_W ( allocation.width - 1 ) +#define VARSPLIT_CHRONO_H ( allocation.height - 1 ) #define VARSPLIT_SPECTRE_TOP_X ( 0 ) #define VARSPLIT_SPECTRE_TOP_Y ( 0 ) -#define VARSPLIT_SPECTRE_TOP_W ( VarSplit.AdrWidgetSpectreTop->allocation.width - 1 ) -#define VARSPLIT_SPECTRE_TOP_H ( VarSplit.AdrWidgetSpectreTop->allocation.height - 1 ) +#define VARSPLIT_SPECTRE_TOP_W ( allocation.width - 1 ) +#define VARSPLIT_SPECTRE_TOP_H ( allocation.height - 1 ) #define VARSPLIT_SPECTRE_X ( 0 ) #define VARSPLIT_SPECTRE_Y ( 0 ) -#define VARSPLIT_SPECTRE_W ( VarSplit.AdrWidgetSpectre->allocation.width - 1 ) -#define VARSPLIT_SPECTRE_H ( VarSplit.AdrWidgetSpectre->allocation.height - 1 ) +#define VARSPLIT_SPECTRE_W ( allocation.width - 1 ) +#define VARSPLIT_SPECTRE_H ( allocation.height - 1 ) -#define VARSPLIT_SPECTRE_WITH ( VarSplit.AdrWidgetSpectre->allocation.width ) +#define VARSPLIT_SPECTRE_WITH ( allocation.width ) typedef struct { - gfloat value; // - gfloat lower; // - gfloat upper; // - gfloat step_increment; // - gfloat page_size; // - gfloat page_increment; // - gint with; // - gint mul; // + gfloat value; // + gfloat lower; // + gfloat upper; // + gfloat step_increment; // + gfloat page_size; // + gfloat page_increment; // + gint with; // + gint mul; // } ADJUST; // @@ -244,13 +142,12 @@ // SPLIT_SPECTRE.C // --------------------------------------------------------------------------- // -void SplitSpectre_draw_lines_play( void ); gboolean SplitSpectre_read_file_spectre (gchar *PathNameFile); -void SplitSpectre_draw_lines (void); void SplitSpectre_realize (GtkWidget *widget); void split_draw (void); -void SplitSpectre_draw_chrono ( GtkWidget *widget ); -void SplitSpectre_draw_top ( GtkWidget *widget ); +void SplitSpectre_draw_chrono ( GtkWidget *widget, cairo_t *p_cr ); +void SplitSpectre_draw_top ( GtkWidget *widget, cairo_t *p_cr ); +void SplitSpectre_draw_lines (GtkWidget *widget, cairo_t *p_cr); gint SplitSpectre_get_with (void); void SplitSpectre_remove (void); // diff -Nru xcfa-4.3.8/src/split_selector.c xcfa-5.0.1/src/split_selector.c --- xcfa-4.3.8/src/split_selector.c 2013-03-21 10:55:49.000000000 +0000 +++ xcfa-5.0.1/src/split_selector.c 2015-02-05 20:58:00.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : split_selector.c * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License @@ -133,7 +133,7 @@ else if (VarSplit.NbrSelecteurs > 1) { if (TRUE == AlsaPlay_is_play ()) { - StatusBar_set_mess( NOTEBOOK_SPLIT, _STATUSBAR_WARN_, _("Suppression pendant la lecture impossible") ); + StatusBar_set_mess( NOTEBOOK_SPLIT, _STATUSBAR_WARN_, _("Deleting not during playback") ); } else { gint Zone = 0; @@ -210,6 +210,7 @@ gint Cpt; gdouble PercentCursorX; gint Len; + GtkAllocation allocation; // PRINT_FUNC_LF(); @@ -217,6 +218,7 @@ // // CAS 1 : CursorX < BEGIN_MIN // + gtk_widget_get_allocation( VarSplit.AdrWidgetSpectre, &allocation ); if (CursorX < SplitSelector_get_pos_begin (0)) { PRINT("CAS 1 : CursorX < BEGIN_MIN"); @@ -226,13 +228,13 @@ PercentCursorX = ((gdouble)CursorX / (gdouble)SplitSpectre_get_with() ) * 100.0; Len = SplitSelector_get_diff_sec (0.0, PercentCursorX); if (Len < 5) { - StatusBar_set_mess( NOTEBOOK_SPLIT, _STATUSBAR_WARN_, _("Temps inferieur a 5 secondes entre marqueur et curseur !") ); + StatusBar_set_mess( NOTEBOOK_SPLIT, _STATUSBAR_WARN_, _("Time of less than 5 seconds between marker and cursor !") ); return; } Len = SplitSelector_get_diff_sec (PercentCursorX, VarSplit.Selecteur [ 0 ] . PercentBegin); if (Len < 5) { - StatusBar_set_mess( NOTEBOOK_SPLIT, _STATUSBAR_WARN_, _("Temps inferieur a 5 secondes entre marqueur et curseur !") ); + StatusBar_set_mess( NOTEBOOK_SPLIT, _STATUSBAR_WARN_, _("Time of less than 5 seconds between marker and cursor !") ); return; } @@ -286,13 +288,13 @@ PercentCursorX = ((gdouble)CursorX / (gdouble)SplitSpectre_get_with() ) * 100.0; Len = SplitSelector_get_diff_sec (VarSplit.Selecteur [ 0 ] . PercentEnd, PercentCursorX); if (Len < 5) { - StatusBar_set_mess( NOTEBOOK_SPLIT, _STATUSBAR_WARN_, _("Temps inferieur a 5 secondes entre marqueur et curseur !") ); + StatusBar_set_mess( NOTEBOOK_SPLIT, _STATUSBAR_WARN_, _("Time of less than 5 seconds between marker and cursor !") ); return; } Len = SplitSelector_get_diff_sec (PercentCursorX, 100.0); if (Len < 5) { - StatusBar_set_mess( NOTEBOOK_SPLIT, _STATUSBAR_WARN_, _("Temps inferieur a 5 secondes entre marqueur et curseur !") ); + StatusBar_set_mess( NOTEBOOK_SPLIT, _STATUSBAR_WARN_, _("Time of less than 5 seconds between marker and cursor !") ); return; } @@ -349,14 +351,14 @@ Len = SplitSelector_get_diff_sec (VarSplit.Selecteur [ Cpt ] . PercentBegin, PercentCursorX); if (Len < 5) { PRINT("1- if (Len < 5) {"); - StatusBar_set_mess( NOTEBOOK_SPLIT, _STATUSBAR_WARN_, _("Temps inferieur a 5 secondes entre marqueur et curseur !") ); + StatusBar_set_mess( NOTEBOOK_SPLIT, _STATUSBAR_WARN_, _("Time of less than 5 seconds between marker and cursor !") ); return; } Len = SplitSelector_get_diff_sec (PercentCursorX, VarSplit.Selecteur [ Cpt ] . PercentEnd); if (Len < 5) { PRINT("2- if (Len < 5) {"); - StatusBar_set_mess( NOTEBOOK_SPLIT, _STATUSBAR_WARN_, _("Temps inferieur a 5 secondes entre marqueur et curseur !") ); + StatusBar_set_mess( NOTEBOOK_SPLIT, _STATUSBAR_WARN_, _("Time of less than 5 seconds between marker and cursor !") ); return; } @@ -426,13 +428,13 @@ PercentCursorX = ((gdouble)CursorX / (gdouble)SplitSpectre_get_with() ) * 100.0; Len = SplitSelector_get_diff_sec (VarSplit.Selecteur [ Cpt ] . PercentEnd, PercentCursorX); if (Len < 5) { - StatusBar_set_mess( NOTEBOOK_SPLIT, _STATUSBAR_WARN_, _("Temps inferieur a 5 secondes entre marqueur et curseur !") ); + StatusBar_set_mess( NOTEBOOK_SPLIT, _STATUSBAR_WARN_, _("Time of less than 5 seconds between marker and cursor !") ); return; } Len = SplitSelector_get_diff_sec (PercentCursorX, VarSplit.Selecteur [ Cpt +1 ] . PercentBegin); if (Len < 5) { - StatusBar_set_mess( NOTEBOOK_SPLIT, _STATUSBAR_WARN_, _("Temps inferieur a 5 secondes entre marqueur et curseur !") ); + StatusBar_set_mess( NOTEBOOK_SPLIT, _STATUSBAR_WARN_, _("Time of less than 5 seconds between marker and cursor !") ); return; } @@ -693,7 +695,9 @@ if (VarSplit.PercentActivePlay >= 0.0) { gint SelPlay = SplitSelector_get_pos_play (); + GtkAllocation allocation; + gtk_widget_get_allocation( VarSplit.AdrWidgetSpectre, &allocation ); if (p_cursor_x > SelPlay -6 && p_cursor_x < SelPlay +7) if (p_cursor_y > VARSPLIT_SPECTRE_Y + VARSPLIT_SPECTRE_H -12 && p_cursor_y < VARSPLIT_SPECTRE_Y + VARSPLIT_SPECTRE_H) return (TRUE); @@ -706,8 +710,10 @@ { if (VarSplit.PercentActivePlay >= 0.0) { + GtkAllocation allocation; gint SelPlay = SplitSelector_get_pos_play (); - + + gtk_widget_get_allocation( VarSplit.AdrWidgetSpectre, &allocation ); if (p_cursor_x == SelPlay || p_cursor_x +1 == SelPlay || p_cursor_x -1 == SelPlay) { @@ -719,13 +725,12 @@ } // // -void SplitSelector_set_pos_play (gint p_play) +void SplitSelector_set_pos_play( gint p_play ) { - gint With = SplitSpectre_get_with(); + gint With = SplitSpectre_get_with(); if( p_play < 0 ) p_play = 0; if( p_play > With ) p_play = With; - VarSplit.PercentActivePlay = ((gdouble)p_play / (gdouble)With ) * 100.0; } diff -Nru xcfa-4.3.8/src/split_spectre.c xcfa-5.0.1/src/split_spectre.c --- xcfa-4.3.8/src/split_spectre.c 2013-03-21 10:55:49.000000000 +0000 +++ xcfa-5.0.1/src/split_spectre.c 2015-02-02 14:06:45.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : split_spectre.c * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License @@ -56,458 +56,216 @@ // gint SplitSpectre_get_with (void) { - return( VarSplit.AdrWidgetSpectre->allocation.width * Adjust.mul ); - /* - if( 1 == Adjust.mul ) - return( VarSplit.AdrWidgetSpectre->allocation.width * Adjust.mul ); - return( VarSplit.MaxPointsInTab * Adjust.mul ); - */ + GtkAllocation allocation; + + gtk_widget_get_allocation( VarSplit.AdrWidgetSpectre, &allocation ); + return( allocation.width * Adjust.mul ); } // AFFICHAGE IMAGE CHRONO // -void SplitSpectre_draw_chrono ( GtkWidget *widget ) +void SplitSpectre_draw_chrono ( GtkWidget *widget, cairo_t *p_cr ) { - GdkColor gdk_color; - GdkColormap *colormap; - GdkGC *gc; - GdkPoint poly [ 10 ]; - PangoContext *p_context = NULL; - PangoLayout *layout = NULL; - PangoFontDescription *fontdesc; - gint layoutX = 0; - gint layoutY = 0; - gint CursorX, CursorY; - GdkModifierType state; + GtkAllocation allocation; gint ChronoX; - + gint CursorX, CursorY; + gint H, M, S; + gchar *Str = NULL; gint sec; - // gdouble dsec; gdouble TimeSongSec; gdouble Percent; - gint H, M, S; - gchar *Str = NULL; - // gint hundr; - // gint C; - - /* - cairo_t *cr; - + if (NULL == widget) return; + + gtk_widget_get_allocation( widget, &allocation ); - cr = gdk_cairo_create( widget->window ); - cairo_scale( cr, 1.0, 1.0 ); - cairo_translate( cr, 0.0, 0.0 ); + cairo_scale( p_cr, 1.0, 1.0 ); + cairo_translate( p_cr, 0.0, 0.0 ); - // COLOR: 0 .. 255 -> PRG: colorname - gdouble red, blue, green; - // CLEAR PREVIEW SURFACE - // CRAYON_GRIS - red = 99 - blue = 99 - green = 99 - cairo_set_source_rgb( cr, red/255.0, green/255.0, blue/255.0 ); - cairo_rectangle( cr, + cairo_set_source_rgb( p_cr, 0.4, 0.4, 0.4 ); + cairo_rectangle( p_cr, 0, 0, - widget ->allocation.width, - widget->allocation.height + allocation.width, + allocation.height ); - cairo_fill( cr ); - - // ECRITURE BARRE CHRONOLOGIQUE - // CRAYON_BLANC - red = 255 - blue = 255 - green = 255 - cairo_set_source_rgb( cr, red/255.0, green/255.0, blue/255.0 ); + cairo_fill( p_cr ); #define SPLIT_TIME_CHRONO_ 80 for (ChronoX = 2; ChronoX +60 <= VARSPLIT_CHRONO_W +80; ChronoX += SPLIT_TIME_CHRONO_) { - if (ChronoX > 2) { - gdk_draw_line ( - widget->window, - gc, - ChronoX -2, - VARSPLIT_CHRONO_Y, - ChronoX -2, - VARSPLIT_CHRONO_Y + VARSPLIT_CHRONO_H - ); - } - } - - - cairo_paint( cr ); - */ - - if (NULL == widget) return; - - colormap = gdk_drawable_get_colormap (widget->window); - gc = gdk_gc_new (widget->window); - - // CLEAR - poly [ 0 ] . x = VARSPLIT_CHRONO_X; - poly [ 0 ] . y = VARSPLIT_CHRONO_Y; - poly [ 1 ] . x = VARSPLIT_CHRONO_X + VARSPLIT_CHRONO_W +1; - poly [ 1 ] . y = VARSPLIT_CHRONO_Y; - poly [ 2 ] . x = VARSPLIT_CHRONO_X + VARSPLIT_CHRONO_W +1; - poly [ 2 ] . y = VARSPLIT_CHRONO_Y + VARSPLIT_CHRONO_H +1; - poly [ 3 ] . x = VARSPLIT_CHRONO_Y; - poly [ 3 ] . y = VARSPLIT_CHRONO_Y + VARSPLIT_CHRONO_H +1; - poly [ 4 ] . x = VARSPLIT_CHRONO_X; - poly [ 4 ] . y = VARSPLIT_CHRONO_Y; - - CRAYON_GRIS - gdk_draw_polygon ( - widget->window, - gc, - TRUE, - poly, - 4 - ); -#define SPLIT_TIME_CHRONO_ 80 - // ECRITURE BARRE CHRONOLOGIQUE - CRAYON_BLANC - for (ChronoX = 2; ChronoX +60 <= VARSPLIT_CHRONO_W +80; ChronoX += SPLIT_TIME_CHRONO_) { - if (ChronoX > 2) { - gdk_draw_line ( - widget->window, - gc, - ChronoX -2, - VARSPLIT_CHRONO_Y, - ChronoX -2, - VARSPLIT_CHRONO_Y + VARSPLIT_CHRONO_H - ); - } - p_context = gtk_widget_get_pango_context (widget); - layout = pango_layout_new (p_context); - fontdesc = pango_font_description_from_string ("Times New Roman 8"); - pango_layout_set_font_description (layout, fontdesc); - layoutX = ChronoX; - layoutY = VARSPLIT_CHRONO_Y + 3; - - CursorX = (gint)VarSplit.AdjScroll->value; - CursorX += ChronoX; - CursorX -= 2; + if (ChronoX > 1) { + // CRAYON_BLANC + cairo_set_source_rgb( p_cr, 1.0, 1.0, 1.0 ); + // EPAISSEUR + cairo_set_line_width( p_cr, 0.5 ); + // HAUT + cairo_move_to( p_cr, ChronoX -2, 0.0 ); + // BAS + cairo_rel_line_to( p_cr, 0.0, VARSPLIT_CHRONO_Y + VARSPLIT_CHRONO_H ); + cairo_stroke ( p_cr ); + + // TEXTE + CursorX = (gint)gtk_adjustment_get_value( VarSplit.AdjScroll ); + CursorX += ChronoX; + CursorX -= 2; + + if (NULL != VarSplit.Tags) { + TimeSongSec = VarSplit.sec_in_time; + } + else { + TimeSongSec = 300; + } + Percent = ((gdouble)CursorX / (gdouble)SplitSpectre_get_with() ) * 100.0; + sec = (gint) (((gdouble)TimeSongSec * (gdouble)Percent) / 100.0); + // dsec = ((gdouble)TimeSongSec *(gdouble)Percent) / 100.0; + // hundr = ((gdouble)dsec - (gdouble)sec) * 100.0; + H = (sec / 60) / 60; + M = (sec / 60) % 60; + S = sec % 60; + Str = g_strdup_printf ("%02d:%02d:%02d", H, M, S); + + cairo_select_font_face( p_cr, "Sans", CAIRO_FONT_SLANT_NORMAL, CAIRO_FONT_WEIGHT_NORMAL ); + cairo_set_font_size( p_cr, 10 ); + cairo_move_to( p_cr, ChronoX +0, 13.); + cairo_show_text( p_cr, Str ); + + g_free( Str ); + Str = NULL; - if (NULL != VarSplit.Tags) { - TimeSongSec = VarSplit.Tags->SecTime; } - else { - TimeSongSec = 300; - } - Percent = ((gdouble)CursorX / (gdouble)SplitSpectre_get_with() ) * 100.0; - sec = (gint) (((gdouble)TimeSongSec * (gdouble)Percent) / 100.0); - // dsec = ((gdouble)TimeSongSec *(gdouble)Percent) / 100.0; - // hundr = ((gdouble)dsec - (gdouble)sec) * 100.0; - H = (sec / 60) / 60; - M = (sec / 60) % 60; - S = sec % 60; - // C = hundr; - Str = g_strdup_printf ("%02d:%02d:%02d", H, M, S); - - pango_layout_set_markup (layout, Str, -1); - gdk_draw_layout ( - widget->window, - gc, - layoutX, - layoutY, - layout - ); - g_object_unref (layout); - g_free (Str); - Str = NULL; - } - - gdk_window_get_pointer (widget->window, &CursorX, &CursorY, &state); - if (CursorX < VARSPLIT_CHRONO_X) - CursorX = VARSPLIT_CHRONO_X; - else if (CursorX > (VARSPLIT_CHRONO_X + VARSPLIT_CHRONO_W) -1) - CursorX = VARSPLIT_CHRONO_X + VARSPLIT_CHRONO_W; - - if (CursorY < VARSPLIT_CHRONO_Y) - CursorY = VARSPLIT_CHRONO_Y; - else if (CursorY > (VARSPLIT_CHRONO_Y + VARSPLIT_CHRONO_H) -1) - CursorY = VARSPLIT_CHRONO_Y + VARSPLIT_CHRONO_H; + } // REPAIR VERTICAL PARTIE HAUTE - if (VarSplit.NbrSelecteurs > 0) { - CRAYON_ROUGE - gdk_draw_line ( - widget->window, - gc, - CursorX, - VARSPLIT_CHRONO_Y, - CursorX, - VARSPLIT_CHRONO_Y + VARSPLIT_CHRONO_H - ); - } - gdk_gc_destroy (gc); - - // POSITION DU CURSEUR DANS LA FORME D ONDE - /* - if (NULL != VarSplit.Tags) { - TimeSongSec = VarSplit.Tags->SecTime; - } - else { - TimeSongSec = 300; - } - CursorX += (gint)Adj->value; - Percent = ((gdouble)CursorX / (gdouble)VarSplit.AdrWidgetSpectre->allocation.width) * 100.0; - sec = (gint) (((gdouble)TimeSongSec * (gdouble)Percent) / 100.0); - dsec = ((gdouble)TimeSongSec *(gdouble)Percent) / 100.0; - hundr = ((gdouble)dsec - (gdouble)sec) * 100.0; - H = (sec / 60) / 60; - M = (sec / 60) % 60; - S = sec % 60; - C = hundr; - gtk_label_set_use_markup (GTK_LABEL(GLADE_GET_OBJECT("label_temps_actuel_curseur_split")), TRUE); - if (VarSplit.NbrSelecteurs > 0) { - // Str = g_strdup_printf ("Codage en cours ...\n%02d:%02d:%02d.%02d", H, M, S, C); - Str = g_strdup_printf ("Codage en cours ...\n%02d:%02d:%02d", H, M, S); + if( VarSplit.NbrSelecteurs > 0 ) { + GdkModifierType state; + GdkDeviceManager *manager = gdk_display_get_device_manager( gdk_display_get_default() ); + GdkDevice *device = gdk_device_manager_get_client_pointer( manager ); + gdk_window_get_device_position( gtk_widget_get_window(widget), device, &CursorX, &CursorY, &state ); + // gdk_window_get_pointer( widget->window, &CursorX, &CursorY, &state ); + + cairo_set_line_width( p_cr, 2 ); + // CRAYON_ROUGE + cairo_set_source_rgb( p_cr, 1.0, 0.0, 0.0 ); + cairo_move_to( p_cr, CursorX, 0.0 ); + cairo_rel_line_to( p_cr, 0.0, VARSPLIT_CHRONO_Y + VARSPLIT_CHRONO_H ); + cairo_stroke ( p_cr ); } - else { - // Str = g_strdup ("Codage en cours ...\n00:00:00.00"); - Str = g_strdup ("Codage en cours ...\n00:00:00"); - } - gtk_label_set_markup (GTK_LABEL(GLADE_GET_OBJECT("label_temps_actuel_curseur_split")), Str); - // g_print("%s\n", Str); - g_free (Str); - Str = NULL; - */ } // AFFICHAGE IMAGE TOP // -void SplitSpectre_draw_top ( GtkWidget *widget ) +void SplitSpectre_draw_top ( GtkWidget *widget, cairo_t *p_cr ) { - GdkColor gdk_color; - GdkColormap *colormap; - GdkGC *gc; - GdkPoint poly [ 10 ]; + GtkAllocation allocation; + if (NULL == widget) return; + + gtk_widget_get_allocation( widget, &allocation ); - colormap = gdk_drawable_get_colormap (widget->window); - gc = gdk_gc_new (widget->window); + cairo_scale( p_cr, 1.0, 1.0 ); + cairo_translate( p_cr, 0.0, 0.0 ); - // CLEAR - poly [ 0 ] . x = VARSPLIT_SPECTRE_TOP_X; - poly [ 0 ] . y = VARSPLIT_SPECTRE_TOP_Y; - poly [ 1 ] . x = VARSPLIT_SPECTRE_TOP_X + VARSPLIT_SPECTRE_TOP_W +1; - poly [ 1 ] . y = VARSPLIT_SPECTRE_TOP_Y; - poly [ 2 ] . x = VARSPLIT_SPECTRE_TOP_X + VARSPLIT_SPECTRE_TOP_W +1; - poly [ 2 ] . y = VARSPLIT_SPECTRE_TOP_Y + VARSPLIT_SPECTRE_TOP_H +1; - poly [ 3 ] . x = VARSPLIT_SPECTRE_TOP_Y; - poly [ 3 ] . y = VARSPLIT_SPECTRE_TOP_Y + VARSPLIT_SPECTRE_TOP_H +1; - poly [ 4 ] . x = VARSPLIT_SPECTRE_TOP_X; - poly [ 4 ] . y = VARSPLIT_SPECTRE_TOP_Y; - - CRAYON_GRIS_CLAIR - gdk_draw_polygon ( - widget->window, - gc, - TRUE, - poly, - 4 - ); - + // CLEAR PREVIEW SURFACE + cairo_set_source_rgb( p_cr, 0.5, 0.5, 0.5 ); + cairo_rectangle( p_cr, + 0, + 0, + allocation.width, + allocation.height + ); + cairo_fill( p_cr ); if (VarSplit.NbrSelecteurs > 0) { - + gint begin = 0; gint Len; + gint Cpt; gint SelBegin; gint SelEnd; - gint Cpt; gint i; - PangoContext *p_context = NULL; - PangoLayout *layout = NULL; - PangoFontDescription *fontdesc; - gint layoutX = 0; - gint layoutY = 0; + GtkAllocation allocation; gchar *Str = NULL; - // PRINT_FUNC_LF(); - begin = (gint)VarSplit.AdjScroll->value; + gtk_widget_get_allocation( widget, &allocation ); + + begin = (gint)gtk_adjustment_get_value( VarSplit.AdjScroll ); Len = SplitSpectre_get_with () + begin; - + // DRAW ALL SELECTEURS for (Cpt = 0; Cpt < MAX_SELECTEURS_SPLIT; Cpt ++) { - - // if (Cpt == VarSplit.SelecteurActif) continue; + if (VarSplit.Selecteur [ Cpt ] . Nmr == -1) break; // FLECHE LIGNE DEBUT - SelBegin = SplitSelector_get_pos_begin (Cpt); + SelBegin = SplitSelector_get_pos_begin( Cpt ); if (SelBegin >= begin && SelBegin <= Len) { - poly [ 0 ] . x = SelBegin; - CRAYON_NOIR + cairo_set_source_rgb( p_cr, 0.0, 0.0, 0.0 ); for (i = 0; i < 9; i++) { - gdk_draw_line (widget->window, - gc, - SelBegin - begin + i, - (VARSPLIT_SPECTRE_TOP_Y + 1) + i, - SelBegin - begin + i, - (VARSPLIT_SPECTRE_TOP_Y + 16) - i - ); + cairo_move_to( p_cr, SelBegin - begin + i, 0.0 + i ); + cairo_rel_line_to( p_cr, 0.0, allocation.height -(i*2) ); + cairo_stroke ( p_cr ); } - - p_context = gtk_widget_get_pango_context (widget); - layout = pango_layout_new (p_context); - fontdesc = pango_font_description_from_string ("Times New Roman 9"); - pango_layout_set_font_description (layout, fontdesc); - Str = g_strdup_printf("%d", Cpt +1); - layoutX = poly [ 0 ] . x + 10; - layoutY = VARSPLIT_SPECTRE_TOP_Y +2; - pango_layout_set_markup (layout, Str, -1); - CRAYON_NOIR - gdk_draw_layout ( - widget->window, - gc, - layoutX - begin, - layoutY, - layout - ); - g_free (Str); - Str = NULL; - g_object_unref (layout); + Str = g_strdup_printf("%d", Cpt ); + cairo_select_font_face( p_cr, "Sans", CAIRO_FONT_SLANT_NORMAL, CAIRO_FONT_WEIGHT_NORMAL ); + cairo_set_font_size( p_cr, 10 ); + cairo_move_to( p_cr, SelBegin +10, 13.); + cairo_set_source_rgb( p_cr, 1.0, 1.0, 1.0 ); + cairo_show_text( p_cr, Str ); + g_free( Str ); + Str = NULL; } - // FLECHE LIGNE FIN - SelEnd = SplitSelector_get_pos_end (Cpt); + SelEnd = SplitSelector_get_pos_end( Cpt ); if (SelEnd > SelBegin && SelEnd > begin && SelEnd < Len) { - - poly [ 0 ] . x = SelEnd; - CRAYON_NOIR + cairo_set_source_rgb( p_cr, 0.0, 0.0, 0.0 ); for (i = 0; i < 9; i++) { - gdk_draw_line (widget->window, - gc, - SelEnd - begin - i, - (VARSPLIT_SPECTRE_TOP_Y + 1) + i, - SelEnd - begin - i, - (VARSPLIT_SPECTRE_TOP_Y + 16) - i - ); + cairo_move_to( p_cr, SelEnd - begin - i, 0.0 + i ); + cairo_rel_line_to( p_cr, 0.0, allocation.height -(i*2) ); + cairo_stroke ( p_cr ); } - - p_context = gtk_widget_get_pango_context (widget); - layout = pango_layout_new (p_context); - fontdesc = pango_font_description_from_string ("Times New Roman 9"); - pango_layout_set_font_description (layout, fontdesc); - Str = g_strdup_printf("%d", Cpt +1); - if (Cpt +1 < 10) - layoutX = poly [ 0 ] . x - 16; - else layoutX = poly [ 0 ] . x - 21; - layoutY = VARSPLIT_SPECTRE_TOP_Y +2; - pango_layout_set_markup (layout, Str, -1); - CRAYON_NOIR - gdk_draw_layout ( - widget->window, - gc, - layoutX - begin, - layoutY, - layout - ); - g_free (Str); - Str = NULL; - g_object_unref (layout); + Str = g_strdup_printf("%d", Cpt ); + cairo_select_font_face( p_cr, "Sans", CAIRO_FONT_SLANT_NORMAL, CAIRO_FONT_WEIGHT_NORMAL ); + cairo_set_font_size( p_cr, 10 ); + cairo_move_to( p_cr, SelEnd -24, 13.); + cairo_set_source_rgb( p_cr, 1.0, 1.0, 1.0 ); + cairo_show_text( p_cr, Str ); + g_free( Str ); + Str = NULL; } } - // DRAW SELECTEUR ACTIF // FLECHE LIGNE DEBUT SelBegin = SplitSelector_get_pos_begin (VarSplit.SelecteurActif); if (SelBegin >= begin && SelBegin < Len) { - poly [ 0 ] . x = SelBegin; - // - CRAYON_ORANGE + cairo_set_source_rgb( p_cr, 244. / 255., 162. / 255., 87. / 255. ); for (i = 0; i < 9; i++) { - gdk_draw_line (widget->window, - gc, - SelBegin - begin + i, - (VARSPLIT_SPECTRE_TOP_Y + 1) + i, - SelBegin - begin + i, - (VARSPLIT_SPECTRE_TOP_Y + 16) - i - ); + cairo_move_to( p_cr, SelBegin - begin + i, 0.0 + i ); + cairo_rel_line_to( p_cr, 0.0, allocation.height -(i*2) ); + cairo_stroke ( p_cr ); } - p_context = gtk_widget_get_pango_context (widget); - layout = pango_layout_new (p_context); - fontdesc = pango_font_description_from_string ("Times New Roman 9"); - pango_layout_set_font_description (layout, fontdesc); - Str = g_strdup_printf("%d", VarSplit.SelecteurActif +1); - layoutX = poly [ 0 ] . x + 10; - layoutY = VARSPLIT_SPECTRE_TOP_Y +2; - pango_layout_set_markup (layout, Str, -1); - CRAYON_BLANC - gdk_draw_layout ( - widget->window, - gc, - layoutX - begin, - layoutY, - layout - ); - g_free (Str); - Str = NULL; - g_object_unref (layout); } - // FLECHE LIGNE FIN SelEnd = SplitSelector_get_pos_end (VarSplit.SelecteurActif); if (SelEnd >= begin && SelEnd < Len) { - if (VarSplit.SelecteurActif == VarSplit.NbrSelecteurs -1) SelEnd --; - poly [ 0 ] . x = SelEnd; - // - CRAYON_VERT + cairo_set_source_rgb( p_cr, 0.0, 1.0, 0.0 ); for (i = 0; i < 9; i++) { - gdk_draw_line (widget->window, - gc, - SelEnd - begin - i, - (VARSPLIT_SPECTRE_TOP_Y + 1) + i, - SelEnd - begin - i, - (VARSPLIT_SPECTRE_TOP_Y + 16) - i - ); - } - p_context = gtk_widget_get_pango_context (widget); - layout = pango_layout_new (p_context); - fontdesc = pango_font_description_from_string ("Times New Roman 9"); - pango_layout_set_font_description (layout, fontdesc); - Str = g_strdup_printf("%d", VarSplit.SelecteurActif +1); - if (VarSplit.SelecteurActif +1 < 10) - layoutX = poly [ 0 ] . x - 16; - else layoutX = poly [ 0 ] . x - 21; - layoutY = VARSPLIT_SPECTRE_TOP_Y +2; - pango_layout_set_markup (layout, Str, -1); - CRAYON_BLANC - gdk_draw_layout ( - widget->window, - gc, - layoutX - begin, - layoutY, - layout - ); - g_free (Str); - Str = NULL; - g_object_unref (layout); + cairo_move_to( p_cr, SelEnd - begin - i, 0.0 + i ); + cairo_rel_line_to( p_cr, 0.0, allocation.height -(i*2) ); + cairo_stroke ( p_cr ); + } } + + } - gdk_gc_destroy (gc); -} -// -// -void SplitSpectre_remove_draw (void) -{ - if (NULL != VarSplit.MaxScale_0) { g_free (VarSplit.MaxScale_0); VarSplit.MaxScale_0 = NULL; } - if (NULL != VarSplit.MinScale_0) { g_free (VarSplit.MinScale_0); VarSplit.MinScale_0 = NULL; } - if (NULL != VarSplit.MaxScale_1) { g_free (VarSplit.MaxScale_1); VarSplit.MaxScale_1 = NULL; } - if (NULL != VarSplit.MinScale_1) { g_free (VarSplit.MinScale_1); VarSplit.MinScale_1 = NULL; } - if (NULL != VarSplit.MaxScale_2) { g_free (VarSplit.MaxScale_2); VarSplit.MaxScale_2 = NULL; } - if (NULL != VarSplit.MinScale_2) { g_free (VarSplit.MinScale_2); VarSplit.MinScale_2 = NULL; } } // // void SplitSpectre_remove (void) { - if (NULL != VarSplit.Tab) { g_free (VarSplit.Tab); VarSplit.Tab = NULL; } - SplitSpectre_remove_draw (); + if (NULL != VarSplit.Tab) { + g_free( VarSplit.Tab ); + VarSplit.Tab = NULL; + } VarSplit.Tags = tagswav_remove_info (VarSplit.Tags); } // @@ -666,6 +424,31 @@ g_print ("\n"); } } +// GET NBR ALLOC +// +/** +gint get_alloc( gchar *p_PathNameFile ) +{ + WAVE WaveHeader; + gint Ret; + gint points; + unsigned char devbuf[ BLOCK_SIZE +10 ]; + gint Indice; + gint ChannelNext; + + tagswav_read_file( p_PathNameFile, &WaveHeader ); + ChannelNext = (WaveHeader.FMT.NumChannels -1) * (WaveHeader.FMT.BitsPerSample / 8); + points = 0; + while ((Ret = fread (devbuf, 1, BLOCK_SIZE, WaveHeader.file)) > 0) { + for (Indice = 0; Indice < Ret; Indice ++ ) { + Indice += ChannelNext; + } + points ++; + } + tagswav_close_file( &WaveHeader ); + return( points ); +} +*/ // LECTURE FICHIER // gboolean SplitSpectre_read_file_spectre (gchar *PathNameFile) @@ -681,18 +464,17 @@ unsigned char devbuf[ BLOCK_SIZE +10 ]; WAVE WaveHeader; TYPE_FILE_IS TypeFileIs = FILE_IS_NONE; + INFO_WAV *Tags; PRINT_FUNC_LF(); if( TRUE == OptionsCommandLine.BoolVerboseMode ) g_print("\t%s\n\n", PathNameFile); - VarSplit.MaxPointsInTab = 0; + // VarSplit.MaxPointsInTab = get_alloc( PathNameFile ); + VarSplit.TypeFileIs = FILE_IS_NONE; if (FILE_IS_WAV != (TypeFileIs = GetInfo_file_is (PathNameFile))) { - // - SplitSpectre_remove_draw (); - // DEL ALLOC MEMORY if (NULL != VarSplit.Tab) { g_free (VarSplit.Tab); VarSplit.Tab = NULL; @@ -751,7 +533,8 @@ if (found == TRUE) { - VarSplit.TotalAllocation = sizeof(POINTS_FILE) * ((WaveHeader.DATA.Subchunk2Size / BLOCK_SIZE) +10); + VarSplit.TotalAllocation = sizeof(POINTS_FILE) * ((WaveHeader.DATA.Subchunk2Size / BLOCK_SIZE)); + // VarSplit.TotalAllocation = sizeof(POINTS_FILE) * VarSplit.MaxPointsInTab; VarSplit.Tab = (POINTS_FILE *)g_malloc0 (VarSplit.TotalAllocation + 10); points = 0; @@ -774,7 +557,8 @@ min = max = 0; - for (Indice = 0; Indice < Ret; Indice++) { + // for (Indice = 0; Indice < Ret; Indice++) { + for( Indice = 0; Indice < Ret; ) { if (WaveHeader.FMT.BitsPerSample == 8) { @@ -784,15 +568,14 @@ else if (WaveHeader.FMT.BitsPerSample == 16) { tmp = (gchar)devbuf [ Indice +1 ] << 8 | (gchar)devbuf [ Indice ]; - Indice ++; + // Indice ++; } else if (WaveHeader.FMT.BitsPerSample == 24) { tmp = (gchar)devbuf [ Indice +0 ] >> 16; tmp += (gchar)devbuf [ Indice +1 ] >> 8; tmp += (gchar)devbuf [ Indice +2 ]; - - Indice += 2; + // Indice += 2; } else if (WaveHeader.FMT.BitsPerSample == 32) { @@ -800,17 +583,13 @@ tmp += (gchar)devbuf [ Indice +1 ] >> 16; tmp += (gchar)devbuf [ Indice +2 ] >> 8; tmp += (gchar)devbuf [ Indice +3 ]; - - Indice += 2; + // Indice += 2; } - if (tmp > max) { - + if( tmp > max ) max = tmp; - } else if (tmp <= min) { - + else if( tmp <= min ) min = tmp; - } // skip over any extra channels Indice += ChannelNext; @@ -852,8 +631,10 @@ } } - VarSplit.Tags = tagswav_remove_info (VarSplit.Tags); - VarSplit.Tags = (INFO_WAV *)tagswav_get_info (PathNameFile); + Tags = (INFO_WAV *)tagswav_get_info( PathNameFile ); + VarSplit.sec_in_time = Tags->SecTime; + Tags = tagswav_remove_info( Tags ); + Tags = NULL; // RECHEFCHE DES PLAGES SELON L IDEE DE @Dzef ;-) SplitSpectre_search_blank_pass (); @@ -869,432 +650,312 @@ // 13 juillet 2009 // 12 mars 2010 // -void SplitSpectre_draw_lines (void) +void SplitSpectre_draw_lines( GtkWidget *widget, cairo_t *p_cr ) { - GdkColor gdk_color; - GdkColormap *colormap; - GdkGC *gc; + GtkAllocation allocation; + gint points; gint y_min; gint y_max; gint xaxis; gint scale; - gint points = 0; gint k; gdouble Percent; - gint AdjValue; - gint begin = 0; - gint end = 0; - gint save_begin = 0; - gboolean BoolAllocateMemory = FALSE; + gdouble SpectreGetWith; + gdouble MaxScale_0_y; + gdouble MinScale_0_y; + gint Begin; + gint save_begin; + gint End; gint SelBegin = 0; gint SelEnd = 0; gint Len; - GdkPoint poly [ 10 ]; - gdouble SpectreGetWith; - // static gint Nbr = 0; + gboolean bool_cairo_stroke = FALSE; +typedef struct { + gdouble r; + gdouble v; + gdouble b; +} TAB_COLOR; +TAB_COLOR tab_color[ 4 ] = +{ + { 23./255., 55./255., 93./255. }, + { 83./255., 142./255., 213./255. }, + { 141./255., 180./255., 227./255. }, + { 128./255., 128./255., 128./255. } +}; + + if (NULL == widget) return; - // PRINT_FUNC_LF(); + gtk_widget_get_allocation( widget, &allocation ); + cairo_scale( p_cr, 1.0, 1.0 ); + cairo_translate( p_cr, allocation.x, allocation.y ); - // WAV if bitrate == 8 16 24 32 - if (VarSplit.Tab != NULL && VarSplit.TypeFileIs == FILE_IS_WAV && VarSplit.MaxPointsInTab > 0) { - - // PRINT_FUNC_LF(); - // g_print( "\tNbr = %d\n", Nbr++ ); - - // OPEN DRAW - colormap = gdk_window_get_colormap (VarSplit.AdrWidgetSpectre->window); - gc = gdk_gc_new (VarSplit.AdrWidgetSpectre->window); + // CLEAR PREVIEW SURFACE + // CRAYON_GRIS + cairo_set_source_rgb( p_cr, 1.0, 1.0, 1.0 ); + cairo_rectangle( p_cr, + 0, + 0, + allocation.width, + allocation.height + ); + cairo_fill( p_cr ); + cairo_paint( p_cr ); + + if( NULL == VarSplit.Tab ) return; + + SpectreGetWith = SplitSpectre_get_with(); + + xaxis = (allocation.height -1) / 2; + + if (xaxis != 0) { + if (VarSplit.nBitsPerSample == 16) { + scale = SHRT_MAX / (xaxis -1); + } + else { + scale = UCHAR_MAX / (xaxis -1); + } + if (scale == 0) { + scale = 1; + } + } else { + scale = 1; + } - // - // NE PAS REALLOUER A CHAQUE FOIS !!! - // - if (NULL == VarSplit.MaxScale_0) { - BoolAllocateMemory = TRUE; + // cairo_set_source_rgb( p_cr, 0.4, 0.4, 0.4 ); + // EPAISSEUR + cairo_set_line_width( p_cr, 1 ); + +/** + save_begin = + Begin = gtk_adjustment_get_value( VarSplit.AdjScroll ); + Len = + End = Begin + SpectreGetWith; + SelBegin = SplitSelector_get_pos_begin( VarSplit.SelecteurActif ); + SelEnd = SplitSelector_get_pos_end( VarSplit.SelecteurActif ); + + for( points = 0; Begin < End; Begin ++, points ++ ) { + + if( points > VarSplit.MaxPointsInTab ) { + // printf("------------------------------- BREAK \n"); + break; + } + Percent = ( (gdouble)Begin / SpectreGetWith ) * 100.; + k = ( Percent * (gdouble)VarSplit.MaxPointsInTab ) / 100.; + + if( k >= VarSplit.MaxPointsInTab ) + k = VarSplit.MaxPointsInTab ; + + y_max = xaxis - VarSplit.Tab[ k ].Max / scale; + y_min = xaxis + fabs( VarSplit.Tab[ k ].Min ) / scale; + + if (Begin >= SelBegin && Begin <= SelEnd) { + cairo_set_source_rgb( p_cr, tab_color[ 0 ].r, tab_color[ 0 ].v, tab_color[ 0 ].b ); + MaxScale_0_y = y_max - (y_max - xaxis) * 0 / SAMPLE_SHADES; + MinScale_0_y = y_min + (xaxis - y_min) * 0 / SAMPLE_SHADES; + cairo_move_to( p_cr, points, MinScale_0_y ); + cairo_rel_line_to( p_cr, 0.0, (MaxScale_0_y - MinScale_0_y) <= 0 ? MaxScale_0_y - MinScale_0_y : 1 ); + cairo_stroke ( p_cr ); + + cairo_set_source_rgb( p_cr, tab_color[ 1 ].r, tab_color[ 1 ].v, tab_color[ 1 ].b ); + MaxScale_0_y = y_max - (y_max - xaxis) * 1 / SAMPLE_SHADES - 1; + MinScale_0_y = y_min + (xaxis - y_min) * 1 / SAMPLE_SHADES - 1; + cairo_move_to( p_cr, points, MinScale_0_y ); + cairo_rel_line_to( p_cr, 0.0, (MaxScale_0_y - MinScale_0_y) <= 0 ? MaxScale_0_y - MinScale_0_y : 1 ); + cairo_stroke ( p_cr ); + + cairo_set_source_rgb( p_cr, tab_color[ 2 ].r, tab_color[ 2 ].v, tab_color[ 2 ].b ); + MaxScale_0_y = y_max - (y_max - xaxis) * 2 / SAMPLE_SHADES - 1; + MinScale_0_y = y_min + (xaxis - y_min) * 2 / SAMPLE_SHADES - 1; + cairo_move_to( p_cr, points, MinScale_0_y ); + cairo_rel_line_to( p_cr, 0.0, (MaxScale_0_y - MinScale_0_y) <= 0 ? MaxScale_0_y - MinScale_0_y : 1 ); + cairo_stroke ( p_cr ); } - if (VarSplit.TotalAllocationTabScreen < (sizeof(GdkPoint) * (VARSPLIT_SPECTRE_WITH + 20))) { - BoolAllocateMemory = TRUE; + else { + cairo_set_source_rgb( p_cr, 128./255., 128./255., 128./255. ); + MaxScale_0_y = y_max - (y_max - xaxis) * 0 / SAMPLE_SHADES; + MinScale_0_y = y_min + (xaxis - y_min) * 0 / SAMPLE_SHADES; + cairo_move_to( p_cr, points, MinScale_0_y ); + cairo_rel_line_to( p_cr, 0.0, (MaxScale_0_y - MinScale_0_y) <= 0 ? MaxScale_0_y - MinScale_0_y : 1 ); + cairo_stroke ( p_cr ); } - if (TRUE == BoolAllocateMemory) { - - SplitSpectre_remove_draw (); + } - VarSplit.TotalAllocationTabScreen = sizeof(GdkPoint) * (VARSPLIT_SPECTRE_WITH + 20); - - VarSplit.MaxScale_0 = (GdkPoint *)g_malloc0 (VarSplit.TotalAllocationTabScreen); - VarSplit.MinScale_0 = (GdkPoint *)g_malloc0 (VarSplit.TotalAllocationTabScreen); - VarSplit.MaxScale_1 = (GdkPoint *)g_malloc0 (VarSplit.TotalAllocationTabScreen); - VarSplit.MinScale_1 = (GdkPoint *)g_malloc0 (VarSplit.TotalAllocationTabScreen); - VarSplit.MaxScale_2 = (GdkPoint *)g_malloc0 (VarSplit.TotalAllocationTabScreen); - VarSplit.MinScale_2 = (GdkPoint *)g_malloc0 (VarSplit.TotalAllocationTabScreen); - } - - // LA LIGNE MEDIANE DU GRAPHE - // xaxis = HAUTEUR_WIDGET / 2; - xaxis = (VARSPLIT_SPECTRE_H) / 2; - - if (xaxis != 0) { - if (VarSplit.nBitsPerSample == 16) - scale = SHRT_MAX / (xaxis -1); - else scale = UCHAR_MAX / (xaxis -1); - if (scale == 0) { - scale = 1; +*/ + + // + // SELECT + // ... 0 / SAMPLE_SHADES + // + save_begin = + Begin = gtk_adjustment_get_value( VarSplit.AdjScroll ); + Len = + End = Begin + SpectreGetWith; + SelBegin = SplitSelector_get_pos_begin( VarSplit.SelecteurActif ); + SelEnd = SplitSelector_get_pos_end( VarSplit.SelecteurActif ); + + cairo_set_source_rgb( p_cr, tab_color[ 0 ].r, tab_color[ 0 ].v, tab_color[ 0 ].b ); + for( points = 0; Begin < End; Begin ++, points ++ ) { + + if( Begin >= SelBegin && Begin <= SelEnd ) { + if( points > VarSplit.MaxPointsInTab ) { + // printf("------------------------------- BREAK \n"); + // break; } - } else { - scale = 1; - } - - // - begin = - save_begin = - AdjValue = (gint)VarSplit.AdjScroll->value; - Len = - end = begin + VARSPLIT_SPECTRE_WITH; - - // PRE - CALCUL - // 4.0.8~beta1 - // Fri, 22 Apr 2011 15:03:02 +0200 - SpectreGetWith = SplitSpectre_get_with(); - - // Thu, 23 Sep 2010 21:32:41 +0200 - for( points = 0; begin < end; begin ++, points ++ ) { - - Percent = ( (gdouble)begin / SpectreGetWith ) * 100.; + Percent = ( (gdouble)Begin / SpectreGetWith ) * 100.; k = ( Percent * (gdouble)VarSplit.MaxPointsInTab ) / 100.; + if( k >= VarSplit.MaxPointsInTab ) + k = VarSplit.MaxPointsInTab ; + y_max = xaxis - VarSplit.Tab[ k ].Max / scale; y_min = xaxis + fabs( VarSplit.Tab[ k ].Min ) / scale; - - // shade = 0; - VarSplit.MaxScale_0 [ points ] . x = begin; - VarSplit.MaxScale_0 [ points ] . y = y_max - (y_max - xaxis) * 0 / SAMPLE_SHADES; - VarSplit.MinScale_0 [ points ] . x = begin; - VarSplit.MinScale_0 [ points ] . y = y_min + (xaxis - y_min) * 0 / SAMPLE_SHADES; - - // shade = 1; - VarSplit.MaxScale_1 [ points ] . x = begin; - VarSplit.MaxScale_1 [ points ] . y = y_max - (y_max - xaxis) * 1 / SAMPLE_SHADES; - VarSplit.MinScale_1 [ points ] . x = begin; - VarSplit.MinScale_1 [ points ] . y = y_min + (xaxis - y_min) * 1 / SAMPLE_SHADES; - - // shade = 2; - VarSplit.MaxScale_2 [ points ] . x = begin; - VarSplit.MaxScale_2 [ points ] . y = y_max - (y_max - xaxis) * 2 / SAMPLE_SHADES; - VarSplit.MinScale_2 [ points ] . x = begin; - VarSplit.MinScale_2 [ points ] . y = y_min + (xaxis - y_min) * 2 / SAMPLE_SHADES; - - // RECTIF HAUT - if (VarSplit.MaxScale_0 [ points ] . y < VARSPLIT_SPECTRE_Y) { - VarSplit.MaxScale_0 [ points ] . y = VARSPLIT_SPECTRE_Y; - } - // RECTIF BAS - if (VarSplit.MinScale_0 [ points ] . y > VARSPLIT_SPECTRE_H) { - VarSplit.MinScale_0 [ points ] . y = VARSPLIT_SPECTRE_H -1; - } - - // RECTIF HAUT - if (VarSplit.MaxScale_1 [ points ] . y < VARSPLIT_SPECTRE_Y) { - VarSplit.MaxScale_1 [ points ] . y = VARSPLIT_SPECTRE_Y; - } - // RECTIF BAS - if (VarSplit.MinScale_1 [ points ] . y > VARSPLIT_SPECTRE_H) { - VarSplit.MinScale_1 [ points ] . y = VARSPLIT_SPECTRE_H -1; - } - - // RECTIF HAUT - if (VarSplit.MaxScale_2 [ points ] . y < VARSPLIT_SPECTRE_Y) { - VarSplit.MaxScale_2 [ points ] . y = VARSPLIT_SPECTRE_Y; - } - // RECTIF BAS - if (VarSplit.MinScale_2 [ points ] . y > VARSPLIT_SPECTRE_H) { - VarSplit.MinScale_2 [ points ] . y = VARSPLIT_SPECTRE_H -1; - } - } - - // (CLEAR) NETTOYER LA SURFACE - poly [ 0 ] . x = VARSPLIT_SPECTRE_X; - poly [ 0 ] . y = VARSPLIT_SPECTRE_Y; - poly [ 1 ] . x = VARSPLIT_SPECTRE_X + VARSPLIT_SPECTRE_W +1; - poly [ 1 ] . y = VARSPLIT_SPECTRE_Y; - poly [ 2 ] . x = VARSPLIT_SPECTRE_X + VARSPLIT_SPECTRE_W +1; - poly [ 2 ] . y = VARSPLIT_SPECTRE_Y + VARSPLIT_SPECTRE_H +1; - poly [ 3 ] . x = VARSPLIT_SPECTRE_X; - poly [ 3 ] . y = VARSPLIT_SPECTRE_Y + VARSPLIT_SPECTRE_H +1; - poly [ 4 ] . x = VARSPLIT_SPECTRE_X; - poly [ 4 ] . y = VARSPLIT_SPECTRE_Y; - CRAYON_BLANC - gdk_draw_polygon ( - VarSplit.AdrWidgetSpectre->window, - gc, - TRUE, - poly, - 4 - ); - SelBegin = SplitSelector_get_pos_begin (VarSplit.SelecteurActif); - SelEnd = SplitSelector_get_pos_end (VarSplit.SelecteurActif); - begin = save_begin; - - for (points = 0; begin < end; begin ++, points ++) { - - // MaxScale_0 - if (begin >= SelBegin && begin <= SelEnd) { - CRAYON_BLEU // LA SELECTION - } else { - CRAYON_NOIR // LA NON SELECTION + MaxScale_0_y = y_max - (y_max - xaxis) * 0 / SAMPLE_SHADES; + MinScale_0_y = y_min + (xaxis - y_min) * 0 / SAMPLE_SHADES; + cairo_move_to( p_cr, points, MinScale_0_y ); + cairo_rel_line_to( p_cr, 0.0, (MaxScale_0_y - MinScale_0_y) <= 0 ? MaxScale_0_y - MinScale_0_y : 1 ); + bool_cairo_stroke = TRUE; + } + } + if( bool_cairo_stroke ) + cairo_stroke ( p_cr ); + // + // SELECT + // ... 1 / SAMPLE_SHADES + // + bool_cairo_stroke = FALSE; + Begin = save_begin; + cairo_set_source_rgb( p_cr, tab_color[ 1 ].r, tab_color[ 1 ].v, tab_color[ 1 ].b ); + for( points = 0; Begin < End; Begin ++, points ++ ) { + + if (Begin >= SelBegin && Begin <= SelEnd) { + if( points > VarSplit.MaxPointsInTab ) { + // printf("------------------------------- BREAK \n"); + // break; } - gdk_draw_line (VarSplit.AdrWidgetSpectre->window, - gc, - points, - VarSplit.MaxScale_0 [ points ] . y, - points, - VarSplit.MinScale_0 [ points ] . y - ); + Percent = ( (gdouble)Begin / SpectreGetWith ) * 100.; + k = ( Percent * (gdouble)VarSplit.MaxPointsInTab ) / 100.; - // MaxScale_1 - if (begin >= SelBegin && begin <= SelEnd) { - CRAYON_BLEU_CLAIR // LA SELECTION - } else { - CRAYON_GRIS // LA NON SELECTION - } - gdk_draw_line (VarSplit.AdrWidgetSpectre->window, - gc, - points, - VarSplit.MaxScale_1 [ points ] . y, - points, - VarSplit.MinScale_1 [ points ] . y - ); + if( k >= VarSplit.MaxPointsInTab ) + k = VarSplit.MaxPointsInTab ; - // MaxScale_2 - if (begin >= SelBegin && begin <= SelEnd) { - CRAYON_BLEU_CLAIR_PLUS // LA SELECTION - } else { - CRAYON_GRIS_CLAIR // LA NON SELECTION - } - gdk_draw_line (VarSplit.AdrWidgetSpectre->window, - gc, - points, - VarSplit.MaxScale_2 [ points ] . y, - points, - VarSplit.MinScale_2 [ points ] . y - ); - } - - // AFFICHE CURSEUR DEBUT - if (SelBegin >= save_begin && SelBegin < Len) { - CRAYON_ORANGE - gdk_draw_line ( - VarSplit.AdrWidgetSpectre->window, - gc, - SelBegin -save_begin, - VARSPLIT_SPECTRE_Y, - SelBegin - save_begin, - VARSPLIT_SPECTRE_Y + VARSPLIT_SPECTRE_H - ); - } - - // AFFICHE CURSEUR FIN - if (VarSplit.SelecteurActif == VarSplit.NbrSelecteurs -1) SelEnd --; - if (SelEnd >= save_begin && SelEnd < Len) { - CRAYON_VERT - gdk_draw_line ( - VarSplit.AdrWidgetSpectre->window, - gc, - SelEnd - save_begin, - VARSPLIT_SPECTRE_Y, - SelEnd - save_begin, - VARSPLIT_SPECTRE_Y + VARSPLIT_SPECTRE_H - ); - } + y_max = xaxis - VarSplit.Tab[ k ].Max / scale; + y_min = xaxis + fabs( VarSplit.Tab[ k ].Min ) / scale; - // AFFICHE LE CURSEUR AUDIO - if (VarSplit.PercentActivePlay >= 0.0) { - MarkerOld = (gint)(((gdouble)SplitSpectre_get_with() * VarSplit.PercentActivePlay) / 100.0); - if (MarkerOld >= save_begin && MarkerOld < Len) { - CRAYON_ROUGE - gdk_draw_line ( - VarSplit.AdrWidgetSpectre->window, - gc, - MarkerOld - save_begin, - VARSPLIT_SPECTRE_Y, - MarkerOld - save_begin, - VARSPLIT_SPECTRE_Y + VARSPLIT_SPECTRE_H -2 - ); - gdk_draw_rectangle ( - VarSplit.AdrWidgetSpectre->window, - gc, - TRUE, - MarkerOld - save_begin -6, - VARSPLIT_SPECTRE_Y + VARSPLIT_SPECTRE_H -12, - 14, - 12 - ); + MaxScale_0_y = y_max - (y_max - xaxis) * 1 / SAMPLE_SHADES - 1; + MinScale_0_y = y_min + (xaxis - y_min) * 1 / SAMPLE_SHADES - 1; + cairo_move_to( p_cr, points, MinScale_0_y ); + cairo_rel_line_to( p_cr, 0.0, (MaxScale_0_y - MinScale_0_y) <= 0 ? MaxScale_0_y - MinScale_0_y : 1 ); + bool_cairo_stroke = TRUE; + } + } + if( bool_cairo_stroke ) + cairo_stroke ( p_cr ); + // + // SELECT + // ... 2 / SAMPLE_SHADES + // + bool_cairo_stroke = FALSE; + Begin = save_begin; + cairo_set_source_rgb( p_cr, tab_color[ 2 ].r, tab_color[ 2 ].v, tab_color[ 2 ].b ); + for( points = 0; Begin < End; Begin ++, points ++ ) { + + if (Begin >= SelBegin && Begin <= SelEnd) { + if( points > VarSplit.MaxPointsInTab ) { + // printf("------------------------------- BREAK \n"); + // break; } - } - - // CLOSE DRAW - gdk_gc_destroy (gc); - } -} -// AFFICHAGE DU CURSEUR EN MODE PLAY: GAIN DE TEMPS POUR LE CPU -// -void SplitSpectre_draw_lines_play( void ) -{ - GdkColor gdk_color; - GdkColormap *colormap; - GdkGC *gc; - gint points = 0; - gint AdjValue; - gint begin = 0; - gint end = 0; - gint save_begin = 0; - gint SelBegin = 0; - gint SelEnd = 0; - gint Len; - gint Marker; - - // WAV if bitrate == 8 16 24 32 - if (VarSplit.Tab != NULL && VarSplit.TypeFileIs == FILE_IS_WAV && VarSplit.MaxPointsInTab > 0) { + Percent = ( (gdouble)Begin / SpectreGetWith ) * 100.; + k = ( Percent * (gdouble)VarSplit.MaxPointsInTab ) / 100.; - // PRINT_FUNC_LF(); - - // OPEN DRAW - colormap = gdk_window_get_colormap (VarSplit.AdrWidgetSpectre->window); - gc = gdk_gc_new (VarSplit.AdrWidgetSpectre->window); + if( k >= VarSplit.MaxPointsInTab ) + k = VarSplit.MaxPointsInTab ; - // - begin = - save_begin = - AdjValue = (gint)VarSplit.AdjScroll->value; - Len = - end = begin + VARSPLIT_SPECTRE_WITH; - - Marker = (gint)(((gdouble)SplitSpectre_get_with() * VarSplit.PercentActivePlay) / 100.0); - SelBegin = SplitSelector_get_pos_begin (VarSplit.SelecteurActif); - SelEnd = SplitSelector_get_pos_end (VarSplit.SelecteurActif); - begin = save_begin; + y_max = xaxis - VarSplit.Tab[ k ].Max / scale; + y_min = xaxis + fabs( VarSplit.Tab[ k ].Min ) / scale; - if( -1 == MarkerOld ) - MarkerOld = ( Marker - 20 ); - else MarkerOld -= 20; - - for (points = 0; begin < end; begin ++, points ++) { - - if( begin < MarkerOld || begin > Marker +20 ) { - continue; - } - - CRAYON_BLANC - gdk_draw_line (VarSplit.AdrWidgetSpectre->window, - gc, - points, - VARSPLIT_SPECTRE_Y, - points, - VARSPLIT_SPECTRE_Y + VARSPLIT_SPECTRE_H +1 - ); - - // MaxScale_0 - if (begin >= SelBegin && begin <= SelEnd) { - CRAYON_BLEU // LA SELECTION - } else { - CRAYON_NOIR // LA NON SELECTION + MaxScale_0_y = y_max - (y_max - xaxis) * 2 / SAMPLE_SHADES - 1; + MinScale_0_y = y_min + (xaxis - y_min) * 2 / SAMPLE_SHADES - 1; + cairo_move_to( p_cr, points, MinScale_0_y ); + cairo_rel_line_to( p_cr, 0.0, (MaxScale_0_y - MinScale_0_y) <= 0 ? MaxScale_0_y - MinScale_0_y : 1 ); + bool_cairo_stroke = TRUE; + } + } + if( bool_cairo_stroke ) + cairo_stroke ( p_cr ); + // + // NO SELECT + // ... 2 / SAMPLE_SHADES + // + Begin = save_begin; + cairo_set_source_rgb( p_cr, tab_color[ 3 ].r, tab_color[ 3 ].v, tab_color[ 3 ].b ); + for( points = 0; Begin < End; Begin ++, points ++ ) { + + if (Begin < SelBegin || Begin > SelEnd) { + if( points > VarSplit.MaxPointsInTab ) { + // printf("------------------------------- BREAK \n"); + // break; } - gdk_draw_line (VarSplit.AdrWidgetSpectre->window, - gc, - points, - VarSplit.MaxScale_0 [ points ] . y, - points, - VarSplit.MinScale_0 [ points ] . y - ); + Percent = ( (gdouble)Begin / SpectreGetWith ) * 100.; + k = ( Percent * (gdouble)VarSplit.MaxPointsInTab ) / 100.; - // MaxScale_1 - if (begin >= SelBegin && begin <= SelEnd) { - CRAYON_BLEU_CLAIR // LA SELECTION - } else { - CRAYON_GRIS // LA NON SELECTION - } - gdk_draw_line (VarSplit.AdrWidgetSpectre->window, - gc, - points, - VarSplit.MaxScale_1 [ points ] . y, - points, - VarSplit.MinScale_1 [ points ] . y - ); + if( k >= VarSplit.MaxPointsInTab ) + k = VarSplit.MaxPointsInTab ; - // MaxScale_2 - if (begin >= SelBegin && begin <= SelEnd) { - CRAYON_BLEU_CLAIR_PLUS // LA SELECTION - } else { - CRAYON_GRIS_CLAIR // LA NON SELECTION - } - gdk_draw_line (VarSplit.AdrWidgetSpectre->window, - gc, - points, - VarSplit.MaxScale_2 [ points ] . y, - points, - VarSplit.MinScale_2 [ points ] . y - ); - } - - // AFFICHE CURSEUR DEBUT - if (SelBegin >= save_begin && SelBegin < Len) { - CRAYON_ORANGE - gdk_draw_line ( - VarSplit.AdrWidgetSpectre->window, - gc, - SelBegin -save_begin, - VARSPLIT_SPECTRE_Y, - SelBegin - save_begin, - VARSPLIT_SPECTRE_Y + VARSPLIT_SPECTRE_H - ); - } - - // AFFICHE CURSEUR FIN - if (VarSplit.SelecteurActif == VarSplit.NbrSelecteurs -1) SelEnd --; - if (SelEnd >= save_begin && SelEnd < Len) { - CRAYON_VERT - gdk_draw_line ( - VarSplit.AdrWidgetSpectre->window, - gc, - SelEnd - save_begin, - VARSPLIT_SPECTRE_Y, - SelEnd - save_begin, - VARSPLIT_SPECTRE_Y + VARSPLIT_SPECTRE_H - ); - } + y_max = xaxis - VarSplit.Tab[ k ].Max / scale; + y_min = xaxis + fabs( VarSplit.Tab[ k ].Min ) / scale; - // AFFICHE LE CURSEUR AUDIO - if (VarSplit.PercentActivePlay >= 0.0) { - if (Marker >= save_begin && Marker < Len) { - CRAYON_ROUGE - gdk_draw_line ( - VarSplit.AdrWidgetSpectre->window, - gc, - Marker - save_begin, - VARSPLIT_SPECTRE_Y, - Marker - save_begin, - VARSPLIT_SPECTRE_Y + VARSPLIT_SPECTRE_H -2 - ); - gdk_draw_rectangle ( - VarSplit.AdrWidgetSpectre->window, - gc, - TRUE, - Marker - save_begin -6, - VARSPLIT_SPECTRE_Y + VARSPLIT_SPECTRE_H -12, - 14, - 12 - ); + MaxScale_0_y = y_max - (y_max - xaxis) * 0 / SAMPLE_SHADES; + MinScale_0_y = y_min + (xaxis - y_min) * 0 / SAMPLE_SHADES; + cairo_move_to( p_cr, points, MinScale_0_y ); + cairo_rel_line_to( p_cr, 0.0, (MaxScale_0_y - MinScale_0_y) <= 0 ? MaxScale_0_y - MinScale_0_y : 1 ); + bool_cairo_stroke = TRUE; + } + } + if( bool_cairo_stroke ) + cairo_stroke ( p_cr ); + + // SelBegin = SplitSelector_get_pos_begin (VarSplit.SelecteurActif); + // SelEnd = SplitSelector_get_pos_end (VarSplit.SelecteurActif); + + // LIGNE SELECTEUR ACTIF DEBUT + if (SelBegin >= save_begin && SelBegin < Len) { + cairo_set_source_rgb( p_cr, 244. / 255., 162. / 255., 87. / 255. ); + cairo_move_to( p_cr, SelBegin -save_begin, 0.0 ); + cairo_rel_line_to( p_cr, 0.0, allocation.height ); + cairo_stroke ( p_cr ); + } + + // LIGNE SELECTEUR ACTIF FIN + if (VarSplit.SelecteurActif == VarSplit.NbrSelecteurs -1) SelEnd --; + if (SelEnd >= save_begin && SelEnd < Len) { + cairo_set_source_rgb( p_cr, 0.0, 1.0, 0.0 ); + cairo_move_to( p_cr, SelEnd - save_begin, 0.0 ); + cairo_rel_line_to( p_cr, 0.0, allocation.height ); + cairo_stroke ( p_cr ); + } + + // AFFICHE LE CURSEUR AUDIO + if (VarSplit.PercentActivePlay >= 0.0) { + MarkerOld = (gint)(((gdouble)SplitSpectre_get_with() * VarSplit.PercentActivePlay) / 100.0); + if (MarkerOld >= save_begin && MarkerOld < Len) { + cairo_set_source_rgb( p_cr, 1.0, 0.0, 0.0 ); + cairo_move_to( p_cr, MarkerOld - save_begin, 0.0 ); + cairo_rel_line_to( p_cr, 0.0, allocation.height ); + cairo_stroke ( p_cr ); + MarkerOld -= 6; + for( points = 0; points <= 12; points ++ ) { + cairo_move_to( p_cr, points + (MarkerOld - save_begin ), allocation.height -12 ); + cairo_rel_line_to( p_cr, 0.0, 12 ); + cairo_stroke ( p_cr ); } } - - // CLOSE DRAW - gdk_gc_destroy (gc); - - MarkerOld = Marker; } } + diff -Nru xcfa-4.3.8/src/split_wav.c xcfa-5.0.1/src/split_wav.c --- xcfa-4.3.8/src/split_wav.c 2013-03-21 10:55:49.000000000 +0000 +++ xcfa-5.0.1/src/split_wav.c 2015-01-30 16:01:16.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : split_wav.c * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License diff -Nru xcfa-4.3.8/src/statusbar.c xcfa-5.0.1/src/statusbar.c --- xcfa-4.3.8/src/statusbar.c 2013-03-21 10:55:49.000000000 +0000 +++ xcfa-5.0.1/src/statusbar.c 2015-01-30 16:01:16.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : statusbar.c * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License @@ -70,7 +70,7 @@ if( VarStatusBar.stop.tv_sec - VarStatusBar.start.tv_sec > 3 ) { - gtk_timeout_remove( VarStatusBar.handler_timeout_conv ); + g_source_remove( VarStatusBar.handler_timeout_conv ); if( _STATUSBAR_ERR_ == VarStatusBar.StatusMess ) { g_free( StatusBar [ VarStatusBar.NoteBook_which ] . MessError ); StatusBar [ VarStatusBar.NoteBook_which ] . MessError = NULL; @@ -93,7 +93,7 @@ VarStatusBar.StatusMess = p_StatusMess; VarStatusBar.bool_timer_activate = TRUE; gettimeofday( &VarStatusBar.start, NULL ); - VarStatusBar.handler_timeout_conv = gtk_timeout_add( 2, StatusBar_timeout, 0 ); + VarStatusBar.handler_timeout_conv = g_timeout_add( 2, StatusBar_timeout, 0 ); } } // diff -Nru xcfa-4.3.8/src/statusbar.h xcfa-5.0.1/src/statusbar.h --- xcfa-4.3.8/src/statusbar.h 2013-03-21 10:55:27.000000000 +0000 +++ xcfa-5.0.1/src/statusbar.h 2015-01-21 22:11:22.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : statusbar.h * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License @@ -33,30 +33,30 @@ typedef enum { - _STATUSBAR_SIMPLE_ = 0, // - _STATUSBAR_WARN_, // - _STATUSBAR_ERR_ // + _STATUSBAR_SIMPLE_ = 0, // + _STATUSBAR_WARN_, // + _STATUSBAR_ERR_ // } STATUS_BAR_MESS; typedef struct { - gchar *Mess; // Type: _STATUSBAR_SIMPLE_ - gchar *MessWarn; // Type: _STATUSBAR_WARN_ - gchar *MessError; // Type: _STATUSBAR_ERR_ + gchar *Mess; // Type: _STATUSBAR_SIMPLE_ + gchar *MessWarn; // Type: _STATUSBAR_WARN_ + gchar *MessError; // Type: _STATUSBAR_ERR_ } STATUSBAR_MESS; STATUSBAR_MESS StatusBar [ NOTEBOOK_PRGEXTERNES +2 ]; // #define NOTEBOOK_DVD_AUDIO 0 - // #define NOTEBOOK_CD_AUDIO 1 - // #define NOTEBOOK_FICHIERS 2 - // #define NOTEBOOK_SPLIT 3 - // #define NOTEBOOK_POCHETTE 4 - // #define NOTEBOOK_OPTIONS 5 - // #define NOTEBOOK_PRGEXTERNES 6 + // #define NOTEBOOK_CD_AUDIO 1 + // #define NOTEBOOK_FICHIERS 2 + // #define NOTEBOOK_SPLIT 3 + // #define NOTEBOOK_POCHETTE 4 + // #define NOTEBOOK_OPTIONS 5 + // #define NOTEBOOK_PRGEXTERNES 6 void StatusBar_remove( void ); void StatusBar_set_mess( - gint p_which, // NOTEBOOK_DVD_AUDIO .. NOTEBOOK_PRGEXTERNES + gint p_which, // NOTEBOOK_DVD_AUDIO .. NOTEBOOK_PRGEXTERNES STATUS_BAR_MESS p_StatusMess, // _STATUSBAR_SIMPLE_ || _STATUSBAR_WARN_ || _STATUSBAR_ERR_ - gchar *p_mess // Message + gchar *p_mess // Message ); void StatusBar_puts( void ); diff -Nru xcfa-4.3.8/src/tags_aac.c xcfa-5.0.1/src/tags_aac.c --- xcfa-4.3.8/src/tags_aac.c 2013-03-21 10:55:49.000000000 +0000 +++ xcfa-5.0.1/src/tags_aac.c 2015-01-30 16:01:16.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : tags_aac.c * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License diff -Nru xcfa-4.3.8/src/tags_ac3.c xcfa-5.0.1/src/tags_ac3.c --- xcfa-4.3.8/src/tags_ac3.c 2013-03-21 10:55:49.000000000 +0000 +++ xcfa-5.0.1/src/tags_ac3.c 2015-01-30 16:01:16.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : tags_ac3.c * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License diff -Nru xcfa-4.3.8/src/tags_aiff.c xcfa-5.0.1/src/tags_aiff.c --- xcfa-4.3.8/src/tags_aiff.c 2013-03-21 10:55:49.000000000 +0000 +++ xcfa-5.0.1/src/tags_aiff.c 2015-01-30 16:01:16.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : tags_aiff.c * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License diff -Nru xcfa-4.3.8/src/tags_ape.c xcfa-5.0.1/src/tags_ape.c --- xcfa-4.3.8/src/tags_ape.c 2013-03-21 10:55:49.000000000 +0000 +++ xcfa-5.0.1/src/tags_ape.c 2015-01-30 16:01:16.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : tags_ape.c * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License diff -Nru xcfa-4.3.8/src/tags.c xcfa-5.0.1/src/tags.c --- xcfa-4.3.8/src/tags.c 2013-03-21 10:55:49.000000000 +0000 +++ xcfa-5.0.1/src/tags.c 2015-01-30 16:01:16.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : tags.c * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License @@ -402,8 +402,7 @@ gint i; for (i=0; StructTagsFileMp3[ i ].num != -1; i++) - gtk_combo_box_append_text (GTK_COMBO_BOX (widget), StructTagsFileMp3[ i ].name); - + gtk_combo_box_text_append_text( GTK_COMBO_BOX_TEXT(widget), StructTagsFileMp3[ i ].name); } // // diff -Nru xcfa-4.3.8/src/tags_dts.c xcfa-5.0.1/src/tags_dts.c --- xcfa-4.3.8/src/tags_dts.c 2013-03-21 10:55:49.000000000 +0000 +++ xcfa-5.0.1/src/tags_dts.c 2015-01-30 16:01:16.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : tags_dts.c * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License diff -Nru xcfa-4.3.8/src/tags_flac.c xcfa-5.0.1/src/tags_flac.c --- xcfa-4.3.8/src/tags_flac.c 2013-03-21 10:55:49.000000000 +0000 +++ xcfa-5.0.1/src/tags_flac.c 2015-01-30 16:01:16.000000000 +0000 @@ -1,30 +1,30 @@ /* * file : tags_flac.c * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License * * This file is part of XCFA. - * + * * XCFA is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * at your option) any later version. - * + * * XCFA is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. - * + * * You should have received a copy of the GNU General Public License * along with XCFA. If not, see . */ - - + + #ifdef HAVE_CONFIG_H #include "../config.h" #endif @@ -89,13 +89,13 @@ ptrinfo = (INFO_FLAC *)g_malloc0 (sizeof (INFO_FLAC)); if (ptrinfo == NULL) return (NULL); ptrinfo->tags = (TAGS *)tags_alloc (FALSE); - + if ((file = taglib_file_new (detail->namefile))) { - + taglib_set_strings_unicode(FALSE); tag = taglib_file_tag(file); properties = taglib_file_audioproperties(file); - + ptrinfo->tags->Title = g_strdup (taglib_tag_title(tag)); ptrinfo->tags->Artist = g_strdup (taglib_tag_artist(tag)); ptrinfo->tags->Album = g_strdup (taglib_tag_album(tag)); @@ -107,7 +107,7 @@ ptrinfo->tags->Genre = g_strdup (taglib_tag_genre(tag)); ptrinfo->tags->IntGenre = tags_get_genre_by_value (ptrinfo->tags->Genre); ptrinfo->SecTime = taglib_audioproperties_length(properties); - + sec = taglib_audioproperties_length(properties); s = sec % 60; sec /= 60; m = sec % 60; sec /= 60; @@ -128,7 +128,7 @@ printf("channels - %i\n", taglib_audioproperties_channels(properties)); printf("length - %i:%02i\n", minutes, seconds); */ - + taglib_tag_free_strings(); taglib_file_free (file); } diff -Nru xcfa-4.3.8/src/tags.h xcfa-5.0.1/src/tags.h --- xcfa-4.3.8/src/tags.h 2013-05-04 09:20:54.000000000 +0000 +++ xcfa-5.0.1/src/tags.h 2015-01-21 22:12:03.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : tags.h * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright :( C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License @@ -43,9 +43,9 @@ typedef struct { struct { - char ChunkID[4]; //( 4 octets) : contient les lettres "RIFF" pour indiquer que le fichier est codé selon la norme RIFF - guint32 ChunkSize; //( 4 octets) : taille du fichier entier en octets( sans compter les 8 octets de ce champ et le champ précédent CunkID - char Format[4]; //( 4 octets) : correspond au format du fichier donc ici, contient les lettres "WAVE" car fichier est au format wave + char ChunkID[4]; //( 4 octets) : contient les lettres "RIFF" pour indiquer que le fichier est codé selon la norme RIFF + guint32 ChunkSize; //( 4 octets) : taille du fichier entier en octets( sans compter les 8 octets de ce champ et le champ précédent CunkID + char Format[4]; //( 4 octets) : correspond au format du fichier donc ici, contient les lettres "WAVE" car fichier est au format wave } RIFF; TAG_WAV_IS_FMT_BEXT TagWavIsFmtBext; @@ -55,26 +55,26 @@ guint32 Subchunk1Size; //( 4 octets) : taille en octet des données à suivre( qui suivent cette variable) 16 Pour un fichier PCM short AudioFormat; //( 2 octets) : format de compression( une valeur autre que 1 indique une compression) short NumChannels; //( 2 octets) : nombre de canaux - // 1 pour mono, - // 2 pour stéréo - // 3 pour gauche, droit et centre - // 4 pour face gauche, face droit, arrière gauche, arrière droit - // 5 pour gauche, centre, droit, surround( ambiant) - // 6 pour centre gauche, gauche, centre, centre droit, droit, surround( ambiant) - guint32 SampleRate; //( 4 octets) : fréquence d'échantillonage, ex 44100, 44800( nombre d'échantillons par secondes) - guint32 ByteRate; //( 4 octets) : nombre d'octects par secondes - short Blockalign; //( 2 octets) : nombre d'octects pour coder un échantillon + // 1 pour mono, + // 2 pour stéréo + // 3 pour gauche, droit et centre + // 4 pour face gauche, face droit, arrière gauche, arrière droit + // 5 pour gauche, centre, droit, surround( ambiant) + // 6 pour centre gauche, gauche, centre, centre droit, droit, surround( ambiant) + guint32 SampleRate; //( 4 octets) : fréquence d'échantillonage, ex 44100, 44800( nombre d'échantillons par secondes) + guint32 ByteRate; //( 4 octets) : nombre d'octects par secondes + short Blockalign; //( 2 octets) : nombre d'octects pour coder un échantillon short BitsPerSample; //( 2 octets) : nombre de bits pour coder un échantillon } FMT; struct { char Subchunk2ID[4]; //( 4 octets) : contient les lettres "data" pour indiquer que les données à suivre sont les données audio( les échantillons et) guint32 Subchunk2Size; //( 4 octets) : taille des données audio( nombre total d'octets codant les données audio) - short *data; //( 4 octets) : données audio... les échantillons - // DATAS[] : [Octets du Sample 1 du Canal 1] [Octets du Sample 1 du Canal 2] [Octets du Sample 2 du Canal 1] [Octets du Sample 2 du Canal 2] + short *data; //( 4 octets) : données audio... les échantillons + // DATAS[] : [Octets du Sample 1 du Canal 1] [Octets du Sample 1 du Canal 2] [Octets du Sample 2 du Canal 1] [Octets du Sample 2 du Canal 2] } DATA; - FILE *file; // Handle du fichier si different de NULL + FILE *file; // Handle du fichier si different de NULL } WAVE; // diff -Nru xcfa-4.3.8/src/tags_m4a.c xcfa-5.0.1/src/tags_m4a.c --- xcfa-4.3.8/src/tags_m4a.c 2013-03-21 10:55:49.000000000 +0000 +++ xcfa-5.0.1/src/tags_m4a.c 2015-01-30 16:01:16.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : tags_m4a.c * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License diff -Nru xcfa-4.3.8/src/tags_mp3.c xcfa-5.0.1/src/tags_mp3.c --- xcfa-4.3.8/src/tags_mp3.c 2014-01-06 07:36:30.000000000 +0000 +++ xcfa-5.0.1/src/tags_mp3.c 2015-01-30 16:01:16.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : tags_mp3.c * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License diff -Nru xcfa-4.3.8/src/tags_mpc.c xcfa-5.0.1/src/tags_mpc.c --- xcfa-4.3.8/src/tags_mpc.c 2013-03-21 10:55:49.000000000 +0000 +++ xcfa-5.0.1/src/tags_mpc.c 2015-01-30 16:01:16.000000000 +0000 @@ -1,30 +1,30 @@ /* * file : tags_mpc.c * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License * * This file is part of XCFA. - * + * * XCFA is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * at your option) any later version. - * + * * XCFA is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. - * + * * You should have received a copy of the GNU General Public License * along with XCFA. If not, see . */ - - + + #ifdef HAVE_CONFIG_H #include "../config.h" #endif @@ -212,12 +212,12 @@ ptrinfo = (INFO_MPC *)g_malloc0 (sizeof (INFO_MPC)); if (ptrinfo == NULL) return (NULL); ptrinfo->tags = (TAGS *)tags_alloc (FALSE); - + if ((file = taglib_file_new (detail->namefile))) { - + taglib_set_strings_unicode(FALSE); tag = taglib_file_tag(file); - + ptrinfo->tags->Title = g_strdup (taglib_tag_title(tag)); ptrinfo->tags->Artist = g_strdup (taglib_tag_artist(tag)); ptrinfo->tags->Album = g_strdup (taglib_tag_album(tag)); @@ -244,7 +244,7 @@ ptrinfo->tags = (TAGS *)tags_alloc (FALSE); tags_set (detail->namefile, ptrinfo->tags); } - + return (ptrinfo); } diff -Nru xcfa-4.3.8/src/tags_ogg.c xcfa-5.0.1/src/tags_ogg.c --- xcfa-4.3.8/src/tags_ogg.c 2013-03-21 10:55:49.000000000 +0000 +++ xcfa-5.0.1/src/tags_ogg.c 2015-01-30 16:01:16.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : tags_ogg.c * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License diff -Nru xcfa-4.3.8/src/tags_rm.c xcfa-5.0.1/src/tags_rm.c --- xcfa-4.3.8/src/tags_rm.c 2013-03-21 10:55:49.000000000 +0000 +++ xcfa-5.0.1/src/tags_rm.c 2015-01-30 16:01:16.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : tags_rm.c * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License diff -Nru xcfa-4.3.8/src/tags_shn.c xcfa-5.0.1/src/tags_shn.c --- xcfa-4.3.8/src/tags_shn.c 2013-03-21 10:55:49.000000000 +0000 +++ xcfa-5.0.1/src/tags_shn.c 2015-01-30 16:01:16.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : tags_shn.c * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License diff -Nru xcfa-4.3.8/src/tags_wav.c xcfa-5.0.1/src/tags_wav.c --- xcfa-4.3.8/src/tags_wav.c 2013-06-24 03:01:08.000000000 +0000 +++ xcfa-5.0.1/src/tags_wav.c 2015-01-30 16:01:16.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : tags_wav.c * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License @@ -356,14 +356,14 @@ // INFO_WAV *tagswav_remove_info (INFO_WAV *info) { - if (info) { - if (NULL != info->time) { g_free (info->time); info->time = NULL; } - if (NULL != info->hertz) { g_free (info->hertz); info->hertz = NULL; } - if (NULL != info->voie) { g_free (info->voie); info->voie = NULL; } - if (NULL != info->bits) { g_free (info->bits); info->bits = NULL; } - if (NULL != info->NewHertz) { g_free (info->NewHertz); info->NewHertz = NULL; } - if (NULL != info->NewVoie) { g_free (info->NewVoie); info->NewVoie = NULL; } - if (NULL != info->NewBits) { g_free (info->NewBits); info->NewBits = NULL; } + if( NULL != info ) { + if( NULL != info->time ) { g_free( info->time ); info->time = NULL; } + if( NULL != info->hertz ) { g_free( info->hertz ); info->hertz = NULL; } + if( NULL != info->voie ) { g_free( info->voie ); info->voie = NULL; } + if( NULL != info->bits ) { g_free( info->bits ); info->bits = NULL; } + if( NULL != info->NewHertz ) { g_free( info->NewHertz ); info->NewHertz = NULL; } + if( NULL != info->NewVoie ) { g_free( info->NewVoie ); info->NewVoie = NULL; } + if( NULL != info->NewBits ) { g_free( info->NewBits ); info->NewBits = NULL; } info->tags = (TAGS *)tags_remove (info->tags); diff -Nru xcfa-4.3.8/src/tags_wavpack.c xcfa-5.0.1/src/tags_wavpack.c --- xcfa-4.3.8/src/tags_wavpack.c 2013-03-21 10:55:49.000000000 +0000 +++ xcfa-5.0.1/src/tags_wavpack.c 2015-01-30 16:01:16.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : tags_wavpack.c * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License diff -Nru xcfa-4.3.8/src/tags_wma.c xcfa-5.0.1/src/tags_wma.c --- xcfa-4.3.8/src/tags_wma.c 2013-03-21 10:55:49.000000000 +0000 +++ xcfa-5.0.1/src/tags_wma.c 2015-01-30 16:01:16.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : tags_wma.c * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License diff -Nru xcfa-4.3.8/src/translate.c xcfa-5.0.1/src/translate.c --- xcfa-4.3.8/src/translate.c 2013-03-21 10:55:49.000000000 +0000 +++ xcfa-5.0.1/src/translate.c 1970-01-01 00:00:00.000000000 +0000 @@ -1,469 +0,0 @@ - /* - * file : translate.c - * project : xcfa - * with : Gtk-2 - * - * copyright : (C) 2003 - 2013 by Claude Bulin - * - * xcfa - GTK+ implementation of the GNU shell command - * GNU General Public License - * - * This file is part of XCFA. - * - * XCFA is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * at your option) any later version. - * - * XCFA is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with XCFA. If not, see . - */ - - -#ifdef HAVE_CONFIG_H - #include "../config.h" -#endif - -#include -#include - -#ifdef ENABLE_STATIC_LIBRARY - #include "../lib/lib.h" -#endif - -#include "global.h" - - - -void translate_xcfa (void) -{ - typedef struct { - gchar *string; - } TRANS; - - TRANS trans[] = { - - { _("Fichier") }, - { _("Quitter") }, - { _("Outils") }, - { _("Visibilite des champs") }, - { _("Aide") }, - { _("A propos") }, - { _("Lecture") }, - { _(" Choix du peripherique / Lecture du DVD ") }, - { _(" Destination des fichiers ") }, - { _(" Eject ") }, - { _(" Normaliser ") }, - { _("Deplier") }, - { _("Replier") }, - { _(" Vers 2CH: Sub / Ambiance ") }, - { _("Extraire") }, - { _(" DVD ") }, - { _("Lecture") }, - { _(" Choix du peripherique / Lecture du CD ") }, - { _(" Destination des fichiers ") }, - { _(" Eject ") }, - { _("Titre:") }, - { _("Album:") }, - { _("Artiste:") }, - { _(" Annee:") }, - { _(" Genre:") }, - { _(" Piste:") }, - { _(" *.m3u et xspf: ") }, - { _("Commentaire:") }, - { _(" Modification des tags Freedb ") }, - { _("%a [ %a=\"Artist\" ]\n\n%b [ %b=\"Album\" ]\n\n%Tl - Tetsumaki lower\n\nTransforme la chaine en minuscule sauf le premier caractere.\n\nDans le champs 'Titre' depuis [ Modification des tags FreeDB ],\nle ou les caracteres devant etre conserves doivent etre precedes par le caractere %") }, - { _("%a - artiste %b - titre de l'album %c - numero de la piste\n%d - titre de la chanson %e - annee %g - genre\n%f - creation d'un fichier *.m3u et *.xspf %na - no accent\n%u - remplacement de caracteres: %u(AB=C) %u( =_) %Tl - Tetsumaki lower") }, - { _(" Arrangement des titres du CD ") }, - { _("Creation d'un fichier unique au format: ") }, - { _(" et dont le nom sera: ") }, - { _("Ecriture du fichier cue") }, - { _(" Au moins deux selections colonne Wav ") }, - { _("Creation d'un fichier cue\nunique depuis une lecture\ndu cd audio") }, - { _("Creation fichier cue uniquement") }, - { _(" Creation Cue cd ") }, - { _(" Creation d'un fichier unique ") }, - { _("Gestion des tags, titres et fichiers cue") }, - { _(" Normaliser ") }, - { _("definit le serveur a contacter pour les recherches titre") }, - { _("Parametres par defaut") }, - { _(" Serveur ") }, - { _("Choix parmis les differentes bases de donnees pour le CD.") }, - { _("DiscId") }, - { _("Extraire") }, - { _(" CD ") }, - { _(" Importer ") }, - { _(" Destination des conversions ") }, - { _(" Nettoyer ") }, - { _("Appliquer les modifications") }, - { _(" Normalise: ") }, - { _(" Choix niveau dBFS: ") }, - { _(" Fichiers ") }, - { _("Appliquer les modifications") }, - { _(" Wav ") }, - { _("Appliquer") }, - { _("Effacer") }, - { _(" Mp3-Ogg ") }, - { _("Titre:") }, - { _("Album:") }, - { _("Artiste:") }, - { _("Commentaire:") }, - { _(" Annee:") }, - { _(" Genre:") }, - { _(" Piste:") }, - { _(" Modif.:") }, - { _("0") }, - { _("Appliquer") }, - { _(" Tags ") }, - { _(" Fichiers ") }, - { _(" Importer ") }, - { _(" Destination des fichiers ") }, - { _("Lecture de 5 secondes apres le marqueur de debut") }, - { _("Index de debut") }, - { _("00h00m00s") }, - { _("lecture") }, - { _("Pause") }, - { _("Index de lecture") }, - { _("label") }, - { _("Lecture de 5 secondes avant le marqueur de fin") }, - { _("Index de fin") }, - { _("00h00m00s") }, - { _("Plage") }, - { _("Duree de la plage active") }, - { _("00h00m00s") }, - { _("Suprimer tous les marqueurs pour les remplacer par un marqueur unique") }, - { _("Le fichier CUE sera enregistre vers 'Destination des fichiers'.") }, - { _("Production fichier Cue") }, - { _("Le resultat du Split sera dirige vers 'Destination des fichiers'.") }, - { _("Split") }, - { _(" Split ") }, - { _("Importation du titre du CD.") }, - { _("Titre CD") }, - { _("Choix d'une nouvelle police.") }, - { _("Texte gras.") }, - { _("Texte italique.") }, - { _("Apres une lecture de CD et un ajout d'etiquette, ce menu permet la mise en forme des titres, auteurs ...") }, - { _("Ajouter du texte editable.") }, - { _("Texte") }, - { _("Saisissez ici un critere de recherche d'images.") }, - { _("Importation des images depuis le Web.") }, - { _("Import images web") }, - { _("Supprimer l'image en selection") }, - { _("AJouter de nouvelles images.") }, - { _("Ouvre un fichier") }, - { _("Enregistrer la page au format png.") }, - { _("Sauvegarde le fichier") }, - { _("Diminution de l'echelle.") }, - { _("Reduit l'agrandissement") }, - { _("Echelle a 100%.") }, - { _("Remet l'echelle a 100%") }, - { _("Augmentation de l'echelle.") }, - { _("Augmente l'agrandissement") }, - { _("Echelle compatible avec la taille de la fenetre.") }, - { _("Adapte l'echelle a la taille de la fenetre") }, - { _("Emplacement de sauvegarde des fichiers.") }, - { _("Nom (sans extention) du fichier a sauvegarder.") }, - { _("label") }, - { _(" Pochette ") }, - { _("Nice") }, - { _(" Priorite systeme ") }, - { _("Indiquez ici le dossier sur votre systeme qui servira de lieu\nde stockage provisoire pendant les differentes conversions.\n") }, - { _(" Dossier provisoire des conversions ") }, - { _("button") }, - { _(" Jouer une musique en fin de tache ") }, - { _(" General ") }, - { _("cdparanoia") }, - { _("cdparanoia mode expert") }, - { _("cdparanoia mode expert multi passes") }, - { _("cdda2wav / icedax") }, - { _(" Extraction cd-audio avec: ") }, - { _("HomePage") }, - { _("ManPage ") }, - { _(" Web cdparanoia ") }, - { _("Le fichier LogExpertMode.txt sera cree dans le dossier des extractions") }, - { _("Generation d'un rapport pour: cdparanoia mode expert multi passes") }, - { _("%a - artiste %b - titre de l'album %c - numero de la piste\n%d - titre de la chanson %e - annee %g - genre\n%na - no accent %Tl - Tetsumaki lower\n%u - remplacement de caracteres: %u(AB=C) %u( =_)") }, - { _(" Dossier de stockage ") }, - { _(" CD ") }, - { _("ABR / CBR / VBR / VBR-NEW") }, - { _("Debit") }, - { _("Mode") }, - { _(" Lame (fichier mp3): ") }, - { _("Par defaut") }, - { _(" Options LAME ") }, - { _("Site officiel") }, - { _("Wiki mp3 ") }, - { _("Wiki ") }, - { _("ManPage ") }, - { _(" Web Lame ") }, - { _("[") }, - { _("string option interne") }, - { _("]") }, - { _(" Options experts, definies par l'utilisateur - lame (wav -> mp3) ") }, - { _(" Mp3 ") }, - { _(" Mode") }, - { _(" Mode flux (streaming)") }, - { _(" Debit") }, - { _(" Oggenc (fichier ogg): ") }, - { _("Par defaut") }, - { _(" Options OGGENC ") }, - { _("Wiki ") }, - { _("ManPage") }, - { _(" Web Oggenc ") }, - { _("[") }, - { _("string option interne") }, - { _("]") }, - { _(" Options experts, definies par l'utilisateur - oggenc (wav -> ogg) ") }, - { _(" Oggenc ") }, - { _("Taux de compression") }, - { _(" Flac (fichier flac): ") }, - { _("Par defaut") }, - { _(" Options FLAC ") }, - { _("Site officiel") }, - { _("Framasoft ") }, - { _("ManPage ") }, - { _(" Web Flac ") }, - { _("[") }, - { _("string option interne") }, - { _("]") }, - { _(" Options experts, definies par l'utilisateur - flac (wav -> flac) ") }, - { _(" Flac ") }, - { _(" Qualite") }, - { _(" Mac (fichier ape): ") }, - { _("Par defaut") }, - { _(" Options MAC ") }, - { _("Wiki") }, - { _(" Web Mac ") }, - { _("[") }, - { _("string option interne") }, - { _("]") }, - { _(" Options experts, definies par l'utilisateur - mac (wav -> ape) ") }, - { _(" Mac ") }, - { _("Compression") }, - { _("Son") }, - { _("Mode hybride") }, - { _("Fichier de correction") }, - { _("Compression maximum") }, - { _("Signature MD5") }, - { _("Extra encode processing") }, - { _(" WavPack (fichier wv): ") }, - { _("Par defaut") }, - { _(" Options WAVPACK ") }, - { _("Wiki ") }, - { _("ManPage") }, - { _(" Web Wavpack ") }, - { _("[") }, - { _("string option interne") }, - { _("]") }, - { _(" Options experts, definies par l'utilisateur - wavpack (wav -> wv) ") }, - { _(" Wavpack ") }, - { _(" MusePack (fichier mpc): ") }, - { _("Par defaut") }, - { _(" Options MUSEPACK ") }, - { _("Site officiel") }, - { _("Framasoft ") }, - { _(" Web Musepack ") }, - { _("[") }, - { _("string option interne") }, - { _("]") }, - { _(" Options experts, definies par l'utilisateur - musepack (wav -> mpc) ") }, - { _(" Musepack ") }, - { _(" Qualite VBR / Debit ABR") }, - { _(" VBR / ABR") }, - { _(" Conteneur") }, - { _(" Faac (fichier .m4a): ") }, - { _("Par defaut") }, - { _(" Options FAAC ") }, - { _("Site officiel ") }, - { _("Web Info ") }, - { _("ManPage") }, - { _(" Web Faac ") }, - { _("[") }, - { _("string option interne") }, - { _("]") }, - { _(" Options experts, definies par l'utilisateur - faac (wav -> m4a) ") }, - { _(" Faac ") }, - { _(" Stereo: Qualite en kbit/s") }, - { _(" Mono: Qualite en kbit/s") }, - { _(" AacplusEnc (fichier .aac): ") }, - { _("Par defaut") }, - { _(" Options AacPlusEnc ") }, - { _("Site officiel ") }, - { _("Web Info ") }, - { _("ManPage") }, - { _(" Web AacPlusEnc ") }, - { _(" AacplusEnc ") }, - { _("Artiste") }, - { _("Titre") }, - { _("Album") }, - { _("Numero") }, - { _("Genre") }, - { _("Annee") }, - { _("Commentaire") }, - { _(" Exportation de ") }, - { _(" Tags ") }, - { _(" Preferences ") }, - { _("SCAN") }, - { _(" Installation ") }, - { _(" Votre systeme utilise ... ") }, - { _("\nPour installer les programmes externes requis,\nveuillez utiliser l'installateur de votre distribution Gnu/Linux.\n") }, - { _("Le programme XCFA_INSTALL_ALL ecrit en Perl vous sera utile en ligne de commande pour une installation des programmes complementaire.") }, - { _(" Informations ") }, - { _(" Application externes ") }, - { _("parametres:") }, - { _("\n konqueror : newTab\n iceweasel : -new-window -new-tab \n") }, - { _("Navigateur") }, - { _("parametres:") }, - { _("Lecteurs audio") }, - { _(" Navigateurs / Lecteurs audio ") }, - { _(" Applications externes ") }, - { _("Scan en cours ...") }, - { _("Scan du support en cours ...") }, - { _("Detail extraction mode expert") }, - { _("Modification des champs") }, - { _("\nModification des champs\n") }, - { _("Titre") }, - { _("Play") }, - { _("Temps") }, - { _("Format") }, - { _("Choix") }, - { _("Normalise") }, - { _("Nom") }, - { _(" Visibilite ") }, - { _("Nom a gauche") }, - { _("Nom au centre") }, - { _("Nom a droite") }, - { _("DVD") }, - { _("Play") }, - { _("Wav") }, - { _("Flac") }, - { _("Ape") }, - { _("Wavpack") }, - { _("Ogg") }, - { _("M4a") }, - { _("Aac") }, - { _("Musepack") }, - { _("Mp3") }, - { _("Num") }, - { _("Time") }, - { _("Normalise") }, - { _("Nom") }, - { _(" Visibilite ") }, - { _("Nom a gauche") }, - { _("Nom au centre") }, - { _("Nom a droite") }, - { _("CD") }, - { _("Play") }, - { _("Trash") }, - { _("Type") }, - { _("Wav") }, - { _("Flac") }, - { _("Ape") }, - { _("Wavpack") }, - { _("Ogg") }, - { _("M4a") }, - { _("Aac") }, - { _("Musepack") }, - { _("Mp3") }, - { _("Time") }, - { _("Normalise") }, - { _("Replaygain") }, - { _("Nom") }, - { _(" Visibilite ") }, - { _("Nom a gauche") }, - { _("Nom au centre") }, - { _("Nom a droite") }, - { _("CONVERSIONS") }, - { _("Hertz") }, - { _("New Hertz") }, - { _("Voie") }, - { _("New Voie") }, - { _("Bits") }, - { _("New Bits") }, - { _("Nom") }, - { _(" Visibilite ") }, - { _("Nom a gauche") }, - { _("Nom au centre") }, - { _("Nom a droite") }, - { _("WAV") }, - { _("Type") }, - { _("Bitrate") }, - { _("New Bitrate") }, - { _("Size") }, - { _("Time") }, - { _("Nom") }, - { _(" Visibilite ") }, - { _("Nom a gauche") }, - { _("Nom au centre") }, - { _("Nom a droite") }, - { _("MP3-OGG") }, - { _("Type") }, - { _("Time") }, - { _("Nom") }, - { _(" Visibilite ") }, - { _("Nom a gauche") }, - { _("Nom au centre") }, - { _("Nom a droite") }, - { _("TAGS") }, - { _("Selection globale") }, - { _("Deselection globale") }, - { _("Retour") }, - { _("About X Convert File Audio") }, - { _("Author") }, - { _("Licence") }, - { _(" Informations ") }, - { _(" Machine ") }, - { _("Ingenieurs du son\n") }, - { _("\nGraphisme\n") }, - { _("Traduction Anglaise\n\n\n") }, - { _("\nTraduction Allemande") }, - { _("\nCodeur Xcfa") }, - { _("\nElementSpeak pour Xcfa ") }, - { _("\nCodeur pages Web") }, - { _("\nTraduction Italienne") }, - { _("\n\nPages a visiter\n") }, - { _("Linux On The Root") }, - { _("Frugalware") }, - { _("Road2Mayotte") }, - { _("La Linuxerie") }, - { _("Audioptimisation by Dzef") }, - { _("Tuxfamily") }, - { _("Framasoft") }, - { _("Ekd (EnKoDeur-Mixeur)") }, - { _("Bishop's page") }, - { _("Je suis libre") }, - { _("Debian Multimedia") }, - { _("\nForum\n") }, - { _("XCFA Vorstellung ") }, - { _("XCFA LinuxForen.de") }, - { _("Forum Xcfa") }, - { _("\nDocumentation\n") }, - { _("Wiki Xcfa par Shankarius") }, - { _("Doc Xcfa par Patachon") }, - { _("Ogg Vorbis explique par Shankarius") }, - { _("La normalisation expliquee par Dzef") }, - { _("Xcfa sur Linux On The Root") }, - { _(" Contributions ") }, - { _(" License ") }, - { _("OK") } - - }; - - if (*trans [ 0 ] . string); -} - - - - - - - - - - - diff -Nru xcfa-4.3.8/src/treeview.c xcfa-5.0.1/src/treeview.c --- xcfa-4.3.8/src/treeview.c 2013-03-21 10:55:49.000000000 +0000 +++ xcfa-5.0.1/src/treeview.c 1970-01-01 00:00:00.000000000 +0000 @@ -1,517 +0,0 @@ - /* - * file : treeview.c - * project : xcfa - * with : Gtk-2 - * - * copyright : (C) 2003 - 2013 by Claude Bulin - * - * xcfa - GTK+ implementation of the GNU shell command - * GNU General Public License - * - * This file is part of XCFA. - * - * XCFA is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * at your option) any later version. - * - * XCFA is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with XCFA. If not, see . - */ - - -#ifdef HAVE_CONFIG_H - #include "../config.h" -#endif - -#include -#include -#include -#include - -#ifdef ENABLE_STATIC_LIBRARY - #include "../lib/lib.h" -#endif - -#include "global.h" -#include "dvd.h" -#include "cd_audio.h" -#include "file.h" -#include "configuser.h" -#include "treeview.h" - - - -#define MAX_DATAS_STRUCT_RADIOBUTTONS 6 - -typedef struct { - gchar *NameLeft; - gchar *NameCenter; - gchar *NameRight; - GtkCellRenderer **AdrRenderer; - GtkTreeViewColumn **AdrTreeViewColumn; - gint Pos; -} TAB_POSNAME; - -TAB_POSNAME TabPosName [ MAX_DATAS_STRUCT_RADIOBUTTONS ] = { - {"radiobutton_nameleft_dvd", "radiobutton_namecenter_dvd", "radiobutton_nameright_dvd", - &var_dvd.Renderer, &var_dvd.Adr_Column_Nom, - 1}, - {"radiobutton_nameleft_cd", "radiobutton_namecenter_cd", "radiobutton_nameright_cd", - &var_cd.Renderer, &var_cd.Adr_Column_Nom, - 1}, - {"radiobutton_nameleft_allfile", "radiobutton_namecenter_allfile", "radiobutton_nameright_allfile", - &var_file.Renderer, &var_file.Adr_ColumnFileName, - 1}, - {"radiobutton_nameleft_wav", "radiobutton_namecenter_wav", "radiobutton_nameright_wav", - &var_file_wav.Renderer, &var_file_wav.Adr_ColumnFileWavName, - 1}, - {"radiobutton_nameleft_mp3ogg", "radiobutton_namecenter_mp3ogg", "radiobutton_nameright_mp3ogg", - &var_file_mp3ogg.Renderer, &var_file_mp3ogg.Adr_ColumnFileMp3OggName, - 1}, - {"radiobutton_nameleft_tags", "radiobutton_namecenter_tags", "radiobutton_nameright_tags", - &var_file_tags.Renderer, &var_file_tags.Adr_ColumnFileTagsName, - 1} - } ; - - - - -#define POS_STRUCT_DVD 00 -#define POS_STRUCT_CD 07 -#define POS_STRUCT_CONVERSIONS 21 -#define POS_STRUCT_WAV 37 -#define POS_STRUCT_MP3OGG 44 -#define POS_STRUCT_TAGS 50 -#define MAX_DATAS_STRUCT_TREEVIEW 53 - -typedef struct { - - GtkWidget *AdrWin; - gboolean IsShow; - gboolean BoolNoEnter; - gint PageNotebook; - -} VAR_TREEVIEW; - -VAR_TREEVIEW VarTreeView = { - NULL, - FALSE, - TRUE, - 0 -}; - -typedef struct { - gchar *Name; - gboolean BoolIsVisible; - GtkTreeViewColumn **AdrTreeViewColumn; -} TAB_SHOWHIDE; - -TAB_SHOWHIDE TabShowHide [ MAX_DATAS_STRUCT_TREEVIEW ] = { -// -// Name BoolIsVisible: DVD, CD, FILE, WAV, MP3OGG, TAGS -// | AdrTreeViewColumn -// POS_STRUCT_DVD = 0 | | - {"checkbutton_titre_dvd", TRUE, &var_dvd.Adr_Column_Titres}, - {"checkbutton_play_dvd", TRUE, &var_dvd.Adr_Column_Play}, - {"checkbutton_temps_dvd", TRUE, &var_dvd.Adr_Column_Temps}, - {"checkbutton_format_dvd", TRUE, &var_dvd.Adr_Column_Format}, - {"checkbutton_choix_dvd", TRUE, &var_dvd.Adr_Column_Choix}, - {"checkbutton_normalise_dvd", TRUE, &var_dvd.Adr_Column_Normalise}, - {"checkbutton_nom_dvd", TRUE, &var_dvd.Adr_Column_Nom}, - // POS_STRUCT_CD = 7 - {"checkbutton_play_cd", TRUE, &var_cd.Adr_Column_Play}, - {"checkbutton_wav_cd", TRUE, &var_cd.Adr_Column_Wav}, - {"checkbutton_flac_cd", TRUE, &var_cd.Adr_Column_Flac}, - {"checkbutton_ape_cd", TRUE, &var_cd.Adr_Column_Ape}, - {"checkbutton_wavpack_cd", TRUE, &var_cd.Adr_Column_Wavpack}, - {"checkbutton_ogg_cd", TRUE, &var_cd.Adr_Column_Ogg}, - {"checkbutton_m4a_cd", TRUE, &var_cd.Adr_Column_M4a}, - {"checkbutton_aac_cd", TRUE, &var_cd.Adr_Column_Aac}, - {"checkbutton_musepack_cd", TRUE, &var_cd.Adr_Column_Mpc}, - {"checkbutton_mp3_cd", TRUE, &var_cd.Adr_Column_Mp3}, - {"checkbutton_num_cd", TRUE, &var_cd.Adr_Column_Num}, - {"checkbutton_time_cd", TRUE, &var_cd.Adr_Column_Time}, - {"checkbutton_normalise_cd", TRUE, &var_cd.Adr_Column_Normalise}, - {"checkbutton_nom_cd", TRUE, &var_cd.Adr_Column_Nom}, - // POS_STRUCT_CONVERSIONS = 21 - {"checkbutton_play_allfile", TRUE, &var_file.Adr_ColumnFilePlay}, - {"checkbutton_trash_allfile", TRUE, &var_file.Adr_ColumnFileTrash}, - {"checkbutton_type_allfile", TRUE, &var_file.Adr_ColumnFileType}, - {"checkbutton_wav_allfile", TRUE, &var_file.Adr_ColumnFileWav}, - {"checkbutton_flac_allfile", TRUE, &var_file.Adr_ColumnFileFlac}, - {"checkbutton_ape_allfile", TRUE, &var_file.Adr_ColumnFileApe}, - {"checkbutton_wavpack_allfile", TRUE, &var_file.Adr_ColumnFileWavPack}, - {"checkbutton_ogg_allfile", TRUE, &var_file.Adr_ColumnFileOgg}, - {"checkbutton_m4a_allfile", TRUE, &var_file.Adr_ColumnFileM4a}, - {"checkbutton_aac_allfile", TRUE, &var_file.Adr_ColumnFileAac}, - {"checkbutton_musepack_allfile", TRUE, &var_file.Adr_ColumnFileMpc}, - {"checkbutton_mp3_allfile", TRUE, &var_file.Adr_ColumnFileMp3}, - {"checkbutton_time_allfile", TRUE, &var_file.Adr_ColumnFileTime}, - {"checkbutton_normalise_allfile", TRUE, &var_file.Adr_ColumnFileNormalize}, - {"checkbutton_replaygain_allfile", TRUE, &var_file.Adr_ColumnFileReplayGain}, - {"checkbutton_nom_allfile", TRUE, &var_file.Adr_ColumnFileName}, - // POS_STRUCT_WAV = 37 - {"checkbutton_hertz_wav", TRUE, &var_file_wav.Adr_ColumnFileWavHertz}, - {"checkbutton_newhertz_wav", TRUE, &var_file_wav.Adr_ColumnFileWavNewHertz}, - {"checkbutton_voie_wav", TRUE, &var_file_wav.Adr_ColumnFileWavVoie}, - {"checkbutton_newvoie_wav", TRUE, &var_file_wav.Adr_ColumnFileWavNewVoie}, - {"checkbutton_bits_wav", TRUE, &var_file_wav.Adr_ColumnFileWavBits}, - {"checkbutton_newbits_wav", TRUE, &var_file_wav.Adr_ColumnFileWavNewBits}, - {"checkbutton_nom_wav", TRUE, &var_file_wav.Adr_ColumnFileWavName}, - // POS_STRUCT_MP3OGG = 44 - {"checkbutton_type_mp3ogg", TRUE, &var_file_mp3ogg.Adr_ColumnFileMp3OggType}, - {"checkbutton_bitrate_mp3ogg", TRUE, &var_file_mp3ogg.Adr_ColumnFileMp3OggBitrate}, - {"checkbutton_nexbitrate_mp3ogg", TRUE, &var_file_mp3ogg.Adr_ColumnFileMp3OggNewBitrate}, - {"checkbutton_size_mp3ogg", TRUE, &var_file_mp3ogg.Adr_ColumnFileMp3OggSize}, - {"checkbutton_time_mp3ogg", TRUE, &var_file_mp3ogg.Adr_ColumnFileMp3OggTime}, - {"checkbutton_nom_mp3ogg", TRUE, &var_file_mp3ogg.Adr_ColumnFileMp3OggName}, - // POS_STRUCT_TAGS = 50 - {"checkbutton_type_tags", TRUE, &var_file_tags.Adr_ColumnFileTagsType}, - {"checkbutton_time_tags", TRUE, &var_file_tags.Adr_ColumnFileTagsTime}, - {"checkbutton_nom_tags", TRUE, &var_file_tags.Adr_ColumnFileTagsName} - }; - - - -// SET ETAT FIELDS TO STRING-ETAT FOR SAVE CONFIG -// -void treeview_get_etat_fields (void) -{ - gint cpt; - - VarTreeView.BoolNoEnter = TRUE; - - // Remove string - if (NULL != Config.StringBoolFieldsIsVisible) { - g_free (Config.StringBoolFieldsIsVisible); - Config.StringBoolFieldsIsVisible = NULL; - } - // Allocate string - Config.StringBoolFieldsIsVisible = g_strnfill (MAX_DATAS_STRUCT_TREEVIEW +4, '1'); - - // Set 1 (TRUE) is visible else set 0 (FALSE) - for (cpt = POS_STRUCT_DVD; cpt < MAX_DATAS_STRUCT_TREEVIEW; cpt ++) { - Config.StringBoolFieldsIsVisible [ cpt ] = (TabShowHide [ cpt ].BoolIsVisible == FALSE) ? '0' : '1'; - } - Config.StringBoolFieldsIsVisible [ cpt ] = '\0'; - - VarTreeView.BoolNoEnter = FALSE; -} -// CALL FROM MAIN.C -// -void treeview_set_etat_fields (void) -{ - gint cpt; - - if (NULL == Config.StringBoolFieldsIsVisible) { - treeview_get_etat_fields (); - } - - VarTreeView.BoolNoEnter = TRUE; - - // Set 1 (TRUE) is visible else set 0 (FALSE) - for (cpt = POS_STRUCT_DVD; cpt < MAX_DATAS_STRUCT_TREEVIEW; cpt ++) { - TabShowHide [ cpt ].BoolIsVisible = (Config.StringBoolFieldsIsVisible [ cpt ] == '0') ? FALSE : TRUE; - // Place le CheckButton avec cet etat - gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (GLADE_GET_OBJECT(TabShowHide [ cpt ].Name)), TabShowHide [ cpt ].BoolIsVisible); - gtk_tree_view_column_set_visible (GTK_TREE_VIEW_COLUMN (*TabShowHide [ cpt ].AdrTreeViewColumn), TabShowHide [ cpt ].BoolIsVisible); - } - - VarTreeView.BoolNoEnter = FALSE; -} -// -// -gboolean on_wind_treeview_delete_event (GtkWidget *widget, GdkEvent *event, gpointer user_data) -{ - treeview_get_etat_fields (); - VarTreeView.IsShow = FALSE; - gtk_widget_hide (VarTreeView.AdrWin); - return TRUE; -} -// -// -gboolean on_wind_treeview_destroy_event (GtkWidget *widget, GdkEvent *event, gpointer user_data) -{ - treeview_get_etat_fields (); - VarTreeView.IsShow = FALSE; - gtk_widget_hide (VarTreeView.AdrWin); - return TRUE; -} -// -// -void on_button_quit_windtreeview_clicked (GtkButton *button, gpointer user_data) -{ - treeview_get_etat_fields (); - VarTreeView.IsShow = FALSE; - gtk_widget_hide (VarTreeView.AdrWin); -} -// -// -void treeview_SetGlobal (gboolean BoolVisible) -{ - gint cpt; - - VarTreeView.BoolNoEnter = TRUE; - - switch(VarTreeView.PageNotebook) { - case 0 : - for (cpt = POS_STRUCT_DVD; cpt < POS_STRUCT_CD; cpt ++) { - TabShowHide [ cpt ].BoolIsVisible = BoolVisible; - gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (GLADE_GET_OBJECT(TabShowHide [ cpt ].Name)), TabShowHide [ cpt ].BoolIsVisible); - gtk_tree_view_column_set_visible (GTK_TREE_VIEW_COLUMN (*TabShowHide [ cpt ].AdrTreeViewColumn), TabShowHide [ cpt ].BoolIsVisible); - } - break; - case 1 : - for (cpt = POS_STRUCT_CD; cpt < POS_STRUCT_CONVERSIONS; cpt ++) { - TabShowHide [ cpt ].BoolIsVisible = BoolVisible; - gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (GLADE_GET_OBJECT(TabShowHide [ cpt ].Name)), TabShowHide [ cpt ].BoolIsVisible); - gtk_tree_view_column_set_visible (GTK_TREE_VIEW_COLUMN (*TabShowHide [ cpt ].AdrTreeViewColumn), TabShowHide [ cpt ].BoolIsVisible); - } - break; - case 2 : - for (cpt = POS_STRUCT_CONVERSIONS; cpt < POS_STRUCT_WAV; cpt ++) { - TabShowHide [ cpt ].BoolIsVisible = BoolVisible; - gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (GLADE_GET_OBJECT(TabShowHide [ cpt ].Name)), TabShowHide [ cpt ].BoolIsVisible); - gtk_tree_view_column_set_visible (GTK_TREE_VIEW_COLUMN (*TabShowHide [ cpt ].AdrTreeViewColumn), TabShowHide [ cpt ].BoolIsVisible); - } - break; - case 3 : - for (cpt = POS_STRUCT_WAV; cpt < POS_STRUCT_MP3OGG; cpt ++) { - TabShowHide [ cpt ].BoolIsVisible = BoolVisible; - gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (GLADE_GET_OBJECT(TabShowHide [ cpt ].Name)), TabShowHide [ cpt ].BoolIsVisible); - gtk_tree_view_column_set_visible (GTK_TREE_VIEW_COLUMN (*TabShowHide [ cpt ].AdrTreeViewColumn), TabShowHide [ cpt ].BoolIsVisible); - } - break; - case 4 : - for (cpt = POS_STRUCT_MP3OGG; cpt < MAX_DATAS_STRUCT_TREEVIEW; cpt ++) { - TabShowHide [ cpt ].BoolIsVisible = BoolVisible; - gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (GLADE_GET_OBJECT(TabShowHide [ cpt ].Name)), TabShowHide [ cpt ].BoolIsVisible); - gtk_tree_view_column_set_visible (GTK_TREE_VIEW_COLUMN (*TabShowHide [ cpt ].AdrTreeViewColumn), TabShowHide [ cpt ].BoolIsVisible); - } - break; - case 5 : - for (cpt = POS_STRUCT_TAGS; cpt < MAX_DATAS_STRUCT_TREEVIEW; cpt ++) { - TabShowHide [ cpt ].BoolIsVisible = BoolVisible; - gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (GLADE_GET_OBJECT(TabShowHide [ cpt ].Name)), TabShowHide [ cpt ].BoolIsVisible); - gtk_tree_view_column_set_visible (GTK_TREE_VIEW_COLUMN (*TabShowHide [ cpt ].AdrTreeViewColumn), TabShowHide [ cpt ].BoolIsVisible); - } - break; - } - treeview_get_etat_fields (); - VarTreeView.BoolNoEnter = FALSE; -} -// -// -void on_button_deselect_global_windtreeview_clicked (GtkButton *button, gpointer user_data) -{ - treeview_SetGlobal (FALSE); -} -// -// -void on_button_select_global_windtreeview_clicked (GtkButton *button, gpointer user_data) -{ - treeview_SetGlobal (TRUE); -} -// -// -void treeview_set_pos_fields_name (void) -{ - if (NULL != Config.StringPosFieldsName && *Config.StringPosFieldsName == '\0') { - g_free (Config.StringPosFieldsName); Config.StringPosFieldsName = NULL; - } - - if (NULL == Config.StringPosFieldsName) { - // Allocate string with datas - Config.StringPosFieldsName = g_strnfill (MAX_DATAS_STRUCT_RADIOBUTTONS +4, '1'); - } -} -// -// -void on_radiobutton_modif_treeview_clicked (GtkButton *button, gpointer user_data) -{ - gint cpt; - - if (TRUE == VarTreeView.BoolNoEnter) return; - - treeview_set_pos_fields_name (); - - for (cpt = POS_STRUCT_DVD; cpt < MAX_DATAS_STRUCT_RADIOBUTTONS; cpt ++) { - if (GTK_BUTTON (button) == GTK_BUTTON (GTK_WIDGET (GLADE_GET_OBJECT(TabPosName [ cpt ].NameLeft)))) { - Config.StringPosFieldsName [ cpt ] = '0'; - TabPosName [ cpt ].Pos = 0; - gtk_tree_view_column_set_alignment (GTK_TREE_VIEW_COLUMN (*TabPosName [ cpt ].AdrTreeViewColumn), 0.0); - g_object_set (*TabPosName [ cpt ].AdrRenderer, "xalign", 0.0, NULL); - break; - } - if (GTK_BUTTON (button) == GTK_BUTTON (GTK_WIDGET (GLADE_GET_OBJECT(TabPosName [ cpt ].NameCenter)))) { - Config.StringPosFieldsName [ cpt ] = '1'; - TabPosName [ cpt ].Pos = 1; - gtk_tree_view_column_set_alignment (GTK_TREE_VIEW_COLUMN (*TabPosName [ cpt ].AdrTreeViewColumn), 0.5); - g_object_set (*TabPosName [ cpt ].AdrRenderer, "xalign", 0.5, NULL); - break; - } - if (GTK_BUTTON (button) == GTK_BUTTON (GTK_WIDGET (GLADE_GET_OBJECT(TabPosName [ cpt ].NameRight)))) { - Config.StringPosFieldsName [ cpt ] = '2'; - TabPosName [ cpt ].Pos = 2; - gtk_tree_view_column_set_alignment (GTK_TREE_VIEW_COLUMN (*TabPosName [ cpt ].AdrTreeViewColumn), 1.0); - g_object_set (*TabPosName [ cpt ].AdrRenderer, "xalign", 1.0, NULL); - break; - } - } -} -// -// -void treeview_radiobutton_set_PosFieldsName (void) -{ - gint cpt; - - treeview_set_pos_fields_name (); - - VarTreeView.BoolNoEnter = TRUE; - - for (cpt = POS_STRUCT_DVD; cpt < MAX_DATAS_STRUCT_RADIOBUTTONS; cpt ++) { - if (Config.StringPosFieldsName [ cpt ] == '0') { - TabPosName [ cpt ].Pos = 0; - gtk_tree_view_column_set_alignment (GTK_TREE_VIEW_COLUMN (*TabPosName [ cpt ].AdrTreeViewColumn), 0.0); - g_object_set (*TabPosName [ cpt ].AdrRenderer, "xalign", 0.0, NULL); - gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (GLADE_GET_OBJECT(TabPosName [ cpt ].NameLeft)), TRUE); - } - else if (Config.StringPosFieldsName [ cpt ] == '1') { - TabPosName [ cpt ].Pos = 1; - gtk_tree_view_column_set_alignment (GTK_TREE_VIEW_COLUMN (*TabPosName [ cpt ].AdrTreeViewColumn), 0.5); - g_object_set (*TabPosName [ cpt ].AdrRenderer, "xalign", 0.5, NULL); - gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (GLADE_GET_OBJECT(TabPosName [ cpt ].NameCenter)), TRUE); - } - else if (Config.StringPosFieldsName [ cpt ] == '2') { - TabPosName [ cpt ].Pos = 2; - gtk_tree_view_column_set_alignment (GTK_TREE_VIEW_COLUMN (*TabPosName [ cpt ].AdrTreeViewColumn), 1.0); - g_object_set (*TabPosName [ cpt ].AdrRenderer, "xalign", 1.0, NULL); - gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (GLADE_GET_OBJECT(TabPosName [ cpt ].NameRight)), TRUE); - } - } - VarTreeView.BoolNoEnter = FALSE; -} -// ACTIVE OU DESACTIVE LA VISIBILITE DU CHAMPS SUITE A CLICK BUTTON -// -void on_checkbutton_modif_treeview_clicked (GtkButton *button, gpointer user_data) -{ - gint cpt; - - if (TRUE == VarTreeView.BoolNoEnter) return; - - for (cpt = POS_STRUCT_DVD; cpt < MAX_DATAS_STRUCT_TREEVIEW; cpt ++) { - if (GTK_BUTTON (button) == GTK_BUTTON (GLADE_GET_OBJECT(TabShowHide [ cpt ].Name))) { - // g_print("cpt = %d\n", cpt); - TabShowHide [ cpt ].BoolIsVisible = (TabShowHide [ cpt ].BoolIsVisible == TRUE) ? FALSE : TRUE; - // Show / Hide la colonne du TreeView - gtk_tree_view_column_set_visible (GTK_TREE_VIEW_COLUMN (*TabShowHide [ cpt ].AdrTreeViewColumn), TabShowHide [ cpt ].BoolIsVisible); - // sortie - break; - } - } -} -// -// -void on_notebook_windtreeview_switch_page (GtkNotebook *notebook, GtkNotebookPage *page, guint page_num, gpointer user_data) -{ - VarTreeView.PageNotebook = page_num; - - switch(VarTreeView.PageNotebook) { - case 0 : - gtk_notebook_set_current_page (GTK_NOTEBOOK (GLADE_GET_OBJECT("notebook_general")), NOTEBOOK_DVD_AUDIO); - break; - case 1 : - gtk_notebook_set_current_page (GTK_NOTEBOOK (GLADE_GET_OBJECT("notebook_general")), NOTEBOOK_CD_AUDIO); - break; - case 2 : - gtk_notebook_set_current_page (GTK_NOTEBOOK (GLADE_GET_OBJECT("notebook_general")), NOTEBOOK_FICHIERS); - gtk_notebook_set_current_page (GTK_NOTEBOOK (GLADE_GET_OBJECT("notebook_in_file")), NOTEBOOK_FICHIERS_CONVERSION); - break; - case 3 : - gtk_notebook_set_current_page (GTK_NOTEBOOK (GLADE_GET_OBJECT("notebook_general")), NOTEBOOK_FICHIERS); - gtk_notebook_set_current_page (GTK_NOTEBOOK (GLADE_GET_OBJECT("notebook_in_file")), NOTEBOOK_FICHIERS_WAV); - break; - case 4 : - gtk_notebook_set_current_page (GTK_NOTEBOOK (GLADE_GET_OBJECT("notebook_general")), NOTEBOOK_FICHIERS); - gtk_notebook_set_current_page (GTK_NOTEBOOK (GLADE_GET_OBJECT("notebook_in_file")), NOTEBOOK_FICHIERS_MP3OGG); - break; - case 5 : - gtk_notebook_set_current_page (GTK_NOTEBOOK (GLADE_GET_OBJECT("notebook_general")), NOTEBOOK_FICHIERS); - gtk_notebook_set_current_page (GTK_NOTEBOOK (GLADE_GET_OBJECT("notebook_in_file")), NOTEBOOK_FICHIERS_TAGS); - - break; - } -} -// -// -void treeview_open_window (void) -{ - if (TRUE == VarTreeView.IsShow) { - gdk_window_raise (VarTreeView.AdrWin->window); - } - else { - if (NULL == VarTreeView.AdrWin) { - VarTreeView.AdrWin = GTK_WIDGET (GLADE_GET_OBJECT("wind_treeview")); - gtk_builder_connect_signals (GtkXcfaProjet, NULL); - } - gtk_window_set_transient_for (GTK_WINDOW(VarTreeView.AdrWin), GTK_WINDOW(WindMain)); - gtk_window_set_modal (GTK_WINDOW (VarTreeView.AdrWin), TRUE); - libutils_set_default_icone_to_win (VarTreeView.AdrWin); - - gtk_widget_show (VarTreeView.AdrWin); - } - VarTreeView.IsShow = TRUE; - gtk_window_set_title (GTK_WINDOW (VarTreeView.AdrWin), "Modification des champs"); - - treeview_set_etat_fields (); - - switch (Config.NotebookGeneral) { - case NOTEBOOK_DVD_AUDIO : - gtk_notebook_set_current_page (GTK_NOTEBOOK (GLADE_GET_OBJECT("notebook_windtreeview")), 0); - break; - case NOTEBOOK_CD_AUDIO : - gtk_notebook_set_current_page (GTK_NOTEBOOK (GLADE_GET_OBJECT("notebook_windtreeview")), 1); - break; - case NOTEBOOK_FICHIERS : - switch (Config.NotebookFile) { - case NOTEBOOK_FICHIERS_CONVERSION : - gtk_notebook_set_current_page (GTK_NOTEBOOK (GLADE_GET_OBJECT("notebook_windtreeview")), 2); - break; - case NOTEBOOK_FICHIERS_WAV : - gtk_notebook_set_current_page (GTK_NOTEBOOK (GLADE_GET_OBJECT("notebook_windtreeview")), 3); - break; - case NOTEBOOK_FICHIERS_MP3OGG : - gtk_notebook_set_current_page (GTK_NOTEBOOK (GLADE_GET_OBJECT("notebook_windtreeview")), 4); - break; - case NOTEBOOK_FICHIERS_TAGS : - gtk_notebook_set_current_page (GTK_NOTEBOOK (GLADE_GET_OBJECT("notebook_windtreeview")), 5); - break; - } - break; - default : - gtk_notebook_set_current_page (GTK_NOTEBOOK (GLADE_GET_OBJECT("notebook_general")), NOTEBOOK_DVD_AUDIO); - } -} - - - - - - - - - - - - - - - - - diff -Nru xcfa-4.3.8/src/treeview.h xcfa-5.0.1/src/treeview.h --- xcfa-4.3.8/src/treeview.h 2013-03-21 10:55:27.000000000 +0000 +++ xcfa-5.0.1/src/treeview.h 1970-01-01 00:00:00.000000000 +0000 @@ -1,38 +0,0 @@ - /* - * file : treeview.h - * project : xcfa - * with : Gtk-2 - * - * copyright : (C) 2003 - 2013 by Claude Bulin - * - * xcfa - GTK+ implementation of the GNU shell command - * GNU General Public License - * - * This file is part of XCFA. - * - * XCFA is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * at your option) any later version. - * - * XCFA is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with XCFA. If not, see . - */ - - -#ifndef treeview_h -#define treeview_h 1 - - -void treeview_open_window (void); -void treeview_set_etat_fields (void); -void treeview_radiobutton_set_PosFieldsName (void); - - -#endif - diff -Nru xcfa-4.3.8/src/web.c xcfa-5.0.1/src/web.c --- xcfa-4.3.8/src/web.c 2013-03-21 10:55:49.000000000 +0000 +++ xcfa-5.0.1/src/web.c 2015-02-05 21:01:53.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : web.c * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License @@ -168,24 +168,24 @@ gtk_notebook_set_current_page (GTK_NOTEBOOK (GLADE_GET_OBJECT("notebook_general")), NOTEBOOK_PRGEXTERNES); gtk_notebook_set_current_page (GTK_NOTEBOOK (GLADE_GET_OBJECT("notebook_app_externes")), NOTEBOOK_OPTIONS_EXTRA); - wininfo_create ( + wind_info_init ( WindMain, - _("PAS de navigateur present"), - _("L'acces au web est impossible car aucun navigateur"), + _("No web browser"), + _("No Web access: no web browser"), "\n", - _("n'est present dans votre configuration."), + _("found in your system."), "\n\n", - _("Veuillez installez un navigateur."), + _("Please install a web browser."), ""); return; } if (CdCurl_test_access_web () == FALSE) { - wininfo_create ( + wind_info_init ( WindMain, - _("La liaison internet est absente"), - _("Vous devez ouvrir l'acces internet"), + _("A web connection is missing"), + _("You need to enable web access"), ""); return; } @@ -229,15 +229,14 @@ gtk_notebook_set_current_page (GTK_NOTEBOOK (GLADE_GET_OBJECT("notebook_general")), NOTEBOOK_PRGEXTERNES); gtk_notebook_set_current_page (GTK_NOTEBOOK (GLADE_GET_OBJECT("notebook_app_externes")), NOTEBOOK_OPTIONS_EXTRA); - wininfo_create ( + wind_info_init ( WindMain, - _("PAS de navigateur present"), + _("No web browser"), + _("No Web access: no web browser"), "\n", - _(" L'acces au web est impossible car aucun navigateur"), - " \n", - _(" n'est present dans votre configuration."), + _("found in your system."), "\n\n", - _(" Veuillez installez un navigateur."), + _("Please install a web browser."), "\n", ""); return; @@ -245,10 +244,10 @@ if (libutils_find_file (NameManPage) == FALSE) { g_print("The application is missing, you must install [ %s ]\n", NameManPage); - wininfo_create ( + wind_info_init ( WindMain, - _("L'application est absente."), - _("Veuillez installer : "), "", NameManPage, "", + _("Application is missing."), + _("Please install : "), "", NameManPage, "", "\n", ""); return; diff -Nru xcfa-4.3.8/src/web.h xcfa-5.0.1/src/web.h --- xcfa-4.3.8/src/web.h 2013-03-21 10:55:27.000000000 +0000 +++ xcfa-5.0.1/src/web.h 2015-01-21 16:28:42.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : web.h * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License diff -Nru xcfa-4.3.8/src/win_about.c xcfa-5.0.1/src/win_about.c --- xcfa-4.3.8/src/win_about.c 2013-03-21 10:56:34.000000000 +0000 +++ xcfa-5.0.1/src/win_about.c 2015-02-27 16:43:31.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : wind_about.c * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License @@ -31,6 +31,7 @@ #endif #include +#include #ifdef ENABLE_STATIC_LIBRARY #include "../lib/lib.h" @@ -43,16 +44,8 @@ - -typedef struct { - - GtkWidget *AdrWin; - gboolean IsShow; - -} VAR_WINABOUT; - -VAR_WINABOUT VarWinAbout = { NULL, FALSE }; - +GtkBuilder *GtkBuilderProjet_wind_about = NULL; +GtkWidget *WindMain_wind_about = NULL; @@ -60,24 +53,27 @@ // gboolean on_wind_about_delete_event (GtkWidget *widget, GdkEvent *event, gpointer user_data) { - gtk_widget_hide (VarWinAbout.AdrWin); - VarWinAbout.IsShow = FALSE; + gtk_widget_destroy( WindMain_wind_about ); + WindMain_wind_about = NULL; + GtkBuilderProjet_wind_about = NULL; return (TRUE); } // // gboolean on_wind_about_destroy_event (GtkWidget *widget, GdkEvent *event, gpointer user_data) { - gtk_widget_hide (VarWinAbout.AdrWin); - VarWinAbout.IsShow = FALSE; + gtk_widget_destroy( WindMain_wind_about ); + WindMain_wind_about = NULL; + GtkBuilderProjet_wind_about = NULL; return (TRUE); } // // void on_button_ok_about_clicked (GtkButton *button, gpointer user_data) { - VarWinAbout.IsShow = FALSE; - gtk_widget_hide (VarWinAbout.AdrWin); + gtk_widget_destroy( WindMain_wind_about ); + WindMain_wind_about = NULL; + GtkBuilderProjet_wind_about = NULL; } // // @@ -90,26 +86,24 @@ #define MAX_TYPE_BUTTON_PAGE_WEB 21 TYPE_BUTTON TypeButton [ MAX_TYPE_BUTTON_PAGE_WEB ] = { {"button_pagexcfa_about", "http://www.xcfa.tuxfamily.org"}, - // {"button01_contrib_about", "http://www.road2mayotte.org/index.html"}, - {"button01_contrib_about", "http://www.road2mayotte.org/blook/"}, - {"button02_contrib_about", "http://e17blog.tuxfamily.org/index.php"}, + {"button01_contrib_about", "http://www.road2mayotte.org/blook/"}, /* TODO */ + {"button02_contrib_about", "http://e17blog.tuxfamily.org/index.php"}, /* TODO ok */ {"button03_contrib_about", "http://ubunteros.tuxfamily.org/spip.php?page=plan"}, {"button04_contrib_about", "http://www.jesuislibre.org"}, - {"button05_contrib_about", "http://audiobezon.dlinkddns.com/"}, + {"button05_contrib_about", "http://audiobezon.dlinkddns.com/"}, /* TODO ok */ {"button06_contrib_about", "http://www.tuxfamily.org"}, {"button07_contrib_about", "http://www.framasoft.net/article4492.html"}, {"button08_contrib_about", "http://ekd.tuxfamily.org"}, - {"button09_contrib_about", "http://defis-libristes.tuxfamily.org/viewforum.php?id=2"}, + {"button09_contrib_about", "http://defis-libristes.tuxfamily.org/viewforum.php?id=2"}, /* TODO */ {"button10_contrib_about", "http://doc.ubuntu-fr.org/xcfa"}, {"button11_contrib_about", "http://unm.arcis.free.fr/spip.php?article109"}, {"button12_contrib_about", "http://ubunteros.tuxfamily.org/spip.php?article168"}, {"button13_contrib_about", "http://ubunteros.tuxfamily.org/spip.php?article159"}, {"button14_contrib_about", "http://ubunteros.tuxfamily.org/spip.php?article30"}, - // {"button15_contrib_about", "http://lalinuxerie.free.fr/"}, {"button15_contrib_about", "http://linuxerie.midiblogs.com/"}, - {"button16_contrib_about", "http://www.debian-multimedia.org/"}, + {"button16_contrib_about", "http://www.deb-multimedia.org/"}, {"button17_contrib_about", "http://frugalware.org/"}, - {"button20_contrib_about", "http://opera-info.de/forum/thread.php?threadid=20506"}, + {"button20_contrib_about", "http://opera-info.de/forum/thread.php?threadid=20506"}, /* TODO ok*/ {"button21_contrib_about", "http://linuxforen.de/forums/showthread.php?p=1693658"}, {"button22_contrib_about", "http://www.alessiotreglia.com/"} }; @@ -117,7 +111,7 @@ gint cpt; for (cpt = 0; cpt < MAX_TYPE_BUTTON_PAGE_WEB; cpt ++) { - if (GTK_BUTTON (button) == GTK_BUTTON (GTK_WIDGET (GLADE_GET_OBJECT(TypeButton [ cpt ].NameWidget)))) { + if (GTK_BUTTON (button) == GTK_BUTTON (GTK_WIDGET (gtk_builder_get_object( GtkBuilderProjet_wind_about, TypeButton [ cpt ].NameWidget)))) { web_goto_url (TypeButton [ cpt ].Url); break; } @@ -127,7 +121,7 @@ // void on_label_button_pagexcfa_about_realize (GtkWidget *widget, gpointer user_data) { - gtk_label_set_markup (GTK_LABEL (widget), _(" Xcfa sur le web")); + gtk_label_set_markup (GTK_LABEL (widget), _(" Xcfa on the web")); } // // @@ -137,7 +131,7 @@ gtk_text_view_set_justification (GTK_TEXT_VIEW (widget), GTK_JUSTIFY_CENTER); gtk_text_view_set_cursor_visible (GTK_TEXT_VIEW (widget), FALSE); gtk_text_buffer_set_text (gtk_text_view_get_buffer (GTK_TEXT_VIEW (widget)), - "\n\nCopyright (C) 2003 - 2013\n\n\n" + "\n\nCopyright (C) 2003 - 2015\n\n\n" "XCFA is free software; you can redistribute it and/or modify\n" "it under the terms of the GNU General Public License as published by\n" "the Free Software Foundation; either version 3 of the License, or\n" @@ -221,7 +215,7 @@ void on_label_author_about_realize (GtkWidget *widget, gpointer user_data) { gtk_label_set_justify (GTK_LABEL(widget), GTK_JUSTIFY_CENTER); - gtk_label_set_markup (GTK_LABEL(widget), "\nCopyright © 2003-2013 - Bulin Claude - fr\n"); + gtk_label_set_markup (GTK_LABEL(widget), "\nCopyright © 2003-2015 - Bulin Claude - fr\n"); } // // @@ -269,23 +263,31 @@ } // // -void WinAbout_open (gchar *title) +gboolean wind_about_init( GtkWidget *FromWindMain ) { - if (TRUE == VarWinAbout.IsShow) { - gdk_window_raise (VarWinAbout.AdrWin->window); + gchar *PackageVersion = NULL; + + if( NULL == (GtkBuilderProjet_wind_about = Builder_open( "xcfa_win_about.glade", GtkBuilderProjet_wind_about ))) { + return( EXIT_FAILURE ); } - else { - if (NULL == VarWinAbout.AdrWin) { - VarWinAbout.AdrWin = GTK_WIDGET (GLADE_GET_OBJECT("wind_about")); - gtk_builder_connect_signals (GtkXcfaProjet, NULL); - } - gtk_window_set_transient_for (GTK_WINDOW(VarWinAbout.AdrWin), GTK_WINDOW(WindMain)); - gtk_window_set_modal (GTK_WINDOW (VarWinAbout.AdrWin), TRUE); - libutils_set_default_icone_to_win (VarWinAbout.AdrWin); - - gtk_widget_show (VarWinAbout.AdrWin); + // Add language support from glade file + gtk_builder_set_translation_domain( GtkBuilderProjet_wind_about, "wind_about" ); + gtk_builder_connect_signals( GtkBuilderProjet_wind_about, NULL ); + + WindMain_wind_about = GTK_WIDGET( gtk_builder_get_object( GtkBuilderProjet_wind_about, "wind_about" )); + if( NULL != FromWindMain ) { + gtk_window_set_transient_for (GTK_WINDOW(WindMain_wind_about), GTK_WINDOW(FromWindMain)); + gtk_window_set_modal (GTK_WINDOW(WindMain_wind_about), TRUE); } - VarWinAbout.IsShow = TRUE; - if (NULL != title) gtk_window_set_title (GTK_WINDOW (VarWinAbout.AdrWin), title); + libutils_set_default_icone_to_win( WindMain_wind_about ); + + PackageVersion = g_strdup_printf( "%s - %s", PACKAGE_NAME, VERSION ); + gtk_window_set_title( GTK_WINDOW( WindMain_wind_about ), PackageVersion ); + g_free( PackageVersion ); + PackageVersion = NULL; + + gtk_widget_show_all( WindMain_wind_about ); + + return( TRUE ); } diff -Nru xcfa-4.3.8/src/win_about.h xcfa-5.0.1/src/win_about.h --- xcfa-4.3.8/src/win_about.h 2013-03-21 10:55:27.000000000 +0000 +++ xcfa-5.0.1/src/win_about.h 2015-02-27 16:28:18.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : wind_about.h * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License @@ -27,7 +27,7 @@ #ifndef win_about_h #define win_about_h 1 -void WinAbout_open (gchar *title); +gboolean wind_about_init( GtkWidget *FromWindMain ); #endif diff -Nru xcfa-4.3.8/src/win_info.c xcfa-5.0.1/src/win_info.c --- xcfa-4.3.8/src/win_info.c 2013-03-21 10:55:49.000000000 +0000 +++ xcfa-5.0.1/src/win_info.c 2015-01-30 16:07:29.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : win_info.c * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License @@ -31,6 +31,7 @@ #include #include +#include #ifdef ENABLE_STATIC_LIBRARY #include "../lib/lib.h" @@ -40,84 +41,85 @@ #include "win_info.h" +GtkBuilder *GtkBuilderProjet_wind_info = NULL; +GtkWidget *WindMain_wind_info = NULL; -typedef struct { - - GtkWidget *AdrWin; - gboolean IsShow; - -} VAR_WININFO; - -VAR_WININFO VarWinInfo = { NULL, FALSE }; - // QUITTER // gboolean on_wind_info_destroy_event( GtkWidget *widget, GdkEvent *event, gpointer user_data ) { - VarWinInfo.IsShow = FALSE; - gtk_widget_hide (VarWinInfo.AdrWin); + gtk_widget_destroy( WindMain_wind_info ); + WindMain_wind_info = NULL; + GtkBuilderProjet_wind_info = NULL; return TRUE; } // QUITTER // gboolean on_wind_info_delete_event( GtkWidget *widget, GdkEvent *event, gpointer user_data ) { - VarWinInfo.IsShow = FALSE; - gtk_widget_hide (VarWinInfo.AdrWin); + gtk_widget_destroy( WindMain_wind_info ); + WindMain_wind_info = NULL; + GtkBuilderProjet_wind_info = NULL; return TRUE; } // QUITTER // void on_button_quitter_wininfo_clicked (GtkButton *button, gpointer user_data) { - VarWinInfo.IsShow = FALSE; - gtk_widget_hide (VarWinInfo.AdrWin); + gtk_widget_destroy( WindMain_wind_info ); + WindMain_wind_info = NULL; + GtkBuilderProjet_wind_info = NULL; } // WIN-READER OPEN // -void wininfo_create( GtkWidget *p_WindMain, gchar *title, ... ) +gboolean wind_info_init( GtkWidget *FromWindMain, gchar *title, ... ) { + // gchar *PackageVersion = NULL; gchar *StrTitle = NULL; va_list Arguments; gchar *PtrArg = NULL; GString *StrTxt = NULL; - - if (TRUE == VarWinInfo.IsShow) { - gdk_window_raise (VarWinInfo.AdrWin->window); + // GtkWidget *button_quitter_wininfo = NULL; + + if( NULL == (GtkBuilderProjet_wind_info = Builder_open( "xcfa_win_info.glade", GtkBuilderProjet_wind_info ))) { + return( EXIT_FAILURE ); } - else { - if (NULL == VarWinInfo.AdrWin) { - VarWinInfo.AdrWin = GTK_WIDGET (GLADE_GET_OBJECT("wind_info")); - gtk_builder_connect_signals (GtkXcfaProjet, NULL); - } - gtk_window_set_transient_for (GTK_WINDOW(VarWinInfo.AdrWin), GTK_WINDOW(p_WindMain)); - gtk_window_set_modal (GTK_WINDOW (VarWinInfo.AdrWin), TRUE); - libutils_set_default_icone_to_win (VarWinInfo.AdrWin); - - StrTitle = g_strdup_printf ("\n %s \n", title); - gtk_label_set_markup (GTK_LABEL (GLADE_GET_OBJECT("label_titre_wininfo")), StrTitle); - g_free (StrTitle); StrTitle = NULL; - - StrTxt = g_string_new (NULL); // Creation du GString - va_start (Arguments, title); // Debut des arguments - while ( *(PtrArg = va_arg (Arguments, gchar *)) != '\0') { // TANSQUE message ALORS - g_string_append_printf (StrTxt, "%s", &PtrArg[0]); // message.stock - } // FIN_TANSQUE - va_end (Arguments); // Fin des arguments - g_string_append_printf (StrTxt, "\n\n"); - - gtk_label_set_markup (GTK_LABEL (GLADE_GET_OBJECT("label_texte_wininfo")), StrTxt->str); - g_string_free (StrTxt, TRUE); - - gtk_window_set_title (GTK_WINDOW(VarWinInfo.AdrWin), title); - - gtk_widget_show (VarWinInfo.AdrWin); + // Add language support from glade file + gtk_builder_set_translation_domain( GtkBuilderProjet_wind_info, "wind_info" ); + gtk_builder_connect_signals( GtkBuilderProjet_wind_info, NULL ); + + WindMain_wind_info = GTK_WIDGET( gtk_builder_get_object( GtkBuilderProjet_wind_info, "wind_info" )); + // button_quitter_wininfo=GTK_WIDGET( gtk_builder_get_object( GtkBuilderProjet_wind_info, "button_quitter_wininfo" )); + + if( NULL != FromWindMain ) { + gtk_window_set_transient_for (GTK_WINDOW(WindMain_wind_info), GTK_WINDOW(FromWindMain)); + gtk_window_set_modal (GTK_WINDOW(WindMain_wind_info), TRUE); } - VarWinInfo.IsShow = TRUE; -} + libutils_set_default_icone_to_win( WindMain_wind_info ); + + gtk_window_set_title( GTK_WINDOW( WindMain_wind_info ), title ); + StrTitle = g_strdup_printf ("\n %s \n", title); + gtk_label_set_markup (GTK_LABEL (gtk_builder_get_object( GtkBuilderProjet_wind_info, "label_titre_wininfo")), StrTitle); + g_free (StrTitle); StrTitle = NULL; + + StrTxt = g_string_new (NULL); // Creation du GString + va_start (Arguments, title); // Debut des arguments + while ( *(PtrArg = va_arg (Arguments, gchar *)) != '\0') { // TANSQUE message ALORS + g_string_append_printf (StrTxt, "%s", &PtrArg[0]); // message.stock + } // FIN_TANSQUE + va_end (Arguments); // Fin des arguments + g_string_append_printf (StrTxt, "\n\n"); + + gtk_label_set_markup (GTK_LABEL (gtk_builder_get_object( GtkBuilderProjet_wind_info, "label_texte_wininfo")), StrTxt->str); + g_string_free (StrTxt, TRUE); + + gtk_widget_show_all( WindMain_wind_info ); + + return( TRUE ); +} diff -Nru xcfa-4.3.8/src/win_info.h xcfa-5.0.1/src/win_info.h --- xcfa-4.3.8/src/win_info.h 2013-03-21 10:55:27.000000000 +0000 +++ xcfa-5.0.1/src/win_info.h 2015-01-30 15:56:20.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : win_info.h * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License @@ -29,7 +29,8 @@ #define win_info_h 1 -void wininfo_create( GtkWidget *p_WindMain, gchar *title, ... ); +// void wininfo_create( GtkWidget *p_WindMain, gchar *title, ... ); +gboolean wind_info_init( GtkWidget *FromWindMain, gchar *title, ... ); #endif diff -Nru xcfa-4.3.8/src/win_reader.c xcfa-5.0.1/src/win_reader.c --- xcfa-4.3.8/src/win_reader.c 2013-03-21 10:55:49.000000000 +0000 +++ xcfa-5.0.1/src/win_reader.c 2015-01-30 17:32:29.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : win_reader.c * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License @@ -45,12 +45,10 @@ typedef struct { - GtkWidget *AdrWin; - GtkWidget *AdrScale; - GtkObject *AdrAdjust; - GtkWidget *AdrHscale; - gboolean IsShow; - gboolean BoolValueChange; + GtkWidget *AdrScale; + GtkAdjustment *AdrAdjust; + GtkWidget *AdrHscale; + gboolean BoolValueChange; } VAR_WINDREADER; @@ -58,20 +56,18 @@ NULL, NULL, NULL, - NULL, - FALSE, FALSE }; +GtkBuilder *GtkBuilderProjet_wind_reader = NULL; +GtkWidget *WindMain_wind_reader = NULL; void WinReader_set_value (gdouble p_value) { - if (TRUE == VarWindReader.IsShow) { - gtk_adjustment_set_value (GTK_ADJUSTMENT (VarWindReader.AdrAdjust), p_value); - } + gtk_adjustment_set_value (GTK_ADJUSTMENT (VarWindReader.AdrAdjust), p_value); } // HSCALE VALUR-CHANGE // @@ -107,12 +103,20 @@ // void on_hbox_WindReader_realize (GtkWidget *widget, gpointer user_data) { - VarWindReader.AdrAdjust = gtk_adjustment_new (0, 0, 100.0, 0.001, 1, 0); - VarWindReader.AdrHscale = gtk_hscale_new (GTK_ADJUSTMENT (VarWindReader.AdrAdjust)); + VarWindReader.AdrAdjust = gtk_adjustment_new( + 0.0, // gdouble value, + 0.0, // gdouble lower, + 100.0, // gdouble upper, + 0.001, // gdouble step_increment, + 1.0, // gdouble page_increment, + 0.0 // gdouble page_size + ); + // VarWindReader.AdrAdjust = gtk_adjustment_new (0, 0, 100.0, 0.001, 1, 0); + VarWindReader.AdrHscale = gtk_scale_new( GTK_ORIENTATION_HORIZONTAL, GTK_ADJUSTMENT(VarWindReader.AdrAdjust) ); gtk_widget_show (VarWindReader.AdrHscale); gtk_scale_set_draw_value (GTK_SCALE (VarWindReader.AdrHscale), FALSE); gtk_box_pack_start (GTK_BOX (widget), VarWindReader.AdrHscale, TRUE, TRUE, 0); - GTK_WIDGET_UNSET_FLAGS (widget, GTK_CAN_FOCUS); + // GTK_WIDGET_UNSET_FLAGS (widget, GTK_CAN_FOCUS); gtk_scale_set_value_pos (GTK_SCALE (VarWindReader.AdrHscale), GTK_POS_LEFT); g_signal_connect ((gpointer) VarWindReader.AdrHscale, "change_value", G_CALLBACK (WinReader_value_change), NULL); g_signal_connect ((gpointer) VarWindReader.AdrHscale, "event",G_CALLBACK (WinReader_event), NULL); @@ -122,8 +126,9 @@ gboolean on_WindReader_delete_event (GtkWidget *widget, GdkEvent *event, gpointer user_data) { mplayer_fifo_quit (); - VarWindReader.IsShow = FALSE; - gtk_widget_hide (VarWindReader.AdrWin); + gtk_widget_destroy( WindMain_wind_reader ); + WindMain_wind_reader = NULL; + GtkBuilderProjet_wind_reader = NULL; return TRUE; } // DESTROY EVENT @@ -131,8 +136,9 @@ gboolean on_WindReader_destroy_event (GtkWidget *widget, GdkEvent *event, gpointer user_data) { mplayer_fifo_quit (); - VarWindReader.IsShow = FALSE; - gtk_widget_hide (VarWindReader.AdrWin); + gtk_widget_destroy( WindMain_wind_reader ); + WindMain_wind_reader = NULL; + GtkBuilderProjet_wind_reader = NULL; return TRUE; } // PAUSE @@ -163,77 +169,98 @@ VarMplayer.BoolIsPause = FALSE; mplayer_fifo_seek (VarMplayer.PercentTempsActuel); mplayer_fifo_quit (); - VarWindReader.IsShow = FALSE; - gtk_widget_hide (VarWindReader.AdrWin); -} -// WIN-READER OPEN -// -void WinReader_open (gchar *title) -{ - if (TRUE == VarWindReader.IsShow) { - gdk_window_raise (VarWindReader.AdrWin->window); - } - else { - if (NULL == VarWindReader.AdrWin) { - VarWindReader.AdrWin = GTK_WIDGET (GLADE_GET_OBJECT("WindReader")); - gtk_builder_connect_signals (GtkXcfaProjet, NULL); - } - gtk_window_set_transient_for (GTK_WINDOW(VarWindReader.AdrWin), GTK_WINDOW(WindMain)); - gtk_window_set_modal (GTK_WINDOW (VarWindReader.AdrWin), TRUE); - libutils_set_default_icone_to_win (VarWindReader.AdrWin); - - gtk_widget_show (VarWindReader.AdrWin); - } - VarWindReader.IsShow = TRUE; - VarWindReader.BoolValueChange = FALSE; - if (NULL != title) gtk_window_set_title (GTK_WINDOW (VarWindReader.AdrWin), title); - - if (LIST_MPLAYER_FROM_DVD == VarMplayer.ListPlayFrom) { - gtk_widget_hide (GTK_WIDGET (GLADE_GET_OBJECT("hbox_WindReader"))); - } - else { - gtk_widget_show (GTK_WIDGET (GLADE_GET_OBJECT("hbox_WindReader"))); - } + gtk_widget_destroy( WindMain_wind_reader ); + WindMain_wind_reader = NULL; + GtkBuilderProjet_wind_reader = NULL; } // WIN-READER SET-TITLE // void WinReader_set_title (gchar *title) { - if (TRUE == VarWindReader.IsShow && NULL != title) gtk_window_set_title (GTK_WINDOW (VarWindReader.AdrWin), title); + if (NULL != title) gtk_window_set_title (GTK_WINDOW (WindMain_wind_reader), title); } // WIN-READER SHOW-PAUSE & HIDE-LECTURE // void WinReader_set_pause (void) { - if (TRUE == VarWindReader.IsShow) { - gtk_widget_hide (GTK_WIDGET (GLADE_GET_OBJECT("button_lecture_WindReader"))); - gtk_widget_show (GTK_WIDGET (GLADE_GET_OBJECT("button_pause_WindReader"))); - } + gtk_widget_hide (GTK_WIDGET (gtk_builder_get_object( GtkBuilderProjet_wind_reader, "button_lecture_WindReader"))); + gtk_widget_show (GTK_WIDGET (gtk_builder_get_object( GtkBuilderProjet_wind_reader, "button_pause_WindReader"))); } // WIN-READER HIDE-PAUSE & SHOW-LECTURE // void WinReader_set_lecture (void) { - if (TRUE == VarWindReader.IsShow) { - gtk_widget_hide (GTK_WIDGET (GLADE_GET_OBJECT("button_pause_WindReader"))); - gtk_widget_show (GTK_WIDGET (GLADE_GET_OBJECT("button_lecture_WindReader"))); - } + + gtk_widget_hide (GTK_WIDGET (gtk_builder_get_object( GtkBuilderProjet_wind_reader, "button_pause_WindReader"))); + gtk_widget_show (GTK_WIDGET (gtk_builder_get_object( GtkBuilderProjet_wind_reader, "button_lecture_WindReader"))); + } // WIN-READER CLOSE // void WinReader_close (void) { - if (TRUE == VarWindReader.IsShow) { - WinReader_set_lecture (); - VarWindReader.IsShow = FALSE; - gtk_widget_hide (VarWindReader.AdrWin); - } + WinReader_set_lecture (); + gtk_widget_destroy( WindMain_wind_reader ); + WindMain_wind_reader = NULL; + GtkBuilderProjet_wind_reader = NULL; } // WIN-READER IS OK // gboolean WinReader_is_close (void) { - return (VarWindReader.IsShow ? FALSE : TRUE); + return (WindMain_wind_reader ? FALSE : TRUE); +} +// WIN-READER OPEN +// +gboolean wind_reader_init( GtkWidget *FromWindMain ) +{ + gchar *PackageVersion = NULL; + // GtkWidget *button_quitter_WindReader = NULL; + // GtkWidget *button_lecture_WindReader = NULL; + // GtkWidget *button_pause_WindReader = NULL; + // GtkWidget *hbox_WindReader = NULL; + + if( NULL == (GtkBuilderProjet_wind_reader = Builder_open( "xcfa_win_reader.glade", GtkBuilderProjet_wind_reader ))) { + return( EXIT_FAILURE ); + } + // Add language support from glade file + gtk_builder_set_translation_domain( GtkBuilderProjet_wind_reader, "WindReader" ); + gtk_builder_connect_signals( GtkBuilderProjet_wind_reader, NULL ); + + WindMain_wind_reader = GTK_WIDGET( gtk_builder_get_object( GtkBuilderProjet_wind_reader, "WindReader" )); + // button_quitter_WindReader=GTK_WIDGET( gtk_builder_get_object( GtkBuilderProjet_wind_reader, "button_quitter_WindReader" )); + // button_lecture_WindReader=GTK_WIDGET( gtk_builder_get_object( GtkBuilderProjet_wind_reader, "button_lecture_WindReader" )); + // button_pause_WindReader=GTK_WIDGET( gtk_builder_get_object( GtkBuilderProjet_wind_reader, "button_pause_WindReader" )); + // hbox_WindReader=GTK_WIDGET( gtk_builder_get_object( GtkBuilderProjet_wind_reader, "hbox_WindReader" )); + + if( NULL != FromWindMain ) { + gtk_window_set_transient_for (GTK_WINDOW(WindMain_wind_reader), GTK_WINDOW(FromWindMain)); + gtk_window_set_modal (GTK_WINDOW(WindMain_wind_reader), TRUE); + } + // resize window + // gtk_window_resize(GTK_WINDOW(WindMain_wind_reader), Config.WinWidth, Config.WinHeight); + // place the window + // gtk_window_move(GTK_WINDOW(WindMain_wind_reader), Config.WinPos_X, Config.WinPos_Y); + // icon apply + libutils_set_default_icone_to_win( WindMain_wind_reader ); + + PackageVersion = g_strdup_printf( "%s - %s", PACKAGE_NAME, VERSION ); + gtk_window_set_title( GTK_WINDOW( WindMain_wind_reader ), PackageVersion ); + g_free( PackageVersion ); + PackageVersion = NULL; + + // place your initialization code here + + gtk_widget_show_all( WindMain_wind_reader ); + + VarWindReader.BoolValueChange = FALSE; + + if (LIST_MPLAYER_FROM_DVD == VarMplayer.ListPlayFrom) + gtk_widget_hide (GTK_WIDGET (gtk_builder_get_object( GtkBuilderProjet_wind_reader, "hbox_WindReader"))); + else gtk_widget_show (GTK_WIDGET (gtk_builder_get_object( GtkBuilderProjet_wind_reader, "hbox_WindReader"))); + + + return( TRUE ); } diff -Nru xcfa-4.3.8/src/win_reader.h xcfa-5.0.1/src/win_reader.h --- xcfa-4.3.8/src/win_reader.h 2013-03-21 10:55:27.000000000 +0000 +++ xcfa-5.0.1/src/win_reader.h 2015-01-30 16:56:50.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : win_reader.h * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License @@ -27,7 +27,8 @@ #ifndef win_reader_h #define win_reader_h 1 -void WinReader_open (gchar *title); +gboolean wind_reader_init( GtkWidget *FromWindMain ); +// void WinReader_open (gchar *title); void WinReader_set_pause (void); void WinReader_set_lecture (void); void WinReader_close (void); diff -Nru xcfa-4.3.8/src/win_scan.c xcfa-5.0.1/src/win_scan.c --- xcfa-4.3.8/src/win_scan.c 2013-03-21 10:55:49.000000000 +0000 +++ xcfa-5.0.1/src/win_scan.c 2015-01-31 13:19:26.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : win_scan.c * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License @@ -45,10 +45,8 @@ typedef struct { - GtkWidget *AdrWin; GtkWidget *AdrProgressBar; GtkWidget *AdrLabel; - gboolean IsShow; guint HandlerTimeout; TYPE_PROGRESS TypeProgress; gboolean close_request; @@ -59,14 +57,15 @@ VAR_WINDSCAN VarWindScan = { NULL, NULL, - NULL, - FALSE, 0, WINDSCAN_PULSE, FALSE }; +GtkBuilder *GtkBuilderProjet_wind_scan = NULL; +GtkWidget *WindMain_wind_scan = NULL; +// GtkWidget *WindMain // // void on_label_windscan_realize (GtkWidget *widget, gpointer user_data) @@ -83,7 +82,7 @@ // void WindScan_quit (void) { - if (TRUE == VarWindScan.IsShow) VarWindScan.close_request = TRUE; + VarWindScan.close_request = TRUE; } // // @@ -108,13 +107,14 @@ // static gint WindScan_timeout (gpointer data) { - if (TRUE == VarWindScan.close_request && TRUE == VarWindScan.IsShow) { - VarWindScan.IsShow = FALSE; + if( TRUE == VarWindScan.close_request ) { VarWindScan.close_request = FALSE; - gtk_timeout_remove (VarWindScan.HandlerTimeout); - gtk_widget_hide (VarWindScan.AdrWin); + g_source_remove (VarWindScan.HandlerTimeout); + gtk_widget_destroy( WindMain_wind_scan ); + WindMain_wind_scan = NULL; + GtkBuilderProjet_wind_scan = NULL; } - else if (TRUE == VarWindScan.IsShow) { + else { if (VarWindScan.TypeProgress == WINDSCAN_PULSE) { gtk_progress_bar_pulse (GTK_PROGRESS_BAR(VarWindScan.AdrProgressBar)); } @@ -123,32 +123,39 @@ } // // -gboolean WindScan_open (gchar *title, TYPE_PROGRESS TypeProgress) +gboolean wind_scan_init( GtkWidget *FromWindMain, gchar *title, TYPE_PROGRESS TypeProgress ) { - gboolean BoolIsShow = VarWindScan.IsShow; - VarWindScan.CloseByUser = FALSE; VarWindScan.close_request = FALSE; - - if (TRUE == VarWindScan.IsShow) { - gdk_window_raise (VarWindScan.AdrWin->window); + if( NULL == (GtkBuilderProjet_wind_scan = Builder_open( "xcfa_win_scan.glade", GtkBuilderProjet_wind_scan ))) { + return( EXIT_FAILURE ); } - else { - if (NULL == VarWindScan.AdrWin) { - VarWindScan.AdrWin = GTK_WIDGET (GLADE_GET_OBJECT("WindScan")); - gtk_builder_connect_signals (GtkXcfaProjet, NULL); - } - gtk_window_set_modal (GTK_WINDOW (VarWindScan.AdrWin), TRUE); - libutils_set_default_icone_to_win (VarWindScan.AdrWin); + // Add language support from glade file + gtk_builder_set_translation_domain( GtkBuilderProjet_wind_scan, "WindScan" ); + gtk_builder_connect_signals( GtkBuilderProjet_wind_scan, NULL ); + + WindMain_wind_scan = GTK_WIDGET( gtk_builder_get_object( GtkBuilderProjet_wind_scan, "WindScan" )); + // button_cancel_windscan=GTK_WIDGET( gtk_builder_get_object( GtkBuilderProjet_wind_scan, "button_cancel_windscan" )); + // label_windscan=GTK_WIDGET( gtk_builder_get_object( GtkBuilderProjet_wind_scan, "label_windscan" )); + // progressbar_windscan=GTK_WIDGET( gtk_builder_get_object( GtkBuilderProjet_wind_scan, "progressbar_windscan" )); + // scrolledwindow_windscan=GTK_WIDGET( gtk_builder_get_object( GtkBuilderProjet_wind_scan, "scrolledwindow_windscan" )); + + if( NULL != FromWindMain ) { + gtk_window_set_transient_for (GTK_WINDOW(WindMain_wind_scan), GTK_WINDOW(FromWindMain)); + gtk_window_set_modal (GTK_WINDOW(WindMain_wind_scan), TRUE); + } + // resize window + // gtk_window_resize(GTK_WINDOW(WindMain_wind_scan), Config.WinWidth, Config.WinHeight); + // place the window + // gtk_window_move(GTK_WINDOW(WindMain_wind_scan), Config.WinPos_X, Config.WinPos_Y); + // icon apply + libutils_set_default_icone_to_win( WindMain_wind_scan ); + gtk_window_set_title( GTK_WINDOW( WindMain_wind_scan ), title ); + + // place your initialization code here - gtk_window_set_transient_for( GTK_WINDOW(VarWindScan.AdrWin), GTK_WINDOW(WindMain) ); - - gtk_widget_show (VarWindScan.AdrWin); - WindScan_hide_expander (); - } - VarWindScan.IsShow = TRUE; - gtk_window_set_title (GTK_WINDOW (VarWindScan.AdrWin), title); - + gtk_widget_show_all( WindMain_wind_scan ); + WindScan_hide_expander (); if (VarWindScan.TypeProgress == WINDSCAN_PULSE) { gtk_progress_bar_set_ellipsize (GTK_PROGRESS_BAR (VarWindScan.AdrProgressBar), PANGO_ELLIPSIZE_START); gtk_progress_bar_set_pulse_step (GTK_PROGRESS_BAR (VarWindScan.AdrProgressBar), 0.1); @@ -156,15 +163,26 @@ gtk_progress_bar_set_text (GTK_PROGRESS_BAR (VarWindScan.AdrProgressBar), ""); } else { - gtk_progress_bar_set_orientation (GTK_PROGRESS_BAR (VarWindScan.AdrProgressBar), GTK_PROGRESS_LEFT_TO_RIGHT); + gtk_orientable_set_orientation( GTK_ORIENTABLE(VarWindScan.AdrProgressBar), GTK_ORIENTATION_HORIZONTAL); + // gtk_orientable_set_orientation( GTK_PROGRESS_BAR (VarWindScan.AdrProgressBar), GTK_PROGRESS_LEFT_TO_RIGHT ); + // gtk_progress_bar_set_orientation (GTK_PROGRESS_BAR (VarWindScan.AdrProgressBar), GTK_PROGRESS_LEFT_TO_RIGHT ); gtk_progress_bar_set_fraction (GTK_PROGRESS_BAR (VarWindScan.AdrProgressBar), 0.0); gtk_progress_bar_set_text (GTK_PROGRESS_BAR (VarWindScan.AdrProgressBar), _("Waiting ...")); } WindScan_show_cancel( TRUE ); - VarWindScan.HandlerTimeout = gtk_timeout_add (100, WindScan_timeout, 0); - - return (BoolIsShow); + VarWindScan.HandlerTimeout = g_timeout_add( 200, WindScan_timeout, 0 ); + + return( TRUE ); } + + + + + + + + + // // void WindScan_set_pulse (void) @@ -179,7 +197,8 @@ void WindScan_set_progress (gchar *p_str, double p_etat) { VarWindScan.TypeProgress = WINDSCAN_PROGRESS; - gtk_progress_bar_set_orientation (GTK_PROGRESS_BAR (VarWindScan.AdrProgressBar), GTK_PROGRESS_LEFT_TO_RIGHT); + // gtk_progress_bar_set_orientation (GTK_PROGRESS_BAR (VarWindScan.AdrProgressBar), GTK_PROGRESS_LEFT_TO_RIGHT); + gtk_orientable_set_orientation( GTK_ORIENTABLE(VarWindScan.AdrProgressBar), GTK_ORIENTATION_HORIZONTAL); if (p_etat < 0.0) p_etat = 0.0; if (p_etat > 1.0) p_etat = 1.0; gtk_progress_bar_set_fraction (GTK_PROGRESS_BAR (VarWindScan.AdrProgressBar), p_etat); @@ -214,20 +233,20 @@ // void WindScan_hide_expander (void) { - gtk_widget_hide (GTK_WIDGET (GLADE_GET_OBJECT("expander_windscan"))); + gtk_widget_hide (GTK_WIDGET (gtk_builder_get_object( GtkBuilderProjet_wind_scan, "expander_windscan"))); } // // void WindScan_show_expander (void) { - gtk_widget_show (GTK_WIDGET (GLADE_GET_OBJECT("expander_windscan"))); - gtk_expander_set_expanded (GTK_EXPANDER (GLADE_GET_OBJECT("expander_windscan")), TRUE); + gtk_widget_show (GTK_WIDGET (gtk_builder_get_object( GtkBuilderProjet_wind_scan, "expander_windscan"))); + gtk_expander_set_expanded (GTK_EXPANDER (gtk_builder_get_object( GtkBuilderProjet_wind_scan, "expander_windscan")), TRUE); } // // void WindScan_show_cancel( gboolean p_bool_show ) { - gtk_widget_set_sensitive( GTK_WIDGET( GLADE_GET_OBJECT( "button_cancel_windscan" )), p_bool_show ); + gtk_widget_set_sensitive( GTK_WIDGET( gtk_builder_get_object( GtkBuilderProjet_wind_scan, "button_cancel_windscan" )), p_bool_show ); } // // diff -Nru xcfa-4.3.8/src/win_scan.h xcfa-5.0.1/src/win_scan.h --- xcfa-4.3.8/src/win_scan.h 2013-03-21 10:55:27.000000000 +0000 +++ xcfa-5.0.1/src/win_scan.h 2015-01-30 16:10:37.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : win_scan.h * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - GTK+ implementation of the GNU shell command * GNU General Public License @@ -32,7 +32,8 @@ WINDSCAN_PROGRESS } TYPE_PROGRESS; -gboolean WindScan_open (gchar *title, TYPE_PROGRESS TypeProgress); +gboolean wind_scan_init( GtkWidget *FromWindMain, gchar *title, TYPE_PROGRESS TypeProgress ); +// gboolean WindScan_open (gchar *title, TYPE_PROGRESS TypeProgress); void WindScan_close (void); void WindScan_set_pulse (void); void WindScan_set_progress (gchar *p_str, double p_etat); diff -Nru xcfa-4.3.8/src/win_treeview.c xcfa-5.0.1/src/win_treeview.c --- xcfa-4.3.8/src/win_treeview.c 1970-01-01 00:00:00.000000000 +0000 +++ xcfa-5.0.1/src/win_treeview.c 2015-01-31 13:40:06.000000000 +0000 @@ -0,0 +1,536 @@ + /* + * file : win_treeview.c + * project : xcfa + * with : Gtk-3 + * + * copyright : (C) 2003 - 2015 by Claude Bulin + * + * xcfa - GTK+ implementation of the GNU shell command + * GNU General Public License + * + * This file is part of XCFA. + * + * XCFA is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * at your option) any later version. + * + * XCFA is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with XCFA. If not, see . + */ + + +#ifdef HAVE_CONFIG_H + #include "../config.h" +#endif + +#include +#include +#include +#include + +#ifdef ENABLE_STATIC_LIBRARY + #include "../lib/lib.h" +#endif + +#include "global.h" +#include "dvd.h" +#include "cd_audio.h" +#include "file.h" +#include "configuser.h" +#include "win_treeview.h" + + + +GtkBuilder *GtkBuilderProjet_wind_treeview = NULL; +GtkWidget *WindMain_wind_treeview = NULL; + + + +#define MAX_DATAS_STRUCT_RADIOBUTTONS 6 + +typedef struct { + gchar *NameLeft; + gchar *NameCenter; + gchar *NameRight; + GtkCellRenderer **AdrRenderer; + GtkTreeViewColumn **AdrTreeViewColumn; + gint Pos; +} TAB_POSNAME; + +TAB_POSNAME TabPosName [ MAX_DATAS_STRUCT_RADIOBUTTONS ] = { + {"radiobutton_nameleft_dvd", "radiobutton_namecenter_dvd", "radiobutton_nameright_dvd", + &var_dvd.Renderer, &var_dvd.Adr_Column_Nom, + 1}, + {"radiobutton_nameleft_cd", "radiobutton_namecenter_cd", "radiobutton_nameright_cd", + &var_cd.Renderer, &var_cd.Adr_Column_Nom, + 1}, + {"radiobutton_nameleft_allfile", "radiobutton_namecenter_allfile", "radiobutton_nameright_allfile", + &var_file.Renderer, &var_file.Adr_ColumnFileName, + 1}, + {"radiobutton_nameleft_wav", "radiobutton_namecenter_wav", "radiobutton_nameright_wav", + &var_file_wav.Renderer, &var_file_wav.Adr_ColumnFileWavName, + 1}, + {"radiobutton_nameleft_mp3ogg", "radiobutton_namecenter_mp3ogg", "radiobutton_nameright_mp3ogg", + &var_file_mp3ogg.Renderer, &var_file_mp3ogg.Adr_ColumnFileMp3OggName, + 1}, + {"radiobutton_nameleft_tags", "radiobutton_namecenter_tags", "radiobutton_nameright_tags", + &var_file_tags.Renderer, &var_file_tags.Adr_ColumnFileTagsName, + 1} + } ; + + + + +#define POS_STRUCT_DVD 00 +#define POS_STRUCT_CD 07 +#define POS_STRUCT_CONVERSIONS 21 +#define POS_STRUCT_WAV 37 +#define POS_STRUCT_MP3OGG 44 +#define POS_STRUCT_TAGS 50 +#define MAX_DATAS_STRUCT_TREEVIEW 53 + +typedef struct { + + GtkWidget *AdrWin; + gboolean IsShow; + gboolean BoolNoEnter; + gint PageNotebook; + +} VAR_TREEVIEW; + +VAR_TREEVIEW VarTreeView = { + NULL, + FALSE, + TRUE, + 0 +}; + +typedef struct { + gchar *Name; + gboolean BoolIsVisible; + GtkTreeViewColumn **AdrTreeViewColumn; +} TAB_SHOWHIDE; + +TAB_SHOWHIDE TabShowHide [ MAX_DATAS_STRUCT_TREEVIEW ] = { +// +// Name BoolIsVisible: DVD, CD, FILE, WAV, MP3OGG, TAGS +// | AdrTreeViewColumn +// POS_STRUCT_DVD = 0 | | + {"checkbutton_titre_dvd", TRUE, &var_dvd.Adr_Column_Titres}, + {"checkbutton_play_dvd", TRUE, &var_dvd.Adr_Column_Play}, + {"checkbutton_temps_dvd", TRUE, &var_dvd.Adr_Column_Temps}, + {"checkbutton_format_dvd", TRUE, &var_dvd.Adr_Column_Format}, + {"checkbutton_choix_dvd", TRUE, &var_dvd.Adr_Column_Choix}, + {"checkbutton_normalise_dvd", TRUE, &var_dvd.Adr_Column_Normalise}, + {"checkbutton_nom_dvd", TRUE, &var_dvd.Adr_Column_Nom}, + // POS_STRUCT_CD = 7 + {"checkbutton_play_cd", TRUE, &var_cd.Adr_Column_Play}, + {"checkbutton_wav_cd", TRUE, &var_cd.Adr_Column_Wav}, + {"checkbutton_flac_cd", TRUE, &var_cd.Adr_Column_Flac}, + {"checkbutton_ape_cd", TRUE, &var_cd.Adr_Column_Ape}, + {"checkbutton_wavpack_cd", TRUE, &var_cd.Adr_Column_Wavpack}, + {"checkbutton_ogg_cd", TRUE, &var_cd.Adr_Column_Ogg}, + {"checkbutton_m4a_cd", TRUE, &var_cd.Adr_Column_M4a}, + {"checkbutton_aac_cd", TRUE, &var_cd.Adr_Column_Aac}, + {"checkbutton_musepack_cd", TRUE, &var_cd.Adr_Column_Mpc}, + {"checkbutton_mp3_cd", TRUE, &var_cd.Adr_Column_Mp3}, + {"checkbutton_num_cd", TRUE, &var_cd.Adr_Column_Num}, + {"checkbutton_time_cd", TRUE, &var_cd.Adr_Column_Time}, + {"checkbutton_normalise_cd", TRUE, &var_cd.Adr_Column_Normalise}, + {"checkbutton_nom_cd", TRUE, &var_cd.Adr_Column_Nom}, + // POS_STRUCT_CONVERSIONS = 21 + {"checkbutton_play_allfile", TRUE, &var_file.Adr_ColumnFilePlay}, + {"checkbutton_trash_allfile", TRUE, &var_file.Adr_ColumnFileTrash}, + {"checkbutton_type_allfile", TRUE, &var_file.Adr_ColumnFileType}, + {"checkbutton_wav_allfile", TRUE, &var_file.Adr_ColumnFileWav}, + {"checkbutton_flac_allfile", TRUE, &var_file.Adr_ColumnFileFlac}, + {"checkbutton_ape_allfile", TRUE, &var_file.Adr_ColumnFileApe}, + {"checkbutton_wavpack_allfile", TRUE, &var_file.Adr_ColumnFileWavPack}, + {"checkbutton_ogg_allfile", TRUE, &var_file.Adr_ColumnFileOgg}, + {"checkbutton_m4a_allfile", TRUE, &var_file.Adr_ColumnFileM4a}, + {"checkbutton_aac_allfile", TRUE, &var_file.Adr_ColumnFileAac}, + {"checkbutton_musepack_allfile", TRUE, &var_file.Adr_ColumnFileMpc}, + {"checkbutton_mp3_allfile", TRUE, &var_file.Adr_ColumnFileMp3}, + {"checkbutton_time_allfile", TRUE, &var_file.Adr_ColumnFileTime}, + {"checkbutton_normalise_allfile", TRUE, &var_file.Adr_ColumnFileNormalize}, + {"checkbutton_replaygain_allfile", TRUE, &var_file.Adr_ColumnFileReplayGain}, + {"checkbutton_nom_allfile", TRUE, &var_file.Adr_ColumnFileName}, + // POS_STRUCT_WAV = 37 + {"checkbutton_hertz_wav", TRUE, &var_file_wav.Adr_ColumnFileWavHertz}, + {"checkbutton_newhertz_wav", TRUE, &var_file_wav.Adr_ColumnFileWavNewHertz}, + {"checkbutton_voie_wav", TRUE, &var_file_wav.Adr_ColumnFileWavVoie}, + {"checkbutton_newvoie_wav", TRUE, &var_file_wav.Adr_ColumnFileWavNewVoie}, + {"checkbutton_bits_wav", TRUE, &var_file_wav.Adr_ColumnFileWavBits}, + {"checkbutton_newbits_wav", TRUE, &var_file_wav.Adr_ColumnFileWavNewBits}, + {"checkbutton_nom_wav", TRUE, &var_file_wav.Adr_ColumnFileWavName}, + // POS_STRUCT_MP3OGG = 44 + {"checkbutton_type_mp3ogg", TRUE, &var_file_mp3ogg.Adr_ColumnFileMp3OggType}, + {"checkbutton_bitrate_mp3ogg", TRUE, &var_file_mp3ogg.Adr_ColumnFileMp3OggBitrate}, + {"checkbutton_nexbitrate_mp3ogg", TRUE, &var_file_mp3ogg.Adr_ColumnFileMp3OggNewBitrate}, + {"checkbutton_size_mp3ogg", TRUE, &var_file_mp3ogg.Adr_ColumnFileMp3OggSize}, + {"checkbutton_time_mp3ogg", TRUE, &var_file_mp3ogg.Adr_ColumnFileMp3OggTime}, + {"checkbutton_nom_mp3ogg", TRUE, &var_file_mp3ogg.Adr_ColumnFileMp3OggName}, + // POS_STRUCT_TAGS = 50 + {"checkbutton_type_tags", TRUE, &var_file_tags.Adr_ColumnFileTagsType}, + {"checkbutton_time_tags", TRUE, &var_file_tags.Adr_ColumnFileTagsTime}, + {"checkbutton_nom_tags", TRUE, &var_file_tags.Adr_ColumnFileTagsName} + }; + + + +// SET ETAT FIELDS TO STRING-ETAT FOR SAVE CONFIG +// +void treeview_get_etat_fields (void) +{ + gint cpt; + + VarTreeView.BoolNoEnter = TRUE; + + // Remove string + if (NULL != Config.StringBoolFieldsIsVisible) { + g_free (Config.StringBoolFieldsIsVisible); + Config.StringBoolFieldsIsVisible = NULL; + } + // Allocate string + Config.StringBoolFieldsIsVisible = g_strnfill (MAX_DATAS_STRUCT_TREEVIEW +4, '1'); + + // Set 1 (TRUE) is visible else set 0 (FALSE) + for (cpt = POS_STRUCT_DVD; cpt < MAX_DATAS_STRUCT_TREEVIEW; cpt ++) { + Config.StringBoolFieldsIsVisible [ cpt ] = (TabShowHide [ cpt ].BoolIsVisible == FALSE) ? '0' : '1'; + } + Config.StringBoolFieldsIsVisible [ cpt ] = '\0'; + + VarTreeView.BoolNoEnter = FALSE; +} +// CALL FROM MAIN.C +// +void wintreeview_set_etat_fields (void) +{ + gint cpt; + + if( NULL == GtkBuilderProjet_wind_treeview ) { + GtkBuilderProjet_wind_treeview = Builder_open( "xcfa_win_treeview.glade", GtkBuilderProjet_wind_treeview ); + } + if( NULL == WindMain_wind_treeview ) { + WindMain_wind_treeview = GTK_WIDGET( gtk_builder_get_object( GtkBuilderProjet_wind_treeview, "wind_treeview" )); + } + + if (NULL == Config.StringBoolFieldsIsVisible) { + treeview_get_etat_fields (); + } + + VarTreeView.BoolNoEnter = TRUE; + + // Set 1 (TRUE) is visible else set 0 (FALSE) + for (cpt = POS_STRUCT_DVD; cpt < MAX_DATAS_STRUCT_TREEVIEW; cpt ++) { + TabShowHide [ cpt ].BoolIsVisible = (Config.StringBoolFieldsIsVisible [ cpt ] == '0') ? FALSE : TRUE; + // Place le CheckButton avec cet etat + gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (gtk_builder_get_object( GtkBuilderProjet_wind_treeview, TabShowHide [ cpt ].Name)), TabShowHide [ cpt ].BoolIsVisible); + gtk_tree_view_column_set_visible (GTK_TREE_VIEW_COLUMN (*TabShowHide [ cpt ].AdrTreeViewColumn), TabShowHide [ cpt ].BoolIsVisible); + } + + VarTreeView.BoolNoEnter = FALSE; +} +// +// +gboolean on_wind_treeview_delete_event (GtkWidget *widget, GdkEvent *event, gpointer user_data) +{ + treeview_get_etat_fields (); + gtk_widget_destroy( WindMain_wind_treeview ); + WindMain_wind_treeview = NULL; + GtkBuilderProjet_wind_treeview = NULL; + return TRUE; +} +// +// +gboolean on_wind_treeview_destroy_event (GtkWidget *widget, GdkEvent *event, gpointer user_data) +{ + treeview_get_etat_fields (); + gtk_widget_destroy( WindMain_wind_treeview ); + WindMain_wind_treeview = NULL; + GtkBuilderProjet_wind_treeview = NULL; + return TRUE; +} +// +// +void on_button_quit_windtreeview_clicked (GtkButton *button, gpointer user_data) +{ + treeview_get_etat_fields (); + gtk_widget_destroy( WindMain_wind_treeview ); + WindMain_wind_treeview = NULL; + GtkBuilderProjet_wind_treeview = NULL; +} +// +// +void treeview_SetGlobal (gboolean BoolVisible) +{ + gint cpt; + + VarTreeView.BoolNoEnter = TRUE; + + switch(VarTreeView.PageNotebook) { + case 0 : + for (cpt = POS_STRUCT_DVD; cpt < POS_STRUCT_CD; cpt ++) { + TabShowHide [ cpt ].BoolIsVisible = BoolVisible; + gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (gtk_builder_get_object( GtkBuilderProjet_wind_treeview, TabShowHide [ cpt ].Name)), TabShowHide [ cpt ].BoolIsVisible); + gtk_tree_view_column_set_visible (GTK_TREE_VIEW_COLUMN (*TabShowHide [ cpt ].AdrTreeViewColumn), TabShowHide [ cpt ].BoolIsVisible); + } + break; + case 1 : + for (cpt = POS_STRUCT_CD; cpt < POS_STRUCT_CONVERSIONS; cpt ++) { + TabShowHide [ cpt ].BoolIsVisible = BoolVisible; + gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (gtk_builder_get_object( GtkBuilderProjet_wind_treeview, TabShowHide [ cpt ].Name)), TabShowHide [ cpt ].BoolIsVisible); + gtk_tree_view_column_set_visible (GTK_TREE_VIEW_COLUMN (*TabShowHide [ cpt ].AdrTreeViewColumn), TabShowHide [ cpt ].BoolIsVisible); + } + break; + case 2 : + for (cpt = POS_STRUCT_CONVERSIONS; cpt < POS_STRUCT_WAV; cpt ++) { + TabShowHide [ cpt ].BoolIsVisible = BoolVisible; + gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (gtk_builder_get_object( GtkBuilderProjet_wind_treeview, TabShowHide [ cpt ].Name)), TabShowHide [ cpt ].BoolIsVisible); + gtk_tree_view_column_set_visible (GTK_TREE_VIEW_COLUMN (*TabShowHide [ cpt ].AdrTreeViewColumn), TabShowHide [ cpt ].BoolIsVisible); + } + break; + case 3 : + for (cpt = POS_STRUCT_WAV; cpt < POS_STRUCT_MP3OGG; cpt ++) { + TabShowHide [ cpt ].BoolIsVisible = BoolVisible; + gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (gtk_builder_get_object( GtkBuilderProjet_wind_treeview, TabShowHide [ cpt ].Name)), TabShowHide [ cpt ].BoolIsVisible); + gtk_tree_view_column_set_visible (GTK_TREE_VIEW_COLUMN (*TabShowHide [ cpt ].AdrTreeViewColumn), TabShowHide [ cpt ].BoolIsVisible); + } + break; + case 4 : + for (cpt = POS_STRUCT_MP3OGG; cpt < MAX_DATAS_STRUCT_TREEVIEW; cpt ++) { + TabShowHide [ cpt ].BoolIsVisible = BoolVisible; + gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (gtk_builder_get_object( GtkBuilderProjet_wind_treeview, TabShowHide [ cpt ].Name)), TabShowHide [ cpt ].BoolIsVisible); + gtk_tree_view_column_set_visible (GTK_TREE_VIEW_COLUMN (*TabShowHide [ cpt ].AdrTreeViewColumn), TabShowHide [ cpt ].BoolIsVisible); + } + break; + case 5 : + for (cpt = POS_STRUCT_TAGS; cpt < MAX_DATAS_STRUCT_TREEVIEW; cpt ++) { + TabShowHide [ cpt ].BoolIsVisible = BoolVisible; + gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (gtk_builder_get_object( GtkBuilderProjet_wind_treeview, TabShowHide [ cpt ].Name)), TabShowHide [ cpt ].BoolIsVisible); + gtk_tree_view_column_set_visible (GTK_TREE_VIEW_COLUMN (*TabShowHide [ cpt ].AdrTreeViewColumn), TabShowHide [ cpt ].BoolIsVisible); + } + break; + } + treeview_get_etat_fields (); + VarTreeView.BoolNoEnter = FALSE; +} +// +// +void on_button_deselect_global_windtreeview_clicked (GtkButton *button, gpointer user_data) +{ + treeview_SetGlobal (FALSE); +} +// +// +void on_button_select_global_windtreeview_clicked (GtkButton *button, gpointer user_data) +{ + treeview_SetGlobal (TRUE); +} +// +// +void treeview_set_pos_fields_name (void) +{ + if (NULL != Config.StringPosFieldsName && *Config.StringPosFieldsName == '\0') { + g_free (Config.StringPosFieldsName); Config.StringPosFieldsName = NULL; + } + + if (NULL == Config.StringPosFieldsName) { + // Allocate string with datas + Config.StringPosFieldsName = g_strnfill (MAX_DATAS_STRUCT_RADIOBUTTONS +4, '1'); + } +} +// +// +void on_radiobutton_modif_treeview_clicked (GtkButton *button, gpointer user_data) +{ + gint cpt; + + if (TRUE == VarTreeView.BoolNoEnter) return; + + treeview_set_pos_fields_name (); + + for (cpt = POS_STRUCT_DVD; cpt < MAX_DATAS_STRUCT_RADIOBUTTONS; cpt ++) { + if (GTK_BUTTON (button) == GTK_BUTTON (GTK_WIDGET (gtk_builder_get_object( GtkBuilderProjet_wind_treeview, TabPosName [ cpt ].NameLeft)))) { + Config.StringPosFieldsName [ cpt ] = '0'; + TabPosName [ cpt ].Pos = 0; + gtk_tree_view_column_set_alignment (GTK_TREE_VIEW_COLUMN (*TabPosName [ cpt ].AdrTreeViewColumn), 0.0); + g_object_set (*TabPosName [ cpt ].AdrRenderer, "xalign", 0.0, NULL); + break; + } + if (GTK_BUTTON (button) == GTK_BUTTON (GTK_WIDGET (gtk_builder_get_object( GtkBuilderProjet_wind_treeview, TabPosName [ cpt ].NameCenter)))) { + Config.StringPosFieldsName [ cpt ] = '1'; + TabPosName [ cpt ].Pos = 1; + gtk_tree_view_column_set_alignment (GTK_TREE_VIEW_COLUMN (*TabPosName [ cpt ].AdrTreeViewColumn), 0.5); + g_object_set (*TabPosName [ cpt ].AdrRenderer, "xalign", 0.5, NULL); + break; + } + if (GTK_BUTTON (button) == GTK_BUTTON (GTK_WIDGET (gtk_builder_get_object( GtkBuilderProjet_wind_treeview, TabPosName [ cpt ].NameRight)))) { + Config.StringPosFieldsName [ cpt ] = '2'; + TabPosName [ cpt ].Pos = 2; + gtk_tree_view_column_set_alignment (GTK_TREE_VIEW_COLUMN (*TabPosName [ cpt ].AdrTreeViewColumn), 1.0); + g_object_set (*TabPosName [ cpt ].AdrRenderer, "xalign", 1.0, NULL); + break; + } + } +} +// +// +void wintreeview_radiobutton_set_PosFieldsName (void) +{ + gint cpt; + + treeview_set_pos_fields_name (); + + VarTreeView.BoolNoEnter = TRUE; + + for (cpt = POS_STRUCT_DVD; cpt < MAX_DATAS_STRUCT_RADIOBUTTONS; cpt ++) { + if (Config.StringPosFieldsName [ cpt ] == '0') { + TabPosName [ cpt ].Pos = 0; + gtk_tree_view_column_set_alignment (GTK_TREE_VIEW_COLUMN (*TabPosName [ cpt ].AdrTreeViewColumn), 0.0); + g_object_set (*TabPosName [ cpt ].AdrRenderer, "xalign", 0.0, NULL); + gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (gtk_builder_get_object( GtkBuilderProjet_wind_treeview, TabPosName [ cpt ].NameLeft)), TRUE); + } + else if (Config.StringPosFieldsName [ cpt ] == '1') { + TabPosName [ cpt ].Pos = 1; + gtk_tree_view_column_set_alignment (GTK_TREE_VIEW_COLUMN (*TabPosName [ cpt ].AdrTreeViewColumn), 0.5); + g_object_set (*TabPosName [ cpt ].AdrRenderer, "xalign", 0.5, NULL); + gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (gtk_builder_get_object( GtkBuilderProjet_wind_treeview, TabPosName [ cpt ].NameCenter)), TRUE); + } + else if (Config.StringPosFieldsName [ cpt ] == '2') { + TabPosName [ cpt ].Pos = 2; + gtk_tree_view_column_set_alignment (GTK_TREE_VIEW_COLUMN (*TabPosName [ cpt ].AdrTreeViewColumn), 1.0); + g_object_set (*TabPosName [ cpt ].AdrRenderer, "xalign", 1.0, NULL); + gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (gtk_builder_get_object( GtkBuilderProjet_wind_treeview, TabPosName [ cpt ].NameRight)), TRUE); + } + } + VarTreeView.BoolNoEnter = FALSE; + + gtk_widget_destroy( WindMain_wind_treeview ); + WindMain_wind_treeview = NULL; + GtkBuilderProjet_wind_treeview = NULL; +} +// ACTIVE OU DESACTIVE LA VISIBILITE DU CHAMPS SUITE A CLICK BUTTON +// +void on_checkbutton_modif_treeview_clicked (GtkButton *button, gpointer user_data) +{ + gint cpt; + + if (TRUE == VarTreeView.BoolNoEnter) return; + + for (cpt = POS_STRUCT_DVD; cpt < MAX_DATAS_STRUCT_TREEVIEW; cpt ++) { + if (GTK_BUTTON (button) == GTK_BUTTON (gtk_builder_get_object( GtkBuilderProjet_wind_treeview, TabShowHide [ cpt ].Name))) { + // g_print("cpt = %d\n", cpt); + TabShowHide [ cpt ].BoolIsVisible = (TabShowHide [ cpt ].BoolIsVisible == TRUE) ? FALSE : TRUE; + // Show / Hide la colonne du TreeView + gtk_tree_view_column_set_visible (GTK_TREE_VIEW_COLUMN (*TabShowHide [ cpt ].AdrTreeViewColumn), TabShowHide [ cpt ].BoolIsVisible); + // sortie + break; + } + } +} +// +// +void on_notebook_windtreeview_switch_page( GtkNotebook *notebook, gpointer page, guint page_num, gpointer user_data ) +{ + VarTreeView.PageNotebook = page_num; + + switch(VarTreeView.PageNotebook) { + case 0 : + gtk_notebook_set_current_page (GTK_NOTEBOOK (gtk_builder_get_object( GtkXcfaProjet, "notebook_general")), NOTEBOOK_DVD_AUDIO); + break; + case 1 : + gtk_notebook_set_current_page (GTK_NOTEBOOK (gtk_builder_get_object( GtkXcfaProjet, "notebook_general")), NOTEBOOK_CD_AUDIO); + break; + case 2 : + gtk_notebook_set_current_page (GTK_NOTEBOOK (gtk_builder_get_object( GtkXcfaProjet, "notebook_general")), NOTEBOOK_FICHIERS); + gtk_notebook_set_current_page (GTK_NOTEBOOK (gtk_builder_get_object( GtkXcfaProjet, "notebook_in_file")), NOTEBOOK_FICHIERS_CONVERSION); + break; + case 3 : + gtk_notebook_set_current_page (GTK_NOTEBOOK (gtk_builder_get_object( GtkXcfaProjet, "notebook_general")), NOTEBOOK_FICHIERS); + gtk_notebook_set_current_page (GTK_NOTEBOOK (gtk_builder_get_object( GtkXcfaProjet, "notebook_in_file")), NOTEBOOK_FICHIERS_WAV); + break; + case 4 : + gtk_notebook_set_current_page (GTK_NOTEBOOK (gtk_builder_get_object( GtkXcfaProjet, "notebook_general")), NOTEBOOK_FICHIERS); + gtk_notebook_set_current_page (GTK_NOTEBOOK (gtk_builder_get_object( GtkXcfaProjet, "notebook_in_file")), NOTEBOOK_FICHIERS_MP3OGG); + break; + case 5 : + gtk_notebook_set_current_page (GTK_NOTEBOOK (gtk_builder_get_object( GtkXcfaProjet, "notebook_general")), NOTEBOOK_FICHIERS); + gtk_notebook_set_current_page (GTK_NOTEBOOK (gtk_builder_get_object( GtkXcfaProjet, "notebook_in_file")), NOTEBOOK_FICHIERS_TAGS); + + break; + } +} +// +// +gboolean wintreeview_init( GtkWidget *FromWindMain ) +{ + if( NULL == (GtkBuilderProjet_wind_treeview = Builder_open( "xcfa_win_treeview.glade", GtkBuilderProjet_wind_treeview ))) { + return( EXIT_FAILURE ); + } + // Add language support from glade file + gtk_builder_set_translation_domain( GtkBuilderProjet_wind_treeview, "wind_treeview" ); + gtk_builder_connect_signals( GtkBuilderProjet_wind_treeview, NULL ); + + WindMain_wind_treeview = GTK_WIDGET( gtk_builder_get_object( GtkBuilderProjet_wind_treeview, "wind_treeview" )); + + if( NULL != FromWindMain ) { + gtk_window_set_transient_for (GTK_WINDOW(WindMain_wind_treeview), GTK_WINDOW(FromWindMain)); + gtk_window_set_modal (GTK_WINDOW(WindMain_wind_treeview), TRUE); + } + libutils_set_default_icone_to_win( WindMain_wind_treeview ); + + gtk_window_set_title( GTK_WINDOW( WindMain_wind_treeview ), "Modification des champs" ); + + gtk_widget_show_all( WindMain_wind_treeview ); + + wintreeview_set_etat_fields (); + + switch (Config.NotebookGeneral) { + case NOTEBOOK_DVD_AUDIO : + gtk_notebook_set_current_page (GTK_NOTEBOOK (gtk_builder_get_object( GtkBuilderProjet_wind_treeview, "notebook_windtreeview")), 0); + break; + case NOTEBOOK_CD_AUDIO : + gtk_notebook_set_current_page (GTK_NOTEBOOK (gtk_builder_get_object( GtkBuilderProjet_wind_treeview, "notebook_windtreeview")), 1); + break; + case NOTEBOOK_FICHIERS : + switch (Config.NotebookFile) { + case NOTEBOOK_FICHIERS_CONVERSION : + gtk_notebook_set_current_page (GTK_NOTEBOOK (gtk_builder_get_object( GtkBuilderProjet_wind_treeview, "notebook_windtreeview")), 2); + break; + case NOTEBOOK_FICHIERS_WAV : + gtk_notebook_set_current_page (GTK_NOTEBOOK (gtk_builder_get_object( GtkBuilderProjet_wind_treeview, "notebook_windtreeview")), 3); + break; + case NOTEBOOK_FICHIERS_MP3OGG : + gtk_notebook_set_current_page (GTK_NOTEBOOK (gtk_builder_get_object( GtkBuilderProjet_wind_treeview, "notebook_windtreeview")), 4); + break; + case NOTEBOOK_FICHIERS_TAGS : + gtk_notebook_set_current_page (GTK_NOTEBOOK (gtk_builder_get_object( GtkBuilderProjet_wind_treeview, "notebook_windtreeview")), 5); + break; + } + break; + default : + gtk_notebook_set_current_page (GTK_NOTEBOOK (gtk_builder_get_object( GtkBuilderProjet_wind_treeview, "notebook_general")), NOTEBOOK_DVD_AUDIO); + } + + return( TRUE ); +} + + + + + + + + + + + + + diff -Nru xcfa-4.3.8/src/win_treeview.h xcfa-5.0.1/src/win_treeview.h --- xcfa-4.3.8/src/win_treeview.h 1970-01-01 00:00:00.000000000 +0000 +++ xcfa-5.0.1/src/win_treeview.h 2015-01-31 13:22:32.000000000 +0000 @@ -0,0 +1,39 @@ + /* + * file : win_treeview.h + * project : xcfa + * with : Gtk-3 + * + * copyright : (C) 2003 - 2015 by Claude Bulin + * + * xcfa - GTK+ implementation of the GNU shell command + * GNU General Public License + * + * This file is part of XCFA. + * + * XCFA is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * at your option) any later version. + * + * XCFA is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with XCFA. If not, see . + */ + + +#ifndef win_treeview_h +#define win_treeview_h 1 + + +gboolean wintreeview_init( GtkWidget *FromWindMain ); +void wintreeview_open_window( void ); +void wintreeview_set_etat_fields( void ); +void wintreeview_radiobutton_set_PosFieldsName( void ); + + +#endif + diff -Nru xcfa-4.3.8/src/win_vte.c xcfa-5.0.1/src/win_vte.c --- xcfa-4.3.8/src/win_vte.c 2013-03-21 10:55:49.000000000 +0000 +++ xcfa-5.0.1/src/win_vte.c 2015-01-30 16:01:16.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : win_vte.h * project : xcfa - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - Creation d'une base de programmation en langage C de type GNU avec les autotools * GNU General Public License @@ -40,7 +40,7 @@ #if defined(FILE_DEBIAN_VTE_H_IS_OK) #include #elif defined(FILE_ARCH_VTE_H_IS_OK) - #include + #include #elif defined(FILE_FW_VTE_H_IS_OK) #include #endif @@ -119,7 +119,7 @@ void WinVte_realize( GtkWidget *widget ) { VarVte.AdrWidget = vte_terminal_new(); - vte_terminal_set_encoding( VTE_TERMINAL( VarVte.AdrWidget ),"UTF-8" ); + vte_terminal_set_encoding( VTE_TERMINAL( VarVte.AdrWidget ),"UTF-8", NULL ); gtk_container_add (GTK_CONTAINER (widget), VarVte.AdrWidget ); gtk_widget_show_all( widget ); WinVte_window_write( "Init VTE is ok.\n" ); diff -Nru xcfa-4.3.8/src/win_vte.h xcfa-5.0.1/src/win_vte.h --- xcfa-4.3.8/src/win_vte.h 2013-03-21 10:55:27.000000000 +0000 +++ xcfa-5.0.1/src/win_vte.h 2015-01-21 16:28:42.000000000 +0000 @@ -1,9 +1,9 @@ /* * file : win_vte.h * project : XCFA - * with : Gtk-2 + * with : Gtk-3 * - * copyright : (C) 2003 - 2013 by Claude Bulin + * copyright : (C) 2003 - 2015 by Claude Bulin * * xcfa - Creation d'une base de programmation en langage C de type GNU avec les autotools * GNU General Public License diff -Nru xcfa-4.3.8/src_cli/clib.c xcfa-5.0.1/src_cli/clib.c --- xcfa-4.3.8/src_cli/clib.c 1970-01-01 00:00:00.000000000 +0000 +++ xcfa-5.0.1/src_cli/clib.c 2014-12-25 14:39:53.000000000 +0000 @@ -0,0 +1,339 @@ +/* + * file : src/clib.c + * project : xcfa_cli + * copyright : (C) 2014 by BULIN Claude + * + * This file is part of xcfa_cli project + * + * xcfa_cli is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; version 3. + * + * xcfa_cli is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 + * USA + * + * --- + * This code is to prevent the use of the glibc library. + * Ce code est destiné à éviter l'utilisation de la librairie glibc. + * --- + */ + + +#ifdef HAVE_CONFIG_H + #include "../config.h" +#endif + + +#include +#include +#include +#include +#include +#include +#include + +#include "clib.h" + + + +CList *C_list_first( CList *p_clist ) +{ + while( p_clist && p_clist->previous != NULL ) + p_clist = p_clist->previous; + return( (CList *)p_clist ); +} + +CList *C_list_last( CList *p_clist ) +{ + while( p_clist && p_clist->next != NULL ) + p_clist = p_clist->next; + return( (CList *)p_clist ); +} + +CList *C_list_previous( CList *p_clist ) +{ + return( (CList *)p_clist->previous ); +} + +CList *C_list_next( CList *p_clist ) +{ + return( (CList *)p_clist->next ); +} + +CList *C_list_append( CList *p_clist, void *p_alloc ) +{ + CList *new_clist = NULL; + CList *list = NULL; + new_clist = (CList *)malloc( sizeof( CList ) ); + new_clist->previous = NULL; + new_clist->next = NULL; + new_clist->data = p_alloc; + if( NULL != (list = C_list_last( p_clist ))) { + list->next = new_clist; + new_clist->previous = list; + } + return( (CList *)new_clist ); +} + +CList *C_list_free( CList *p_clist ) +{ + CList *list = NULL; + if( NULL != (list = C_list_first( p_clist ))) + while( list ) { + list->data = NULL; + list = C_list_next( list ); + } + free( p_clist ); + p_clist = NULL; + return( (CList *)NULL ); +} + +CString *C_string_free( CString *p_cstring ) +{ + if( p_cstring ) { + if( p_cstring->str ) free( p_cstring->str ); + free( p_cstring ); + p_cstring = NULL; + } + return( (CString *)NULL ); +} + +CString *C_string_new( void ) +{ + CString *s = (CString *)malloc( sizeof( CString )); + s->str = NULL; + s->len = 0; + return( (CString *)s ); +} + +CString *C_string_append_printf( CString *p_cstring, const char *fmt, ... ) +{ + int n; + int size = 100; // Guess we need no more than 100 bytes + char *p, *np; + va_list ap; + + p = malloc( size ); + if( p == NULL ) + return NULL; + + while( 1 ) { + // Try to print in the allocated space + va_start( ap, fmt ); + n = vsnprintf( p, size, fmt, ap ); + va_end( ap ); + // Check error code + if( n < 0 ) { + free( p ); + return NULL; + } + // If that worked, return the string + if( n < size ) { + char *s = C_strdup_printf( "%s%s", p_cstring->str ? p_cstring->str : "", p ); + free( p ); + if( p_cstring->str ) free( p_cstring->str ); + p_cstring->str = s; + p_cstring->len = strlen( s ); + return( p_cstring ); + } + // Else try again with more space + size = n + 1; // Precisely what is needed + np = realloc( p, size ); + if( np == NULL ) { + free( p ); + return NULL; + } else { + p = np; + } + } +} + +char *C_strdup( char *p_str ) +{ + int len = ( sizeof( char *) * strlen( p_str ) ) + 2; + char *new_alloc = (char *)malloc( len ); + strcpy( new_alloc, p_str ); + return( (char *)new_alloc ); +} + +char *C_strdup_printf( const char *fmt, ... ) +{ + int n; + int size = 100; // Guess we need no more than 100 bytes + char *p, *np; + va_list ap; + + p = malloc( size ); + if( p == NULL ) + return NULL; + + while( 1 ) { + // Try to print in the allocated space + va_start( ap, fmt ); + n = vsnprintf( p, size, fmt, ap ); + va_end( ap ); + // Check error code + if( n < 0 ) { + free( p ); + return NULL; + } + // If that worked, return the string + if( n < size ) + return p; + // Else try again with more space + size = n + 1; // Precisely what is needed + np = realloc( p, size ); + if( np == NULL ) { + free( p ); + return NULL; + } else { + p = np; + } + } +} + +C_BOOL C_dir_test( char *p_dir ) +{ + struct stat status; + int ret; + ret = stat( p_dir, &status ); + return( ret > -1 && S_ISDIR( status.st_mode ) ? TRUE : FALSE ); +} + +C_BOOL C_file_test( char *p_file ) +{ + struct stat status; + int ret; + ret = stat( p_file, &status ); + return( ret > -1 && S_ISREG( status.st_mode ) ? TRUE : FALSE ); +} + +C_BOOL C_mkdir_with_parents( char *p_path ) +{ + char *LineCommand = NULL; + if( p_path != NULL ) { + if( C_dir_test( p_path ) == FALSE ) { + LineCommand = C_strdup_printf( "mkdir -p \"%s\"", p_path ); + system( LineCommand ); + free( LineCommand ); + LineCommand = NULL; + return( TRUE ); + } + } + return( FALSE ); +} + +void C_rmdir( char *p_path ) +{ + pid_t pid; + if( p_path != NULL ) { + if( (pid = fork()) == 0 ) { + execlp ( + "rm", + "rm", + "-rf", + p_path, + NULL + ); + } + } +} + +char **C_strsplit( const char *string, const char *delimiter ) +{ + char **Buf = NULL; + char *p = NULL; + int n; + + for( n = 0, p = (char *)string; *p; p ++ ) + if( *p == *delimiter ) n ++; + if( NULL == (Buf = (char **)malloc( sizeof( char ** ) * ( n + 4 ) ))) return( (char **)NULL ); + n = 0; + p = strtok( (char *)string, delimiter ); + while( p != NULL ) { + Buf[ n ++ ] = C_strdup( p ); + p = strtok( NULL, delimiter ); + } + Buf[ n ] = NULL; + return( (char **)Buf ); +} + +char **C_strfreev( char **p_Larrbuf ) +{ + int n; + for( n = 0; p_Larrbuf[ n ]; n ++ ) + if( p_Larrbuf[ n ] ) { + free( p_Larrbuf[ n ] ); + p_Larrbuf[ n ] = NULL; + } + free( p_Larrbuf ); + p_Larrbuf = NULL; + return( (char **)NULL ); + +} + +int C_list_length( CList *p_clist ) +{ + CList *list = NULL; + int cpt = 0; + if( NULL != (list = C_list_first( p_clist ))) + while( list ) { + cpt ++; + list = C_list_next( list ); + } + return( (int)cpt ); +} + +char *C_path_get_basename( char *p_path ) +{ + char *ptr = NULL; + if( NULL != ( ptr = strrchr( p_path, '/' ))) { + ptr ++; + return( C_strdup( ptr )); + } + return( (char *)NULL ); +} + +char *C_ascii_strdown( char *p_str ) +{ + char *str = C_strdup( p_str ); + char *ptr = NULL; + for( ptr = str; *ptr; ptr ++ ) + *ptr = tolower( *ptr ); + return( (char *)str ); +} + +char *C_ascii_strup( char *p_str ) +{ + char *str = C_strdup( p_str ); + char *ptr = NULL; + for( ptr = str; *ptr; ptr ++ ) + *ptr = toupper( *ptr ); + return( (char *)str ); +} + +C_BOOL C_find_program_in_path( char *p_find ) +{ + char *path[] = { "/bin/", "/usr/bin/", "/usr/sbin/" , "/usr/local/bin/" }; + char *p = NULL; + C_BOOL bool_find = FALSE; + int i; + if( p_find ) + for( i = 0; i < 4; i ++ ) { + p = C_strdup_printf( "%s%s", path[ i ], p_find ); + bool_find = C_file_test( p ); + free( p ); + p = NULL; + if( TRUE == bool_find ) return( TRUE ); + } + return( FALSE ); +} + + diff -Nru xcfa-4.3.8/src_cli/clib.h xcfa-5.0.1/src_cli/clib.h --- xcfa-4.3.8/src_cli/clib.h 1970-01-01 00:00:00.000000000 +0000 +++ xcfa-5.0.1/src_cli/clib.h 2014-12-22 16:53:38.000000000 +0000 @@ -0,0 +1,78 @@ +/* + * file : src/clib.h + * project : xcfa_cli + * copyright : (C) 2014 by BULIN Claude + * + * This file is part of xcfa_cli project + * + * xcfa_cli is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; version 3. + * + * xcfa_cli is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 + * USA + * + * --- + * This code is to prevent the use of the glibc library. + * Ce code est destiné à éviter l'utilisation de la librairie glibc. + * --- + */ + + +#ifndef clib_h +#define clib_h 1 + +// definition d'un nouveau type +typedef enum { FALSE=0, TRUE } C_BOOL; + +typedef struct { + char *str; + int len; +} CString; + +typedef struct _clist CList; +struct _clist { + CList *previous; + CList *next; + void *data; +}; + +CList *C_list_first( CList *p_clist ); +CList *C_list_last( CList *p_clist ); +CList *C_list_previous( CList *p_clist ); +CList *C_list_next( CList *p_clist ); +CList *C_list_append( CList *p_clist, void *p_alloc ); +CList *C_list_free( CList *p_clist ); +int C_list_length( CList *p_clist ); + +char *C_strdup( char *p_str ); +char *C_strdup_printf( const char *fmt, ... ); + +CString *C_string_new( void ); +CString *C_string_free( CString *p_cstring ); +CString *C_string_append_printf( CString *p_cstring, const char *fmt, ... ); + +C_BOOL C_dir_test( char *p_dir ); +C_BOOL C_file_test( char *p_file ); + +C_BOOL C_mkdir_with_parents( char *p_path ); +void C_rmdir( char *p_path ); + +char **C_strsplit( const char *string, const char *delimiter ); +char **C_strfreev( char **p_Larrbuf ); + +char *C_path_get_basename( char *p_path ); + +char *C_ascii_strdown( char *p_str ); +char *C_ascii_strup( char *p_str ); + +C_BOOL C_find_program_in_path( char *p_find ); + +#endif diff -Nru xcfa-4.3.8/src_cli/conv.c xcfa-5.0.1/src_cli/conv.c --- xcfa-4.3.8/src_cli/conv.c 1970-01-01 00:00:00.000000000 +0000 +++ xcfa-5.0.1/src_cli/conv.c 2015-02-05 11:34:46.000000000 +0000 @@ -0,0 +1,1601 @@ +/* + * file : src/conv.c + * project : xcfa_cli + * copyright : (C) 2014 by BULIN Claude + * + * This file is part of xcfa_cli project + * + * xcfa_cli is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; version 3. + * + * xcfa_cli is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 + * USA + */ + + +#ifdef HAVE_CONFIG_H + #include "../config.h" +#endif + +#include +#include +#include +#include +#include +#include +#include +#include +// #include // PROCESSUS NON-BLOQUANT + +#include "global.h" +#include "prg_init.h" +#include "tags.h" +#include "conv.h" + + +/* +*--------------------------------------------------------------------------- +* EXTERN +*--------------------------------------------------------------------------- +*/ +extern int kill( pid_t pid, int sig ); + + +/* +*--------------------------------------------------------------------------- +* VARIABLES +*--------------------------------------------------------------------------- +*/ + +#define CONV_MAX_CARS 1024 + +CONV conv; + + +// +// Allocate Tab Args +// +char **conv_AllocTabArgs( int *p_tab ) +{ + int len_malloc = + 50 + // nbr elements + C_list_length( Detail.ListFile ); // list length + char **PtrTab = (char **)malloc( sizeof(char **) * len_malloc ); + + *p_tab = 0; + if( Detail.Nice >= 0 && Detail.Nice <= 20) { + PtrTab [ 0 ] = C_strdup( "nice" ); + PtrTab [ 1 ] = C_strdup( "-n" ); + PtrTab [ 2 ] = C_strdup_printf( "%d", Detail.Nice ); + *p_tab = 3; + } + return( (char **)PtrTab ); +} + +// +// Remove Tab Args +// +char **conv_RemoveTab( char **p_PtrTabArgs ) +{ + int i; + + for( i = 0; p_PtrTabArgs[ i ] != NULL; i ++ ) { + free( p_PtrTabArgs[ i ] ); + p_PtrTabArgs[ i ] = NULL; + } + free( p_PtrTabArgs ); + p_PtrTabArgs = NULL; + + return( (char **)NULL ); +} + +char **conv_get_command_line( + TYPE_CONV type_conv, + char *src, + char *dest, + TAGS *InfosTags, + char *options + ) +{ + char **PtrTabArgs = NULL; + char **Larrbuf = NULL; + int i; + int pos; + + PtrTabArgs = conv_AllocTabArgs( &pos ); + + if( type_conv == LAME_WAV_TO_MP3 ) { + PtrTabArgs [ pos++ ] = C_strdup( "lame" ); + + Larrbuf = C_strsplit( options, " " ); + for( i=0; Larrbuf[i]; i++ ) { + PtrTabArgs [ pos++ ] = C_strdup( Larrbuf[i] ); + } + C_strfreev( Larrbuf ); + + if( NULL != InfosTags ) { + if( Detail.tag_album || Detail.tag_artist || Detail.tag_comment || Detail.tag_genre || Detail.tag_number || Detail.tag_title || Detail.tag_year || + InfosTags->Album || InfosTags->Artist || InfosTags->Comment || InfosTags->Genre || InfosTags->Number || InfosTags->Title || InfosTags->Year ) + { + PtrTabArgs [ pos++ ] = C_strdup( "--add-id3v2" ); + + if( Detail.tag_album || InfosTags->Album ) { + PtrTabArgs [ pos++ ] = C_strdup ("--tl" ); + if( Detail.tag_album ) + PtrTabArgs [ pos++ ] = C_strdup( Detail.tag_album ); + else if( InfosTags->Album ) + PtrTabArgs [ pos++ ] = C_strdup( InfosTags->Album ); + } + if( Detail.tag_artist || InfosTags->Artist ) { + PtrTabArgs [ pos++ ] = C_strdup( "--ta" ); + if( Detail.tag_artist ) + PtrTabArgs [ pos++ ] = C_strdup( Detail.tag_artist ); + else if( InfosTags->Artist ) + PtrTabArgs [ pos++ ] = C_strdup( InfosTags->Artist ); + } + if( Detail.tag_comment || InfosTags->Comment ) { + PtrTabArgs [ pos++ ] = C_strdup( "--tc" ); + if( Detail.tag_comment ) + PtrTabArgs [ pos++ ] = C_strdup( Detail.tag_comment ); + else if( InfosTags->Comment ) + PtrTabArgs [ pos++ ] = C_strdup( InfosTags->Comment ); + } + if( Detail.tag_genre || InfosTags->Genre ) { + // int NumTagMp3 = tags_get_genre_by_value( Detail.tag_genre ? Detail.tag_genre : InfosTags->Genre ); + // if( NumTagMp3 < 0 ) NumTagMp3 = 0; + // PtrTabArgs [ pos++ ] = C_strdup( "--tg" ); + // PtrTabArgs [ pos++ ] = C_strdup_printf( "%d", NumTagMp3 ); + PtrTabArgs [ pos++ ] = C_strdup( "--tg" ); + if( Detail.tag_genre ) + PtrTabArgs [ pos++ ] = C_strdup_printf( "%s", Detail.tag_genre ); + else if( InfosTags->Genre ) + PtrTabArgs [ pos++ ] = C_strdup_printf( "%s", InfosTags->Genre ); + } + if( Detail.tag_number || InfosTags->Number ) { + PtrTabArgs [ pos++ ] = C_strdup( "--tn" ); + if( Detail.tag_number ) + PtrTabArgs [ pos++ ] = C_strdup( Detail.tag_number ); + else if( InfosTags->Number ) + PtrTabArgs [ pos++ ] = C_strdup( InfosTags->Number ); + } + if( Detail.tag_title || InfosTags->Title ) { + PtrTabArgs [ pos++ ] = C_strdup( "--tt" ); + if( Detail.tag_title ) + PtrTabArgs [ pos++ ] = C_strdup( Detail.tag_title ); + else if( InfosTags->Title ) + PtrTabArgs [ pos++ ] = C_strdup( InfosTags->Title ); + } + if( Detail.tag_year || InfosTags->Year ) { + PtrTabArgs [ pos++ ] = C_strdup( "--ty" ); + if( Detail.tag_year ) + PtrTabArgs [ pos++ ] = C_strdup( Detail.tag_year ); + else if( InfosTags->Year ) + PtrTabArgs [ pos++ ] = C_strdup( InfosTags->Year ); + } + } + } + PtrTabArgs [ pos++ ] = C_strdup( src ); + PtrTabArgs [ pos++ ] = C_strdup ("-o"); + PtrTabArgs [ pos++ ] = C_strdup( dest ); + PtrTabArgs [ pos++ ] = NULL; + } + else if (type_conv == OGGENC_WAV_TO_OGG || type_conv == OGGENC_FLAC_TO_OGG) { + + PtrTabArgs[ pos++ ] = C_strdup ("oggenc"); + PtrTabArgs [ pos++ ] = C_strdup( src ); + + Larrbuf = C_strsplit( options, " " ); + for( i=0; Larrbuf[i]; i++ ) { + PtrTabArgs [ pos++ ] = C_strdup( Larrbuf[i] ); + } + C_strfreev( Larrbuf ); + + if( NULL != InfosTags ) { + if( Detail.tag_album || InfosTags->Album ) { + PtrTabArgs [ pos++ ] = C_strdup ("-l" ); + if( Detail.tag_album ) + PtrTabArgs [ pos++ ] = C_strdup( Detail.tag_album ); + else if( InfosTags->Album ) + PtrTabArgs [ pos++ ] = C_strdup( InfosTags->Album ); + } + if( Detail.tag_artist || InfosTags->Artist ) { + PtrTabArgs [ pos++ ] = C_strdup( "-a" ); + if( Detail.tag_artist ) + PtrTabArgs [ pos++ ] = C_strdup( Detail.tag_artist ); + else if( InfosTags->Artist ) + PtrTabArgs [ pos++ ] = C_strdup( InfosTags->Artist ); + } + if( Detail.tag_comment || InfosTags->Comment ) { + PtrTabArgs [ pos++ ] = C_strdup( "-c" ); + if( Detail.tag_comment ) + PtrTabArgs [ pos++ ] = C_strdup( Detail.tag_comment ); + else if( InfosTags->Comment ) + PtrTabArgs [ pos++ ] = C_strdup( InfosTags->Comment ); + } + if( Detail.tag_genre || InfosTags->Genre ) { + PtrTabArgs [ pos++ ] = C_strdup( "-G" ); + if( Detail.tag_genre ) + PtrTabArgs [ pos++ ] = C_strdup( Detail.tag_genre ); + else if( InfosTags->Genre ) + PtrTabArgs [ pos++ ] = C_strdup( InfosTags->Genre ); + } + if( Detail.tag_number || InfosTags->Number ) { + PtrTabArgs [ pos++ ] = C_strdup( "-N" ); + if( Detail.tag_number ) + PtrTabArgs [ pos++ ] = C_strdup( Detail.tag_number ); + else if( InfosTags->Number ) + PtrTabArgs [ pos++ ] = C_strdup( InfosTags->Number ); + } + if( Detail.tag_title || InfosTags->Title ) { + PtrTabArgs [ pos++ ] = C_strdup( "-t" ); + if( Detail.tag_title ) + PtrTabArgs [ pos++ ] = C_strdup( Detail.tag_title ); + else if( InfosTags->Title ) + PtrTabArgs [ pos++ ] = C_strdup( InfosTags->Title ); + } + if( Detail.tag_year || InfosTags->Year ) { + PtrTabArgs [ pos++ ] = C_strdup( "--date" ); + if( Detail.tag_year ) + PtrTabArgs [ pos++ ] = C_strdup( Detail.tag_year ); + else if( InfosTags->Year ) + PtrTabArgs [ pos++ ] = C_strdup( InfosTags->Year ); + } + } + + PtrTabArgs[ pos++ ] = C_strdup ("-o"); + PtrTabArgs [ pos++ ] = C_strdup( dest ); + PtrTabArgs[ pos++ ] = NULL; + } + else if (type_conv == FLAC_WAV_TO_FLAC || type_conv == FLAC_FLAC_TO_WAV) { + + PtrTabArgs[ pos++ ] = C_strdup ("flac"); + + Larrbuf = C_strsplit( options, " " ); + for( i=0; Larrbuf[i]; i++ ) { + PtrTabArgs [ pos++ ] = C_strdup( Larrbuf[i] ); + } + C_strfreev( Larrbuf ); + + if( NULL != InfosTags ) { + if( Detail.tag_album || InfosTags->Album ) { + PtrTabArgs [ pos++ ] = C_strdup( "-T" ); + if( Detail.tag_album ) + PtrTabArgs[ pos++ ] = C_strdup_printf( "title=%s", Detail.tag_album ); + else if( InfosTags->Album ) + PtrTabArgs[ pos++ ] = C_strdup_printf( "title=%s", InfosTags->Album ); + } + if( Detail.tag_artist || InfosTags->Artist ) { + PtrTabArgs [ pos++ ] = C_strdup( "-T" ); + if( Detail.tag_artist ) + PtrTabArgs[ pos++ ] = C_strdup_printf( "artist=%s", Detail.tag_artist ); + else if( InfosTags->Artist ) + PtrTabArgs[ pos++ ] = C_strdup_printf( "artist=%s", InfosTags->Artist ); + } + if( Detail.tag_comment || InfosTags->Comment ) { + PtrTabArgs [ pos++ ] = C_strdup( "-T" ); + if( Detail.tag_comment ) + PtrTabArgs[ pos++ ] = C_strdup_printf( "Description=%s", Detail.tag_comment ); + else if( InfosTags->Comment ) + PtrTabArgs[ pos++ ] = C_strdup_printf( "Description=%s", InfosTags->Comment ); + } + if( Detail.tag_genre || InfosTags->Genre ) { + PtrTabArgs [ pos++ ] = C_strdup( "-T" ); + if( Detail.tag_genre ) + PtrTabArgs[ pos++ ] = C_strdup_printf( "genre=%s", Detail.tag_genre ); + else if( InfosTags->Genre ) + PtrTabArgs[ pos++ ] = C_strdup_printf( "genre=%s", InfosTags->Genre ); + } + if( Detail.tag_number || InfosTags->Number ) { + PtrTabArgs [ pos++ ] = C_strdup( "-T" ); + if( Detail.tag_number ) + PtrTabArgs[ pos++ ] = C_strdup_printf( "tracknumber=%s", Detail.tag_number ); + else if( InfosTags->Number ) + PtrTabArgs[ pos++ ] = C_strdup_printf( "tracknumber=%s", InfosTags->Number ); + } + if( Detail.tag_title || InfosTags->Title ) { + PtrTabArgs [ pos++ ] = C_strdup( "-T" ); + if( Detail.tag_title ) + PtrTabArgs[ pos++ ] = C_strdup_printf( "title=%s", Detail.tag_title ); + else if( InfosTags->Title ) + PtrTabArgs[ pos++ ] = C_strdup_printf( "title=%s", InfosTags->Title ); + } + if( Detail.tag_year || InfosTags->Year ) { + PtrTabArgs [ pos++ ] = C_strdup( "-T" ); + if( Detail.tag_year ) + PtrTabArgs[ pos++ ] = C_strdup_printf( "date=%s", Detail.tag_year ); + else if( InfosTags->Year ) + PtrTabArgs[ pos++ ] = C_strdup_printf( "date=%s", InfosTags->Year ); + } + } + + if( type_conv == FLAC_FLAC_TO_WAV ) PtrTabArgs [ pos++ ] = C_strdup ("-d"); + + PtrTabArgs[ pos++ ] = C_strdup ("-f"); + PtrTabArgs [ pos++ ] = C_strdup( src ); + PtrTabArgs [ pos++ ] = C_strdup ("-o"); + PtrTabArgs [ pos++ ] = C_strdup( dest ); + PtrTabArgs [ pos++ ] = NULL; + } + else if (type_conv == FAAC_WAV_TO_M4A) { + + PtrTabArgs [ pos++ ] = C_strdup ("faac"); + + Larrbuf = C_strsplit( options, " " ); + for( i=0; Larrbuf[i]; i++ ) { + PtrTabArgs [ pos++ ] = C_strdup( Larrbuf[i] ); + } + C_strfreev( Larrbuf ); + + if( NULL != InfosTags ) { + if( Detail.tag_album || InfosTags->Album ) { + PtrTabArgs [ pos++ ] = C_strdup( "--album" ); + if( Detail.tag_album ) + PtrTabArgs[ pos++ ] = C_strdup( Detail.tag_album ); + else if( InfosTags->Album ) + PtrTabArgs[ pos++ ] = C_strdup( InfosTags->Album ); + } + if( Detail.tag_artist || InfosTags->Artist ) { + PtrTabArgs [ pos++ ] = C_strdup( "--artist" ); + if( Detail.tag_artist ) + PtrTabArgs[ pos++ ] = C_strdup( Detail.tag_artist ); + else if( InfosTags->Artist ) + PtrTabArgs[ pos++ ] = C_strdup( InfosTags->Artist ); + } + if( Detail.tag_comment || InfosTags->Comment ) { + PtrTabArgs [ pos++ ] = C_strdup( "--comment" ); + if( Detail.tag_comment ) + PtrTabArgs[ pos++ ] = C_strdup( Detail.tag_comment ); + else if( InfosTags->Comment ) + PtrTabArgs[ pos++ ] = C_strdup( InfosTags->Comment ); + } + if( Detail.tag_genre || InfosTags->Genre ) { + PtrTabArgs [ pos++ ] = C_strdup( "--genre" ); + if( Detail.tag_genre ) + PtrTabArgs[ pos++ ] = C_strdup( Detail.tag_genre ); + else if( InfosTags->Genre ) + PtrTabArgs[ pos++ ] = C_strdup( InfosTags->Genre ); + } + if( Detail.tag_number || InfosTags->Number ) { + PtrTabArgs [ pos++ ] = C_strdup("--track" ); + if( Detail.tag_number ) + PtrTabArgs[ pos++ ] = C_strdup( Detail.tag_number ); + else if( InfosTags->Number ) + PtrTabArgs[ pos++ ] = C_strdup( InfosTags->Number ); + } + if( Detail.tag_title || InfosTags->Title ) { + PtrTabArgs [ pos++ ] = C_strdup( "--title" ); + if( Detail.tag_title ) + PtrTabArgs[ pos++ ] = C_strdup( Detail.tag_title ); + else if( InfosTags->Title ) + PtrTabArgs[ pos++ ] = C_strdup( InfosTags->Title ); + } + if( Detail.tag_year || InfosTags->Year ) { + PtrTabArgs [ pos++ ] = C_strdup( "--year" ); + if( Detail.tag_year ) + PtrTabArgs[ pos++ ] = C_strdup( Detail.tag_year ); + else if( InfosTags->Year ) + PtrTabArgs[ pos++ ] = C_strdup( InfosTags->Year ); + } + + } + PtrTabArgs [ pos++ ] = C_strdup ("-o"); + PtrTabArgs [ pos++ ] = C_strdup( dest ); + PtrTabArgs [ pos++ ] = C_strdup( src ); + PtrTabArgs [ pos++ ] = NULL; + } + else if (type_conv == MPPENC_WAV_TO_MPC) { + + PtrTabArgs[ pos++ ] = C_strdup (prginit_get_name (NMR_musepack_tools_mppenc)); + PtrTabArgs[ pos++ ] = C_strdup ("--verbose"); + PtrTabArgs[ pos++ ] = C_strdup ("--overwrite"); + + Larrbuf = C_strsplit( options, " " ); + for( i=0; Larrbuf[i]; i++ ) { + PtrTabArgs [ pos++ ] = C_strdup( Larrbuf[i] ); + } + C_strfreev( Larrbuf ); + + if( NULL != InfosTags ) { + if( Detail.tag_album || InfosTags->Album ) { + PtrTabArgs [ pos++ ] = C_strdup( "--album" ); + if( Detail.tag_album ) + PtrTabArgs[ pos++ ] = C_strdup( Detail.tag_album ); + else if( InfosTags->Album ) + PtrTabArgs[ pos++ ] = C_strdup( InfosTags->Album ); + } + if( Detail.tag_artist || InfosTags->Artist ) { + PtrTabArgs [ pos++ ] = C_strdup( "--artist" ); + if( Detail.tag_artist ) + PtrTabArgs[ pos++ ] = C_strdup( Detail.tag_artist ); + else if( InfosTags->Artist ) + PtrTabArgs[ pos++ ] = C_strdup( InfosTags->Artist ); + } + if( Detail.tag_comment || InfosTags->Comment ) { + PtrTabArgs [ pos++ ] = C_strdup( "--comment" ); + if( Detail.tag_comment ) + PtrTabArgs[ pos++ ] = C_strdup( Detail.tag_comment ); + else if( InfosTags->Comment ) + PtrTabArgs[ pos++ ] = C_strdup( InfosTags->Comment ); + } + if( Detail.tag_genre || InfosTags->Genre ) { + PtrTabArgs [ pos++ ] = C_strdup( "--genre" ); + if( Detail.tag_genre ) + PtrTabArgs[ pos++ ] = C_strdup( Detail.tag_genre ); + else if( InfosTags->Genre ) + PtrTabArgs[ pos++ ] = C_strdup( InfosTags->Genre ); + } + if( Detail.tag_number || InfosTags->Number ) { + PtrTabArgs [ pos++ ] = C_strdup("--track" ); + if( Detail.tag_number ) + PtrTabArgs[ pos++ ] = C_strdup( Detail.tag_number ); + else if( InfosTags->Number ) + PtrTabArgs[ pos++ ] = C_strdup( InfosTags->Number ); + } + if( Detail.tag_title || InfosTags->Title ) { + PtrTabArgs [ pos++ ] = C_strdup( "--title" ); + if( Detail.tag_title ) + PtrTabArgs[ pos++ ] = C_strdup( Detail.tag_title ); + else if( InfosTags->Title ) + PtrTabArgs[ pos++ ] = C_strdup( InfosTags->Title ); + } + if( Detail.tag_year || InfosTags->Year ) { + PtrTabArgs [ pos++ ] = C_strdup( "--year" ); + if( Detail.tag_year ) + PtrTabArgs[ pos++ ] = C_strdup( Detail.tag_year ); + else if( InfosTags->Year ) + PtrTabArgs[ pos++ ] = C_strdup( InfosTags->Year ); + } + } + PtrTabArgs [ pos++ ] = C_strdup( src ); + PtrTabArgs [ pos++ ] = C_strdup( dest ); + PtrTabArgs[ pos++ ] = NULL; + } + else if (type_conv == MAC_WAV_TO_APE || type_conv == MAC_APE_TO_WAV) { + + PtrTabArgs[ pos++ ] = C_strdup (prginit_get_name (NMR_mac)); + PtrTabArgs [ pos++ ] = C_strdup( src ); + PtrTabArgs [ pos++ ] = C_strdup( dest ); + if( type_conv == MAC_APE_TO_WAV ) { + PtrTabArgs[ pos++ ] = C_strdup ("-d"); + } + else { + Larrbuf = C_strsplit( options, " " ); + for( i=0; Larrbuf[i]; i++ ) { + PtrTabArgs [ pos++ ] = C_strdup( Larrbuf[i] ); + } + C_strfreev( Larrbuf ); + } + PtrTabArgs[ pos++ ] = NULL; + } + else if (type_conv == WVUNPACK_WAVPACK_TO_WAV) { + PtrTabArgs[ pos++ ] = C_strdup( "wvunpack"); + PtrTabArgs[ pos++ ] = C_strdup ("-y"); + PtrTabArgs [ pos++ ] = C_strdup( src ); + PtrTabArgs[ pos++ ] = C_strdup ("-o"); + PtrTabArgs [ pos++ ] = C_strdup( dest ); + PtrTabArgs [ pos++ ] = NULL; + } + else if (type_conv == WAVPACK_WAV_TO_WAVPACK) { + + PtrTabArgs[ pos++ ] = C_strdup ("wavpack"); + PtrTabArgs[ pos++ ] = C_strdup ("-y"); + + Larrbuf = C_strsplit( options, " " ); + for( i=0; Larrbuf[i]; i++ ) { + PtrTabArgs [ pos++ ] = C_strdup( Larrbuf[i] ); + } + C_strfreev( Larrbuf ); + + if( NULL != InfosTags ) { + if( Detail.tag_album || InfosTags->Album ) { + PtrTabArgs [ pos++ ] = C_strdup( "-w" ); + if( Detail.tag_album ) + PtrTabArgs[ pos++ ] = C_strdup_printf( "Album=%s", Detail.tag_album ); + else if( InfosTags->Album ) + PtrTabArgs[ pos++ ] = C_strdup_printf( "Album=%s", InfosTags->Album ); + } + if( Detail.tag_artist || InfosTags->Artist ) { + PtrTabArgs [ pos++ ] = C_strdup( "-w" ); + if( Detail.tag_artist ) + PtrTabArgs[ pos++ ] = C_strdup_printf( "Artist=%s", Detail.tag_artist ); + else if( InfosTags->Artist ) + PtrTabArgs[ pos++ ] = C_strdup_printf( "Artist=%s", InfosTags->Artist ); + } + if( Detail.tag_comment || InfosTags->Comment ) { + PtrTabArgs [ pos++ ] = C_strdup( "-w" ); + if( Detail.tag_comment ) + PtrTabArgs[ pos++ ] = C_strdup_printf( "Comment=%s", Detail.tag_comment ); + else if( InfosTags->Comment ) + PtrTabArgs[ pos++ ] = C_strdup_printf( "Comment=%s", InfosTags->Comment ); + } + if( Detail.tag_genre || InfosTags->Genre ) { + PtrTabArgs [ pos++ ] = C_strdup( "-w" ); + if( Detail.tag_genre ) + PtrTabArgs[ pos++ ] = C_strdup_printf( "Genre=%s", Detail.tag_genre ); + else if( InfosTags->Genre ) + PtrTabArgs[ pos++ ] = C_strdup_printf( "Genre=%s", InfosTags->Genre ); + } + if( Detail.tag_number || InfosTags->Number ) { + PtrTabArgs [ pos++ ] = C_strdup( "-w" ); + if( Detail.tag_number ) + PtrTabArgs[ pos++ ] = C_strdup_printf( "Track=%s", Detail.tag_number ); + else if( InfosTags->Number ) + PtrTabArgs[ pos++ ] = C_strdup_printf( "Track=%s", InfosTags->Number ); + } + if( Detail.tag_title || InfosTags->Title ) { + PtrTabArgs [ pos++ ] = C_strdup( "-w" ); + if( Detail.tag_title ) + PtrTabArgs[ pos++ ] = C_strdup_printf( "Title=%s", Detail.tag_title ); + else if( InfosTags->Title ) + PtrTabArgs[ pos++ ] = C_strdup_printf( "Title=%s", InfosTags->Title ); + } + if( Detail.tag_year || InfosTags->Year ) { + PtrTabArgs [ pos++ ] = C_strdup( "-w" ); + if( Detail.tag_year ) + PtrTabArgs[ pos++ ] = C_strdup_printf( "Year=%s", Detail.tag_year ); + else if( InfosTags->Year ) + PtrTabArgs[ pos++ ] = C_strdup_printf( "Year=%s", InfosTags->Year ); + } + } + PtrTabArgs [ pos++ ] = C_strdup( src ); + PtrTabArgs[ pos++ ] = C_strdup ("-o"); + PtrTabArgs [ pos++ ] = C_strdup( dest ); + PtrTabArgs[ pos++ ] = NULL; + } + else if (type_conv == AACPLUSENC_WAV_TO_AAC) { + + PtrTabArgs[ pos++ ] = C_strdup ("aacplusenc"); + PtrTabArgs [ pos++ ] = C_strdup( src ); + PtrTabArgs [ pos++ ] = C_strdup( dest ); + + Larrbuf = C_strsplit( options, " " ); + for( i=0; Larrbuf[i]; i++ ) { + PtrTabArgs [ pos++ ] = C_strdup( Larrbuf[i] ); + } + C_strfreev( Larrbuf ); + + PtrTabArgs[ pos++ ] = NULL; + } + + return( (char **)PtrTabArgs ); +} + +/* +*--------------------------------------------------------------------------- +* SIGNAL ET CONVERSIONS +*--------------------------------------------------------------------------- +*/ +void conv_sigchld_convert (int signum) +{ + int status; + + wait(&status); + // if there are still children waiting + // re-install the signal handler + conv.signal_numchildren_conv --; + if( conv.signal_numchildren_conv > 0 ) { + // re-install the signal handler + signal (SIGCHLD, conv_sigchld_convert); + } +} +int conv_call_exec (char **args, pid_t *p, int p_output) +{ + char **ptr = (char **)args; + // int status; + + conv.signal_numchildren_conv = 0; + if( pipe (conv.tube_conv) != 0 ) { + fprintf (stderr, "error: pipe\n"); + exit (1); + } + if( (*p = fork()) == 0 ) { + dup2 (conv.tube_conv [ 1 ], p_output); + close (conv.tube_conv [ 1 ]); + execvp ((char *)*(ptr+0), ptr); + fprintf (stderr, "error: exec"); + exit (2); + } + conv.signal_numchildren_conv ++; + signal (SIGCHLD, conv_sigchld_convert); + close (conv.tube_conv [ 1 ]); + + // LE FICHIER EST OUVERT EN MODE « NON-BLOQUANT » + // status = fcntl( conv.tube_conv [ 0 ], F_GETFL ); + // status = fcntl( conv.tube_conv [ 0 ], F_SETFL, status | O_NONBLOCK ); + + return( conv.tube_conv [ 0 ] ); +} + + +// MPLAYER +// +C_BOOL conv_with_mplayer_ARGS (char **args, TYPE_CONV p_TypeConv) +{ + int pos = 0; + int fd = -1; + int size; + char buf [ CONV_MAX_CARS + 10 ]; + C_BOOL BoolRet = TRUE; + C_BOOL BoolErreurMplayer = FALSE; + + fd = conv_call_exec (args, &conv.code_fork_conv, STDERR_FILENO ); + do { + pos = -1; + do { + pos++; + if (pos >= CONV_MAX_CARS) { + PRINT_FUNC_LF(); + printf ("pos(%d) >= CONV_MAX_CARS(%d)\n", pos, CONV_MAX_CARS); + pos --; + } + size = read(fd, &buf[pos], 1); + + if (strstr(buf,"Audio: no sound")) { + BoolRet = FALSE; + BoolErreurMplayer = TRUE; + break; + } + if (strstr(buf,"relocation error")) { + BoolRet = FALSE; + BoolErreurMplayer = TRUE; + break; + } + } while ( (buf[pos] != '\b') && (buf[pos] != '\r') && (buf[pos] != '\n') && (size > 0)); + + if (TRUE == BoolErreurMplayer) break; + + if (buf[pos] != '\n') { + pos ++; + buf[pos++] = '\n'; + buf[pos] = '\0'; + } + + } while ((size > 0)); + close(fd); + + if (TRUE == BoolErreurMplayer) { + printf("\n"); + printf("BoolErreurMplayer = TRUE\n"); + printf("KILL Process mplayer = "); + if ((kill (conv.code_fork_conv, SIGKILL) != 0)) + printf ("ERREUR\n"); + else printf ("OK\n"); + printf("\n"); + } + + conv.code_fork_conv = -1; + return (BoolRet); +} +// SOX +// +void conv_with_sox_ARGS (char **args) +{ + int fd; + int size; + int pos = 0; + char buf [ CONV_MAX_CARS + 10 ]; + + fd = conv_call_exec (args, &conv.code_fork_conv, STDOUT_FILENO ); // STDERR_FILENO STDOUT_FILENO STDIN_FILENO + do { + pos = -1; + do { + pos++; + if (pos >= CONV_MAX_CARS) { + PRINT_FUNC_LF(); + printf ("pos(%d) >= CONV_MAX_CARS(%d)\n", pos, CONV_MAX_CARS); + pos --; + } + size = read(fd, &buf[pos], 1); + + } while ((buf[pos] != '\b') && (buf[pos] != '\r') && (buf[pos] != '\n') && (size > 0)); + pos ++; + buf[ pos ] = '\0'; + buf [ 0 ] = '\0'; + buf [ 1 ] = '\0'; + buf [ 2 ] = '\0'; + + } while (size != 0); + + close(fd); + conv.code_fork_conv = -1; +} +char **conv_with_sox_get_param( char *filesrc, char *filedest, char *frequence, char *voie, char *bits ) +{ + char **PtrTabArgs = NULL; + int pos; + + PtrTabArgs = conv_AllocTabArgs( &pos ); + + PtrTabArgs [ pos++ ] = C_strdup ("sox"); + PtrTabArgs [ pos++ ] = C_strdup ("-t"); + PtrTabArgs [ pos++ ] = C_strdup (".wav"); + PtrTabArgs [ pos++ ] = C_strdup (filesrc); + PtrTabArgs [ pos++ ] = C_strdup ("-S"); + PtrTabArgs [ pos++ ] = C_strdup ("-r"); + PtrTabArgs [ pos++ ] = C_strdup (frequence); + PtrTabArgs [ pos++ ] = C_strdup ("-c"); + PtrTabArgs [ pos++ ] = C_strdup (voie); + + /* + switch (atoi (bits)) { + case 8 : PtrTabArgs [ pos++ ] = C_strdup ("-1"); break; + // case 16 : PtrTabArgs [ pos++ ] = C_strdup ("-2"); break; + case 16 : PtrTabArgs [ pos++ ] = C_strdup ("-b"); PtrTabArgs [ pos++ ] = C_strdup ("16");break; + case 24 : PtrTabArgs [ pos++ ] = C_strdup ("-3"); break; + case 32 : PtrTabArgs [ pos++ ] = C_strdup ("-4"); break; + case 64 : PtrTabArgs [ pos++ ] = C_strdup ("-8"); break; + default : PtrTabArgs [ pos++ ] = C_strdup ("-2"); break; + } + */ + switch (atoi (bits)) { + case 8 : PtrTabArgs [ pos++ ] = C_strdup ("-b"); PtrTabArgs [ pos++ ] = C_strdup ("8"); break; + case 16 : PtrTabArgs [ pos++ ] = C_strdup ("-b"); PtrTabArgs [ pos++ ] = C_strdup ("16"); break; + case 24 : PtrTabArgs [ pos++ ] = C_strdup ("-b"); PtrTabArgs [ pos++ ] = C_strdup ("24"); break; + case 32 : PtrTabArgs [ pos++ ] = C_strdup ("-b"); PtrTabArgs [ pos++ ] = C_strdup ("32"); break; + case 64 : PtrTabArgs [ pos++ ] = C_strdup ("-b"); PtrTabArgs [ pos++ ] = C_strdup ("64"); break; + default : PtrTabArgs [ pos++ ] = C_strdup ("-b"); PtrTabArgs [ pos++ ] = C_strdup ("16"); break; + } + + // PtrTabArgs [ pos++ ] = C_strdup ("-o"); + PtrTabArgs [ pos++ ] = C_strdup (filedest); + PtrTabArgs [ pos++ ] = NULL; + + return( (char **)PtrTabArgs ); +} +char **conv_with_sox_float_get_param( char *filesrc, char *filedest ) +{ + char **PtrTabArgs = NULL; + int pos; + + PtrTabArgs = conv_AllocTabArgs( &pos ); + + PtrTabArgs [ pos++ ] = C_strdup ("sox"); + PtrTabArgs [ pos++ ] = C_strdup (filesrc); + PtrTabArgs [ pos++ ] = C_strdup ("-t"); + PtrTabArgs [ pos++ ] = C_strdup ("wavpcm"); + PtrTabArgs [ pos++ ] = C_strdup ("-S"); + //PtrTabArgs [ pos++ ] = C_strdup ("-f"); + PtrTabArgs [ pos++ ] = C_strdup ("-e"); + PtrTabArgs [ pos++ ] = C_strdup ("floating-point"); + // PtrTabArgs [ pos++ ] = C_strdup ("-o"); + PtrTabArgs [ pos++ ] = C_strdup (filedest); + PtrTabArgs [ pos++ ] = NULL; + + return( (char **)PtrTabArgs ); +} +// FLAC +// +C_BOOL conv_with_flac_ARGS (char **args) +{ + int pos = 0; + int fd; + int size; + char buf [ CONV_MAX_CARS + 10 ]; + char *Ptr = NULL; + C_BOOL BoolNoErrorRet = TRUE; + + fd = conv_call_exec( args, &conv.code_fork_conv, STDOUT_FILENO ); // STDERR_FILENO STDOUT_FILENO STDIN_FILENO + do { + /* + 01.flac: 27% complete + */ + pos = -1; + do { + pos++; + if (pos >= CONV_MAX_CARS) { + PRINT_FUNC_LF(); + printf ("pos(%d) >= CONV_MAX_CARS(%d)\n", pos, CONV_MAX_CARS); + pos --; + } + size = read(fd, &buf[pos], 1); + + } while ((buf[pos] != '\b') && (buf[pos] != '\r') && (buf[pos] != '\n') && (size > 0)); + pos ++; + buf[ pos ] = '\0'; + + if ((Ptr = strstr (buf, "ERROR"))) { + /* + coldplay_test.flac: ERROR, MD5 signature mismatch + coldplay_test.wav: ERROR while decoding metadata + state = FLAC__STREAM_DECODER_END_OF_STREAM + */ + BoolNoErrorRet = FALSE; + break; + } + + } while ( size != 0); + + close(fd); + conv.code_fork_conv = -1; + + return (BoolNoErrorRet); +} +// MAC +// +void conv_with_mac_ARGS (char **args) +{ + int pos = 0; + int fd; + int size; + char buf [ CONV_MAX_CARS + 10 ]; + + fd = conv_call_exec (args, &conv.code_fork_conv, STDOUT_FILENO); + /* + mac ./01.wav ./02.ape -c2000 + --- Monkey's Audio Console Front End (v 3.99) (c) Matthew T. Ashland --- + Compressing (normal)... + Progress: 8.4% (8.6 seconds remaining, 0.8 seconds total) + Progress: 13.3% (7.6 seconds remaining, 1.2 seconds total) + Progress: 19.3% (6.9 seconds remaining, 1.6 seconds total) + Progress: 24.1% (6.4 seconds remaining, 2.0 seconds total) + Progress: 26.6% (6.1 seconds remaining, 2.2 seconds total) + Progress: 29.0% (5.9 seconds remaining, 2.4 seconds total) + Progress: 53.1% (3.8 seconds remaining, 4.3 seconds total) + Progress: 79.7% (1.7 seconds remaining, 6.6 seconds total) + Progress: 100.0% (0.0 seconds remaining, 8.2 seconds total) + Success... + */ + do { + pos = -1; + do { + pos++; + if (pos >= CONV_MAX_CARS) { + PRINT_FUNC_LF(); + printf ("pos(%d) >= CONV_MAX_CARS(%d)\n", pos, CONV_MAX_CARS); + pos --; + } + size = read(fd, &buf[pos], 1); + + } while ((buf[pos] != '\b') && (buf[pos] != '\r') && (buf[pos] != '\n') && (size > 0)); + pos ++; + buf[ pos ] = '\0'; + + } while ( size != 0); + + close(fd); + conv.code_fork_conv = -1; +} +// WAVPACK +// +void conv_with_wavpack_ARGS (char **args) +{ + int pos = 0; + int fd; + int size; + char buf [ CONV_MAX_CARS + 10 ]; + + fd = conv_call_exec (args, &conv.code_fork_conv, STDOUT_FILENO ); // STDERR_FILENO STDOUT_FILENO STDIN_FILENO + do + { + pos = -1; + do + { + pos++; + if (pos >= CONV_MAX_CARS) { + PRINT_FUNC_LF(); + printf ("pos(%d) >= CONV_MAX_CARS(%d)\n", pos, CONV_MAX_CARS); + pos --; + } + size = read(fd, &buf[pos], 1); + + } while ((buf[pos] != '\b') && (buf[pos] != '\r') && (buf[pos] != '\n') && (size > 0)); + buf[pos] = '\0'; + } while ( size != 0); + + close(fd); + conv.code_fork_conv = -1; +} +// OGGENC +// +void conv_with_oggenc_ARGS (char **args) +{ + int pos = 0; + int fd; + int size; + char buf [ CONV_MAX_CARS + 10 ]; + + fd = conv_call_exec (args, &conv.code_fork_conv, STDOUT_FILENO ); // STDERR_FILENO STDOUT_FILENO STDIN_FILENO + do { + size = -1; + pos = -1; + do { + pos++; + if (pos >= CONV_MAX_CARS) { + PRINT_FUNC_LF(); + printf ("pos(%d) >= CONV_MAX_CARS(%d)\n", pos, CONV_MAX_CARS); + pos --; + } + size = read(fd, &buf[pos], 1); + + } while (buf[pos] != '\b' && buf[pos] != '\r' && buf[pos] != '\n' && size > 0); + pos ++; + buf[ pos ] = '\0'; + } while ( size != 0); + + close(fd); + conv.code_fork_conv = -1; +} +// FAAC +// +void conv_with_faac_ARGS (char **args) +{ + int pos = 0; + int fd; + int size; + char buf [ CONV_MAX_CARS + 10 ]; + + fd = conv_call_exec (args, &conv.code_fork_conv, STDOUT_FILENO ); // STDERR_FILENO STDOUT_FILENO STDIN_FILENO + /* + 53/9518 ( 0%)| 108.2 | 0.1/18.0 | 12.31x | 17.9 + 250/9518 ( 2%)| 117.7 | 0.5/17.5 | 12.62x | 17.1 + 450/9518 ( 4%)| 122.8 | 0.8/17.9 | 12.38x | 17.0 + 650/9518 ( 6%)| 124.8 | 1.2/17.9 | 12.37x | 16.6 + 2100/9518 ( 22%)| 120.5 | 3.8/17.2 | 12.89x | 13.4 + 9518/9518 (100%)| 124.0 | 17.2/17.2 | 12.86x | 0.0 + */ + do { + pos = -1; + do { + pos++; + if (pos >= CONV_MAX_CARS) { + PRINT_FUNC_LF(); + printf ("pos(%d) >= CONV_MAX_CARS(%d)\n", pos, CONV_MAX_CARS); + pos --; + } + size = read(fd, &buf[pos], 1); + + } while ((buf[pos] != '\b') && (buf[pos] != '\r') && (buf[pos] != '\n') && (size > 0)); + pos ++; + buf[ pos ] = '\0'; + } while ( size != 0); + + close(fd); + conv.code_fork_conv = -1; +} +// LAME +// +void conv_with_lame_ARGS (char **args) +{ + int pos = 0; + int fd; + int size; + char buf [ CONV_MAX_CARS + 10 ]; + + fd = conv_call_exec (args, &conv.code_fork_conv, STDOUT_FILENO ); // STDERR_FILENO STDOUT_FILENO STDIN_FILENO + do { + pos = -1; + do { + pos++; + if (pos >= CONV_MAX_CARS) { + PRINT_FUNC_LF(); + printf ("pos(%d) >= CONV_MAX_CARS(%d)\n", pos, CONV_MAX_CARS); + pos --; + } + size = read(fd, &buf[pos], 1); + + } while ((buf[pos] != '\b') && (buf[pos] != '\r') && (buf[pos] != '\n') && (size > 0)); + pos ++; + buf[ pos ] = '\0'; + } while ( size != 0); + + close(fd); + conv.code_fork_conv = -1; +} +// OGG123 +// +void conv_with_ogg123_ARGS (char **args) +{ + int fd; + int pos = 0; + int size; + char buf [ CONV_MAX_CARS + 10 ]; + + fd = conv_call_exec (args, &conv.code_fork_conv, STDOUT_FILENO ); // STDERR_FILENO STDOUT_FILENO STDIN_FILENO + do { + size = 0; + pos = -1; + do { + pos++; + if (pos >= CONV_MAX_CARS) { + PRINT_FUNC_LF(); + printf ("pos(%d) >= CONV_MAX_CARS(%d)\n", pos, CONV_MAX_CARS); + pos --; + } + size = read(fd, &buf[pos], 1); + + } while ((buf[pos] != '\b') && (buf[pos] != '\r') && (buf[pos] != '\n') && (size > 0)); + pos ++; + buf[ pos ] = '\0'; + } while ( size != 0); + + close(fd); + conv.code_fork_conv = -1; +} +// NORMALISE +// +void conv_with_normalise_ARGS (char **args) +{ + char buf [ CONV_MAX_CARS + 10 ]; + int fd; + int size = 0; + int pos = 0; + + fd = conv_call_exec (args, &conv.code_fork_conv, STDOUT_FILENO ); // STDERR_FILENO STDOUT_FILENO STDIN_FILENO + do + { + /* + $ normalize-audio --peak "/home/cat/Musique/CD/PEAK_Charles Aznavour/01.wav" -- + Computing levels... + 01.wav 100% done, ETA 00:00:00 (batch 100% done, ETA 00:00:00) + Applying adjustment of 0,82dB to /home/cat/Musique/CD/PEAK_Charles Aznavour/01.wav... + 01.wav 100% done, ETA 00:00:00 (batch 100% done, ETA 00:00:00) + */ + + pos = -1; + do + { + pos++; + if (pos >= CONV_MAX_CARS) { + PRINT_FUNC_LF(); + printf ("pos(%d) >= CONV_MAX_CARS(%d)\n", pos, CONV_MAX_CARS); + pos --; + } + size = read(fd, &buf[pos], 1); + } while ((buf[pos] != '\b') && (buf[pos] != '\r') && (buf[pos] != '\n') && (size > 0)); + buf[pos] = '\0'; + } while ( size != 0); + + close(fd); + conv.code_fork_conv = -1; +} +void conv_with_normalise_get_PEAK_RMS_GROUP_ARGS (char **args) +{ + char *ptr = NULL; + char buf [ CONV_MAX_CARS + 10 ]; + int fd; + int size; + int pos = 0; + double value = 0.0; + double dmin = 0.0; + double dmax = 0.0; + C_BOOL BoolPass = TRUE; + + fd = conv_call_exec (args, &conv.code_fork_conv, STDOUT_FILENO); + do + { + pos = -1; + do + { + pos++; + if (pos >= CONV_MAX_CARS) { + PRINT_FUNC_LF(); + printf ("pos(%d) >= CONV_MAX_CARS(%d)\n", pos, CONV_MAX_CARS); + pos --; + } + size = read(fd, &buf[pos], 1); + + } while ((buf[pos] != '\b') && (buf[pos] != '\r') && (buf[pos] != '\n') && (size > 0)); + buf[pos] = '\0'; + + if ((ptr = strstr (&buf[0], "dBFS"))) { + while (*ptr != ' ') ptr ++; + while (*ptr == ' ') ptr ++; + + /*printf ("buf = %s\n", buf);*/ + value = atof(ptr); + if (BoolPass == TRUE) { + dmin = dmax = value; + BoolPass = FALSE; + } + if (dmin > value) dmin = value; + if (dmax < value) dmax = value; + } + + } while ( size != 0); + + /* + printf ("value = %f, dmin = %f, dmax = %f\n", value, dmin, dmax); + printf ("dmax - dmin - 0.1 = %f\n", (dmax - dmin) - 0.1); + printf ("dmin - dmax - 0.1 = %f\n", (dmin - dmax) - 0.1); + conv.value_PEAK_RMS_GROUP_ARGS = (dmin - dmax) - 0.1; + conv.value_PEAK_RMS_GROUP_ARGS = dmax - dmin - 0.1; + printf ("conv.value_PEAK_RMS_GROUP_ARGS = %f\n", conv.value_PEAK_RMS_GROUP_ARGS); + printf ("****\n"); + */ + printf ("\nSUR LES TRES BONS CONSEILS DE @Dzef ;-)\n"); + printf ("\tdmin = %f\n", dmin); + printf ("\tdmax = %f\n", dmax); + printf ("\t0.0 - dmax(%f) - 0.1 = %f\n", dmax, 0.0 - dmax - 0.1); + conv.value_PEAK_RMS_GROUP_ARGS = 0.0 - dmax - 0.1; + printf ("\tconv.value_PEAK_RMS_GROUP_ARGS = %f\n\n", conv.value_PEAK_RMS_GROUP_ARGS); + + close(fd); + conv.code_fork_conv = -1; + +} +// REPLAGAIN +// +void conv_with_replaygain_ARGS (char **args) +{ + int pos = 0; + int size = 0; + char buf[CONV_MAX_CARS + 10]; + int fd; + + fd = conv_call_exec (args, &conv.code_fork_conv, STDOUT_FILENO ); // STDERR_FILENO STDOUT_FILENO STDIN_FILENO + do + { + size = -1; + pos = -1; + do { + pos++; + if (pos >= CONV_MAX_CARS) { + PRINT_FUNC_LF(); + printf ("pos(%d) >= CONV_MAX_CARS(%d)\n", pos, CONV_MAX_CARS); + pos --; + } + size = read(fd, &buf[pos], 1); + + + } while (buf[pos] != '\b' && buf[pos] != '\r' && buf[pos] != '\n' && size > 0); + pos ++; + buf[ pos ] = '\0'; + } while ( size != 0); + + close(fd); +} +// AACPLUSENC +// +void conv_with_aacplusenc_ARGS (char **args) +{ + int pos = 0; + int size = 0; + char buf[CONV_MAX_CARS + 10]; + int fd; + + fd = conv_call_exec (args, &conv.code_fork_conv, STDOUT_FILENO ); // STDERR_FILENO STDOUT_FILENO STDIN_FILENO + do { + pos = -1; + do { + pos++; + if (pos >= CONV_MAX_CARS) { + PRINT_FUNC_LF(); + printf ("pos(%d) >= CONV_MAX_CARS(%d)\n", pos, CONV_MAX_CARS); + pos --; + } + size = read(fd, &buf[pos], 1); + + } while ((buf[pos] != '\b') && (buf[pos] != '\r') && (buf[pos] != '\n') && (size > 0)); + buf[pos ++ ] = '\n'; + buf[pos] = '\0'; + } while ( size != 0); + + conv.code_fork_conv = -1; + close(fd); +} +// MPPENC +// +void conv_with_mppenc_ARGS (char **args) +{ + int pos = 0; + int fd; + int size; + char buf [ CONV_MAX_CARS + 10 ]; + + fd = conv_call_exec (args, &conv.code_fork_conv, STDOUT_FILENO ); // STDERR_FILENO STDOUT_FILENO STDIN_FILENO + do { + pos = -1; + do { + pos++; + if (pos >= CONV_MAX_CARS) { + PRINT_FUNC_LF(); + printf ("pos(%d) >= CONV_MAX_CARS(%d)\n", pos, CONV_MAX_CARS); + pos --; + } + size = read(fd, &buf[pos], 1); + + } while ((buf[pos] != '\b') && (buf[pos] != '\r') && (buf[pos] != '\n') && (size > 0)); + pos ++; + buf[ pos ] = '\0'; + } while ( size != 0); + + close(fd); + conv.code_fork_conv = -1; +} +// MPG321 +// +void conv_with_mpg321_ARGS (char **args) +{ + int fd; + int pos = 0; + int size = -1; + char buf [ CONV_MAX_CARS + 10 ]; + + fd = conv_call_exec (args, &conv.code_fork_conv, STDOUT_FILENO ); // STDERR_FILENO STDOUT_FILENO STDIN_FILENO + do { + pos = -1; + do { + pos++; + if (pos >= CONV_MAX_CARS) { + PRINT_FUNC_LF(); + printf ("pos(%d) >= CONV_MAX_CARS(%d)\n", pos, CONV_MAX_CARS); + pos --; + } + size = read(fd, &buf[pos], 1); + + } while ((buf[pos] != '\b') && (buf[pos] != '\r') && (buf[pos] != '\n') && (size > 0)); + pos ++; + buf[ pos ] = '\0'; + } while ( size != 0); + + close(fd); + conv.code_fork_conv = -1; +} +// SHORTEN +// +void conv_with_shorten_ARGS (char **args) +{ + int fd; + int size; + int pos = 0; + char buf [ CONV_MAX_CARS + 10 ]; + + fd = conv_call_exec (args, &conv.code_fork_conv, STDOUT_FILENO ); // STDERR_FILENO STDOUT_FILENO STDIN_FILENO + do { + pos = -1; + do { + pos++; + if (pos >= CONV_MAX_CARS) { + PRINT_FUNC_LF(); + printf ("pos(%d) >= CONV_MAX_CARS(%d)\n", pos, CONV_MAX_CARS); + pos --; + } + size = read(fd, &buf[pos], 1); + + } while ((buf[pos] != '\b') && (buf[pos] != '\r') && (buf[pos] != '\n') && (size > 0)); + pos ++; + buf[ pos ] = '\0'; + } while ( size != 0); + + close(fd); + conv.code_fork_conv = -1; +} +// FAAD +// +void conv_with_faad_ARGS (char **args) +{ + int fd; + int size; + int pos = 0; + char buf [ CONV_MAX_CARS + 10 ]; + + fd = conv_call_exec (args, &conv.code_fork_conv, STDOUT_FILENO ); // STDERR_FILENO STDOUT_FILENO STDIN_FILENO + /* + 39% decoding 05.m4a. + 52% decoding 05.m4a. + 60% decoding 05.m4a. + 67% decoding 05.m4a. + 77% decoding 05.m4a. + 84% decoding 05.m4a. + */ + do { + pos = -1; + do { + pos++; + if (pos >= CONV_MAX_CARS) { + PRINT_FUNC_LF(); + printf ("pos(%d) >= CONV_MAX_CARS(%d)\n", pos, CONV_MAX_CARS); + pos --; + } + size = read(fd, &buf[pos], 1); + + if (strstr(buf,"Audio: no sound")) { + break; + } + + } while ( (buf[pos] != '\b') && (buf[pos] != '\r') && (buf[pos] != '\n') && (size > 0)); + + if (buf[pos] != '\n') { + pos ++; + buf[pos++] = '\n'; + buf[pos] = '\0'; + } + } while ((size > 0)); + + close(fd); + conv.code_fork_conv = -1; +} +// MPPDEC +// +void conv_with_mppdec_ARGS (char **args) +{ + int fd; + int size; + int pos = 0; + char buf [ CONV_MAX_CARS + 10 ]; + + fd = conv_call_exec (args, &conv.code_fork_conv, STDOUT_FILENO ); // STDERR_FILENO STDOUT_FILENO STDIN_FILENO + do { + pos = -1; + do { + pos++; + if (pos >= CONV_MAX_CARS) { + PRINT_FUNC_LF(); + printf ("pos(%d) >= CONV_MAX_CARS(%d)\n", pos, CONV_MAX_CARS); + pos --; + } + size = read(fd, &buf[pos], 1); + + } while ((buf[pos] != '\b') && (buf[pos] != '\r') && (buf[pos] != '\n') && (size > 0)); + pos ++; + buf[ pos ] = '\0'; + } while ( size != 0); + + close(fd); + conv.code_fork_conv = -1; +} +// WVUNPACK_WAVPACK_TO_WAV +// +void conv_with_wvunpack_ARGS (char **args) +{ + int fd; + int size; + int pos = 0; + char buf [ CONV_MAX_CARS + 10 ]; + + fd = conv_call_exec (args, &conv.code_fork_conv, STDOUT_FILENO ); // STDERR_FILENO STDOUT_FILENO STDIN_FILENO + do + { + pos = -1; + do + { + pos++; + if (pos >= CONV_MAX_CARS) { + PRINT_FUNC_LF(); + printf ("pos(%d) >= CONV_MAX_CARS(%d)\n", pos, CONV_MAX_CARS); + pos --; + } + size = read(fd, &buf[pos], 1); + + } while ((buf[pos] != '\b') && (buf[pos] != '\r') && (buf[pos] != '\n') && (size > 0)); + buf[pos] = '\0'; + /* + fish@debian:~/Musique/aaa/new$ wvunpack -y -m ./20.wv + + WVUNPACK Hybrid Lossless Audio Decompressor Linux Version 4.32 2006-04-05 + Copyright (c) 1998 - 2005 Conifer Software. All Rights Reserved. + + restoring ./20.wav, 34% done... + + original md5: 2b74aed5a5d62d1c3b0e6b96d5147cc9 + unpacked md5: 2b74aed5a5d62d1c3b0e6b96d5147cc9 + restored ./20.wav in 17.23 secs (lossless, 26.45%) + else if ((ptr = strstr (&buf[0], "original md5:"))) { + } + else if ((ptr = strstr (&buf[0], "unpacked md5:"))) { + } + else if ((ptr = strstr (&buf[0], "restored"))) { + } + */ + } while (size != 0); + + close(fd); + conv.code_fork_conv = -1; +} +// A52DEC +// +void conv_with_a52dec_ARGS (char **args) +{ + int pos = 0; + int size = 0; + char buf[CONV_MAX_CARS + 10]; + int fd; + FILE *fp = NULL; + char *FileSave = C_strdup (args[ 8 ]); + + free (args[ 7 ]); args[ 7 ] = NULL; + free (args[ 8 ]); args[ 8 ] = NULL; + + + fd = conv_call_exec (args, &conv.code_fork_conv, STDOUT_FILENO); + fp = fopen (FileSave, "w"); + do { + pos = 0; + do { + /* + pos++; + if (pos >= CONV_MAX_CARS) { + PRINT_FUNC_LF(); + printf ("pos(%d) >= CONV_MAX_CARS(%d)\n", pos, CONV_MAX_CARS); + pos --; + } + */ + size = read(fd, &buf [ pos ], 1); + fprintf (fp, "%c", (short)buf [ 0 ]); + + + } while ((buf[pos] != '\b') && (buf[pos] != '\r') && (buf[pos] != '\n') && (size > 0)); + buf[pos ++ ] = '\n'; + buf[pos] = '\0'; + } while ( size != 0); + + fclose (fp); + free (FileSave); FileSave = NULL; + + conv.code_fork_conv = -1; + close(fd); +} + +// CALL CONV +// +C_BOOL conv_to_convert( char **p_TabArgs, TYPE_CONV type_conv, char *info ) +{ + int pos = 0; + C_BOOL RetBool = TRUE; + + if( TRUE == Detail.BoolVerboseMode ) { + printf ("!-----------------------------------------------------------!\n"); + printf ("! %s\n", info); + printf ("!-----------------------------------------------------------!\n"); + printf ("! "); + for (pos = 0; p_TabArgs[ pos ] != NULL; pos ++) + printf ("%s ", p_TabArgs[ pos ]); + printf ("\n!-----------------------------------------------------------!\n"); + for (pos = 0; p_TabArgs[ pos ] != NULL; pos ++) + printf ("p_TabArgs[ %02d ] = %s\n", pos, p_TabArgs[ pos ]); + printf ("\n"); + } + + switch (type_conv) { + case NONE_CONV : + break; + case FLAC_FLAC_TO_WAV : + case FLAC_WAV_TO_FLAC : + RetBool = conv_with_flac_ARGS( p_TabArgs ); + break; + case LAME_WAV_TO_MP3 : + case LAME_FLAC_TO_MP3 : + conv_with_lame_ARGS( p_TabArgs ); + break; + case OGGENC_WAV_TO_OGG : + case OGGENC_FLAC_TO_OGG : + conv_with_oggenc_ARGS( p_TabArgs ); + break; + case OGG123_OGG_TO_WAV : + conv_with_ogg123_ARGS( p_TabArgs ); + break; + case MPG321_MP3_TO_WAV : + conv_with_mpg321_ARGS( p_TabArgs ); + break; + case SOX_WAV_TO_WAV : + conv_with_sox_ARGS( p_TabArgs ); + break; + case SHORTEN_SHN_TO_WAV : + conv_with_shorten_ARGS( p_TabArgs ); + break; + case FAAD_M4A_TO_WAV : + conv_with_faad_ARGS( p_TabArgs ); + break; + case FAAC_WAV_TO_M4A : + conv_with_faac_ARGS( p_TabArgs ); + break; + case MPLAYER_WMA_TO_WAV : + case MPLAYER_RM_TO_WAV : + case MPLAYER_DTS_TO_WAV : + case MPLAYER_AIFF_TO_WAV : + case MPLAYER_WAV_TO_WAV : + case MPLAYER_AUDIO_TO_WAV : + case MPLAYER_M4A_TO_WAV : + case MPLAYER_OGG_TO_WAV : + case MPLAYER_MP3_TO_WAV : + case MPLAYER_MPC_TO_WAV : + RetBool = conv_with_mplayer_ARGS( p_TabArgs, type_conv ); + break; + case MPPDEC_MPC_TO_WAV : + conv_with_mppdec_ARGS( p_TabArgs ); + break; + case MPPENC_WAV_TO_MPC : + conv_with_mppenc_ARGS( p_TabArgs ); + break; + case MAC_APE_TO_WAV : + case MAC_WAV_TO_APE : + conv_with_mac_ARGS( p_TabArgs ); + break; + case WAVPACK_WAV_TO_WAVPACK : + conv_with_wavpack_ARGS( p_TabArgs ); + break; + case WVUNPACK_WAVPACK_TO_WAV : + conv_with_wvunpack_ARGS( p_TabArgs ); + break; + case AACPLUSENC_WAV_TO_AAC : + conv_with_aacplusenc_ARGS( p_TabArgs ); + break; + case A52DEC_AC3_TO_WAV : + conv_with_a52dec_ARGS( p_TabArgs ); + break; + + case REPLAYGAIN : + conv_with_replaygain_ARGS( p_TabArgs ); + break; + case NORMALISE_EXEC : + conv_with_normalise_ARGS( p_TabArgs ); + break; + case NORMALISE_GET_LEVEL: + conv_with_normalise_get_PEAK_RMS_GROUP_ARGS( p_TabArgs ); + break; + } + + return( RetBool ); +} +// +// Algo retravaille depuis: +// C EN ACTION - 2 ieme Edition - Yves Mettier +// +C_BOOL conv_copy_src_to_dest (char *filesrc, char *filedest) +{ + FILE *fn = NULL; + FILE *fe = NULL; + char buf [ BUFSIZ + 10 ]; // 8192 + size_t size = utils_get_size_file (filesrc); + long cpt; + size_t l_read; + + if (0 == size) { + fprintf (stderr, "La taille de : %s est NULLE !!!\n", filesrc); + return (FALSE); + } + if (NULL == (fe = fopen (filesrc, "r"))) { + fprintf (stderr, "Echec ouverture en lecture de: %s\n", filesrc); + return (FALSE); + } + if (NULL == (fn = fopen (filedest, "w"))) { + fprintf (stderr, "Echec ouverture en ecriture de: %s\n", filedest); + fclose (fe); + return (FALSE); + } + + if( TRUE == Detail.BoolVerboseMode ) { + PRINT_FUNC_LF(); + printf ("\t%s\n\t%s\n", filesrc, filedest); + } + cpt = 0; + while ( ! feof (fe)) { + + l_read = fread (buf, sizeof (*buf), BUFSIZ, fe); + if (ferror (fe)) { + fprintf (stderr, "Erreur de lecture depuis: %s\n", filesrc ); + fclose (fn); + fclose (fe); + return (FALSE); + } + fwrite (buf, sizeof (*buf), l_read, fn); + if (ferror (fn)) { + fprintf (stderr, "Erreur d'ecriture depuis: %s\n", filedest ); + fclose (fn); + fclose (fe); + return (FALSE); + } + fflush( fn ); + cpt ++; + } + fclose (fn); + fclose (fe); + + return (TRUE); +} + + + + + + + + diff -Nru xcfa-4.3.8/src_cli/conv.h xcfa-5.0.1/src_cli/conv.h --- xcfa-4.3.8/src_cli/conv.h 1970-01-01 00:00:00.000000000 +0000 +++ xcfa-5.0.1/src_cli/conv.h 2014-12-12 23:23:40.000000000 +0000 @@ -0,0 +1,96 @@ +/* + * file : src/conv.h + * project : xcfa_cli + * copyright : (C) 2014 by BULIN Claude + * + * This file is part of xcfa_cli project + * + * xcfa_cli is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; version 3. + * + * xcfa_cli is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 + * USA + */ + + + +#ifndef conv_h +#define conv_h 1 + +#include +#include + + +typedef enum { // Les types de conversions possibles + NONE_CONV = 0, // + FLAC_FLAC_TO_WAV, // + FLAC_WAV_TO_FLAC, // + LAME_WAV_TO_MP3, // + LAME_FLAC_TO_MP3, // + OGGENC_WAV_TO_OGG, // + OGGENC_FLAC_TO_OGG, // + OGG123_OGG_TO_WAV, // + MPG321_MP3_TO_WAV, // + SOX_WAV_TO_WAV, // + SHORTEN_SHN_TO_WAV, // + FAAD_M4A_TO_WAV, // + FAAC_WAV_TO_M4A, // + MPLAYER_WAV_TO_WAV, // + MPLAYER_WMA_TO_WAV, // + MPLAYER_AUDIO_TO_WAV, // + MPLAYER_M4A_TO_WAV, // + MPLAYER_OGG_TO_WAV, // + MPLAYER_MP3_TO_WAV, // + MPLAYER_MPC_TO_WAV, // + MPLAYER_RM_TO_WAV, // + MPLAYER_DTS_TO_WAV, // + MPLAYER_AIFF_TO_WAV, // + MPPDEC_MPC_TO_WAV, // + MPPENC_WAV_TO_MPC, // + MAC_APE_TO_WAV, // + MAC_WAV_TO_APE, // + WAVPACK_WAV_TO_WAVPACK, // + WVUNPACK_WAVPACK_TO_WAV, // + AACPLUSENC_WAV_TO_AAC, // + A52DEC_AC3_TO_WAV, // + REPLAYGAIN, // + NORMALISE_EXEC, // + NORMALISE_GET_LEVEL // + +} TYPE_CONV; + +typedef struct { + char *TmpRep; // Le repertoire temporaire d'extractions/conversions + pid_t code_fork_conv; // Num Code Fork + int signal_numchildren_conv; // the signal handler + int tube_conv [ 2 ]; // for pipe + double value_PEAK_RMS_GROUP_ARGS; // +} CONV; + +extern CONV conv; + +C_BOOL conv_to_convert( char **p_TabArgs, TYPE_CONV type_conv, char *info ); +C_BOOL conv_copy_src_to_dest( char *filesrc, char *filedest ); +char **conv_with_sox_get_param( char *filesrc, char *filedest, char *frequence, char *voie, char *bits ); +char **conv_with_sox_float_get_param( char *filesrc, char *filedest ); +char **conv_get_command_line( + TYPE_CONV type_conv, + char *src, + char *dest, + TAGS *InfosTags, + char *options + ); +char **conv_RemoveTab( char **p_PtrTabArgs ); +char **conv_AllocTabArgs( int *p_tab ); + +#endif + + diff -Nru xcfa-4.3.8/src_cli/cue.c xcfa-5.0.1/src_cli/cue.c --- xcfa-4.3.8/src_cli/cue.c 1970-01-01 00:00:00.000000000 +0000 +++ xcfa-5.0.1/src_cli/cue.c 2014-12-26 14:24:00.000000000 +0000 @@ -0,0 +1,640 @@ +/* + * file : src/cue.c + * project : xcfa_cli + * copyright : (C) 2014 by BULIN Claude + * + * This file is part of xcfa_cli project + * + * xcfa_cli is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; version 3. + * + * xcfa_cli is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 + * USA + */ + + +#ifdef HAVE_CONFIG_H + #include "../config.h" +#endif + +#ifdef ENABLE_NLS + #include + #define _(String) gettext (String) +#endif + +#include +#include +#include + +#include "global.h" +#include "tags.h" +#include "conv.h" + + + +typedef struct { + int num_track; + char title[ 256 ]; + int begin; + int end; + int length; +} TRACK; +CList *ListTrack = NULL; + + +// +// +C_BOOL cue_read_wav_file( char *p_path_name_file ) +{ +#define BLOCK_SIZE 2352 + typedef struct { + int begin; + int end; + } BLANK; + WAVE WaveHeader; + int ChannelNext; + int Ret; + int tmp = 0; + int points = 0; + unsigned char devbuf[ BLOCK_SIZE +10 ]; + int Indice; + double min, max; + int point_begin, point_end; + BLANK *blank = NULL; + CList *ListBlank = NULL; + CList *list_b = NULL; + BLANK *blank_next = NULL; + TRACK *Track = NULL; + int num_track = 1; + double PercentBegin; + double PercentEnd; + int TimeSongSec; + int max_points; + + if( FALSE == tagswav_read_file( p_path_name_file, &WaveHeader )) { + printf("Mauvais format de fichier: %s\n", p_path_name_file ); + tagswav_close_file( &WaveHeader ); + return( FALSE ); + } + + switch( WaveHeader.FMT.BitsPerSample ) { + case 8 : + case 16 : + case 24 : + case 32 : + break; + default : + tagswav_close_file( &WaveHeader ); + printf("Seuls ces formats de bitrates : 8 16 24 et 32 sont pris en charge pour la lecture\n" + "Format de bitrate [ %d ] non prit en charge\n", + WaveHeader.FMT.BitsPerSample + ); + return( FALSE ); + } + + points = 0; + point_begin = point_end = -1; + ChannelNext = (WaveHeader.FMT.NumChannels -1) * (WaveHeader.FMT.BitsPerSample / 8); + + // LECTURE DES DATAS + while( (Ret = fread( devbuf, 1, BLOCK_SIZE, WaveHeader.file )) > 0 ) { + + min = max = 0.0; + + for (Indice = 0; Indice < Ret; Indice++) { + + if (WaveHeader.FMT.BitsPerSample == 8) { + + tmp = devbuf [ Indice ]; + tmp -= 128; + } + else if (WaveHeader.FMT.BitsPerSample == 16) { + + tmp = (char)devbuf [ Indice +1 ] << 8 | (char)devbuf [ Indice ]; + Indice ++; + } + else if (WaveHeader.FMT.BitsPerSample == 24) { + + tmp = (char)devbuf [ Indice +0 ] >> 16; + tmp += (char)devbuf [ Indice +1 ] >> 8; + tmp += (char)devbuf [ Indice +2 ]; + + Indice += 2; + } + else if (WaveHeader.FMT.BitsPerSample == 32) { + + tmp = (char)devbuf [ Indice +0 ] >> 24; + tmp += (char)devbuf [ Indice +1 ] >> 16; + tmp += (char)devbuf [ Indice +2 ] >> 8; + tmp += (char)devbuf [ Indice +3 ]; + + Indice += 2; + } + + if (tmp > max) max = tmp; + else if (tmp <= min) min = tmp; + + // skip over any extra channels + Indice += ChannelNext; + } + + // ~-50 dB calculation : + // --------------------- + // From @Dzef: + // Sinon, Claude, pour le soucis de not' Christophe-coupeur-d'album-en-rondelles-sans-cue, + // la parade existe en partie dans le cas où les plages sont séparées par des "blancs" + // (ce qui n'est pas le cas des albums "live" par exemple) : il suffit de détecter le niveau + // audio et en dessous d'un seuil fixé (typiquement < ~-50 dB), hop, 1 plage ! + // PS: + // Et chose fut faite: MERCI Xavier :-) + if( min >= -1. && max <= 1. ) { + + if( point_begin == -1 ) + point_begin = point_end = points; + else point_end = points; + + } else { + if( NULL == blank && point_begin != 0 ) { + blank = (BLANK *)malloc( sizeof(BLANK) ); + blank->begin = 0; + blank->end = 2; + ListBlank = C_list_append( ListBlank, blank ); + } + // threshold below ~-50 dB + // seuil en dessous ~-50 dB + if( point_end - point_begin >= 10 ) { + blank = (BLANK *)malloc( sizeof(BLANK) ); + blank->begin = point_begin; + blank->end = point_end; + ListBlank = C_list_append( ListBlank, blank ); + } + point_begin = point_end = -1; + } + points ++; + } + // The end of file in list + if( point_end != points ) { + blank = (BLANK *)malloc( sizeof(BLANK) ); + blank->begin = point_begin != -1 ? point_begin : points; + blank->end = points; + ListBlank = C_list_append( ListBlank, blank ); + } + // if only one track + if( 1 == C_list_length( ListBlank )) { + blank = (BLANK *)malloc( sizeof(BLANK) ); + blank->begin = points; + blank->end = points; + ListBlank = C_list_append( ListBlank, blank ); + } + + TimeSongSec = WaveHeader.DATA.Subchunk2Size / WaveHeader.FMT.ByteRate; + max_points = points; + + if( NULL != ( list_b = C_list_first( ListBlank ))) { + while( list_b ) { + if( NULL != ( blank = (BLANK *)list_b->data )) { + if( NULL != list_b->next && NULL != (blank_next =(BLANK *)list_b->next->data )) { + + if( 1 == num_track ) + PercentBegin = ((double)blank->begin / (double)max_points) * 100.0; + else PercentBegin = ((double)blank->end / (double)max_points) * 100.0; + PercentEnd = ((double)(blank_next->end - 5) / (double)max_points) * 100.0; + + Track = (TRACK *)malloc( sizeof(TRACK) ); + Track->num_track = num_track; + sprintf( Track->title, "title_%d", num_track ); + Track->begin = (int) (((double)TimeSongSec * (double)PercentBegin) / 100.0); + Track->end = (int) (((double)TimeSongSec * (double)PercentEnd) / 100.0); + Track->length = Track->end - Track->begin; + ListTrack = C_list_append( ListTrack, Track ); + + num_track ++; + } + } + list_b = C_list_next( list_b ); + Indice ++; + } + } + + // Clear list: ListBlank + if( NULL != (list_b = C_list_first( ListBlank ))) { + while( list_b ) { + free( list_b->data ); + list_b->data = NULL; + list_b = C_list_next( list_b ); + } + list_b = ListBlank = C_list_free( ListBlank ); + } + + tagswav_close_file( &WaveHeader ); + + return( TRUE ); +} + +// +// +void cue_put_infos_wav_file( char *p_path_name_file ) +{ + CList *list = NULL; + TRACK *Track = NULL; + char StrTimeBegin[ 10 ]; + char StrTimeEnd[ 10 ]; + + if( NULL != ( list = C_list_first( ListTrack ))) { + printf("\n" ); + printf( "!-------------------------------------------------------------\n" ); + printf( "! %s\n", p_path_name_file ); + printf( "!-------------------------------------------------------------\n" ); + printf( "! Track Begin End Length Title\n" ); + printf( "!-------------------------------------------------------------\n" ); + while( list ) { + if( NULL != ( Track = list->data )) { + sprintf( StrTimeBegin, "%02d:%02d:%02d", + (Track->begin / 60) / 60, + (Track->begin / 60) % 60, + Track->begin % 60 + ); + sprintf( StrTimeEnd, "%02d:%02d:%02d", + (Track->end / 60) / 60, + (Track->end / 60) % 60, + Track->end % 60 + ); + + printf(" [ %2d ] %s %s %5d %s\n", + Track->num_track, + StrTimeBegin, + StrTimeEnd, + Track->length, + Track->title + ); + } + list = C_list_next( list ); + } + } +} + + +// +// Split file 'char *p_pathnamefile' from 'int p_split_begin_ss' for a length of 'int p_split_length_ss' +// +void cue_split_wav( char *p_from_wav, char *p_to_wav, int p_split_begin_ss, int p_split_length_ss ) +{ + WAVE WaveHeader; + double Percent = 0.; + double PercentBegin; + double PercentEnd; + char *buffer = NULL; + FILE *fp = NULL; + size_t Ret; + size_t RetRead; + size_t WriteValue; + + printf ( "%s", BOLD_RED ); + printf(" p_from_wav = %s\n", p_from_wav ); + printf(" p_to_wav = %s\n", p_to_wav ); + printf(" p_split_begin_ss = %d\n", p_split_begin_ss ); + printf(" p_split_length_ss = %d\n", p_split_length_ss ); + printf ( "%s", RESET ); + + if (FALSE == tagswav_read_file( p_from_wav, &WaveHeader )) { + tagswav_close_file( &WaveHeader ); + printf ( "%s", BOLD_RED ); + printf("\n!--- S P L I T ----------------\n"); + printf ( "! File not found to split operation: \"%s\"", p_from_wav ); + printf ( "%s\n\n", RESET ); + return; + } + if( (p_split_begin_ss + p_split_length_ss) > (WaveHeader.DATA.Subchunk2Size / WaveHeader.FMT.ByteRate) ) { + printf ( "%s", BOLD_RED ); + printf("\n!--- S P L I T ----------------\n"); + printf ( "! The size of the '--split' and '--length' is greater than the size of the file." ); + printf ( "! %s\n", p_from_wav ); + printf ( "! %d secondes\n", WaveHeader.DATA.Subchunk2Size / WaveHeader.FMT.ByteRate ); + printf ( "%s\n\n", RESET ); + tagswav_close_file( &WaveHeader ); + return; + } + + PercentBegin = (((double)p_split_begin_ss * (double)WaveHeader.FMT.ByteRate) / WaveHeader.DATA.Subchunk2Size) * 100.0; + PercentEnd = (((double)p_split_length_ss * (double)WaveHeader.FMT.ByteRate) / WaveHeader.DATA.Subchunk2Size) * 100.0; + PercentEnd += PercentBegin; + + printf("\n!--- S P L I T ---------------------------------------------!\n"); + printf( "! %s\n", p_from_wav ); + printf( "! %s\n", p_to_wav ); + + buffer = (char *)malloc ((sizeof(char) * BUFSIZ) + 10); + + fp = fopen( p_to_wav, "w" ); + // ECRITURE ENTETE FICHIER WAV + fwrite( &WaveHeader.RIFF.ChunkID, 4, 1, fp ); // RIFF + fwrite( &WaveHeader.RIFF.ChunkSize, 4, 1, fp ); // taille du fichier entier en octets (sans compter les 8 octets de ce champ et le champ précédent + fwrite( &WaveHeader.RIFF.Format, 4, 1, fp ); // WAVE + fwrite( &WaveHeader.FMT.Subchunk1ID, 4, 1, fp ); // 'fmt ' + fwrite( &WaveHeader.FMT.Subchunk1Size, 4, 1, fp ); // taille en octet des données à suivre + fwrite( &WaveHeader.FMT.AudioFormat, 2, 1, fp ); // format de compression (une valeur autre que 1 indique une compression) + fwrite( &WaveHeader.FMT.NumChannels, 2, 1, fp ); // nombre de canaux + fwrite( &WaveHeader.FMT.SampleRate, 4, 1, fp ); // fréquence d'échantillonage (nombre d'échantillons par secondes) + fwrite( &WaveHeader.FMT.ByteRate, 4, 1, fp ); // nombre d'octects par secondes + fwrite( &WaveHeader.FMT.Blockalign, 2, 1, fp ); // nombre d'octects pour coder un échantillon + fwrite( &WaveHeader.FMT.BitsPerSample, 2, 1, fp ); // nombre de bits pour coder un échantillon + fwrite( &WaveHeader.DATA.Subchunk2ID, 4, 1, fp ); // 'data' + fwrite( &WaveHeader.DATA.Subchunk2Size, 4, 1, fp ); // taille des données audio( nombre total d'octets codant les données audio) + + RetRead = 0; + WriteValue = 0; + while(( Ret = fread (buffer, 1, BUFSIZ, WaveHeader.file )) > 0) { + RetRead += Ret; + Percent = (float)(RetRead / (float)WaveHeader.DATA.Subchunk2Size) * 100.0; + if( Percent >= PercentBegin ) { + fwrite( buffer, Ret, 1, fp ); + WriteValue += Ret; + } + if( Percent > PercentEnd ) break; + } + /* + fseek( fp, 4L, SEEK_SET ); + WriteValue += 44; + WriteValue -= 8; + fwrite( &WriteValue, 4, 1, fp ); // taille du fichier entier en octets (sans compter les 8 octets de ce champ et le champ précédent + fseek( fp, 40L, SEEK_SET ); + WriteValue += 8; + WriteValue -= 44; + fwrite( &WriteValue, 4, 1, fp ); // taille des données audio( nombre total d'octets codant les données audio ) + */ + fseek( fp, 40L, SEEK_SET ); + fwrite( &WriteValue, 4, 1, fp ); // taille des données audio( nombre total d'octets codant les données audio ) + fseek( fp, 4L, SEEK_SET ); + WriteValue += 44; + WriteValue -= 8; + fwrite( &WriteValue, 4, 1, fp ); // taille du fichier entier en octets (sans compter les 8 octets de ce champ et le champ précédent + + tagswav_close_file( &WaveHeader ); + fclose (fp ); + fp = NULL; + + free( buffer ); + buffer = NULL; +} +void cue_extract_wav_file( char *p_OutputDir, char *p_path_name_file ) +{ + CList *list = NULL; + TRACK *Track = NULL; + char *to_wav = NULL; + + if( NULL != ( list = C_list_first( ListTrack ))) { + + // MAKE DIRECTORY DESTINATION IF NOT EXIST + if( FALSE == C_dir_test( p_OutputDir )) + C_mkdir_with_parents( p_OutputDir ); + + while( list ) { + if( NULL != ( Track = list->data )) { + to_wav = C_strdup_printf( "%s%s.wav", p_OutputDir, Track->title ); + cue_split_wav( p_path_name_file, to_wav, Track->begin, Track->length ); + free( to_wav ); + to_wav = NULL; + } + list = C_list_next( list ); + } + } +} + +// +// +float cue_get_time_in_sec( char *p_str ) +{ + char *Ptr = NULL; + uint Min, Sec, Hundr; + float SecondesTempsActuel = 0; + + // MINUTES + if ((Ptr = strchr (p_str, ':')) != NULL) { + while (*Ptr != ' ') Ptr --; + if (*Ptr == ' ') Ptr ++; + Min = atoi (Ptr); + + // SECONDES + if ((Ptr = strchr (p_str, ':')) != NULL) { + Ptr ++; + Sec = atoi (Ptr); + + // CENTIEMES + if ((Ptr = strrchr (p_str, ':')) != NULL) { + Ptr ++; + Hundr = atoi (Ptr); + + // Temps Total en secondes + SecondesTempsActuel = ((float)Min * 60.0) + (float)Sec + ((float)Hundr / 100.0); + } + } + } + + return (SecondesTempsActuel); +} + +// +// +C_BOOL cue_read_cue_file( char *p_path_name_file_cue, char **p_path_name_file_wav ) +{ + FILE *fp; +#define MAX_CARS_SPLIT_CUE_FILE 255 + char buf [ MAX_CARS_SPLIT_CUE_FILE + 4 ]; + char *StrNameSong = NULL; + char *PathNameSong = NULL; + char *Ptr = NULL; + char *Path = NULL; + WAVE WaveHeader; + int TimeSongSec; + + // Cherche le nom de fichier WAV associé au fichier CUE pour: PathNameSong + fp = fopen( p_path_name_file_cue, "r" ); + while( NULL != fgets( buf, MAX_CARS_SPLIT_CUE_FILE, fp )) { + + // Si debut de ligne ok + if( NULL != ( Ptr = strstr( buf, "FILE \"" ))) { + + // StrNameSong contiendra le nom du fichier delimite par les signes " + Ptr = strchr( buf, '"' ); + Ptr ++; + StrNameSong = C_strdup( Ptr ); + if( NULL == ( Ptr = strrchr( StrNameSong, '"' ))) { + fclose( fp ); + free( StrNameSong ); + StrNameSong = NULL; + return( FALSE ); + } + *Ptr = '\0'; + + // Path contiendra le chemin + Path = C_strdup( p_path_name_file_cue ); + if( NULL != ( Ptr = strrchr( Path, '/' ))) { + *Ptr = '\0'; + } + + // PathNameSong contiendra: chemin + nom du fichier musical + PathNameSong = C_strdup_printf( "%s/%s", Path, StrNameSong ); + free( Path ); + Path = NULL; + free( StrNameSong ); + StrNameSong = NULL; + break; + } + } + fclose( fp ); + + if( FALSE == C_file_test( PathNameSong )) { + printf("[ %s ] n'existe pas dans le dossier contenant [ %s ] ! \n", PathNameSong, p_path_name_file_cue ); + free( PathNameSong ); + PathNameSong = NULL; + return( FALSE ); + } + + tagswav_read_file( PathNameSong, &WaveHeader ); + TimeSongSec = WaveHeader.DATA.Subchunk2Size / WaveHeader.FMT.ByteRate; + tagswav_close_file( &WaveHeader ); + + *p_path_name_file_wav = PathNameSong; + + // LECTURE DES INFOS DU FICHIER + // + if( NULL != ( fp = fopen( p_path_name_file_cue, "r" )) ) { + + int num_track = -1; + int index_begin = -1; + int index_end = -1; + char title[ 100 ]; + TRACK *Track = NULL; + + while( NULL != ( fgets( buf, MAX_CARS_SPLIT_CUE_FILE, fp ))) { + + if( NULL != ( Ptr = strrchr( buf, '\n' ))) *Ptr = '\0'; + + // TRACK + if( NULL != ( Ptr = strstr( buf, "TRACK " ))) { + num_track = atoi( Ptr +6 ); + } + + // TITRE + else if( strstr( buf, "TITLE " )) { + if( num_track > -1 ) { + if( NULL != ( Ptr = strchr( buf, '"' ))) { + Ptr ++; + strcpy( title, Ptr ); + if( NULL != ( Ptr = strrchr( title, '"' ))) { + *Ptr = '\0'; + } + } + } + } + + // INDEX DE DEBUT + else if( strstr( buf, "INDEX 01" )) { + if( num_track > 1 ) { + if( index_end == -1 ) + index_end = (int)cue_get_time_in_sec( buf ); + + Track->end = index_end; + Track->length = Track->end - Track->begin; + } + + Track = (TRACK *)malloc( sizeof(TRACK) ); + Track->num_track = num_track; + strcpy( Track->title, title ); + Track->begin = index_begin; + Track->end = index_end; + Track->length = Track->end - Track->begin; + ListTrack = C_list_append( ListTrack, Track ); + + index_begin = index_end = -1; + index_begin = (int)cue_get_time_in_sec( buf ); + + Track->begin = index_begin; + } + + // INDEX DE FIN + else if( index_begin != -1 && strstr( buf, "INDEX 00" )) { + index_end = (int)cue_get_time_in_sec( buf ); + } + } + fclose( fp ); + + if( index_end == -1 ) { + Track->end = TimeSongSec; + } + } + return( TRUE ); +} + +// +// +void cue_set( OP_CUE p_op_cue ) +{ + CList *list = NULL; + CList *list_b = NULL; + INFO *Info = NULL; + char *OutputDir = NULL; + char *path_name_file_wav = NULL; + + if( NULL != ( list = C_list_first( Detail.ListFile ))) { + + while( list ) { + if( NULL != (Info = (INFO *)list->data) ) { + + OutputDir = utils_get_dir_dest( Info ); + + if( p_op_cue == OP_CUE_INFO ) { + if( FILE_IS_WAV == Info->type_infosong_file_is ) { + if( TRUE == cue_read_wav_file( Info->path_name_file )) + cue_put_infos_wav_file( Info->path_name_file ); + } + else if( FILE_IS_CUE == Info->type_infosong_file_is ) { + if( TRUE == cue_read_cue_file( Info->path_name_file, &path_name_file_wav )) + cue_put_infos_wav_file( Info->path_name_file ); + } + } + else if( p_op_cue == OP_CUE_EXTRACT ) { + if( FILE_IS_WAV == Info->type_infosong_file_is ) { + if( TRUE == cue_read_wav_file( Info->path_name_file )) + cue_extract_wav_file( OutputDir, Info->path_name_file ); + } + else if( FILE_IS_CUE == Info->type_infosong_file_is ) { + if( TRUE == cue_read_cue_file( Info->path_name_file, &path_name_file_wav )) + cue_extract_wav_file( OutputDir, path_name_file_wav ); + } + } + + if( NULL != OutputDir ) { + free( OutputDir ); + OutputDir = NULL; + } + } + + // Clear list: ListTrack + if( NULL != (list_b = C_list_first( ListTrack ))) { + while( list_b ) { + free( list_b->data ); + list_b->data = NULL; + list_b = C_list_next( list_b ); + } + list_b = ListTrack = C_list_free( ListTrack ); + } + + list = C_list_next( list ); + } + } +} + + + + + + diff -Nru xcfa-4.3.8/src_cli/file_conv.c xcfa-5.0.1/src_cli/file_conv.c --- xcfa-4.3.8/src_cli/file_conv.c 1970-01-01 00:00:00.000000000 +0000 +++ xcfa-5.0.1/src_cli/file_conv.c 2014-12-22 19:37:01.000000000 +0000 @@ -0,0 +1,712 @@ +/* + * file : src/file_conv.c + * project : xcfa_cli + * copyright : (C) 2014 by BULIN Claude + * + * This file is part of xcfa_cli project + * + * xcfa_cli is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; version 3. + * + * xcfa_cli is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 + * USA + */ + +#ifdef HAVE_CONFIG_H + #include "../config.h" +#endif + +#include +#include +#include + +#include "global.h" +#include "conv.h" +#include "tags.h" + + + +// +// Change quantification with SOX program +// +C_BOOL fileconv_change_quantification_with_sox( + C_BOOL pbool_copy_dest_to_src, + char *p_src, + char *p_dest, + int p_Hertz, + int p_Channels, + int p_Bits + ) +{ + char StrHertz[ 10 ]; + char StrChannels[ 10 ]; + char StrBits[ 10 ]; + char **PtrTabArgs = NULL; + + sprintf( &StrHertz[0], "%d", (int)p_Hertz ); + sprintf( &StrChannels[0], "%d", (int)p_Channels ); + sprintf( &StrBits[0], "%d", (int)p_Bits ); + + PtrTabArgs = conv_with_sox_get_param( p_src, p_dest, StrHertz, StrChannels, StrBits ); + conv_to_convert( PtrTabArgs, SOX_WAV_TO_WAV, "SOX_WAV_TO_WAV"); + PtrTabArgs = conv_RemoveTab( PtrTabArgs ); + if( TRUE == pbool_copy_dest_to_src ) + conv_copy_src_to_dest( p_dest, p_src ); + + return( C_file_test( p_src )); +} + + +// +// Conversion and | or split +// +// FROM: +// FLAC | APE | WAVPACK | OGG | M4A | MPC | MP3 | WMA | SHORTEN | RM | DTS | AIF | AC3 +// TO: +// WAV +// TO: +// FLAC | APE | WAVPACK | OGG | M4A | AAC | MPC | MP3 +// +void file_conv( void ) +{ + CList *list = NULL; + INFO *Info = NULL; + int Channels; + int Hertz; + int Bits; + int NewBits; + int pos; + char **PtrTabArgs = NULL; + char *OutputDir = NULL; + char *basename = NULL; + char *Ptr = NULL; + int i; + TAGS *info_tags = NULL; + + if( NULL != ( list = C_list_first( Detail.ListFile ))) { + + // TEMPORARY FOLDER CONVERSION + conv.TmpRep = utils_create_rep( "/tmp/xcfa_cli_conv/" ); + + while( list ) { + if( NULL != (Info = (INFO *)list->data) ) { + + OutputDir = utils_get_dir_dest( Info ); + + // MAKE DIRECTORY DESTINATION IF NOT EXIST + if( FALSE == C_dir_test( OutputDir )) + C_mkdir_with_parents( OutputDir ); + + Info->tmp_wav = C_strdup_printf( "%s/TmpRep.wav", conv.TmpRep ); + Info->tmp_sox = C_strdup_printf( "%s/TmpRep.sox.wav", conv.TmpRep ); + + basename = C_path_get_basename( Info->path_name_file ); + if( NULL != (Ptr = strchr( basename, '.' ))) *Ptr = '\0'; + + // ------------------------------------------------------------------------ + // + // FROM: + // FLAC | APE | WAVPACK | OGG | M4A | FILE_IS_VID_M4A | MPC | MP3 | WMA | SHORTEN | RM | DTS | AIF | AC3 + // TO: + // WAV + // + // ------------------------------------------------------------------------ + + switch( Info->type_infosong_file_is ) { + + case FILE_IS_WAV : + { + INFO_WAV *info_wav = (INFO_WAV *)Info->info; + info_tags = info_wav->tags; + + if( TRUE == info_wav->BoolBwf ) { + PtrTabArgs = conv_with_sox_float_get_param( + Info->path_name_file, + Info->tmp_wav + ); + conv_to_convert( PtrTabArgs, SOX_WAV_TO_WAV, "SOX_WAV_TO_WAV" ); + PtrTabArgs = conv_RemoveTab( PtrTabArgs ); + } + else { + conv_copy_src_to_dest( Info->path_name_file, Info->tmp_wav ); + } + } + break; + + case FILE_IS_FLAC : + { + INFO_FLAC *info_flac = (INFO_FLAC *)Info->info; + info_tags = info_flac->tags; + + PtrTabArgs = conv_get_command_line( + FLAC_FLAC_TO_WAV, + Info->path_name_file, + Info->tmp_wav, + NULL, + Detail.Op_flac + ); + conv_to_convert( PtrTabArgs, FLAC_FLAC_TO_WAV, "FLAC_FLAC_TO_WAV"); + PtrTabArgs = conv_RemoveTab( PtrTabArgs ); + } + break; + + case FILE_IS_APE : + { + INFO_APE *info_ape = (INFO_APE *)Info->info; + info_tags = info_ape->tags; + + PtrTabArgs = conv_get_command_line( + MAC_APE_TO_WAV, + Info->path_name_file, + Info->tmp_wav, + NULL, + Detail.Op_ape + ); + conv_to_convert( PtrTabArgs, MAC_APE_TO_WAV, "MAC_APE_TO_WAV"); + PtrTabArgs = conv_RemoveTab( PtrTabArgs ); + } + break; + + case FILE_IS_WAVPACK : + { + INFO_WAVPACK *info_wavpack = (INFO_WAVPACK *)Info->info; + info_tags = info_wavpack->tags; + + PtrTabArgs = conv_get_command_line( + WVUNPACK_WAVPACK_TO_WAV, + Info->path_name_file, + Info->tmp_wav, + NULL, + Detail.Op_wavpack + ); + conv_to_convert( PtrTabArgs, WVUNPACK_WAVPACK_TO_WAV, "WVUNPACK_WAVPACK_TO_WAV"); + PtrTabArgs = conv_RemoveTab( PtrTabArgs ); + } + break; + + case FILE_IS_MP3 : + case FILE_IS_OGG : + { + if( FILE_IS_MP3 == Info->type_infosong_file_is ) { + INFO_MP3 *info_mp3 = (INFO_MP3 *)Info->info; + info_tags = info_mp3->tags; + } + else if( FILE_IS_OGG == Info->type_infosong_file_is ) { + INFO_OGG *info_ogg = (INFO_OGG *)Info->info; + info_tags = info_ogg->tags; + } + + PtrTabArgs = conv_AllocTabArgs( &pos ); + PtrTabArgs[ pos++ ] = C_strdup ("mplayer"); + PtrTabArgs[ pos++ ] = C_strdup ("-nojoystick"); + PtrTabArgs[ pos++ ] = C_strdup ("-nolirc"); + PtrTabArgs[ pos++ ] = C_strdup ("-ao"); + PtrTabArgs[ pos++ ] = C_strdup ("pcm"); + PtrTabArgs[ pos++ ] = C_strdup( Info->path_name_file ); + PtrTabArgs[ pos++ ] = C_strdup ("-ao"); + PtrTabArgs[ pos++ ] = C_strdup_printf ("pcm:file=%s", Info->tmp_wav ); + PtrTabArgs[ pos ] = NULL; + if( FILE_IS_OGG == Info->type_infosong_file_is ) { + conv_to_convert( PtrTabArgs, MPLAYER_OGG_TO_WAV, "MPLAYER_OGG_TO_WAV"); + PtrTabArgs = conv_RemoveTab( PtrTabArgs ); + } + else { + conv_to_convert( PtrTabArgs, MPLAYER_MP3_TO_WAV, "MPLAYER_MP3_TO_WAV"); + PtrTabArgs = conv_RemoveTab( PtrTabArgs ); + + // Mon, 06 Jan 2014 08:33:58 +0100 + // Isaak Babaev + // Must be 16 bits + Channels = 0; + Hertz = 0; + Bits = 0; + tagswav_file_GetBitrate( Info->tmp_wav, &Channels, &Hertz, &Bits ); + if( Bits != 16 ) { + Bits = 16; + fileconv_change_quantification_with_sox( TRUE, Info->tmp_wav, Info->tmp_sox, Hertz, Channels, Bits ); + } + } + } + break; + + case FILE_IS_MPC : + { + INFO_MPC *info_mpc = (INFO_MPC *)Info->info; + info_tags = info_mpc->tags; + + PtrTabArgs = conv_AllocTabArgs( &pos ); + PtrTabArgs [ pos++ ] = C_strdup ("mplayer"); + PtrTabArgs [ pos++ ] = C_strdup ("-nojoystick"); + PtrTabArgs [ pos++ ] = C_strdup ("-nolirc"); + PtrTabArgs [ pos++ ] = C_strdup( Info->path_name_file ); + PtrTabArgs [ pos++ ] = C_strdup ("-ao"); + PtrTabArgs [ pos++ ] = C_strdup ("pcm"); + PtrTabArgs [ pos++ ] = C_strdup ("-ao"); + PtrTabArgs [ pos++ ] = C_strdup_printf ("pcm:file=%s", Info->tmp_wav ); + PtrTabArgs [ pos++ ] = C_strdup ("-af"); + PtrTabArgs [ pos++ ] = C_strdup ("channels=2"); + PtrTabArgs [ pos++ ] = C_strdup ("-srate"); + PtrTabArgs [ pos++ ] = C_strdup ("44100"); + PtrTabArgs [ pos++ ] = NULL; + conv_to_convert( PtrTabArgs, MPLAYER_MPC_TO_WAV, "MPLAYER_MPC_TO_WAV"); + PtrTabArgs = conv_RemoveTab( PtrTabArgs ); + } + break; + + case FILE_IS_AC3 : + { + INFO_AC3 *info_ac3 = (INFO_AC3 *)Info->info; + info_tags = info_ac3->tags; + + PtrTabArgs = conv_AllocTabArgs( &pos ); + PtrTabArgs [ pos++ ] = C_strdup ("a52dec"); + PtrTabArgs [ pos++ ] = C_strdup( Info->path_name_file ); + PtrTabArgs [ pos++ ] = C_strdup ("-o"); + PtrTabArgs [ pos++ ] = C_strdup ("wav"); + PtrTabArgs [ pos++ ] = C_strdup (">"); + PtrTabArgs [ pos++ ] = C_strdup( Info->tmp_wav ); + PtrTabArgs [ pos++ ] = NULL; + conv_to_convert( PtrTabArgs, A52DEC_AC3_TO_WAV, "A52DEC_AC3_TO_WAV" ); + PtrTabArgs = conv_RemoveTab( PtrTabArgs ); + + tagswav_file_GetBitrate( Info->tmp_wav, &Channels, &Hertz, &Bits ); + fileconv_change_quantification_with_sox( TRUE, Info->tmp_wav, Info->tmp_sox, Hertz, Channels, Bits ); + } + break; + + case FILE_IS_M4A : + case FILE_IS_VID_M4A : + { + INFO_M4A *info_m4a = (INFO_M4A *)Info->info; + info_tags = info_m4a->tags; + + PtrTabArgs = conv_AllocTabArgs( &pos ); + PtrTabArgs [ pos++ ] = C_strdup ("mplayer"); + PtrTabArgs [ pos++ ] = C_strdup ("-nojoystick"); + PtrTabArgs [ pos++ ] = C_strdup ("-nolirc"); + if( FILE_IS_VID_M4A == Info->type_infosong_file_is ) { + PtrTabArgs [ pos++ ] = C_strdup ("-novideo"); + PtrTabArgs [ pos++ ] = C_strdup ("-vo"); + PtrTabArgs [ pos++ ] = C_strdup ("null"); + } + PtrTabArgs [ pos++ ] = C_strdup ("-ao"); + PtrTabArgs [ pos++ ] = C_strdup ("pcm"); + PtrTabArgs [ pos++ ] = C_strdup( Info->path_name_file ); + PtrTabArgs [ pos++ ] = C_strdup ("-ao"); + PtrTabArgs [ pos++ ] = C_strdup_printf ("pcm:file=%s", Info->tmp_wav ); + if( FILE_IS_VID_M4A == Info->type_infosong_file_is ) { + PtrTabArgs [ pos++ ] = C_strdup ("-srate"); + PtrTabArgs [ pos++ ] = C_strdup ("44100"); + } + PtrTabArgs [ pos++ ] = NULL; + conv_to_convert( PtrTabArgs, MPLAYER_M4A_TO_WAV, "MPLAYER_M4A_TO_WAV"); + PtrTabArgs = conv_RemoveTab( PtrTabArgs ); + } + break; + + case FILE_IS_WMA : + case FILE_IS_RM : + case FILE_IS_DTS : + case FILE_IS_AIFF : + if( FILE_IS_WMA == Info->type_infosong_file_is ) { + INFO_WMA *info_wma = (INFO_WMA *)Info->info; + info_tags = info_wma->tags; + } + else if( FILE_IS_RM == Info->type_infosong_file_is ) { + INFO_RM *info_rm = (INFO_RM *)Info->info; + info_tags = info_rm->tags; + } + else if( FILE_IS_DTS == Info->type_infosong_file_is ) { + INFO_DTS *info_dts = (INFO_DTS *)Info->info; + info_tags = info_dts->tags; + } + else if( FILE_IS_AIFF == Info->type_infosong_file_is ) { + INFO_AIFF *info_aif = (INFO_AIFF *)Info->info; + info_tags = info_aif->tags; + } + + PtrTabArgs = conv_AllocTabArgs( &pos ); + PtrTabArgs [ pos++ ] = C_strdup ("mplayer"); + PtrTabArgs [ pos++ ] = C_strdup ("-nojoystick"); + PtrTabArgs [ pos++ ] = C_strdup ("-nolirc"); + PtrTabArgs [ pos++ ] = C_strdup( Info->path_name_file ); + PtrTabArgs [ pos++ ] = C_strdup ("-ao"); + PtrTabArgs [ pos++ ] = C_strdup ("pcm"); + PtrTabArgs [ pos++ ] = C_strdup ("-ao"); + PtrTabArgs [ pos++ ] = C_strdup_printf ("pcm:file=%s", Info->tmp_wav ); + PtrTabArgs [ pos++ ] = C_strdup ("-af"); + PtrTabArgs [ pos++ ] = C_strdup ("channels=2"); + PtrTabArgs [ pos++ ] = C_strdup ("-srate"); + PtrTabArgs [ pos++ ] = C_strdup ("44100"); + PtrTabArgs [ pos++ ] = NULL; + conv_to_convert( PtrTabArgs, MPLAYER_WMA_TO_WAV, "MPLAYER_WMA_TO_WAV"); + PtrTabArgs = conv_RemoveTab( PtrTabArgs ); + break; + + case FILE_IS_SHN : + { + INFO_SHN *info_shn = (INFO_SHN *)Info->info; + info_tags = info_shn->tags; + + PtrTabArgs = conv_AllocTabArgs( &pos ); + PtrTabArgs [ pos++ ] = C_strdup ("shorten"); + PtrTabArgs [ pos++ ] = C_strdup ("-x"); + PtrTabArgs [ pos++ ] = C_strdup ("-b"); + PtrTabArgs [ pos++ ] = C_strdup ("256"); + PtrTabArgs [ pos++ ] = C_strdup ("-c"); + PtrTabArgs [ pos++ ] = C_strdup ("2"); + PtrTabArgs [ pos++ ] = C_strdup( Info->path_name_file ); + PtrTabArgs [ pos++ ] = C_strdup( Info->tmp_wav ); + PtrTabArgs [ pos++ ] = NULL; + conv_to_convert( PtrTabArgs, SHORTEN_SHN_TO_WAV, "SHORTEN_SHN_TO_WAV"); + } + break; + + case FILE_IS_NONE : + case FILE_IS_AAC : + case FILE_IS_WAVPACK_MD5 : + case FILE_IS_CUE : + case NBR_FILE_TO: + break; + } + + // ------------------------------------------------------------------------ + // + // S P L I T + // WAV to WAV + // + // ------------------------------------------------------------------------ + if( 0 != Detail.split_length ) + split_wav( Info->tmp_wav, Detail.split, Detail.split_length ); + + // ------------------------------------------------------------------------ + // + // S E T T I N G WAV + // + // ------------------------------------------------------------------------ + if( 0 != Detail.frequency || 0 != Detail.track || 0 != Detail.quantification ) + wav_change_setting( Info->tmp_wav, Detail.frequency, Detail.track, Detail.quantification ); + + tagswav_file_GetBitrate( Info->tmp_wav, &Channels, &Hertz, &Bits ); + NewBits = Bits; + + // ------------------------------------------------------------------------ + // + // FROM: + // WAV + // TO: + // FLAC | APE | WAVPACK | OGG | M4A | FILE_IS_VID_M4A | AAC | MPC | MP3 + // + // ------------------------------------------------------------------------ + + Info->tmp_flac = C_strdup_printf( "%s%s.flac", OutputDir, basename ); + Info->tmp_ape = C_strdup_printf( "%s%s.ape", OutputDir, basename ); + Info->tmp_wavpack = C_strdup_printf( "%s%s.wv", OutputDir, basename ); + Info->tmp_sox_24 = C_strdup_printf( "%s/TmpRep_24.sox.wav", conv.TmpRep ); + Info->tmp_ogg = C_strdup_printf( "%s%s.ogg", OutputDir, basename ); + Info->tmp_m4a = C_strdup_printf( "%s%s.m4a", OutputDir, basename ); + Info->tmp_aac = C_strdup_printf( "%s%s.aac", OutputDir, basename ); + Info->tmp_mpc = C_strdup_printf( "%s%s.mpc", OutputDir, basename ); + Info->tmp_mp3 = C_strdup_printf( "%s%s.mp3", OutputDir, basename ); + + for( i = 0; i < NBR_FILE_TO; i ++ ) { + if( TRUE == Detail.BoolTypeDest[ i ] ) { + switch( i ) { + case FILE_IS_FLAC: + if( Bits == 32 ) + fileconv_change_quantification_with_sox( FALSE, Info->tmp_wav, Info->tmp_sox, Hertz, Channels, 24 ); + PtrTabArgs = conv_get_command_line( + FLAC_WAV_TO_FLAC, + ( Bits == 32 ) ? Info->tmp_sox : Info->tmp_wav, + Info->tmp_flac, + NULL, + Detail.Op_flac + ); + conv_to_convert( PtrTabArgs, FLAC_WAV_TO_FLAC, "FLAC_WAV_TO_FLAC"); + PtrTabArgs = conv_RemoveTab( PtrTabArgs ); + break; + + case FILE_IS_APE: + // if( Bits != 16 ); + fileconv_change_quantification_with_sox( FALSE, Info->tmp_wav, Info->tmp_sox, Hertz, Channels, 16 ); + PtrTabArgs = conv_get_command_line( + MAC_WAV_TO_APE, + // ( Bits != 16 ) ? Info->tmp_sox : Info->tmp_wav, + Info->tmp_sox, + Info->tmp_ape, + NULL, + Detail.Op_ape + ); + conv_to_convert( PtrTabArgs, MAC_WAV_TO_APE, "MAC_WAV_TO_APE"); + PtrTabArgs = conv_RemoveTab( PtrTabArgs ); + break; + + case FILE_IS_WAVPACK: + PtrTabArgs = conv_get_command_line( + WAVPACK_WAV_TO_WAVPACK, + Info->tmp_wav, + Info->tmp_wavpack, + (Detail.BoolNoTag == TRUE) ? NULL : info_tags, + Detail.Op_wavpack + ); + conv_to_convert( PtrTabArgs, WAVPACK_WAV_TO_WAVPACK, "WAVPACK_WAV_TO_WAVPACK"); + PtrTabArgs = conv_RemoveTab( PtrTabArgs ); + break; + + case FILE_IS_WAV: + { + char *dest_wav = C_strdup_printf( "%s%s.wav", OutputDir, basename ); + conv_copy_src_to_dest( Info->tmp_wav, dest_wav ); + + if( TRUE == Detail.bool_normalize ) + Info->path_is_normalize = C_strdup( dest_wav ); + + free( dest_wav ); + dest_wav = NULL; + } + break; + + case FILE_IS_OGG: + if( Bits != 24 && Bits != 16 && Bits != 8 ) { + if (Bits > 24) NewBits = 24; + else if (Bits > 16 && Bits < 24) NewBits = (Bits - 16) < 3 ? 24 : 16; + else if (Bits > 8 && Bits < 16) NewBits = (Bits - 8) < 3 ? 16 : 8; + else if (Bits < 8) NewBits = 8; + Bits = NewBits; + fileconv_change_quantification_with_sox( FALSE, Info->tmp_wav, Info->tmp_sox, Hertz, Channels, 24 ); + } + if( Bits == 24 ) { + PtrTabArgs = conv_with_sox_float_get_param( + ( Bits != 24 && Bits != 16 && Bits != 8 ) ? Info->tmp_sox : Info->tmp_wav, + Info->tmp_sox_24 + ); + conv_to_convert( PtrTabArgs, SOX_WAV_TO_WAV, "SOX_WAV_TO_WAV"); + PtrTabArgs = conv_RemoveTab( PtrTabArgs ); + conv_copy_src_to_dest( Info->tmp_sox_24, Info->tmp_sox ); + } + + PtrTabArgs = conv_get_command_line( + OGGENC_WAV_TO_OGG, + ( Bits != 24 && Bits != 16 && Bits != 8 ) || ( Bits == 24 ) ? Info->tmp_sox : Info->tmp_wav, + Info->tmp_ogg, + (Detail.BoolNoTag == TRUE) ? NULL : info_tags, + Detail.Op_ogg + ); + conv_to_convert( PtrTabArgs, OGGENC_WAV_TO_OGG, "OGGENC_WAV_TO_OGG"); + PtrTabArgs = conv_RemoveTab( PtrTabArgs ); + + if( TRUE == Detail.bool_normalize ) + Info->path_is_normalize = C_strdup( Info->tmp_ogg ); + break; + + case FILE_IS_M4A: + if( Bits != 64 && Bits != 32 && Bits != 24 && Bits != 16 && Bits != 8 ) { + if (Bits > 64) NewBits = 64; + else if (Bits > 32 && Bits < 64) NewBits = 32; + else if (Bits > 24 && Bits < 32) NewBits = 24; + else if (Bits > 16 && Bits < 24) NewBits = (Bits - 16) < 3 ? 24 : 16; + else if (Bits > 8 && Bits < 16) NewBits = (Bits - 8) < 3 ? 16 : 8; + else if (Bits < 8) NewBits = 8; + NewBits = Bits; + fileconv_change_quantification_with_sox( FALSE, Info->tmp_wav, Info->tmp_sox, Hertz, Channels, NewBits ); + } + else { + conv_copy_src_to_dest( Info->tmp_wav, Info->tmp_sox ); + } + if( Bits == 32 || Bits == 24 ) { + PtrTabArgs = conv_with_sox_float_get_param( + Info->tmp_sox, + Info->tmp_sox_24 + ); + conv_to_convert( PtrTabArgs, SOX_WAV_TO_WAV, "SOX_WAV_TO_WAV"); + PtrTabArgs = conv_RemoveTab( PtrTabArgs ); + conv_copy_src_to_dest( Info->tmp_sox_24, Info->tmp_sox ); + } + PtrTabArgs = conv_get_command_line( + FAAC_WAV_TO_M4A, + Info->tmp_sox, + Info->tmp_m4a, + (Detail.BoolNoTag == TRUE) ? NULL : info_tags, + Detail.Op_m4a + ); + conv_to_convert( PtrTabArgs, FAAC_WAV_TO_M4A, "FAAC_WAV_TO_M4A"); + PtrTabArgs = conv_RemoveTab( PtrTabArgs ); + break; + + case FILE_IS_AAC: + if( Bits != 64 && Bits != 32 && Bits != 24 && Bits != 16 && Bits != 8 ) { + if (Bits > 64) NewBits = 64; + else if (Bits > 32 && Bits < 64) NewBits = 32; + else if (Bits > 24 && Bits < 32) NewBits = 24; + else if (Bits > 16 && Bits < 24) NewBits = (Bits - 16) < 3 ? 24 : 16; + else if (Bits > 8 && Bits < 16) NewBits = (Bits - 8) < 3 ? 16 : 8; + else if (Bits < 8) NewBits = 8; + NewBits = Bits; + fileconv_change_quantification_with_sox( FALSE, Info->tmp_wav, Info->tmp_sox, Hertz, Channels, NewBits ); + } + else { + conv_copy_src_to_dest( Info->tmp_wav, Info->tmp_sox ); + } + if( Bits == 24 ) { + PtrTabArgs = conv_with_sox_float_get_param( + Info->tmp_sox, + Info->tmp_sox_24 + ); + conv_to_convert( PtrTabArgs, SOX_WAV_TO_WAV, "SOX_WAV_TO_WAV"); + PtrTabArgs = conv_RemoveTab( PtrTabArgs ); + conv_copy_src_to_dest( Info->tmp_sox_24, Info->tmp_sox); + } + if( Hertz < 44100 ) { + PtrTabArgs = conv_AllocTabArgs( &pos ); + PtrTabArgs [ pos++ ] = C_strdup ("mplayer"); + PtrTabArgs [ pos++ ] = C_strdup ("-nojoystick"); + PtrTabArgs [ pos++ ] = C_strdup ("-nolirc"); + PtrTabArgs [ pos++ ] = C_strdup ( Info->tmp_sox ); + PtrTabArgs [ pos++ ] = C_strdup ("-ao"); + PtrTabArgs [ pos++ ] = C_strdup ("pcm"); + PtrTabArgs [ pos++ ] = C_strdup ("-ao"); + PtrTabArgs [ pos++ ] = C_strdup_printf( "pcm:file=%s", Info->tmp_sox_24 ); + PtrTabArgs [ pos++ ] = C_strdup ("-srate"); + PtrTabArgs [ pos++ ] = C_strdup ("44100"); + PtrTabArgs [ pos++ ] = NULL; + conv_to_convert( PtrTabArgs, MPLAYER_WAV_TO_WAV, "MPLAYER_WAV_TO_WAV"); + PtrTabArgs = conv_RemoveTab( PtrTabArgs ); + conv_copy_src_to_dest( Info->tmp_sox_24, Info->tmp_sox ); + } + PtrTabArgs = conv_get_command_line( + AACPLUSENC_WAV_TO_AAC, + Info->tmp_sox, + Info->tmp_aac, + NULL, + Detail.Op_aac + ); + conv_to_convert( PtrTabArgs, AACPLUSENC_WAV_TO_AAC, "AACPLUSENC_WAV_TO_AAC"); + PtrTabArgs = conv_RemoveTab( PtrTabArgs ); + break; + + case FILE_IS_MPC: + if( Bits != 64 || Bits != 32 || Bits != 24 || Bits != 16 || Bits != 8 ) { + if (Bits > 64) NewBits = 64; + else if (Bits > 32 && Bits < 64) NewBits = 32; + else if (Bits > 24 && Bits < 32) NewBits = 24; + else if (Bits > 16 && Bits < 24) NewBits = (Bits - 16) < 3 ? 24 : 16; + else if (Bits > 8 && Bits < 16) NewBits = (Bits - 8) < 3 ? 16 : 8; + else if (Bits < 8) NewBits = 8; + NewBits = Bits = 16; + fileconv_change_quantification_with_sox( FALSE, Info->tmp_wav, Info->tmp_sox, Hertz, Channels, NewBits ); + } + else { + conv_copy_src_to_dest( Info->tmp_wav, Info->tmp_sox ); + } + // SET WITH FLOAT FORMAT IF Bits == 24 || 32 + if (Bits == 32 || Bits == 24) { + PtrTabArgs = conv_with_sox_float_get_param( + Info->tmp_sox, + Info->tmp_sox_24 + ); + conv_to_convert( PtrTabArgs, SOX_WAV_TO_WAV, "SOX_WAV_TO_WAV"); + PtrTabArgs = conv_RemoveTab( PtrTabArgs ); + conv_copy_src_to_dest( Info->tmp_sox_24, Info->tmp_sox ); + } + if( Hertz < 44100 ) { + PtrTabArgs = conv_AllocTabArgs( &pos ); + PtrTabArgs [ pos++ ] = C_strdup ("mplayer"); + PtrTabArgs [ pos++ ] = C_strdup ("-nojoystick"); + PtrTabArgs [ pos++ ] = C_strdup ("-nolirc"); + PtrTabArgs [ pos++ ] = C_strdup (Info->tmp_sox); + PtrTabArgs [ pos++ ] = C_strdup ("-ao"); + PtrTabArgs [ pos++ ] = C_strdup ("pcm"); + PtrTabArgs [ pos++ ] = C_strdup ("-ao"); + PtrTabArgs [ pos++ ] = C_strdup_printf ("pcm:file=%s", Info->tmp_sox_24); + PtrTabArgs [ pos++ ] = C_strdup ("-srate"); + PtrTabArgs [ pos++ ] = C_strdup ("44100"); + PtrTabArgs [ pos++ ] = NULL; + conv_to_convert( PtrTabArgs, MPLAYER_WAV_TO_WAV, "MPLAYER_WAV_TO_WAV"); + PtrTabArgs = conv_RemoveTab( PtrTabArgs ); + conv_copy_src_to_dest( Info->tmp_sox_24, Info->tmp_sox ); + } + PtrTabArgs = conv_get_command_line( + MPPENC_WAV_TO_MPC, + Info->tmp_sox, + Info->tmp_mpc, + (Detail.BoolNoTag == TRUE) ? NULL : info_tags, + Detail.Op_mpc + ); + conv_to_convert( PtrTabArgs, MPPENC_WAV_TO_MPC, "MPPENC_WAV_TO_MPC"); + PtrTabArgs = conv_RemoveTab( PtrTabArgs ); + break; + + case FILE_IS_MP3: + if( Info->type_infosong_file_is == FILE_IS_VID_M4A || + Info->type_infosong_file_is == FILE_IS_M4A ) { + NewBits = 16; + fileconv_change_quantification_with_sox( FALSE, Info->tmp_wav, Info->tmp_sox, 44100, 2, 16 ); + } + else if( Hertz == 48000 || Bits == 32 ) { + PtrTabArgs = conv_with_sox_float_get_param( + Info->tmp_wav, + Info->tmp_sox + ); + conv_to_convert( PtrTabArgs, SOX_WAV_TO_WAV, "SOX_WAV_TO_WAV"); + PtrTabArgs = conv_RemoveTab( PtrTabArgs ); + } else { + // CORRECTION + // http://forum.ubuntu-fr.org/viewtopic.php?pid=3271586#p3271586 + // joelab07 + if (Bits < 8) NewBits = 8; + if (Bits > 16 && Bits < 24) NewBits = (Bits - 16) < 3 ? 16 : 24; + if (Bits > 24 && Bits < 32) NewBits = (Bits - 24) < 3 ? 24 : 32; + NewBits = Bits; + fileconv_change_quantification_with_sox( FALSE, Info->tmp_wav, Info->tmp_sox, Hertz, Channels, NewBits ); + } + PtrTabArgs = conv_get_command_line( + LAME_WAV_TO_MP3, + Info->tmp_sox, + Info->tmp_mp3, + (Detail.BoolNoTag == TRUE) ? NULL : info_tags, + Detail.Op_mp3 + ); + conv_to_convert( PtrTabArgs, LAME_WAV_TO_MP3, "LAME_WAV_TO_MP3"); + PtrTabArgs = conv_RemoveTab( PtrTabArgs ); + + if( TRUE == Detail.bool_normalize ) + Info->path_is_normalize = C_strdup( Info->tmp_mp3 ); + break; + } + } + } + + if( NULL != OutputDir ) { + free( OutputDir ); + OutputDir = NULL; + } + } + list = C_list_next( list ); + + if( NULL != Info->tmp_wav ) { free( Info->tmp_wav ); Info->tmp_wav = NULL; } + if( NULL != Info->tmp_sox ) { free( Info->tmp_sox ); Info->tmp_sox = NULL; } + if( NULL != Info->tmp_flac ) { free( Info->tmp_flac ); Info->tmp_flac = NULL; } + if( NULL != Info->tmp_ape ) { free( Info->tmp_ape ); Info->tmp_ape = NULL; } + if( NULL != Info->tmp_wavpack ) { free( Info->tmp_wavpack ); Info->tmp_wavpack = NULL; } + if( NULL != Info->tmp_sox_24 ) { free( Info->tmp_sox_24 ); Info->tmp_sox_24 = NULL; } + if( NULL != Info->tmp_ogg ) { free( Info->tmp_ogg ); Info->tmp_ogg = NULL; } + if( NULL != Info->tmp_m4a ) { free( Info->tmp_m4a ); Info->tmp_m4a = NULL; } + if( NULL != Info->tmp_aac ) { free( Info->tmp_aac ); Info->tmp_aac = NULL; } + if( NULL != Info->tmp_mpc ) { free( Info->tmp_mpc ); Info->tmp_mpc = NULL; } + if( NULL != Info->tmp_mp3 ) { free( Info->tmp_mp3 ); Info->tmp_mp3 = NULL; } + if( NULL != basename ) { free( basename ); basename = NULL; } + if( NULL != OutputDir ) { free( OutputDir ); OutputDir = NULL; } + } + conv.TmpRep = utils_remove_temporary_rep( conv.TmpRep ); + } +} + + diff -Nru xcfa-4.3.8/src_cli/file_is.c xcfa-5.0.1/src_cli/file_is.c --- xcfa-4.3.8/src_cli/file_is.c 1970-01-01 00:00:00.000000000 +0000 +++ xcfa-5.0.1/src_cli/file_is.c 2014-12-22 19:22:11.000000000 +0000 @@ -0,0 +1,676 @@ + /* + * file : lib/file_is.c + * project : xcfa_cli + * copyright : (C) 2014 by BULIN Claude + * + * This file is part of xcfa_cli project + * + * xcfa_cli is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; version 3. + * + * xcfa_cli is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 + * USA + */ + + +#ifdef HAVE_CONFIG_H + #include "../config.h" +#endif + +#ifdef ENABLE_NLS + #include + #define _(String) gettext (String) +#endif + +#include +#include +#include +#include + +#include "file_is.h" +#include "global.h" + + + + +// FILE IS VIDM4A ? +// +C_BOOL FileIs_vidm4a( char *namefile ) +{ + FILE *fp = NULL; + char *buf = NULL; + int cpt; + C_BOOL bool_signature = FALSE; + + if( (buf = (char *)malloc (sizeof(char) * 2048)) == NULL ) return (FALSE); + if( (fp = fopen (namefile, "rb")) != NULL ) { + fread( buf, 1, 2000, fp ); + fclose (fp); + } + + for (cpt = 0; cpt < 2000; cpt ++ ) { + if( buf [ cpt + 0 ] == 0x6D && // m + buf [ cpt + 1 ] == 0x6F && // o + buf [ cpt + 2 ] == 0x6F && // o + buf [ cpt + 3 ] == 0x76 && // v + buf [ cpt + 4 ] == 0x00 && // \0 + buf [ cpt + 5 ] == 0x00 && // \0 + buf [ cpt + 6 ] == 0x00 && // \0 + buf [ cpt + 7 ] == 0x6C && // l + buf [ cpt + 8 ] == 0x6D && // m + buf [ cpt + 9 ] == 0x76 && // v + buf [ cpt + 10 ] == 0x68 && // h + buf [ cpt + 11 ] == 0x64 ) { // d + + bool_signature = TRUE; + break; + } + } + free( buf ); + buf = NULL; + + return( bool_signature ); +} +// FILE IS M4A ? +// +C_BOOL FileIs_m4a( char *namefile ) +{ + FILE *fp = NULL; + char *buf = NULL; + int cpt; + C_BOOL bool_signature = FALSE; + + if( (buf = (char *)malloc (sizeof(char) * 2048)) == NULL ) return (FALSE); + if( (fp = fopen (namefile, "rb")) != NULL ) { + fread( buf, 1, 2000, fp ); + fclose (fp); + } + + for (cpt = 0; cpt < 2000; cpt ++ ) { + if( buf [ cpt + 0 ] == 'l' && + buf [ cpt + 1 ] == 'i' && + buf [ cpt + 2 ] == 'b' && + buf [ cpt + 3 ] == 'f' && + buf [ cpt + 4 ] == 'a' && + buf [ cpt + 5 ] == 'a' && + buf [ cpt + 6 ] == 'c' ){ + bool_signature = TRUE; + break; + } + } + free( buf ); + buf = NULL; + + return( bool_signature ); +} +// FILE IS WAV ? +// +C_BOOL FileIs_wavpack (char *namefile) +{ + FILE *fp = NULL; + char str [ 42 ] = {'\0','\0','\0','\0','\0','\0','\0','\0'}; + + if ((fp = fopen (namefile, "rb")) != NULL) { + fread (&str[0], 1, 40, fp); + fclose (fp); + } + + if (str [0] == 'w' && + str [1] == 'v' && + str [2] == 'p' && + str [3] == 'k' && + + str [34] == 'R' && + str [35] == 'I' && + str [36] == 'F' && + str [37] == 'F') return (TRUE); + + return (FALSE); +} +// FILE IS_CUE ? +// +C_BOOL FileIs_cue( char *namefile ) +{ + FILE *fp = NULL; + char *buf = NULL; + C_BOOL bool_signature = FALSE; + + if( (buf = (char *)malloc (sizeof(char) * 2048)) == NULL ) return (FALSE); + if( (fp = fopen (namefile, "rb")) != NULL ) { + fread( buf, 1, 2000, fp ); + fclose (fp); + if( strstr( buf, "PERFORMER" ) && + strstr( buf, "TITLE" ) && + strstr( buf, "FILE" ) && + strstr( buf, "TRACK" ) && + strstr( buf, "INDEX" ) ) + bool_signature = TRUE; + } + free( buf ); + buf = NULL; + + return( bool_signature ); +} +// FILE IS WAV ? +// +typedef struct { // entete fichier WAV */ + + char tag1[ 5 ]; // ( 4 octets) : Constante "RIFF" + int size1; // ( 4 octets) : Taille du fichier + char tag2 [ 15 ];// (14 octets) : Constante "WAVEfmt " + int mode; // ( 2 octets) : Mode (1 pour mono ou 2 pour stereo) + int freq; // ( 4 octets) : Frequence d'échantillonage (en Hertz) + int bytepersec; // ( 4 octets) : Nombre de bits par seconde de musique + int nbrbyte; // ( 2 octets) : Nombre d'octets par échantillon + int format; // ( 2 octets) : Nombre de bits par donnée + int tag3; // ( 4 octets) : Constante "data" + int size2; // ( 4 octets) : Taille du fichier moins 116 octets + +} HEADER_WAV; +// +// +C_BOOL FileIs_wav (char *namefile) +{ + FILE *fp = NULL; + HEADER_WAV buf; + + if ((fp = fopen (namefile, "r")) == NULL) return (FALSE); + fread(&buf.tag1, 1, 4, fp); + buf.tag1 [ 4 ] = '\0'; + fread(&buf.tag2, 1, 4, fp); + fread(&buf.tag2, 1, 14, fp); + fclose (fp); + if ((buf.tag1 [ 0 ] == 'R' && + buf.tag1 [ 1 ] == 'I' && + buf.tag1 [ 2 ] == 'F' && + buf.tag1 [ 3 ] == 'F') && + + (buf.tag2 [ 0 ] == 'W' && + buf.tag2 [ 1 ] == 'A' && + buf.tag2 [ 2 ] == 'V' && + buf.tag2 [ 3 ] == 'E')) return (TRUE); + + return (FALSE); +} +// FILE IS SHN ? +// +C_BOOL FileIs_shn (char *namefile) +{ + FILE *fp = NULL; + char str [ 8 ] = {'\0','\0','\0','\0','\0','\0','\0','\0'}; + + if ((fp = fopen (namefile, "rb")) != NULL) { + fread (&str[0], 1, 4, fp); + fclose (fp); + } + if (str [0] == 'a' && str [1] == 'j' && str [2] == 'k' && str [3] == 'g') return (TRUE); + + return (FALSE); +} +// FILE IS RM ? +// +/* +$ file *.rm + audio01.rm: RealMedia file + audio02.rm: RealMedia file + + en tête fichier RM + --- DEC --- --- HEX --- + [ 00 01 02 03 ] 2e 52 4d 46 = .RMF + [ 18 19 20 21 ] 50 52 4f 50 = PROP +*/ +C_BOOL FileIs_rm (char *namefile) +{ + FILE *fp = NULL; + char *buf = NULL; + C_BOOL bool_signature = FALSE; + + buf = (char *)malloc (sizeof(char) * 512); + if ((fp = fopen (namefile, "rb")) != NULL) { + fread (buf, 1, 500, fp); + fclose (fp); + + if (buf [ 0 ] == 0x2e && // . + buf [ 1 ] == 0x52 && // R + buf [ 2 ] == 0x4d && // M + buf [ 3 ] == 0x46 && // F + + buf [ 18 ] == 0x50 && // P + buf [ 19 ] == 0x52 && // R + buf [ 20 ] == 0x4f && // O + buf [ 21 ] == 0x50) { // P + + bool_signature = TRUE; + } + } + free (buf); + buf = NULL; + + return (bool_signature); +} +// FILE IS OGG ? +// +C_BOOL FileIs_ogg (char *namefile) +{ + FILE *fp = NULL; + char *buf = NULL; + int cpt; + C_BOOL bool_signature = FALSE; + + if ((buf = (char *)malloc (sizeof(char) * 2048)) == NULL) return (FALSE); + if ((fp = fopen (namefile, "rb")) != NULL) { + fread (buf, 1, 2000, fp); + fclose (fp); + } + + for (cpt = 0; cpt < 2000; cpt ++) { + if (buf [ cpt + 0 ] == 'O' && + buf [ cpt + 1 ] == 'g' && + buf [ cpt + 2 ] == 'g' && + buf [ cpt + 3 ] == 'S') { + bool_signature = TRUE; + break; + } + } + + if (bool_signature == TRUE) { + bool_signature = FALSE; + for (cpt = 0; cpt < 2000; cpt ++) { + if (buf [ cpt + 3 ] == 'v' && + buf [ cpt + 4 ] == 'o' && + buf [ cpt + 5 ] == 'r' && + buf [ cpt + 6 ] == 'b' && + buf [ cpt + 7 ] == 'i' && + buf [ cpt + 8 ] == 's'){ + bool_signature = TRUE; + break; + } + } + } + + free (buf); + buf = NULL; + + return (bool_signature); +} +// FILE IS MPC ? +// +C_BOOL FileIs_mpc (char *namefile) +{ + FILE *fp = NULL; + char *buf = NULL; + int cpt; + C_BOOL bool_signature = FALSE; + + buf = (char *)malloc (sizeof(char) * 1034); + if((fp = fopen (namefile, "rb")) != NULL) { + fread (buf, 1, 1024, fp); + fclose (fp); + } + // + // MPCKSH + // + for (cpt = 0; cpt < 1024; cpt ++) { + if ( + buf [ cpt + 0 ] == 0x4d && // M + buf [ cpt + 1 ] == 0x50 && // P + buf [ cpt + 2 ] == 0x2b // + + ) { + bool_signature = TRUE; + break; + } + } + if (FALSE == bool_signature) { + for (cpt = 0; cpt < 1024; cpt ++) { + if ( + buf [ cpt + 0 ] == 0x4d && // M + buf [ cpt + 1 ] == 0x50 && // P + buf [ cpt + 2 ] == 0x43 && // C + buf [ cpt + 3 ] == 0x4b && // K + buf [ cpt + 4 ] == 0x53 && // S + buf [ cpt + 5 ] == 0x48 // H + ) { + bool_signature = TRUE; + break; + } + } + } + + free (buf); + buf = NULL; + + return (bool_signature); +} +// FILE IS AC3 ? +// +C_BOOL FileIs_ac3 (char *namefile) +{ + FILE *fp = NULL; + char *buf = NULL; + C_BOOL BoolSignature = FALSE; + + buf = (char *)malloc (sizeof(char) * 100); + if((fp = fopen (namefile, "rb")) != NULL) { + fread (buf, 1, 50, fp); + fclose (fp); + } + + if (buf[0] == 0x0b && buf[1] == 0x77) { + BoolSignature = TRUE; + } + + free (buf); + buf = NULL; + + return (BoolSignature); +} +// FILE IS MP3 ? +// +typedef struct { + char magic[ 3 ]; + char songname[ 30 ]; + char artist[ 30 ]; + char album[ 30 ]; + char year[ 4 ]; + char note[ 28 ]; + unsigned char nnull; + unsigned char track; + unsigned char style; +} ID3TAG; +C_BOOL FileIs_mp3 (char *namefile) +{ + FILE *fp = NULL; + char *buf = NULL; + ID3TAG begin; + ID3TAG end; + C_BOOL bool_signature = FALSE; + int i; + size_t size; + + fp = fopen (namefile, "rb"); + if (NULL == fp) return (FALSE); + + fread ( &begin, 128, 1, fp ); + fseek ( fp, 0, SEEK_END ); + fseek ( fp, ftell( fp ) - 128, SEEK_SET ); + fread ( &end, 128, 1, fp ); + fclose (fp); + + // TEST SI FICHIER EST: AC3 + // OCTET 0 OCTET 1 + // 76543210 76543210 + // 00001011 01110111 + // 0b 77 + // 11 119 + if (begin.magic[0] == 0x0b && begin.magic[1] == 0x77) { + return (FALSE); + } + + if (begin.magic[0] == 'I' && begin.magic[1] == 'D' && begin.magic[2] == '3') return (TRUE); + if (end.magic[0] == 'T' && end.magic[1] == 'A' && end.magic[2] == 'G') return (TRUE); + + size = utils_get_size_file (namefile); + buf = malloc (sizeof (char) * (size + 10)); + if ((fp = fopen (namefile, "rb"))) { + fread (buf, 1, size, fp); + fclose (fp); + for (i = 0; i < size; i ++) { + if (buf[i+0] == 'L' && buf[i+1] == 'A' && buf[i+2] == 'M' && buf[i+3] == 'E') { + bool_signature = TRUE; + break; + } + } + } + + // + // http://mgc99.free.fr/InfoMP3.html + // + // + // La partie "audio" du MP3 commence par un entête de 4 octets. Ces 4 octets donnent des informations sur le type de MP3. + // Cet entête se trouve après les tag ID3 v2 s'il y en a. Il n'a pas de position précise dans le fichier, il faut le chercher. + // Il commence toujours par une série de 11 bits à 1 (FF Ex xx xx ou FF Fx xx xx). + // 1111 1111 - 111B BCCD - EEEE FFGH - IIJJ KLMM + // BB version de MPEG (11-v1, 10-v2, 01-reserved, 00-v2.5) + // CC numéro de layer (11-layer 1, 10-layer 2, 01-layer 3, 00-reserved) + // D protection bit (0 protection par CRC, 2 octets suive l'entête. 1 pas de protection) + // EEEE bitrate index. + // FF sampling rate frequency index. + // G padding bit. + // H private bit. + // II chanel mode (11-single channel, 10-dual channel, 01-joint stéréo, 00-stéréo) + // JJ mode extention seulement si "joint stéréo" + // K copyright (1 copyright, 0 pas de copyright). + // L original (1 original, 0 copie) + // MM emphasis (11-CCIT J.17, 10-reserved, 01-50/15ms, 00-none) + // + /* + if (FALSE == bool_signature) { + for (i = 0; i < size; i ++) { + Dummy = buf[i+0] + buf[i+1]; + Dummy &= 0x011111111111; + if (0x011111111111 == Dummy) { + bool_signature = TRUE; + printf("ICI EST MP3\n"); + printf("\tsize = %lu\n", size ); + printf("\ti = %d\n", i ); + break; + } + } + } + */ + free (buf); + buf = NULL; + + return (bool_signature); +} +// FILE IS FLAC ? +// +C_BOOL FileIs_flac (char *namefile) +{ + FILE *fp = NULL; + char *buf = NULL; + int cpt; + C_BOOL bool_signature = FALSE; + + buf = (char *)malloc (sizeof(char) * 5124); + if ((fp = fopen (namefile, "rb")) != NULL) { + fread (buf, 1, 5120, fp); + fclose (fp); + } + + for (cpt = 0; cpt < 5120; cpt ++) { + if (buf [ cpt + 0 ] == 0x66 && /* 'f' */ + buf [ cpt + 1 ] == 0x4c && /* 'L' */ + buf [ cpt + 2 ] == 0x61 && /* 'a' */ + buf [ cpt + 3 ] == 0x43) { /* 'C' */ + bool_signature = TRUE; + break; + } + } + free (buf); + buf = NULL; + + return (bool_signature); +} +/***************************************************************************************** +APE header that all APE files have in common (old and new) +***************************************************************************************** +struct APE_COMMON_HEADER +{ + char cID[4]; should equal 'MAC ' + uint16 nVersion; version number * 1000 (3.81 = 3810) +}; + +***************************************************************************************** +APE header structure for old APE files (3.97 and earlier) +***************************************************************************************** +struct APE_HEADER_OLD +{ + char cID[4]; should equal 'MAC ' + uint16 nVersion; version number * 1000 (3.81 = 3810) + uint16 nCompressionLevel; the compression level + uint16 nFormatFlags; any format flags (for future use) + uint16 nChannels; the number of channels (1 or 2) + uint32 nSampleRate; the sample rate (typically 44100) + uint32 nHeaderBytes; the bytes after the MAC header that compose the WAV header + uint32 nTerminatingBytes; the bytes after that raw data (for extended info) + uint32 nTotalFrames; the number of frames in the file + uint32 nFinalFrameBlocks; the number of samples in the final frame +}; +*****************************************************************************************/ +// FILE IS APE ? +// +// le prg 'file' est leurré par un tag id3 et ne reconnait qu'un mp3 !!! +// il faut lire 05 ko de datas +// bug signalé par @patachonf depuis: +// http://forum.ubuntu-fr.org/viewtopic.php?pid=3739121#p3739121 +// [ resolu ] +C_BOOL FileIs_ape (char *namefile) +{ + FILE *fp = NULL; + char *buf = NULL; + int cpt; + C_BOOL bool_signature = FALSE; + + buf = (char *)malloc (sizeof(char) * 5120); + if ((fp = fopen (namefile, "rb")) != NULL) { + fread (buf, 1, 5000, fp); + fclose (fp); + + for (cpt = 0; cpt < 5000; cpt ++) { + if (buf [ cpt + 0 ] == 0x4d && /* 'M' */ + buf [ cpt + 1 ] == 0x41 && /* 'A' */ + buf [ cpt + 2 ] == 0x43 && /* 'C' */ + buf [ cpt + 3 ] == 0x20) { /* ' ' */ + bool_signature = TRUE; + break; + } + } + } + free (buf); + buf = NULL; + + return (bool_signature); +} +// FILE IS AIFF ? +// +/* +POS ASCII HEXA +00 F 46 +01 O 4f +02 R 52 +03 M 4d +04 +05 +06 +07 +08 A 41 +09 I 49 +10 F 46 +11 F 46 +12 C 43 +13 O 4f +14 M 4d +15 M 4d +*/ +C_BOOL FileIs_aiff (char *namefile) +{ + FILE *fp = NULL; + char *buf = NULL; + C_BOOL bool_signature = FALSE; + + buf = (char *)malloc (sizeof(char) * 512); + if ((fp = fopen (namefile, "rb")) != NULL) { + fread (buf, 1, 500, fp); + fclose (fp); + + if (buf [ 0 ] == 0x46 && // F + buf [ 1 ] == 0x4f && // O + buf [ 2 ] == 0x52 && // R + buf [ 3 ] == 0x4d && // M + + buf [ 8 ] == 0x41 && // A + buf [ 9 ] == 0x49 && // I + buf [ 10 ] == 0x46 && // F + buf [ 11 ] == 0x46 && // F + buf [ 12 ] == 0x43 && // C + buf [ 13 ] == 0x4f && // O + buf [ 14 ] == 0x4d && // M + buf [ 15 ] == 0x4d) { // M + + bool_signature = TRUE; + } + } + + free (buf); + buf = NULL; + + return (bool_signature); +} +// FILE IS DTS ? +// +C_BOOL FileIs_dts (char *namefile) +{ + C_BOOL bool_signature = FALSE; + char Ext [ 8 ] = {'\0','\0','\0','\0','\0','\0','\0','\0',}; + char *Ptr; + + Ptr = strrchr (namefile, '/'); + if (Ptr) { + Ptr = strrchr (Ptr, '.'); + if (Ptr) { + Ptr++; + if (*Ptr) Ext [0] = toupper (*Ptr++); + if (*Ptr) Ext [1] = toupper (*Ptr++); + if (*Ptr) Ext [2] = toupper (*Ptr++); + if (*Ptr) Ext [3] = toupper (*Ptr); + Ext [4] = '\0'; + + if (Ext[0] == 'D' && Ext[1] == 'T' && Ext[2] == 'S' && Ext[3] == '\0') bool_signature = TRUE; + } + } + return (bool_signature); +} +// FILE IS PNG ? +// +C_BOOL FileIs_png (char *namefile) +{ + FILE *fp = NULL; + char *buf = NULL; + int cpt; + C_BOOL bool_signature = FALSE; + + buf = (char *)malloc (sizeof(char) * 5124); + if ((fp = fopen (namefile, "rb")) != NULL) { + fread (buf, 1, 5120, fp); + fclose (fp); + } + + for (cpt = 0; cpt < 5120; cpt ++) { + if( + buf [ cpt + 0 ] == 0x50 && // 'P' + buf [ cpt + 1 ] == 0x4E && // 'N' + buf [ cpt + 2 ] == 0x47 // 'G' + ) { + bool_signature = TRUE; + break; + } + } + free (buf); + buf = NULL; + + return (bool_signature); +} + + + + + diff -Nru xcfa-4.3.8/src_cli/file_is.h xcfa-5.0.1/src_cli/file_is.h --- xcfa-4.3.8/src_cli/file_is.h 1970-01-01 00:00:00.000000000 +0000 +++ xcfa-5.0.1/src_cli/file_is.h 2014-12-22 19:22:17.000000000 +0000 @@ -0,0 +1,48 @@ +/* + * file : src/file_is.h + * project : xcfa_cli + * copyright : (C) 2014 by BULIN Claude + * + * This file is part of xcfa_cli project + * + * xcfa_cli is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; version 3. + * + * xcfa_cli is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 + * USA + */ + + +#ifndef file_is_h +#define file_is_h 1 + +#include "clib.h" + +// FILE_IS.C +// +C_BOOL FileIs_vidm4a( char *namefile ); +C_BOOL FileIs_m4a( char *namefile ); +C_BOOL FileIs_wavpack( char *namefile ); +C_BOOL FileIs_wav( char *namefile ); +C_BOOL FileIs_cue( char *namefile ); +C_BOOL FileIs_shn( char *namefile ); +C_BOOL FileIs_rm( char *namefile ); +C_BOOL FileIs_ogg( char *namefile ); +C_BOOL FileIs_mpc( char *namefile ); +C_BOOL FileIs_ac3( char *namefile ); +C_BOOL FileIs_mp3( char *namefile ); +C_BOOL FileIs_flac( char *namefile ); +C_BOOL FileIs_ape( char *namefile ); +C_BOOL FileIs_aiff( char *namefile ); +C_BOOL FileIs_dts( char *namefile ); +C_BOOL FileIs_png( char *namefile ); + +#endif diff -Nru xcfa-4.3.8/src_cli/get_info.c xcfa-5.0.1/src_cli/get_info.c --- xcfa-4.3.8/src_cli/get_info.c 1970-01-01 00:00:00.000000000 +0000 +++ xcfa-5.0.1/src_cli/get_info.c 2014-12-22 19:30:32.000000000 +0000 @@ -0,0 +1,780 @@ +/* + * file : src/get_info.c + * project : xcfa_cli + * copyright : (C) 2014 by BULIN Claude + * + * This file is part of xcfa_cli project + * + * xcfa_cli is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; version 3. + * + * xcfa_cli is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 + * USA + */ + + + +#ifdef HAVE_CONFIG_H + #include "../config.h" +#endif + +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include "global.h" +#include "tags.h" +#include "get_info.h" +#include "file_is.h" +#include "prg_init.h" + +#define GET_MAX_CARS 1024 + +typedef struct { + pid_t code_fork; // Num Code Fork + int signal_numchildren; // the signal handler + int tube [ 2 ]; // for pipe +} VAR_GET; + +VAR_GET VarGet; + +/* +*--------------------------------------------------------------------------- +* SIGNAL +*--------------------------------------------------------------------------- +*/ +void GetInfo_sigchld (int signum) +{ + int status; + + wait(&status); + // if there are still children waiting + // re-install the signal handler + VarGet.signal_numchildren --; + if (VarGet.signal_numchildren > 0) { + // re-install the signal handler + signal (SIGCHLD, GetInfo_sigchld); + } +} +// +// +int GetInfo_exec_with_output (char **args, pid_t *p, int Streams) +{ + VarGet.signal_numchildren = 0; + + if (pipe (VarGet.tube) != 0) { + fprintf (stderr, "error: pipe\n"); + exit (1); + } + if ((*p = fork()) == 0) { + dup2 (VarGet.tube [ 1 ], Streams); // STDOUT_FILENO STDERR_FILENO + close (VarGet.tube [ 1 ]); + execvp (args[0], args); + fprintf (stderr, "error: exec"); + exit (2); + } + VarGet.signal_numchildren ++; + signal (SIGCHLD, GetInfo_sigchld); + close (VarGet.tube [ 1 ]); + return (VarGet.tube [ 0 ]); +} + + +// +// +CString *GetInfo_file (char *file) +{ + int fd; + int pos = 0; + char *args [ 10 ]; + char buf [ GET_MAX_CARS + 10 ]; + int size = 0; + CString *gstr = C_string_new(); + + args[pos++] = "file"; + args[pos++] = "-b"; + args[pos++] = "-z"; + args[pos++] = "-n"; + args[pos++] = file; + args[pos++] = NULL; + + fd = GetInfo_exec_with_output (args, &VarGet.code_fork, STDOUT_FILENO); + do { + pos = -1; + do { + pos++; + if (pos >= GET_MAX_CARS) { + PRINT_FUNC_LF(); + printf ("pos(%d) >= GET_MAX_CARS(%d)\n", pos, GET_MAX_CARS); + pos --; + } + size = read(fd, &buf[pos], 1); + + } while ((buf[pos] != '\b') && (buf[pos] != '\r') && (buf[pos] != '\n') && (size > 0)); + /* + if (pos > 0 ) { + buf[pos ++ ] = '\n'; + buf[pos] = '\0'; + C_string_append_printf (gstr, "%s", buf); + } + */ + buf[pos ++ ] = '\n'; + buf[pos] = '\0'; + C_string_append_printf (gstr, "%s", buf); + + } while (size != 0); + + close(fd); + return (gstr); +} + + +// +// RECONNAISSANCE ENTETE FICHIER: +// FILE_IS_NONE = 0, +// FILE_IS_FLAC, +// FILE_IS_WAV, +// FILE_IS_CUE, +// FILE_IS_BFW, // BROADCAST WAVE FORMAT +// FILE_IS_MP3, +// FILE_IS_OGG, +// /* Les fichiers au format AAC, portant l'extension +// .mp4( pour MPEG-4), +// .m4a( pour MPEG-4 Audio) +// .m4p( pour MPEG-4 Protégé), +// sont globalement plus petits que les fichiers au format MP3. */ +// FILE_IS_M4A, +// FILE_IS_VID_M4A, +// FILE_IS_AAC, +// FILE_IS_SHN, +// FILE_IS_WMA, +// FILE_IS_RM, +// FILE_IS_DTS, +// FILE_IS_AIFF, +// FILE_IS_MPC, +// FILE_IS_APE, +// FILE_IS_WAVPACK, +// FILE_IS_WAVPACK_MD5, +// FILE_IS_AC3, +// +TYPE_FILE_IS GetInfo_file_is( char *PathName ) +{ + CString *gstr = NULL; + TYPE_FILE_IS TypeFileRet = FILE_IS_NONE; + + gstr = GetInfo_file (PathName); + // printf( "gstr =\n%s\n", gstr->str ); + // ABANDON SI LA COMMANDE file NE TROUVE PAS LE TYPE DE FICHIER + if( 0 == strcmp( gstr->str, "data" )) { + TypeFileRet = FILE_IS_NONE; + PRINT("ERROR: LA COMMANDE file NE TROUVE RIEN :/"); + } + // UNE PETITE CHANCE SE PRESENTE ICI POUR AAC + else { + // FILE_IS_AAC + // 19 Waka Waka (This Time for Africa).m4a: ISO Media, MPEG v4 system, iTunes AAC-LC + // 4 Non Blondes - Whats Going On.m4a: ISO Media, MPEG v4 system, version 2 + if( TRUE == FileIs_vidm4a( PathName )) { + TypeFileRet = FILE_IS_VID_M4A; + } + else if( strstr (gstr->str, "AAC" ) || strstr (gstr->str, "MPEG ADTS, AAC," )) { + TypeFileRet = FILE_IS_AAC; + } + // FILE_IS_WMA + else if (strstr (gstr->str, "Microsoft ASF")) { + TypeFileRet = FILE_IS_WMA; + } + // FILE_IS_VID_M4A + // WCC_RADIO_EP042.m4a: ISO Media, MPEG v4 system, iTunes AAC-LC + // + // FILE_IS_M4A + // 21 The Academy.m4a: ISO Media, MPEG v4 system, version 2 + // 4 Non Blondes - Whats Going On.m4a: ISO Media, MPEG v4 system, version 2 + // audio.m4a: ISO Media, MPEG v4 system, version 2 + // + // FILE_IS_AAC + // 01_King_Porter_Stomp.aac: MPEG ADTS, AAC, v4 LC, 22.05 kHz, stereo + // aif.aac: MPEG ADTS, AAC, v4 LC, 22.05 kHz, stereo + // audio.aac: MPEG ADTS, AAC, v2 LC, 48 kHz, stereo + } + if( FILE_IS_VID_M4A == TypeFileRet || FILE_IS_AAC == TypeFileRet || FILE_IS_WMA == TypeFileRet ) { + C_string_free( gstr ); + gstr = NULL; + return( TypeFileRet ); + } + + // FILE_IS_VID_M4A + if( TRUE == FileIs_vidm4a( PathName )) { + TypeFileRet = FILE_IS_VID_M4A; + } + // FILE_IS_M4A + else if( TRUE == FileIs_m4a( PathName )) { + TypeFileRet = FILE_IS_M4A; + } + // FILE_IS_WAVPACK + // FILE_IS_WAVPACK_MD5 + else if( TRUE == FileIs_wavpack( PathName )) { + TypeFileRet = FILE_IS_WAVPACK; + } + // FILE_IS_WAV + else if( TRUE == FileIs_wav( PathName )) { + TypeFileRet = FILE_IS_WAV; + } + // FILE_IS_CUE + else if( TRUE == FileIs_cue( PathName )) { + TypeFileRet = FILE_IS_CUE; + } + // FILE_IS_SHN + else if( TRUE == FileIs_shn( PathName )) { + TypeFileRet = FILE_IS_SHN; + } + // FILE_IS_RM + else if( TRUE == FileIs_rm( PathName )) { + TypeFileRet = FILE_IS_RM; + } + // FILE_IS_OGG + else if( TRUE == FileIs_ogg( PathName )) { + TypeFileRet = FILE_IS_OGG; + } + // FILE_IS_MPC + else if( TRUE == FileIs_mpc( PathName )) { + TypeFileRet = FILE_IS_MPC; + } + // FILE_IS_AC3 + else if( TRUE == FileIs_ac3( PathName )) { + TypeFileRet = FILE_IS_AC3; + } + // FILE_IS_FLAC + else if( TRUE == FileIs_flac( PathName )) { + TypeFileRet = FILE_IS_FLAC; + } + // FILE_IS_APE + else if( TRUE == FileIs_ape( PathName )) { + TypeFileRet = FILE_IS_APE; + } + // FILE_IS_DTS + else if( TRUE == FileIs_dts( PathName )) { + TypeFileRet = FILE_IS_DTS; + } + // FILE_IS_AIFF + else if( TRUE == FileIs_aiff( PathName )) { + TypeFileRet = FILE_IS_AIFF; + } + // FILE_IS_MP3 + else if( TRUE == FileIs_mp3( PathName )) { + TypeFileRet = FILE_IS_MP3; + } + // FILE_IS_MP3 + // Without tag id3 :/ + else if( strstr (gstr->str, "MPEG ADTS, layer III" )) { + TypeFileRet = FILE_IS_MP3; + } + + C_string_free( gstr ); + gstr = NULL; + + return( TypeFileRet ); +} + +// +// +void GetInfo_set( INFO *p_Info ) +{ + if ( p_Info->type_infosong_file_is == FILE_IS_FLAC ) p_Info->info = (INFO_FLAC *)tagsflac_get_info( p_Info ); + else if( p_Info->type_infosong_file_is == FILE_IS_WAV ) p_Info->info = (INFO_WAV *)tagswav_get_info( p_Info ); + else if( p_Info->type_infosong_file_is == FILE_IS_MP3 ) p_Info->info = tagsmp3_get_info( p_Info ); + else if( p_Info->type_infosong_file_is == FILE_IS_OGG ) p_Info->info = tagsogg_get_info( p_Info ); + else if( p_Info->type_infosong_file_is == FILE_IS_SHN ) p_Info->info = tagsshn_get_info( p_Info ); + else if( p_Info->type_infosong_file_is == FILE_IS_WMA ) p_Info->info = tagswma_get_info( p_Info ); + else if( p_Info->type_infosong_file_is == FILE_IS_RM ) p_Info->info = tagsrm_get_info( p_Info ); + else if( p_Info->type_infosong_file_is == FILE_IS_DTS ) p_Info->info = tagsdts_get_info( p_Info ); + else if( p_Info->type_infosong_file_is == FILE_IS_AIFF ) p_Info->info = tagsaiff_get_info( p_Info ); + else if( p_Info->type_infosong_file_is == FILE_IS_M4A ) p_Info->info = tagsm4a_get_info( p_Info ); + else if( p_Info->type_infosong_file_is == FILE_IS_VID_M4A ) p_Info->info = tagsm4a_get_info( p_Info ); + else if( p_Info->type_infosong_file_is == FILE_IS_MPC ) p_Info->info = tagsmpc_get_info( p_Info ); + else if( p_Info->type_infosong_file_is == FILE_IS_APE ) p_Info->info = tagsape_get_info( p_Info ); + else if( p_Info->type_infosong_file_is == FILE_IS_WAVPACK ) p_Info->info = tagswavpack_get_info( p_Info ); + else if( p_Info->type_infosong_file_is == FILE_IS_AC3 ) p_Info->info = tagsac3_get_info( p_Info ); +} + +// +// +void GetInfo_remove( INFO *p_Info ) +{ + switch( p_Info->type_infosong_file_is ) { + + case FILE_IS_NONE : + case FILE_IS_CUE : + break; + case FILE_IS_FLAC : + { + INFO_FLAC *info = (INFO_FLAC *)p_Info->info; + info = (INFO_FLAC *)tagsflac_remove_info( info ); + } + break; + case FILE_IS_WAV : + { + INFO_WAV *info = (INFO_WAV *)p_Info->info; + info = (INFO_WAV *)tagswav_remove_info( info ); + } + break; + case FILE_IS_MP3 : + { + INFO_MP3 *info = (INFO_MP3 *)p_Info->info; + info = (INFO_MP3 *)tagsmp3_remove_info( info ); + } + break; + case FILE_IS_OGG : + { + INFO_OGG *info = (INFO_OGG *)p_Info->info; + info = (INFO_OGG *)tagsogg_remove_info( info ); + } + break; + case FILE_IS_M4A : + case FILE_IS_VID_M4A : + { + INFO_M4A *info = (INFO_M4A *)p_Info->info; + info = (INFO_M4A *)tagsm4a_remove_info( info ); + } + break; + case FILE_IS_AAC : + { + INFO_AAC *info = (INFO_AAC *)p_Info->info; + info = (INFO_AAC *)tagsaac_remove_info( info ); + } + break; + case FILE_IS_SHN : + { + INFO_SHN *info = (INFO_SHN *)p_Info->info; + info = (INFO_SHN *)tagsshn_remove_info( info ); + } + break; + case FILE_IS_WMA : + { + INFO_WMA *info = (INFO_WMA *)p_Info->info; + info = (INFO_WMA *)tagswma_remove_info( info ); + } + break; + case FILE_IS_RM : + { + INFO_RM *info = (INFO_RM *)p_Info->info; + info = (INFO_RM *)tagsrm_remove_info( info ); + } + break; + case FILE_IS_DTS : + { + INFO_DTS *info = (INFO_DTS *)p_Info->info; + info = (INFO_DTS *)tagsdts_remove_info( info ); + } + break; + case FILE_IS_AIFF : + { + INFO_AIFF *info = (INFO_AIFF *)p_Info->info; + info = (INFO_AIFF *)tagsaiff_remove_info( info ); + } + break; + case FILE_IS_MPC : + { + INFO_MPC *info = (INFO_MPC *)p_Info->info; + info = (INFO_MPC *)tagsmpc_remove_info( info ); + } + break; + case FILE_IS_APE : + { + INFO_APE *info = (INFO_APE *)p_Info->info; + info = (INFO_APE *)tagsape_remove_info( info ); + } + break; + case FILE_IS_WAVPACK : + case FILE_IS_WAVPACK_MD5 : + { + INFO_WAVPACK *info = (INFO_WAVPACK *)p_Info->info; + info = (INFO_WAVPACK *)tagswavpack_remove_info( info ); + } + break; + case FILE_IS_AC3 : + { + INFO_AC3 *info = (INFO_AC3 *)p_Info->info; + info = (INFO_AC3 *)tagsac3_remove_info( info ); + } + break; + case NBR_FILE_TO: + break; + } +} + +// +// +CString *GetInfo_checkmp3 (char *file) +{ + int fd; + int pos = 0; + char *args [ 10 ]; + char buf [ GET_MAX_CARS + 10 ]; + int size = 0; + CString *gstr = NULL; + + + if( FALSE == PrgInit.bool_checkmp3 ) { + PRINT_FUNC_LF(); + printf ("\tPrgInit.bool_checkmp3 = %s\n", PrgInit.bool_checkmp3 ? "TRUE" : "FALSE"); + printf ("\tIL FAUT INSTALLER checkmp3 OU mp3check SUIVANT VOTRE DISTRIBUTION !\n\n"); + return( NULL ); + } + + gstr = C_string_new(); + + // args[pos++] = PrgInit.name_checkmp3; + args[pos++] = prginit_get_name (NMR_checkmp3); + args[pos++] = "-a"; + args[pos++] = "-v"; + + // TODO: @Tetsumaki + // http://forum.ubuntu-fr.org/viewtopic.php?pid=3889239#p3889239 + // OPTION -i n'existe pas sous ARCHLINUX !!! + // args[pos++] = "-i"; + + args[pos++] = file; + args[pos++] = NULL; + + /* + printf ("!-----------------------------------!\n"); + printf ("! C H E C K M P 3 !\n"); + printf ("!-----------------------------------!\n"); + for (pos = 0; args[ pos ] != NULL; pos++) + printf ("args [ %02d ] = '%s'\n", pos, args [ pos ]); + printf ("\n"); + */ + + fd = GetInfo_exec_with_output (args, &VarGet.code_fork, STDOUT_FILENO); + do { + pos = -1; + do { + pos++; + if (pos >= GET_MAX_CARS) { + PRINT_FUNC_LF(); + printf ("pos(%d) >= GET_MAX_CARS(%d)\n", pos, GET_MAX_CARS); + pos --; + } + size = read(fd, &buf[pos], 1); + + } while ((buf[pos] != '\b') && (buf[pos] != '\r') && (buf[pos] != '\n') && (size > 0)); + if (pos > 0 ) { + buf[pos ++ ] = '\n'; + buf[pos] = '\0'; + C_string_append_printf (gstr, "%s", buf); + } + } while (size != 0); + + close(fd); + return (gstr); +} + +// +// +SHNTAG *GetInfo_free_shntool (SHNTAG *ShnTag) +{ + if (NULL != ShnTag) { + if (NULL != ShnTag->time) { free (ShnTag->time); ShnTag->time = NULL; } + if (NULL != ShnTag->size) { free (ShnTag->size); ShnTag->size = NULL; } + + free (ShnTag); + ShnTag = NULL; + } + return ((SHNTAG *)NULL); +} +// +// +SHNTAG *GetInfo_shntool (char *file) +{ + int fd; + int pos = 0; + char *args [ 10 ]; + char buf [ GET_MAX_CARS + 10 ]; + int size = 0; + CString *gstr = C_string_new(); + SHNTAG *ShnTag = NULL; + char *Ptr = NULL; + + int Min; + int Sec; + int Hundr; + + args[pos++] = "shntool"; + args[pos++] = "info"; + args[pos++] = file; + args[pos++] = NULL; + /* + printf ("!-----------------------------------!\n"); + printf ("! S H N T O O L !\n"); + printf ("!-----------------------------------!\n"); + for (pos = 0; args[ pos ] != NULL; pos++) + printf ("args [ %02d ] = '%s'\n", pos, args [ pos ]); + printf ("\n"); + */ + + fd = GetInfo_exec_with_output (args, &VarGet.code_fork, STDOUT_FILENO); + do { + pos = -1; + do { + pos++; + if (pos >= GET_MAX_CARS) { + PRINT_FUNC_LF(); + printf ("pos(%d) >= GET_MAX_CARS(%d)\n", pos, GET_MAX_CARS); + pos --; + } + size = read(fd, &buf[pos], 1); + + } while ((buf[pos] != '\b') && (buf[pos] != '\r') && (buf[pos] != '\n') && (size > 0)); + if (pos > 0 ) { + buf[pos ++ ] = '\n'; + buf[pos] = '\0'; + C_string_append_printf (gstr, "%s", buf); + } + } while (size != 0); + + close(fd); + + ShnTag = malloc (sizeof (SHNTAG)); + + if ((Ptr = strstr (gstr->str, "Length:")) != NULL) { + Ptr = strchr (Ptr, ':'); + Ptr ++; + while (*Ptr == ' ') Ptr ++; + + Min = atoi (Ptr); + + Ptr = strchr (Ptr, ':'); + Ptr ++; + Sec = atoi (Ptr); + + Ptr = strchr (Ptr, '.'); + Ptr ++; + Hundr = atoi (Ptr); + + ShnTag->SecTime = (double)(Min * 60) + (double)(Sec) + (double)(Hundr / 10.0); + + ShnTag->time = C_strdup_printf ("%02d:%02d", Min, Sec); + + if ((Ptr = strchr (ShnTag->time, '.')) != NULL) { + *Ptr = '\0'; + } + } + + ShnTag->size = C_strdup_printf ("%d Ko", (int)utils_get_size_file (file) / 1024); + + C_string_free( gstr ); + + return ((SHNTAG *)ShnTag); +} + +// +// +CString *GetInfo_faad (char *file) +{ + int fd; + int pos = 0; + char *args [ 10 ]; + char buf [ GET_MAX_CARS + 10 ]; + int size = 0; + CString *gstr = C_string_new(); + + args[pos++] = "faad"; + args[pos++] = "-i"; + args[pos++] = file; + args[pos++] = NULL; + + /* + printf ("!-----------------------------------!\n"); + printf ("! F A A D !\n"); + printf ("!-----------------------------------!\n"); + for (pos = 0; args[ pos ] != NULL; pos++) + printf ("args [ %02d ] = '%s'\n", pos, args [ pos ]); + printf ("\n"); + */ + + fd = GetInfo_exec_with_output (args, &VarGet.code_fork, STDERR_FILENO); + do { + pos = -1; + do { + pos++; + if (pos >= GET_MAX_CARS) { + PRINT_FUNC_LF(); + printf ("pos(%d) >= GET_MAX_CARS(%d)\n", pos, GET_MAX_CARS); + pos --; + } + size = read(fd, &buf[pos], 1); + + } while ((buf[pos] != '\b') && (buf[pos] != '\r') && (buf[pos] != '\n') && (size > 0)); + /* + if (pos > 0 ) { + buf[pos ++ ] = '\n'; + buf[pos] = '\0'; + C_string_append_printf (gstr, "%s", buf); + } + */ + buf[pos ++ ] = '\n'; + buf[pos] = '\0'; + C_string_append_printf (gstr, "%s", buf); + + } while (size != 0); + + close(fd); + return (gstr); +} + + +// +// +char *GetInfo_cpu (void) +{ + char buf [ GET_MAX_CARS + 10 ]; + FILE *fp; + char *Ptr = NULL; + + fp = fopen ("/proc/cpuinfo", "r"); + while (fgets (buf, GET_MAX_CARS, fp) != NULL) { + // printf("BUF = %s", buf); + Ptr = buf; + if (*(Ptr + 0) == 'm' && + *(Ptr + 1) == 'o' && + *(Ptr + 2) == 'd' && + *(Ptr + 3) == 'e' && + *(Ptr + 4) == 'l' && + *(Ptr + 5) == ' ' && + *(Ptr + 6) == 'n' && + *(Ptr + 7) == 'a' && + *(Ptr + 8) == 'm' && + *(Ptr + 9) == 'e' + + ) { + // printf("---------BUF = %s", buf); + + Ptr = buf; + while (*Ptr ++) + if (*Ptr == '\n') *Ptr = '\0'; + for ( Ptr = buf; *Ptr != ':'; Ptr ++ ); + Ptr ++; + while (*Ptr == ' ') Ptr ++; + // printf("---------BUF = %s", Ptr); + + fclose (fp); + return (C_strdup (Ptr)); + } + } + fclose (fp); + return (NULL); +} +// +// +void GetInfo_cpu_print (void) +{ + struct utsname utsname; + char *ptruname = NULL; + char *ModelName = NULL; + HOST_CONF HostConf; + + ModelName = GetInfo_cpu (); + HostConf.NbCpu = sysconf(_SC_NPROCESSORS_ONLN); + // printf ("_SC_NPROCESSORS_CONF : Le nombre de processeurs configure = %d\n", (int)sysconf(_SC_NPROCESSORS_CONF)); + // printf ("_SC_NPROCESSORS_ONLN : Le nombre de processeurs actuellement en ligne (disponibles) = %d\n", (int)sysconf(_SC_NPROCESSORS_ONLN)); + HostConf.TypeCpu = 8 * sizeof(void*); + if (uname (&utsname) == 0) { + + strcpy (HostConf.Machine, utsname.machine); + if (strcmp (HostConf.Machine, "x86_64") == 0) + HostConf.BoolCpuIs64Bits = TRUE; + else HostConf.BoolCpuIs64Bits = FALSE; + + ptruname = C_strdup_printf ( + "! sysname %s\n" + "! nodename %s\n" + "! release %s\n" + "! version %s\n" + "! machine %s\n" + "! %d CPU (%d bits)\n" + "! %s\n", + utsname.sysname, utsname.nodename, utsname.release, utsname.version, utsname.machine, + HostConf.NbCpu, HostConf.TypeCpu, + ModelName); + printf("%s",ptruname); + } + free (ModelName); + ModelName = NULL; + free (ptruname); + ptruname = NULL; +} + +// +// +int GetInfo_level_get_from( TYPE_FILE_IS TypeFileIs, char *file ) +{ + int pos = 0; + char *args [ 20 ]; + int fd; + int size = -1; + char buf [ 1024 + 10 ]; + int arrondit = -1; + + if( FALSE == PrgInit.bool_normalize ) return( arrondit ); + + if( TypeFileIs == FILE_IS_WAV ) { + args[pos++] = prginit_get_name( NMR_normalize ); + args[pos++] = "-q"; + args[pos++] = "-n"; + args[pos++] = file; + args[pos++] = NULL; + } + else if( TypeFileIs == FILE_IS_MP3 ) { + args[pos++] = "normalize-mp3"; + args[pos++] = "-q"; + args[pos++] = "-n"; + args[pos++] = file; + args[pos++] = NULL; + } + else if( TypeFileIs == FILE_IS_OGG ) { + args[pos++] = "normalize-ogg"; + args[pos++] = "-q"; + args[pos++] = "-n"; + args[pos++] = file; + args[pos++] = NULL; + } + + fd = GetInfo_exec_with_output( args, &VarGet.code_fork, STDOUT_FILENO ); + do { + pos = -1; + do { + pos++; + if (pos >= 1024) { + PRINT_FUNC_LF(); + printf ("pos(%d) >= 1024\n", pos); + pos --; + } + size = read(fd, &buf[pos], 1); + + } while ((buf[pos] != '\b') && (buf[pos] != '\r') && (buf[pos] != '\n') && (size > 0)); + pos ++; + buf[ pos ] = '\0'; + if (strstr (buf, "dBFS")) { + arrondit = (int)roundf(atof(buf)); + } + } while (size != 0); + + close(fd); + VarGet.code_fork = -1; + return( arrondit ); +} diff -Nru xcfa-4.3.8/src_cli/get_info.h xcfa-5.0.1/src_cli/get_info.h --- xcfa-4.3.8/src_cli/get_info.h 1970-01-01 00:00:00.000000000 +0000 +++ xcfa-5.0.1/src_cli/get_info.h 2014-12-05 11:50:01.000000000 +0000 @@ -0,0 +1,56 @@ + /* + * file : get_info.h + * project : xcfa_cli + * copyright : (C) 2014 by BULIN Claude + * + * This file is part of xcfa_cli project + * + * xcfa_cli is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; version 3. + * + * xcfa_cli is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 + * USA + */ + + + +#ifndef get_info_h +#define get_info_h 1 + +#include "global.h" + +typedef struct { + uint SecTime; + char *time; + char *size; +} SHNTAG; + +SHNTAG *GetInfo_shntool (char *file); +SHNTAG *GetInfo_free_shntool (SHNTAG *ShnTag); +CString *GetInfo_file (char *file); +CString *GetInfo_checkmp3 (char *file); +CString *GetInfo_faad (char *file); +CString *GetInfo_ogginfo (char *file); +CString *GetInfo_which (char *file); +CString *GetInfo_metaflac (char *file); +char *GetInfo_cpu (void); +void GetInfo_cpu_print (void); +char *GetInfo_cpu_str (void); +TYPE_FILE_IS GetInfo_file_is (char *PathName); +long GetInfo_level_df (void); +C_BOOL GetInfo_level_bool_percent (void); +int GetInfo_level_get_from( TYPE_FILE_IS TypeFileIs, char *file ); +void GetInfo_set( INFO *p_Info ); +void GetInfo_remove( INFO *p_Info ); +void GetInfo_cpu_print (void); + +#endif + diff -Nru xcfa-4.3.8/src_cli/global.h xcfa-5.0.1/src_cli/global.h --- xcfa-4.3.8/src_cli/global.h 1970-01-01 00:00:00.000000000 +0000 +++ xcfa-5.0.1/src_cli/global.h 2014-12-25 14:45:17.000000000 +0000 @@ -0,0 +1,391 @@ +/* + * file : src/global.h + * project : xcfa_cli + * copyright : (C) 2014 by BULIN Claude + * + * This file is part of xcfa_cli project + * + * xcfa_cli is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; version 3. + * + * xcfa_cli is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 + * USA + */ + + +#ifndef global_h +#define global_h 1 + +#include "clib.h" + +typedef struct { + char Machine [ 100 ]; + int NbCpu; + int TypeCpu; + C_BOOL BoolCpuIs64Bits; +} HOST_CONF; + +extern HOST_CONF HostConf; + +#ifdef ENABLE_NLS + #include + #define gettext_noop(x) (x) + #define _(String) gettext (String) +#endif + + +// Terminal color codes: +// printf( "\t%sNew text to see%s\n", BOLD_YELLOW, RESET ); +#define RESET "\033[0m" // RESET +#define BLACK "\033[30m" // Black +#define RED "\033[31m" // Red +#define GREEN "\033[32m" // Green +#define YELLOW "\033[33m" // Yellow +#define BLUE "\033[34m" // Blue +#define MAGENTA "\033[35m" // Magenta +#define CYAN "\033[36m" // Cyan +#define WHITE "\033[37m" // White +#define BOLD_BLACK "\033[1m\033[30m" // Bold Black +#define BOLD_RED "\033[1m\033[31m" // Bold Red +#define BOLD_GREEN "\033[1m\033[32m" // Bold Green +#define BOLD_YELLOW "\033[1m\033[33m" // Bold Yellow +#define BOLD_BLUE "\033[1m\033[34m" // Bold Blue +#define BOLD_MAGENTA "\033[1m\033[35m" // Bold Magenta +#define BOLD_CYAN "\033[1m\033[36m" // Bold Cyan +#define BOLD_WHITE "\033[1m\033[37m" // Bold White + + +// +// --------------------------------------------------------------------------- +// DEBUG +// --------------------------------------------------------------------------- +// +#define PRINT_FUNC_LF() printf( "%s :: %s (line = %d)\n", __FILE__, __FUNCTION__, __LINE__ ) +#define PRINT(str) printf( "%s :: %s(line = %d)\n\t%s\n", __FILE__, __FUNCTION__, __LINE__, str ) + +typedef struct { + char *Album; // %b + char *Artist; // %a + char *Title; // %d + char *Number; // %c + int IntNumber; // + char *Genre; // %g + int IntGenre; // + char *Year; // %e + int IntYear; // + char *Comment; // + char *Description; // +} TAGS; + +// +// --------------------------------------------------------------------------- +// I N F O _ +// --------------------------------------------------------------------------- +// + +typedef struct { + char *time; // Temps d'ecoute + int SecTime; // Temps d'ecoute en secondes + char *hertz; // + TAGS *tags; // Tags +} INFO_M4A; + +typedef struct { + char *time; // Temps d'ecoute + int SecTime; // Temps d'ecoute en secondes + char *hertz; // + TAGS *tags; // Tags +} INFO_AAC; + +typedef struct { + C_BOOL BoolBwf; // 'fmt ', 'bext', 'qlty', 'levl', 'link','axml' + char *time; // Temps d'ecoute + int SecTime; // Temps d'ecoute en secondes + char *hertz; // Taux d'échantillonnage en hertz( qualité du son) + char *voie; // 1, 2, 4, 6 + char *bits; // 8, 16, ,24, 32 ou 64 + TAGS *tags; // Tags + int LevelDbfs; // +} INFO_WAV; + +typedef enum { // type: bitrate: + NONE_MPEG = -1, + MPEG_1 = 0, // MPV_1 [ 32 40 48 56 64 80 96 112 128 160 192 224 256 320 ] + MPEG_2, // MPV_2 [ 8 16 24 32 40 48 56 64 80 96 112 128 144 160 ] + MPEG_25 // MPV_25 [ 8 16 24 32 40 48 56 64 80 96 112 128 144 160 ] +} MPEG_IS; + +typedef struct { + char *bitrate; // + char *time; // Temps d'ecoute + int SecTime; // Temps d'ecoute en secondes + MPEG_IS mpeg_is; // + char *size; // + TAGS *tags; // Tags + int LevelDbfs; // +} INFO_MP3; + +typedef struct { + char *Channels; // + char *Rate; // + char *Nominal_bitrate; // + char *time; // Temps d'ecoute + int SecTime; // Temps d'ecoute en secondes + char *size; // + TAGS *tags; // Tags + int LevelDbfs; // +} INFO_OGG; + +typedef struct { + char *time; // Temps d'ecoute + int SecTime; // Temps d'ecoute en secondes + TAGS *tags; // Tags +} INFO_FLAC; + +typedef struct { + TAGS *tags; // Tags +} INFO_WMA; + +typedef struct { + TAGS *tags; // Tags +} INFO_RM; + +typedef struct { + TAGS *tags; // Tags +} INFO_DTS; + +typedef struct { + TAGS *tags; // Tags +} INFO_AIFF; + +typedef struct { + char *namefile; // Nom complet du fichier + TAGS *tags; // Tags +} INFO_MPC; + +typedef struct { + TAGS *tags; // Tags + char *time; // Temps d'ecoute + int SecTime; // Temps d'ecoute en secondes + char *size; // +} INFO_SHN; + +typedef struct { + TAGS *tags; // Tags + char *time; // Temps d'ecoute + int SecTime; // Temps d'ecoute en secondes + char *size; // +} INFO_APE; + +typedef struct { + TAGS *tags; // Tags + char *time; // Temps d'ecoute + int SecTime; // Temps d'ecoute en secondes + char *size; // +} INFO_WAVPACK; + +typedef struct { + TAGS *tags; // Tags +} INFO_AC3; + + +typedef enum { + FILE_IS_NONE = 0, + FILE_IS_FLAC, + FILE_IS_WAV, + FILE_IS_CUE, + // FILE_IS_BFW, // BROADCAST WAVE FORMAT + FILE_IS_MP3, + FILE_IS_OGG, + /* Les fichiers au format AAC, portant l'extension + .mp4( pour MPEG-4), + .m4a( pour MPEG-4 Audio) + .m4p( pour MPEG-4 Protégé), + sont globalement plus petits que les fichiers au format MP3. */ + FILE_IS_M4A, + FILE_IS_VID_M4A, + FILE_IS_AAC, + FILE_IS_SHN, + FILE_IS_WMA, + FILE_IS_RM, + FILE_IS_DTS, + FILE_IS_AIFF, + FILE_IS_MPC, + FILE_IS_APE, + FILE_IS_WAVPACK, + FILE_IS_WAVPACK_MD5, + FILE_IS_AC3, + NBR_FILE_TO +} TYPE_FILE_IS; + +typedef struct { + char *path_name_file; + char *path; + char *name_file; + TYPE_FILE_IS type_infosong_file_is; + void *info; // INFO_xx + char *path_is_normalize; + char *tmp_wav; // pathnames temporaires + char *tmp_mp3; + char *tmp_ogg; + char *tmp_sox; + char *tmp_sox_24; + char *tmp_flac; + char *tmp_ape; + char *tmp_wavpack; + char *tmp_m4a; + char *tmp_aac; + char *tmp_mpc; +} INFO; + + +typedef struct { // Liste de recherche recursive si plusieurs fois --input sur ligne de commande + char *PathNameFile; + char *Jocker; +} LIST_SEARCH; + +typedef enum { + OP_REPLAYGAIN_NONE = 0, + OP_REPLAYGAIN_CLEAR, + OP_REPLAYGAIN_ALBUM, + OP_REPLAYGAIN_TRACK +} OP_REPLAYGAIN; + +typedef enum { + OP_NORMALISE_NONE = 0, + OP_NORMALISE_PEAK_ALBUM, // NORM_PEAK_ALBUM + OP_NORMALISE_PEAK, // NORM_PEAK + OP_NORMALISE_RMS_MIX_ALBUM, // ( scan) NORM_RMS_MIX_ALBUM + OP_NORMALISE_RMS_FIX // ( scan) NORM_RMS_FIX +} OP_NORMALISE; + +// info | extract +typedef enum { + OP_CUE_NONE = 0, + OP_CUE_INFO, + OP_CUE_EXTRACT +} OP_CUE; + +typedef struct { + int BoolVerboseMode; + int Nice; + CList *ListSearch; // struct LIST_SEARCH + char *OutputDir; + C_BOOL BoolTypeDest[ NBR_FILE_TO ]; + C_BOOL BoolRecursiveMode; + CList *ListFile; // struct INFO + char *Op_flac; // Options tags + char *Op_ape; + char *Op_wavpack; + char *Op_ogg; + char *Op_m4a; + char *Op_aac; + char *Op_mpc; + char *Op_mp3; + C_BOOL BoolExtract2Src; + C_BOOL BoolNoTag; // tags + char *tag_album; + char *tag_artist; + char *tag_title; + char *tag_number; + char *tag_genre; + char *tag_year; + char *tag_comment; + char *tag_description; + double split; + int split_length; + int frequency; // Setting wav + int track; + int quantification; + OP_REPLAYGAIN replaygain; + int bool_peak; // Normalize + int bool_peak_album; + int mix_rms_album; + int fix_rms; + C_BOOL bool_dest; // --dest + C_BOOL bool_split; // --split --length + C_BOOL bool_setting_wav; // --frequency --track --quantification + C_BOOL bool_normalize; // --peak --peak_album --mix_rms_album --fix_rms + + int bool_info_files; // + int bool_info_tags; // + int bool_info_head; // + + OP_CUE cue; + +} DETAIL; + +extern DETAIL Detail; + + +// +// --------------------------------------------------------------------------- +// FILE_CONV.C +// --------------------------------------------------------------------------- +// +void file_conv( void ); +C_BOOL fileconv_change_quantification_with_sox( + C_BOOL pbool_copy_dest_to_src, + char *p_src, + char *p_dest, + int p_Hertz, + int p_Channels, + int p_Bits + ); + +// +// --------------------------------------------------------------------------- +// UTILS.C +// --------------------------------------------------------------------------- +// +size_t utils_get_size_file( char *PathName ); +char *utils_create_rep( char *path_name_rep ); +char *utils_remove_temporary_rep( char *path_tmprep ); +char *utils_get_dir_dest( INFO *p_Info ); + +// +// --------------------------------------------------------------------------- +// SPLIT.C +// --------------------------------------------------------------------------- +// +void split_wav( char *p_pathnamefile, double p_split_begin_ss, int p_split_length_ss ); + +// +// --------------------------------------------------------------------------- +// WAV.C +// --------------------------------------------------------------------------- +// +void wav_change_setting( char *p_pathnamefile, int p_frequency, int p_track, int p_quantification ); +void loop_wav_change_setting( int p_frequency, int p_track, int p_quantification ); + +// +// --------------------------------------------------------------------------- +// REPLAYGAIN.C +// --------------------------------------------------------------------------- +// +void replaygain_set( OP_REPLAYGAIN TypeReplaygain ); + +// +// --------------------------------------------------------------------------- +// NORMALIZE.C +// --------------------------------------------------------------------------- +// +void normalize_set( C_BOOL p_bool_peak, C_BOOL p_bool_peak_album, int p_mix_rms_album, int p_fix_rms ); + +// +// --------------------------------------------------------------------------- +// CUE.C +// --------------------------------------------------------------------------- +// +void cue_set( OP_CUE p_op_cue ); + + +#endif diff -Nru xcfa-4.3.8/src_cli/main.c xcfa-5.0.1/src_cli/main.c --- xcfa-4.3.8/src_cli/main.c 1970-01-01 00:00:00.000000000 +0000 +++ xcfa-5.0.1/src_cli/main.c 2014-12-25 14:46:33.000000000 +0000 @@ -0,0 +1,1449 @@ +/* + * file : src/main.c + * project : xcfa_cli + * copyright : (C) 2014 by BULIN Claude + * + * This file is part of xcfa_cli project + * + * xcfa_cli is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; version 3. + * + * xcfa_cli is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 + * USA + */ + + +#ifdef HAVE_CONFIG_H + #include "../config.h" +#endif + +#ifdef ENABLE_NLS + #include + #define _(String) gettext (String) +#endif + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include "global.h" +#include "get_info.h" +#include "prg_init.h" +#include "tags.h" + + +char *get_current_dir_name(void); // The caller should free(3) the returned buffer. + +DETAIL Detail = { + FALSE, // C_BOOL BoolVerboseMode + -1, // int Nice + NULL, // CList *ListSearch + NULL, // char *OutputDir + {}, // C_BOOL BoolTypeDest[ NBR_FILE_TO ] + FALSE, // C_BOOL BoolRecursiveMode + NULL, // CList *ListFile + NULL, // char *Op_flac + NULL, // char *Op_ape + NULL, // char *Op_wavpack + NULL, // char *Op_ogg + NULL, // char *Op_m4a + NULL, // char *Op_aac + NULL, // char *Op_mpc + NULL, // char *Op_mp3 + FALSE, // C_BOOL BoolExtract2Src + FALSE, // C_BOOL BoolNoTag + NULL, // char *tag_album + NULL, // char *tag_artist + NULL, // char *tag_title + NULL, // char *tag_number + NULL, // char *tag_genre + NULL, // char *tag_year + NULL, // char *tag_comment + NULL, // char *tag_description + + 0.0, // double split + 0, // int split_length + + 0, // int frequency + 0, // int track + 0, // int quantification + + OP_REPLAYGAIN_NONE, // OP_REPLAYGAIN replaygain + + // Normalize + FALSE, // C_BOOL peak + FALSE, // C_BOOL peak_album + 0, // int mix_rms_album + 0, // int fix_rms + + FALSE, // C_BOOL bool_dest // --dest + FALSE, // C_BOOL bool_split // --split --length + FALSE, // C_BOOL bool_setting_wav // --frequency --track --quantification + FALSE, // C_BOOL bool_normalize // --peak --peak_album --mix_rms_album --fix_rms + + FALSE, // C_BOOL bool_info_files + FALSE, // C_BOOL bool_info_tags + FALSE, // C_BOOL bool_info_head + + OP_CUE_NONE // OP_CUE cue + +}; + + +typedef struct { + TYPE_FILE_IS TypeFileIs; + C_BOOL *BoolFound_1; + char *Err_1; + C_BOOL *BoolFound_2; + char *Err_2; + C_BOOL *BoolFound_3; + char *Err_3; +} TST_FROM; +TST_FROM ToWav[] = { +{ FILE_IS_FLAC, &PrgInit.bool_flac, "FLAC not found", NULL, NULL, NULL, NULL }, +{ FILE_IS_APE, &PrgInit.bool_ape, "MAC not found", NULL, NULL, NULL, NULL }, +{ FILE_IS_WAVPACK, &PrgInit.bool_wavpack, "WAVPACK or WVUNPACK not found", NULL, NULL, NULL, NULL }, +{ FILE_IS_OGG, &PrgInit.bool_mplayer, "MPLAYER not found", &PrgInit.bool_sox, "SOX not found", NULL, NULL }, +{ FILE_IS_M4A, &PrgInit.bool_mplayer, "MPLAYER not found", NULL, NULL, NULL, NULL }, +{ FILE_IS_MPC, &PrgInit.bool_mplayer, "MPLAYER not found", NULL, NULL, NULL, NULL }, +{ FILE_IS_MP3, &PrgInit.bool_mplayer, "MPLAYER not found", &PrgInit.bool_sox, "SOX not found", NULL, NULL }, +{ FILE_IS_WMA, &PrgInit.bool_mplayer, "MPLAYER not found", NULL, NULL, NULL, NULL }, +{ FILE_IS_SHN, &PrgInit.bool_shorten, "SHORTEN not found", NULL, NULL, NULL, NULL }, +{ FILE_IS_RM, &PrgInit.bool_mplayer, "MPLAYER not found", NULL, NULL, NULL, NULL }, +{ FILE_IS_DTS, &PrgInit.bool_mplayer, "MPLAYER not found", NULL, NULL, NULL, NULL }, +{ FILE_IS_AIFF, &PrgInit.bool_mplayer, "MPLAYER not found", NULL, NULL, NULL, NULL }, +{ FILE_IS_AC3, &PrgInit.bool_a52dec, "A52DEC not found", NULL, NULL, NULL, NULL }, +{ FILE_IS_WAV, &PrgInit.bool_sox, "SOX not found", NULL, NULL, NULL, NULL }, +{ FILE_IS_MP3, &PrgInit.bool_sox, "SOX not found", &PrgInit.bool_lame, "LAME not found", NULL, NULL }, +{-1} +}; +TST_FROM ToOther[] = { +{ FILE_IS_FLAC, &PrgInit.bool_sox, "SOX not found", &PrgInit.bool_flac, "FLAC not found", NULL, NULL }, +{ FILE_IS_APE, &PrgInit.bool_sox, "SOX not found", &PrgInit.bool_ape, "MAC not found", NULL, NULL }, +{ FILE_IS_WAVPACK, &PrgInit.bool_wavpack, "WAVPACK or WVUNPACK not found", NULL, NULL, NULL, NULL }, +{ FILE_IS_OGG, &PrgInit.bool_sox, "SOX not found", &PrgInit.bool_oggenc, "OGGENC not found", NULL, NULL }, +{ FILE_IS_M4A, &PrgInit.bool_sox, "SOX not found", &PrgInit.bool_faad, "FAAD not found", NULL, NULL }, +{ FILE_IS_AAC, &PrgInit.bool_sox, "SOX not found", &PrgInit.bool_mplayer, "MPLAYER not found", &PrgInit.bool_aacplusenc, "AACPLUSENC not found" }, +{ FILE_IS_MPC, &PrgInit.bool_sox, "SOX not found", &PrgInit.bool_mplayer, "MPLAYER not found", &PrgInit.bool_mppenc, "MPPENC not found" }, +{ FILE_IS_MP3, &PrgInit.bool_sox, "SOX not found", &PrgInit.bool_lame, "LAME not found", NULL, NULL }, +{-1} +}; +TST_FROM ToReplaygain[] = { +{ FILE_IS_FLAC, &PrgInit.bool_flac, "METAFLAC not found", NULL, NULL, NULL, NULL }, +{ FILE_IS_MP3, &PrgInit.bool_mp3gain, "MP3GAIN not found", NULL, NULL, NULL, NULL }, +{ FILE_IS_OGG, &PrgInit.bool_vorbisgain, "VORBISGAIN not found", NULL, NULL, NULL, NULL }, +{ FILE_IS_WAVPACK, &PrgInit.bool_wavpack, "WVGAIN not found", NULL, NULL, NULL, NULL }, +{-1} +}; + + +TST_FROM ToNormalize[] = { +{ FILE_IS_WAV, &PrgInit.bool_normalize, "normalize not found", NULL, NULL, NULL, NULL }, +{ FILE_IS_MP3, &PrgInit.bool_normalize, "normalize-mp3 not found", NULL, NULL, NULL, NULL }, +{ FILE_IS_OGG, &PrgInit.bool_normalize, "normalize-ogg not found", NULL, NULL, NULL, NULL }, +{-1} +}; + + + +// +// Return string from 'TYPE_FILE_IS p_from' +// +char *get_type( TYPE_FILE_IS p_from ) +{ + int i = p_from; + switch( i ) { + case FILE_IS_WAV : return("WAV"); + case FILE_IS_FLAC : return("FLAC"); + case FILE_IS_APE : return("APE"); + case FILE_IS_WAVPACK : return("WAVPACK"); + case FILE_IS_MP3 : return("MP3"); + case FILE_IS_OGG : return("OGG"); + case FILE_IS_MPC : return("MPC"); + case FILE_IS_AC3 : return("AC3"); + case FILE_IS_M4A : return("M4A"); + case FILE_IS_VID_M4A : return("M4A"); + case FILE_IS_WMA : return("WMA"); + case FILE_IS_RM : return("RM"); + case FILE_IS_DTS : return("DTS"); + case FILE_IS_AIFF : return("AIF"); + case FILE_IS_SHN : return("SHN"); + case FILE_IS_AAC : return("AAC"); + } + return("???"); +} +// +// Search in tab 'TST_FROM *p_type' if 'TYPE_FILE_IS p_from' exist. +// Return TRUE if ok else FALSE +// +C_BOOL tst_prg_extern( C_BOOL p_bool_print, TST_FROM *p_type, TYPE_FILE_IS p_from ) +{ + C_BOOL Ret = TRUE; + TST_FROM *type = p_type; + + while( type->TypeFileIs != -1 ) { + if( p_from == type->TypeFileIs ) { + if( NULL != type->BoolFound_1 && FALSE == *type->BoolFound_1 ) { + if( TRUE == p_bool_print) printf("\t%s%s %s\n", BOLD_RED, type->Err_1, RESET ); + Ret = FALSE; + } + if( NULL != type->BoolFound_2 && FALSE == *type->BoolFound_2 ) { + if( TRUE == p_bool_print) printf("\t%s%s %s\n", BOLD_RED, type->Err_2, RESET ); + Ret = FALSE; + } + if( NULL != type->BoolFound_3 && FALSE == *type->BoolFound_3 ) { + if( TRUE == p_bool_print) printf("\t%s%s %s\n", BOLD_RED, type->Err_3, RESET ); + Ret = FALSE; + } + } + type ++; + } + return( Ret ); +} +// +// Returns TRUE if an external program is absent otherwise returns FALSE +// +C_BOOL get_is_err_in( TST_FROM *p_type ) +{ + CList *list = NULL; + INFO *Info = NULL; + + if( NULL != ( list = C_list_first( Detail.ListFile ))) { + while( list ) { + if( NULL != (Info = (INFO *)list->data) ) { + if( FALSE == tst_prg_extern( FALSE, p_type, Info->type_infosong_file_is )) + return( TRUE ); + } + list = C_list_next( list ); + } + } + return( FALSE ); +} + +// +// Remove all memoty allocation +// +void remove_options( void ) +{ + CList *list = NULL; + INFO *Info = NULL; + LIST_SEARCH *ListSearch= NULL; + + if( NULL != ( list = C_list_first( Detail.ListSearch ))) { + while( list ) { + if( NULL != (ListSearch = (LIST_SEARCH *)list->data) ) { + if( NULL != ListSearch->PathNameFile ) free( ListSearch->PathNameFile ); + if( NULL != ListSearch->Jocker ) free( ListSearch->Jocker ); + ListSearch->PathNameFile = ListSearch->Jocker = list->data = NULL; + } + list = C_list_next( list ); + } + C_list_free( Detail.ListSearch ); + Detail.ListSearch = NULL; + } + + if( Detail.OutputDir != NULL ) { + free( Detail.OutputDir ); + Detail.OutputDir = NULL; + } + + if( NULL != ( list = C_list_first( Detail.ListFile ))) { + while( list ) { + if( NULL != (Info = (INFO *)list->data) ) { + GetInfo_remove( Info ); + if( NULL != Info->path_name_file ) free( Info->path_name_file ); + if( NULL != Info->path ) free( Info->path ); + if( NULL != Info->name_file ) free( Info->name_file ); + if( NULL != Info->path_is_normalize ) free( Info->path_is_normalize ); + Info->path_is_normalize = + Info->path = + Info->name_file = + Info->path_name_file = + list->data = NULL; + } + list = C_list_next( list ); + } + C_list_free( Detail.ListFile ); + Detail.ListFile = NULL; + } + + if( Detail.Op_flac != NULL ) { free( Detail.Op_flac ); Detail.Op_flac = NULL; } + if( Detail.Op_ape != NULL ) { free( Detail.Op_ape ); Detail.Op_ape = NULL; } + if( Detail.Op_wavpack != NULL ) { free( Detail.Op_wavpack ); Detail.Op_wavpack = NULL; } + if( Detail.Op_ogg != NULL ) { free( Detail.Op_ogg ); Detail.Op_ogg = NULL; } + if( Detail.Op_m4a != NULL ) { free( Detail.Op_m4a ); Detail.Op_m4a = NULL; } + if( Detail.Op_aac != NULL ) { free( Detail.Op_aac ); Detail.Op_aac = NULL; } + if( Detail.Op_mpc != NULL ) { free( Detail.Op_mpc ); Detail.Op_mpc = NULL; } + if( Detail.Op_mp3 != NULL ) { free( Detail.Op_mp3 ); Detail.Op_mp3 = NULL; } + if( Detail.tag_album != NULL ) { free( Detail.tag_album ); Detail.tag_album = NULL; } + if( Detail.tag_artist != NULL ) { free( Detail.tag_artist ); Detail.tag_artist = NULL; } + if( Detail.tag_title != NULL ) { free( Detail.tag_title ); Detail.tag_title = NULL; } + if( Detail.tag_number != NULL ) { free( Detail.tag_number ); Detail.tag_number = NULL; } + if( Detail.tag_genre != NULL ) { free( Detail.tag_genre ); Detail.tag_genre = NULL; } + if( Detail.tag_year != NULL ) { free( Detail.tag_year ); Detail.tag_year = NULL; } + if( Detail.tag_comment != NULL ) { free( Detail.tag_comment ); Detail.tag_comment = NULL; } + if( Detail.tag_description != NULL ) { free( Detail.tag_description ); Detail.tag_description = NULL; } +} + + +// +// Print help and quit +// +void help( C_BOOL p_bool_halt ) +{ + printf( "\n" ); + printf( "!-------------------------------------------------------------\n" ); + printf( "! %s\n", PACKAGE_STRING ); + printf( "!-------------------------------------------------------------\n" ); + printf( _("xcfa_cli is an implementation of xcfa in command line.\n" + "xcfa_cli is an application for conversion, normalization, reconfiguring wav files and cut audio files ...\n\n" + "What xcfa_cli can do:\n" + " - replaygain on files: flac, mp3, ogg, wavpack\n" + " - conversions:\n" + " - from files:\n" + " wav, flac, ape, wavpack, ogg, m4a, mpc, mp3, wma, shorten, rm, dts, aif, ac3 \n" + " - to files: \n" + " wav, flac, ape, wavpack, ogg, m4a, mpc, mp3, aac\n" + " - conversion settings for file management:\n" + " flac, ape, wavpack, ogg, m4a, aac, mpc, mp3\n" + " - management tags\n" + " - management cue wav file\n" + " - manipulation of the frequency, track and bit wav files\n" + " - standardization on files: wav, mp3, ogg\n" + " - cuts (split) wav files\n" + " - displaying information on files\n") ); + + printf( "!-------------------------------------------------------------\n" ); + GetInfo_cpu_print(); + printf( "!-------------------------------------------------------------\n" ); + prginit_print_info (); + printf( "!-------------------------------------------------------------\n" ); + printf( "\n" ); + + printf( _(" --verbose Verbose mode\n" + " -h --help Print help mode and quit\n" + "\n" + + " -i <\"file.type\"> --input <\"file.type\">\n" + " Input name file to convert in inverted commas, by example: --input \"*.flac\"\n" + " Type input files: wav, flac, ape, wavpack, ogg, m4a, mpc, mp3, wma, shorten, rm, dts, aif, ac3\n" + " -o --output \n" + " Destination folder. By default in the source file folder.\n" + " -d --dest \n" + " Destination file: wav, flac, ape, wavpack, ogg, m4a, mpc, mp3, aac\n" + " -r --recursion Recursive search\n" + " -e --ext2src Extract in the source folder. This option is useful with '--recursion'\n" + " --nice Change the priority of running processes in the interval: 0 .. 20\n" + "\n" + + "Management options with default parameters:\n" + "\n" + " --op_flac <\"-5\">\n" + " --op_ape <\"c2000\">\n" + " --op_wavpack <\"-y -j1\">\n" + " --op_ogg <\"--quality=3\">\n" + " --op_m4a <\"-q 100\">\n" + " --op_aac <\"48\">\n" + " --op_mpc <\"--verbose --overwrite --insane\">\n" + " --op_mp3 <\"-h --nohist --noreplaygain -b 128\">\n" + "\n" + + "Displays information about the files:\n" + "\n" + " --info_files Displays time, level dBFS, frequency/track/quantification\n" + " --info_tags Displays tags\n" + " --info_head Displays head\n" + "\n" + + "Management tags:\n" + "\n" + " --no_tag The tags will not be carried\n" + " --tag_album <\"tags\"> Tag of album\n" + " --tag_artist <\"tags\"> Tag of artist\n" + " --tag_title <\"tags\"> Tag of title\n" + " --tag_number <\"tags\"> Tag of number\n" + " --tag_genre <\"tags\"> Tag of genre\n" + " --tag_year <\"tags\"> Tag of year\n" + " --tag_comment <\"tags\"> Tag of comment\n" + " --tag_description <\"tags\"> Tag of description\n" + "\n" + + "Management cue file:\n" + " -c --cue \n" + " info Provides information on a WAV or CUE file.\n" + " extract Extract all tracks of a WAV file.\n" + "\n" + + "Management split:\n" + "\n" + " -s --split Mark the beginning of the file to be cut.\n" + " -l --length Specifies the length of the file to cut with the seconds parameter.\n" + "\n" + + "Changing the settings of a WAV file:\n" + "\n" + " -f --frequency Changing the frequency: 8000, 22000, 32000, 44056, 44100, 48000, 88200, 96000 or other\n" + " -t --track Changing the number of tracks: 1, 2, 4, 6\n" + " -q --quantification Changing the quantification: 8, 16, 24, 32, 64\n" + "\n" + + "Replaygain: dynamic modification for next files: FLAC, MP3, OGG, WAVPACK\n" + "\n" + " -g --replaygain \n" + " FLAC [ clear | album ]\n" + " MP3 [ clear | album | track ]\n" + " OGG [ clear | album | track ]\n" + " WAVPACK [ clear | album | track ]\n" + "\n" + + "Normalize: static modification for next files: MP3, WAV, OGG\n" + " See an excellent article by @Dzef on standardization: http://ubunteros.tuxfamily.org/spip.php?article159\n" + "\n" + " --peak Action on a single file.\n" + " Maximum volume amplification for each file:\n" + " Increase the overall level of the signal so as to bring the level to 0 dBFS peak without changing dynamics.\n" + " --peak_album Action on a group of files.\n" + " Maximum volume boost for a group of files in accordance with the level of differences between each of them.\n" + " If the maximum level of one or more files is already at 0 dBFS, the level of all the selected files remain unchanged\n" + " after normalization. So this mode can be safely used almost systematically.\n" + " --mix_rms_album Action on a group of files.\n" + " Adjusting the average volume for a group of files respecting average level of the differences between each of them.\n" + " The selecting a value for a file modifies the other files in the group.\n" + " --fix_rms Action on a single file.\n" + " Adjusting the average volume of each file..\n" + "\n") ); + + printf( _("Example conversion:\n") ); + printf( "\n" ); + printf( " %s --input \"file.wav\" -d ogg --dest flac,mp, --output newfolder/\n", PACKAGE ); + printf( " %s --input \"*.wav\" --dest ogg,flac,mp3 --output newfolder/ --recursive -op_mp3 \"--preset fast extreme\"\n", PACKAGE ); + printf( " %s --input \"*.*\" -d mp3 --split 00:00:00 -l 30 -o newfolder/ --verbose --frequency 44100 --track 2 --quantification 16\n", PACKAGE ); + printf( "\n" ); + + printf( _("Conversion example with two inputs:\n") ); + printf( "\n" ); + printf( " %s --input \"file.wav\" --input \"other_file.mp3\" -d ogg --dest flac,mpc --output newfolder/\n", PACKAGE ); + printf( "\n" ); + + printf( _("Example split:\n") ); + printf( "\n" ); + printf( " %s --input \"file.wav\" --info_files\n", PACKAGE ); + printf( " %s --input \"*.*\" -d mp3 --split 00:00:00 -l 30 -o newfolder/ --verbose\n", PACKAGE ); + printf( " %s --input \"file.wav\" -d ogg,mpc --split 00:01:00 --length 22 --output newfolder/\n", PACKAGE ); + printf( "\n" ); + + printf( _("Example cue:\n") ); + printf( "\n" ); + printf( " %s --input \"file.cue\" --cue info\n", PACKAGE ); + printf( " %s --input \"file.cue\" --cue extract --output newfolder/\n", PACKAGE ); + printf( " %s --input \"file.wav\" --cue info\n", PACKAGE ); + printf( " %s --input \"file.wav\" --cue extract --output newfolder/\n", PACKAGE ); + printf( "\n" ); + + printf( _("Example setting wav:\n") ); + printf( "\n" ); + printf( " %s -i \"file.wav\" -d wav -o newfolder/ --frequency 96000 --track 6 --quantification 32 --verbose\n", PACKAGE ); + printf( "\n" ); + + printf( _("Example replaygain:\n") ); + printf( "\n" ); + printf( " %s -i \"*.*\" --replaygain clear\n", PACKAGE ); + printf( " %s -i \"*.*\" --replaygain album\n", PACKAGE ); + printf( "\n" ); + + printf( _("Example normalize:\n") ); + printf( "\n" ); + printf( " %s -i \"*.*\" --info_files\n", PACKAGE ); + printf( " %s -i \"*.*\" --peak_album\n", PACKAGE ); + printf( " %s -i \"*.*\" --peak\n", PACKAGE ); + printf( " %s -i \"*.*\" --mix_rms_album -10\n", PACKAGE ); + printf( " %s -i \"*.*\" --fix_rms -4\n", PACKAGE ); + printf( "\n" ); + + printf( _("Example info:\n") ); + printf( "\n" ); + printf( " %s -i \"*.*\" --info_files --info_tags --info_head\n", PACKAGE ); + printf( "\n" ); + + printf( "!-------------------------------------------------------------\n" ); + printf( "! See [ $ man xcfa_cli ]\n" ); + printf( "!-------------------------------------------------------------\n" ); + printf( "\n" ); + + printf( "\n\n" ); + remove_options(); + if( TRUE == p_bool_halt) exit( EXIT_SUCCESS ); +} + + +// +// Return type file from 'char *p_type_dest' +// +int ret_type_dest( char *p_type_dest ) +{ + if( strstr( p_type_dest, "flac" )) return( FILE_IS_FLAC ); + else if( strstr( p_type_dest, "ape" )) return( FILE_IS_APE ); + else if( strstr( p_type_dest, "wavpack" )) return( FILE_IS_WAVPACK ); + else if( strstr( p_type_dest, "wav" )) return( FILE_IS_WAV ); + else if( strstr( p_type_dest, "mp3" )) return( FILE_IS_MP3 ); + else if( strstr( p_type_dest, "ogg" )) return( FILE_IS_OGG ); + else if( strstr( p_type_dest, "mpc" )) return( FILE_IS_MPC ); + else if( strstr( p_type_dest, "ac3" )) return( FILE_IS_AC3 ); + else if( strstr( p_type_dest, "m4a" )) return( FILE_IS_M4A ); + else if( strstr( p_type_dest, "wma" )) return( FILE_IS_WMA ); + else if( strstr( p_type_dest, "rm" )) return( FILE_IS_RM ); + else if( strstr( p_type_dest, "dts" )) return( FILE_IS_DTS ); + else if( strstr( p_type_dest, "aif" )) return( FILE_IS_AIFF ); + else if( strstr( p_type_dest, "shn" )) return( FILE_IS_SHN ); + else if( strstr( p_type_dest, "aac" )) return( FILE_IS_AAC ); + return FILE_IS_NONE; +} + + +// +// Analyse options from command line +// +void analyse_command_line( int argc, char *argv[] ) +{ + int c; + + while (1) { + static struct option long_options[] = + { + { "verbose", no_argument, &Detail.BoolVerboseMode, 1 }, + + { "help", no_argument, 0, 'h' }, + { "input", required_argument, 0, 'i' }, + { "output", required_argument, 0, 'o' }, + { "dest", required_argument, 0, 'd' }, + { "recursion", no_argument, 0, 'r' }, + { "ext2src", no_argument, 0, 'e' }, + + { "op_flac", required_argument, 0, 1 }, + { "op_ape", required_argument, 0, 2 }, + { "op_wavpack", required_argument, 0, 3 }, + { "op_ogg", required_argument, 0, 4 }, + { "op_m4a", required_argument, 0, 5 }, + { "op_aac", required_argument, 0, 6 }, + { "op_mpc", required_argument, 0, 7 }, + { "op_mp3", required_argument, 0, 8 }, + { "no_tag", no_argument, 0, 9 }, + { "tag_album", required_argument, 0, 10 }, + { "tag_artist", required_argument, 0, 11 }, + { "tag_title", required_argument, 0, 12 }, + { "tag_number", required_argument, 0, 13 }, + { "tag_genre", required_argument, 0, 14 }, + { "tag_year", required_argument, 0, 15 }, + { "tag_comment", required_argument, 0, 16 }, + { "tag_description",required_argument, 0, 17 }, + + { "split", required_argument, 0, 's' }, + { "length", required_argument, 0, 'l' }, + + { "frequency", required_argument, 0, 'f' }, + { "track", required_argument, 0, 't' }, + { "quantification", required_argument, 0, 'q' }, + + { "replaygain", required_argument, 0, 'g' }, + + { "peak", no_argument, &Detail.bool_peak, 1 }, + { "peak_album", no_argument, &Detail.bool_peak_album, 1 }, + { "mix_rms_album", required_argument, 0, 18 }, + { "fix_rms", required_argument, 0, 19 }, + + { "nice", required_argument, 0, 20 }, + + { "info_files", no_argument, &Detail.bool_info_files, 1 }, + { "info_tags", no_argument, &Detail.bool_info_tags, 1 }, + { "info_head", no_argument, &Detail.bool_info_head, 1 }, + + { "cue", required_argument, 0, 'c' }, + + {0, 0, 0, 0} + }; + /* getopt_long stores the option index here. */ + int option_index = 0; + + c = getopt_long( argc, argv, "hi:o:d:res:l:f:t:q:g:c:", long_options, &option_index ); + + /* Detect the end of the options. */ + if( c == -1 ) break; + + switch( c ) { + case 0: + /* If this option set a flag, do nothing else now. */ + if( long_options[option_index].flag != 0 ) break; + if( optarg ) printf(" with arg %s\n", optarg ); + break; + + // --op_flac 1 + case 1 : + if( NULL == Detail.Op_flac ) Detail.Op_flac = C_strdup( optarg ); + break; + // --op_ape 2 + case 2 : + if( NULL == Detail.Op_ape ) Detail.Op_ape = C_strdup( optarg ); + break; + // --op_wavpack 3 + case 3 : + if( NULL == Detail.Op_wavpack ) Detail.Op_wavpack = C_strdup( optarg ); + break; + // --op_ogg 4 + case 4 : + if( NULL == Detail.Op_ogg ) Detail.Op_ogg = C_strdup( optarg ); + break; + // --op_m4a 5 + case 5 : + if( NULL == Detail.Op_m4a ) Detail.Op_m4a = C_strdup( optarg ); + break; + // --op_aac 6 + case 6 : + if( NULL == Detail.Op_aac ) Detail.Op_aac = C_strdup( optarg ); + break; + // --op_mpc 7 + case 7 : + if( NULL == Detail.Op_mpc ) Detail.Op_mpc = C_strdup( optarg ); + break; + // --op_mp3 8 + case 8 : + if( NULL == Detail.Op_mp3 ) Detail.Op_mp3 = C_strdup( optarg ); + break; + + // --no_tag 9 + case 9 : + Detail.BoolNoTag = TRUE; + break; + + // --tag_album 10 + case 10 : + if( NULL == Detail.tag_album ) + Detail.tag_album = C_strdup( optarg ); + break; + // --tag_artist 11 + case 11 : + if( NULL == Detail.tag_artist ) + Detail.tag_artist = C_strdup( optarg ); + break; + // --tag_title 12 + case 12 : + if( NULL == Detail.tag_title ) + Detail.tag_title = C_strdup( optarg ); + break; + // --tag_number 13 + case 13 : + if( NULL == Detail.tag_number ) + Detail.tag_number = C_strdup( optarg ); + break; + // --tag_genre 14 + case 14 : + if( NULL == Detail.tag_genre ) + Detail.tag_genre = C_strdup( optarg ); + break; + // --tag_year 15 + case 15 : + if( NULL == Detail.tag_year ) + Detail.tag_year = C_strdup( optarg ); + break; + // --tag_comment 16 + case 16 : + if( NULL == Detail.tag_comment ) + Detail.tag_comment = C_strdup( optarg ); + break; + // --tag_description 17 + case 17 : + if( NULL == Detail.tag_description ) + Detail.tag_description = C_strdup( optarg ); + break; + + // --help -h + case 'h' : + help( TRUE ); + break; + + // --input -i + case 'i' : + { + /* + --input -i Input name file to convert in inverted commas: --input "*.flac" + L'option de la commande [ -i, --input ] doit imperativement etre entouree de guillemets: + $ xcfa_cli -i "*.wav" + $ xcfa_cli --input "*.wav" --input "*.ogg" + */ + LIST_SEARCH *ListSearch = (LIST_SEARCH *)malloc (sizeof (LIST_SEARCH)); + if( *optarg == '/' ) { + char *Ptr = NULL; + ListSearch->PathNameFile = C_strdup( optarg ); + if( NULL != (Ptr = strrchr( ListSearch->PathNameFile, '/' ))) { + Ptr ++; + ListSearch->Jocker = C_strdup( Ptr ); + *Ptr = '\0'; + } + } + else { + char *Ptr = NULL; + char *str_current_dir = get_current_dir_name(); + ListSearch->PathNameFile = C_strdup_printf( "%s/%s", str_current_dir, optarg ); + free( str_current_dir ); + str_current_dir = NULL; + if( NULL != (Ptr = strrchr( ListSearch->PathNameFile, '/' ))) { + Ptr ++; + ListSearch->Jocker = C_strdup( Ptr ); + *Ptr = '\0'; + } + } + Detail.ListSearch = C_list_append( Detail.ListSearch, ListSearch ); + } + break; + + // --output -o + case 'o' : + { + char *Ptr = NULL; + Detail.OutputDir = C_strdup_printf( "%s/", optarg ); + if( NULL != ( Ptr = strstr( Detail.OutputDir, "//" ))) { + Ptr ++; + *Ptr = '\0'; + } + } + break; + + // --dest -d + case 'd' : + { + char *p = NULL; + p = strtok( optarg, "," ); + while( p != NULL ) { + int Dest = ret_type_dest( p ); + if( FILE_IS_NONE != Dest ) { + Detail.BoolTypeDest[ Dest ] = TRUE; + Detail.bool_dest = TRUE; + } + else { + printf( "%s", BOLD_RED ); + printf( + "!-------------------------------------------------------------\n" + "! Unknown option for: --dest %s%s%s\n" + "!-------------------------------------------------------------\n" + " -d --dest \n" + " Destination file: wav, flac, ape, wavpack, ogg, m4a, mpc, mp3, aac\n", + BOLD_YELLOW, + p, + BOLD_RED + ); + printf( "%s", RESET ); + exit( EXIT_SUCCESS ); + } + p = strtok(NULL, ","); + } + } + break; + + // --recursion -r + case 'r' : + Detail.BoolRecursiveMode = TRUE; + break; + + // --ext2src -e + case 'e' : + Detail.BoolExtract2Src = TRUE; + break; + + // --split -s [ hh:mm:ss ] + case 's' : + if( 0.0 == Detail.split) { + int cpt = 0; + char *p = NULL; + p = strtok( optarg, ":" ); + while( p != NULL ) { + if( 0 == cpt ) + Detail.split += (double)atoi( p ) * 3600; + else if( 1 == cpt ) + Detail.split += (double)atoi( p ) * 60; + else if( 2 == cpt ) + Detail.split += (double)atoi( p ); + else if( 3 == cpt ) + Detail.split += (double)atoi( p ) / 100.0; + cpt ++; + p = strtok(NULL, ":"); + } + if( cpt < 3 || cpt > 3 ) { + printf( "%s", BOLD_RED ); + printf( + "!-------------------------------------------------------------\n" + "! Error option for: --split %shh:mm:ss%s\n" + "!-------------------------------------------------------------\n" + "Management split:\n" + "\n" + " -s --split Mark the beginning of the file to be cut.\n" + " -l --length Specifies the length of the file to cut with the seconds parameter.\n" + "\n", + BOLD_YELLOW, + BOLD_RED + ); + printf( "%s", RESET ); + exit( EXIT_SUCCESS ); + } + Detail.bool_split = TRUE; + } + break; + + // --length -l + case 'l' : + Detail.split_length = atoi( optarg ); + Detail.bool_split = TRUE; + break; + + // --frequency -f + case 'f' : + Detail.frequency = atoi( optarg ); + Detail.bool_setting_wav = TRUE; + break; + // --track -t + case 't' : + Detail.track = atoi( optarg ); + Detail.bool_setting_wav = TRUE; + break; + // --quantification -q + case 'q' : + Detail.quantification = atoi( optarg ); + Detail.bool_setting_wav = TRUE; + break; + + // --replaygain -g + case 'g' : + if( strcmp( optarg, "clear" ) == 0 ) + Detail.replaygain = OP_REPLAYGAIN_CLEAR; + else if( strcmp( optarg, "album" ) == 0 ) + Detail.replaygain = OP_REPLAYGAIN_ALBUM; + else if( strcmp( optarg, "track" ) == 0 ) + Detail.replaygain = OP_REPLAYGAIN_TRACK; + else { + printf( "%s", BOLD_RED ); + printf( + "!-------------------------------------------------------------\n" + "! Unknown option for: --replaygain %s%s%s\n" + "!-------------------------------------------------------------\n" + "Replaygain: dynamic modification for next files: FLAC, MP3, OGG, WAVPACK\n" + "\n" + " -g --replaygain \n" + " FLAC [ clear | album ]\n" + " MP3 [ clear | album | track ]\n" + " OGG [ clear | album | track ]\n" + " WAVPACK [ clear | album | track ]\n" + "\n", + BOLD_YELLOW, + optarg, + BOLD_RED + ); + printf( "%s", RESET ); + exit( EXIT_SUCCESS ); + } + break; + + // --peak 1 + // Detail.bool_peak + // --peak_album 18 + // Detail.bool_peak_album + // --mix_rms_album 19 + case 18: + Detail.mix_rms_album = atoi( optarg ); + break; + // --fix_rms 20 + case 19: + Detail.fix_rms = atoi( optarg ); + break; + + // --nice + case 20 : + Detail.Nice = atoi( optarg ); + break; + + // --cue < info | extract > + // + case 'c' : + if( strcmp( optarg, "info" ) == 0 ) + Detail.cue = OP_CUE_INFO; + else if( strcmp( optarg, "extract" ) == 0 ) + Detail.cue = OP_CUE_EXTRACT; + else { + printf( "%s", BOLD_RED ); + printf( + "!-------------------------------------------------------------\n" + "! Unknown option for: --cue %s%s%s\n" + "!-------------------------------------------------------------\n" + "Management cue file:\n" + " -c --cue \n" + " info Provides information on a WAV or CUE file.\n" + " extract Extract all tracks of a WAV file.\n" + "\n", + BOLD_YELLOW, + optarg, + BOLD_RED + ); + printf( "%s", RESET ); + exit( EXIT_SUCCESS ); + } + break; + + case '?': + /* getopt_long already printed an error message. */ + help( FALSE ); + printf( "%s\n\n", BOLD_RED ); + printf("!------------------------------\n"); + printf("! Invalid option\n" ); + printf("!------------------------------\n"); + printf( "%s\n\n", RESET ); + exit( EXIT_SUCCESS ); + break; + + default: + help( TRUE ); + abort (); + } + } + + /* Print any remaining command line arguments (not options). */ + if (optind < argc) { + help( FALSE ); + printf( "%s", BOLD_RED ); +// printf ("non-option ARGV-elements: \n"); +// while (optind < argc) +// printf (" %s\n", argv[optind++] ); +// printf( "\n" ); + printf( "!-------------------------------------------------------------\n" ); + printf( "! You must provide an entry with the parameter '--input'\n" ); + printf( "! --input -i Input name file to convert in inverted commas, by example: --input %s\"*.flac\"%s\n", RESET, BOLD_RED ); + printf( "! Type input files: wav, flac, ape, wavpack, ogg, m4a, mpc, mp3, wma, shorten, rm, dts, aif, ac3\n" ); + printf( "! See [ $ xcfa_cli --help ]\n" ); + printf( "! See [ $ man xcfa_cli ]\n" ); + printf( "!-------------------------------------------------------------\n" ); + printf( "\n" ); + printf( "%s", RESET ); + exit( EXIT_SUCCESS ); + } + + if( argc == 1 ) help( TRUE ); + + // DEFAULT OPTIONS CONVERT + if( Detail.Op_flac == NULL) Detail.Op_flac = C_strdup( "-5" ); + if( Detail.Op_ape == NULL) Detail.Op_ape = C_strdup( "-c2000" ); + if( Detail.Op_wavpack == NULL) Detail.Op_wavpack = C_strdup( "-y -j1" ); + if( Detail.Op_ogg == NULL) Detail.Op_ogg = C_strdup( "--quality=3" ); + if( Detail.Op_m4a == NULL) Detail.Op_m4a = C_strdup( "-q 100" ); + if( Detail.Op_aac == NULL) Detail.Op_aac = C_strdup( "48" ); + if( Detail.Op_mpc == NULL) Detail.Op_mpc = C_strdup( "--verbose --overwrite --insane" ); + if( Detail.Op_mp3 == NULL) Detail.Op_mp3 = C_strdup( "-h --nohist --noreplaygain -b 128" ); + + if( NULL == Detail.OutputDir ) { + char *str_current_dir = get_current_dir_name(); + Detail.OutputDir = C_strdup_printf( "%s/", str_current_dir ); + free( str_current_dir ); + str_current_dir = NULL; + } + + if( TRUE == Detail.BoolNoTag ) { + if( Detail.tag_album != NULL ) { + free( Detail.tag_album ); + Detail.tag_album = NULL; + } + if( Detail.tag_artist != NULL ) { + free( Detail.tag_artist ); + Detail.tag_artist = NULL; + } + if( Detail.tag_title != NULL ) { + free( Detail.tag_title ); + Detail.tag_title = NULL; + } + if( Detail.tag_number != NULL ) { + free( Detail.tag_number ); + Detail.tag_number = NULL; + } + if( Detail.tag_genre != NULL ) { + free( Detail.tag_genre ); + Detail.tag_genre = NULL; + } + if( Detail.tag_year != NULL ) { + free( Detail.tag_year ); + Detail.tag_year = NULL; + } + if( Detail.tag_comment != NULL ) { + free( Detail.tag_comment ); + Detail.tag_comment = NULL; + } + if( Detail.tag_description != NULL ) { + free( Detail.tag_description ); + Detail.tag_description = NULL; + } + } +} + + +// +// From 'char *Directory' search 'char *jocker'. +// Recursive search is applied if Detail.BoolRecursiveMode is TRUE +// +void fileanalyze_recherche_recursive( char *Directory, char *jocker ) +{ + DIR *dp; + struct dirent *entry; + struct stat statbuf; + char *Ptr = NULL; + TYPE_FILE_IS TypeFileRet = FILE_IS_NONE; + + if( NULL == ( dp = opendir( Directory ))) { + if( TRUE == C_file_test( Directory ) && utils_get_size_file( Directory ) > 100 ) { + if( !fnmatch( jocker, Directory, 0 )) { + // Accepted file: + // wav, flac, ape, wavpack, ogg, m4a, mpc, mp3, wma, shorten, rm, dts, aif, ac3 + TypeFileRet = GetInfo_file_is( Directory ); + if( TypeFileRet == FILE_IS_WAV || TypeFileRet == FILE_IS_FLAC || TypeFileRet == FILE_IS_WAVPACK || + TypeFileRet == FILE_IS_OGG || TypeFileRet == FILE_IS_M4A || TypeFileRet == FILE_IS_VID_M4A || + TypeFileRet == FILE_IS_MPC || TypeFileRet == FILE_IS_MP3 || TypeFileRet == FILE_IS_WMA || + TypeFileRet == FILE_IS_SHN || TypeFileRet == FILE_IS_RM || TypeFileRet == FILE_IS_DTS || + TypeFileRet == FILE_IS_AIFF || TypeFileRet == FILE_IS_AC3 || TypeFileRet == FILE_IS_VID_M4A || + TypeFileRet == FILE_IS_CUE ) { + + INFO *Info = (INFO *)malloc (sizeof (INFO)); + Info->path_name_file = C_strdup( Directory ); + Info->path = C_strdup( Info->path_name_file ); + if( NULL != (Ptr = strrchr( Info->path, '/' ))) { + Ptr ++; + } + else { + Ptr = Info->path; + } + Info->name_file = C_strdup( Ptr ); + Info->type_infosong_file_is = TypeFileRet; + Info->info = NULL; + Info->path_is_normalize = NULL; + Info->tmp_wav = NULL; + Info->tmp_sox = NULL; + Info->tmp_sox_24 = NULL; + Info->tmp_flac = NULL; + Info->tmp_ape = NULL; + Info->tmp_wavpack = NULL; + Info->tmp_ogg = NULL; + Info->tmp_m4a = NULL; + Info->tmp_aac = NULL; + Info->tmp_mpc = NULL; + Info->tmp_mp3 = NULL; + GetInfo_set( Info ); + Detail.ListFile = C_list_append( Detail.ListFile, Info ); + } + } + } + return; + } + chdir (Directory); + while ((entry = readdir (dp)) != NULL) { + lstat (entry->d_name, &statbuf); + if (S_ISDIR (statbuf.st_mode)) { + if (strcmp (".", entry->d_name) == 0 || strcmp ("..", entry->d_name) == 0) continue; + if( Detail.BoolRecursiveMode == TRUE ) + fileanalyze_recherche_recursive (entry->d_name, jocker ); + } + else { + if( !fnmatch( jocker, entry->d_name, 0 )) { + char *str_current_dir = get_current_dir_name(); + + INFO *Info = (INFO *)malloc (sizeof (INFO)); + Info->path_name_file = C_strdup_printf( "%s/%s", str_current_dir, entry->d_name ); + // Accepted file: + // wav, flac, ape, wavpack, ogg, m4a, mpc, mp3, wma, shorten, rm, dts, aif, ac3 + TypeFileRet = GetInfo_file_is( Info->path_name_file ); + if( TypeFileRet == FILE_IS_WAV || TypeFileRet == FILE_IS_FLAC || TypeFileRet == FILE_IS_WAVPACK || + TypeFileRet == FILE_IS_OGG || TypeFileRet == FILE_IS_M4A || TypeFileRet == FILE_IS_VID_M4A || + TypeFileRet == FILE_IS_MPC || TypeFileRet == FILE_IS_MP3 || TypeFileRet == FILE_IS_WMA || + TypeFileRet == FILE_IS_SHN || TypeFileRet == FILE_IS_RM || TypeFileRet == FILE_IS_DTS || + TypeFileRet == FILE_IS_AIFF || TypeFileRet == FILE_IS_AC3 || TypeFileRet == FILE_IS_VID_M4A || + TypeFileRet == FILE_IS_CUE ) { + + Info->path = C_strdup( Info->path_name_file ); + if( NULL != (Ptr = strrchr( Info->path, '/' ))) { + Ptr ++; + Info->name_file = C_strdup( Ptr ); + *Ptr = '\0'; + } + else { + Ptr = Info->path; + Info->name_file = C_strdup( Ptr ); + } + Info->type_infosong_file_is = TypeFileRet; + Info->info = NULL; + Info->path_is_normalize = NULL; + Info->tmp_wav = NULL; + Info->tmp_sox = NULL; + Info->tmp_sox_24 = NULL; + Info->tmp_flac = NULL; + Info->tmp_ape = NULL; + Info->tmp_wavpack = NULL; + Info->tmp_ogg = NULL; + Info->tmp_m4a = NULL; + Info->tmp_aac = NULL; + Info->tmp_mpc = NULL; + Info->tmp_mp3 = NULL; + GetInfo_set( Info ); + Detail.ListFile = C_list_append( Detail.ListFile, Info ); + } + else { + free( Info->path_name_file ); + Info->path_name_file = NULL; + free( Info ); + Info = NULL; + } + free( str_current_dir ); + str_current_dir = NULL; + } + } + } + chdir (".."); + closedir (dp); +} + + +// +// Print all option from command line. +// If necessary applications of convertion are present then return TRUE else FALSE. +// +C_BOOL test_and_print_options( void ) +{ + C_BOOL BoolRet = TRUE; + CList *list = NULL; + INFO *Info = NULL; + int i; + + if( NULL == Detail.ListFile ) { + printf( "%s", BOLD_RED ); + printf( "!-------------------------------------------------------------\n" ); + printf( "! You must provide an entry with the parameter '--input'\n" ); + printf( "! --input -i Input name file to convert in inverted commas, by exemple: --input %s\"*.flac\"%s\n", RESET, BOLD_RED ); + printf( "! Type input files: wav, flac, ape, wavpack, ogg, m4a, mpc, mp3, wma, shorten, rm, dts, aif, ac3\n" ); + printf( "! See [ $ xcfa_cli --help ]\n" ); + printf( "! See [ $ man xcfa_cli ]\n" ); + printf( "!-------------------------------------------------------------\n" ); + printf( "\n" ); + printf( "%s", RESET ); + return( FALSE ); + } + + if( TRUE == Detail.bool_info_files || TRUE == Detail.bool_info_tags || TRUE == Detail.bool_info_head ) { + if( NULL != ( list = C_list_first( Detail.ListFile ))) { + while( list ) { + if( NULL != (Info = (INFO *)list->data) ) { + + printf("\n%s\n", Info->path_name_file ); + + if( TRUE == Detail.bool_info_files ) { + printf( "\t!-------------------------------------------------------------\n" ); + printf( "\t! --info_files\n" ); + printf( "\t!-------------------------------------------------------------\n" ); + if( FILE_IS_FLAC == Info->type_infosong_file_is ) { + printf("\ttime = %s\n", ((INFO_FLAC *)Info->info)->time ); + } + else if( FILE_IS_WAV == Info->type_infosong_file_is ) { + printf("\ttime = %s\n", ((INFO_WAV *)Info->info)->time ); + printf("\tLevelDbfs = %d dBFS\n", ((INFO_WAV *)Info->info)->LevelDbfs ); + printf("\tfrequency = %s track = %s quantification = %s\n", + ((INFO_WAV *)Info->info)->hertz, + ((INFO_WAV *)Info->info)->voie, + ((INFO_WAV *)Info->info)->bits + ); + } + else if( FILE_IS_MP3 == Info->type_infosong_file_is ) { + printf("\ttime = %s\n", ((INFO_MP3 *)Info->info)->time ); + printf("\tLevelDbfs = %d dBFS\n", ((INFO_MP3 *)Info->info)->LevelDbfs ); + } + else if( FILE_IS_OGG == Info->type_infosong_file_is ) { + printf("\ttime = %s\n", ((INFO_OGG *)Info->info)->time ); + printf("\tLevelDbfs = %d dBFS\n", ((INFO_OGG *)Info->info)->LevelDbfs ); + } + else if( FILE_IS_M4A == Info->type_infosong_file_is || + FILE_IS_VID_M4A == Info->type_infosong_file_is ) { + printf("\ttime = %s\n", ((INFO_M4A *)Info->info)->time ); + printf("\tfrequency = %s\n", ((INFO_M4A *)Info->info)->hertz ); + } + else if( FILE_IS_AAC == Info->type_infosong_file_is ) { + printf("\ttime = %s\n", ((INFO_AAC *)Info->info)->time ); + printf("\tfrequency = %s\n", ((INFO_AAC *)Info->info)->hertz ); + } + else if( FILE_IS_SHN == Info->type_infosong_file_is ) { + printf("\ttime = %s\n", ((INFO_SHN *)Info->info)->time ); + } + else if( FILE_IS_APE == Info->type_infosong_file_is ) { + printf("\ttime = %s\n", ((INFO_APE *)Info->info)->time ); + } + else if( FILE_IS_WAVPACK == Info->type_infosong_file_is ) { + printf("\ttime = %s\n", ((INFO_WAVPACK *)Info->info)->time ); + } + else { + printf("\tNone for %s\n", get_type( Info->type_infosong_file_is )); + } + } + + if( TRUE == Detail.bool_info_tags ) { + printf( "\t!-------------------------------------------------------------\n" ); + printf( "\t! --info_tags\n" ); + printf( "\t!-------------------------------------------------------------\n" ); + if( FILE_IS_FLAC == Info->type_infosong_file_is ) { + tags_print( Info->path_name_file, ((INFO_FLAC *)Info->info)->tags ); + } + else if( FILE_IS_WAV == Info->type_infosong_file_is ) { + tags_print( Info->path_name_file, ((INFO_WAV *)Info->info)->tags ); + } + else if( FILE_IS_MP3 == Info->type_infosong_file_is ) { + tags_print( Info->path_name_file, ((INFO_MP3 *)Info->info)->tags ); + } + else if( FILE_IS_OGG == Info->type_infosong_file_is ) { + tags_print( Info->path_name_file, ((INFO_OGG *)Info->info)->tags ); + } + else if( FILE_IS_M4A == Info->type_infosong_file_is || + FILE_IS_VID_M4A == Info->type_infosong_file_is ) { + tags_print( Info->path_name_file, ((INFO_M4A *)Info->info)->tags ); + } + else if( FILE_IS_AAC == Info->type_infosong_file_is ) { + tags_print( Info->path_name_file, ((INFO_AAC *)Info->info)->tags ); + } + else if( FILE_IS_SHN == Info->type_infosong_file_is ) { + tags_print( Info->path_name_file, ((INFO_SHN *)Info->info)->tags ); + } + else if( FILE_IS_WMA == Info->type_infosong_file_is ) { + tags_print( Info->path_name_file, ((INFO_WMA *)Info->info)->tags ); + } + else if( FILE_IS_RM == Info->type_infosong_file_is ) { + tags_print( Info->path_name_file, ((INFO_RM *)Info->info)->tags ); + } + else if( FILE_IS_DTS == Info->type_infosong_file_is ) { + tags_print( Info->path_name_file, ((INFO_DTS *)Info->info)->tags ); + } + else if( FILE_IS_AIFF == Info->type_infosong_file_is ) { + tags_print( Info->path_name_file, ((INFO_AIFF *)Info->info)->tags ); + } + else if( FILE_IS_MPC == Info->type_infosong_file_is ) { + tags_print( Info->path_name_file, ((INFO_MPC *)Info->info)->tags ); + } + else if( FILE_IS_APE == Info->type_infosong_file_is ) { + tags_print( Info->path_name_file, ((INFO_APE *)Info->info)->tags ); + } + else if( FILE_IS_WAVPACK == Info->type_infosong_file_is ) { + tags_print( Info->path_name_file, ((INFO_WAVPACK *)Info->info)->tags ); + } + else if( FILE_IS_AC3 == Info->type_infosong_file_is ) { + tags_print( Info->path_name_file, ((INFO_AC3 *)Info->info)->tags ); + } + else { + printf("\tNone for %s\n", get_type( Info->type_infosong_file_is )); + } + } + + if( TRUE == Detail.bool_info_head ) { + printf( "\t!-------------------------------------------------------------\n" ); + printf( "\t! --info_head\n" ); + printf( "\t!-------------------------------------------------------------\n" ); + if( FILE_IS_WAV == Info->type_infosong_file_is ) { + tagswav_print_header( Info->path_name_file ); + } + else if( FILE_IS_MPC == Info->type_infosong_file_is ) { + tagsmpc_print_header( Info->path_name_file ); + } + else { + printf("\tNone for %s\n", get_type( Info->type_infosong_file_is )); + } + } + } + list = C_list_next( list ); + } + } + printf( "\n" ); + return( FALSE ); + } + + // Test the presence of external programs for: REPLAYGAIN + if( OP_REPLAYGAIN_NONE != Detail.replaygain ) { + if( TRUE == get_is_err_in( ToReplaygain )) { + printf( "!-------------------------------------------------------------\n" ); + printf( "! Error to REPLAYGAIN:\n"); + printf( "!-------------------------------------------------------------\n" ); + if( NULL != ( list = C_list_first( Detail.ListFile ))) { + while( list ) { + if( NULL != (Info = (INFO *)list->data) ) { + i = Info->type_infosong_file_is; + switch( i ) { + case FILE_IS_FLAC: + case FILE_IS_MP3: + case FILE_IS_OGG: + case FILE_IS_WAVPACK: + printf("%s\n", Info->path_name_file ); + if( FALSE == tst_prg_extern( TRUE, ToReplaygain, Info->type_infosong_file_is )) + BoolRet = FALSE; + } + } + list = C_list_next( list ); + } + } + printf("\n"); + BoolRet = FALSE; + } + } + + // Test the presence of external programs for: NORMALIZE + if( FALSE != Detail.bool_peak || FALSE != Detail.bool_peak_album || 0 != Detail.mix_rms_album || 0 != Detail.fix_rms ) { + if( TRUE == get_is_err_in( ToNormalize )) { + printf( "!-------------------------------------------------------------\n" ); + printf( "! Error to NORMALIZE:\n"); + printf( "!-------------------------------------------------------------\n" ); + if( NULL != ( list = C_list_first( Detail.ListFile ))) { + while( list ) { + if( NULL != (Info = (INFO *)list->data) ) { + i = Info->type_infosong_file_is; + switch( i ) { + case FILE_IS_WAV: + case FILE_IS_MP3: + case FILE_IS_OGG: + printf("%s\n", Info->path_name_file ); + if( FALSE == tst_prg_extern( TRUE, ToNormalize, Info->type_infosong_file_is )) + BoolRet = FALSE; + } + } + list = C_list_next( list ); + } + } + printf("\n"); + BoolRet = FALSE; + } + } + + // Test the presence of external programs for: CONVERSION + if( TRUE == Detail.bool_dest || TRUE == Detail.bool_split || TRUE == Detail.bool_setting_wav ) { + if( TRUE == get_is_err_in( ToWav )) { + printf( "!-------------------------------------------------------------\n" ); + printf( "! Error to CONV:\n"); + printf( "!-------------------------------------------------------------\n" ); + if( NULL != ( list = C_list_first( Detail.ListFile ))) { + while( list ) { + if( NULL != (Info = (INFO *)list->data) ) { + printf("%s\n", Info->path_name_file ); + printf("\t*TO WAV\n"); + if( FALSE == tst_prg_extern( TRUE, ToWav, Info->type_infosong_file_is )) + BoolRet = FALSE; + } + list = C_list_next( list ); + } + } + for( i = 0; i < NBR_FILE_TO; i ++ ) + if( TRUE == Detail.BoolTypeDest[ i ] ) { + printf("\tTO %s\n", get_type( i )); + if( FALSE == tst_prg_extern( TRUE, ToOther, i )) + BoolRet = FALSE; + } + printf("\n"); + BoolRet = FALSE; + } + } + if( FALSE == BoolRet ) + prginit_print_info(); + + return( BoolRet ); +} + + +/* int main (int argc, char *argv[], char **envp) + * + * argc designe le nombre darguments transmis au moment du lancement de lexecutable + * argv designe le vecteur contenant les differents arguments + * envp designe le vecteur contenant les informations sur lenvironnement + */ +int main( int argc, char *argv[], char **envp ) +{ + CList *list = NULL; + LIST_SEARCH *ListSearch = NULL; +#ifdef ENABLE_NLS + setlocale( LC_ALL, "" ); + bindtextdomain( GETTEXT_PACKAGE, LOCALE_DIR ); + bind_textdomain_codeset( GETTEXT_PACKAGE, "UTF-8" ); + textdomain( GETTEXT_PACKAGE ); +#endif + prginit_scan(); + analyse_command_line( argc, &argv[0] ); + if( NULL != ( list = C_list_first( Detail.ListSearch ))) + while( list ) { + if( NULL != (ListSearch = (LIST_SEARCH *)list->data) ) + fileanalyze_recherche_recursive( ListSearch->PathNameFile, ListSearch->Jocker ); + list = C_list_next( list ); + } + + Detail.bool_normalize = TRUE == Detail.bool_peak || TRUE == Detail.bool_peak_album || 0 != Detail.mix_rms_album || 0 != Detail.fix_rms; + if( TRUE == test_and_print_options() ) { + + if( OP_REPLAYGAIN_CLEAR == Detail.replaygain ) + replaygain_set( Detail.replaygain ); + + if( OP_REPLAYGAIN_ALBUM == Detail.replaygain || OP_REPLAYGAIN_TRACK == Detail.replaygain ) + replaygain_set( Detail.replaygain ); + + if( TRUE == Detail.bool_split && FALSE == Detail.bool_dest ) { + printf( "%s", BOLD_RED ); + printf( "!-------------------------------------------------------------\n" + "! Option %s--dest%s not found\n" + "!-------------------------------------------------------------\n" + " -d --dest \n" + " Destination file: wav, flac, ape, wavpack, ogg, m4a, mpc, mp3, aac\n" + "\n", + BOLD_YELLOW, + BOLD_RED + ); + printf( "%s", RESET ); + + } + if( TRUE == Detail.bool_dest ) { + file_conv(); + } + else if( TRUE == Detail.bool_setting_wav ) { + loop_wav_change_setting( Detail.frequency, Detail.track, Detail.quantification ); + } + if( TRUE == Detail.bool_normalize ) { + normalize_set( Detail.bool_peak, Detail.bool_peak_album, Detail.mix_rms_album, Detail.fix_rms ); + } + + // OP_CUE_INFO + // OP_CUE_EXTRACT + if( OP_CUE_NONE != Detail.cue ) + cue_set( Detail.cue ); + + } + + remove_options(); + printf( "\n" ); + + exit( EXIT_SUCCESS ); +} + + + + + + + + + + + + + + + + diff -Nru xcfa-4.3.8/src_cli/Makefile.am xcfa-5.0.1/src_cli/Makefile.am --- xcfa-4.3.8/src_cli/Makefile.am 1970-01-01 00:00:00.000000000 +0000 +++ xcfa-5.0.1/src_cli/Makefile.am 2014-12-14 13:40:14.000000000 +0000 @@ -0,0 +1,38 @@ +# +# src/Makefile.am with BaseBuild +# +AUTOMAKE_OPTIONS=gnu + +AM_CPPFLAGS = \ + -DPACKAGE_DATA_DIR=\""$(datadir)"\" \ + -DPACKAGE_LOCALE_DIR=\""$(prefix)/$(DATADIRNAME)/locale"\" \ + -DPIXMAPS_DIR=\""$(datadir)/pixmaps/xcfa_cli"\" + +AM_CFLAGS = \ + -DDATA_DIR=\""$(datadir)"\" \ + -DLOCALE_DIR=\""$(datadir)/locale"\" \ + -DPIXMAPS_DIR=\""$(datadir)/pixmaps/xcfa_cli"\" + +bin_PROGRAMS=xcfa_cli + +xcfa_cli_SOURCES=main.c \ +clib.c clib.h \ +conv.c conv.h \ +cue.c \ +file_conv.c \ +file_is.c file_is.h \ +get_info.c get_info.h \ +normalize.c \ +prg_init.c prg_init.h \ +replaygain.c \ +split.c \ +tags.c tags_wav.c tags_flac.c tags_aac.c tags_mp3.c tags_ogg.c tags_shn.c \ +tags_wma.c tags_rm.c tags_dts.c tags_aiff.c tags_m4a.c tags_mpc.c tags_ape.c tags_wavpack.c tags_ac3.c tags.h \ +utils.c \ +wav.c \ +global.h + +datadir = @datadir@ +localedir = $(datadir)/locale +DEFS = -DLOCALEDIR="$(localedir)" @DEFS@ + diff -Nru xcfa-4.3.8/src_cli/Makefile.in xcfa-5.0.1/src_cli/Makefile.in --- xcfa-4.3.8/src_cli/Makefile.in 1970-01-01 00:00:00.000000000 +0000 +++ xcfa-5.0.1/src_cli/Makefile.in 2015-03-01 14:14:56.000000000 +0000 @@ -0,0 +1,669 @@ +# Makefile.in generated by automake 1.15 from Makefile.am. +# @configure_input@ + +# Copyright (C) 1994-2014 Free Software Foundation, Inc. + +# This Makefile.in is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY, to the extent permitted by law; without +# even the implied warranty of MERCHANTABILITY or FITNESS FOR A +# PARTICULAR PURPOSE. + +@SET_MAKE@ + +VPATH = @srcdir@ +am__is_gnu_make = { \ + if test -z '$(MAKELEVEL)'; then \ + false; \ + elif test -n '$(MAKE_HOST)'; then \ + true; \ + elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \ + true; \ + else \ + false; \ + fi; \ +} +am__make_running_with_option = \ + case $${target_option-} in \ + ?) ;; \ + *) echo "am__make_running_with_option: internal error: invalid" \ + "target option '$${target_option-}' specified" >&2; \ + exit 1;; \ + esac; \ + has_opt=no; \ + sane_makeflags=$$MAKEFLAGS; \ + if $(am__is_gnu_make); then \ + sane_makeflags=$$MFLAGS; \ + else \ + case $$MAKEFLAGS in \ + *\\[\ \ ]*) \ + bs=\\; \ + sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \ + | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \ + esac; \ + fi; \ + skip_next=no; \ + strip_trailopt () \ + { \ + flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \ + }; \ + for flg in $$sane_makeflags; do \ + test $$skip_next = yes && { skip_next=no; continue; }; \ + case $$flg in \ + *=*|--*) continue;; \ + -*I) strip_trailopt 'I'; skip_next=yes;; \ + -*I?*) strip_trailopt 'I';; \ + -*O) strip_trailopt 'O'; skip_next=yes;; \ + -*O?*) strip_trailopt 'O';; \ + -*l) strip_trailopt 'l'; skip_next=yes;; \ + -*l?*) strip_trailopt 'l';; \ + -[dEDm]) skip_next=yes;; \ + -[JT]) skip_next=yes;; \ + esac; \ + case $$flg in \ + *$$target_option*) has_opt=yes; break;; \ + esac; \ + done; \ + test $$has_opt = yes +am__make_dryrun = (target_option=n; $(am__make_running_with_option)) +am__make_keepgoing = (target_option=k; $(am__make_running_with_option)) +pkgdatadir = $(datadir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkglibexecdir = $(libexecdir)/@PACKAGE@ +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd +install_sh_DATA = $(install_sh) -c -m 644 +install_sh_PROGRAM = $(install_sh) -c +install_sh_SCRIPT = $(install_sh) -c +INSTALL_HEADER = $(INSTALL_DATA) +transform = $(program_transform_name) +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_triplet = @build@ +host_triplet = @host@ +bin_PROGRAMS = xcfa_cli$(EXEEXT) +subdir = src_cli +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 +am__aclocal_m4_deps = $(top_srcdir)/configure.ac +am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ + $(ACLOCAL_M4) +DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON) +mkinstalldirs = $(install_sh) -d +CONFIG_HEADER = $(top_builddir)/config.h +CONFIG_CLEAN_FILES = +CONFIG_CLEAN_VPATH_FILES = +am__installdirs = "$(DESTDIR)$(bindir)" +PROGRAMS = $(bin_PROGRAMS) +am_xcfa_cli_OBJECTS = main.$(OBJEXT) clib.$(OBJEXT) conv.$(OBJEXT) \ + cue.$(OBJEXT) file_conv.$(OBJEXT) file_is.$(OBJEXT) \ + get_info.$(OBJEXT) normalize.$(OBJEXT) prg_init.$(OBJEXT) \ + replaygain.$(OBJEXT) split.$(OBJEXT) tags.$(OBJEXT) \ + tags_wav.$(OBJEXT) tags_flac.$(OBJEXT) tags_aac.$(OBJEXT) \ + tags_mp3.$(OBJEXT) tags_ogg.$(OBJEXT) tags_shn.$(OBJEXT) \ + tags_wma.$(OBJEXT) tags_rm.$(OBJEXT) tags_dts.$(OBJEXT) \ + tags_aiff.$(OBJEXT) tags_m4a.$(OBJEXT) tags_mpc.$(OBJEXT) \ + tags_ape.$(OBJEXT) tags_wavpack.$(OBJEXT) tags_ac3.$(OBJEXT) \ + utils.$(OBJEXT) wav.$(OBJEXT) +xcfa_cli_OBJECTS = $(am_xcfa_cli_OBJECTS) +xcfa_cli_LDADD = $(LDADD) +AM_V_P = $(am__v_P_@AM_V@) +am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) +am__v_P_0 = false +am__v_P_1 = : +AM_V_GEN = $(am__v_GEN_@AM_V@) +am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) +am__v_GEN_0 = @echo " GEN " $@; +am__v_GEN_1 = +AM_V_at = $(am__v_at_@AM_V@) +am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) +am__v_at_0 = @ +am__v_at_1 = +DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) +depcomp = $(SHELL) $(top_srcdir)/depcomp +am__depfiles_maybe = depfiles +am__mv = mv -f +COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ + $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) +AM_V_CC = $(am__v_CC_@AM_V@) +am__v_CC_ = $(am__v_CC_@AM_DEFAULT_V@) +am__v_CC_0 = @echo " CC " $@; +am__v_CC_1 = +CCLD = $(CC) +LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ +AM_V_CCLD = $(am__v_CCLD_@AM_V@) +am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@) +am__v_CCLD_0 = @echo " CCLD " $@; +am__v_CCLD_1 = +SOURCES = $(xcfa_cli_SOURCES) +DIST_SOURCES = $(xcfa_cli_SOURCES) +am__can_run_installinfo = \ + case $$AM_UPDATE_INFO_DIR in \ + n|no|NO) false;; \ + *) (install-info --version) >/dev/null 2>&1;; \ + esac +am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) +# Read a list of newline-separated strings from the standard input, +# and print each of them once, without duplicates. Input order is +# *not* preserved. +am__uniquify_input = $(AWK) '\ + BEGIN { nonempty = 0; } \ + { items[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in items) print i; }; } \ +' +# Make sure the list of sources is unique. This is necessary because, +# e.g., the same source file might be shared among _SOURCES variables +# for different programs/libraries. +am__define_uniq_tagged_files = \ + list='$(am__tagged_files)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | $(am__uniquify_input)` +ETAGS = etags +CTAGS = ctags +am__DIST_COMMON = $(srcdir)/Makefile.in $(top_srcdir)/depcomp +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) +ACLOCAL = @ACLOCAL@ +AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ +AUTOCONF = @AUTOCONF@ +AUTOHEADER = @AUTOHEADER@ +AUTOMAKE = @AUTOMAKE@ +AWK = @AWK@ +CC = @CC@ +CCDEPMODE = @CCDEPMODE@ +CFLAGS = @CFLAGS@ +CPP = @CPP@ +CPPFLAGS = @CPPFLAGS@ +CXX = @CXX@ +CXXDEPMODE = @CXXDEPMODE@ +CXXFLAGS = @CXXFLAGS@ +CYGPATH_W = @CYGPATH_W@ +DEFS = -DLOCALEDIR="$(localedir)" @DEFS@ +DEPDIR = @DEPDIR@ +ECHO_C = @ECHO_C@ +ECHO_N = @ECHO_N@ +ECHO_T = @ECHO_T@ +EGREP = @EGREP@ +EXEEXT = @EXEEXT@ +GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@ +GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ +GMSGFMT = @GMSGFMT@ +GMSGFMT_015 = @GMSGFMT_015@ +GREP = @GREP@ +INSTALL = @INSTALL@ +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_PREFIX = @INSTALL_PREFIX@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +INTLLIBS = @INTLLIBS@ +INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ +LDFLAGS = @LDFLAGS@ +LIBICONV = @LIBICONV@ +LIBINTL = @LIBINTL@ +LIBOBJS = @LIBOBJS@ +LIBS = @LIBS@ +LTLIBICONV = @LTLIBICONV@ +LTLIBINTL = @LTLIBINTL@ +LTLIBOBJS = @LTLIBOBJS@ +MAKEINFO = @MAKEINFO@ +MKDIR_P = @MKDIR_P@ +MSGFMT = @MSGFMT@ +MSGFMT_015 = @MSGFMT_015@ +MSGMERGE = @MSGMERGE@ +OBJEXT = @OBJEXT@ +PACKAGE = @PACKAGE@ +PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ +PACKAGE_CFLAGS = @PACKAGE_CFLAGS@ +PACKAGE_LIBS = @PACKAGE_LIBS@ +PACKAGE_NAME = @PACKAGE_NAME@ +PACKAGE_STRING = @PACKAGE_STRING@ +PACKAGE_TARNAME = @PACKAGE_TARNAME@ +PACKAGE_URL = @PACKAGE_URL@ +PACKAGE_VERSION = @PACKAGE_VERSION@ +PATH_SEPARATOR = @PATH_SEPARATOR@ +PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ +POSUB = @POSUB@ +RANLIB = @RANLIB@ +SED = @SED@ +SET_MAKE = @SET_MAKE@ +SHELL = @SHELL@ +STRIP = @STRIP@ +USE_NLS = @USE_NLS@ +VERSION = @VERSION@ +XGETTEXT = @XGETTEXT@ +XGETTEXT_015 = @XGETTEXT_015@ +XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@ +XMKMF = @XMKMF@ +abs_builddir = @abs_builddir@ +abs_srcdir = @abs_srcdir@ +abs_top_builddir = @abs_top_builddir@ +abs_top_srcdir = @abs_top_srcdir@ +ac_ct_CC = @ac_ct_CC@ +ac_ct_CXX = @ac_ct_CXX@ +am__include = @am__include@ +am__leading_dot = @am__leading_dot@ +am__quote = @am__quote@ +am__tar = @am__tar@ +am__untar = @am__untar@ +bindir = @bindir@ +build = @build@ +build_alias = @build_alias@ +build_cpu = @build_cpu@ +build_os = @build_os@ +build_vendor = @build_vendor@ +builddir = @builddir@ +datadir = @datadir@ +datarootdir = @datarootdir@ +docdir = @docdir@ +dvidir = @dvidir@ +exec_prefix = @exec_prefix@ +host = @host@ +host_alias = @host_alias@ +host_cpu = @host_cpu@ +host_os = @host_os@ +host_vendor = @host_vendor@ +htmldir = @htmldir@ +includedir = @includedir@ +infodir = @infodir@ +install_sh = @install_sh@ +libdir = @libdir@ +libexecdir = @libexecdir@ +localedir = $(datadir)/locale +localstatedir = @localstatedir@ +mandir = @mandir@ +mkdir_p = @mkdir_p@ +oldincludedir = @oldincludedir@ +pdfdir = @pdfdir@ +prefix = @prefix@ +program_transform_name = @program_transform_name@ +psdir = @psdir@ +sbindir = @sbindir@ +sharedstatedir = @sharedstatedir@ +srcdir = @srcdir@ +sysconfdir = @sysconfdir@ +target_alias = @target_alias@ +top_build_prefix = @top_build_prefix@ +top_builddir = @top_builddir@ +top_srcdir = @top_srcdir@ + +# +# src/Makefile.am with BaseBuild +# +AUTOMAKE_OPTIONS = gnu +AM_CPPFLAGS = \ + -DPACKAGE_DATA_DIR=\""$(datadir)"\" \ + -DPACKAGE_LOCALE_DIR=\""$(prefix)/$(DATADIRNAME)/locale"\" \ + -DPIXMAPS_DIR=\""$(datadir)/pixmaps/xcfa_cli"\" + +AM_CFLAGS = \ + -DDATA_DIR=\""$(datadir)"\" \ + -DLOCALE_DIR=\""$(datadir)/locale"\" \ + -DPIXMAPS_DIR=\""$(datadir)/pixmaps/xcfa_cli"\" + +xcfa_cli_SOURCES = main.c \ +clib.c clib.h \ +conv.c conv.h \ +cue.c \ +file_conv.c \ +file_is.c file_is.h \ +get_info.c get_info.h \ +normalize.c \ +prg_init.c prg_init.h \ +replaygain.c \ +split.c \ +tags.c tags_wav.c tags_flac.c tags_aac.c tags_mp3.c tags_ogg.c tags_shn.c \ +tags_wma.c tags_rm.c tags_dts.c tags_aiff.c tags_m4a.c tags_mpc.c tags_ape.c tags_wavpack.c tags_ac3.c tags.h \ +utils.c \ +wav.c \ +global.h + +all: all-am + +.SUFFIXES: +.SUFFIXES: .c .o .obj +$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) + @for dep in $?; do \ + case '$(am__configure_deps)' in \ + *$$dep*) \ + ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ + && { if test -f $@; then exit 0; else break; fi; }; \ + exit 1;; \ + esac; \ + done; \ + echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu src_cli/Makefile'; \ + $(am__cd) $(top_srcdir) && \ + $(AUTOMAKE) --gnu src_cli/Makefile +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status + @case '$?' in \ + *config.status*) \ + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ + *) \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + esac; + +$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh + +$(top_srcdir)/configure: $(am__configure_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(ACLOCAL_M4): $(am__aclocal_m4_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(am__aclocal_m4_deps): +install-binPROGRAMS: $(bin_PROGRAMS) + @$(NORMAL_INSTALL) + @list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \ + if test -n "$$list"; then \ + echo " $(MKDIR_P) '$(DESTDIR)$(bindir)'"; \ + $(MKDIR_P) "$(DESTDIR)$(bindir)" || exit 1; \ + fi; \ + for p in $$list; do echo "$$p $$p"; done | \ + sed 's/$(EXEEXT)$$//' | \ + while read p p1; do if test -f $$p \ + ; then echo "$$p"; echo "$$p"; else :; fi; \ + done | \ + sed -e 'p;s,.*/,,;n;h' \ + -e 's|.*|.|' \ + -e 'p;x;s,.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/' | \ + sed 'N;N;N;s,\n, ,g' | \ + $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1 } \ + { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \ + if ($$2 == $$4) files[d] = files[d] " " $$1; \ + else { print "f", $$3 "/" $$4, $$1; } } \ + END { for (d in files) print "f", d, files[d] }' | \ + while read type dir files; do \ + if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \ + test -z "$$files" || { \ + echo " $(INSTALL_PROGRAM_ENV) $(INSTALL_PROGRAM) $$files '$(DESTDIR)$(bindir)$$dir'"; \ + $(INSTALL_PROGRAM_ENV) $(INSTALL_PROGRAM) $$files "$(DESTDIR)$(bindir)$$dir" || exit $$?; \ + } \ + ; done + +uninstall-binPROGRAMS: + @$(NORMAL_UNINSTALL) + @list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \ + files=`for p in $$list; do echo "$$p"; done | \ + sed -e 'h;s,^.*/,,;s/$(EXEEXT)$$//;$(transform)' \ + -e 's/$$/$(EXEEXT)/' \ + `; \ + test -n "$$list" || exit 0; \ + echo " ( cd '$(DESTDIR)$(bindir)' && rm -f" $$files ")"; \ + cd "$(DESTDIR)$(bindir)" && rm -f $$files + +clean-binPROGRAMS: + -test -z "$(bin_PROGRAMS)" || rm -f $(bin_PROGRAMS) + +xcfa_cli$(EXEEXT): $(xcfa_cli_OBJECTS) $(xcfa_cli_DEPENDENCIES) $(EXTRA_xcfa_cli_DEPENDENCIES) + @rm -f xcfa_cli$(EXEEXT) + $(AM_V_CCLD)$(LINK) $(xcfa_cli_OBJECTS) $(xcfa_cli_LDADD) $(LIBS) + +mostlyclean-compile: + -rm -f *.$(OBJEXT) + +distclean-compile: + -rm -f *.tab.c + +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/clib.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/conv.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cue.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/file_conv.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/file_is.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/get_info.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/main.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/normalize.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/prg_init.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/replaygain.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/split.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/tags.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/tags_aac.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/tags_ac3.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/tags_aiff.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/tags_ape.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/tags_dts.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/tags_flac.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/tags_m4a.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/tags_mp3.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/tags_mpc.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/tags_ogg.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/tags_rm.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/tags_shn.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/tags_wav.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/tags_wavpack.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/tags_wma.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/utils.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/wav.Po@am__quote@ + +.c.o: +@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ $< + +.c.obj: +@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'` + +ID: $(am__tagged_files) + $(am__define_uniq_tagged_files); mkid -fID $$unique +tags: tags-am +TAGS: tags + +tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) + set x; \ + here=`pwd`; \ + $(am__define_uniq_tagged_files); \ + shift; \ + if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ + test -n "$$unique" || unique=$$empty_fix; \ + if test $$# -gt 0; then \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + "$$@" $$unique; \ + else \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + $$unique; \ + fi; \ + fi +ctags: ctags-am + +CTAGS: ctags +ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) + $(am__define_uniq_tagged_files); \ + test -z "$(CTAGS_ARGS)$$unique" \ + || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ + $$unique + +GTAGS: + here=`$(am__cd) $(top_builddir) && pwd` \ + && $(am__cd) $(top_srcdir) \ + && gtags -i $(GTAGS_ARGS) "$$here" +cscopelist: cscopelist-am + +cscopelist-am: $(am__tagged_files) + list='$(am__tagged_files)'; \ + case "$(srcdir)" in \ + [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \ + *) sdir=$(subdir)/$(srcdir) ;; \ + esac; \ + for i in $$list; do \ + if test -f "$$i"; then \ + echo "$(subdir)/$$i"; \ + else \ + echo "$$sdir/$$i"; \ + fi; \ + done >> $(top_builddir)/cscope.files + +distclean-tags: + -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags + +distdir: $(DISTFILES) + @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + list='$(DISTFILES)'; \ + dist_files=`for file in $$list; do echo $$file; done | \ + sed -e "s|^$$srcdirstrip/||;t" \ + -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ + case $$dist_files in \ + */*) $(MKDIR_P) `echo "$$dist_files" | \ + sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ + sort -u` ;; \ + esac; \ + for file in $$dist_files; do \ + if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ + if test -d $$d/$$file; then \ + dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test -d "$(distdir)/$$file"; then \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ + cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ + else \ + test -f "$(distdir)/$$file" \ + || cp -p $$d/$$file "$(distdir)/$$file" \ + || exit 1; \ + fi; \ + done +check-am: all-am +check: check-am +all-am: Makefile $(PROGRAMS) +installdirs: + for dir in "$(DESTDIR)$(bindir)"; do \ + test -z "$$dir" || $(MKDIR_P) "$$dir"; \ + done +install: install-am +install-exec: install-exec-am +install-data: install-data-am +uninstall: uninstall-am + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am + +installcheck: installcheck-am +install-strip: + if test -z '$(STRIP)'; then \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + install; \ + else \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ + fi +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) + +maintainer-clean-generic: + @echo "This command is intended for maintainers to use" + @echo "it deletes files that may require special tools to rebuild." +clean: clean-am + +clean-am: clean-binPROGRAMS clean-generic mostlyclean-am + +distclean: distclean-am + -rm -rf ./$(DEPDIR) + -rm -f Makefile +distclean-am: clean-am distclean-compile distclean-generic \ + distclean-tags + +dvi: dvi-am + +dvi-am: + +html: html-am + +html-am: + +info: info-am + +info-am: + +install-data-am: + +install-dvi: install-dvi-am + +install-dvi-am: + +install-exec-am: install-binPROGRAMS + +install-html: install-html-am + +install-html-am: + +install-info: install-info-am + +install-info-am: + +install-man: + +install-pdf: install-pdf-am + +install-pdf-am: + +install-ps: install-ps-am + +install-ps-am: + +installcheck-am: + +maintainer-clean: maintainer-clean-am + -rm -rf ./$(DEPDIR) + -rm -f Makefile +maintainer-clean-am: distclean-am maintainer-clean-generic + +mostlyclean: mostlyclean-am + +mostlyclean-am: mostlyclean-compile mostlyclean-generic + +pdf: pdf-am + +pdf-am: + +ps: ps-am + +ps-am: + +uninstall-am: uninstall-binPROGRAMS + +.MAKE: install-am install-strip + +.PHONY: CTAGS GTAGS TAGS all all-am check check-am clean \ + clean-binPROGRAMS clean-generic cscopelist-am ctags ctags-am \ + distclean distclean-compile distclean-generic distclean-tags \ + distdir dvi dvi-am html html-am info info-am install \ + install-am install-binPROGRAMS install-data install-data-am \ + install-dvi install-dvi-am install-exec install-exec-am \ + install-html install-html-am install-info install-info-am \ + install-man install-pdf install-pdf-am install-ps \ + install-ps-am install-strip installcheck installcheck-am \ + installdirs maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-compile mostlyclean-generic pdf pdf-am \ + ps ps-am tags tags-am uninstall uninstall-am \ + uninstall-binPROGRAMS + +.PRECIOUS: Makefile + + +# Tell versions [3.59,3.63) of GNU make to not export all variables. +# Otherwise a system limit (for SysV at least) may be exceeded. +.NOEXPORT: diff -Nru xcfa-4.3.8/src_cli/normalize.c xcfa-5.0.1/src_cli/normalize.c --- xcfa-4.3.8/src_cli/normalize.c 1970-01-01 00:00:00.000000000 +0000 +++ xcfa-5.0.1/src_cli/normalize.c 2014-12-12 19:18:43.000000000 +0000 @@ -0,0 +1,241 @@ +/* + * file : src/normalize.c + * project : xcfa_cli + * copyright : (C) 2014 by BULIN Claude + * + * This file is part of xcfa_cli project + * + * xcfa_cli is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; version 3. + * + * xcfa_cli is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 + * USA + */ + + +#ifdef HAVE_CONFIG_H + #include "../config.h" +#endif + +#include +#include +#include +// #include // PROCESSUS NON-BLOQUANT + +#include "global.h" +#include "conv.h" + + +// p_type_infosong_file_is = FILE_IS_MP3 | FILE_IS_WAV | FILE_IS_OGG +// +CList *normalize_get_list( TYPE_FILE_IS p_type_infosong_file_is ) +{ + CList *list = NULL; + INFO *Info = NULL; + CList *list_normalize = NULL; + + if( NULL != ( list = C_list_first( Detail.ListFile ))) { + while( list ) { + if( NULL != (Info = (INFO *)list->data) ) { + if( Info->type_infosong_file_is == p_type_infosong_file_is ) + list_normalize = C_list_append( list_normalize, Info->path_is_normalize ? Info->path_is_normalize : Info->path_name_file ); + } + list = C_list_next( list ); + } + } + return( list_normalize ); +} +CList *normalize_remove_glist( CList *p_list_normalize ) +{ + CList *list = NULL; + + if( p_list_normalize != NULL ) { + list = C_list_first( p_list_normalize ); + while( list ) { + list->data = NULL; + list = C_list_next( list ); + } + C_list_free( p_list_normalize ); + p_list_normalize = NULL; + } + return( (CList *)NULL ); +} + +/* +! Normalize: static modification for next files: MP3, WAV, OGG +! See an excellent article by @Dzef on standardization: http://ubunteros.tuxfamily.org/spip.php?article159 +! +! --peak Action on a single file. +! Increase the overall level of the signal so as to bring the level to 0 dBFS peak without changing dynamics. +! --peak_album Action on a group of files. +! If the maximum level of one or more files is already at 0 dBFS, the level of all the selected files remain unchanged +! after normalization. That is why this mode can be safely used almost systematically. +! --mix_rms_album Action on a group of files. +! The selecting a value for a file modifies the other files in the group. +! --fix_rms Action on a single file. +! The selecting a value for a file. +*/ +void normalize_set( C_BOOL p_bool_peak, C_BOOL p_bool_peak_album, int p_mix_rms_album, int p_fix_rms ) +{ + int pos; + char **PtrTabArgs = NULL; + CList *list_normalize = NULL; + CList *list = NULL; + INFO *Info = NULL; + int tab_file [ 3 ] = { FILE_IS_MP3, FILE_IS_WAV, FILE_IS_OGG }; + int cpt; + + if( TRUE == p_bool_peak ) { + if( NULL != ( list = C_list_first( Detail.ListFile ))) { + while( list ) { + if( NULL != (Info = (INFO *)list->data) ) { + if( Info->type_infosong_file_is == FILE_IS_MP3 || + Info->type_infosong_file_is == FILE_IS_WAV || + Info->type_infosong_file_is == FILE_IS_OGG ) { + + PtrTabArgs = conv_AllocTabArgs( &pos ); + + if( Info->type_infosong_file_is == FILE_IS_MP3 ) + PtrTabArgs [ pos++ ] = C_strdup( "normalize-mp3" ); + else if( Info->type_infosong_file_is == FILE_IS_WAV ) + PtrTabArgs [ pos++ ] = C_strdup( "normalize" ); + else if( Info->type_infosong_file_is == FILE_IS_OGG ) + PtrTabArgs [ pos++ ] = C_strdup( "normalize-ogg" ); + + PtrTabArgs [ pos++ ] = C_strdup( "--peak" ); + PtrTabArgs [ pos++ ] = C_strdup( Info->path_is_normalize ? Info->path_is_normalize : Info->path_name_file ); + PtrTabArgs [ pos++ ] = C_strdup( "--" ); + PtrTabArgs [ pos++ ] = NULL; + conv_to_convert( PtrTabArgs, NORMALISE_EXEC, "NORMALISE_EXEC peak" ); + PtrTabArgs = conv_RemoveTab( PtrTabArgs ); + } + } + list = C_list_next( list ); + } + } + } + else if( TRUE == p_bool_peak_album ) { + for( cpt = 0; cpt < 3; cpt ++ ) { + if( NULL != (list_normalize = normalize_get_list( tab_file [ cpt ] ))) { + + PtrTabArgs = conv_AllocTabArgs( &pos ); + + if( FILE_IS_MP3 == tab_file [ cpt ] ) + PtrTabArgs [ pos++ ] = C_strdup( "normalize-mp3" ); + else if( FILE_IS_WAV == tab_file [ cpt ] ) + PtrTabArgs [ pos++ ] = C_strdup( "normalize" ); + else if( FILE_IS_OGG == tab_file [ cpt ] ) + PtrTabArgs [ pos++ ] = C_strdup( "normalize-ogg" ); + + PtrTabArgs [ pos++ ] = C_strdup( "-n" ); + list = C_list_first( list_normalize ); + while( list ) { + if( NULL != list->data ) + PtrTabArgs [ pos++ ] = C_strdup( list->data ); + list = C_list_next( list ); + } + PtrTabArgs [ pos++ ] = NULL; + // GET LEVEL to get value 'conv.value_PEAK_RMS_GROUP_ARGS' + conv_to_convert( PtrTabArgs, NORMALISE_GET_LEVEL, "NORMALISE_GET_LEVEL" ); + PtrTabArgs = conv_RemoveTab( PtrTabArgs ); + + // EXEC + + PtrTabArgs = conv_AllocTabArgs( &pos ); + + if( FILE_IS_MP3 == tab_file [ cpt ] ) + PtrTabArgs [ pos++ ] = C_strdup( "normalize-mp3" ); + else if( FILE_IS_WAV == tab_file [ cpt ] ) + PtrTabArgs [ pos++ ] = C_strdup( "normalize" ); + else if( FILE_IS_OGG == tab_file [ cpt ] ) + PtrTabArgs [ pos++ ] = C_strdup( "normalize-ogg" ); + + PtrTabArgs [ pos++ ] = C_strdup_printf( "%d,0000dB", (int)conv.value_PEAK_RMS_GROUP_ARGS ); + list = C_list_first( list_normalize ); + while( list ) { + if( NULL != list->data ) + PtrTabArgs [ pos++ ] = C_strdup( list->data ); + list = C_list_next( list ); + } + PtrTabArgs [ pos++ ] = NULL; + conv_to_convert( PtrTabArgs, NORMALISE_EXEC, "NORMALISE_EXEC peak_albu" ); + PtrTabArgs = conv_RemoveTab( PtrTabArgs ); + list_normalize = normalize_remove_glist( list_normalize ); + } + } + } + else if( p_mix_rms_album < 0 ) { + for( cpt = 0; cpt < 3; cpt ++ ) { + if( NULL != (list_normalize = normalize_get_list( tab_file [ cpt ] ))) { + + PtrTabArgs = conv_AllocTabArgs( &pos ); + + if( FILE_IS_MP3 == tab_file [ cpt ] ) + PtrTabArgs [ pos++ ] = C_strdup( "normalize-mp3" ); + else if( FILE_IS_WAV == tab_file [ cpt ] ) + PtrTabArgs [ pos++ ] = C_strdup( "normalize" ); + else if( FILE_IS_OGG == tab_file [ cpt ] ) + PtrTabArgs [ pos++ ] = C_strdup( "normalize-ogg" ); + + PtrTabArgs [ pos++ ] = C_strdup( "-a" ); + PtrTabArgs [ pos++ ] = C_strdup_printf( "%d,0000dB", p_mix_rms_album ); + PtrTabArgs [ pos++ ] = C_strdup( "--batch" ); + list = C_list_first( list_normalize ); + while( list ) { + if( NULL != list->data ) + PtrTabArgs [ pos++ ] = C_strdup( list->data ); + list = C_list_next( list ); + } + PtrTabArgs [ pos++ ] = NULL; + conv_to_convert( PtrTabArgs, NORMALISE_EXEC, "NORMALISE_EXEC mix_rms_album" ); + PtrTabArgs = conv_RemoveTab( PtrTabArgs ); + list_normalize = normalize_remove_glist( list_normalize ); + } + } + } + else if( p_fix_rms < 0 ) { + if( NULL != ( list = C_list_first( Detail.ListFile ))) { + while( list ) { + if( NULL != (Info = (INFO *)list->data) ) { + if( Info->type_infosong_file_is == FILE_IS_MP3 || + Info->type_infosong_file_is == FILE_IS_WAV || + Info->type_infosong_file_is == FILE_IS_OGG ) { + + PtrTabArgs = conv_AllocTabArgs( &pos ); + + if( Info->type_infosong_file_is == FILE_IS_MP3 ) + PtrTabArgs [ pos++ ] = C_strdup( "normalize-mp3" ); + else if( Info->type_infosong_file_is == FILE_IS_WAV ) + PtrTabArgs [ pos++ ] = C_strdup( "normalize" ); + else if( Info->type_infosong_file_is == FILE_IS_OGG ) + PtrTabArgs [ pos++ ] = C_strdup( "normalize-ogg" ); + + PtrTabArgs [ pos++ ] = C_strdup( "-a" ); + PtrTabArgs [ pos++ ] = C_strdup_printf( "%d,0000dB", p_fix_rms ); + PtrTabArgs [ pos++ ] = C_strdup( Info->path_is_normalize ? Info->path_is_normalize : Info->path_name_file ); + PtrTabArgs [ pos++ ] = NULL; + conv_to_convert( PtrTabArgs, NORMALISE_EXEC, "NORMALISE_EXEC fix_rms" ); + PtrTabArgs = conv_RemoveTab( PtrTabArgs ); + } + } + list = C_list_next( list ); + } + } + } +} + + + + + + + + diff -Nru xcfa-4.3.8/src_cli/prg_init.c xcfa-5.0.1/src_cli/prg_init.c --- xcfa-4.3.8/src_cli/prg_init.c 1970-01-01 00:00:00.000000000 +0000 +++ xcfa-5.0.1/src_cli/prg_init.c 2014-12-22 19:01:39.000000000 +0000 @@ -0,0 +1,288 @@ +/* + * file : src/prg_init.c + * project : xcfa_cli + * copyright : (C) 2014 by BULIN Claude + * + * This file is part of xcfa_cli project + * + * xcfa_cli is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; version 3. + * + * xcfa_cli is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 + * USA + */ + + +#ifdef HAVE_CONFIG_H + #include "../config.h" +#endif + +#include +#include + +#include "global.h" +#include "prg_init.h" + + +/* +*--------------------------------------------------------------------------- +* VARIABLES +*--------------------------------------------------------------------------- +*/ + + + +PRGINIT PrgInit; + + +TABLEAU_PRG_EXTERN TableauPrgExtern [ NMR_MAX_TABLEAU ] = { + +{ +"a52dec", // NAME1 +"", // NAME2 +"", // NAME3 +&PrgInit.bool_a52dec, // FOUND +NULL, // PTR ON Name 1 | 2 | 3 +gettext_noop(" Decode ATSC A/52 audio streams") +}, +{ +"aacplusenc", // NAME1 +"", // NAME2 +"", // NAME3 +&PrgInit.bool_aacplusenc, // FOUND +NULL, // PTR ON Name 1 | 2 | 3 +gettext_noop(" AAC+ encoder") +}, +{ +"mp3check", // NAME1 +"checkmp3", // NAME2 +"mp3_check", // NAME3 +&PrgInit.bool_checkmp3, // FOUND +NULL, // PTR ON Name 1 | 2 | 3 +gettext_noop(" Cherche des renseignements sur les formats mp3") +}, +{ +"faac", // NAME1 +"", // NAME2 +"", // NAME3 +&PrgInit.bool_faac, // FOUND +NULL, // PTR ON Name 1 | 2 | 3 +gettext_noop(" Audio Codeur freeware") +}, +{ +"faad", // NAME1 +"faad2", // NAME2 +"", // NAME3 +&PrgInit.bool_faad, // FOUND +NULL, // PTR ON Name 1 | 2 | 3 +gettext_noop(" MPEG-4 AAC decodeur") +}, +{ +"flac", // NAME1 +"", // NAME2 +"", // NAME3 +&PrgInit.bool_flac, // FOUND +NULL, // PTR ON Name 1 | 2 | 3 +gettext_noop(" Conversion wav : flac") +}, +{ +"lame", // NAME1 +"", // NAME2 +"", // NAME3 +&PrgInit.bool_lame, // FOUND +NULL, // PTR ON Name 1 | 2 | 3 +gettext_noop(" Conversion wav : mp3") +}, +// ADD +{ +"mac", // NAME1 +"", // NAME2 +"", // NAME3 +&PrgInit.bool_ape, // FOUND +NULL, // PTR ON Name 1 | 2 | 3 +gettext_noop(" Monkey's Audio Console Front End : APE") +}, +// ADD TO amd64 and i386 +{ +"mpcdec", // NAME1 +"mppdec", // NAME2 +"mpc123", // NAME3 +&PrgInit.bool_mpc123_mppdec, // FOUND +NULL, // PTR ON Name 1 | 2 | 3 +gettext_noop(" MusePack commandline utilities") +}, +{ +"mpcenc", // NAME1 +"mppenc", // NAME2 +"", // NAME3 +&PrgInit.bool_mppenc, // FOUND +NULL, // PTR ON Name 1 | 2 | 3 +gettext_noop(" MusePack commandline utilities") +}, +{ +"mplayer", // NAME1 +"", // NAME2 +"", // NAME3 +&PrgInit.bool_mplayer, // FOUND +NULL, // PTR ON Name 1 | 2 | 3 +gettext_noop(" Lecteur et extracteur") +}, +{ +"mp3gain", // NAME1 +"", // NAME2 +"", // NAME3 +&PrgInit.bool_mp3gain, // FOUND +NULL, // PTR ON Name 1 | 2 | 3 +gettext_noop(" Replaygain pour les fichiers mp3") +}, +{ +"normalize-audio", // NAME1 +"normalize", // NAME2 +"", // NAME3 +&PrgInit.bool_normalize, // FOUND +NULL, // PTR ON Name 1 | 2 | 3 +gettext_noop(" Normaliseur de fichier wav") +}, +{ +"libnotify-bin", // NAME1 +"notify-send", // NAME2 +"", // NAME3 +&PrgInit.bool_notify_send, // FOUND +NULL, // PTR ON Name 1 | 2 | 3 +gettext_noop(" A program to send desktop notifications") +}, +{ +"shorten", // NAME1 +"", // NAME2 +"", // NAME3 +&PrgInit.bool_shorten, // FOUND +NULL, // PTR ON Name 1 | 2 | 3 +gettext_noop(" Forte compression au format wave") +}, +{ +"shntool", // NAME1 +"", // NAME2 +"", // NAME3 +&PrgInit.bool_shntool, // FOUND +NULL, // PTR ON Name 1 | 2 | 3 +gettext_noop(" Decoupage de fichiers sans decodage") +}, +{ +"sox", // NAME1 +"", // NAME2 +"", // NAME3 +&PrgInit.bool_sox, // FOUND +NULL, // PTR ON Name 1 | 2 | 3 +gettext_noop(" Transformation universelle de fichiers son") +}, +{ +"oggenc", // NAME1 +"", // NAME2 +"", // NAME3 +&PrgInit.bool_oggenc, // FOUND +NULL, // PTR ON Name 1 | 2 | 3 +gettext_noop(" Conversion wav : ogg") +}, +{ +"vorbisgain", // NAME1 +"", // NAME2 +"", // NAME3 +&PrgInit.bool_vorbisgain, // FOUND +NULL, // PTR ON Name 1 | 2 | 3 +gettext_noop(" Replaygain pour les fichiers ogg") +}, +{ +"wavpack", // NAME1 +"", // NAME2 +"", // NAME3 +&PrgInit.bool_wavpack, // FOUND +NULL, // PTR ON Name 1 | 2 | 3 +gettext_noop(" WAVPACK Hybrid Lossless Audio Compressor") +} +}; + + + +// GET INFOS FROM STRUCT +// +char *prginit_get_name (TYPE_PROGINIT TypeEnum) +{ + return ((char *)TableauPrgExtern [ TypeEnum ] . PtrName); +} +// +// +char *prginit_get_Description (TYPE_PROGINIT TypeEnum) +{ + return (gettext((char *)TableauPrgExtern [ TypeEnum ] . Description)); +} +// +// +C_BOOL prginit_elem_is_present (TYPE_PROGINIT TypeEnum) +{ + return ((C_BOOL)*TableauPrgExtern [ TypeEnum ] . BoolFound); +} +// +// +void prginit_print_info (void) +{ + int index; + + // printf ("!------------------------------\n"); + printf ("! INSTALL NAME DESCRIPTION\n"); + printf( "!-------------------------------------------------------------\n" ); + for (index = 0; index < NMR_MAX_TABLEAU; index ++) + printf( + "!%s %s %-12s %s%s\n", + (*TableauPrgExtern [ index ] . BoolFound == TRUE) ? RESET : BOLD_RED, + (*TableauPrgExtern [ index ] . BoolFound == TRUE) ? "Yes " : " NO --> ", + TableauPrgExtern [ index ] . PtrName, + TableauPrgExtern [ index ] . Description, + RESET + ); + // printf ("!------------------------------\n\n"); +} +// +// +void prginit_scan (void) +{ + int index; + + for (index = 0; index < NMR_MAX_TABLEAU; index ++) { + + // INIT VAR + + *TableauPrgExtern [ index ] . BoolFound = FALSE; + TableauPrgExtern [ index ] . PtrName = NULL; + + // CHERCHE LE NOM APPROPRIE SUIVANT LA DISTRIBUTION UTILISEE + + *TableauPrgExtern [ index ] . BoolFound = C_find_program_in_path (TableauPrgExtern [ index ] . Name1); + TableauPrgExtern [ index ] . PtrName = TableauPrgExtern [ index ] .Name1; + + if (*TableauPrgExtern [ index ] . BoolFound == FALSE) { + if (*TableauPrgExtern [ index ] . Name2 != '\0') { + if ((*TableauPrgExtern [ index ] . BoolFound = C_find_program_in_path (TableauPrgExtern [ index ] . Name2)) == TRUE) { + TableauPrgExtern [ index ] . PtrName = TableauPrgExtern [ index ] .Name2; + } + } + } + + if (*TableauPrgExtern [ index ] . BoolFound == FALSE) { + if (*TableauPrgExtern [ index ] . Name3 != '\0') { + if ((*TableauPrgExtern [ index ] . BoolFound = C_find_program_in_path (TableauPrgExtern [ index ] . Name3)) == TRUE) { + TableauPrgExtern [ index ] . PtrName = TableauPrgExtern [ index ] .Name3; + } + } + } + } +} + + diff -Nru xcfa-4.3.8/src_cli/prg_init.h xcfa-5.0.1/src_cli/prg_init.h --- xcfa-4.3.8/src_cli/prg_init.h 1970-01-01 00:00:00.000000000 +0000 +++ xcfa-5.0.1/src_cli/prg_init.h 2014-12-05 11:50:47.000000000 +0000 @@ -0,0 +1,93 @@ +/* + * file : src/prg_init.h + * project : xcfa_cli + * copyright : (C) 2014 by BULIN Claude + * + * This file is part of xcfa_cli project + * + * xcfa_cli is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; version 3. + * + * xcfa_cli is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 + * USA + */ + + + +#ifndef prg_init_h +#define prg_init_h 1 + + +typedef enum { + NMR_a52dec = 0, // + NMR_aacplusenc, // + NMR_checkmp3, // + NMR_faac, // + NMR_faad, // + NMR_flac, // + NMR_lame, // + NMR_mac, // + NMR_musepack_tools_mppdec, // + NMR_musepack_tools_mppenc, // + NMR_mplayer, // + NMR_mp3gain, // + NMR_normalize, // + NMR_libnotify_bin, // + NMR_shorten, // + NMR_shntool, // + NMR_sox, // + NMR_vorbis_tools_oggenc, // + NMR_vorbisgain, // + NMR_wavpack, // + NMR_MAX_TABLEAU // +} TYPE_PROGINIT; + +typedef struct { + char *Name1; // NAME1 + char *Name2; // NAME2 + char *Name3; // NAME3 + C_BOOL *BoolFound; // FOUND + char *PtrName; // PTR ON Name 1 | 2 | 3 + char *Description; // DESCRIPTION TREE-VIEW +} TABLEAU_PRG_EXTERN; + +typedef struct { + C_BOOL bool_a52dec; // + C_BOOL bool_notify_send; // + C_BOOL bool_ape; // + C_BOOL bool_mpc123_mppdec; // + C_BOOL bool_mppenc; // + C_BOOL bool_cdda2wav; // + C_BOOL bool_lame; // + C_BOOL bool_oggenc; // + C_BOOL bool_sox; // + C_BOOL bool_normalize; // + C_BOOL bool_checkmp3; // + C_BOOL bool_faad; // + C_BOOL bool_faac; // + C_BOOL bool_mplayer; // + C_BOOL bool_shorten; // + C_BOOL bool_vorbisgain; // + C_BOOL bool_flac; // + C_BOOL bool_mp3gain; // + C_BOOL bool_wavpack; // + C_BOOL bool_shntool; // + C_BOOL bool_aacplusenc; // +} PRGINIT; + +extern PRGINIT PrgInit; + +char *prginit_get_name (TYPE_PROGINIT TypeEnum); +void prginit_scan( void ); +void prginit_print_info( void ); + +#endif + diff -Nru xcfa-4.3.8/src_cli/replaygain.c xcfa-5.0.1/src_cli/replaygain.c --- xcfa-4.3.8/src_cli/replaygain.c 1970-01-01 00:00:00.000000000 +0000 +++ xcfa-5.0.1/src_cli/replaygain.c 2014-12-12 19:16:35.000000000 +0000 @@ -0,0 +1,230 @@ +/* + * file : src/replaygain.c + * project : xcfa_cli + * copyright : (C) 2014 by BULIN Claude + * + * This file is part of xcfa_cli project + * + * xcfa_cli is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; version 3. + * + * xcfa_cli is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 + * USA + */ + + +#ifdef HAVE_CONFIG_H + #include "../config.h" +#endif + +#include +#include +#include +// #include // PROCESSUS NON-BLOQUANT + +#include "global.h" +#include "conv.h" + + + +// +// Renvoie une liste de pointeur sur les fichier de type 'TYPE_FILE_IS p_type_infosong_file_is' +// depuis la liste choisie par l'utilisateur ou renvoie NULL +// +CList *replaygain_get_list( TYPE_FILE_IS p_type_infosong_file_is ) +{ + CList *list = NULL; + INFO *Info = NULL; + CList *list_replaygain = NULL; + + if( NULL != ( list = C_list_first( Detail.ListFile ))) { + while( list ) { + if( NULL != (Info = (INFO *)list->data) ) { + if( Info->type_infosong_file_is == p_type_infosong_file_is ) + list_replaygain = C_list_append( list_replaygain, Info->path_name_file ); + } + list = C_list_next( list ); + } + } + return( list_replaygain ); +} +// +// Annule le pointeur de structure et detruit la liste 'CList *p_list' +// Renvoie NULL +// +CList *replaygain_remove_glist( CList *p_list ) +{ + CList *list = NULL; + + if( p_list != NULL ) { + list = C_list_first( p_list ); + while( list ) { + list->data = NULL; + list = C_list_next( list ); + } + C_list_free( p_list ); + p_list = NULL; + } + return( (CList *)NULL ); +} +// +// FILE_IS_FLAC, FILE_IS_MP3, FILE_IS_OGG, FILE_IS_WAVPACK +// +C_BOOL replaygain_verify_list( void ) +{ + CList *list = NULL; + INFO *Info = NULL; + + if( NULL != ( list = C_list_first( Detail.ListFile ))) { + while( list ) { + if( NULL != (Info = (INFO *)list->data) ) { + if( Info->type_infosong_file_is == FILE_IS_FLAC || + Info->type_infosong_file_is == FILE_IS_MP3 || + Info->type_infosong_file_is == FILE_IS_OGG || + Info->type_infosong_file_is == FILE_IS_WAVPACK ) + return( TRUE ); + } + list = C_list_next( list ); + } + } + return( FALSE ); +} + + +/* + Verify if exist file type: + FILE_IS_FLAC + FILE_IS_MP3 + FILE_IS_OGG + FILE_IS_WAVPACK + and assign type 'OP_REPLAYGAIN TypeReplaygain' + + + ! Replaygain: dynamic modification for next files: FLAC, MP3, OGG, WAVPACK + ! + ! -g --replaygain + ! FLAC [ clear | album ] + ! MP3 [ clear | album | track ] + ! OGG [ clear | album | track ] + ! WAVPACK [ clear | album | track ] +*/ +void replaygain_set( OP_REPLAYGAIN TypeReplaygain ) +{ + CList *list_replaygain = NULL; + CList *list = NULL; + int pos; + char **PtrTabArgs = NULL; + int tab_file [ 4 ] = { FILE_IS_FLAC, FILE_IS_MP3, FILE_IS_OGG, FILE_IS_WAVPACK }; + int cpt; + C_BOOL bool_replaygain = FALSE; + char StrReplaygainDetail[ 40 ]; + + if( FALSE == replaygain_verify_list() ) { + printf( "%s", BOLD_RED ); + printf("\n!--- R E P L A Y G A I N -----------------------------------!\n"); + printf( "! \n"); + printf( "! File: FLAC or MP3 or OGG or WAVPACK not found\n" ); + printf( "! \n"); + printf( "!------------------------------------------------------------!\n" ); + printf( "\n" ); + printf( "%s", RESET ); + return; + } + + for( cpt = 0; cpt < 4; cpt ++ ) { + if( NULL != (list_replaygain = replaygain_get_list( tab_file [ cpt ] ))) { + + bool_replaygain = FALSE; + PtrTabArgs = conv_AllocTabArgs( &pos ); + + if( FILE_IS_FLAC == tab_file [ cpt ] && OP_REPLAYGAIN_TRACK != TypeReplaygain ) { + + bool_replaygain = TRUE; + PtrTabArgs [ pos++ ] = C_strdup( "metaflac" ); + if( OP_REPLAYGAIN_CLEAR == TypeReplaygain ) + PtrTabArgs [ pos++ ] = C_strdup( "--remove-replay-gain" ); + else if( OP_REPLAYGAIN_ALBUM == TypeReplaygain ) + PtrTabArgs [ pos++ ] = C_strdup( "--add-replay-gain" ); + + } + else if( FILE_IS_MP3 == tab_file [ cpt ] ) { + + bool_replaygain = TRUE; + PtrTabArgs [ pos++ ] = C_strdup( "mp3gain" ); + if( OP_REPLAYGAIN_CLEAR == TypeReplaygain ) { + PtrTabArgs [ pos++ ] = C_strdup( "-s" ); + PtrTabArgs [ pos++ ] = C_strdup( "d" ); + } + else if( OP_REPLAYGAIN_ALBUM == TypeReplaygain ) { + PtrTabArgs [ pos++ ] = C_strdup( "-a" ); + PtrTabArgs [ pos++ ] = C_strdup( "-p" ); + PtrTabArgs [ pos++ ] = C_strdup( "-c" ); + PtrTabArgs [ pos++ ] = C_strdup( "-f" ); + PtrTabArgs [ pos++ ] = C_strdup( "-T" ); + } + else if( OP_REPLAYGAIN_TRACK == TypeReplaygain ) { + PtrTabArgs [ pos++ ] = C_strdup( "-r" ); + PtrTabArgs [ pos++ ] = C_strdup( "-p" ); + PtrTabArgs [ pos++ ] = C_strdup( "-c" ); + PtrTabArgs [ pos++ ] = C_strdup( "-f" ); + PtrTabArgs [ pos++ ] = C_strdup( "-T" ); + } + + } + else if( FILE_IS_OGG == tab_file [ cpt ] ) { + + bool_replaygain = TRUE; + PtrTabArgs [ pos++ ] = C_strdup( "vorbisgain" ); + if( OP_REPLAYGAIN_CLEAR == TypeReplaygain ) + PtrTabArgs [ pos++ ] = C_strdup ("-c" ); + else if( OP_REPLAYGAIN_ALBUM == TypeReplaygain ) + PtrTabArgs [ pos++ ] = C_strdup ("-a" ); + else if( OP_REPLAYGAIN_TRACK == TypeReplaygain ); + // None op + + } + else if( FILE_IS_WAVPACK == tab_file [ cpt ] ) { + + bool_replaygain = TRUE; + PtrTabArgs [ pos++ ] = C_strdup ("wvgain" ); + if( OP_REPLAYGAIN_CLEAR == TypeReplaygain ) + PtrTabArgs [ pos++ ] = C_strdup( "-c" ); + else if( OP_REPLAYGAIN_ALBUM == TypeReplaygain ) + PtrTabArgs [ pos++ ] = C_strdup( "-a" ); + else if( OP_REPLAYGAIN_TRACK == TypeReplaygain ); + // None op + + } + + if( TRUE == bool_replaygain ) { + list = C_list_first( list_replaygain ); + while( list ) { + if( NULL != list->data ) + PtrTabArgs [ pos++ ] = C_strdup( list->data ); + list = C_list_next( list ); + } + PtrTabArgs [ pos++ ] = NULL; + + if( OP_REPLAYGAIN_CLEAR == TypeReplaygain ) + strcpy( StrReplaygainDetail, "REPLAYGAIN clear" ); + else if( OP_REPLAYGAIN_ALBUM == TypeReplaygain ) + strcpy( StrReplaygainDetail, "REPLAYGAIN album" ); + else if( OP_REPLAYGAIN_TRACK == TypeReplaygain ) + strcpy( StrReplaygainDetail, "REPLAYGAIN track" ); + + conv_to_convert( PtrTabArgs, REPLAYGAIN, StrReplaygainDetail ); + } + PtrTabArgs = conv_RemoveTab( PtrTabArgs ); + list_replaygain = replaygain_remove_glist( list_replaygain ); + } + } +} + diff -Nru xcfa-4.3.8/src_cli/split.c xcfa-5.0.1/src_cli/split.c --- xcfa-4.3.8/src_cli/split.c 1970-01-01 00:00:00.000000000 +0000 +++ xcfa-5.0.1/src_cli/split.c 2014-12-25 14:46:57.000000000 +0000 @@ -0,0 +1,143 @@ +/* + * file : src/split.c + * project : xcfa_cli + * copyright : (C) 2014 by BULIN Claude + * + * This file is part of xcfa_cli project + * + * xcfa_cli is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; version 3. + * + * xcfa_cli is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 + * USA + */ + + + +#ifdef HAVE_CONFIG_H + #include "../config.h" +#endif + +#include +#include +#include + +#include "global.h" +#include "tags.h" +#include "conv.h" + + +// +// Split file 'char *p_pathnamefile' from 'double p_split_begin_ss' for a length of 'int p_split_length_ss' +// +void split_wav( char *p_pathnamefile, double p_split_begin_ss, int p_split_length_ss ) +{ + WAVE WaveHeader; + double Percent = 0.; + double PercentBegin; + double PercentEnd; + char *NewName = NULL; + char *buffer = NULL; + FILE *fp = NULL; + size_t Ret; + size_t RetRead; + size_t WriteValue; + + if (FALSE == tagswav_read_file( p_pathnamefile, &WaveHeader )) { + tagswav_close_file( &WaveHeader ); + printf ( "%s", BOLD_RED ); + printf("\n!--- S P L I T ----------------\n"); + printf ( "! File not found to split operation: \"%s\"", p_pathnamefile ); + printf ( "%s\n\n", RESET ); + return; + } + if( (p_split_begin_ss + p_split_length_ss) > (WaveHeader.DATA.Subchunk2Size / WaveHeader.FMT.ByteRate) ) { + printf ( "%s", BOLD_RED ); + printf("\n!--- S P L I T ----------------\n"); + printf ( "! The size of the '--split' and '--length' is greater than the size of the file." ); + printf ( "! %s\n", p_pathnamefile ); + printf ( "! %d secondes\n", WaveHeader.DATA.Subchunk2Size / WaveHeader.FMT.ByteRate ); + printf ( "%s\n\n", RESET ); + tagswav_close_file( &WaveHeader ); + return; + } + + PercentBegin = (((double)p_split_begin_ss * (double)WaveHeader.FMT.ByteRate) / WaveHeader.DATA.Subchunk2Size) * 100.0; + PercentEnd = (((double)p_split_length_ss * (double)WaveHeader.FMT.ByteRate) / WaveHeader.DATA.Subchunk2Size) * 100.0; + PercentEnd += PercentBegin; + + NewName = C_strdup_printf( "%s.split.wav", p_pathnamefile ); + + printf("\n!--- S P L I T ---------------------------------------------!\n"); + printf( "! %s\n", p_pathnamefile ); + printf( "! %s\n", NewName ); + + buffer = (char *)malloc ((sizeof(char) * BUFSIZ) + 10); + + fp = fopen( NewName, "w" ); + // ECRITURE ENTETE FICHIER WAV + fwrite( &WaveHeader.RIFF.ChunkID, 4, 1, fp ); // RIFF + fwrite( &WaveHeader.RIFF.ChunkSize, 4, 1, fp ); // taille du fichier entier en octets (sans compter les 8 octets de ce champ et le champ précédent + fwrite( &WaveHeader.RIFF.Format, 4, 1, fp ); // WAVE + fwrite( &WaveHeader.FMT.Subchunk1ID, 4, 1, fp ); // 'fmt ' + fwrite( &WaveHeader.FMT.Subchunk1Size, 4, 1, fp ); // taille en octet des données à suivre + fwrite( &WaveHeader.FMT.AudioFormat, 2, 1, fp ); // format de compression (une valeur autre que 1 indique une compression) + fwrite( &WaveHeader.FMT.NumChannels, 2, 1, fp ); // nombre de canaux + fwrite( &WaveHeader.FMT.SampleRate, 4, 1, fp ); // fréquence d'échantillonage (nombre d'échantillons par secondes) + fwrite( &WaveHeader.FMT.ByteRate, 4, 1, fp ); // nombre d'octects par secondes + fwrite( &WaveHeader.FMT.Blockalign, 2, 1, fp ); // nombre d'octects pour coder un échantillon + fwrite( &WaveHeader.FMT.BitsPerSample, 2, 1, fp ); // nombre de bits pour coder un échantillon + fwrite( &WaveHeader.DATA.Subchunk2ID, 4, 1, fp ); // 'data' + fwrite( &WaveHeader.DATA.Subchunk2Size, 4, 1, fp ); // taille des données audio( nombre total d'octets codant les données audio) + + RetRead = 0; + WriteValue = 0; + while(( Ret = fread (buffer, 1, BUFSIZ, WaveHeader.file )) > 0) { + RetRead += Ret; + Percent = (float)(RetRead / (float)WaveHeader.DATA.Subchunk2Size) * 100.0; + if( Percent >= PercentBegin ) { + fwrite( buffer, Ret, 1, fp ); + WriteValue += Ret; + } + if( Percent > PercentEnd ) break; + } + /* + fseek( fp, 4L, SEEK_SET ); + WriteValue += 44; + WriteValue -= 8; + fwrite( &WriteValue, 4, 1, fp ); // taille du fichier entier en octets (sans compter les 8 octets de ce champ et le champ précédent + fseek( fp, 40L, SEEK_SET ); + WriteValue += 8; + WriteValue -= 44; + fwrite( &WriteValue, 4, 1, fp ); // taille des données audio( nombre total d'octets codant les données audio ) + */ + fseek( fp, 40L, SEEK_SET ); + fwrite( &WriteValue, 4, 1, fp ); // taille des données audio( nombre total d'octets codant les données audio ) + fseek( fp, 4L, SEEK_SET ); + WriteValue += 44; + WriteValue -= 8; + fwrite( &WriteValue, 4, 1, fp ); // taille du fichier entier en octets (sans compter les 8 octets de ce champ et le champ précédent + + tagswav_close_file( &WaveHeader ); + fclose (fp ); + fp = NULL; + + conv_copy_src_to_dest( NewName, p_pathnamefile ); + + remove( NewName ); + + free( NewName ); + NewName = NULL; + free( buffer ); + buffer = NULL; +} + + diff -Nru xcfa-4.3.8/src_cli/tags_aac.c xcfa-5.0.1/src_cli/tags_aac.c --- xcfa-4.3.8/src_cli/tags_aac.c 1970-01-01 00:00:00.000000000 +0000 +++ xcfa-5.0.1/src_cli/tags_aac.c 2014-12-07 10:19:11.000000000 +0000 @@ -0,0 +1,59 @@ +/* + * file : src/tags_aac.c + * project : xcfa_cli + * copyright : (C) 2014 by BULIN Claude + * + * This file is part of xcfa_cli project + * + * xcfa_cli is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; version 3. + * + * xcfa_cli is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 + * USA + */ + + +#ifdef HAVE_CONFIG_H + #include "../config.h" +#endif + +#include +#include +#include +#include +#include +#include + +#include "global.h" +#include "tags.h" +#include + + +/* +*--------------------------------------------------------------------------- +* REMOVE +*--------------------------------------------------------------------------- +*/ + +INFO_AAC *tagsaac_remove_info (INFO_AAC *info) +{ + if (info) { + if (NULL != info->time) { free (info->time); info->time = NULL; } + if (NULL != info->hertz) { free (info->hertz); info->hertz = NULL; } + + info->tags = (TAGS *)tags_remove (info->tags); + + free (info); + info = NULL; + } + return ((INFO_AAC *)NULL); +} + diff -Nru xcfa-4.3.8/src_cli/tags_ac3.c xcfa-5.0.1/src_cli/tags_ac3.c --- xcfa-4.3.8/src_cli/tags_ac3.c 1970-01-01 00:00:00.000000000 +0000 +++ xcfa-5.0.1/src_cli/tags_ac3.c 2014-12-07 10:19:16.000000000 +0000 @@ -0,0 +1,85 @@ +/* + * file : src/tags_ac3.c + * project : xcfa_cli + * copyright : (C) 2014 by BULIN Claude + * + * This file is part of xcfa_cli project + * + * xcfa_cli is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; version 3. + * + * xcfa_cli is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 + * USA + */ + + +#ifdef HAVE_CONFIG_H + #include "../config.h" +#endif + +#include +#include +#include +#include +#include +#include + +#include "global.h" +#include "tags.h" +#include + + + + +/* +*--------------------------------------------------------------------------- +* REMOVE HEADER +*--------------------------------------------------------------------------- +*/ +INFO_AC3 *tagsac3_remove_info (INFO_AC3 *info) +{ + if (info) { + info->tags = (TAGS *)tags_remove (info->tags); + + free (info); + info = NULL; + } + return ((INFO_AC3 *)NULL); +} + +/* +*--------------------------------------------------------------------------- +* GET HEADER +*--------------------------------------------------------------------------- +*/ +INFO_AC3 *tagsac3_get_info( INFO *p_info ) +{ + INFO_AC3 *ptrinfo = NULL; + + ptrinfo = (INFO_AC3 *)malloc (sizeof (INFO_AC3)); + if (ptrinfo == NULL) return (NULL); + + ptrinfo->tags = (TAGS *)tags_alloc (); + tags_complementation( ptrinfo->tags, p_info->path_name_file ); + + return ((INFO_AC3 *)ptrinfo); +} + + + + + + + + + + + diff -Nru xcfa-4.3.8/src_cli/tags_aiff.c xcfa-5.0.1/src_cli/tags_aiff.c --- xcfa-4.3.8/src_cli/tags_aiff.c 1970-01-01 00:00:00.000000000 +0000 +++ xcfa-5.0.1/src_cli/tags_aiff.c 2014-12-07 10:19:20.000000000 +0000 @@ -0,0 +1,85 @@ +/* + * file : src/tags_aiff.c + * project : xcfa_cli + * copyright : (C) 2014 by BULIN Claude + * + * This file is part of xcfa_cli project + * + * xcfa_cli is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; version 3. + * + * xcfa_cli is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 + * USA + */ + + +#ifdef HAVE_CONFIG_H + #include "../config.h" +#endif + +#include +#include +#include +#include +#include +#include + +#include "global.h" +#include "tags.h" +#include + + + + +/* +*--------------------------------------------------------------------------- +* REMOVE HEADER +*--------------------------------------------------------------------------- +*/ +INFO_AIFF *tagsaiff_remove_info (INFO_AIFF *info) +{ + if (info) { + info->tags = (TAGS *)tags_remove (info->tags); + + free (info); + info = NULL; + } + return ((INFO_AIFF *)NULL); +} + +/* +*--------------------------------------------------------------------------- +* GET HEADER +*--------------------------------------------------------------------------- +*/ +INFO_AIFF *tagsaiff_get_info( INFO *p_info ) +{ + INFO_AIFF *ptrinfo = NULL; + + ptrinfo = (INFO_AIFF *)malloc (sizeof (INFO_AIFF)); + if (ptrinfo == NULL) return (NULL); + + ptrinfo->tags = (TAGS *)tags_alloc (); + tags_complementation( ptrinfo->tags, p_info->path_name_file ); + + return ((INFO_AIFF *)ptrinfo); +} + + + + + + + + + + + diff -Nru xcfa-4.3.8/src_cli/tags_ape.c xcfa-5.0.1/src_cli/tags_ape.c --- xcfa-4.3.8/src_cli/tags_ape.c 1970-01-01 00:00:00.000000000 +0000 +++ xcfa-5.0.1/src_cli/tags_ape.c 2014-12-07 10:19:25.000000000 +0000 @@ -0,0 +1,130 @@ +/* + * file : src/tags_ape.c + * project : xcfa_cli + * copyright : (C) 2014 by BULIN Claude + * + * This file is part of xcfa_cli project + * + * xcfa_cli is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; version 3. + * + * xcfa_cli is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 + * USA + */ + + +#ifdef HAVE_CONFIG_H + #include "../config.h" +#endif + +#include +#include +#include +#include +#include +#include + +#include "global.h" +#include "get_info.h" +#include "tags.h" +#include + + +/* +*--------------------------------------------------------------------------- +* VARIABLES +*--------------------------------------------------------------------------- +*/ + +/***************************************************************************************** +APE header that all APE files have in common (old and new) +***************************************************************************************** +struct APE_COMMON_HEADER +{ + char cID[4]; should equal 'MAC ' + uint16 nVersion; version number * 1000 (3.81 = 3810) +}; + +***************************************************************************************** +APE header structure for old APE files (3.97 and earlier) +***************************************************************************************** +struct APE_HEADER_OLD +{ + char cID[4]; should equal 'MAC ' + uint16 nVersion; version number * 1000 (3.81 = 3810) + uint16 nCompressionLevel; the compression level + uint16 nFormatFlags; any format flags (for future use) + uint16 nChannels; the number of channels (1 or 2) + uint32 nSampleRate; the sample rate (typically 44100) + uint32 nHeaderBytes; the bytes after the MAC header that compose the WAV header + uint32 nTerminatingBytes; the bytes after that raw data (for extended info) + uint32 nTotalFrames; the number of frames in the file + uint32 nFinalFrameBlocks; the number of samples in the final frame +}; +*****************************************************************************************/ + + + +/* +*--------------------------------------------------------------------------- +* GET HEADER +*--------------------------------------------------------------------------- +*/ + +INFO_APE *tagsape_remove_info (INFO_APE *info) +{ + if (info) { + if (NULL != info->time) { free (info->time); info->time = NULL; } + if (NULL != info->size) { free (info->size);info->size = NULL; } + + info->tags = (TAGS *)tags_remove (info->tags); + + free (info); + info = NULL; + } + return ((INFO_APE *)NULL); +} + + +void tags_ape_print( INFO_APE *ptrinfo ) +{ + printf( "time = %s\n", ptrinfo->time ); + printf( "SecTime = %d\n", ptrinfo->SecTime ); + printf( "size = %s\n", ptrinfo->size ); +} + + +INFO_APE *tagsape_get_info( INFO *p_info ) +{ + INFO_APE *ptrinfo = NULL; + SHNTAG *ShnTag = GetInfo_shntool ( p_info->path_name_file ); + int m; + int s; + int sec; + + ptrinfo = (INFO_APE *)malloc (sizeof (INFO_APE)); + if (ptrinfo == NULL) return (NULL); + ptrinfo->tags = (TAGS *)tags_alloc (); + + ptrinfo->size = C_strdup (ShnTag->size); + ptrinfo->SecTime = + sec = ShnTag->SecTime; + s = sec % 60; sec /= 60; + m = sec % 60; sec /= 60; + if (sec > 0) ptrinfo->time = C_strdup_printf ("%02d:%02d:%02d", sec, m, s); + else ptrinfo->time = C_strdup_printf ("00:%02d:%02d", m, s); + + tags_complementation( ptrinfo->tags, p_info->path_name_file ); + + ShnTag = GetInfo_free_shntool (ShnTag); + + return ((INFO_APE *)ptrinfo); +} diff -Nru xcfa-4.3.8/src_cli/tags.c xcfa-5.0.1/src_cli/tags.c --- xcfa-4.3.8/src_cli/tags.c 1970-01-01 00:00:00.000000000 +0000 +++ xcfa-5.0.1/src_cli/tags.c 2014-12-07 10:18:49.000000000 +0000 @@ -0,0 +1,342 @@ +/* + * file : src/tags.c + * project : xcfa_cli + * copyright : (C) 2014 by BULIN Claude + * + * This file is part of xcfa_cli project + * + * xcfa_cli is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; version 3. + * + * xcfa_cli is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 + * USA + */ + + +#ifdef HAVE_CONFIG_H + #include "../config.h" +#endif + +#include +#include +#include +#include +#include +#include +#include + +#include "global.h" +#include "tags.h" +#include + + + +// +// +TAGS *tags_alloc( void ) +{ + TAGS *new_tag = (TAGS *)malloc (sizeof (TAGS)); + new_tag->Album = NULL; + new_tag->Artist = NULL; + new_tag->Title = NULL; + new_tag->Number = NULL; + new_tag->Genre = NULL; + new_tag->Year = NULL; + new_tag->Comment = NULL; + new_tag->Description = NULL; + new_tag->IntNumber = 1; + new_tag->IntGenre = 1; + new_tag->IntYear = 1962; + return( (TAGS *)new_tag ); +} +// +// +TAGS *tags_remove (TAGS *p_tags) +{ + if (NULL != p_tags) { + if( NULL != p_tags->Album ) { free( p_tags->Album ); p_tags->Album = NULL; } + if( NULL != p_tags->Artist ) { free( p_tags->Artist ); p_tags->Artist = NULL; } + if( NULL != p_tags->Title ) { free( p_tags->Title ); p_tags->Title = NULL; } + if( NULL != p_tags->Number ) { free( p_tags->Number ); p_tags->Number = NULL; } + if( NULL != p_tags->Genre ) { free( p_tags->Genre ); p_tags->Genre = NULL; } + if( NULL != p_tags->Year ) { free( p_tags->Year ); p_tags->Year = NULL; } + if( NULL != p_tags->Comment ) { free( p_tags->Comment ); p_tags->Comment = NULL; } + if( NULL != p_tags->Description ) { free( p_tags->Description ); p_tags->Description = NULL; } + free( p_tags ); + p_tags = NULL; + } + return( (TAGS *)NULL ); +} + + +// +// +void tags_complementation( TAGS *p_tags, char *path_name_file ) +{ + char *Ptr = NULL; + + // Album + // Artist + if( p_tags->Artist == NULL ) { + if( NULL != (Ptr = strrchr( path_name_file, '/' ))) { + Ptr ++; + p_tags->Artist = C_strdup( Ptr ); + } + else { + p_tags->Artist = C_strdup( path_name_file ); + } + if( NULL != (Ptr = strrchr( p_tags->Artist, '.' ))) *Ptr = '\0'; + } + // Title + if( p_tags->Title == NULL ) { + if( NULL != (Ptr = strrchr( path_name_file, '/' ))) { + Ptr ++; + p_tags->Title = C_strdup( Ptr ); + } + else { + p_tags->Title = C_strdup( path_name_file ); + } + if( NULL != (Ptr = strrchr( p_tags->Title, '.' ))) *Ptr = '\0'; + } + // Number + // IntNumber + if( NULL == p_tags->Number ) { + p_tags->Number = C_strdup( "1" ); + p_tags->IntNumber = 1; + } else { + p_tags->IntNumber = atoi( p_tags->Number ); + } + // Genre + // IntGenre + if( NULL == p_tags->Genre ) { + p_tags->Genre = C_strdup( "1" ); + p_tags->IntGenre = 1; + } else { + p_tags->IntGenre = atoi( p_tags->Genre ); + } + // Year + // IntYear + if( NULL == p_tags->Year ) { + p_tags->Year = C_strdup( "1962" ); + p_tags->IntYear = 1962; + } else { + p_tags->IntYear = atoi( p_tags->Year ); + } + // Comment + // Description +} + + +STRUCT_TAGS_FILE_MP3 StructTagsFileMp3 [] = { + +{123, "A Cappella"}, +{ 74, "Acid Jazz"}, +{ 73, "Acid Punk"}, +{ 34, "Acid"}, +{ 99, "Acoustic"}, +{ 40, "Alt. Rock"}, +{ 20, "Alternative"}, +{ 26, "Ambient"}, +{145, "Anime"}, +{ 90, "Avantgarde"}, +{116, "Ballad"}, +{ 41, "Bass"}, +{135, "Beat"}, +{ 85, "Bebob"}, +{ 96, "Big Band"}, +{138, "Black Metal"}, +{ 89, "Bluegrass"}, +{ 0, "Blues"}, +{107, "Booty Bass"}, +{132, "BritPop"}, +{ 65, "Cabaret"}, +{ 88, "Celtic"}, +{104, "Chamber Music"}, +{102, "Chanson"}, +{ 97, "Chorus"}, +{136, "Christian Gangsta Rap"}, +{ 61, "Christian Rap"}, +{141, "Christian Rock"}, +{ 1, "Classic Rock"}, +{ 32, "Classical"}, +{128, "Club-House"}, +{112, "Club"}, +{ 57, "Comedy"}, +{140, "Contemporary Christian"}, +{ 2, "Country"}, +{139, "Crossover"}, +{ 58, "Cult"}, +{125, "Dance Hall"}, +{ 3, "Dance"}, +{ 50, "Darkwave"}, +{ 22, "Death Metal"}, +{ 4, "Disco"}, +{ 55, "Dream"}, +{127, "Drum & Bass"}, +{122, "Drum Solo"}, +{120, "Duet"}, +{ 98, "Easy Listening"}, +{ 52, "Electronic"}, +{ 48, "Ethnic"}, +{124, "Euro-House"}, +{ 25, "Euro-Techno"}, +{ 54, "Eurodance"}, +{ 84, "Fast-Fusion"}, +{ 81, "Folk/Rock"}, +{115, "Folklore"}, +{ 80, "Folk"}, +{119, "Freestyle"}, +{ 5, "Funk"}, +{ 30, "Fusion"}, +{ 36, "Game"}, +{ 59, "Gangsta Rap"}, +{126, "Goa"}, +{ 38, "Gospel"}, +{ 91, "Gothic Rock"}, +{ 49, "Gothic"}, +{ 6, "Grunge"}, +{ 79, "Hard Rock"}, +{129, "Hardcore"}, +{137, "Heavy Metal"}, +{ 7, "Hip-Hop"}, +{ 35, "House"}, +{100, "Humour"}, +{131, "Indie"}, +{ 19, "Industrial"}, +{ 46, "Instrumental Pop"}, +{ 47, "Instrumental Rock"}, +{ 33, "Instrumental"}, +{146, "JPop"}, +{ 29, "Jazz+Funk"}, +{ 8, "Jazz"}, +{ 63, "Jungle"}, +{ 86, "Latin"}, +{ 71, "Lo-Fi"}, +{ 45, "Meditative"}, +{142, "Merengue"}, +{ 9, "Metal"}, +{148, "Misc"}, +{ 77, "Musical"}, +{ 82, "National Folk"}, +{ 64, "Native American"}, +{133, "Negerpunk"}, +{ 10, "New Age"}, +{ 10, "NewAge"}, +{ 66, "New Wave"}, +{ 39, "Noise"}, +{ 11, "Oldies"}, +{103, "Opera"}, +{ 12, "Other"}, +{ 75, "Polka"}, +{134, "Polsk Punk"}, +{ 53, "Pop-Folk"}, +{ 62, "Pop/Funk"}, +{ 13, "Pop"}, +{109, "Porn Groove"}, +{117, "Power Ballad"}, +{ 23, "Pranks"}, +{108, "Primus"}, +{ 92, "Progressive Rock"}, +{ 93, "Psychedelic Rock"}, +{ 67, "Psychedelic"}, +{121, "Punk Rock"}, +{ 43, "Punk"}, +{ 14, "R&B"}, +{ 15, "Rap"}, +{ 68, "Rave"}, +{ 16, "Reggae"}, +{ 76, "Retro"}, +{ 87, "Revival"}, +{118, "Rhythmic Soul"}, +{ 78, "Rock & Roll"}, +{ 17, "Rock"}, +{143, "Salsa"}, +{114, "Samba"}, +{110, "Satire"}, +{ 69, "Showtunes"}, +{ 21, "Ska"}, +{111, "Slow Jam"}, +{ 95, "Slow Rock"}, +{105, "Sonata"}, +{ 42, "Soul"}, +{ 37, "Sound Clip"}, +{ 24, "Soundtrack"}, +{ 56, "Southern Rock"}, +{ 44, "Space"}, +{101, "Speech"}, +{ 83, "Swing"}, +{ 94, "Symphonic Rock"}, +{106, "Symphony"}, +{147, "Synthpop"}, +{113, "Tango"}, +{ 51, "Techno-Industrial"}, +{ 18, "Techno"}, +{130, "Terror"}, +{144, "Thrash Metal"}, +{ 60, "Top 40"}, +{ 70, "Trailer"}, +{ 31, "Trance"}, +{ 72, "Tribal"}, +{ 27, "Trip-Hop"}, +{ 28, "Vocal"}, +{102, "Chanson française"}, +{-1, NULL} +}; +// +// +int tags_get_genre_by_value( char *p_name ) +{ + int i; + int RetNum = 1; + char *NameSrc = C_ascii_strdown( p_name ); + char *NameStruct = NULL; + + for( i=0; StructTagsFileMp3[ i ].num != -1; i++ ) { + NameStruct = C_ascii_strdown( StructTagsFileMp3[ i ].name ); + if( strlen( NameSrc ) == strlen( NameStruct ) && 0 == strncmp( NameSrc, NameStruct, strlen( NameSrc ))) { + RetNum = StructTagsFileMp3[ i ].num; + break; + } + free( NameStruct ); NameStruct = NULL; + } + if( NULL != NameSrc ) { free( NameSrc ); NameSrc = NULL; } + if( NULL != NameStruct ) { free( NameStruct ); NameStruct = NULL; } + return( RetNum ); +} +// +// +char *tags_get_genre_by_name( int value ) +{ + int i; + + if( value < 0 || value > 148 ) return ((char *)NULL ); + for( i=0; StructTagsFileMp3[ i ].num != value; i++ ); + return( (char *)StructTagsFileMp3[ i ].name ); +} + + +// +// +void tags_print( char *p_namefile, TAGS *p_tags ) +{ + printf("\tAlbum = %s\n", p_tags->Album ? p_tags->Album : "" ); + printf("\tArtist = %s\n", p_tags->Artist ? p_tags->Artist : "" ); + printf("\tTitle = %s\n", p_tags->Title ? p_tags->Title : "" ); + printf("\tNumber = %s\n", p_tags->Number ? p_tags->Number : "" ); + printf("\tIntNumber = %d\n", p_tags->IntNumber ); + printf("\tGenre = %s\n", p_tags->Genre ? p_tags->Genre : "" ); + printf("\tIntGenre = %d\n", p_tags->IntGenre ); + printf("\tYear = %s\n", p_tags->Year ? p_tags->Year : "" ); + printf("\tIntYear = %d\n", p_tags->IntYear ); + printf("\tComment = %s\n", p_tags->Comment ? p_tags->Comment : "" ); + printf("\tDescription = %s\n", p_tags->Description ? p_tags->Description : "" ); +} + diff -Nru xcfa-4.3.8/src_cli/tags_dts.c xcfa-5.0.1/src_cli/tags_dts.c --- xcfa-4.3.8/src_cli/tags_dts.c 1970-01-01 00:00:00.000000000 +0000 +++ xcfa-5.0.1/src_cli/tags_dts.c 2014-12-07 10:19:52.000000000 +0000 @@ -0,0 +1,94 @@ +/* + * file : src/tags_dts.c + * project : xcfa_cli + * copyright : (C) 2014 by BULIN Claude + * + * This file is part of xcfa_cli project + * + * xcfa_cli is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; version 3. + * + * xcfa_cli is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 + * USA + */ + + +#ifdef HAVE_CONFIG_H + #include "../config.h" +#endif + +#include +#include +#include +#include +#include +#include + +#include "global.h" +#include "tags.h" +#include + + + +/* +*--------------------------------------------------------------------------- +* FILE IS DTS ? +*--------------------------------------------------------------------------- +*/ +/* +$ file * + audio.dts: data +*/ + +/* +*--------------------------------------------------------------------------- +* REMOVE HEADER +*--------------------------------------------------------------------------- +*/ +INFO_DTS *tagsdts_remove_info (INFO_DTS *info) +{ + if (info) { + info->tags = (TAGS *)tags_remove (info->tags); + + free (info); + info = NULL; + } + return ((INFO_DTS *)NULL); +} + +/* +*--------------------------------------------------------------------------- +* GET HEADER +*--------------------------------------------------------------------------- +*/ +INFO_DTS *tagsdts_get_info( INFO *p_info ) +{ + INFO_DTS *ptrinfo = NULL; + + ptrinfo = (INFO_DTS *)malloc (sizeof (INFO_DTS)); + if (ptrinfo == NULL) return (NULL); + + ptrinfo->tags = (TAGS *)tags_alloc (); + tags_complementation( ptrinfo->tags, p_info->path_name_file ); + + return ((INFO_DTS *)ptrinfo); +} + + + + + + + + + + + diff -Nru xcfa-4.3.8/src_cli/tags_flac.c xcfa-5.0.1/src_cli/tags_flac.c --- xcfa-4.3.8/src_cli/tags_flac.c 1970-01-01 00:00:00.000000000 +0000 +++ xcfa-5.0.1/src_cli/tags_flac.c 2014-12-07 10:19:56.000000000 +0000 @@ -0,0 +1,138 @@ +/* + * file : src/tags_flac.c + * project : xcfa_cli + * copyright : (C) 2014 by BULIN Claude + * + * This file is part of xcfa_cli project + * + * xcfa_cli is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; version 3. + * + * xcfa_cli is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 + * USA + */ + + +#ifdef HAVE_CONFIG_H + #include "../config.h" +#endif + +#include +#include +#include +#include +#include +#include + +#include "global.h" +#include "tags.h" +#include + + +/* +*--------------------------------------------------------------------------- +* VARIABLES +*--------------------------------------------------------------------------- +*/ + + + + +/* +*--------------------------------------------------------------------------- +* GET HEADER +*--------------------------------------------------------------------------- +*/ + +INFO_FLAC *tagsflac_remove_info (INFO_FLAC *info) +{ + if (info) { + free (info->time); + + info->tags = (TAGS *)tags_remove (info->tags); + + free (info); + info = NULL; + } + return ((INFO_FLAC *)NULL); +} + + +void tags_flac_print( INFO_FLAC *ptrinfo ) +{ + printf( "time = %s\n", ptrinfo->time ); + printf( "SecTime = %d\n", ptrinfo->SecTime ); +} + + +INFO_FLAC *tagsflac_get_info (INFO *p_info) +{ + TagLib_File *file; + TagLib_Tag *tag; + INFO_FLAC *ptrinfo = NULL; + const TagLib_AudioProperties *properties; + int m; + int s; + int sec; + + ptrinfo = (INFO_FLAC *)malloc (sizeof (INFO_FLAC)); + if (ptrinfo == NULL) return (NULL); + ptrinfo->tags = (TAGS *)tags_alloc (); + + if ((file = taglib_file_new (p_info->path_name_file))) { + + taglib_set_strings_unicode(FALSE); + tag = taglib_file_tag(file); + properties = taglib_file_audioproperties(file); + + ptrinfo->tags->Title = C_strdup (taglib_tag_title(tag)); + ptrinfo->tags->Artist = C_strdup (taglib_tag_artist(tag)); + ptrinfo->tags->Album = C_strdup (taglib_tag_album(tag)); + ptrinfo->tags->IntYear = taglib_tag_year(tag); + ptrinfo->tags->Year = C_strdup_printf ("%d", ptrinfo->tags->IntYear); + ptrinfo->tags->Comment = C_strdup (taglib_tag_comment(tag)); + ptrinfo->tags->IntNumber = taglib_tag_track(tag); + ptrinfo->tags->Number = C_strdup_printf ("%d", ptrinfo->tags->IntNumber); + ptrinfo->tags->Genre = C_strdup (taglib_tag_genre(tag)); + ptrinfo->tags->IntGenre = tags_get_genre_by_value (ptrinfo->tags->Genre); + ptrinfo->SecTime = taglib_audioproperties_length(properties); + + sec = taglib_audioproperties_length(properties); + s = sec % 60; sec /= 60; + m = sec % 60; sec /= 60; + if (sec > 0) ptrinfo->time = C_strdup_printf ("%02d:%02d:%02d", sec, m, s); + else ptrinfo->time = C_strdup_printf ("00:%02d:%02d", m, s); + + /* + printf("title - \"%s\"\n", ptrinfo->tags->Title ); + printf("artist - \"%s\"\n", ptrinfo->tags->Artist ); + printf("album - \"%s\"\n", ptrinfo->tags->Album ); + printf("year - \"%s\"\n", ptrinfo->tags->Year ); + printf("comment - \"%s\"\n", ptrinfo->tags->Comment ); + printf("track - \"%i\"\n", taglib_tag_track(tag)); + printf("genre - \"%s\"\n", ptrinfo->tags->Genre ); + printf("-- AUDIO --\n"); + printf("bitrate - %i\n", taglib_audioproperties_bitrate(properties)); + printf("sample rate - %i\n", taglib_audioproperties_samplerate(properties)); + printf("channels - %i\n", taglib_audioproperties_channels(properties)); + printf("length - %i:%02i\n", minutes, seconds); + */ + + taglib_tag_free_strings(); + taglib_file_free (file); + } + else { + tags_complementation( ptrinfo->tags, p_info->path_name_file ); + } + return ((INFO_FLAC *)ptrinfo); +} + + diff -Nru xcfa-4.3.8/src_cli/tags.h xcfa-5.0.1/src_cli/tags.h --- xcfa-4.3.8/src_cli/tags.h 1970-01-01 00:00:00.000000000 +0000 +++ xcfa-5.0.1/src_cli/tags.h 2014-12-07 19:12:50.000000000 +0000 @@ -0,0 +1,222 @@ +/* + * file : src/tags.h + * project : xcfa_cli + * copyright : (C) 2014 by BULIN Claude + * + * This file is part of xcfa_cli project + * + * xcfa_cli is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; version 3. + * + * xcfa_cli is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 + * USA + */ + + + +#ifndef tags_h +#define tags_h 1 + +#include + +typedef enum { + TAG_WAVE_IS_NONE = 0, + TAG_WAVE_IS_FMT, + TAG_WAVE_IS_BEXT +} TAG_WAV_IS_FMT_BEXT; + + +typedef struct { + + struct { + char ChunkID[4]; //( 4 octets) : contient les lettres "RIFF" pour indiquer que le fichier est codé selon la norme RIFF + uint ChunkSize; //( 4 octets) : taille du fichier entier en octets( sans compter les 8 octets de ce champ et le champ précédent CunkID + char Format[4]; //( 4 octets) : correspond au format du fichier donc ici, contient les lettres "WAVE" car fichier est au format wave + } RIFF; + + TAG_WAV_IS_FMT_BEXT TagWavIsFmtBext; + + struct { + char Subchunk1ID[4]; //( 4 octets) : contient les lettres "fmt " pour indiquer les données à suivre décrivent le format des données audio + uint Subchunk1Size; //( 4 octets) : taille en octet des données à suivre( qui suivent cette variable) 16 Pour un fichier PCM + short AudioFormat; //( 2 octets) : format de compression( une valeur autre que 1 indique une compression) + short NumChannels; //( 2 octets) : nombre de canaux + // 1 pour mono, + // 2 pour stéréo + // 3 pour gauche, droit et centre + // 4 pour face gauche, face droit, arrière gauche, arrière droit + // 5 pour gauche, centre, droit, surround( ambiant) + // 6 pour centre gauche, gauche, centre, centre droit, droit, surround( ambiant) + uint SampleRate; //( 4 octets) : fréquence d'échantillonage, ex 44100, 44800( nombre d'échantillons par secondes) + uint ByteRate; //( 4 octets) : nombre d'octects par secondes + short Blockalign; //( 2 octets) : nombre d'octects pour coder un échantillon + short BitsPerSample; //( 2 octets) : nombre de bits pour coder un échantillon + } FMT; + + struct { + char Subchunk2ID[4]; //( 4 octets) : contient les lettres "data" pour indiquer que les données à suivre sont les données audio( les échantillons et) + uint Subchunk2Size; //( 4 octets) : taille des données audio( nombre total d'octets codant les données audio) + uint *data; //( 4 octets) : données audio... les échantillons + // DATAS[] : [Octets du Sample 1 du Canal 1] [Octets du Sample 1 du Canal 2] [Octets du Sample 2 du Canal 1] [Octets du Sample 2 du Canal 2] + } DATA; + + FILE *file; // Handle du fichier si different de NULL +} WAVE; + +// +// --------------------------------------------------------------------------- +// TAGS_WAV.C +// --------------------------------------------------------------------------- +// +INFO_WAV *tagswav_remove_info( INFO_WAV *info ); +INFO_WAV *tagswav_get_info( INFO *p_info ); +C_BOOL tagswav_file_GetBitrate( char *namefile, int *Channels, int *Hertz, int *Bits ); +C_BOOL tagswav_read_file( char *wave_file, WAVE *WaveHeader ); +void tagswav_close_file( WAVE *WaveHeader ); +void tagswav_print_header( char *p_PathNameFile ); + +// +// --------------------------------------------------------------------------- +// TAGS.C +// --------------------------------------------------------------------------- +// +typedef struct { + int num; + char *name; +} STRUCT_TAGS_FILE_MP3; +// +// +extern STRUCT_TAGS_FILE_MP3 StructTagsFileMp3 []; + +TAGS *tags_alloc( void ); +TAGS *tags_remove( TAGS *tags ); +void tags_complementation( TAGS *p_tags, char *path_name_file ); +int tags_get_genre_by_value( char *p_name ); +char *tags_get_genre_by_name( int value ); +void tags_print( char *p_namefile, TAGS *p_tags ); + + +// +// --------------------------------------------------------------------------- +// TAGS_FLAC.C +// --------------------------------------------------------------------------- +// +INFO_FLAC *tagsflac_remove_info( INFO_FLAC *info ); +INFO_FLAC *tagsflac_get_info( INFO *p_info ); + +// +// --------------------------------------------------------------------------- +// TAGS_MP3.C +// --------------------------------------------------------------------------- +// +INFO_MP3 *tagsmp3_remove_info( INFO_MP3 *info ); +INFO_MP3 *tagsmp3_get_info( INFO *p_info ); + +// +// --------------------------------------------------------------------------- +// TAGS_OGG.C +// --------------------------------------------------------------------------- +// +INFO_OGG *tagsogg_remove_info( INFO_OGG *info ); +INFO_OGG *tagsogg_get_info( INFO *p_info ); + +// +// --------------------------------------------------------------------------- +// TAGS_M4A_.C +// --------------------------------------------------------------------------- +// +INFO_M4A *tagsm4a_remove_info( INFO_M4A *info ); +INFO_M4A *tagsm4a_get_info( INFO *p_info ); + +// +// --------------------------------------------------------------------------- +// TAGS_AAC_.C +// --------------------------------------------------------------------------- +// +INFO_AAC *tagsaac_remove_info( INFO_AAC *info ); + +// +// --------------------------------------------------------------------------- +// TAGS_SHN.C +// --------------------------------------------------------------------------- +// +INFO_SHN *tagsshn_remove_info( INFO_SHN *info ); +INFO_SHN *tagsshn_get_info( INFO *p_info ); + +// +// --------------------------------------------------------------------------- +// TAGS_WMA.C +// --------------------------------------------------------------------------- +// +INFO_WMA *tagswma_remove_info( INFO_WMA *info ); +INFO_WMA *tagswma_get_info( INFO *p_info ); + +// +// --------------------------------------------------------------------------- +// TAGS_MPC.C +// --------------------------------------------------------------------------- +// +INFO_MPC *tagsmpc_remove_info( INFO_MPC *info ); +INFO_MPC *tagsmpc_get_info( INFO *p_info ); +void tagsmpc_print_header( char *mpc_file ); + +// +// --------------------------------------------------------------------------- +// TAGS_APE.C +// --------------------------------------------------------------------------- +// +INFO_APE *tagsape_remove_info( INFO_APE *info ); +INFO_APE *tagsape_get_info( INFO *p_info ); + +// +// --------------------------------------------------------------------------- +// TAGS_WAVPACK.C +// --------------------------------------------------------------------------- +// +INFO_WAVPACK *tagswavpack_remove_info( INFO_WAVPACK *info ); +INFO_WAVPACK *tagswavpack_get_info( INFO *p_info ); + +// +// --------------------------------------------------------------------------- +// TAGS_RM.C +// --------------------------------------------------------------------------- +// +INFO_RM *tagsrm_remove_info( INFO_RM *info ); +INFO_RM *tagsrm_get_info( INFO *p_info ); + +// +// --------------------------------------------------------------------------- +// TAGS_DTS.C +// --------------------------------------------------------------------------- +// +INFO_DTS *tagsdts_remove_info( INFO_DTS *info ); +INFO_DTS *tagsdts_get_info( INFO *p_info ); + +// +// --------------------------------------------------------------------------- +// TAGS_AIFF.C +// --------------------------------------------------------------------------- +// +INFO_AIFF *tagsaiff_remove_info( INFO_AIFF *info ); +INFO_AIFF *tagsaiff_get_info( INFO *p_info ); + +// +// --------------------------------------------------------------------------- +// TAGS_AC3.C +// --------------------------------------------------------------------------- +// +INFO_AC3 *tagsac3_remove_info( INFO_AC3 *info ); +INFO_AC3 *tagsac3_get_info( INFO *p_info ); + + +#endif + + diff -Nru xcfa-4.3.8/src_cli/tags_m4a.c xcfa-5.0.1/src_cli/tags_m4a.c --- xcfa-4.3.8/src_cli/tags_m4a.c 1970-01-01 00:00:00.000000000 +0000 +++ xcfa-5.0.1/src_cli/tags_m4a.c 2014-12-07 10:20:03.000000000 +0000 @@ -0,0 +1,169 @@ +/* + * file : src/tags_m4a.c + * project : xcfa_cli + * copyright : (C) 2014 by BULIN Claude + * + * This file is part of xcfa_cli project + * + * xcfa_cli is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; version 3. + * + * xcfa_cli is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 + * USA + */ + + +#ifdef HAVE_CONFIG_H + #include "../config.h" +#endif + +#include +#include +#include +#include +#include +#include + +#include "global.h" +#include "get_info.h" +#include "tags.h" +#include + + +/* +*--------------------------------------------------------------------------- +* REMOVE +*--------------------------------------------------------------------------- +*/ +INFO_M4A *tagsm4a_remove_info (INFO_M4A *info) +{ + if (info) { + if (NULL != info->time) { free (info->time); info->time = NULL; } + if (NULL != info->hertz) { free (info->hertz);info->hertz = NULL; } + + info->tags = (TAGS *)tags_remove (info->tags); + + free (info); + info = NULL; + } + return ((INFO_M4A *)NULL); +} + + +void tags_m4a_print( INFO_M4A *ptrinfo ) +{ + printf( "time = %s\n", ptrinfo->time ); + printf( "SecTime = %d\n", ptrinfo->SecTime ); + printf( "hertz = %s\n", ptrinfo->hertz ); +} + + +/* +*--------------------------------------------------------------------------- +* GET INFO +*--------------------------------------------------------------------------- +*/ +INFO_M4A *tagsm4a_get_info( INFO *p_info ) +{ + char **Larrbuf = NULL; + CString *gstr = NULL; + int cpt; + char *ptr = NULL; + INFO_M4A *ptrinfo = NULL; + int m; + int s; + int sec; + + gstr = GetInfo_faad ( p_info->path_name_file ); + Larrbuf = C_strsplit( gstr->str, "\n" ); + + ptrinfo = (INFO_M4A *)malloc (sizeof (INFO_M4A)); + if (ptrinfo == NULL) { + C_strfreev( Larrbuf ); + C_string_free( gstr ); + return (NULL); + } + ptrinfo->tags = (TAGS *)tags_alloc (); + + for (cpt=0; Larrbuf[cpt]; cpt++) { + + // LC AAC 181.287 secs, 2 ch, 44100 Hz + // LC AAC 7169.049 secs, 2 ch, 44100 Hz + if ((ptr = strstr (Larrbuf[cpt], "LC AAC"))) { + + // --> 181.287 secs, 2 ch, 44100 Hz + // --> 7169.049 secs, 2 ch, 44100 Hz + ptr = strstr (ptr, " secs,"); + ptr --; + while (*ptr != ' ' && *ptr != '\t') ptr --; + ptr ++; + + sec = atoi (ptr); + s = sec % 60; sec /= 60; + m = sec % 60; sec /= 60; + if (sec > 0) ptrinfo->time = C_strdup_printf ("%02d:%02d:%02d", sec, m, s); + else ptrinfo->time = C_strdup_printf ("00:%02d:%02d", m, s); + + ptrinfo->SecTime = sec; + + /* --> 44100 Hz */ + ptr = strstr (ptr, " Hz"); + ptr --; + while (*ptr != ' ' && *ptr != '\t') ptr --; + ptr ++; + ptrinfo->hertz = C_strdup_printf ("%d", atoi(ptr)); + } + else if ((ptr = strstr (Larrbuf[cpt], "artist:"))) { + if ((ptr = strchr (ptr, ' '))) { + ptr ++; + ptrinfo->tags->Artist = C_strdup (ptr); + } + } + else if ((ptr = strstr (Larrbuf[cpt], "title:"))) { + if ((ptr = strchr (ptr, ' '))) { + ptr ++; + ptrinfo->tags->Title = C_strdup (ptr); + } + } + else if ((ptr = strstr (Larrbuf[cpt], "album:"))) { + if ((ptr = strchr (ptr, ' '))) { + ptr ++; + ptrinfo->tags->Album = C_strdup (ptr); + } + } + else if ((ptr = strstr (Larrbuf[cpt], "date:"))) { + if ((ptr = strchr (ptr, ' '))) { + ptr ++; + ptrinfo->tags->Year = C_strdup (ptr); + } + } + else if ((ptr = strstr (Larrbuf[cpt], "genre:"))) { + if ((ptr = strchr (ptr, ' '))) { + ptr ++; + ptrinfo->tags->Genre = C_strdup (ptr); + } + } + else if ((ptr = strstr (Larrbuf[cpt], "comment:"))) { + if ((ptr = strchr (ptr, ' '))) { + ptr ++; + ptrinfo->tags->Comment = C_strdup (ptr); + } + } + } + + C_strfreev( Larrbuf ); + C_string_free( gstr ); + + tags_complementation( ptrinfo->tags, p_info->path_name_file ); + + return ((INFO_M4A *)ptrinfo); +} + diff -Nru xcfa-4.3.8/src_cli/tags_mp3.c xcfa-5.0.1/src_cli/tags_mp3.c --- xcfa-4.3.8/src_cli/tags_mp3.c 1970-01-01 00:00:00.000000000 +0000 +++ xcfa-5.0.1/src_cli/tags_mp3.c 2014-12-07 10:19:59.000000000 +0000 @@ -0,0 +1,217 @@ +/* + * file : src/tags_mp3.c + * project : xcfa_cli + * copyright : (C) 2014 by BULIN Claude + * + * This file is part of xcfa_cli project + * + * xcfa_cli is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; version 3. + * + * xcfa_cli is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 + * USA + */ + + +#ifdef HAVE_CONFIG_H + #include "../config.h" +#endif + +#include +#include +#include +#include +#include +#include +#include + +#include "global.h" +#include "tags.h" +#include "get_info.h" + + +/* +*--------------------------------------------------------------------------- +* VARIABLES +*--------------------------------------------------------------------------- +*/ + +typedef struct { + char magic[ 3 ]; + char songname[ 30 ]; + char artist[ 30 ]; + char album[ 30 ]; + char year[ 4 ]; + char note[ 28 ]; + unsigned char nnull; + unsigned char track; + unsigned char style; +} ID3TAG; + + +/* +*--------------------------------------------------------------------------- +* GET HEADER +*--------------------------------------------------------------------------- +*/ +INFO_MP3 *tagsmp3_remove_info (INFO_MP3 *info) +{ + if (NULL != info) { + if (NULL != info->bitrate) { free (info->bitrate); info->bitrate = NULL; } + if (NULL != info->time) { free (info->time); info->time = NULL; } + if (NULL != info->size) { free (info->size); info->size = NULL; } + + info->tags = (TAGS *)tags_remove (info->tags); + + free (info); + info = NULL; + } + + return ((INFO_MP3 *)NULL); +} +/* +MPEG-1 layer III sample frequencies (kHz): 32 48 44.1 +bitrates (kbit/s): 32 40 48 56 64 80 96 112 128 160 192 224 256 320 + +MPEG-2 layer III sample frequencies (kHz): 16 24 22.05 +bitrates (kbit/s): 8 16 24 32 40 48 56 64 80 96 112 128 144 160 + +MPEG-2.5 layer III sample frequencies (kHz): 8 12 11.025 +bitrates (kbit/s): 8 16 24 32 40 48 56 64 80 96 112 128 144 160 +-1 +0 +1 +2 +*/ +int tagsmp3_type_mpeg (char *namefile) +{ + char *Lout = NULL; + char *ptr = NULL; +#define MAX_STR 256 + static char str [ MAX_STR + 4 ]; + int cpt = 0; + char *term[] = {"MPV_1", "MPV_2", "MPV_25"}; + int i; + CString *gstr = NULL; + int Ret = NONE_MPEG; // NONE_MPEG = -1 + + if (NULL == (gstr = GetInfo_checkmp3 (namefile))) { + return (-1); + } + + Lout = gstr->str; + for (i = 0; i < 3; i ++) { + if ((ptr = strstr (Lout, term[ i ]))) { + + /* Init la chaine de stockage */ + for (cpt=0; cpt < MAX_STR; cpt++) str [ cpt ] = '\0'; + + /* Passe l'intro */ + while (*ptr != ' ') ptr ++; + while (*ptr == ' ') ptr ++; + + /* Copie */ + cpt = 0; + while (*ptr != '\n') { + if (cpt > MAX_STR) break; + str [ cpt ++ ] = *ptr ++; + } + str [ cpt ] = '\0'; + + switch ( i ) { + case 0 : + // printf ("----------------------------MPV_1 str=%s\n", str); + if (str[0] == '1') Ret = MPEG_1; // MPEG_1 = 0 + break; + case 1 : + // printf ("----------------------------MPV_2 str=%s\n", str); + if (str[0] == '1') Ret = MPEG_2; // MPEG_2 = 1 + break; + case 2 : + // printf ("----------------------------MPV_25 str=%s\n", str); + if (str[0] == '1') Ret = MPEG_25; // MPEG_25 = 2 + break; + } + if (Ret > -1) break; + } + } + gstr = C_string_free( gstr ); + Lout = NULL; + + return (Ret); +} + + +void tags_mp3_print( INFO_MP3 *ptrinfo ) +{ + printf( "\ttime = %s\n", ptrinfo->time ); + printf( "\tbitrate = %s\n", ptrinfo->bitrate ); + printf( "\tmpeg_is = %d\n", ptrinfo->mpeg_is ); + printf( "\tsize = %s\n", ptrinfo->size ); + printf( "\tLevelDbfs = %d\n", ptrinfo->LevelDbfs ); +} + + +INFO_MP3 *tagsmp3_get_info( INFO *p_info ) +{ + INFO_MP3 *ptrinfo = NULL; + TagLib_File *file; + TagLib_Tag *tag; + const TagLib_AudioProperties *properties; + int m; + int s; + int sec; + + ptrinfo = (INFO_MP3 *)malloc (sizeof (INFO_MP3)); + if (ptrinfo == NULL) return (NULL); + ptrinfo->tags = (TAGS *)tags_alloc (); + + if ((file = taglib_file_new (p_info->path_name_file))) { + taglib_set_strings_unicode(FALSE); + tag = taglib_file_tag(file); + properties = taglib_file_audioproperties(file); + + ptrinfo->tags->Title = C_strdup (taglib_tag_title(tag)); + ptrinfo->tags->Artist = C_strdup (taglib_tag_artist(tag)); + ptrinfo->tags->Album = C_strdup (taglib_tag_album(tag)); + ptrinfo->tags->IntYear = taglib_tag_year(tag); + ptrinfo->tags->Year = C_strdup_printf ("%d", ptrinfo->tags->IntYear); + ptrinfo->tags->Comment = C_strdup (taglib_tag_comment(tag)); + ptrinfo->tags->IntNumber = taglib_tag_track(tag); + ptrinfo->tags->Number = C_strdup_printf ("%d", ptrinfo->tags->IntNumber); + ptrinfo->tags->Genre = C_strdup (taglib_tag_genre(tag)); + ptrinfo->tags->IntGenre = tags_get_genre_by_value (ptrinfo->tags->Genre); + ptrinfo->SecTime = sec = taglib_audioproperties_length(properties); + s = sec % 60; sec /= 60; + m = sec % 60; sec /= 60; + if (sec > 0) ptrinfo->time = C_strdup_printf ("%02d:%02d:%02d", sec, m, s); + else ptrinfo->time = C_strdup_printf ("00:%02d:%02d", m, s); + + ptrinfo->bitrate = C_strdup_printf ("%d", taglib_audioproperties_bitrate(properties)); + ptrinfo->mpeg_is = tagsmp3_type_mpeg ( p_info->path_name_file ); + ptrinfo->size = C_strdup_printf ("%d Ko", (int)utils_get_size_file ( p_info->path_name_file ) / 1024); + + taglib_tag_free_strings(); + taglib_file_free (file); + } + else { + tags_complementation( ptrinfo->tags, p_info->path_name_file ); + } + // ptrinfo->LevelDbfs = GetInfo_level_get_from( FILE_IS_MP3, p_info->path_name_file ); + + return ((INFO_MP3 *)ptrinfo); +} + + + + + + diff -Nru xcfa-4.3.8/src_cli/tags_mpc.c xcfa-5.0.1/src_cli/tags_mpc.c --- xcfa-4.3.8/src_cli/tags_mpc.c 1970-01-01 00:00:00.000000000 +0000 +++ xcfa-5.0.1/src_cli/tags_mpc.c 2014-12-05 11:15:41.000000000 +0000 @@ -0,0 +1,236 @@ +/* + * file : src/tags_mpc.c + * project : xcfa_cli + * copyright : (C) 2014 by BULIN Claude + * + * This file is part of xcfa_cli project + * + * xcfa_cli is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; version 3. + * + * xcfa_cli is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 + * USA + */ + + +#ifdef HAVE_CONFIG_H + #include "../config.h" +#endif + +#include +#include +#include +#include +#include +#include +#include +#include + +#include "global.h" +#include "tags.h" + + + +/* +*--------------------------------------------------------------------------- +* VARIABLES +*--------------------------------------------------------------------------- +*/ + +typedef struct { + unsigned is_4d : 8; + unsigned is_50 : 8; + unsigned is_2b : 8; + unsigned is_StreamMajorVersion : 4; + unsigned is_StreamMinorVersion : 4; +} MPC_BIT_0; + +typedef struct { + unsigned is_FrameCount : 32; +} MPC_BIT_1; + +typedef struct { + unsigned is_MaxLevel : 16; + unsigned is_SampleFreq : 2; + unsigned is_Link : 2; + unsigned is_Profile : 4; + unsigned is_MaxBand : 6; + unsigned is_MidSideStereo : 1; + unsigned is_IntensityStereo : 1; +} MPC_BIT_2; + +typedef struct { + unsigned is_TitlePeak : 16; + unsigned is_TitleGain : 16; +} MPC_BIT_3; + +typedef struct { + unsigned is_AlbumPeak : 16; + unsigned is_AlbumGain : 16; +} MPC_BIT_4; + +typedef struct { + unsigned is_unusued : 19; + unsigned is_Safely : 1; + unsigned is_LastFrameLength : 11; + unsigned is_TrueGapless : 1; +} MPC_BIT_5; + +typedef struct { + unsigned is_unusued : 24; + unsigned is_EncoderVersion : 8; +} MPC_BIT_6; + +typedef struct { + MPC_BIT_0 bit_0; + MPC_BIT_1 bit_1; + MPC_BIT_2 bit_2; + MPC_BIT_3 bit_3; + MPC_BIT_4 bit_4; + MPC_BIT_5 bit_5; + MPC_BIT_6 bit_6; +} MPC_HEADER; + + +/* +*--------------------------------------------------------------------------- +* FILE IS MPC ? +*--------------------------------------------------------------------------- +*/ + +void tagsmpc_print_header( char *mpc_file ) +{ + FILE *fp = NULL; + MPC_HEADER fm; + + if( NULL == ( fp = fopen( mpc_file, "rb" ))) return; + fread( &fm, sizeof(MPC_HEADER), 1, fp ); + fclose( fp ); + + // printf ("\n"); + // printf ("%s\n", mpc_file); + // printf ("\n"); + printf ("\t-- BIT 0 -----------------------------------------\n"); + printf ("\tis_4d %4d - 0x%x\n", fm.bit_0.is_4d, fm.bit_0.is_4d); + printf ("\tis_50 %4d - 0x%x\n", fm.bit_0.is_50, fm.bit_0.is_50); + printf ("\tis_2b %4d - 0x%x\n", fm.bit_0.is_2b, fm.bit_0.is_2b); + printf ("\tis_StreamMajorVersion %4d - 0x%x\n", fm.bit_0.is_StreamMajorVersion, fm.bit_0.is_StreamMajorVersion); + printf ("\tis_StreamMinorVersion %4d - 0x%x\n", fm.bit_0.is_StreamMinorVersion, fm.bit_0.is_StreamMinorVersion); + printf ("\t-- BIT 1 -----------------------------------------\n"); + printf ("\tis_FrameCount %4d - 0x%x\n", fm.bit_1.is_FrameCount, fm.bit_1.is_FrameCount); + printf ("\t-- BIT 2 -----------------------------------------\n"); + printf ("\tis_MaxLevel %4d - 0x%x\n", fm.bit_2.is_MaxLevel, fm.bit_2.is_MaxLevel); + printf ("\tis_SampleFreq %4d - 0x%x\n", fm.bit_2.is_SampleFreq, fm.bit_2.is_SampleFreq); + switch(fm.bit_2.is_SampleFreq) { + case 0 : printf ("\t\t44100 Hz\n"); break; + case 1 : printf ("\t\t48000 Hz\n"); break; + case 2 : printf ("\t\t37800 Hz\n"); break; + case 3 : printf ("\t\t32000 Hz\n"); break; + } + printf ("\tis_Link %4d - 0x%x\n", fm.bit_2.is_Link, fm.bit_2.is_Link); + switch(fm.bit_2.is_Link) { + case 0 : printf ("\t\tTitle start or ends with a very low level\n"); break; + case 1 : printf ("\t\tTitle ends loudly\n"); break; + case 2 : printf ("\t\tTitle start loudly\n"); break; + case 3 : printf ("\t\tTitle start loudly and ends loudly\n"); break; + } + printf ("\tis_Profile %4d - 0x%x\n", fm.bit_2.is_Profile, fm.bit_2.is_Profile); + switch (fm.bit_2.is_Profile) { + case 0 : printf ("\t\tno profile\n"); break; + case 1 : printf ("\t\tUnstable/Experimental\n"); break; + case 2 : printf ("\t\tunused\n"); break; + case 3 : printf ("\t\tunused\n"); break; + case 4 : printf ("\t\tunused\n"); break; + case 5 : printf ("\t\tbelow telephone : q=0.0\n"); break; + case 6 : printf ("\t\tbelow telephone : q=1.0\n"); break; + case 7 : printf ("\t\ttelephone : q=2.0\n"); break; + case 8 : printf ("\t\tThumb : q=3.0\n"); break; + case 9 : printf ("\t\tRadio : q=4.0\n"); break; + case 10 : printf ("\t\tStandard : q=5.0\n"); break; + case 11 : printf ("\t\tXtreme : q=6.0\n"); break; + case 12 : printf ("\t\tInsane : q=7.0\n"); break; + case 13 : printf ("\t\tBrainDead : q=8.0\n"); break; + case 14 : printf ("\t\tabove BrainDead : q=9.0\n"); break; + case 15 : printf ("\t\tabove BrainDead : q=10.0\n"); break; + } + printf ("\tis_MaxBand %4d - 0x%x\n", fm.bit_2.is_MaxBand, fm.bit_2.is_MaxBand); + printf ("\tis_MidSideStereo %4d - 0x%x\n", fm.bit_2.is_MidSideStereo, fm.bit_2.is_MidSideStereo); + printf ("\tis_IntensityStereo %4d - 0x%x\n", fm.bit_2.is_IntensityStereo, fm.bit_2.is_IntensityStereo); + printf ("\t-- BIT 3 -----------------------------------------\n"); + printf ("\tis_TitlePeak %4d - 0x%x\n", fm.bit_3.is_TitlePeak, fm.bit_3.is_TitlePeak); + printf ("\tis_TitleGain %4d - 0x%x\n", fm.bit_3.is_TitleGain, fm.bit_3.is_TitleGain); + printf ("\t-- BIT 4 -----------------------------------------\n"); + printf ("\tis_AlbumPeak %4d - 0x%x\n", fm.bit_4.is_AlbumPeak, fm.bit_4.is_AlbumPeak); + printf ("\tis_AlbumGain %4d - 0x%x\n", fm.bit_4.is_AlbumGain, fm.bit_4.is_AlbumGain); + printf ("\t-- BIT 5 -----------------------------------------\n"); + printf ("\tis_unusued %4d - 0x%x\n", fm.bit_5.is_unusued, fm.bit_5.is_unusued); + printf ("\tis_Safely %4d - 0x%x\n", fm.bit_5.is_Safely, fm.bit_5.is_Safely); + printf ("\tis_LastFrameLength %4d - 0x%x\n", fm.bit_5.is_LastFrameLength, fm.bit_5.is_LastFrameLength); + printf ("\tis_TrueGapless %4d - 0x%x\n", fm.bit_5.is_TrueGapless, fm.bit_5.is_TrueGapless); + printf ("\t-- BIT 6 -----------------------------------------\n"); + printf ("\tis_EncoderVersion %4d - 0x%x\n", fm.bit_6.is_EncoderVersion, fm.bit_6.is_EncoderVersion); +} + + +/* +*--------------------------------------------------------------------------- +* GET HEADER +*--------------------------------------------------------------------------- +*/ + +INFO_MPC *tagsmpc_remove_info (INFO_MPC *info) +{ + if (info) { + + info->tags = (TAGS *)tags_remove (info->tags); + + free (info); + info = NULL; + } + return ((INFO_MPC *)NULL); +} + +INFO_MPC *tagsmpc_get_info( INFO *p_info ) +{ + INFO_MPC *ptrinfo = NULL; + TagLib_File *file; + TagLib_Tag *tag; + + ptrinfo = (INFO_MPC *)malloc (sizeof (INFO_MPC)); + if (ptrinfo == NULL) return (NULL); + ptrinfo->tags = (TAGS *)tags_alloc (); + + if ((file = taglib_file_new ( p_info->path_name_file ))) { + + taglib_set_strings_unicode(FALSE); + tag = taglib_file_tag(file); + + ptrinfo->tags->Title = C_strdup (taglib_tag_title(tag)); + ptrinfo->tags->Artist = C_strdup (taglib_tag_artist(tag)); + ptrinfo->tags->Album = C_strdup (taglib_tag_album(tag)); + ptrinfo->tags->IntYear = taglib_tag_year(tag); + ptrinfo->tags->Year = C_strdup_printf ("%d", ptrinfo->tags->IntYear); + ptrinfo->tags->Comment = C_strdup (taglib_tag_comment(tag)); + ptrinfo->tags->IntNumber = taglib_tag_track(tag); + ptrinfo->tags->Number = C_strdup_printf ("%d", ptrinfo->tags->IntNumber); + ptrinfo->tags->Genre = C_strdup (taglib_tag_genre(tag)); + ptrinfo->tags->IntGenre = tags_get_genre_by_value (ptrinfo->tags->Genre); + taglib_tag_free_strings(); + taglib_file_free (file); + } + else { + tags_complementation( ptrinfo->tags, p_info->path_name_file ); + } + + return ((INFO_MPC *)ptrinfo); +} + + diff -Nru xcfa-4.3.8/src_cli/tags_ogg.c xcfa-5.0.1/src_cli/tags_ogg.c --- xcfa-4.3.8/src_cli/tags_ogg.c 1970-01-01 00:00:00.000000000 +0000 +++ xcfa-5.0.1/src_cli/tags_ogg.c 2014-12-05 11:15:41.000000000 +0000 @@ -0,0 +1,138 @@ +/* + * file : src/tags_ogg.c + * project : xcfa_cli + * copyright : (C) 2014 by BULIN Claude + * + * This file is part of xcfa_cli project + * + * xcfa_cli is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; version 3. + * + * xcfa_cli is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 + * USA + */ + + +#ifdef HAVE_CONFIG_H + #include "../config.h" +#endif + +#include +#include +#include +#include +#include +#include +#include +#include + +#include "global.h" +#include "tags.h" +#include "get_info.h" + + +/* +*--------------------------------------------------------------------------- +* VARIABLES +*--------------------------------------------------------------------------- +*/ + + +/* +*--------------------------------------------------------------------------- +* GET HEADER +*--------------------------------------------------------------------------- +*/ +INFO_OGG *tagsogg_remove_info (INFO_OGG *info) +{ + if (info) { + if (NULL != info->Channels) { free (info->Channels); info->Channels = NULL; } + if (NULL != info->Rate) { free (info->Rate); info->Rate = NULL; } + if (NULL != info->Nominal_bitrate) { free (info->Nominal_bitrate); info->Nominal_bitrate = NULL; } + if (NULL != info->time) { free (info->time); info->time = NULL; } + if (NULL != info->size) { free (info->size); info->size = NULL; } + + info->tags = (TAGS *)tags_remove (info->tags); + + free (info); + info = NULL; + } + return ((INFO_OGG *)NULL); +} + + +void tags_ogprintf( INFO_OGG *ptrinfo ) +{ + printf( "\tChannels = %s\n", ptrinfo->Channels ); + printf( "\tRate = %s\n", ptrinfo->Rate ); + printf( "\tNominal_bitrate = %s\n", ptrinfo->Nominal_bitrate ); + printf( "\ttime = %s\n", ptrinfo->time ); + printf( "\tSecTime = %d\n", ptrinfo->SecTime ); + printf( "\tsize = %s\n", ptrinfo->size ); + printf( "\tLevelDbfs = %d\n", ptrinfo->LevelDbfs ); +} + + +INFO_OGG *tagsogg_get_info( INFO *p_info ) +{ + TagLib_File *file; + TagLib_Tag *tag; + INFO_OGG *ptrinfo = NULL; + const TagLib_AudioProperties *properties; + int m; + int s; + int sec; + + ptrinfo = (INFO_OGG *)malloc (sizeof (INFO_OGG)); + if (ptrinfo == NULL) return (NULL); + ptrinfo->tags = (TAGS *)tags_alloc (); + + if ((file = taglib_file_new ( p_info->path_name_file ))) { + + taglib_set_strings_unicode(FALSE); + tag = taglib_file_tag(file); + properties = taglib_file_audioproperties(file); + + ptrinfo->tags->Title = C_strdup (taglib_tag_title(tag)); + ptrinfo->tags->Artist = C_strdup (taglib_tag_artist(tag)); + ptrinfo->tags->Album = C_strdup (taglib_tag_album(tag)); + ptrinfo->tags->IntYear = taglib_tag_year(tag); + ptrinfo->tags->Year = C_strdup_printf ("%d", ptrinfo->tags->IntYear); + ptrinfo->tags->Comment = C_strdup (taglib_tag_comment(tag)); + ptrinfo->tags->IntNumber = taglib_tag_track(tag); + ptrinfo->tags->Number = C_strdup_printf ("%d", ptrinfo->tags->IntNumber); + ptrinfo->tags->Genre = C_strdup (taglib_tag_genre(tag)); + ptrinfo->tags->IntGenre = tags_get_genre_by_value (ptrinfo->tags->Genre); + + ptrinfo->Channels = C_strdup_printf ("%d", taglib_audioproperties_channels (properties)); + ptrinfo->Rate = C_strdup_printf ("%d", taglib_audioproperties_samplerate (properties)); + ptrinfo->Nominal_bitrate = C_strdup_printf ("%d", taglib_audioproperties_bitrate (properties)); + + ptrinfo->SecTime = + sec = taglib_audioproperties_length(properties); + s = sec % 60; sec /= 60; + m = sec % 60; sec /= 60; + if (sec > 0) ptrinfo->time = C_strdup_printf ("%02d:%02d:%02d", sec, m, s); + else ptrinfo->time = C_strdup_printf ("00:%02d:%02d", m, s); + + ptrinfo->size = C_strdup_printf ("%d Ko", (int)utils_get_size_file ( p_info->path_name_file ) / 1024); + + taglib_tag_free_strings(); + taglib_file_free (file); + } + else { + tags_complementation( ptrinfo->tags, p_info->path_name_file ); + } + ptrinfo->LevelDbfs = GetInfo_level_get_from( FILE_IS_OGG, p_info->path_name_file ); + + return ((INFO_OGG *)ptrinfo); +} + diff -Nru xcfa-4.3.8/src_cli/tags_rm.c xcfa-5.0.1/src_cli/tags_rm.c --- xcfa-4.3.8/src_cli/tags_rm.c 1970-01-01 00:00:00.000000000 +0000 +++ xcfa-5.0.1/src_cli/tags_rm.c 2014-12-05 11:15:41.000000000 +0000 @@ -0,0 +1,85 @@ +/* + * file : src/tags_rm.c + * project : xcfa_cli + * copyright : (C) 2014 by BULIN Claude + * + * This file is part of xcfa_cli project + * + * xcfa_cli is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; version 3. + * + * xcfa_cli is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 + * USA + */ + + +#ifdef HAVE_CONFIG_H + #include "../config.h" +#endif + +#include +#include +#include +#include +#include +#include +#include + +#include "global.h" +#include "tags.h" +#include + + + + +/* +*--------------------------------------------------------------------------- +* REMOVE HEADER +*--------------------------------------------------------------------------- +*/ +INFO_RM *tagsrm_remove_info (INFO_RM *info) +{ + if (info) { + + info->tags = (TAGS *)tags_remove (info->tags); + + free (info); + info = NULL; + } + return ((INFO_RM *)NULL); +} + +/* +*--------------------------------------------------------------------------- +* GET HEADER +*--------------------------------------------------------------------------- +*/ +INFO_RM *tagsrm_get_info( INFO *p_info ) +{ + INFO_RM *ptrinfo = NULL; + + ptrinfo = (INFO_RM *)malloc (sizeof (INFO_RM)); + if (ptrinfo == NULL) return (NULL); + + ptrinfo->tags = (TAGS *)tags_alloc (); + tags_complementation( ptrinfo->tags, p_info->path_name_file ); + + return ((INFO_RM *)ptrinfo); +} + + + + + + + + + diff -Nru xcfa-4.3.8/src_cli/tags_shn.c xcfa-5.0.1/src_cli/tags_shn.c --- xcfa-4.3.8/src_cli/tags_shn.c 1970-01-01 00:00:00.000000000 +0000 +++ xcfa-5.0.1/src_cli/tags_shn.c 2014-12-05 11:15:41.000000000 +0000 @@ -0,0 +1,96 @@ +/* + * file : src/tags_shn.c + * project : xcfa_cli + * copyright : (C) 2014 by BULIN Claude + * + * This file is part of xcfa_cli project + * + * xcfa_cli is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; version 3. + * + * xcfa_cli is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 + * USA + */ + + +#ifdef HAVE_CONFIG_H + #include "../config.h" +#endif + +#include +#include +#include +#include +#include +#include +#include + +#include "global.h" +#include "tags.h" +#include +#include "get_info.h" + + + + + +/* +*--------------------------------------------------------------------------- +* REMOVE HEADER +*--------------------------------------------------------------------------- +*/ +INFO_SHN *tagsshn_remove_info (INFO_SHN *info) +{ + if (info) { + if (NULL != info->time) { free (info->time); info->time = NULL; } + if (NULL != info->size) { free (info->size);info->size = NULL; } + + info->tags = (TAGS *)tags_remove (info->tags); + + free (info); + info = NULL; + } + return ((INFO_SHN *)NULL); +} + + +void tags_shn_print( INFO_SHN *ptrinfo ) +{ + printf( "time = %s\n", ptrinfo->time ); + printf( "SecTime = %d\n", ptrinfo->SecTime ); + printf( "size = %s\n", ptrinfo->size ); +} + + +/* +*--------------------------------------------------------------------------- +* GET HEADER +*--------------------------------------------------------------------------- +*/ +INFO_SHN *tagsshn_get_info( INFO *p_info ) +{ + INFO_SHN *ptrinfo = NULL; + SHNTAG *ShnTag = GetInfo_shntool ( p_info->path_name_file ); + + ptrinfo = (INFO_SHN *)malloc (sizeof (INFO_SHN)); + if (ptrinfo == NULL) return (NULL); + ptrinfo->tags = (TAGS *)tags_alloc (); + + ptrinfo->SecTime = ShnTag->SecTime; + ptrinfo->time = C_strdup (ShnTag->time); + ptrinfo->size = C_strdup (ShnTag->size); + + tags_complementation( ptrinfo->tags, p_info->path_name_file ); + + ShnTag = GetInfo_free_shntool (ShnTag); + + return ((INFO_SHN *)ptrinfo); +} diff -Nru xcfa-4.3.8/src_cli/tags_wav.c xcfa-5.0.1/src_cli/tags_wav.c --- xcfa-4.3.8/src_cli/tags_wav.c 1970-01-01 00:00:00.000000000 +0000 +++ xcfa-5.0.1/src_cli/tags_wav.c 2014-12-07 10:20:32.000000000 +0000 @@ -0,0 +1,368 @@ +/* + * file : src/tags_wav.c + * project : xcfa_cli + * copyright : (C) 2014 by BULIN Claude + * + * This file is part of xcfa_cli project + * + * xcfa_cli is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; version 3. + * + * xcfa_cli is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 + * USA + */ + + +#ifdef HAVE_CONFIG_H + #include "../config.h" +#endif + +#include +#include +#include +#include +#include +#include + +#include "global.h" +#include "tags.h" +#include "get_info.h" + + +// +// +void tagswav_close_file( WAVE *WaveHeader ) +{ + if (NULL != WaveHeader->file) { + fclose(WaveHeader->file); + WaveHeader->file = NULL; + } +} +// +// +void tagswav_init (WAVE *WaveHeader) +{ + WaveHeader->RIFF.ChunkID [ 0 ] = '\0'; + WaveHeader->RIFF.ChunkSize = 0; + WaveHeader->RIFF.Format [ 0 ] = '\0'; + WaveHeader->FMT.Subchunk1ID [ 0 ] = '\0'; + WaveHeader->FMT.Subchunk1Size = 0; + WaveHeader->FMT.AudioFormat = 0; + WaveHeader->FMT.NumChannels = 0; + WaveHeader->FMT.SampleRate = 0; + WaveHeader->FMT.ByteRate = 0; + WaveHeader->FMT.Blockalign = 0; + WaveHeader->FMT.BitsPerSample = 0; + WaveHeader->DATA.Subchunk2ID [ 0 ] = '\0'; + WaveHeader->DATA.Subchunk2Size = 0; + WaveHeader->DATA.data = NULL; + WaveHeader->file = NULL; + WaveHeader->TagWavIsFmtBext = TAG_WAVE_IS_NONE; +} +// +// +void tagswav_print_header( char *p_PathNameFile ) +{ + WAVE WaveHeader; + if (TRUE == tagswav_read_file( p_PathNameFile, &WaveHeader )) { + //printf ("\n" ); + //printf ("\t%s\n", p_PathNameFile ); + printf ("\tChunkID = %c%c%c%c\n", WaveHeader.RIFF.ChunkID [ 0 ], WaveHeader.RIFF.ChunkID [ 1 ], WaveHeader.RIFF.ChunkID [ 2 ], WaveHeader.RIFF.ChunkID [ 3 ] ); + printf ("\tChunkSize = %d\n", WaveHeader.RIFF.ChunkSize); + printf ("\tFormat = %c%c%c%c\n", WaveHeader.RIFF.Format [ 0 ], WaveHeader.RIFF.Format [ 1 ], WaveHeader.RIFF.Format [ 2 ], WaveHeader.RIFF.Format [ 3 ] ); + printf( "\t%s\n", (WaveHeader.TagWavIsFmtBext == TAG_WAVE_IS_FMT) ? "[ 'fmt ' ]" : "[ 'bext' | 'qlty' | 'levl' | 'link' | 'axml' ]" ); + printf ("\tSubchunk1ID = %c%c%c%c\n", WaveHeader.FMT.Subchunk1ID [ 0 ], WaveHeader.FMT.Subchunk1ID [ 1 ], WaveHeader.FMT.Subchunk1ID [ 2 ], WaveHeader.FMT.Subchunk1ID [ 3 ] ); + printf ("\tSubchunk1Size = %d\n", WaveHeader.FMT.Subchunk1Size); + printf ("\tAudioFormat = %d\n", WaveHeader.FMT.AudioFormat); + printf ("\tNumChannels = %d\n", WaveHeader.FMT.NumChannels); + printf ("\tSampleRate = %d\n", WaveHeader.FMT.SampleRate); + printf ("\tByteRate = %d\n", WaveHeader.FMT.ByteRate); + printf ("\tBlockalign = %d\n", WaveHeader.FMT.Blockalign); + printf ("\tBitsPerSample = %d\n", WaveHeader.FMT.BitsPerSample); + printf ("\tSubchunk2ID = %c%c%c%c\n", WaveHeader.DATA.Subchunk2ID [ 0 ], WaveHeader.DATA.Subchunk2ID [ 1 ], WaveHeader.DATA.Subchunk2ID [ 2 ], WaveHeader.DATA.Subchunk2ID [ 3 ] ); + printf ("\tSubchunk2Size = %d\n", WaveHeader.DATA.Subchunk2Size); + tagswav_close_file( &WaveHeader ); + } +} +// +// +#define BLOCK_SIZE 2352 +// +// +int tagswav_get_pos( char *p_PathNameFile, char p_1, char p_2, char p_3, char p_4 ) +{ + FILE *file = NULL; + unsigned char devbuf[ BLOCK_SIZE +10 ]; + int n_read; + int tt_read = 0; + int cpt; + + if( NULL != (file = fopen( p_PathNameFile, "rb" ))) { + + do { + // LECTURE D UN BLOCK + n_read = fread( devbuf, BLOCK_SIZE, 1, file ); + + // RECHERCHE DE: data + for( cpt = 0; cpt < BLOCK_SIZE; cpt ++ ) { + if( devbuf [ cpt +0 ] == p_1 && devbuf [ cpt +1 ] == p_2 && devbuf [ cpt +2 ] == p_3 && devbuf [ cpt +3 ] == p_4 ) { + return( tt_read + cpt ); + } + } + + // VARIABLE TOTAL OCTECTS LU MOINS 8 AU CAS OU data SOIS COUPE EN FIN DE BLOCK + tt_read += BLOCK_SIZE; + tt_read -= 8; + + // POINTEUR AU DEBUT DU FICHIER + rewind( file ); + + // POINTEUR DE LECTURE SUR tt_read + fseek( file, tt_read, SEEK_CUR ); + + } while( n_read > 0 ); + + fclose( file ); + } + + return( -1 ); +} +// +// MODIF DU 02 MAI 2013 A LA DEMANDE DE CHRISTOPHE MARILLAT POUR TENIR COMPTE DE : Broadcast Wave Format +// VERSION DE TEST: +// xcfa-4.3.4~beta0 +// xcfa-4.3.4~beta1 +// xcfa_cli +/* + +broadcast_audio_extension typedef struct { + DWORD ckID; // (broadcastextension)ckID=bext. + DWORD ckSize; // size of extension chunk + BYTE ckData[ckSize]; // data of the chunk +} + + +Quality_chunk typedef struct { + DWORD ckID; // (quality_chunk) ckID='qlty' + DWORD ckSize; // size of quality chunk + BYTE ckData[ckSize]; // data of the chunk +} + + +typedef struct peak_envelope +{ + CHAR ckID[4]; // {'l','e','v','l'} + DWORD ckSize; // size of chunk + DWORD dwVersion; // version information + DWORD dwFormat; // format of a peak point + // 1 = unsigned char + // 2 = unsigned short + DWORD dwPointsPerValue; // 1 = only positive peak point + // 2 = positive AND negative peak point + DWORD dwBlockSize; // frames per value + DWORD dwPeakChannels; // number of channels + DWORD dwNumPeakFrames; // number of peak frames + DWORD dwPosPeakOfPeaks; // audio sample frame index + // or 0xFFFFFFFF if unknown + DWORD dwOffsetToPeaks; // should usually be equal to the size of this header, but could also be higher + CHAR strTimestamp[28]; // ASCII: time stamp of the peak data + CHAR reserved[60]; // reserved set to 0x00 + CHAR peak_envelope_data[] // the peak point data +} +levl_chunk; + + +typedef struct link +{ + CHAR CkID[4]; // 'link' + DWORD CkSize; // size of chunk + CHAR XmlData[ ]; // text data in XML +} +link_chunk; + + +typedef struct axml +{ + CHAR ckID[4]; // {'a','x','m','l'} + DWORD ckSize; // size of chunk + CHAR xmlData[ ]; // text data in XML +} +axml_chunk; + +*/ +C_BOOL tagswav_read_file (char *wave_file, WAVE *WaveHeader) +{ + int seek_fmt = -1; + int seek_data = -1; + int n_read; + + seek_fmt = tagswav_get_pos( wave_file, 'f', 'm', 't', ' ' ); + seek_data = tagswav_get_pos( wave_file, 'd', 'a', 't', 'a' ); + if( -1 == seek_fmt || -1 == seek_data ) return( FALSE ); + + if( NULL == ( WaveHeader->file = fopen( wave_file, "rb" ))) return (FALSE); + + // LECTURE ENTETE + n_read = fread( &WaveHeader->RIFF.ChunkID, 4, 1, WaveHeader->file ); // RIFF + n_read = fread( &WaveHeader->RIFF.ChunkSize, 4, 1, WaveHeader->file ); // taille du fichier entier en octets (sans compter les 8 octets de ce champ et le champ précédent + n_read = fread( &WaveHeader->RIFF.Format, 4, 1, WaveHeader->file ); // WAVE + n_read = fread( &WaveHeader->FMT.Subchunk1ID, 4, 1, WaveHeader->file ); // 'fmt ' | 'bext' + + if( 0 == strncmp( WaveHeader->FMT.Subchunk1ID, "fmt ", 4 )) { + WaveHeader->TagWavIsFmtBext = TAG_WAVE_IS_FMT; + } + else { + WaveHeader->TagWavIsFmtBext = TAG_WAVE_IS_BEXT; + n_read = fseek( WaveHeader->file, seek_fmt + 4, SEEK_SET ); + } + + // FMT + n_read = fread( &WaveHeader->FMT.Subchunk1Size, 4, 1, WaveHeader->file ); // taille en octet des données à suivre + n_read = fread( &WaveHeader->FMT.AudioFormat, 2, 1, WaveHeader->file ); // format de compression (une valeur autre que 1 indique une compression) + n_read = fread( &WaveHeader->FMT.NumChannels, 2, 1, WaveHeader->file ); // nombre de canaux + n_read = fread( &WaveHeader->FMT.SampleRate, 4, 1, WaveHeader->file ); // fréquence d'échantillonage (nombre d'échantillons par secondes) + n_read = fread( &WaveHeader->FMT.ByteRate, 4, 1, WaveHeader->file ); // nombre d'octects par secondes + n_read = fread( &WaveHeader->FMT.Blockalign, 2, 1, WaveHeader->file ); // nombre d'octects pour coder un échantillon + n_read = fread( &WaveHeader->FMT.BitsPerSample, 2, 1, WaveHeader->file ); // nombre de bits pour coder un échantillon + + // DATA + n_read = fseek( WaveHeader->file, seek_data, SEEK_SET ); + n_read = fread( &WaveHeader->DATA.Subchunk2ID, 4, 1, WaveHeader->file ); + n_read = fread( &WaveHeader->DATA.Subchunk2Size, 4, 1, WaveHeader->file ); + + if( n_read ); + // tagswav_print_header( wave_file, WaveHeader ); + + return( TRUE ); + +} +// +// +INFO_WAV *tagswav_remove_info (INFO_WAV *info) +{ + if (info) { + if (NULL != info->time) { free (info->time); info->time = NULL; } + if (NULL != info->hertz) { free (info->hertz); info->hertz = NULL; } + if (NULL != info->voie) { free (info->voie); info->voie = NULL; } + if (NULL != info->bits) { free (info->bits); info->bits = NULL; } + + info->tags = (TAGS *)tags_remove (info->tags); + + free (info); + info = NULL; + } + return ((INFO_WAV *)NULL); +} +// +// +C_BOOL tagswav_file_GetBitrate (char *namefile, int *Channels, int *Hertz, int *Bits) +{ + WAVE WaveHeader; + + if (TRUE == tagswav_read_file (namefile, &WaveHeader)) { + tagswav_close_file( &WaveHeader ); + if( NULL != Channels ) *Channels = WaveHeader.FMT.NumChannels; + if( NULL != Hertz ) *Hertz = WaveHeader.FMT.SampleRate; + if( NULL != Bits ) *Bits = WaveHeader.FMT.BitsPerSample; + + return ((WaveHeader.FMT.NumChannels != 2 || WaveHeader.FMT.SampleRate != 44100 || WaveHeader.FMT.BitsPerSample != 16) ? TRUE : FALSE); + } + return (FALSE); +} + + +void tags_wav_print( INFO_WAV *ptrinfo ) +{ + printf( "\ttime = %s\n", ptrinfo->time ); + printf( "\tSecTime = %d\n", ptrinfo->SecTime ); + printf( "\thertz = %s\n", ptrinfo->hertz ); + printf( "\tvoie = %s\n", ptrinfo->voie ); + printf( "\tbits = %s\n", ptrinfo->bits ); + printf( "\tLevelDbfs = %d\n", ptrinfo->LevelDbfs ); +} + + +// +// +INFO_WAV *tagswav_get_info (INFO *p_info) +{ + WAVE WaveHeader; + INFO_WAV *ptrinfo = NULL; + int m; + int s; + int sec; + C_BOOL BoolReadWavFile; + + // PRINT_FUNC_LF(); + + ptrinfo = (INFO_WAV *)malloc (sizeof (INFO_WAV)); + if (NULL == ptrinfo) { + printf ("!---------------------------------------\n"); + PRINT_FUNC_LF(); + printf ("!---------------------------------------\n"); + printf ("! PTRINFO EST NULL :(\n"); + printf ("!---------------------------------------\n"); + return (NULL); + } + + BoolReadWavFile = tagswav_read_file (p_info->path_name_file, &WaveHeader); + tagswav_close_file( &WaveHeader ); + + if (FALSE == BoolReadWavFile) { + free (ptrinfo); + PRINT("EXIT"); + ptrinfo = NULL; + return (NULL); + } + if (WaveHeader.DATA.Subchunk2Size == 0 || WaveHeader.FMT.ByteRate == 0) { + free (ptrinfo); + ptrinfo = NULL; + printf ("! ---\n"); + printf ("! MAUVAIS ENTETE DU FICHIER: %s\n", p_info->path_name_file); + printf ("! ---\n\n"); + return (NULL); + } + + // calcul de la duree + sec = WaveHeader.DATA.Subchunk2Size / WaveHeader.FMT.ByteRate; + ptrinfo->SecTime = sec; + + s = sec % 60; sec /= 60; + m = sec % 60; sec /= 60; + if (sec > 0) ptrinfo->time = C_strdup_printf ("%02d:%02d:%02d", sec, m, s); + else ptrinfo->time = C_strdup_printf ("00:%02d:%02d", m, s); + + // 'fmt ', 'bext', 'qlty', 'levl', 'link','axml' + ptrinfo->BoolBwf = (WaveHeader.TagWavIsFmtBext == TAG_WAVE_IS_FMT) ? FALSE : TRUE; + + // mode + ptrinfo->voie = C_strdup_printf ("%d", WaveHeader.FMT.NumChannels); + + // freq + ptrinfo->hertz = C_strdup_printf ("%d", WaveHeader.FMT.SampleRate); + + // format + ptrinfo->bits = C_strdup_printf ("%d", WaveHeader.FMT.BitsPerSample); + + ptrinfo->tags = (TAGS *)tags_alloc (); + tags_complementation( ptrinfo->tags, p_info->path_name_file ); + + ptrinfo->LevelDbfs = GetInfo_level_get_from( FILE_IS_WAV, p_info->path_name_file ); + + return( (INFO_WAV *)ptrinfo ); +} + + + + + + + diff -Nru xcfa-4.3.8/src_cli/tags_wavpack.c xcfa-5.0.1/src_cli/tags_wavpack.c --- xcfa-4.3.8/src_cli/tags_wavpack.c 1970-01-01 00:00:00.000000000 +0000 +++ xcfa-5.0.1/src_cli/tags_wavpack.c 2014-12-07 10:20:36.000000000 +0000 @@ -0,0 +1,134 @@ +/* + * file : src/tags_wavpack.c + * project : xcfa_cli + * copyright : (C) 2014 by BULIN Claude + * + * This file is part of xcfa_cli project + * + * xcfa_cli is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; version 3. + * + * xcfa_cli is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 + * USA + */ + + +#ifdef HAVE_CONFIG_H + #include "../config.h" +#endif + +#include +#include +#include +#include +#include +#include + +#include "global.h" +#include "tags.h" +#include +#include "get_info.h" + + +/* +*--------------------------------------------------------------------------- +* VARIABLES +*--------------------------------------------------------------------------- +*/ + +/* +typedef struct { + char ckID [4]; "wvpk" + uint32_t ckSize; size of entire block (minus 8, of course) + uint16_t version; 0x402 to 0x410 are currently valid for decode + uchar track_no; track number (0 if not used, like now) + uchar index_no; track sub-index (0 if not used, like now) + uint32_t total_samples; total samples for entire file, but this is + only valid if block_index == 0 and a value of + -1 indicates unknown length + uint32_t block_index; index of first sample in block relative to + beginning of file (normally this would start + at 0 for the first block) + uint32_t block_samples; number of samples in this block (0 = no audio) + uint32_t flags; various flags for id and decoding + uint32_t crc; crc for actual decoded data +} WavpackHeader; +*/ + +/* +typedef struct { + char id [ 3 ]; + char title [ 30 ]; + char interprete [ 30 ]; + char album [ 30 ]; + char annee [ 4 ]; + char comment [ 30 ]; + char genre [ 1 ]; +} TAGS_WAVPACK; +*/ + + +/* +*--------------------------------------------------------------------------- +* GET HEADER +*--------------------------------------------------------------------------- +*/ + + +INFO_WAVPACK *tagswavpack_remove_info (INFO_WAVPACK *info) +{ + if (info) { + if (NULL != info->time) { free (info->time); info->time = NULL; } + if (NULL != info->size) { free (info->size); info->size = NULL; } + + info->tags = (TAGS *)tags_remove (info->tags); + + free (info); + info = NULL; + } + return ((INFO_WAVPACK *)NULL); +} + + +void tags_wavpack_print( INFO_WAVPACK *ptrinfo ) +{ + printf( "time = %s\n", ptrinfo->time ); + printf( "SecTime = %d\n", ptrinfo->SecTime ); + printf( "size = %s\n", ptrinfo->size ); +} + + +INFO_WAVPACK *tagswavpack_get_info( INFO *p_info ) +{ + INFO_WAVPACK *ptrinfo = NULL; + SHNTAG *ShnTag = GetInfo_shntool ( p_info->path_name_file ); + int m; + int s; + int sec; + + ptrinfo = (INFO_WAVPACK *)malloc (sizeof (INFO_WAVPACK)); + if (ptrinfo == NULL) return (NULL); + ptrinfo->tags = (TAGS *)tags_alloc (); + + ptrinfo->size = C_strdup (ShnTag->size); + + ptrinfo->SecTime = + sec = ShnTag->SecTime; + s = sec % 60; sec /= 60; + m = sec % 60; sec /= 60; + if (sec > 0) ptrinfo->time = C_strdup_printf ("%02d:%02d:%02d", sec, m, s); + else ptrinfo->time = C_strdup_printf ("00:%02d:%02d", m, s); + + tags_complementation( ptrinfo->tags, p_info->path_name_file ); + ShnTag = GetInfo_free_shntool (ShnTag); + + return( (INFO_WAVPACK *)ptrinfo ); +} diff -Nru xcfa-4.3.8/src_cli/tags_wma.c xcfa-5.0.1/src_cli/tags_wma.c --- xcfa-4.3.8/src_cli/tags_wma.c 1970-01-01 00:00:00.000000000 +0000 +++ xcfa-5.0.1/src_cli/tags_wma.c 2014-12-07 10:20:39.000000000 +0000 @@ -0,0 +1,90 @@ +/* + * file : src/tags_wma.c + * project : xcfa_cli + * copyright : (C) 2014 by BULIN Claude + * + * This file is part of xcfa_cli project + * + * xcfa_cli is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; version 3. + * + * xcfa_cli is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 + * USA + */ + + +#ifdef HAVE_CONFIG_H + #include "../config.h" +#endif + +#include +#include +#include +#include +#include +#include + +#include "global.h" +#include "tags.h" +#include + + +/* +*--------------------------------------------------------------------------- +* VARIABLES +*--------------------------------------------------------------------------- +*/ + + + +/* +*--------------------------------------------------------------------------- +* FILE IS WMA ? +*--------------------------------------------------------------------------- +*/ + + +/* +*--------------------------------------------------------------------------- +* REMOVE HEADER +*--------------------------------------------------------------------------- +*/ +INFO_WMA *tagswma_remove_info (INFO_WMA *info) +{ + if (info) { + + info->tags = (TAGS *)tags_remove (info->tags); + + free (info); + info = NULL; + } + return ((INFO_WMA *)NULL); +} + + +/* +*--------------------------------------------------------------------------- +* GET HEADER +*--------------------------------------------------------------------------- +*/ +INFO_WMA *tagswma_get_info( INFO *p_info ) +{ + INFO_WMA *ptrinfo = NULL; + + ptrinfo = (INFO_WMA *)malloc (sizeof (INFO_WMA)); + if (ptrinfo == NULL) return (NULL); + + ptrinfo->tags = (TAGS *)tags_alloc (); + tags_complementation( ptrinfo->tags, p_info->path_name_file ); + + return ((INFO_WMA *)ptrinfo); +} + diff -Nru xcfa-4.3.8/src_cli/utils.c xcfa-5.0.1/src_cli/utils.c --- xcfa-4.3.8/src_cli/utils.c 1970-01-01 00:00:00.000000000 +0000 +++ xcfa-5.0.1/src_cli/utils.c 2014-12-22 19:37:51.000000000 +0000 @@ -0,0 +1,110 @@ +/* + * file : src/utils.c + * project : xcfa_cli + * copyright : (C) 2014 by BULIN Claude + * + * This file is part of xcfa_cli project + * + * xcfa_cli is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; version 3. + * + * xcfa_cli is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 + * USA + */ + + +#include +#include +#include +#include + +#include "global.h" + + +// Renvoie la taille d'un fichier en octets +// Returns the size of a file in bytes +size_t utils_get_size_file( char *PathName ) +{ + FILE *fp; + size_t size = 0; + + if ((fp = fopen( PathName, "r" ))) { + fseek( fp, 0, SEEK_END ); + size = ftell( fp ); + fclose( fp ); + } + return( size ); +} +// Création d'un dossier temporaire +// Create a temporary folder +// FIXED +// Mon, 20 Jan 2014 16:33:36 +0100 +// Plusieurs instances de XCFA peuvent être activées sans collision +// Multiple instances of XCFA can be activated without collision +char *utils_create_rep( char *path_name_rep ) +{ + char *PathTest = NULL; + char *Path = NULL; + char *Ptr = NULL; + int NumPath = 0; + + Path = C_strdup( path_name_rep ); + if( NULL != (Ptr = strrchr( Path, '/' ))) + if( *(Ptr + 1) == '\0' ) + *Ptr = '\0'; + PathTest = C_strdup( Path ); + + while( TRUE ) { + if( TRUE == C_dir_test( PathTest ) ) { + free( PathTest ); + PathTest = NULL; + PathTest = C_strdup_printf( "%s_%d/", Path, NumPath ); + NumPath ++; + } + else { + C_mkdir_with_parents( PathTest ); + free( Path ); + Path = NULL; + break; + } + } + return( (char *)PathTest ); +} +// Suppression d'un dossier temporaire +// Delete a temporary folder +char *utils_remove_temporary_rep( char *path_tmprep ) +{ + if( NULL != path_tmprep ) { + C_rmdir( path_tmprep ); + free( path_tmprep ); + path_tmprep = NULL; + } + return ((char *)NULL); +} +// Renvoie le chemin de destination +// Returns the destination path +char *utils_get_dir_dest( INFO *p_Info ) +{ + char *OutputDir = NULL; + + if( TRUE == Detail.BoolExtract2Src ) { + OutputDir = C_strdup( p_Info->path ); + } + else { + if( *Detail.OutputDir == '/' ) { + OutputDir = C_strdup( Detail.OutputDir ); + } + else { + OutputDir = C_strdup_printf( "%s%s", p_Info->path, Detail.OutputDir ); + } + } + return( OutputDir ); +} \ No newline at end of file diff -Nru xcfa-4.3.8/src_cli/wav.c xcfa-5.0.1/src_cli/wav.c --- xcfa-4.3.8/src_cli/wav.c 1970-01-01 00:00:00.000000000 +0000 +++ xcfa-5.0.1/src_cli/wav.c 2014-12-11 21:14:40.000000000 +0000 @@ -0,0 +1,120 @@ +/* + * file : src/wav.c + * project : xcfa_cli + * copyright : (C) 2014 by BULIN Claude + * + * This file is part of xcfa_cli project + * + * xcfa_cli is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; version 3. + * + * xcfa_cli is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 + * USA + */ + + + +#ifdef HAVE_CONFIG_H + #include "../config.h" +#endif + +#include +#include +#include + +#include "global.h" +#include "conv.h" +#include "tags.h" + + + +// +// Changing the settings of a WAV file +// --frequency -f Changing the frequency: 8000, 22000, 32000, 44056, 44100, 48000, 88200, 96000 or other +// --track -t Changing the number of tracks: 1, 2, 4, 6 +// --quantification -q Changing the quantification: 8, 16, 24, 32, 64 +// +void wav_change_setting( char *p_pathnamefile, int p_frequency, int p_track, int p_quantification ) +{ + char **PtrTabArgs = NULL; + int pos; + int Channels; + int Hertz; + int Bits; + char *NewName = C_strdup_printf( "%s.setting.wav", p_pathnamefile ); + + printf("\n!--- S E T T I N G P A R A M E T E R S W A V ---------!\n"); + if( p_frequency <= 0 && p_frequency > 96000 ) p_frequency = 44100; + if( p_track != 1 && p_track != 2 && p_track != 4 && p_track != 6 ) p_track = 2; + if( p_quantification != 8 && p_quantification != 16 && p_quantification != 24 && p_quantification != 32 && p_quantification != 64 ) p_quantification = 16; + + PtrTabArgs = conv_AllocTabArgs( &pos ); + + PtrTabArgs [ pos++ ] = C_strdup( "mplayer" ); + PtrTabArgs [ pos++ ] = C_strdup( "-nojoystick" ); + PtrTabArgs [ pos++ ] = C_strdup( "-nolirc" ); + PtrTabArgs [ pos++ ] = C_strdup( p_pathnamefile ); + PtrTabArgs [ pos++ ] = C_strdup( "-ao" ); + PtrTabArgs [ pos++ ] = C_strdup( "pcm" ); + PtrTabArgs [ pos++ ] = C_strdup( "-ao" ); + PtrTabArgs [ pos++ ] = C_strdup_printf( "pcm:file=%s", NewName ); + PtrTabArgs [ pos++ ] = C_strdup( "-af" ); + PtrTabArgs [ pos++ ] = C_strdup_printf( "channels=%d", p_track ); + PtrTabArgs [ pos++ ] = C_strdup( "-srate" ); + PtrTabArgs [ pos++ ] = C_strdup_printf( "%d", p_frequency ); + PtrTabArgs [ pos++ ] = NULL; + conv_to_convert( PtrTabArgs, MPLAYER_WAV_TO_WAV, "MPLAYER_WAV_TO_WAV" ); + PtrTabArgs = conv_RemoveTab( PtrTabArgs ); + + conv_copy_src_to_dest( NewName, p_pathnamefile ); + remove( NewName ); + + tagswav_file_GetBitrate( p_pathnamefile, &Channels, &Hertz, &Bits ); + + if( Bits != p_quantification ) { + fileconv_change_quantification_with_sox( TRUE, p_pathnamefile, NewName, p_frequency, p_track, p_quantification ); + remove( NewName ); + } + + free( NewName ); + NewName = NULL; + +} + +void loop_wav_change_setting( int p_frequency, int p_track, int p_quantification ) +{ + CList *list = NULL; + INFO *Info = NULL; + + if( NULL != ( list = C_list_first( Detail.ListFile ))) { + while( list ) { + if( NULL != (Info = (INFO *)list->data) ) { + if( Info->type_infosong_file_is == FILE_IS_WAV ) { + + wav_change_setting( Info->path_name_file, p_frequency, p_track, p_quantification ); + } + } + list = C_list_next( list ); + } + } +} + + + + + + + + + + + + diff -Nru xcfa-4.3.8/TODO xcfa-5.0.1/TODO --- xcfa-4.3.8/TODO 2014-01-06 07:39:23.000000000 +0000 +++ xcfa-5.0.1/TODO 2015-02-05 10:45:18.000000000 +0000 @@ -0,0 +1,14 @@ + + __ __ ___ _ ___ _ _ _ _ _ + \ \/ / / __|___ _ ___ _____ _ _| |_ | __(_) |___ /_\ _ _ __| (_)___ + > < | (__/ _ \ ' \ V / -_) '_| _| | _|| | / -_) / _ \ || / _` | / _ \ + /_/\_\ \___\___/_||_\_/\___|_| \__| |_| |_|_\___| /_/ \_\_,_\__,_|_\___/ + + + + ======================================== + | | + | TODO | + | | + ======================================== + see: Changelog