From: Good Guy Date: Tue, 28 Jan 2020 01:48:36 +0000 (-0700) Subject: es.po update by rafa, add ms win10 cygwin port, add pulseaudio, new config flags... X-Git-Tag: 2020-01~2 X-Git-Url: http://git.cinelerra-gg.org/git/?a=commitdiff_plain;h=9e3d90a964c0fbe97c0b58235336a47111932d5d;hp=bb755e4be7602e9e2705fdb49a76e49dbb2c5008;p=goodguy%2Fcinelerra.git es.po update by rafa, add ms win10 cygwin port, add pulseaudio, new config flags, libxcb patch for cygwin, fix for denoisefft segv, fix hard edge draw overlay, fix xft init workaround --- diff --git a/cinelerra-5.1/blds/cygwin.bld b/cinelerra-5.1/blds/cygwin.bld new file mode 100755 index 00000000..270c42ca --- /dev/null +++ b/cinelerra-5.1/blds/cygwin.bld @@ -0,0 +1,11 @@ +#!/bin/bash +( ./autogen.sh + CYGWIN=1 CFLAGS="-g -O2" ./configure --with-single-user -without-gl \ + --disable-static-build --without-lv2 --disable-lame --disable-twolame \ + --without-oss --without-alsa --without-firewire --without-dv --without-dvb \ + --without-video4linux2 --without-xxf86vm --without-ladspa-build \ + --without-libzmpeg --without-commercial --without-thirdparty \ + --without-vaapi --without-vdpau --without-shuttle \ + --without-x10tv --without-wintv --without-ladspa + make + make install ) 2>&1 | tee log diff --git a/cinelerra-5.1/blds/cygwin.patch b/cinelerra-5.1/blds/cygwin.patch new file mode 100644 index 00000000..a984a7fe --- /dev/null +++ b/cinelerra-5.1/blds/cygwin.patch @@ -0,0 +1,212 @@ +diff --git a/cinelerra-5.1/cinelerra/Makefile b/cinelerra-5.1/cinelerra/Makefile +index 645b273..e482dcd 100644 +--- a/cinelerra-5.1/cinelerra/Makefile ++++ b/cinelerra-5.1/cinelerra/Makefile +@@ -428,13 +428,28 @@ LIBS := $(LIBRARIES) + ifneq ($(WANT_CIN_3RDPARTY),no) + LIBS += $(libraries) + else ++LIBS += -Wl,--export-all-symbols -g ++LIBS += -Wl,--out-implib,$(OBJDIR)/lib$(WANT_CIN).exe.a ++LIBS += -L$(FF_DIR)/lib ++LIBS += -Wl,-rpath-link=:$(FF_DIR)/lib ++LIBS += -Wl,--as-needed -Wl,--warn-common ++LIBS += -lavdevice ++LIBS += -lavfilter ++LIBS += -lavformat ++LIBS += -lavcodec ++LIBS += -lswresample ++LIBS += -lswscale ++LIBS += -lavutil ++ ++LIBS += -lvpx -lwebp -lwebpmux ++LIBS += -ljpeg -lFLAC -lgif -lsndfile -ltiff ++ ++LIBS += -lsecur32 -lole32 -luser32 -luser32 -lbcrypt -lshell32 + + LIBS += -lpthread -lm -lbz2 -llzma -lz -lpng -luuid +-LIBS += -lX11 -lXau -lXdmcp -lXext -lXfixes -lXv -lXinerama ++LIBS += -lX11 -lXau -lXdmcp -lXext -lXfixes -lXinerama ++LIBS += -lintl -liconv + LIBS += -lfontconfig -lfreetype +-LIBS += -lavcodec -lavdevice -lavfilter -lavformat -lavresample -lavutil +-LIBS += -lswresample -lswscale +-LIBS += -lvpx -lwebp -lwebpmux + + LIBS += $(if $(filter fftw,$(static_pkgs)), -lfftw3) + LIBS += $(if $(filter flac,$(static_pkgs)), -lFLAC) +@@ -454,7 +470,7 @@ LIBS += $(if $(filter x265,$(static_pkgs)), -lx265) + LIBS += $(if $(filter libvpx,$(static_pkgs)), -lvpx) + + ifneq ($(WANT_GL),no) +-LIBS += -lGL -lGLU -lGLX ++LIBS += -lGL -lGLU + endif + ifneq ($(WANT_XFT),no) + LIBS += -lXft +@@ -548,7 +564,7 @@ CFLAGS += -DUSE_ALPHA + + else + +-LDFLAGS1 = -Wl,-export-dynamic -g ++LDFLAGS1 = -Wl,-export-all-symbols -g + LDFLAGS2 = $(LDFLAGS) + LINKER = $(CXX) -o $(OUTPUT) + +@@ -566,7 +582,7 @@ all: $(OUTPUT) $(CUTADS) $(BDWRITE) $(LV2UI) + $(OUTPUT): $(OBJS) $(THEME_DATA) $(DCRAW) $(LIBRARIES) + $(LINKER) `cat $(OBJDIR)/objs` + $(if $(findstring -g,$(CFLAGS)),objcopy --only-keep-debug $(OUTPUT) $(OUTPUT_G)) +- $(if $(findstring -ggdb,$(CFLAGS)),,strip $(OUTPUT)) ++ #$(if $(findstring -ggdb,$(CFLAGS)),,strip $(OUTPUT)) + ln -f -s ../bin/$(WANT_CIN) ci + + ifneq ($(WANT_COMMERCIAL),no) +@@ -574,7 +590,7 @@ $(CUTADS): $(CUTOBJS) $(CUTLIBS) $(LIBRARIES) + @echo g++ -o $@ $(CUTOBJS) + @g++ $(CFLAGS) -pthread -o $@ $(CUTOBJS) $(CUTLIBS) $(LIBS) + $(if $(findstring -g,$(CFLAGS)),objcopy --only-keep-debug $(CUTADS) $(CUTADS).debuginfo) +- $(if $(findstring -ggdb,$(CFLAGS)),,strip $(CUTADS)) ++ #$(if $(findstring -ggdb,$(CFLAGS)),,strip $(CUTADS)) + + install-cutads: + cp -av $(OBJDIR)/cutads $(BINDIR)/. +@@ -586,7 +602,7 @@ $(BDWRITE): $(BDWOBJS) $(LIBRARIES) + @echo g++ -o $@ $(BDWOBJS) + @g++ $(CFLAGS) -pthread -o $@ $(BDWOBJS) $(LIBS) + $(if $(findstring -g,$(CFLAGS)),objcopy --only-keep-debug $(BDWRITE) $(BDWRITE).debuginfo) +- $(if $(findstring -ggdb,$(CFLAGS)),,strip $(BDWRITE)) ++ #$(if $(findstring -ggdb,$(CFLAGS)),,strip $(BDWRITE)) + + install-bdwrite: + cp -av $(OBJDIR)/bdwrite $(BINDIR)/. +@@ -629,7 +645,7 @@ $(OBJDIR)/lv2ui: $(LV2OBJS) + @echo $(CXX) \`cat $(OBJDIR)/c_flags\` $^ -o $@ + @$(CXX) `cat $(OBJDIR)/c_flags` $^ -o $@ $(LIBS) $(GTK2_LIBS) + $(if $(findstring -g,$(CFLAGS)),objcopy --only-keep-debug $(LV2UI) $(LV2UI).debuginfo) +- $(if $(findstring -ggdb,$(CFLAGS)),,strip $(LV2UI)) ++ #$(if $(findstring -ggdb,$(CFLAGS)),,strip $(LV2UI)) + + .PHONY: lv2ui + lv2ui: $(LV2UI) +diff --git a/cinelerra-5.1/db/tdb.h b/cinelerra-5.1/db/tdb.h +index 8ee8800..9a17091 100644 +--- a/cinelerra-5.1/db/tdb.h ++++ b/cinelerra-5.1/db/tdb.h +@@ -32,7 +32,7 @@ inline void operator delete[](void *t,size_t n) { free(t); } + #endif + + #define ZMEDIA +-#define ZFUTEX ++//#define ZFUTEX + #ifdef ZFUTEX + #include + #include +diff --git a/cinelerra-5.1/guicast/bcresources.C b/cinelerra-5.1/guicast/bcresources.C +index 1d52855..fdab491 100644 +--- a/cinelerra-5.1/guicast/bcresources.C ++++ b/cinelerra-5.1/guicast/bcresources.C +@@ -367,8 +367,8 @@ BC_Resources::BC_Resources(float x_scale, float y_scale) + BC_WindowBase::resources = this; + synchronous = 0; + vframe_shm = 0; +- use_shm = -1; +- shm_reply = 1; ++ use_shm = 0; ++ shm_reply = 0; + + if( x_scale <= 0 ) x_scale = 1; + if( y_scale <= 0 ) y_scale = x_scale; +diff --git a/cinelerra-5.1/guicast/filesystem.h b/cinelerra-5.1/guicast/filesystem.h +index c976135..5613702 100644 +--- a/cinelerra-5.1/guicast/filesystem.h ++++ b/cinelerra-5.1/guicast/filesystem.h +@@ -26,6 +26,9 @@ + #include "bcwindowbase.inc" + #include "sizes.h" + ++#define dirent64 dirent ++#define readdir64 readdir ++ + class FileItem + { + public: +diff --git a/cinelerra-5.1/plugin_config b/cinelerra-5.1/plugin_config +index 56f4351..f7149bb 100644 +--- a/cinelerra-5.1/plugin_config ++++ b/cinelerra-5.1/plugin_config +@@ -4,12 +4,21 @@ CFLAGS += -I../ -I$(CINELERRA) -I$(GUICAST) -I../colors -fPIC + CFLAGS += $(static_incs) + LFLAGS += $(static_libs) + LFLAGS += $(LDFLAGS) ++ ++LFLAGS += -Wl,$(CINELERRA)/$(OBJDIR)/libcin.exe.a ++LFLAGS += -lintl -liconv ++ifneq ($(WANT_GL),no) ++LFLAGS += -lGL -lGLU ++endif ++ + LDLINKER ?= $(CXX) -shared + $(shell mkdir -p $(OBJDIR)) + ++#SFX=plugin ++SFX=dll + PLUGIN_DIR := $(BINDIR)/plugins + OUTPUT_DIR = $(PLUGIN_DIR)/$($(PLUGIN)) +-OUTPUT = $(OUTPUT_DIR)/$(PLUGIN).plugin ++OUTPUT = $(OUTPUT_DIR)/$(PLUGIN).$(SFX) + OUTPUT_G = $(OBJDIR)/$(PLUGIN).debuginfo + + $(shell echo $(CFLAGS) > $(OBJDIR)/c_flags) +@@ -20,16 +29,16 @@ ifeq ($(OUTPUT_THEME),) + $(OUTPUT): $(OBJS) $(OUTPUT_DIR) $(OUTPUT_BINS) + $(LDLINKER) -o $(OUTPUT) $(OBJS) $(OUTPUT_BINS) `cat $(OBJDIR)/l_flags` + $(if $(findstring -g,$(CFLAGS)),objcopy --only-keep-debug $(OUTPUT) $(OUTPUT_G)) +- $(if $(findstring -ggdb,$(CFLAGS)),,strip $(OUTPUT)) ++ #$(if $(findstring -ggdb,$(CFLAGS)),,strip $(OUTPUT)) + + else + + THEME_DATA = $(OBJDIR)/$(PLUGIN)_data.o + + $(OUTPUT_THEME): $(OBJS) $(OUTPUT_DIR) $(THEME_DATA) +- $(LDLINKER) -o $(OUTPUT_THEME) $(OBJS) $(THEME_DATA) $(LDFLAGS) ++ $(LDLINKER) -o $(OUTPUT_THEME) $(OBJS) $(THEME_DATA) `cat $(OBJDIR)/l_flags` + $(if $(findstring -g,$(CFLAGS)),objcopy --only-keep-debug $(OUTPUT_THEME) $(OUTPUT_G)) +- $(if $(findstring -ggdb,$(CFLAGS)),,strip $(OUTPUT_THEME)) ++ #$(if $(findstring -ggdb,$(CFLAGS)),,strip $(OUTPUT_THEME)) + + $(THEME_DATA): + cd $(OBJDIR) && \ +diff --git a/cinelerra-5.1/plugins/Makefile b/cinelerra-5.1/plugins/Makefile +index 22bc7dd..6404536 100644 +--- a/cinelerra-5.1/plugins/Makefile ++++ b/cinelerra-5.1/plugins/Makefile +@@ -36,7 +36,6 @@ DIRS = $(OPENCV_OBJS) \ + brightness \ + burn \ + C41 \ +- cdripper \ + chorus \ + chromakey \ + chromakeyhsv \ +@@ -176,6 +175,8 @@ DIRS = $(OPENCV_OBJS) \ + # denoisemjpeg \ + # duplicate + # vocoder \ ++# not in bsd or win ++# cdripper \ + + PLUGIN_DIR = $(BINDIR)/plugins + DATA = $(PLUGIN_DIR)/fonts $(PLUGIN_DIR)/shapes +diff --git a/cinelerra-5.1/guicast/bcsignals.C b/cinelerra-5.1/guicast/bcsignals.C +--- guicast/bcsignals.C 2020-01-27 07:27:45.332623800 -0700 ++++ guicast/bcsignals.C 2020-01-27 07:28:11.443049600 -0700 +@@ -44,6 +44,7 @@ + #include + #endif + #include ++#include + + BC_Signals* BC_Signals::global_signals = 0; + static int signal_done = 0; diff --git a/cinelerra-5.1/cinelerra/Makefile b/cinelerra-5.1/cinelerra/Makefile index 7e69a503..645b273c 100644 --- a/cinelerra-5.1/cinelerra/Makefile +++ b/cinelerra-5.1/cinelerra/Makefile @@ -64,6 +64,7 @@ OBJS := $(OVERLAYS) \ $(OBJDIR)/audioidevice.o \ $(OBJDIR)/audioodevice.o \ $(OBJDIR)/audiooss.o \ + $(OBJDIR)/audiopulse.o \ $(OBJDIR)/audiov4l2mpeg.o \ $(OBJDIR)/autoconf.o \ $(OBJDIR)/automation.o \ @@ -461,6 +462,9 @@ endif ifneq ($(WANT_ALSA),no) LIBS += -lasound endif +ifneq ($(WANT_PULSE),no) +LIBS += -lpulse-simple -lpulse +endif ifneq ($(WANT_OPENEXR),no) LIBS += -lIex -lIexMath -lIlmImf -lIlmImfUtil endif diff --git a/cinelerra-5.1/cinelerra/adeviceprefs.C b/cinelerra-5.1/cinelerra/adeviceprefs.C index 60c91269..ddc75b2f 100644 --- a/cinelerra-5.1/cinelerra/adeviceprefs.C +++ b/cinelerra-5.1/cinelerra/adeviceprefs.C @@ -22,6 +22,7 @@ #include "adeviceprefs.h" #include "audioalsa.h" #include "audiodevice.inc" +#include "audiopulse.h" #include "bcsignals.h" #include "bitspopup.h" #include "edl.h" @@ -91,7 +92,7 @@ void ADevicePrefs::reset() cine_path = 0; server_title = 0; port_title = 0; - esound_port = 0; + port = 0; } int ADevicePrefs::initialize(int creation) @@ -126,6 +127,9 @@ int ADevicePrefs::initialize(int creation) case AUDIO_ALSA: create_alsa_objs(); break; + case AUDIO_PULSE: + create_pulse_objs(); + break; case AUDIO_ESOUND: create_esound_objs(); break; @@ -167,6 +171,9 @@ int ADevicePrefs::delete_objects() case AUDIO_ALSA: delete_alsa_objs(); break; + case AUDIO_PULSE: + delete_pulse_objs(); + break; case AUDIO_ESOUND: delete_esound_objs(); break; @@ -205,9 +212,9 @@ int ADevicePrefs::delete_oss_objs() int ADevicePrefs::delete_esound_objs() { delete server_title; + delete server; delete port_title; - delete esound_server; - delete esound_port; + delete port; return 0; } @@ -246,6 +253,15 @@ int ADevicePrefs::delete_alsa_objs() return 0; } +int ADevicePrefs::delete_pulse_objs() +{ +#ifdef HAVE_PULSE + delete server_title; + delete server; +#endif + return 0; +} + int ADevicePrefs::delete_dvb_objs() { delete dvb_adapter_title; @@ -410,9 +426,7 @@ int ADevicePrefs::create_alsa_objs() _("Stop playback locks up.")); dialog->add_subwindow(alsa_workaround); } - #endif - return 0; } @@ -437,8 +451,8 @@ int ADevicePrefs::create_esound_objs() server_title = new BC_Title(x1, y, _("Server:"), MEDIUMFONT, resources->text_default); dialog->add_subwindow(server_title); - esound_server = new ADeviceTextBox(x1, y + yS(20), output_char); - dialog->add_subwindow(esound_server); + server = new ADeviceTextBox(x1, y + yS(20), output_char); + dialog->add_subwindow(server); switch(mode) { case MODEPLAY: @@ -451,12 +465,12 @@ int ADevicePrefs::create_esound_objs() output_int = &out_config->esound_out_port; break; } - x1 += esound_server->get_w() + xS(5); + x1 += server->get_w() + xS(5); port_title = new BC_Title(x1, y, _("Port:"), MEDIUMFONT, resources->text_default); dialog->add_subwindow(port_title); - esound_port = new ADeviceIntBox(x1, y + yS(20), output_int); - dialog->add_subwindow(esound_port); + port = new ADeviceIntBox(x1, y + yS(20), output_int); + dialog->add_subwindow(port); return 0; } @@ -615,6 +629,29 @@ int ADevicePrefs::create_v4l2mpeg_objs() } +int ADevicePrefs::create_pulse_objs() +{ +#ifdef HAVE_PULSE + char *output_char = 0; + switch(mode) { + case MODEPLAY: + output_char = out_config->pulse_out_server; + break; + case MODERECORD: + output_char = in_config->pulse_in_server; + break; + } + int x1 = x, y1 = y; + x1 += menu->get_w() + xS(5); + dialog->add_subwindow(server_title = new BC_Title(x1, y1, + _("Server (blank for default):"))); + y1 += server_title->get_h() + yS(5); + dialog->add_subwindow(server = new ADeviceTextBox(x1, y1, output_char)); +#endif + return 0; +} + + ADriverMenu::ADriverMenu(int x, int y, ADevicePrefs *device_prefs, int do_input, int *output) : BC_PopupMenu(x, y, xS(125), adriver_to_string(*output), 1) @@ -656,6 +693,9 @@ void ADriverMenu::create_objects() #ifdef HAVE_VIDEO4LINUX2 if(do_input) add_item(new ADriverItem(this, AUDIO_V4L2MPEG_TITLE, AUDIO_V4L2MPEG)); #endif +#ifdef HAVE_PULSE + add_item(new ADriverItem(this, AUDIO_PULSE_TITLE, AUDIO_PULSE)); +#endif } char* ADriverMenu::adriver_to_string(int driver) @@ -670,6 +710,9 @@ char* ADriverMenu::adriver_to_string(int driver) case AUDIO_ESOUND: sprintf(string, AUDIO_ESOUND_TITLE); break; + case AUDIO_PULSE: + sprintf(string, AUDIO_PULSE_TITLE); + break; case AUDIO_NAS: sprintf(string, AUDIO_NAS_TITLE); break; diff --git a/cinelerra-5.1/cinelerra/adeviceprefs.h b/cinelerra-5.1/cinelerra/adeviceprefs.h index ebe5051f..e7a480af 100644 --- a/cinelerra-5.1/cinelerra/adeviceprefs.h +++ b/cinelerra-5.1/cinelerra/adeviceprefs.h @@ -26,17 +26,13 @@ class OSSEnable; class ALSADevice; +#include "adeviceprefs.inc" #include "bitspopup.inc" #include "guicast.h" #include "playbackconfig.inc" #include "preferencesthread.inc" #include "recordconfig.inc" -class ADriverMenu; -class ADeviceTextBox; -class ADeviceIntBox; -class ADeviceTumbleBox; - class ADevicePrefs { public: @@ -74,6 +70,7 @@ private: int create_cine_objs(); int create_dvb_objs(); int create_v4l2mpeg_objs(); + int create_pulse_objs(); int delete_oss_objs(); int delete_esound_objs(); @@ -81,6 +78,7 @@ private: int delete_alsa_objs(); int delete_dvb_objs(); int delete_v4l2mpeg_objs(); + int delete_pulse_objs(); // The output config resolved from playback strategy and render engine. AudioOutConfig *out_config; @@ -99,8 +97,8 @@ private: OSSEnable *oss_enable[MAXDEVICES]; ADeviceTextBox *oss_path[MAXDEVICES]; BitsPopup *oss_bits; - ADeviceTextBox *esound_server; - ADeviceIntBox *esound_port; + ADeviceTextBox *server; + ADeviceIntBox *port; ADeviceIntBox *firewire_port; ADeviceIntBox *firewire_channel; ADeviceTextBox *firewire_path; diff --git a/cinelerra-5.1/cinelerra/adeviceprefs.inc b/cinelerra-5.1/cinelerra/adeviceprefs.inc index 0c8e1103..f9c71f66 100644 --- a/cinelerra-5.1/cinelerra/adeviceprefs.inc +++ b/cinelerra-5.1/cinelerra/adeviceprefs.inc @@ -23,11 +23,19 @@ #define ADEVICEPREFS_INC class ADevicePrefs; + #ifndef MODEPLAY #define MODEPLAY 0 #define MODERECORD 1 #define MODEDUPLEX 2 #endif +class ADriverMenu; +class ADriverItem; +class OSSEnable; +class ADeviceTextBox; +class ADeviceIntBox; +class ADeviceTumbleBox; +class ALSADevice; #endif diff --git a/cinelerra-5.1/cinelerra/androidcontrol.C b/cinelerra-5.1/cinelerra/androidcontrol.C index 61e43c97..f26aed40 100644 --- a/cinelerra-5.1/cinelerra/androidcontrol.C +++ b/cinelerra-5.1/cinelerra/androidcontrol.C @@ -47,6 +47,9 @@ AndroidControl::AndroidControl(MWindowGUI *mwindow_gui) { this->mwindow_gui = mwindow_gui; Thread::start(); + done = -1; + sockfd = -1; + msg = 0; } bool AndroidControl::is_msg(const char *cp) diff --git a/cinelerra-5.1/cinelerra/assetpopup.C b/cinelerra-5.1/cinelerra/assetpopup.C index ba828166..56832ca9 100644 --- a/cinelerra-5.1/cinelerra/assetpopup.C +++ b/cinelerra-5.1/cinelerra/assetpopup.C @@ -420,7 +420,7 @@ int AssetPopupInsertMixer::handle_event() } AssetPopupPaste::AssetPopupPaste(MWindow *mwindow, AssetPopup *popup) - : BC_MenuItem(_("Paste")) + : BC_MenuItem(C_("Paste")) { this->mwindow = mwindow; this->popup = popup; diff --git a/cinelerra-5.1/cinelerra/audioalsa.C b/cinelerra-5.1/cinelerra/audioalsa.C index e5c9fdfb..4a128a74 100644 --- a/cinelerra-5.1/cinelerra/audioalsa.C +++ b/cinelerra-5.1/cinelerra/audioalsa.C @@ -145,64 +145,6 @@ void AudioALSA::list_devices(ArrayList *names, ArrayList *pcm_name snd_ctl_close(handle); } - -#ifdef HAVE_PACTL -// attempt to add pulseaudio "monitor" devices -// run: pactl list | -// scan output for #n, Name: -// build alsa device config and add to alsa snd_config - - const char *arg = 0; - switch( mode ) { - case MODERECORD: - arg = "source"; - break; - case MODEPLAY: - arg = "sink"; - break; - } - FILE *pactl = 0; - char line[BCTEXTLEN]; - if( arg ) { - sprintf(line, "LANGUAGE=en_US.UTF-8 pactl list %ss", arg); - pactl = popen(line,"r"); - } - if( pactl ) { - snd_config_update(); - char name[BCTEXTLEN], pa_name[BCTEXTLEN], device[BCTEXTLEN]; - name[0] = pa_name[0] = device[0] = 0; - int arg_len = strlen(arg); - while( fgets(line, sizeof(line), pactl) ) { - if( !strncasecmp(line, arg, arg_len) ) { - char *sp = name, *id = pa_name; - for( char *cp=line; *cp && *cp!='\n'; *sp++=*cp++ ) - *id++ = (*cp>='A' && *cp<='Z') || - (*cp>='a' && *cp<='z') || - (*cp>='0' && *cp<='9') ? *cp : '_'; - *sp++ = 0; *id = 0; - if( names ) - names->append(cstrdup(name)); - continue; - } - if( sscanf(line, " Name: %s", device) != 1 ) continue; - int len = strlen(pa_name); - if( pcm_names ) - pcm_names->append(cstrdup(pa_name)); - char alsa_config[BCTEXTLEN]; - len = snprintf(alsa_config, sizeof(alsa_config), - "pcm.!%s {\n type pulse\n device %s\n}\n" - "ctl.!%s {\n type pulse\n device %s\n}\n", - pa_name, device, pa_name, device); - FILE *fp = fmemopen(alsa_config,len,"r"); - snd_input_t *inp; - snd_input_stdio_attach(&inp, fp, 1); - snd_config_load(snd_config, inp); - name[0] = pa_name[0] = device[0] = 0; - snd_input_close(inp); - } - pclose(pactl); - } -#endif } void AudioALSA::translate_name(char *output, char *input, int mode) @@ -215,6 +157,9 @@ void AudioALSA::translate_name(char *output, char *input, int mode) list_devices(&titles, &pcm_titles, mode); +// attempt to add pulseaudio "monitor" devices + add_pulse_devices(mode, &titles, &pcm_titles); + sprintf(output, "default"); for(int i = 0; i < titles.total; i++) { @@ -676,4 +621,64 @@ snd_pcm_t* AudioALSA::get_input() return dsp_in; } +void AudioALSA::add_pulse_devices(int mode, + ArrayList *names, ArrayList *pcm_names) +{ +#ifdef HAVE_PACTL +// run: pactl list | +// scan output for #n, Name: +// build alsa device config and add to alsa snd_config + const char *arg = 0; + switch( mode ) { + case MODERECORD: + arg = "source"; + break; + case MODEPLAY: + arg = "sink"; + break; + } + FILE *pactl = 0; + char line[BCTEXTLEN]; + if( arg ) { + sprintf(line, "LANGUAGE=en_US.UTF-8 pactl list %ss", arg); + pactl = popen(line,"r"); + } + if( pactl ) { + snd_config_update(); + char name[BCTEXTLEN], pa_name[BCTEXTLEN], device[BCTEXTLEN]; + name[0] = pa_name[0] = device[0] = 0; + int arg_len = strlen(arg); + while( fgets(line, sizeof(line), pactl) ) { + if( !strncasecmp(line, arg, arg_len) ) { + char *sp = name, *id = pa_name; + for( char *cp=line; *cp && *cp!='\n'; *sp++=*cp++ ) + *id++ = (*cp>='A' && *cp<='Z') || + (*cp>='a' && *cp<='z') || + (*cp>='0' && *cp<='9') ? *cp : '_'; + *sp++ = 0; *id = 0; + if( names ) + names->append(cstrdup(name)); + continue; + } + if( sscanf(line, " Name: %s", device) != 1 ) continue; + int len = strlen(pa_name); + if( pcm_names ) + pcm_names->append(cstrdup(pa_name)); + char alsa_config[BCTEXTLEN]; + len = snprintf(alsa_config, sizeof(alsa_config), + "pcm.!%s {\n type pulse\n device %s\n}\n" + "ctl.!%s {\n type pulse\n device %s\n}\n", + pa_name, device, pa_name, device); + FILE *fp = fmemopen(alsa_config,len,"r"); + snd_input_t *inp; + snd_input_stdio_attach(&inp, fp, 1); + snd_config_load(snd_config, inp); + name[0] = pa_name[0] = device[0] = 0; + snd_input_close(inp); + } + pclose(pactl); + } +#endif +} + #endif diff --git a/cinelerra-5.1/cinelerra/audioalsa.h b/cinelerra-5.1/cinelerra/audioalsa.h index 78d08319..5b919a21 100644 --- a/cinelerra-5.1/cinelerra/audioalsa.h +++ b/cinelerra-5.1/cinelerra/audioalsa.h @@ -49,7 +49,8 @@ public: int flush_device(); int interrupt_playback(); int stop_output(); - + static void add_pulse_devices(int mode, + ArrayList *name, ArrayList *pcm_name); private: int close_output(); void translate_name(char *output, char *input, int mode); diff --git a/cinelerra-5.1/cinelerra/audioconfig.C b/cinelerra-5.1/cinelerra/audioconfig.C index 44c5eabe..33e4ce19 100644 --- a/cinelerra-5.1/cinelerra/audioconfig.C +++ b/cinelerra-5.1/cinelerra/audioconfig.C @@ -37,6 +37,7 @@ AudioConfig::AudioConfig() oss_in_channels = 2; oss_in_bits = 16; strcpy(esound_in_server, ""); + strpcy(pulse_in_server, ""); esound_in_port = 0; audio_out_driver = AUDIO_ALSA; @@ -44,6 +45,7 @@ AudioConfig::AudioConfig() oss_out_channels = 2; oss_out_bits = 16; strpcy(esound_out_server, ""); + strpcy(pulse_out_server, ""); esound_out_port = 0; audio_duplex_driver = AUDIO_ALSA; @@ -65,6 +67,7 @@ AudioConfig& AudioConfig::operator=(AudioConfig &that) afirewire_in_port = that.afirewire_in_port; afirewire_in_channel = that.afirewire_in_channel; strcpy(esound_in_server, that.esound_in_server); + strcpy(pulse_in_server, that.pulse_in_server); esound_in_port = that.esound_in_port; strcpy(oss_in_device, that.oss_in_device); oss_in_channels = that.oss_in_channels; @@ -74,6 +77,7 @@ AudioConfig& AudioConfig::operator=(AudioConfig &that) audio_out_driver = that.audio_out_driver; strcpy(oss_out_device, that.oss_out_device); strcpy(esound_out_server, that.esound_out_server); + strcpy(pulse_out_server, that.pulse_out_server); esound_out_port = that.esound_out_port; oss_out_channels = that.oss_out_channels; oss_out_bits = that.oss_out_bits; @@ -103,6 +107,8 @@ int AudioConfig::load_defaults(BC_Hash *defaults) oss_in_bits = defaults->get("OSS_IN_BITS", 16); sprintf(esound_in_server, ""); defaults->get("ESOUND_IN_SERVER", esound_in_server); + sprintf(pulse_in_server, ""); + defaults->get("PULSE_IN_SERVER", pulse_in_server); esound_in_port = defaults->get("ESOUND_IN_PORT", 0); audio_out_driver = defaults->get("AUDIO_OUT_DRIVER", AUDIO_ALSA); @@ -113,6 +119,8 @@ int AudioConfig::load_defaults(BC_Hash *defaults) oss_out_bits = defaults->get("OUT_BITS", 16); sprintf(esound_out_server, ""); defaults->get("ESOUND_OUT_SERVER", esound_out_server); + sprintf(pulse_out_server, ""); + defaults->get("PULSE_OUT_SERVER", pulse_out_server); esound_out_port = defaults->get("ESOUND_OUT_PORT", 0); audio_duplex_driver = defaults->get("AUDIO_DUPLEX_DRIVER", AUDIO_ALSA); @@ -135,6 +143,7 @@ int AudioConfig::save_defaults(BC_Hash *defaults) defaults->update("OSS_IN_CHANNELS", oss_in_channels); defaults->update("OSS_IN_BITS", oss_in_bits); defaults->update("ESOUND_IN_SERVER", esound_in_server); + defaults->update("PULSE_IN_SERVER", pulse_in_server); defaults->update("ESOUND_IN_PORT", esound_in_port); defaults->update("AUDIO_OUT_DRIVER", audio_out_driver); @@ -143,6 +152,7 @@ int AudioConfig::save_defaults(BC_Hash *defaults) defaults->update("OUT_CHANNELS", oss_out_channels); defaults->update("OUT_BITS", oss_out_bits); defaults->update("ESOUND_OUT_SERVER", esound_out_server); + defaults->update("PULSE_OUT_SERVER", pulse_out_server); defaults->update("ESOUND_OUT_PORT", esound_out_port); defaults->update("AUDIO_DUPLEX_DRIVER", audio_duplex_driver); diff --git a/cinelerra-5.1/cinelerra/audioconfig.h b/cinelerra-5.1/cinelerra/audioconfig.h index f8f83919..fb1fb796 100644 --- a/cinelerra-5.1/cinelerra/audioconfig.h +++ b/cinelerra-5.1/cinelerra/audioconfig.h @@ -43,12 +43,14 @@ public: int oss_in_bits; int afirewire_in_port, afirewire_in_channel; char esound_in_server[1024]; + char pulse_in_server[1024]; int esound_in_port; // Output int audio_out_driver; char oss_out_device[1024]; char esound_out_server[1024]; + char pulse_out_server[1024]; int esound_out_port; int oss_out_channels; int oss_out_bits; diff --git a/cinelerra-5.1/cinelerra/audiodevice.C b/cinelerra-5.1/cinelerra/audiodevice.C index 956d4a10..0904ed5a 100644 --- a/cinelerra-5.1/cinelerra/audiodevice.C +++ b/cinelerra-5.1/cinelerra/audiodevice.C @@ -25,9 +25,10 @@ #endif #include "audioalsa.h" #include "audiodvb.h" -#include "audiov4l2mpeg.h" #include "audioesound.h" #include "audiooss.h" +#include "audiopulse.h" +#include "audiov4l2mpeg.h" #include "asset.h" #include "bctimer.h" #include "condition.h" @@ -257,6 +258,12 @@ int AudioDevice::create_lowlevel(AudioLowLevel* &lowlevel, int driver,int in) lowlevel = new AudioV4L2MPEG(this); break; #endif + +#ifdef HAVE_PULSE + case AUDIO_PULSE: + lowlevel = new AudioPulse(this); + break; +#endif } } return 0; diff --git a/cinelerra-5.1/cinelerra/audiodevice.h b/cinelerra-5.1/cinelerra/audiodevice.h index ed397739..2c12d9c4 100644 --- a/cinelerra-5.1/cinelerra/audiodevice.h +++ b/cinelerra-5.1/cinelerra/audiodevice.h @@ -31,10 +31,11 @@ #include "audioalsa.inc" #include "audioconfig.inc" -#include "audiodvb.inc" #include "audiodevice.inc" +#include "audiodvb.inc" #include "audioesound.inc" #include "audiooss.inc" +#include "audiopulse.inc" #include "audiov4l2mpeg.inc" #include "bctimer.inc" #include "binary.h" @@ -89,6 +90,7 @@ public: friend class AudioDVB; friend class AudioV4L2MPEG; friend class AudioOSS; + friend class AudioPulse; friend class AudioESound; friend class Audio1394; friend class VDevice1394; diff --git a/cinelerra-5.1/cinelerra/audiodevice.inc b/cinelerra-5.1/cinelerra/audiodevice.inc index be99c05a..fdfd9483 100644 --- a/cinelerra-5.1/cinelerra/audiodevice.inc +++ b/cinelerra-5.1/cinelerra/audiodevice.inc @@ -41,6 +41,7 @@ enum AUDIO_IEC61883, AUDIO_DVB, AUDIO_V4L2MPEG, + AUDIO_PULSE, }; #define AUDIO_OSS_TITLE "OSS" @@ -55,5 +56,6 @@ enum #endif #define AUDIO_DVB_TITLE "DVB" #define AUDIO_V4L2MPEG_TITLE "V4L2 MPEG" +#define AUDIO_PULSE_TITLE "Pulse Audio" #endif diff --git a/cinelerra-5.1/cinelerra/audioodevice.C b/cinelerra-5.1/cinelerra/audioodevice.C index 2beb4c8c..e4f2cd01 100644 --- a/cinelerra-5.1/cinelerra/audioodevice.C +++ b/cinelerra-5.1/cinelerra/audioodevice.C @@ -375,11 +375,15 @@ void AudioDevice::run_output() output_buffer_t *obfr = &output[buffer_num]; obfr->play_lock->lock("AudioDevice::run 1"); if( !is_playing_back || playback_interrupted ) break; - if( obfr->last_buffer ) { lowlevel_out->flush_device(); break; } + if( obfr->last_buffer ) { + if( lowlevel_out ) lowlevel_out->flush_device(); + break; + } // get size for position information // write converted buffer synchronously double bfr_time = obfr->bfr_time; - int result = lowlevel_out->write_buffer(obfr->buffer, obfr->size); + int result = !lowlevel_out ? -1 : + lowlevel_out->write_buffer(obfr->buffer, obfr->size); // allow writing to the buffer obfr->arm_lock->unlock(); if( !result ) { diff --git a/cinelerra-5.1/cinelerra/audiopulse.C b/cinelerra-5.1/cinelerra/audiopulse.C new file mode 100644 index 00000000..78db1875 --- /dev/null +++ b/cinelerra-5.1/cinelerra/audiopulse.C @@ -0,0 +1,251 @@ +/* + * CINELERRA + * Copyright (C) 2008-2019 Adam Williams + * + * This program 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 2 of the License, or + * (at your option) any later version. + * + * This program 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 this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + */ + +#ifdef HAVE_PULSE +#include "audiopulse.h" +#include "adeviceprefs.h" +#include "bctimer.h" +#include "cstrdup.h" +#include "language.h" +#include "mutex.h" +#include "playbackconfig.h" +#include "recordconfig.h" + +#include +#include + +AudioPulse::AudioPulse(AudioDevice *device) + : AudioLowLevel(device) +{ + buffer_position = 0; + timer_position = 0; + timer = new Timer; + timer_lock = new Mutex("AudioPulse::timer_lock"); + dsp_in = 0; + dsp_out = 0; + period_usecs = 1000000; + frag_usecs = period_usecs / 32; + wr_spec = 0; + rd_spec = 0; +} + +AudioPulse::~AudioPulse() +{ + delete (pa_sample_spec *)wr_spec; + delete (pa_sample_spec *)rd_spec; + delete timer_lock; + delete timer; + close_all(); +} + +int AudioPulse::open_input() +{ + pa_sample_spec *ss = new pa_sample_spec(); + rd_spec = (void *)ss; + + ss->format = PA_SAMPLE_S16LE; + ss->rate = device->in_samplerate; + ss->channels = device->get_ichannels(); + device->in_bits = 16; + return init_input(); +} + +int AudioPulse::init_input() +{ + pa_sample_spec *ss = (pa_sample_spec *)rd_spec; + int error = 0; + char *server = 0; + if( device->in_config->pulse_in_server[0] ) + server = device->in_config->pulse_in_server; + dsp_in = pa_simple_new(server, PROGRAM_NAME, PA_STREAM_RECORD, + 0, "recording", ss, 0, 0, &error); + if( !dsp_in ) { + printf("AudioPulse::open_input %d: failed server=%s %s\n", __LINE__, + server, pa_strerror(error)); + return 1; + } + + return 0; +} + + +int AudioPulse::open_output() +{ + pa_sample_spec *ss = new pa_sample_spec(); + wr_spec = (void *)ss; + ss->format = PA_SAMPLE_S16LE; + ss->rate = device->out_samplerate; + ss->channels = device->get_ochannels(); + device->out_bits = 16; + return init_output(); +} + +int AudioPulse::init_output() +{ + pa_sample_spec *ss = (pa_sample_spec *)wr_spec; + int error = 0; + char *server = device->out_config->pulse_out_server[0] ? + device->out_config->pulse_out_server : 0; + dsp_out = pa_simple_new(server, PROGRAM_NAME, PA_STREAM_PLAYBACK, + NULL, "playback", ss, 0, 0, &error); + if( !dsp_out ) { + printf("AudioPulse::open_output %d: failed server=%s %s\n", + __LINE__, server, pa_strerror(error)); + return 1; + } + timer->update(); + device->device_buffer = 0; + buffer_position = 0; + return 0; +} + + +int AudioPulse::close_all() +{ + if( dsp_out ) { + int error = 0; + pa_simple_flush((pa_simple*)dsp_out, &error); + pa_simple_free((pa_simple*)dsp_out); + dsp_out = 0; + } + + if( dsp_in ) { + pa_simple_free((pa_simple*)dsp_in); + dsp_in = 0; + } + delete (pa_sample_spec *)wr_spec; wr_spec = 0; + delete (pa_sample_spec *)rd_spec; rd_spec = 0; + buffer_position = 0; + timer_position = 0; + return 0; +} + +int64_t AudioPulse::device_position() +{ + timer_lock->lock("AudioPulse::device_position"); + int64_t samples = timer->get_scaled_difference(device->out_samplerate); + int64_t result = timer_position + samples; + timer_lock->unlock(); + return result; +} + +int AudioPulse::write_buffer(char *buffer, int size) +{ + if( !dsp_out && init_output() ) + return 1; + int error = 0; + timer_lock->lock("AudioPulse::write_buffer"); + int64_t usecs = pa_simple_get_latency((pa_simple*)dsp_out, &error); + int64_t delay = device->out_samplerate * usecs / 1000000; + timer_position = buffer_position - delay; + timer->update(); + timer_lock->unlock(); + + AudioThread *audio_out = device->audio_out; + int sample_size = (device->out_bits / 8) * device->get_ochannels(); + int samples = device->out_samplerate * frag_usecs / 1000000; + int64_t frag_bytes = samples * sample_size; + + buffer_position += size / sample_size; + int ret = 0; + while( !ret && size > 0 && !device->playback_interrupted ) { + audio_out->Thread::enable_cancel(); + usecs = pa_simple_get_latency((pa_simple*)dsp_out, &error); + if( usecs < period_usecs ) { + int64_t len = size; + if( len > frag_bytes ) len = frag_bytes; + if( pa_simple_write((pa_simple*)dsp_out, buffer, len, &error) < 0 ) + ret = 1; + buffer += len; size -= len; + } + else + usleep(frag_usecs); + audio_out->Thread::disable_cancel(); + } + if( ret ) + printf("AudioPulse::write_buffer %d: %s\n", + __LINE__, pa_strerror(error)); + return ret; +} + +int AudioPulse::read_buffer(char *buffer, int size) +{ + if( !dsp_in && init_input() ) + return 1; + + int error = 0; + int result = pa_simple_read((pa_simple*)dsp_in, buffer, size, &error); + if( result < 0 ) { + printf("AudioPulse::read_buffer %d: %s\n", + __LINE__, pa_strerror(error)); + return 1; + } + +//printf("AudioPulse::read_buffer %d %d\n", __LINE__, size); + + return 0; +} + +int AudioPulse::output_wait() +{ + int error = 0; + pa_usec_t latency = pa_simple_get_latency((pa_simple*)dsp_out, &error); + int64_t udelay = latency; + while( udelay > 0 && !device->playback_interrupted ) { + int64_t usecs = udelay; + if( usecs > 100000 ) usecs = 100000; + usleep(usecs); + udelay -= usecs; + } + if( device->playback_interrupted && + !device->out_config->interrupt_workaround ) + pa_simple_flush((pa_simple*)dsp_out, &error); + return 0; +} + +int AudioPulse::flush_device() +{ + if( dsp_out ) { + output_wait(); + int error = 0; + pa_simple_drain((pa_simple*)dsp_out, &error); + } + return 0; +} + +int AudioPulse::interrupt_playback() +{ + if( !dsp_out ) { + return 1; + } + + int error = 0; + int result = pa_simple_flush((pa_simple*)dsp_out, &error); + if( result < 0 ) { + printf("AudioPulse::interrupt_playback %d: %s\n", + __LINE__, + pa_strerror(error)); + return 1; + } + + return 0; +} + +#endif diff --git a/cinelerra-5.1/cinelerra/audiopulse.h b/cinelerra-5.1/cinelerra/audiopulse.h new file mode 100644 index 00000000..1739c256 --- /dev/null +++ b/cinelerra-5.1/cinelerra/audiopulse.h @@ -0,0 +1,62 @@ +/* + * CINELERRA + * Copyright (C) 2008-2019 Adam Williams + * + * This program 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 2 of the License, or + * (at your option) any later version. + * + * This program 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 this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + */ + +#ifndef AUDIOPULSE_H +#define AUDIOPULSE_H + +#include "arraylist.h" +#include "audiodevice.h" +#include "bctimer.inc" + + +class AudioPulse : public AudioLowLevel +{ +public: + AudioPulse(AudioDevice *device); + ~AudioPulse(); + + int open_input(); + int init_input(); + int open_output(); + int init_output(); + int close_all(); + int64_t device_position(); + int write_buffer(char *buffer, int size); + int read_buffer(char *buffer, int size); + int output_wait(); + int flush_device(); + int interrupt_playback(); + +// the pulse audio handles + void *dsp_out; + void *dsp_in; + void *wr_spec; + void *rd_spec; + + int64_t buffer_position; + int64_t timer_position; + int64_t frag_usecs, period_usecs; + Timer *timer; + Mutex *timer_lock; + + int64_t samples_output() { return buffer_position; } +}; + +#endif diff --git a/cinelerra-5.1/cinelerra/audiopulse.inc b/cinelerra-5.1/cinelerra/audiopulse.inc new file mode 100644 index 00000000..c0b38652 --- /dev/null +++ b/cinelerra-5.1/cinelerra/audiopulse.inc @@ -0,0 +1,32 @@ +/* + * CINELERRA + * Copyright (C) 2008-2019 Adam Williams + * + * This program 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 2 of the License, or + * (at your option) any later version. + * + * This program 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 this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + */ + + +#ifndef AUDIOPULSE_INC +#define AUDIOPULSE_INC + + + + +class AudioPulse; + + + +#endif diff --git a/cinelerra-5.1/cinelerra/cwindow.inc b/cinelerra-5.1/cinelerra/cwindow.inc index a3ceb1db..6742988e 100644 --- a/cinelerra-5.1/cinelerra/cwindow.inc +++ b/cinelerra-5.1/cinelerra/cwindow.inc @@ -23,6 +23,5 @@ #define CWINDOW_INC class CWindow; -class KeyEvCWindowHandler; #endif diff --git a/cinelerra-5.1/cinelerra/editpopup.C b/cinelerra-5.1/cinelerra/editpopup.C index e0c40b9c..2011bcf8 100644 --- a/cinelerra-5.1/cinelerra/editpopup.C +++ b/cinelerra-5.1/cinelerra/editpopup.C @@ -213,7 +213,7 @@ int EditPopupCutPack::handle_event() } EditPopupMute::EditPopupMute(MWindow *mwindow, EditPopup *popup) - : BC_MenuItem(_("Mute"),_("Ctrl-m"),'m') + : BC_MenuItem(C_("Mute"),_("Ctrl-m"),'m') { this->mwindow = mwindow; this->popup = popup; diff --git a/cinelerra-5.1/cinelerra/indexfile.C b/cinelerra-5.1/cinelerra/indexfile.C index 3c6fd97f..87b8853a 100644 --- a/cinelerra-5.1/cinelerra/indexfile.C +++ b/cinelerra-5.1/cinelerra/indexfile.C @@ -70,19 +70,22 @@ #include #include +#ifdef HAVE_ISOFS #include +#endif // check for isofs volume_id for dvd/cdrom static int udf_volume_id(const char *path, char *fname) { + int result = 1; +#ifdef HAVE_ISOFS struct stat st; if( stat(path,&st) ) return 1; // search mounted devices FILE *fp = fopen("/proc/mounts","r"); if( !fp ) return 1; - int result = 1; while( result && !feof(fp) && !ferror(fp) ) { char devpath[BCTEXTLEN], mpath[BCTEXTLEN]; char options[BCTEXTLEN], line[BCTEXTLEN]; @@ -122,6 +125,7 @@ static int udf_volume_id(const char *path, char *fname) } fclose(fp); +#endif return result; } diff --git a/cinelerra-5.1/cinelerra/mainsession.C b/cinelerra-5.1/cinelerra/mainsession.C index 5862b943..a21297e0 100644 --- a/cinelerra-5.1/cinelerra/mainsession.C +++ b/cinelerra-5.1/cinelerra/mainsession.C @@ -243,16 +243,20 @@ void MainSession::default_window_positions(int window_config) case 1024: right_w = 1280; break; case 1200: right_w = 1600; break; case 1080: right_w = 1920; break; - default: right_w = root_w/2; break; + default: + dual_head = 0; + break; } - if( window_config == 1 ) { - root_x = root_w - right_w; - root_w = right_w; - } - else { - // use same aspect ratio to compute left height - root_w -= right_w; - root_h = (root_w*root_h) / right_w; + if( dual_head ) { + if( window_config == 1 ) { + root_x = root_w - right_w; + root_w = right_w; + } + else { + // use same aspect ratio to compute left height + root_w -= right_w; + root_h = (root_w*root_h) / right_w; + } } } diff --git a/cinelerra-5.1/cinelerra/mwindow.C b/cinelerra-5.1/cinelerra/mwindow.C index 988e49a3..c959af27 100644 --- a/cinelerra-5.1/cinelerra/mwindow.C +++ b/cinelerra-5.1/cinelerra/mwindow.C @@ -268,7 +268,9 @@ MWindow::~MWindow() delete beeper; delete create_bd; create_bd = 0; delete create_dvd; create_dvd = 0; +#ifdef HAVE_SHUTTLE delete shuttle; shuttle = 0; +#endif #ifdef HAVE_WINTV delete wintv; wintv = 0; #endif @@ -675,6 +677,7 @@ int MWindow::init_plugins(MWindow *mwindow, Preferences *preferences) int MWindow::init_ladspa_plugins(MWindow *mwindow, Preferences *preferences) { +#ifdef HAVE_LADSPA char *path = getenv("LADSPA_PATH"); char ladspa_path[BCTEXTLEN]; if( !path ) { @@ -719,6 +722,7 @@ int MWindow::init_ladspa_plugins(MWindow *mwindow, Preferences *preferences) } fclose(fp); } +#endif return 1; } @@ -742,7 +746,7 @@ void MWindow::scan_plugin_index(MWindow *mwindow, Preferences *preferences, FILE char plugin_path[BCTEXTLEN]; sprintf(plugin_path, "%s/%s", plug_dir, plug_path); FileSystem fs; - fs.set_filter( "[*.plugin][*.so]" ); + fs.set_filter( "[*.plugin][*.so][*.dll]" ); int result = fs.update(plugin_path); if( result || !fs.dir_list.total ) return; int vis_id = idx++; diff --git a/cinelerra-5.1/cinelerra/playbackconfig.C b/cinelerra-5.1/cinelerra/playbackconfig.C index 22fee714..24976c56 100644 --- a/cinelerra-5.1/cinelerra/playbackconfig.C +++ b/cinelerra-5.1/cinelerra/playbackconfig.C @@ -30,10 +30,13 @@ AudioOutConfig::AudioOutConfig() fragment_size = 16384; #ifdef HAVE_ALSA driver = AUDIO_ALSA; +#else +#ifdef HAVE_PULSE + driver = AUDIO_PULSE; #else driver = AUDIO_OSS; #endif - +#endif audio_offset = 0.0; map51_2 = 0; play_gain = 1.0; @@ -48,6 +51,8 @@ AudioOutConfig::AudioOutConfig() esound_out_server[0] = 0; esound_out_port = 0; + pulse_out_server[0] = 0; + sprintf(alsa_out_device, "default"); alsa_out_bits = 16; interrupt_workaround = 0; @@ -85,12 +90,10 @@ int AudioOutConfig::operator==(AudioOutConfig &that) !strcmp(oss_out_device[0], that.oss_out_device[0]) && (oss_out_bits == that.oss_out_bits) && - - !strcmp(esound_out_server, that.esound_out_server) && (esound_out_port == that.esound_out_port) && - + !strcmp(pulse_out_server, that.pulse_out_server) && !strcmp(alsa_out_device, that.alsa_out_device) && (alsa_out_bits == that.alsa_out_bits) && @@ -126,6 +129,9 @@ void AudioOutConfig::copy_from(AudioOutConfig *src) strcpy(esound_out_server, src->esound_out_server); esound_out_port = src->esound_out_port; + + strcpy(pulse_out_server, src->pulse_out_server); + for(int i = 0; i < MAXDEVICES; i++) { oss_enable[i] = src->oss_enable[i]; @@ -171,8 +177,11 @@ int AudioOutConfig::load_defaults(BC_Hash *defaults, int active_config) interrupt_workaround = defaults->getf(interrupt_workaround, "%sALSA_INTERRUPT_WORKAROUND", prefix); defaults->getf(esound_out_server, "%sESOUND_OUT_SERVER", prefix); + defaults->getf(pulse_out_server, "%sPULSE_OUT_SERVER", prefix); esound_out_port = defaults->getf(esound_out_port, "%sESOUND_OUT_PORT", prefix); + defaults->getf(pulse_out_server, "%sPULSE_OUT_SERVER", prefix); + firewire_channel = defaults->getf(firewire_channel, "%sAFIREWIRE_OUT_CHANNEL", prefix); firewire_port = defaults->getf(firewire_port, "%sAFIREWIRE_OUT_PORT", prefix); defaults->getf(firewire_path, "%sAFIREWIRE_OUT_PATH", prefix); @@ -211,8 +220,11 @@ int AudioOutConfig::save_defaults(BC_Hash *defaults, int active_config) defaults->updatef(interrupt_workaround, "%sALSA_INTERRUPT_WORKAROUND", prefix); defaults->updatef(esound_out_server, "%sESOUND_OUT_SERVER", prefix); + defaults->updatef(pulse_out_server, "%sPULSE_OUT_SERVER", prefix); defaults->updatef(esound_out_port, "%sESOUND_OUT_PORT", prefix); + defaults->updatef(pulse_out_server, "%sPULSE_OUT_SERVER", prefix); + defaults->updatef(firewire_channel, "%sAFIREWIRE_OUT_CHANNEL", prefix); defaults->updatef(firewire_port, "%sAFIREWIRE_OUT_PORT", prefix); defaults->updatef(firewire_path, "%sAFIREWIRE_OUT_PATH", prefix); diff --git a/cinelerra-5.1/cinelerra/playbackconfig.h b/cinelerra-5.1/cinelerra/playbackconfig.h index 1896a5da..c4a83d37 100644 --- a/cinelerra-5.1/cinelerra/playbackconfig.h +++ b/cinelerra-5.1/cinelerra/playbackconfig.h @@ -58,7 +58,8 @@ public: char esound_out_server[BCTEXTLEN]; int esound_out_port; - +// PulseAudio + char pulse_out_server[BCTEXTLEN]; // ALSA options char alsa_out_device[BCTEXTLEN]; int alsa_out_bits; diff --git a/cinelerra-5.1/cinelerra/recordconfig.C b/cinelerra-5.1/cinelerra/recordconfig.C index 2ea355b9..749a5e6f 100644 --- a/cinelerra-5.1/cinelerra/recordconfig.C +++ b/cinelerra-5.1/cinelerra/recordconfig.C @@ -48,7 +48,7 @@ AudioInConfig::AudioInConfig() strcpy(firewire_path, "/dev/raw1394"); esound_in_server[0] = 0; esound_in_port = 0; - + pulse_in_server[0] = 0; sprintf(alsa_in_device, "default"); alsa_in_bits = 16; in_samplerate = 48000; @@ -100,6 +100,8 @@ void AudioInConfig::copy_from(AudioInConfig *src) strcpy(esound_in_server, src->esound_in_server); esound_in_port = src->esound_in_port; + strcpy(pulse_in_server, src->pulse_in_server); + for(int i = 0; i < MAXDEVICES; i++) { oss_enable[i] = src->oss_enable[i]; @@ -139,8 +141,9 @@ int AudioInConfig::load_defaults(BC_Hash *defaults) } oss_in_bits = defaults->get("R_OSS_IN_BITS", oss_in_bits); defaults->get("R_ESOUND_IN_SERVER", esound_in_server); + defaults->get("R_PULSE_IN_SERVER", pulse_in_server); esound_in_port = defaults->get("R_ESOUND_IN_PORT", esound_in_port); - + defaults->get("R_PULSE_IN_SERVER", pulse_in_server); defaults->get("R_ALSA_IN_DEVICE", alsa_in_device); alsa_in_bits = defaults->get("R_ALSA_IN_BITS", alsa_in_bits); in_samplerate = defaults->get("R_IN_SAMPLERATE", in_samplerate); @@ -170,8 +173,9 @@ int AudioInConfig::save_defaults(BC_Hash *defaults) defaults->update("R_OSS_IN_BITS", oss_in_bits); defaults->update("R_ESOUND_IN_SERVER", esound_in_server); + defaults->update("R_PULSE_IN_SERVER", pulse_in_server); defaults->update("R_ESOUND_IN_PORT", esound_in_port); - + defaults->update("R_PULSE_IN_SERVER", pulse_in_server); defaults->update("R_ALSA_IN_DEVICE", alsa_in_device); defaults->update("R_ALSA_IN_BITS", alsa_in_bits); defaults->update("R_IN_SAMPLERATE", in_samplerate); diff --git a/cinelerra-5.1/cinelerra/recordconfig.h b/cinelerra-5.1/cinelerra/recordconfig.h index c650c009..54f031b3 100644 --- a/cinelerra-5.1/cinelerra/recordconfig.h +++ b/cinelerra-5.1/cinelerra/recordconfig.h @@ -54,6 +54,7 @@ public: char esound_in_server[BCTEXTLEN]; int esound_in_port; + char pulse_in_server[BCTEXTLEN]; char alsa_in_device[BCTEXTLEN]; int alsa_in_bits; char dvb_in_adapter[BCTEXTLEN]; diff --git a/cinelerra-5.1/cinelerra/samples.C b/cinelerra-5.1/cinelerra/samples.C index e22d28e5..a4749bb1 100644 --- a/cinelerra-5.1/cinelerra/samples.C +++ b/cinelerra-5.1/cinelerra/samples.C @@ -24,7 +24,8 @@ // An object which contains samples - +#include "bcresources.h" +#include "bcwindowbase.h" #include "samples.h" #include #include @@ -46,8 +47,15 @@ Samples::Samples(int samples) Samples::Samples(Samples *src) { reset(); - share(src->get_shmid()); - set_allocated(src->get_allocated()); + int src_sz = src->get_allocated(); + if( use_shm ) { + share(src->get_shmid()); + set_allocated(src_sz); + } + else { + share(src->data); + set_allocated(0); + } set_offset(src->get_offset()); } @@ -58,7 +66,8 @@ Samples::~Samples() void Samples::reset() { - use_shm = 1; + BC_Resources *resources = BC_WindowBase::get_resources(); + use_shm = !resources || !resources->use_shm ? 0 : 1; shmid = -1; data = 0; allocated = 0; @@ -71,7 +80,7 @@ void Samples::clear_objects() { if(data) shmdt(data); } - else + else if( allocated ) { delete [] data; } @@ -95,16 +104,31 @@ void Samples::share(int shmid) this->allocated = 0; this->shmid = shmid; } +void Samples::share(double *buffer) +{ + if(data) + { + if(use_shm) + shmdt(data); + else + delete [] data; + } + this->use_shm = 0; + data = buffer; + this->allocated = 0; + this->shmid = -1; +} + void Samples::allocate(int samples, int use_shm) { - if(data && + if( !this->use_shm ) use_shm = 0; + if( data && this->allocated >= samples && - this->use_shm == use_shm) return; + this->use_shm == use_shm ) return; - if(data) - { - if(this->use_shm) + if( data ) { + if( this->use_shm ) shmdt(data); else delete [] data; @@ -112,8 +136,7 @@ void Samples::allocate(int samples, int use_shm) this->use_shm = use_shm; - if(use_shm) - { + if( use_shm ) { shmid = shmget(IPC_PRIVATE, (samples + 1) * sizeof(double), IPC_CREAT | 0777); @@ -121,18 +144,12 @@ void Samples::allocate(int samples, int use_shm) // This causes it to automatically delete when the program exits. shmctl(shmid, IPC_RMID, 0); } - else - { + else { shmid = -1; data = new double[samples]; } - this->allocated = samples; - - - - } // Get the buffer diff --git a/cinelerra-5.1/cinelerra/samples.h b/cinelerra-5.1/cinelerra/samples.h index dc197566..a6cf599c 100644 --- a/cinelerra-5.1/cinelerra/samples.h +++ b/cinelerra-5.1/cinelerra/samples.h @@ -41,6 +41,7 @@ public: void reset(); void clear_objects(); void share(int shmid); + void share(double *buffer); void allocate(int samples, int use_shm); // Get the buffer double* get_data(); diff --git a/cinelerra-5.1/cinelerra/shuttle.h b/cinelerra-5.1/cinelerra/shuttle.h index 6793a03f..06406d53 100644 --- a/cinelerra-5.1/cinelerra/shuttle.h +++ b/cinelerra-5.1/cinelerra/shuttle.h @@ -1,5 +1,6 @@ #ifndef __SHUTTLE_H__ #define __SHUTTLE_H__ +#ifdef HAVE_SHUTTLE #include "arraylist.h" #include "bcwindowbase.inc" @@ -20,8 +21,7 @@ // delay in ms before processing each XTest event // CurrentTime means no delay #define DELAY CurrentTime -// playback max speed -64x .. 64x -#define SHUTTLE_MAX_SPEED 64. + #define SHUTTLE_INTERFACE 0 // protocol for events from the shuttlepro HUD device @@ -257,3 +257,4 @@ public: }; #endif +#endif diff --git a/cinelerra-5.1/cinelerra/shuttle.inc b/cinelerra-5.1/cinelerra/shuttle.inc index 5919e9d2..db6b37fd 100644 --- a/cinelerra-5.1/cinelerra/shuttle.inc +++ b/cinelerra-5.1/cinelerra/shuttle.inc @@ -9,4 +9,7 @@ class Translation; class Translations; class Shuttle; +// playback max speed -64x .. 64x +#define SHUTTLE_MAX_SPEED 64. + #endif diff --git a/cinelerra-5.1/cinelerra/swindow.C b/cinelerra-5.1/cinelerra/swindow.C index 770556c6..289ae261 100644 --- a/cinelerra-5.1/cinelerra/swindow.C +++ b/cinelerra-5.1/cinelerra/swindow.C @@ -841,8 +841,11 @@ void SWindowGUI::save_spumux_data() if( !track->record ) continue; char *cp = track_title, *ep = cp+sizeof(track_title)-6; for( const char *bp=track->title; cp= 'A' && wch <= 'Z') || + (wch >= 'a' && wch <= 'z') || + (wch >= '0' && wch <= '9') ) ) wch = '_'; + butf8(wch, cp); } *cp = 0; snprintf(ext,len,"-%s.udvd",track_title); diff --git a/cinelerra-5.1/cinelerra/trackcanvas.C b/cinelerra-5.1/cinelerra/trackcanvas.C index 2ac5cccd..88e07d81 100644 --- a/cinelerra-5.1/cinelerra/trackcanvas.C +++ b/cinelerra-5.1/cinelerra/trackcanvas.C @@ -1896,6 +1896,8 @@ void TrackCanvas::draw_hard_edges() for(Edit *edit = track->edits->first; edit; edit = edit->next) { if( !edit->hard_left && !edit->hard_right ) continue; edit_dimensions(edit, x, y, w, h); + if( !MWindowGUI::visible(x, x + w, 0, get_w()) || + !MWindowGUI::visible(y, y + h, 0, get_h()) ) continue; set_color(GREEN); set_opaque(); int y1 = y; diff --git a/cinelerra-5.1/cinelerra/vdeviceprefs.C b/cinelerra-5.1/cinelerra/vdeviceprefs.C index fbd96978..3245c168 100644 --- a/cinelerra-5.1/cinelerra/vdeviceprefs.C +++ b/cinelerra-5.1/cinelerra/vdeviceprefs.C @@ -515,7 +515,9 @@ void VDriverMenu::create_objects() else { add_item(new VDriverItem(this, PLAYBACK_X11_TITLE, PLAYBACK_X11)); +#ifdef HAVE_XV add_item(new VDriverItem(this, PLAYBACK_X11_XV_TITLE, PLAYBACK_X11_XV)); +#endif #ifdef HAVE_GL // Check runtime glx version. pbuffer needs >= 1.3 if(get_opengl_server_version() >= 103) diff --git a/cinelerra-5.1/configure.ac b/cinelerra-5.1/configure.ac index 599a835d..b0c4e772 100644 --- a/cinelerra-5.1/configure.ac +++ b/cinelerra-5.1/configure.ac @@ -29,8 +29,6 @@ CFG_CFLAGS+=" -I/usr/include/freetype2 -I/usr/local/include/freetype2" CFG_CFLAGS+=" -I/usr/include/uuid -I/usr/local/include/uuid" CFG_CFLAGS+=" -I/usr/include/mjpegtools -I/usr/local/include/mjpegtools" -CFG_LDFLAGS+=" -z noexecstack" - AC_DEFUN([CHECK_WITH], [ AC_ARG_WITH([$1], AC_HELP_STRING([--with-[$1]], [$2 ($4)]), @@ -41,12 +39,12 @@ AC_SUBST([WANT_$3]) CHECK_WITH([jobs],[parallel build jobs],[JOBS],[auto]) CHECK_WITH([exec-name],[binary executable name],[CIN],[cin]) CHECK_WITH([single-user],[to install cin in bin],[CINBIN_BUILD],[no]) -CHECK_WITH([ladspa-build],[build ladspa library],[LADSPA_BUILD],[yes]) CHECK_WITH([lv2],[lv2 library support],[LV2],[yes]) CHECK_WITH([cinlib],[cinelerra library path],[CINLIB_DIR],[auto]) CHECK_WITH([cindat],[cinelerra share path],[CINDAT_DIR],[auto]) CHECK_WITH([plugin-dir],[plugin install dir],[PLUGIN_DIR],[auto]) CHECK_WITH([ladspa-dir],[ladspa install dir],[LADSPA_DIR],[auto]) +CHECK_WITH([ladspa-build],[build ladspa library],[LADSPA_BUILD],[yes]) CHECK_WITH([config-dir],[.bcast config dir],[CONFIG_DIR],[$$HOME/.bcast5]) CHECK_WITH([nested-dir],[nested proxy dir],[NESTED_DIR],[$$HOME/Videos]) CHECK_WITH([snap-dir],[snapshot/grabshot dir],[SNAP_DIR],[$$HOME/Pictures]) @@ -538,8 +536,6 @@ CHECK_LIB([XEXT], [Xext], [XShmQueryExtension]) CHECK_HEADERS([XEXT], [Xlib XShm extention], [X11/Xlib.h X11/extensions/XShm.h X11/extensions/shape.h]) CHECK_LIB([XINERAMA], [Xinerama], [XineramaQueryExtension]) CHECK_HEADERS([XINERAMA], [Xinerama headers], [X11/extensions/Xinerama.h]) -CHECK_LIB([XV], [Xv], [XvQueryExtension]) -CHECK_HEADERS([XV], [Xlib Xv extention], [X11/Xlib.h X11/extensions/Xvlib.h]) CHECK_LIB([XFIXES], [Xfixes], [XFixesQueryVersion]) CHECK_LIB([BZ2], [bz2], [BZ2_bzDecompress]) CHECK_LIB([FONTCONFIG], [fontconfig], [FcInit]) @@ -650,6 +646,10 @@ CHECK_WANT([GL], [auto], [use opengl], [ CHECK_LIB([GL], [GLU], [gluOrtho2D]) CHECK_HEADERS([GL], [opengl headers], [GL/gl.h GL/glext.h GL/glu.h GL/glx.h])]) +CHECK_WANT([XV], [auto], [use xv], [ + CHECK_LIB([xv], [Xv], [XvQueryExtension]) + CHECK_HEADERS([xv], [Xlib Xv extention], [X11/Xlib.h X11/extensions/Xvlib.h])]) + CHECK_WANT([OSS], [auto], [use OSS audio], [ CHECK_HEADERS([OSS], [oss headers], [sys/soundcard.h])]) @@ -690,6 +690,22 @@ CHECK_WANT([ESOUND], [no], [use esd], [ CHECK_LIB([audiofile], [audiofile], [afOpenFile]) CHECK_HEADERS([audiofile], [audiofile headers], [audiofile.h])]) +CHECK_WANT([PULSE], [auto], [use pulseaudio], [ + CHECK_LIB([pulse_simple], [pulse-simple], [pa_simple_new]) + CHECK_HEADERS([pulse_simple], [pulse-simple headers], [pulse/simple.h]) + CHECK_LIB([pulse], [pulse], [pa_context_new]) + CHECK_HEADERS([pulse], [pulse headers], [pulse/error.h])]) + +CHECK_WANT([ISOFS], [auto], [use isofs], [ + CHECK_HEADERS([isofs], [isofs headers], [linux/isofs.h])]) + +if test "x$WANT_LADSPA_BUILD" != "xyes" ; then + CHECK_WANT([LADSPA], [auto], [ladspa plugin clients], [ + CHECK_HEADERS([ladspa], [ladspa headers], [ladspa.h])]) +else + WANT_LADSPA=yes +fi + CHECK_WANT([SHUTTLE], [yes], [shuttle dev support], [ CHECK_HEADERS([keysyms], [x11 keysym defs], [X11/keysymdef.h])]) if test "x$WANT_SHUTTLE" = "xno"; then @@ -888,9 +904,9 @@ echo "" if test "x$WANT_CIN_3RDPARTY" != "xno"; then CFG_CFLAGS+=" -DHAVE_CIN_3RDPARTY" fi -for v in GL XFT XXF86VM OSS ALSA FIREWIRE DV DVB \ - VIDEO4LINUX2 ESOUND PACTL OPENEXR LV2 \ - COMMERCIAL LIBZMPEG SHUTTLE SHUTTLE_USB \ +for v in GL XFT XXF86VM OSS ALSA FIREWIRE DV DVB LADSPA \ + VIDEO4LINUX2 ESOUND PULSE PACTL OPENEXR LV2 \ + COMMERCIAL LIBZMPEG SHUTTLE SHUTTLE_USB XV \ VAAPI VDPAU CUDA NV WINTV X10TV; do eval vv="\$WANT_$v" if test "x$vv" != "xno"; then @@ -1071,6 +1087,22 @@ if test "x$CFG_LDFLAGS" != "x" ; then echo "" fi +if test "x$CYGWIN" != "x" ; then + echo 'FF_DIR ?= /usr/local' + echo 'CFLAGS += -I$(FF_DIR)/include' + echo 'LDFLAGS += -L$(FF_DIR)/lib' + echo "" + echo "CFLAGS += -DNO_BTRACE" + echo "CFLAGS += -DNO_GDB" + echo "CFLAGS += -DNO_CTX" + echo "CFLAGS += -DNO_PRCTL" + echo "CFLAGS += -DNO_TID" + echo "CFLAGS += -DNO_XSELECT" + echo "" +else + LDFLAGS+=" -z noexecstack" +fi + if test "x$WANT_X264_HIDEPTH" = "xyes" ; then X264_CFG_PARAMS="$X264_CFG_PARAMS --bit-depth=10" fi @@ -1153,3 +1185,4 @@ fi if test "x$X265_CFG_PARAMS" != "x" ; then echo "x265.cfg_params :=$X265_CFG_PARAMS -DENABLE_SHARED=no" fi + diff --git a/cinelerra-5.1/guicast/bcbitmap.C b/cinelerra-5.1/guicast/bcbitmap.C index 2d8b621f..81842bbb 100644 --- a/cinelerra-5.1/guicast/bcbitmap.C +++ b/cinelerra-5.1/guicast/bcbitmap.C @@ -29,7 +29,10 @@ #include #include + +#ifdef HAVE_XV #include +#endif int BC_Bitmap::max_active_buffers = 0; int BC_Bitmap::zombies = 0; @@ -124,6 +127,8 @@ void BC_Bitmap::reque(BC_BitmapImage *bfr) avail_lock->unlock(); } + +#ifdef HAVE_XV BC_XvShmImage::BC_XvShmImage(BC_Bitmap *bitmap, int index, int w, int h, int color_model) : BC_BitmapImage(bitmap, index) @@ -166,6 +171,7 @@ BC_XvShmImage::~BC_XvShmImage() XShmDetach(top_level->display, &shm_info); shmdt(shm_info.shmaddr); } +#endif BC_XShmImage::BC_XShmImage(BC_Bitmap *bitmap, int index, @@ -211,6 +217,7 @@ BC_XShmImage::~BC_XShmImage() +#ifdef HAVE_XV BC_XvImage::BC_XvImage(BC_Bitmap *bitmap, int index, int w, int h, int color_model) : BC_BitmapImage(bitmap, index) @@ -237,6 +244,7 @@ BC_XvImage::~BC_XvImage() { XFree(xv_image); } +#endif BC_XImage::BC_XImage(BC_Bitmap *bitmap, int index, @@ -371,13 +379,16 @@ BC_BitmapImage *BC_Bitmap::new_buffer(int type, int idx) BC_BitmapImage *buffer = 0; if( idx < 0 ) { if( type == bmXShmImage ) type = bmXImage; +#ifdef HAVE_XV else if( type == bmXvShmImage ) type = bmXvImage; +#endif } switch( type ) { default: case bmXImage: buffer = new BC_XImage(this, idx, w, h, color_model); break; +#ifdef HAVE_XV case bmXvImage: buffer = new BC_XvImage(this, idx, w, h, color_model); break; @@ -387,6 +398,7 @@ BC_BitmapImage *BC_Bitmap::new_buffer(int type, int idx) case bmXvShmImage: buffer = new BC_XvShmImage(this, idx, w, h, color_model); break; +#endif } if( buffer->is_zombie() ) ++zombies; return buffer; @@ -445,11 +457,19 @@ int BC_Bitmap::allocate_data() else if( bsz >= 0x400000 ) max_buffer_count /= 8; else if( bsz >= 0x100000 ) max_buffer_count /= 4; else if( bsz >= 0x10000 ) max_buffer_count /= 2; - type = hardware_scaling() ? bmXvShmImage : bmXShmImage; + type = +#ifdef HAVE_XV + hardware_scaling() ? bmXvShmImage : +#endif + bmXShmImage; count = MIN_BITMAP_BUFFERS; } else // use unshared memory. - type = hardware_scaling() ? bmXvImage : bmXImage; + type = +#ifdef HAVE_XV + hardware_scaling() ? bmXvImage : +#endif + bmXImage; update_buffers(count); return 0; } @@ -531,6 +551,7 @@ int BC_XShmImage::write_drawable(Drawable &pixmap, GC &gc, return 0; } +#ifdef HAVE_XV int BC_XvImage::write_drawable(Drawable &pixmap, GC &gc, int source_x, int source_y, int source_w, int source_h, int dest_x, int dest_y, int dest_w, int dest_h) @@ -552,6 +573,7 @@ int BC_XvShmImage::write_drawable(Drawable &pixmap, GC &gc, dest_x, dest_y, dest_w, dest_h, bitmap->shm_reply); return 0; } +#endif int BC_Bitmap::write_drawable(Drawable &pixmap, GC &gc, int source_x, int source_y, int source_w, int source_h, diff --git a/cinelerra-5.1/guicast/bcbitmap.h b/cinelerra-5.1/guicast/bcbitmap.h index f065000a..95b58684 100644 --- a/cinelerra-5.1/guicast/bcbitmap.h +++ b/cinelerra-5.1/guicast/bcbitmap.h @@ -27,7 +27,11 @@ #include #include #include +#ifdef HAVE_XV #include +#else +typedef struct _XvImage XvImage; +#endif #include "bcwindowbase.inc" #include "bcbitmap.inc" @@ -58,8 +62,10 @@ class BC_BitmapImage : public ListItem { friend class BC_Bitmap; friend class BC_XImage; friend class BC_XShmImage; +#ifdef HAVE_XV friend class BC_XvImage; friend class BC_XvShmImage; +#endif friend class BC_ActiveBitmaps; protected: int read_frame_rgb(VFrame* frame); @@ -122,6 +128,7 @@ public: int read_drawable(Drawable &pixmap, int source_x, int source_y); }; +#ifdef HAVE_XV class BC_XvImage : public BC_BitmapImage { long xv_offset(int i) { return xv_image->offsets[i]; } unsigned char* xv_plane(int i) { return get_data() + xv_offset(i); } @@ -151,15 +158,17 @@ public: int source_x, int source_y, int source_w, int source_h, int dest_x, int dest_y, int dest_w, int dest_h); }; - +#endif class BC_Bitmap { friend class BC_XImage; friend class BC_XShmImage; +#ifdef HAVE_XV friend class BC_XvImage; friend class BC_XvShmImage; +#endif friend class BC_BitmapImage; friend class BC_ActiveBitmaps; int buffer_count, max_buffer_count; diff --git a/cinelerra-5.1/guicast/bcclipboard.C b/cinelerra-5.1/guicast/bcclipboard.C index aa3b2f08..7fa70fcb 100644 --- a/cinelerra-5.1/guicast/bcclipboard.C +++ b/cinelerra-5.1/guicast/bcclipboard.C @@ -113,18 +113,24 @@ void BC_Clipboard::run() XEvent event; int done = 0; #ifndef SINGLE_THREAD +#ifndef NO_XSELECT int x_fd = ConnectionNumber(out_display); +#endif #endif while(!done) { #ifndef SINGLE_THREAD // see bcwindowevents.C regarding XNextEvent +#ifndef NO_XSELECT fd_set x_fds; FD_ZERO(&x_fds); FD_SET(x_fd, &x_fds); struct timeval tv; tv.tv_sec = 0; tv.tv_usec = 200000; select(x_fd + 1, &x_fds, 0, 0, &tv); +#else + usleep(100000); +#endif XLockDisplay(out_display); while( XPending(out_display) ) { diff --git a/cinelerra-5.1/guicast/bcsignals.C b/cinelerra-5.1/guicast/bcsignals.C index c68e39a4..ffc8a1c1 100644 --- a/cinelerra-5.1/guicast/bcsignals.C +++ b/cinelerra-5.1/guicast/bcsignals.C @@ -25,10 +25,13 @@ #include "bckeyboard.h" #include "bcresources.h" #include "cstrdup.h" +#include "filesystem.h" #include #include +#ifndef NO_BTRACE #include +#endif #include #include #include @@ -37,7 +40,9 @@ #include #include #include +#ifndef NO_PRCTL #include +#endif #include BC_Signals* BC_Signals::global_signals = 0; @@ -182,6 +187,7 @@ static const char* signal_titles[] = void BC_Signals::dump_stack(FILE *fp) { +#ifndef NO_BTRACE void *buffer[256]; int total = backtrace (buffer, 256); char **result = backtrace_symbols (buffer, total); @@ -190,6 +196,7 @@ void BC_Signals::dump_stack(FILE *fp) { fprintf(fp, "%s\n", result[i]); } +#endif } // Kill subprocesses @@ -270,15 +277,18 @@ static void signal_entry_recoverable(int signum) getpid()); } +#ifndef NO_PRCTL // used to terminate child processes when program terminates static void handle_exit(int signum) { //printf("child %d exit\n", getpid()); exit(0); } +#endif void BC_Signals::set_sighup_exit(int enable) { +#ifndef NO_PRCTL if( enable ) { // causes SIGHUP to be generated when parent dies signal(SIGHUP, handle_exit); @@ -291,6 +301,7 @@ void BC_Signals::set_sighup_exit(int enable) signal(SIGHUP, signal_entry); prctl(PR_SET_PDEATHSIG, 0,0,0,0); } +#endif } BC_Signals::BC_Signals() @@ -379,6 +390,7 @@ const char* BC_Signals::sig_to_str(int number) } +#ifndef NO_CTX #include #include #include "thread.h" @@ -463,6 +475,8 @@ static void reg_dump(FILE *fp,sigregs_t *rp) {} #error gotta have IP #endif +// HAVE_CTX +#endif static void handle_dump(int n, siginfo_t * info, void *sc) { @@ -474,13 +488,16 @@ static void handle_dump(int n, siginfo_t * info, void *sc) // it is not necessary to be root if ptrace is allowed via: // echo 0 > /proc/sys/kernel/yama/ptrace_scope (usually set to 1) // if( uid != 0 ) return; - ucontext_t *uc = (ucontext_t *)sc; int pid = getpid(), tid = gettid(); + void *ip = 0; +#ifndef NO_CTX + ucontext_t *uc = (ucontext_t *)sc; struct sigregs_t *c = (struct sigregs_t *)&uc->uc_mcontext; - uint8_t *ip = (uint8_t *)c->IP; + ip = (void *)c->IP; +#endif fprintf(stderr,"** %s at %p in pid %d, tid %d\n", n==SIGSEGV? "segv" : n==SIGINT? "intr" : "trap", - (void*)ip, pid, tid); + ip, pid, tid); FILE *fp = 0; char fn[PATH_MAX]; if( BC_Signals::trap_path ) { @@ -491,7 +508,7 @@ static void handle_dump(int n, siginfo_t * info, void *sc) fprintf(stderr,"writing debug data to %s\n", fn); fprintf(fp,"** %s at %p in pid %d, tid %d\n", n==SIGSEGV? "segv" : n==SIGINT? "intr" : "trap", - (void*)c->IP, pid, tid); + ip, pid, tid); } else { strcpy(fn, "stdout"); @@ -521,6 +538,7 @@ static void handle_dump(int n, siginfo_t * info, void *sc) fprintf(fp,"\nSTATUS:\n"); bc_copy_textfile(INT_MAX, fp,"/proc/%d/status",pid); fprintf(fp,"\nFD:\n"); bc_list_openfiles(INT_MAX, fp,"/proc/%d/fd", pid); fprintf(fp,"\nMAPS:\n"); bc_copy_textfile(INT_MAX, fp,"/proc/%d/maps",pid); +#ifndef NO_CTX char proc_mem[64]; if( tid > 0 && tid != pid ) sprintf(proc_mem,"/proc/%d/task/%d/mem",pid,tid); @@ -530,7 +548,7 @@ static void handle_dump(int n, siginfo_t * info, void *sc) if( pfd >= 0 ) { fprintf(fp,"\nCODE:\n"); for( int i=-32; i<32; ) { - uint8_t v; void *vp = (void *)(ip + i); + uint8_t v; void *vp = (void *)((char*)ip + i); if( !(i & 7) ) fprintf(fp,"%p: ", vp); if( pread(pfd,&v,sizeof(v),(off_t)vp) != sizeof(v) ) break; fprintf(fp,"%c%02x", !i ? '>' : ' ', v); @@ -541,10 +559,11 @@ static void handle_dump(int n, siginfo_t * info, void *sc) } else fprintf(fp,"err opening: %s, %m\n", proc_mem); - reg_dump(fp, c); +#endif fprintf(fp,"\n\n"); if( fp != stdout ) fclose(fp); +#ifndef NO_GDB char cmd[1024], *cp = cmd; cp += sprintf(cp, "exec gdb /proc/%d/exe -p %d --batch --quiet " "-ex \"thread apply all info registers\" " @@ -566,5 +585,6 @@ static void handle_dump(int n, siginfo_t * info, void *sc) } char *const argv[4] = { (char*) "/bin/sh", (char*) "-c", cmd, 0 }; execvp(argv[0], &argv[0]); +#endif } diff --git a/cinelerra-5.1/guicast/bctextbox.C b/cinelerra-5.1/guicast/bctextbox.C index 128d514b..f300e66c 100644 --- a/cinelerra-5.1/guicast/bctextbox.C +++ b/cinelerra-5.1/guicast/bctextbox.C @@ -58,14 +58,14 @@ BC_TextBox::BC_TextBox(int x, int y, int w, int rows, } BC_TextBox::BC_TextBox(int x, int y, int w, int rows, - int size, wchar_t *wtext, int has_border, int font) + int size, wchr_t *wtext, int has_border, int font) : BC_SubWindow(x, y, w, 0, -1) { is_utf8 = 1; skip_cursor = 0; reset_parameters(rows, has_border, font, size); - wdemand(wcslen(wtext)); - wcsncpy(this->wtext, wtext, wsize); + wdemand(wstrlen(wtext)); + wstrncpy(this->wtext, wtext, wsize); } BC_TextBox::BC_TextBox(int x, int y, int w, int rows, @@ -79,15 +79,15 @@ BC_TextBox::BC_TextBox(int x, int y, int w, int rows, } BC_TextBox::BC_TextBox(int x, int y, int w, int rows, - const wchar_t *wtext, int has_border, int font, int is_utf8) + const wchr_t *wtext, int has_border, int font, int is_utf8) : BC_SubWindow(x, y, w, 0, -1) { this->is_utf8 = is_utf8; skip_cursor = 0; reset_parameters(rows, has_border, font, BCTEXTLEN); wsize = BCTEXTLEN; - wtext = new wchar_t[wsize+1]; - wcsncpy(this->wtext, wtext, wsize); + wtext = new wchr_t[wsize+1]; + wstrncpy(this->wtext, wtext, wsize); this->wtext[wsize] = 0; } @@ -224,20 +224,20 @@ int BC_TextBox::wtext_update() int nsize = tsize > 0 ? tsize : tlen + BCTEXTLEN; wdemand(nsize); wlen = BC_Resources::encode(src_enc, dst_enc, text, tlen, - (char*)wtext, wsize*sizeof(wchar_t)) / sizeof(wchar_t); + (char*)wtext, wsize*sizeof(wchr_t)) / sizeof(wchr_t); dirty = 0; } wtext[wlen] = 0; return wlen; } -int BC_TextBox::text_update(const wchar_t *wcp, int wsz, char *tcp, int tsz) +int BC_TextBox::text_update(const wchr_t *wcp, int wsz, char *tcp, int tsz) { const char *src_enc = BC_Resources::wide_encoding; const char *dst_enc = BC_Resources::encoding; - if( wsz < 0 ) wsz = wcslen(wcp); + if( wsz < 0 ) wsz = wstrlen(wcp); int len = BC_Resources::encode(src_enc, dst_enc, - (char*)wcp, wsz*sizeof(wchar_t), tcp, tsz); + (char*)wcp, wsz*sizeof(wchr_t), tcp, tsz); tcp[len] = 0; return len; } @@ -460,11 +460,11 @@ int BC_TextBox::update(const char *text) return 0; } -int BC_TextBox::update(const wchar_t *wtext) +int BC_TextBox::update(const wchr_t *wtext) { - int wtext_len = wcslen(wtext); + int wtext_len = wstrlen(wtext); wdemand(wtext_len); - wcsncpy(this->wtext, wtext, wsize); + wstrncpy(this->wtext, wtext, wsize); this->wlen = wtext_len; if(highlight_letter1 > wtext_len) highlight_letter1 = wtext_len; if(highlight_letter2 > wtext_len) highlight_letter2 = wtext_len; @@ -541,7 +541,7 @@ const char* BC_TextBox::get_text() return text; } -const wchar_t* BC_TextBox::get_wtext() +const wchr_t* BC_TextBox::get_wtext() { wtext_update(); return wtext; @@ -664,7 +664,7 @@ void BC_TextBox::draw(int flush) for(i=0, k=text_y; i < wtext_len && k < get_h(); k += text_height) { // Draw row of text row_begin = i; - wchar_t *wtext_row = &wtext[i]; + wchr_t *wtext_row = &wtext[i]; for( ; iget_keypress(), len; - wchar_t *wkeys = top_level->get_wkeystring(&len); + wchr_t *wkeys = top_level->get_wkeystring(&len); switch( key ) { case KPENTER: key = '\n'; goto kpchr; case KPMINUS: key = '-'; goto kpchr; @@ -1158,7 +1158,7 @@ int BC_TextBox::keypress_event() last_keypress = get_keypress(); if( unicode_active >= 0 ) { - wchar_t wch = 0; + wchr_t wch = 0; int wlen = -1; switch( last_keypress ) { //unicode active acitons @@ -1642,7 +1642,7 @@ int BC_TextBox::keypress_event() case 'u': case 'U': { if( shift_down() ) { unicode_active = ibeam_letter; - wchar_t wkey = 'U'; + wchr_t wkey = 'U'; insert_text(&wkey, 1); find_ibeam(1); highlight_letter1 = unicode_active; @@ -1737,7 +1737,7 @@ int BC_TextBox::wdemand(int len) { if( wtext && wsize >= len ) return 0; int nsize = len + wlen/2 + BCTEXTLEN; - wchar_t *ntext = new wchar_t[nsize+1]; + wchr_t *ntext = new wchr_t[nsize+1]; ntext[nsize] = 0; memcpy(ntext, wtext, wsize*sizeof(wtext[0])); delete [] wtext; wtext = ntext; wsize = nsize; @@ -1756,9 +1756,9 @@ int BC_TextBox::tdemand(int len) return 1; } -void BC_TextBox::insert_text(const wchar_t *wcp, int len) +void BC_TextBox::insert_text(const wchr_t *wcp, int len) { - if( len < 0 ) len = wcslen(wcp); + if( len < 0 ) len = wstrlen(wcp); int wtext_len = wtext_update(); wdemand(wtext_len + len + 1); if( unicode_active < 0 && highlight_letter1 < highlight_letter2 ) { @@ -2101,11 +2101,11 @@ void BC_TextBox::paste_selection(int clipboard_num) int len = clipboard_len(clipboard_num); if( len > 0 ) { - char cstring[len]; wchar_t wstring[len]; + char cstring[len]; wchr_t wstring[len]; from_clipboard(cstring, len, clipboard_num); --len; //printf("BC_TextBox::paste_selection %d '%*.*s'\n",len,len,len,cstring); len = BC_Resources::encode(BC_Resources::encoding, BC_Resources::wide_encoding, - cstring,len, (char *)wstring,(len+1)*sizeof(wchar_t)) / sizeof(wchar_t); + cstring,len, (char *)wstring,(len+1)*sizeof(wchr_t)) / sizeof(wchr_t); insert_text(wstring, len); last_keypress = 0; } @@ -2212,7 +2212,7 @@ BC_ScrollTextBox::BC_ScrollTextBox(BC_WindowBase *parent_window, BC_ScrollTextBox::BC_ScrollTextBox(BC_WindowBase *parent_window, int x, int y, int w, int rows, - const wchar_t *default_wtext, int default_size) + const wchr_t *default_wtext, int default_size) { this->parent_window = parent_window; this->x = x; @@ -2263,7 +2263,7 @@ void BC_ScrollTextBox::update(const char *text) update_scrollbars(); } -void BC_ScrollTextBox::update(const wchar_t *wtext) +void BC_ScrollTextBox::update(const wchr_t *wtext) { this->text->update(wtext); update_scrollbars(); @@ -2289,7 +2289,7 @@ int BC_ScrollTextBox::button_release_event() int BC_ScrollTextBox::get_h() { return text->get_h(); } const char *BC_ScrollTextBox::get_text() { return text->get_text(); } -const wchar_t *BC_ScrollTextBox::get_wtext() { return text->get_wtext(); } +const wchr_t *BC_ScrollTextBox::get_wtext() { return text->get_wtext(); } int BC_ScrollTextBox::get_buttonpress() { @@ -2325,10 +2325,10 @@ BC_ScrollTextBoxText::BC_ScrollTextBoxText(BC_ScrollTextBox *gui, const char *te this->gui = gui; } -BC_ScrollTextBoxText::BC_ScrollTextBoxText(BC_ScrollTextBox *gui, const wchar_t *wtext) +BC_ScrollTextBoxText::BC_ScrollTextBoxText(BC_ScrollTextBox *gui, const wchr_t *wtext) : BC_TextBox(gui->x, gui->y, gui->w - get_resources()->vscroll_data[SCROLL_HANDLE_UP]->get_w(), - gui->rows, gui->default_size, (wchar_t*)wtext, 1, MEDIUMFONT) + gui->rows, gui->default_size, (wchr_t*)wtext, 1, MEDIUMFONT) { this->gui = gui; } @@ -2469,7 +2469,7 @@ BC_PopupTextBoxText::BC_PopupTextBoxText(BC_PopupTextBox *popup, int x, int y, c this->popup = popup; } -BC_PopupTextBoxText::BC_PopupTextBoxText(BC_PopupTextBox *popup, int x, int y, const wchar_t *wtext) +BC_PopupTextBoxText::BC_PopupTextBoxText(BC_PopupTextBox *popup, int x, int y, const wchr_t *wtext) : BC_TextBox(x, y, popup->text_w, 1, wtext, BCTEXTLEN) { this->popup = popup; @@ -2569,7 +2569,7 @@ int BC_PopupTextBox::handle_event() } const char *BC_PopupTextBox::get_text() { return textbox->get_text(); } -const wchar_t *BC_PopupTextBox::get_wtext() { return textbox->get_wtext(); } +const wchr_t *BC_PopupTextBox::get_wtext() { return textbox->get_wtext(); } int BC_PopupTextBox::get_number() { return list_item; } void BC_PopupTextBox::set_number(int v) { list_item = v; } int BC_PopupTextBox::get_x() { return x; } @@ -2774,7 +2774,7 @@ const char* BC_TumbleTextBox::get_text() return textbox->get_text(); } -const wchar_t* BC_TumbleTextBox::get_wtext() +const wchr_t* BC_TumbleTextBox::get_wtext() { return textbox->get_wtext(); } diff --git a/cinelerra-5.1/guicast/bctextbox.h b/cinelerra-5.1/guicast/bctextbox.h index f96446d6..ec414278 100644 --- a/cinelerra-5.1/guicast/bctextbox.h +++ b/cinelerra-5.1/guicast/bctextbox.h @@ -55,17 +55,17 @@ class BC_TextBox : public BC_SubWindow // may be local fixed/dynamic, or shared fixed ref via set_text char *text; // always local dynamic - wchar_t *wtext; + wchr_t *wtext; public: // size > 0: fixed buffer, size == 0: dynamic buffer // size < 0: fixed shared buffer via set_text BC_TextBox(int x, int y, int w, int rows, int size, char *text, int has_border=1, int font=MEDIUMFONT); - BC_TextBox(int x, int y, int w, int rows, int size, wchar_t *wtext, + BC_TextBox(int x, int y, int w, int rows, int size, wchr_t *wtext, int has_border=1, int font=MEDIUMFONT); BC_TextBox(int x, int y, int w, int rows, const char *text, int has_border=1, int font=MEDIUMFONT, int is_utf8=1); - BC_TextBox(int x, int y, int w, int rows, const wchar_t *wtext, + BC_TextBox(int x, int y, int w, int rows, const wchr_t *wtext, int has_border=1, int font=MEDIUMFONT, int is_utf8=1); BC_TextBox(int x, int y, int w, int rows, int64_t text, int has_border=1, int font=MEDIUMFONT); @@ -87,7 +87,7 @@ public: void set_selection(int char1, int char2, int ibeam); void wset_selection(int char1, int char2, int ibeam); int update(const char *text); - int update(const wchar_t *wtext); + int update(const wchr_t *wtext); int update(int64_t value); int update(float value); void disable(); @@ -110,7 +110,7 @@ public: int activate(); int deactivate(); const char* get_text(); - const wchar_t* get_wtext(); + const wchr_t* get_wtext(); void set_text(char *text, int isz); int wdemand(int len); int tdemand(int len); @@ -177,7 +177,7 @@ private: void copy_selection(int clipboard_num); void paste_selection(int clipboard_num); void delete_selection(int letter1, int letter2, int text_len); - void insert_text(const wchar_t *wcp, int len=-1); + void insert_text(const wchr_t *wcp, int len=-1); // Reformat text according to separators. // ibeam_left causes the ibeam to move left. int is_separator(const char *txt, int i); @@ -195,7 +195,7 @@ private: int tstrcmp(const char *cp); char *tstrcpy(const char *cp); char *tstrcat(const char *cp); - int text_update(const wchar_t *wcp, int wsz, char *tcp, int tsz); + int text_update(const wchr_t *wcp, int wsz, char *tcp, int tsz); int wtext_update(); // Top left of text relative to window @@ -257,7 +257,7 @@ class BC_ScrollTextBox BC_ScrollTextBoxYScroll *yscroll; BC_WindowBase *parent_window; const char *default_text; - const wchar_t *default_wtext; + const wchr_t *default_wtext; int default_size; int x, y, w, rows; @@ -270,7 +270,7 @@ public: const char *default_text, int default_size=BCTEXTLEN); BC_ScrollTextBox(BC_WindowBase *parent_window, int x, int y, int w, int rows, - const wchar_t *default_wtext, int default_size=BCTEXTLEN); + const wchr_t *default_wtext, int default_size=BCTEXTLEN); virtual ~BC_ScrollTextBox(); void create_objects(); @@ -281,7 +281,7 @@ public: void set_text(char *text, int isz); int set_text_row(int n); void update(const char *text); - void update(const wchar_t *wtext); + void update(const wchr_t *wtext); void reposition_window(int x, int y, int w, int rows); void update_scrollbars(); // accessors @@ -295,7 +295,7 @@ public: // forward functions int get_h(); const char *get_text(); - const wchar_t *get_wtext(); + const wchr_t *get_wtext(); int get_buttonpress(); void wset_selection(int char1, int char2, int ibeam); void set_selection(int char1, int char2, int ibeam); @@ -306,7 +306,7 @@ class BC_ScrollTextBoxText : public BC_TextBox { public: BC_ScrollTextBoxText(BC_ScrollTextBox *gui, const char *text); - BC_ScrollTextBoxText(BC_ScrollTextBox *gui, const wchar_t *wtext); + BC_ScrollTextBoxText(BC_ScrollTextBox *gui, const wchr_t *wtext); virtual ~BC_ScrollTextBoxText(); int handle_event(); int motion_event(); @@ -351,7 +351,7 @@ public: virtual int handle_event(); const char *get_text(); - const wchar_t *get_wtext(); + const wchr_t *get_wtext(); int get_number(); void set_number(int v); int get_x(); @@ -376,7 +376,7 @@ private: int x, y, text_w, list_h; int list_format, list_item; const char *default_text; - const wchar_t *default_wtext; + const wchr_t *default_wtext; ArrayList *list_items; BC_PopupTextBoxText *textbox; BC_PopupTextBoxList *listbox; @@ -387,7 +387,7 @@ class BC_PopupTextBoxText : public BC_TextBox { public: BC_PopupTextBoxText(BC_PopupTextBox *popup, int x, int y, const char *text); - BC_PopupTextBoxText(BC_PopupTextBox *popup, int x, int y, const wchar_t *wtext); + BC_PopupTextBoxText(BC_PopupTextBox *popup, int x, int y, const wchr_t *wtext); virtual ~BC_PopupTextBoxText(); int handle_event(); BC_PopupTextBox *popup; @@ -428,7 +428,7 @@ public: virtual int handle_up_event(); virtual int handle_down_event(); const char* get_text(); - const wchar_t* get_wtext(); + const wchr_t* get_wtext(); BC_TextBox* get_textbox(); int update(const char *value); int update(int64_t value); diff --git a/cinelerra-5.1/guicast/bctrace.C b/cinelerra-5.1/guicast/bctrace.C index 7e453925..2d08b46b 100644 --- a/cinelerra-5.1/guicast/bctrace.C +++ b/cinelerra-5.1/guicast/bctrace.C @@ -309,7 +309,7 @@ void BC_Trace::dump_traces(FILE *fp) } } -void trace_info::set_owner() { owner = pthread_self(); } +void trace_info::set_owner() { owner = (unsigned long)pthread_self(); } void trace_info::unset_owner() { owner = 0; } void BC_Trace::dump_locks(FILE *fp) @@ -322,7 +322,7 @@ void BC_Trace::dump_locks(FILE *fp) fprintf(fp," %p %s, %s %p%s", p->info, p->title, p->loc, (void*)p->tid, p->is_owner ? " *" : ""); - if( p->info->owner && p->info->owner != p->tid ) + if( p->info->owner && p->info->owner != (unsigned long)p->tid ) fprintf(fp," %p", (void*)p->info->owner); fprintf(fp,"\n"); } diff --git a/cinelerra-5.1/guicast/bcwindowbase.C b/cinelerra-5.1/guicast/bcwindowbase.C index 9a730f95..a35645ad 100644 --- a/cinelerra-5.1/guicast/bcwindowbase.C +++ b/cinelerra-5.1/guicast/bcwindowbase.C @@ -57,7 +57,9 @@ #include #include +#ifdef HAVE_XV #include +#endif #include #include #include @@ -205,9 +207,10 @@ BC_WindowBase::~BC_WindowBase() XFree(xinerama_info); xinerama_screens = 0; xinerama_info = 0; +#ifdef HAVE_XV if( xvideo_port_id >= 0 ) XvUngrabPort(display, xvideo_port_id, CurrentTime); - +#endif unlock_window(); // Must be last reference to display. // _XftDisplayInfo needs a lock. @@ -869,8 +872,11 @@ int BC_WindowBase::keysym_lookup(XEvent *event) wkey_string_length = 0; if( input_context ) { + wchar_t wkey[4]; wkey_string_length = XwcLookupString(input_context, - (XKeyEvent*)event, wkey_string, 4, &keysym, 0); + (XKeyEvent*)event, wkey, 4, &keysym, 0); + for( int i=0; iuse_xvideo || // disabled !get_resources()->use_shm ) // Only local server is fast enough. return -1; @@ -3160,8 +3167,10 @@ int BC_WindowBase::grab_port_id(int color_model) } XvFreeAdaptorInfo(info); - return xvideo_port_id; +#else + return -1; +#endif } @@ -4039,7 +4048,7 @@ int BC_WindowBase::ctrl_down() return top_level->ctrl_mask; } -wchar_t* BC_WindowBase::get_wkeystring(int *length) +wchr_t* BC_WindowBase::get_wkeystring(int *length) { if(length) *length = top_level->wkey_string_length; diff --git a/cinelerra-5.1/guicast/bcwindowbase.h b/cinelerra-5.1/guicast/bcwindowbase.h index 7e36cd67..6ce2128d 100644 --- a/cinelerra-5.1/guicast/bcwindowbase.h +++ b/cinelerra-5.1/guicast/bcwindowbase.h @@ -105,6 +105,22 @@ //typedef void* GLXContext; #endif +typedef uint32_t wchr_t; + +static inline size_t wstrlen(const wchr_t *s) +{ + size_t len = 0; + while( s[len] ) ++len; + return len; +} + +static inline wchr_t *wstrncpy(wchr_t *dest, const wchr_t *src, size_t n) +{ + for( wchr_t *dp=dest; n>0 && (*dp++=*src++); --n ); + return dest; +} + + class BC_ResizeCall { public: @@ -313,7 +329,7 @@ public: int get_buttonpress(); int get_has_focus(); int get_dragging(); - wchar_t* get_wkeystring(int *length = 0); + wchr_t* get_wkeystring(int *length = 0); int get_keypress(); int get_keysym() { return keysym; } #ifdef X_HAVE_UTF8_STRING @@ -341,7 +357,7 @@ public: int get_text_descent(int font); int get_text_height(int font, const char *text = 0); int get_text_width(int font, const char *text, int length = -1); - int get_text_width(int font, const wchar_t *text, int length = -1); + int get_text_width(int font, const wchr_t *text, int length = -1); // truncate the text with ... & return a new string char *get_truncated_text(int font, const char *text, int max_w); BC_Clipboard* get_clipboard(); @@ -405,10 +421,10 @@ public: void draw_text_line(int x, int y, const char *text, int len, BC_Pixmap *pixmap = 0); void draw_xft_text(int x, int y, const char *text, int len, BC_Pixmap *pixmap = 0, int is_utf8 = 0); - void draw_xft_text(int x, int y, const wchar_t *text, + void draw_xft_text(int x, int y, const wchr_t *text, int length, BC_Pixmap *pixmap); int draw_single_text(int draw, int font, - int x, int y, const wchar_t *text, int length = -1, BC_Pixmap *pixmap = 0); + int x, int y, const wchr_t *text, int length = -1, BC_Pixmap *pixmap = 0); void draw_center_text(int x, int y, const char *text, int length = -1); void draw_line(int x1, int y1, int x2, int y2, BC_Pixmap *pixmap = 0); void draw_polygon(ArrayList *x, ArrayList *y, BC_Pixmap *pixmap = 0); @@ -574,7 +590,7 @@ private: Cursor create_grab_cursor(); // Get width of a single line. Used by get_text_width int get_single_text_width(int font, const char *text, int length); - int get_single_text_width(int font, const wchar_t *text, int length); + int get_single_text_width(int font, const wchr_t *text, int length); int allocate_color_table(); int init_gc(); int init_fonts(); @@ -724,7 +740,7 @@ private: // Last key pressed int key_pressed; int wkey_string_length; - wchar_t wkey_string[4]; + wchr_t wkey_string[4]; #ifdef X_HAVE_UTF8_STRING char* key_pressed_utf8; #endif diff --git a/cinelerra-5.1/guicast/bcwindowdraw.C b/cinelerra-5.1/guicast/bcwindowdraw.C index ab44e7cc..eb35b63e 100644 --- a/cinelerra-5.1/guicast/bcwindowdraw.C +++ b/cinelerra-5.1/guicast/bcwindowdraw.C @@ -211,21 +211,21 @@ void BC_WindowBase::draw_xft_text(int x, int y, const char *text, int length, BC_Pixmap *pixmap, int is_utf8) { int l = length + 1; - wchar_t wide_text[l]; + wchr_t wide_text[l]; length = BC_Resources::encode( is_utf8 ? "UTF8" : BC_Resources::encoding, BC_Resources::wide_encoding, - (char*)text, length, (char*)wide_text, l*sizeof(wchar_t)) / sizeof(wchar_t); + (char*)text, length, (char*)wide_text, l*sizeof(wchr_t)) / sizeof(wchr_t); draw_xft_text(x, y, wide_text, length, pixmap); } void BC_WindowBase::draw_xft_text(int x, int y, - const wchar_t *text, int length, BC_Pixmap *pixmap) + const wchr_t *text, int length, BC_Pixmap *pixmap) { int dy = -1; - const wchar_t *wsp = text, *wep = wsp + length; + const wchr_t *wsp = text, *wep = wsp + length; int font = top_level->current_font; while( wsp < wep ) { - const wchar_t *wcp = wsp; + const wchr_t *wcp = wsp; while( wcp < wep && *wcp != '\n' ) ++wcp; int len = wcp - wsp; if( len > 0 ) @@ -272,16 +272,16 @@ void BC_WindowBase::xft_draw_string(XftColor *xft_color, XftFont *xft_font, } } -int BC_WindowBase::get_single_text_width(int font, const wchar_t *text, int length) +int BC_WindowBase::get_single_text_width(int font, const wchr_t *text, int length) { return draw_single_text(0, font, 0,0, text, length); } int BC_WindowBase::draw_single_text(int draw, int font, - int x, int y, const wchar_t *text, int length, BC_Pixmap *pixmap) + int x, int y, const wchr_t *text, int length, BC_Pixmap *pixmap) { if( length < 0 ) - length = wcslen(text); + length = wstrlen(text); if( !length ) return 0; if( !get_resources()->use_xft ) { @@ -319,7 +319,7 @@ int BC_WindowBase::draw_single_text(int draw, int font, int x0 = x; XftFont *basefont = top_level->get_xft_struct(font); XftFont *curfont = 0, *altfont = 0; - const wchar_t *up = text, *ubp = up, *uep = ubp + length; + const wchr_t *up = text, *ubp = up, *uep = ubp + length; while( up < uep ) { XftFont *xft_font = 0; diff --git a/cinelerra-5.1/guicast/bcwindowevents.C b/cinelerra-5.1/guicast/bcwindowevents.C index fa79458a..f05665f0 100644 --- a/cinelerra-5.1/guicast/bcwindowevents.C +++ b/cinelerra-5.1/guicast/bcwindowevents.C @@ -74,7 +74,9 @@ void BC_WindowEvents::run() // listening anymore and XCloseDisplay locks up. XEvent *event; #ifndef SINGLE_THREAD +#ifndef NO_XSELECT int x_fd = ConnectionNumber(window->display); +#endif #endif while(!done) @@ -89,6 +91,7 @@ void BC_WindowEvents::run() // This came from a linuxquestions post. // We can get a file descriptor for the X display & use select instead of XNextEvent. // The newest X11 library requires locking the display to use XNextEvent. +#ifndef NO_XSELECT fd_set x_fds; FD_ZERO(&x_fds); FD_SET(x_fd, &x_fds); @@ -96,6 +99,9 @@ void BC_WindowEvents::run() tv.tv_sec = 0; tv.tv_usec = 200000; //printf("BC_WindowEvents::run %d %s\n", __LINE__, window->title); select(x_fd + 1, &x_fds, 0, 0, &tv); +#else + usleep(100000); +#endif XLockDisplay(window->display); while(!done && XPending(window->display)) { diff --git a/cinelerra-5.1/guicast/cstrdup.h b/cinelerra-5.1/guicast/cstrdup.h index 59227cbe..db95285e 100644 --- a/cinelerra-5.1/guicast/cstrdup.h +++ b/cinelerra-5.1/guicast/cstrdup.h @@ -4,7 +4,6 @@ #include #include #include -#include static inline char *cstrcat(int n, ...) { int len = 0; va_list va; va_start(va,n); @@ -58,23 +57,33 @@ static inline int butf8(unsigned int v, char *&cp) } static inline int bstrcasecmp(const char *ap, const char *bp) -{ - int a, b, ret; +{ // not really correct, but what was left after MS port + int ret, a, b; do { - a = towlower(butf8(ap)); b = towlower(butf8(bp)); + if( (a=butf8(ap)) >= 'A' && a <= 'Z' ) a += 'a' - 'A'; + if( (b=butf8(bp)) >= 'A' && b <= 'Z' ) b += 'a' - 'A'; } while( !(ret=a-b) && a && b ); return ret; } static inline const char *bstrcasestr(const char *src, const char *tgt) { - int ssz = strlen(src), tsz = strlen(tgt), ret = 0; + int ssz = strlen(src), tsz = strlen(tgt); const char *cp = tgt; - wchar_t wtgt[tsz + 1], *tp = wtgt; - while( *cp ) *tp++ = towlower(butf8(cp)); + uint32_t wtgt[tsz+1], *tp = wtgt; + while( *cp ) { + int wch = butf8(cp); + if( wch >= 'A' && wch <= 'Z' ) wch += 'a' - 'A'; + *tp++ = wch; + } + *tp = 0; for( tsz=tp-wtgt; ssz>=tsz; ++src,--ssz ) { cp = src; tp = wtgt; - for( int i=tsz; --i>=0 && !(ret=towlower(butf8(cp))-*tp); ++tp ); + int ret = 0, wch = 0; + for( int i=tsz; --i>=0 && !ret && (wch=butf8(cp)); ) { + if( wch >= 'A' && wch <= 'Z' ) wch += 'a' - 'A'; + ret = wch - *tp++; + } if( !ret ) return src; } return 0; diff --git a/cinelerra-5.1/guicast/thread.h b/cinelerra-5.1/guicast/thread.h index 7ad81b23..79f3e713 100644 --- a/cinelerra-5.1/guicast/thread.h +++ b/cinelerra-5.1/guicast/thread.h @@ -25,12 +25,17 @@ #include #include #include + +#ifndef NO_TID #include // glibc >= 2.30 provides gettid() in unistd #if !defined(__GLIBC_PREREQ) || !__GLIBC_PREREQ(2, 30) static inline int gettid() { return syscall(SYS_gettid, 0, 0, 0); } #endif +#else +static inline long gettid() { return (long)pthread_self(); } +#endif // The thread does not autodelete by default. // If autodelete is 1 the thread autodeletes. diff --git a/cinelerra-5.1/plugins/chromakey/chromakey.C b/cinelerra-5.1/plugins/chromakey/chromakey.C index 6ec5af68..c627200d 100644 --- a/cinelerra-5.1/plugins/chromakey/chromakey.C +++ b/cinelerra-5.1/plugins/chromakey/chromakey.C @@ -809,7 +809,7 @@ SET_TRACE glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR); glDisable(GL_BLEND); SET_TRACE - return 0; #endif + return 0; } diff --git a/cinelerra-5.1/plugins/denoisefft/denoisefft.C b/cinelerra-5.1/plugins/denoisefft/denoisefft.C index 5737d4ce..7f84a769 100644 --- a/cinelerra-5.1/plugins/denoisefft/denoisefft.C +++ b/cinelerra-5.1/plugins/denoisefft/denoisefft.C @@ -434,7 +434,7 @@ void DenoiseFFTEffect::collect_noise() for(int i = 0; i < config.samples; i += WINDOW_SIZE) { collect_engine->process_buffer(collection_start, - WINDOW_SIZE, (Samples*)0, get_direction()); + WINDOW_SIZE, (Samples**)0, get_direction()); collection_start += step * WINDOW_SIZE; total_windows++; } diff --git a/cinelerra-5.1/plugins/mandelcuda/.swp b/cinelerra-5.1/plugins/mandelcuda/.swp deleted file mode 100644 index 5d9b1b9c..00000000 Binary files a/cinelerra-5.1/plugins/mandelcuda/.swp and /dev/null differ diff --git a/cinelerra-5.1/plugins/nbodycuda/.swp b/cinelerra-5.1/plugins/nbodycuda/.swp deleted file mode 100644 index 5d9b1b9c..00000000 Binary files a/cinelerra-5.1/plugins/nbodycuda/.swp and /dev/null differ diff --git a/cinelerra-5.1/plugins/shapewipe/Makefile b/cinelerra-5.1/plugins/shapewipe/Makefile index 85e9b300..b5e19639 100644 --- a/cinelerra-5.1/plugins/shapewipe/Makefile +++ b/cinelerra-5.1/plugins/shapewipe/Makefile @@ -1,6 +1,7 @@ include ../../plugin_defs OBJS = $(OBJDIR)/shapewipe.o +LFLAGS += -lpng PLUGIN = shapewipe diff --git a/cinelerra-5.1/plugins/titler/titler.C b/cinelerra-5.1/plugins/titler/titler.C index 88d65015..0fc66692 100644 --- a/cinelerra-5.1/plugins/titler/titler.C +++ b/cinelerra-5.1/plugins/titler/titler.C @@ -145,7 +145,7 @@ int TitleConfig::equivalent(TitleConfig &that) // fade_in == that.fade_in && fade_out == that.fade_out && // EQUIV(pixels_per_second, that.pixels_per_second) && wlen == that.wlen && - !memcmp(wtext, that.wtext, wlen * sizeof(wchar_t)) && + !memcmp(wtext, that.wtext, wlen * sizeof(wchr_t)) && title_x == that.title_x && title_y == that.title_y && title_w == that.title_w && title_h == that.title_h && // window_w == that.window_w && window_h == that.window_h && @@ -180,7 +180,7 @@ void TitleConfig::copy_from(TitleConfig &that) fade_out = that.fade_out; pixels_per_second = that.pixels_per_second; demand(wlen = that.wlen); - memcpy(wtext, that.wtext, that.wlen * sizeof(wchar_t)); + memcpy(wtext, that.wtext, that.wlen * sizeof(wchr_t)); title_x = that.title_x; title_y = that.title_y; title_w = that.title_w; title_h = that.title_h; window_w = that.window_w; window_h = that.window_h; @@ -218,7 +218,7 @@ void TitleConfig::interpolate(TitleConfig &prev, TitleConfig &next, fade_out = prev.fade_out; pixels_per_second = prev.pixels_per_second; demand(wlen = prev.wlen); - memcpy(wtext, prev.wtext, prev.wlen * sizeof(wchar_t)); + memcpy(wtext, prev.wtext, prev.wlen * sizeof(wchr_t)); wtext[wlen] = 0; this->title_x = prev.title_x == next.title_x ? prev.title_x : prev.title_x * prev_scale + next.title_x * next_scale; @@ -245,7 +245,7 @@ int TitleConfig::demand(long sz) if( wtext && wsize >= sz ) return 0; delete [] wtext; wsize = sz + wlen/2 + 0x1000; - wtext = new wchar_t[wsize+1]; + wtext = new wchr_t[wsize+1]; wtext[wsize] = 0; return 1; } @@ -254,7 +254,7 @@ void TitleConfig::to_wtext(const char *from_enc, const char *text, int tlen) { demand(tlen); wlen = BC_Resources::encode(from_enc, BC_Resources::wide_encoding, - (char*)text,tlen, (char *)wtext,sizeof(*wtext)*wsize) / sizeof(wchar_t); + (char*)text,tlen, (char *)wtext,sizeof(*wtext)*wsize) / sizeof(wchr_t); while( wlen > 0 && !wtext[wlen-1] ) --wlen; } @@ -1325,15 +1325,15 @@ BC_FontEntry* TitleMain::config_font() } -static inline bool is_ltr(wchar_t wch) { return iswalpha(wch); } -static inline bool is_nbr(wchar_t wch) { return iswdigit(wch); } -static inline bool is_ws(wchar_t wch) { return wch==' ' || wch=='\t'; } -static inline bool is_idch(wchar_t wch) { return is_ltr(wch) || is_nbr(wch) || wch=='_'; } +static inline bool is_ltr(wchr_t wch) { return iswalpha(wch); } +static inline bool is_nbr(wchr_t wch) { return iswdigit(wch); } +static inline bool is_ws(wchr_t wch) { return wch==' ' || wch=='\t'; } +static inline bool is_idch(wchr_t wch) { return is_ltr(wch) || is_nbr(wch) || wch=='_'; } // return eof=-1, chr=0, opener=1, closer=2 -int TitleParser::wget(wchar_t &wch) +int TitleParser::wget(wchr_t &wch) { - wchar_t *wip = wid, *wtp = wtxt; *wip = 0; *wtp = 0; + wchr_t *wip = wid, *wtp = wtxt; *wip = 0; *wtp = 0; int ilen = sizeof(wid)/sizeof(wid[0]); int tlen = sizeof(wtxt)/sizeof(wtxt[0]); int ich; @@ -1370,15 +1370,15 @@ int TitleParser::wget(wchar_t &wch) wch = ich; return ret; } -int TitleParser::tget(wchar_t &wch) +int TitleParser::tget(wchr_t &wch) { int ret = wget(wch); if( ret > 0 ) { - int wid_len = wcslen(wid)+1; + int wid_len = wstrlen(wid)+1; BC_Resources::encode( BC_Resources::wide_encoding, plugin->config.encoding, (char*)wid,wid_len*sizeof(wid[0]), (char *)id,sizeof(id)); - int wtxt_len = wcslen(wtxt)+1; + int wtxt_len = wstrlen(wtxt)+1; BC_Resources::encode( BC_Resources::wide_encoding, plugin->config.encoding, (char*)wtxt,wtxt_len*sizeof(wtxt[0]), (char *)text,sizeof(text)); @@ -1670,7 +1670,7 @@ void TitleMain::load_glyphs() int total_packages = 0; while( !wchrs.eof() ) { - wchar_t wch1 = wchrs.wcur(), wch; + wchr_t wch1 = wchrs.wcur(), wch; long ipos = wchrs.tell(); int ret = wchrs.tget(wch); if( ret > 0 ) { @@ -1778,7 +1778,7 @@ int TitleMain::get_text() if( !row ) row = title_rows.add(); TitleChar *chr = 0; long ipos = wchrs.tell(); - wchar_t wch1 = wchrs.wcur(), wch; + wchr_t wch1 = wchrs.wcur(), wch; int ret = wchrs.tget(wch); if( ret < 0 || wch == '\n' ) { if( row->x1 > row->x2 ) row->x1 = row->x2 = 0; @@ -2554,7 +2554,7 @@ void TitleMain::save_data(KeyFrame *keyframe) char text[tsz]; int text_len = BC_Resources::encode( BC_Resources::wide_encoding, DEFAULT_ENCODING, - (char*)config.wtext, config.wlen*sizeof(wchar_t), + (char*)config.wtext, config.wlen*sizeof(wchr_t), text, tsz); output.append_text(text, text_len); output.tag.set_title("/TITLE"); @@ -2621,15 +2621,15 @@ void TitleMain::read_data(KeyFrame *keyframe) } } -void TitleMain::insert_text(const wchar_t *wtxt, int pos) +void TitleMain::insert_text(const wchr_t *wtxt, int pos) { - int len = wcslen(wtxt); + int len = wstrlen(wtxt); int wlen = config.wlen; if( pos < 0 ) pos = 0; if( pos > wlen ) pos = wlen; config.demand(wlen + len); int wsize1 = config.wsize-1; - wchar_t *wtext = config.wtext; + wchr_t *wtext = config.wtext; for( int i=wlen, j=wlen+len; --i>=pos; ) { if( --j >= wsize1 ) continue; wtext[j] = wtext[i]; diff --git a/cinelerra-5.1/plugins/titler/titler.h b/cinelerra-5.1/plugins/titler/titler.h index cf4a2037..c047f990 100644 --- a/cinelerra-5.1/plugins/titler/titler.h +++ b/cinelerra-5.1/plugins/titler/titler.h @@ -161,7 +161,7 @@ public: double fade_in, fade_out; float pixels_per_second; // Speed of motion // Text to display - wchar_t *wtext; + wchr_t *wtext; long wsize, wlen; // Position in frame relative to top left float title_x, title_y; @@ -233,7 +233,7 @@ public: // Position of each image box in a row class TitleChar { public: - wchar_t wch; + wchr_t wch; int typ, flags; void *vp; int x, y; @@ -502,7 +502,7 @@ public: class TitleParser { - const wchar_t *bfr, *out, *lmt; + const wchr_t *bfr, *out, *lmt; public: TitleMain *plugin; @@ -511,9 +511,9 @@ public: bool eof() { return out >= lmt; } int wcur() { return eof() ? -1 : *out; } int wnext() { return eof() ? -1 : *out++; } - int wget(wchar_t &wch); - int tget(wchar_t &wch); - wchar_t wid[BCSTRLEN], wtxt[BCTEXTLEN]; + int wget(wchr_t &wch); + int tget(wchr_t &wch); + wchr_t wid[BCSTRLEN], wtxt[BCTEXTLEN]; char id[BCSTRLEN], text[BCTEXTLEN]; int set_attributes(int ret); @@ -587,7 +587,7 @@ public: void update_gui(); void save_data(KeyFrame *keyframe); void read_data(KeyFrame *keyframe); - void insert_text(const wchar_t *wtxt, int pos); + void insert_text(const wchr_t *wtxt, int pos); void build_previews(TitleWindow *gui); void reset_render(); diff --git a/cinelerra-5.1/plugins/titler/titlerwindow.C b/cinelerra-5.1/plugins/titler/titlerwindow.C index 84f50a36..4c879158 100644 --- a/cinelerra-5.1/plugins/titler/titlerwindow.C +++ b/cinelerra-5.1/plugins/titler/titlerwindow.C @@ -530,9 +530,9 @@ int TitleWindow::insert_ibeam(const char *txt, int ofs) { int ibeam = cur_ibeam; int ilen = strlen(txt)+1; - wchar_t wtxt[ilen]; + wchr_t wtxt[ilen]; int len = BC_Resources::encode(client->config.encoding, BC_Resources::wide_encoding, - (char*)txt,ilen, (char *)wtxt,ilen*sizeof(wtxt[0])) / sizeof(wchar_t); + (char*)txt,ilen, (char *)wtxt,ilen*sizeof(wtxt[0])) / sizeof(wchr_t); client->insert_text(wtxt, ibeam); while( len > 0 && !wtxt[len] ) --len; int adv = len+1 + ofs; @@ -582,7 +582,8 @@ void TitleWindow::update_gui() fade_out->update((float)client->config.fade_out); font->update(client->config.font); check_style(client->config.font,0); - text->update(client->config.wtext ? &client->config.wtext[0] : L""); + wchr_t wz[1] = { 0 }; + text->update(client->config.wtext ? &client->config.wtext[0] : wz); speed->update(client->config.pixels_per_second); outline->update((int64_t)client->config.outline_size); #ifdef USE_STROKER @@ -987,10 +988,10 @@ int TitleText::button_press_event() int TitleText::handle_event() { window->fonts_popup->deactivate(); - const wchar_t *wtext = get_wtext(); - long wlen = wcslen(wtext); + const wchr_t *wtext = get_wtext(); + long wlen = wstrlen(wtext); client->config.demand(wlen); - wcsncpy(client->config.wtext, wtext, client->config.wsize); + wstrncpy(client->config.wtext, wtext, client->config.wsize); client->config.wlen = wlen; window->update_stats(); window->send_configure_change(); diff --git a/cinelerra-5.1/po/es.po b/cinelerra-5.1/po/es.po index 4fa976fc..38326d9a 100644 --- a/cinelerra-5.1/po/es.po +++ b/cinelerra-5.1/po/es.po @@ -8,14 +8,14 @@ msgstr "" "Project-Id-Version: Cinelerra 5.1\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2016-10-15 14:02-0600\n" -"PO-Revision-Date: 2019-11-17 11:16-0300\n" +"PO-Revision-Date: 2020-01-26 00:30+0100\n" "Last-Translator: Sergio Daniel Gomez \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" -"X-Generator: Poedit 2.2.4\n" +"X-Generator: Poedit 2.0.6\n" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2019-11-14 11:47-0700\n" @@ -26,16 +26,26 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=CHARSET\n" "Content-Transfer-Encoding: 8bit\n" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2020-01-21 13:56-0700\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" -#: guicast/bcbutton.C:266 guicast/bcbutton.C:274 guicast/bcbutton.C:490 -#: cinelerra/preferencesthread.C:669 +#: guicast/bcbutton.C:266 guicast/bcbutton.C:274 guicast/bcbutton.C:494 +#: cinelerra/preferencesthread.C:672 msgid "OK" msgstr "OK" #: guicast/bcbutton.C:322 guicast/bcbutton.C:330 guicast/bcbutton.C:338 -#: guicast/bcbutton.C:517 guicast/bcbutton.C:519 guicast/bcbutton.C:526 +#: guicast/bcbutton.C:521 guicast/bcbutton.C:523 guicast/bcbutton.C:530 #: cinelerra/confirmquit.C:108 cinelerra/confirmquit.C:110 -#: cinelerra/preferencesthread.C:742 cinelerra/preferencesthread.C:744 +#: cinelerra/preferencesthread.C:745 cinelerra/preferencesthread.C:747 msgid "Cancel" msgstr "Cancelar" @@ -68,89 +78,89 @@ msgstr "BC_DisplayInfo::init_window: no se puede conectar el servidor X.\n" msgid "Recent paths" msgstr "Rutas recientes" -#: guicast/bcfilebox.C:243 +#: guicast/bcfilebox.C:237 msgid "Change the filter" msgstr "Cambiar el filtro" -#: guicast/bcfilebox.C:261 +#: guicast/bcfilebox.C:255 msgid "Size numeric format" -msgstr "Tamaño formato numérico" +msgstr "Formato numérico del tamaño" -#: guicast/bcfilebox.C:287 +#: guicast/bcfilebox.C:281 msgid "Submit the directory" -msgstr "Meter el directorio" +msgstr "Enviar la carpeta" -#: guicast/bcfilebox.C:312 +#: guicast/bcfilebox.C:306 msgid "Descend directory" -msgstr "Bajar el directorio" +msgstr "Bajar la carpeta" -#: guicast/bcfilebox.C:314 +#: guicast/bcfilebox.C:308 msgid "Submit the file" -msgstr "Enviar el archivo" +msgstr "Aceptar la operación" -#: guicast/bcfilebox.C:333 +#: guicast/bcfilebox.C:327 msgid "Cancel the operation" msgstr "Cancelar la operación" -#: guicast/bcfilebox.C:354 cinelerra/awindowgui.C:3478 +#: guicast/bcfilebox.C:348 cinelerra/awindowgui.C:3493 #: cinelerra/folderlistmenu.C:61 msgid "Display text" -msgstr "Mostrar texto" +msgstr "Vista de Lista" -#: guicast/bcfilebox.C:368 cinelerra/awindowgui.C:3469 +#: guicast/bcfilebox.C:362 cinelerra/awindowgui.C:3484 #: cinelerra/folderlistmenu.C:61 msgid "Display icons" -msgstr "Mostrar iconos" +msgstr "Vista de Iconos" -#: guicast/bcfilebox.C:382 +#: guicast/bcfilebox.C:376 msgid "Create new folder" msgstr "Crear nueva carpeta" -#: guicast/bcfilebox.C:395 +#: guicast/bcfilebox.C:389 msgid "Rename file" msgstr "Cambiar el nombre de archivo" -#: guicast/bcfilebox.C:407 +#: guicast/bcfilebox.C:401 msgid "Up a directory" -msgstr "Subir un directorio" +msgstr "Subir una carpeta" -#: guicast/bcfilebox.C:421 +#: guicast/bcfilebox.C:415 msgid "Delete files" msgstr "Eliminar archivos" -#: guicast/bcfilebox.C:435 +#: guicast/bcfilebox.C:429 msgid "Refresh" msgstr "Actualizar" -#: guicast/bcfilebox.C:617 cinelerra/channelinfo.C:1330 +#: guicast/bcfilebox.C:611 cinelerra/channelinfo.C:1330 msgid "Directory:" -msgstr "Directorio:" +msgstr "Carpeta:" -#: guicast/bcfilebox.C:627 cinelerra/awindowgui.C:3177 +#: guicast/bcfilebox.C:621 cinelerra/awindowgui.C:3192 msgid "Search:" msgstr "Buscar:" -#: guicast/bcfilebox.C:659 +#: guicast/bcfilebox.C:653 msgid "File:" -msgstr "Archivo:" +msgstr "Nombre del Archivo:" -#: guicast/bcfilebox.C:665 +#: guicast/bcfilebox.C:659 msgid "Specify filter:" -msgstr "Filtro Activo:" +msgstr "Especificar filtro:" -#: guicast/bcfilebox.C:1365 cinelerra/binfolder.C:1673 +#: guicast/bcfilebox.C:1357 cinelerra/binfolder.C:1673 msgid ": New folder" msgstr ": Nueva carpeta" -#: guicast/bcfilebox.C:1380 +#: guicast/bcfilebox.C:1372 msgid ": Rename" msgstr ": Cambiar el nombre" -#: guicast/bcfilebox.C:1395 +#: guicast/bcfilebox.C:1387 msgid ": Delete" msgstr ": Borrar" -#: guicast/bcfilebox.inc:47 cinelerra/mainmenu.C:101 +#: guicast/bcfilebox.inc:47 cinelerra/mainmenu.C:102 msgid "File" msgstr "Archivo" @@ -170,11 +180,11 @@ msgstr "Ext." msgid "Enter the name of the folder:" msgstr "Introduzca el nombre de la carpeta:" -#: guicast/bcnewfolder.C:51 cinelerra/pluginclient.C:557 +#: guicast/bcnewfolder.C:51 cinelerra/pluginclient.C:538 msgid "Untitled" msgstr "Sin título" -#: guicast/bcpopup.C:32 guicast/bcpopup.C:38 cinelerra/canvas.C:1118 +#: guicast/bcpopup.C:32 guicast/bcpopup.C:38 cinelerra/canvas.C:1110 msgid "Fullscreen" msgstr "Pantalla Completa" @@ -199,17 +209,17 @@ msgstr "Introducir un nuevo nombre para el archivo:" msgid "Conversion from %s to %s is not available\n" msgstr "La conversión de %s a %s no está disponible\n" -#: guicast/bctextbox.C:2901 cinelerra/editpopup.C:134 +#: guicast/bctextbox.C:2901 cinelerra/editpopup.C:188 msgid "Cut" msgstr "Cortar" -#: guicast/bctextbox.C:2915 cinelerra/clippopup.C:240 cinelerra/editpopup.C:105 -#: cinelerra/mainmenu.C:885 cinelerra/proxypopup.C:205 cinelerra/savefile.C:242 +#: guicast/bctextbox.C:2915 cinelerra/clippopup.C:247 cinelerra/editpopup.C:159 +#: cinelerra/mainmenu.C:889 cinelerra/proxypopup.C:205 cinelerra/savefile.C:242 msgid "Copy" msgstr "Copiar" -#: guicast/bctextbox.C:2928 cinelerra/assetpopup.C:313 -#: cinelerra/clippopup.C:273 cinelerra/editpopup.C:191 cinelerra/mainmenu.C:898 +#: guicast/bctextbox.C:2928 cinelerra/assetpopup.C:423 +#: cinelerra/clippopup.C:280 cinelerra/editpopup.C:245 cinelerra/mainmenu.C:902 #: cinelerra/proxypopup.C:238 cinelerra/swindow.C:547 msgid "Paste" msgstr "Pegar" @@ -217,7 +227,7 @@ msgstr "Pegar" #: guicast/bctheme.C:511 #, c-format msgid "Theme::get_image: %s not found.\n" -msgstr "Theme::obtener_imagen: %s no encontrado.\n" +msgstr "Tema::obtener_imagen: %s no encontrado.\n" #: guicast/bctheme.C:522 #, c-format @@ -227,7 +237,11 @@ msgstr "BC_Theme::check_used: Las imágenes no se utilizan.\n" #: guicast/bcwindow3d.C:65 #, c-format msgid "%s: opengl initialization failed failed\n" -msgstr "%s: opengl initialization failed failed\n" +msgstr "%s: falló la inicialización de opengl\n" + +#: guicast/bcwindowbase.C:2419 +msgid " !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~" +msgstr " !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~" #: guicast/test.C:165 msgid "" @@ -241,41 +255,41 @@ msgstr "" msgid "Hello world" msgstr "Hola mundo" -#: guicast/units.h:39 +#: guicast/units.h:41 msgid "Hours:Minutes:Seconds.xxx" msgstr "Horas: Minutos: Segundos.xxx" -#: guicast/units.h:42 +#: guicast/units.h:44 msgid "Hours:Minutes:Seconds:Frames" msgstr "Horas:Minutos:Segundos:Fotogramas" -#: guicast/units.h:44 cinelerra/patchbay.C:83 cinelerra/transitionpopup.C:141 +#: guicast/units.h:46 cinelerra/patchbay.C:83 cinelerra/transitionpopup.C:141 #: plugins/motion51/motionwindow51.C:51 msgid "Samples" msgstr "Muestras" -#: guicast/units.h:46 +#: guicast/units.h:48 msgid "Hex Samples" msgstr "Muestras Hex" -#: guicast/units.h:48 cinelerra/patchbay.C:84 cinelerra/transitionpopup.C:140 +#: guicast/units.h:50 cinelerra/patchbay.C:84 cinelerra/transitionpopup.C:140 msgid "Frames" msgstr "Fotogramas" -#: guicast/units.h:60 +#: guicast/units.h:62 msgid "Feet-frames" -msgstr "Feet-fotogramas" +msgstr "Fotos x Pie (USA)" -#: guicast/units.h:65 guicast/units.h:68 +#: guicast/units.h:67 guicast/units.h:70 msgid "Hours:Minutes:Seconds" msgstr "Horas:Minutos:Segundos" -#: guicast/units.h:71 cinelerra/interfaceprefs.C:194 cinelerra/patchbay.C:93 +#: guicast/units.h:73 cinelerra/interfaceprefs.C:203 cinelerra/patchbay.C:93 #: cinelerra/transitionpopup.C:139 msgid "Seconds" -msgstr "Segundos" +msgstr "Seg" -#: guicast/units.h:76 +#: guicast/units.h:78 msgid "Minutes:Seconds" msgstr "Minutos: Segundos" @@ -309,65 +323,65 @@ msgstr "" #: cinelerra/adcuts.C:30 #, c-format msgid "cuts to %s complete\n" -msgstr "cuts to %s complete\n" +msgstr "cortes a %s completos\n" -#: cinelerra/adeviceprefs.C:299 cinelerra/vdeviceprefs.C:332 +#: cinelerra/adeviceprefs.C:305 cinelerra/vdeviceprefs.C:332 #: cinelerra/vdeviceprefs.C:344 cinelerra/vdeviceprefs.C:361 msgid "Device path:" msgstr "Ruta del dispositivo:" -#: cinelerra/adeviceprefs.C:320 cinelerra/adeviceprefs.C:390 -#: cinelerra/adeviceprefs.C:579 cinelerra/adeviceprefs.C:596 -#: cinelerra/adeviceprefs.C:598 cinelerra/assetedit.C:371 +#: cinelerra/adeviceprefs.C:326 cinelerra/adeviceprefs.C:396 +#: cinelerra/adeviceprefs.C:585 cinelerra/adeviceprefs.C:602 +#: cinelerra/adeviceprefs.C:604 cinelerra/assetedit.C:371 #: cinelerra/fileformat.C:88 cinelerra/formatwindow.C:48 msgid "Bits:" msgstr "Bits:" -#: cinelerra/adeviceprefs.C:369 +#: cinelerra/adeviceprefs.C:375 msgid "Device:" msgstr "Dispositivo:" -#: cinelerra/adeviceprefs.C:404 +#: cinelerra/adeviceprefs.C:410 msgid "Stop playback locks up." -msgstr "Evitar que el play se bloquee." +msgstr "Parar la reproducción si se bloquea." -#: cinelerra/adeviceprefs.C:431 +#: cinelerra/adeviceprefs.C:437 msgid "Server:" msgstr "Servidor:" -#: cinelerra/adeviceprefs.C:449 cinelerra/adeviceprefs.C:502 -#: cinelerra/interfaceprefs.C:133 cinelerra/performanceprefs.C:167 +#: cinelerra/adeviceprefs.C:455 cinelerra/adeviceprefs.C:508 +#: cinelerra/interfaceprefs.C:134 cinelerra/performanceprefs.C:167 #: cinelerra/vdeviceprefs.C:277 msgid "Port:" msgstr "Puerto:" -#: cinelerra/adeviceprefs.C:482 cinelerra/vdeviceprefs.C:259 +#: cinelerra/adeviceprefs.C:488 cinelerra/vdeviceprefs.C:259 msgid "Device Path:" msgstr "Ruta de Dispositivo:" -#: cinelerra/adeviceprefs.C:522 cinelerra/channeledit.C:997 -#: cinelerra/vdeviceprefs.C:295 +#: cinelerra/adeviceprefs.C:528 cinelerra/channeledit.C:997 +#: cinelerra/vdeviceprefs.C:295 plugins/compressormulti/comprmultigui.C:190 msgid "Channel:" msgstr "Canal:" -#: cinelerra/adeviceprefs.C:546 cinelerra/vdeviceprefs.C:318 +#: cinelerra/adeviceprefs.C:552 cinelerra/vdeviceprefs.C:318 msgid "Syt Offset:" msgstr "Compensación Syt:" -#: cinelerra/adeviceprefs.C:564 cinelerra/adeviceprefs.C:566 +#: cinelerra/adeviceprefs.C:570 cinelerra/adeviceprefs.C:572 #: cinelerra/vdeviceprefs.C:214 cinelerra/vdeviceprefs.C:216 msgid "DVB Adapter:" msgstr "Adaptador DVB:" -#: cinelerra/adeviceprefs.C:572 cinelerra/vdeviceprefs.C:221 +#: cinelerra/adeviceprefs.C:578 cinelerra/vdeviceprefs.C:221 msgid "dev:" msgstr "disp:" -#: cinelerra/adeviceprefs.C:587 cinelerra/adeviceprefs.C:606 +#: cinelerra/adeviceprefs.C:593 cinelerra/adeviceprefs.C:612 msgid "Follow audio config" -msgstr "Seguir config audio" +msgstr "Sigue la configuración de audio" -#: cinelerra/amodule.C:472 +#: cinelerra/amodule.C:268 #, c-format msgid "AModule::import_samples Couldn't open %s.\n" msgstr "AModule::importar_samples No se pudo abrir %s.\n" @@ -381,8 +395,8 @@ msgstr "Automatización" msgid "Plugin %d" msgstr "Plugin %d" -#: cinelerra/apanel.C:86 cinelerra/editpopup.C:162 cinelerra/gwindowgui.C:71 -#: cinelerra/keyframepopup.C:569 cinelerra/mainmenu.C:247 +#: cinelerra/apanel.C:86 cinelerra/gwindowgui.C:71 +#: cinelerra/keyframepopup.C:569 cinelerra/mainmenu.C:251 msgid "Mute" msgstr "Silenciar" @@ -396,172 +410,184 @@ msgstr "Reproducir" msgid "fade" msgstr "desvanecer" -#: cinelerra/apatchgui.C:304 cinelerra/gwindowgui.C:79 cinelerra/mainmenu.C:249 +#: cinelerra/apatchgui.C:304 cinelerra/gwindowgui.C:79 cinelerra/mainmenu.C:253 msgid "Pan" -msgstr "Pan" +msgstr "Panorámica" #: cinelerra/apatchgui.C:314 cinelerra/apatchgui.C:322 msgid "pan" -msgstr "pan" +msgstr "panorámica" #: cinelerra/apatchgui.C:370 cinelerra/mixersalign.C:73 #: cinelerra/mixersalign.C:188 cinelerra/vpatchgui.C:485 msgid "Mixer" msgstr "Mezclador" -#: cinelerra/appearanceprefs.C:78 +#: cinelerra/appearanceprefs.C:79 msgid "Layout:" msgstr "Diseño:" -#: cinelerra/appearanceprefs.C:84 +#: cinelerra/appearanceprefs.C:85 msgid "Theme:" msgstr "Tema:" -#: cinelerra/appearanceprefs.C:91 +#: cinelerra/appearanceprefs.C:92 msgid "Plugin Icons:" msgstr "Complemento Íconos:" -#: cinelerra/appearanceprefs.C:100 +#: cinelerra/appearanceprefs.C:101 msgid "Layout Scale:" msgstr "Escala de diseño:" -#: cinelerra/appearanceprefs.C:104 +#: cinelerra/appearanceprefs.C:105 msgid "View thumbnail size:" -msgstr "Ver tamaño de miniatura:" +msgstr "Tamaño de miniatura:" -#: cinelerra/appearanceprefs.C:108 +#: cinelerra/appearanceprefs.C:109 msgid "Vicon quality:" msgstr "Calidad de Vicon:" -#: cinelerra/appearanceprefs.C:112 +#: cinelerra/appearanceprefs.C:113 msgid "Vicon color mode:" msgstr "Modo de color de Vicon:" -#: cinelerra/appearanceprefs.C:122 +#: cinelerra/appearanceprefs.C:123 msgid "Time Format:" -msgstr "Formato de hora:" - -#: cinelerra/appearanceprefs.C:125 -msgid "Flags:" -msgstr "Banderines:" +msgstr "Formato de Tiempo:" -#: cinelerra/appearanceprefs.C:157 +#: cinelerra/appearanceprefs.C:150 msgid "Frames per foot:" -msgstr "Fotogramas por foot:" +msgstr "Fotogramas por pie:" -#: cinelerra/appearanceprefs.C:172 cinelerra/channeledit.C:1417 +#: cinelerra/appearanceprefs.C:164 cinelerra/channeledit.C:1417 #: cinelerra/channeledit.C:1491 plugins/chromakey/chromakey.C:135 -#: plugins/chromakeyhsv/chromakey.C:187 plugins/sketcher/sketcherwindow.C:334 -#: plugins/sketcher/sketcherwindow.C:335 plugins/titler/titlerwindow.C:352 +#: plugins/chromakeyhsv/chromakey.C:187 plugins/sketcher/sketcherwindow.C:386 +#: plugins/sketcher/sketcherwindow.C:387 plugins/titler/titlerwindow.C:352 msgid "Color:" msgstr "Color:" -#: cinelerra/appearanceprefs.C:175 +#: cinelerra/appearanceprefs.C:167 msgid "Highlighting Inversion color:" -msgstr "Resaltado del color de inversión:" +msgstr "Resaltando el color de inversión:" -#: cinelerra/appearanceprefs.C:182 +#: cinelerra/appearanceprefs.C:174 msgid "Composer BG Color:" msgstr "Color de fondo del compositor:" -#: cinelerra/appearanceprefs.C:192 +#: cinelerra/appearanceprefs.C:184 msgid "YUV color space:" msgstr "Espacio de color YUV:" -#: cinelerra/appearanceprefs.C:199 +#: cinelerra/appearanceprefs.C:191 msgid "YUV color range:" msgstr "Rango de color YUV:" -#: cinelerra/appearanceprefs.C:458 +#: cinelerra/appearanceprefs.C:202 +msgid "Warnings:" +msgstr "Advertencias:" + +#: cinelerra/appearanceprefs.C:223 +msgid "Flags:" +msgstr "Banderines:" + +#: cinelerra/appearanceprefs.C:473 msgid "Use thumbnails in resource window" -msgstr "Usar miniaturas en la ventana de clips" +msgstr "Usar miniaturas en la ventana de recursos" -#: cinelerra/appearanceprefs.C:519 plugins/descratch/descratch.C:625 +#: cinelerra/appearanceprefs.C:534 plugins/descratch/descratch.C:625 msgid "Low" msgstr "Bajo" -#: cinelerra/appearanceprefs.C:520 +#: cinelerra/appearanceprefs.C:535 msgid "Med" msgstr "Medio" -#: cinelerra/appearanceprefs.C:521 plugins/descratch/descratch.C:626 +#: cinelerra/appearanceprefs.C:536 plugins/descratch/descratch.C:626 msgid "High" msgstr "Intenso" -#: cinelerra/appearanceprefs.C:556 +#: cinelerra/appearanceprefs.C:571 msgid "Show tip of the day" msgstr "Mostrar sugerencia del día" -#: cinelerra/appearanceprefs.C:569 +#: cinelerra/appearanceprefs.C:584 msgid "ffmpeg probe warns rebuild indexes" msgstr "tubería ffmpeg advierte reconstrucción de índices" -#: cinelerra/appearanceprefs.C:582 +#: cinelerra/appearanceprefs.C:597 msgid "EDL version warns if mismatched" msgstr "Versión EDL advierte si no coinciden" -#: cinelerra/appearanceprefs.C:595 +#: cinelerra/appearanceprefs.C:610 +msgid "Stack warns if reference not modified" +msgstr "La pila advierte si la referencia no se modifica" + +#: cinelerra/appearanceprefs.C:623 msgid "Create Bluray warns if not root" msgstr "Crear advertencias de Bluray si no es root" -#: cinelerra/appearanceprefs.C:608 +#: cinelerra/appearanceprefs.C:636 +msgid "Warn on creating file references" +msgstr "Warn on creating file references" + +#: cinelerra/appearanceprefs.C:650 msgid "Popups activate on button up" -msgstr "Popups activar el botón de arriba" +msgstr "Las ventanas emergentes se activan al presionar el botón" -#: cinelerra/appearanceprefs.C:621 +#: cinelerra/appearanceprefs.C:663 msgid "Set Input Focus when window entered" -msgstr "Establecer el enfoque de entrada cuando se entra en la ventana" +msgstr "Establecer el enfoque cuando se entra en la ventana" -#: cinelerra/appearanceprefs.C:634 +#: cinelerra/appearanceprefs.C:676 msgid "Click to activate text focus" msgstr "Clic para activar foco en texto" -#: cinelerra/appearanceprefs.C:650 +#: cinelerra/appearanceprefs.C:692 msgid "Click to deactivate text focus" msgstr "Click para desactivar foco en texto" -#: cinelerra/appearanceprefs.C:666 +#: cinelerra/appearanceprefs.C:708 msgid "Always show next frame" msgstr "Siempre mostrar fotograma siguiente" -#: cinelerra/appearanceprefs.C:679 +#: cinelerra/appearanceprefs.C:721 msgid "Autocolor assets" msgstr "Color automático de recursos" -#: cinelerra/appearanceprefs.C:711 +#: cinelerra/appearanceprefs.C:753 msgid "BT601" msgstr "BT601" -#: cinelerra/appearanceprefs.C:712 +#: cinelerra/appearanceprefs.C:754 msgid "BT709" msgstr "BT709" -#: cinelerra/appearanceprefs.C:713 +#: cinelerra/appearanceprefs.C:755 msgid "BT2020" msgstr "BT2020" -#: cinelerra/appearanceprefs.C:755 cinelerra/compresspopup.C:39 -#: cinelerra/file.inc:109 +#: cinelerra/appearanceprefs.C:797 cinelerra/compresspopup.C:39 +#: cinelerra/file.inc:110 msgid "JPEG" msgstr "JPEG" -#: cinelerra/appearanceprefs.C:756 cinelerra/file.inc:113 +#: cinelerra/appearanceprefs.C:798 cinelerra/file.inc:114 msgid "MPEG" msgstr "MPEG" -#: cinelerra/appearanceprefs.C:798 +#: cinelerra/appearanceprefs.C:840 msgid "Perpetual session" msgstr "Sesión perpetua" -#: cinelerra/appearanceprefs.C:811 +#: cinelerra/appearanceprefs.C:853 msgid "Clears before toggle" msgstr "Se borra antes de alternar" -#: cinelerra/appearanceprefs.C:824 +#: cinelerra/appearanceprefs.C:866 msgid "Timeline Rectify Audio" msgstr "Rectificar línea de tiempo de audio" -#: cinelerra/appearanceprefs.C:837 +#: cinelerra/appearanceprefs.C:879 msgid "Composer BG color" msgstr "Color de fondo del compositor" @@ -579,7 +605,7 @@ msgstr "Seleccionar un archivo para este clip:" #: cinelerra/assetedit.C:266 msgid "File format:" -msgstr "Formato de archivo:" +msgstr "Formato del archivo:" #: cinelerra/assetedit.C:275 msgid "Bytes:" @@ -644,7 +670,7 @@ msgstr "Velocidad de fotograma:" #: cinelerra/assetedit.C:475 cinelerra/scale.C:214 cinelerra/scale.C:216 #: cinelerra/setformat.C:363 plugins/freeverb/freeverb.C:332 -#: plugins/photoscale/photoscale.C:66 plugins/sketcher/sketcherwindow.C:308 +#: plugins/photoscale/photoscale.C:66 plugins/sketcher/sketcherwindow.C:356 msgid "Width:" msgstr "Ancho:" @@ -686,83 +712,126 @@ msgstr ": Ruta" msgid "Select a file" msgstr "Seleccionar un archivo" -#: cinelerra/assetpopup.C:86 cinelerra/clippopup.C:75 +#: cinelerra/assetpopup.C:89 cinelerra/clippopup.C:76 msgid "Match..." msgstr "Ajusta todo.." -#: cinelerra/assetpopup.C:91 cinelerra/proxypopup.C:70 +#: cinelerra/assetpopup.C:94 cinelerra/proxypopup.C:70 msgid "Remove..." msgstr "Eliminar..." -#: cinelerra/assetpopup.C:151 cinelerra/clippopup.C:136 +#: cinelerra/assetpopup.C:176 cinelerra/clippopup.C:143 #: cinelerra/proxypopup.C:101 msgid "Info..." -msgstr "Info ..." +msgstr "Información..." + +#: cinelerra/assetpopup.C:208 cinelerra/clippopup.C:451 +#: cinelerra/editpopup.C:98 +msgid "Open EDL" +msgstr "Abrir EDL" + +#: cinelerra/assetpopup.C:230 cinelerra/editpopup.C:116 +#: cinelerra/mwindow.C:2109 +#, c-format +msgid "" +"Error: unable to open:\n" +" %s" +msgstr "" +"Error: no se puede abrir:\n" +" %s" + +#: cinelerra/assetpopup.C:236 cinelerra/editpopup.C:122 +#: cinelerra/mwindow.C:2134 +#, c-format +msgid "" +"Error: unable to load:\n" +" %s" +msgstr "" +"Error: no se puede cargar:\n" +" %s" -#: cinelerra/assetpopup.C:183 +#: cinelerra/assetpopup.C:248 cinelerra/mwindow.C:3973 +#, c-format +msgid "" +"media is not EDL:\n" +"%s" +msgstr "" +"los medios no son EDL:\n" +"%s" + +#: cinelerra/assetpopup.C:254 cinelerra/clippopup.C:474 +#: cinelerra/mwindowgui.C:2347 +msgid "Close EDL" +msgstr "Cerrar EDL" + +#: cinelerra/assetpopup.C:275 +msgid "EDL to clip" +msgstr "EDL al clip" + +#: cinelerra/assetpopup.C:293 msgid "Rebuild index" -msgstr "Reconstruir índice" +msgstr "Reconstruir el índice" -#: cinelerra/assetpopup.C:202 cinelerra/channeledit.C:553 +#: cinelerra/assetpopup.C:312 cinelerra/channeledit.C:553 msgid "Sort" msgstr "Ordenar" -#: cinelerra/assetpopup.C:220 cinelerra/clippopup.C:184 -#: cinelerra/mainmenu.C:242 cinelerra/proxypopup.C:149 +#: cinelerra/assetpopup.C:330 cinelerra/clippopup.C:191 +#: cinelerra/mainmenu.C:246 cinelerra/proxypopup.C:149 msgid "View" msgstr "Ver" -#: cinelerra/assetpopup.C:247 cinelerra/clippopup.C:211 +#: cinelerra/assetpopup.C:357 cinelerra/clippopup.C:218 #: cinelerra/proxypopup.C:176 msgid "View in new window" msgstr "Ver en una nueva ventana" -#: cinelerra/assetpopup.C:275 +#: cinelerra/assetpopup.C:385 msgid "Open Mixers" -msgstr "Abrir mezcladores" +msgstr "Abrir en mezclador" -#: cinelerra/assetpopup.C:294 +#: cinelerra/assetpopup.C:404 msgid "Insert Mixers" -msgstr "Insertar clips" +msgstr "Insertar en mezclador" -#: cinelerra/assetpopup.C:331 cinelerra/clippopup.C:291 +#: cinelerra/assetpopup.C:441 cinelerra/clippopup.C:298 msgid "Match project size" msgstr "Ajusta al tamaño del proyecto" -#: cinelerra/assetpopup.C:344 cinelerra/clippopup.C:305 +#: cinelerra/assetpopup.C:454 cinelerra/clippopup.C:312 msgid "Match frame rate" msgstr "Ajusta velocidad de fotograma" -#: cinelerra/assetpopup.C:357 cinelerra/clippopup.C:319 +#: cinelerra/assetpopup.C:467 cinelerra/clippopup.C:326 msgid "Match all" msgstr "Ajusta todo" -#: cinelerra/assetpopup.C:371 cinelerra/proxypopup.C:256 +#: cinelerra/assetpopup.C:481 cinelerra/proxypopup.C:256 msgid "Remove from project" msgstr "Eliminar del proyecto" -#: cinelerra/assetpopup.C:393 cinelerra/proxypopup.C:277 +#: cinelerra/assetpopup.C:502 cinelerra/proxypopup.C:277 msgid "Remove from disk" msgstr "Eliminar del disco" -#: cinelerra/assetpopup.C:433 cinelerra/proxypopup.C:314 +#: cinelerra/assetpopup.C:539 cinelerra/proxypopup.C:314 #: plugins/descratch/descratch.C:627 msgid "All" msgstr "Todos" -#: cinelerra/assetpopup.C:434 cinelerra/proxypopup.C:315 +#: cinelerra/assetpopup.C:540 cinelerra/proxypopup.C:315 msgid "Used" msgstr "Usado" -#: cinelerra/assetpopup.C:435 cinelerra/proxypopup.C:316 +#: cinelerra/assetpopup.C:541 cinelerra/proxypopup.C:316 msgid "Unused" msgstr "No usado" -#: cinelerra/assetpopup.C:436 cinelerra/channeledit.C:153 -#: cinelerra/ffmpeg.C:1864 cinelerra/ffmpeg.C:1911 cinelerra/fileexr.C:200 +#: cinelerra/assetpopup.C:542 cinelerra/channeledit.C:153 +#: cinelerra/ffmpeg.C:1887 cinelerra/ffmpeg.C:1934 cinelerra/fileexr.C:200 #: cinelerra/fileffmpeg.C:545 cinelerra/fileffmpeg.C:717 #: cinelerra/proxypopup.C:317 cinelerra/recordbatches.C:309 -#: cinelerra/recordgui.C:323 cinelerra/rescale.C:7 +#: cinelerra/recordgui.C:323 cinelerra/recordgui.C:772 cinelerra/rescale.C:7 #: cinelerra/sharedlocation.C:144 cinelerra/sharedlocation.C:149 #: cinelerra/sharedlocation.C:162 cinelerra/vwindowgui.C:270 #: plugins/descratch/descratch.C:624 plugins/findobj/findobjwindow.C:887 @@ -772,82 +841,82 @@ msgstr "No usado" msgid "None" msgstr "Ninguno" -#: cinelerra/assetpopup.C:443 cinelerra/assetpopup.C:450 +#: cinelerra/assetpopup.C:549 cinelerra/assetpopup.C:556 #: plugins/titler/titler.h:39 msgid "png" msgstr "png" -#: cinelerra/assetpopup.C:444 cinelerra/assetpopup.C:451 +#: cinelerra/assetpopup.C:550 cinelerra/assetpopup.C:557 msgid "jpeg" msgstr "jpg" -#: cinelerra/assetpopup.C:445 cinelerra/assetpopup.C:452 +#: cinelerra/assetpopup.C:551 cinelerra/assetpopup.C:558 msgid "tiff" msgstr "tiff" -#: cinelerra/assetpopup.C:446 cinelerra/assetpopup.C:453 +#: cinelerra/assetpopup.C:552 cinelerra/assetpopup.C:559 msgid "ppm" msgstr "ppm" -#: cinelerra/assetpopup.C:458 cinelerra/loadfile.C:46 +#: cinelerra/assetpopup.C:564 cinelerra/loadfile.C:47 msgid "Load files..." msgstr "Cargar archivos ..." -#: cinelerra/assetpopup.C:490 +#: cinelerra/assetpopup.C:590 msgid "Copy file list" msgstr "Copiar lista de archivos" -#: cinelerra/assetpopup.C:532 +#: cinelerra/assetpopup.C:632 msgid "Nothing selected" msgstr "Nada seleccionado" -#: cinelerra/assetpopup.C:581 +#: cinelerra/assetpopup.C:681 msgid ": Copy File List" msgstr ": Copiar lista de archivos" -#: cinelerra/assetpopup.C:599 +#: cinelerra/assetpopup.C:699 msgid "List of asset paths:" msgstr "Lista de rutas de recursos:" -#: cinelerra/assetpopup.C:625 +#: cinelerra/assetpopup.C:725 msgid "Paste file list" msgstr "Pegar lista de archivo" -#: cinelerra/assetpopup.C:713 +#: cinelerra/assetpopup.C:814 msgid ": Paste File List" msgstr ": Pegar lista de archivo" -#: cinelerra/assetpopup.C:731 +#: cinelerra/assetpopup.C:832 msgid "Enter list of asset paths:" msgstr "Ingresar lista de rutas de recursos:" -#: cinelerra/assetpopup.C:757 +#: cinelerra/assetpopup.C:858 msgid "Snapshot..." msgstr "Instantánea..." -#: cinelerra/assetpopup.C:799 +#: cinelerra/assetpopup.C:901 msgid "snap" msgstr "instantánea" -#: cinelerra/assetpopup.C:870 +#: cinelerra/assetpopup.C:972 msgid "snapshot render failed" msgstr "error en el renderizado de instantáneas" -#: cinelerra/assetpopup.C:878 +#: cinelerra/assetpopup.C:980 msgid "Grabshot..." msgstr "Captura de imágenes...." -#: cinelerra/assetpopup.C:1024 +#: cinelerra/assetpopup.C:1127 msgid "grab" msgstr "captura" -#: cinelerra/assetpopup.C:1091 +#: cinelerra/assetpopup.C:1194 msgid "grabshot render failed" msgstr "error en el renderizado de capturas" #: cinelerra/assetremove.C:32 msgid ": Remove assets" -msgstr ": Eliminar clips" +msgstr ": Eliminar clips activos" #: cinelerra/assetremove.C:65 msgid "Permanently remove from disk?" @@ -883,15 +952,20 @@ msgstr "Dispositivo configurado ALSA no soporta el funcionamiento del canal %d\n msgid " Configured ALSA device does not support %u Hz playback.\n" msgstr " Dispositivo configurado ALSA no es compatible con la reproducción %u Hz.\n" +#: cinelerra/audioalsa.C:582 +#, c-format +msgid "AudioALSA::write_buffer err %d(%s) at sample %jd\n" +msgstr "AudioALSA::escritura_de_buffer err %d(%s) en la muestra %jd\n" + #: cinelerra/audiooss.C:213 cinelerra/audiooss.C:215 cinelerra/audiooss.C:219 #: cinelerra/audiooss.C:221 #, c-format msgid "%s failed\n" -msgstr "%s fallido\n" +msgstr "%s falló\n" #: cinelerra/avc1394transport.C:175 cinelerra/playtransport.C:384 msgid "Rewind ( Home )" -msgstr "Rebobinar (home)" +msgstr "Rebobinar (inicio)" #: cinelerra/avc1394transport.C:200 msgid "Fast Reverse ( + )" @@ -899,11 +973,11 @@ msgstr "Invertir rápido (+)" #: cinelerra/avc1394transport.C:224 msgid "Reverse Play ( 6 )" -msgstr "Reproducir invertir (6)" +msgstr "Reproducir al revés (6)" #: cinelerra/avc1394transport.C:256 msgid "Stop ( 0 )" -msgstr "Stop (0)" +msgstr "Parar (0)" #: cinelerra/avc1394transport.C:281 msgid "Play ( 3 )" @@ -915,7 +989,7 @@ msgstr "Pausar" #: cinelerra/avc1394transport.C:337 msgid "Fast Forward ( Enter )" -msgstr "Avanzar Rapido (Enter)" +msgstr "Avanzar Rapido (Intro)" #: cinelerra/avc1394transport.C:365 cinelerra/playtransport.C:475 msgid "Jump to end ( End )" @@ -947,7 +1021,7 @@ msgstr "Clips" #: cinelerra/awindowgui.C:94 cinelerra/binfolder.C:1783 msgid "Media" -msgstr "Medios de comunicación" +msgstr "Medios Multimedia" #: cinelerra/awindowgui.C:95 msgid "Proxy" @@ -955,11 +1029,11 @@ msgstr "Proxy" #: cinelerra/awindowgui.C:100 msgid "Full Play" -msgstr "Reproducir completa" +msgstr "Reproducir todo" #: cinelerra/awindowgui.C:101 msgid "Mouse Over" -msgstr "Puntero sobre" +msgstr "Ratón sobre" #: cinelerra/awindowgui.C:102 msgid "Src Target" @@ -969,144 +1043,144 @@ msgstr "Objectivo de origen" msgid "No Play" msgstr "No Reproducir" -#: cinelerra/awindowgui.C:962 cinelerra/awindowgui.C:1021 +#: cinelerra/awindowgui.C:977 cinelerra/awindowgui.C:1036 #, c-format msgid "Reading %s" msgstr "Leyendo %s" -#: cinelerra/awindowgui.C:1104 cinelerra/awindowgui.C:1153 +#: cinelerra/awindowgui.C:1119 cinelerra/awindowgui.C:1168 #, c-format msgid "Rendering %s" msgstr "Renderizando %s" -#: cinelerra/awindowgui.C:1258 +#: cinelerra/awindowgui.C:1273 msgid ": Resources" -msgstr "Recursos" +msgstr ": Recursos" -#: cinelerra/awindowgui.C:1428 cinelerra/awindowgui.C:2364 -#: cinelerra/awindowgui.C:2384 +#: cinelerra/awindowgui.C:1443 cinelerra/awindowgui.C:2379 +#: cinelerra/awindowgui.C:2399 msgid "awindowgui#Title" msgstr "Título" -#: cinelerra/awindowgui.C:1429 cinelerra/awindowgui.C:2365 +#: cinelerra/awindowgui.C:1444 cinelerra/awindowgui.C:2380 msgid "Comments" msgstr "Comentarios" -#: cinelerra/awindowgui.C:1516 +#: cinelerra/awindowgui.C:1531 msgid "Visibility" msgstr "Visibilidad" -#: cinelerra/awindowgui.C:1744 +#: cinelerra/awindowgui.C:1759 msgid ": Remove plugin" msgstr ": Eliminar plugin" -#: cinelerra/awindowgui.C:1774 +#: cinelerra/awindowgui.C:1789 msgid "remove plugin?" -msgstr "eliminar complemento?" +msgstr "eliminar plugin?" -#: cinelerra/awindowgui.C:1803 +#: cinelerra/awindowgui.C:1818 #, c-format msgid "remove %s\n" msgstr "eliminar %s\n" -#: cinelerra/awindowgui.C:2209 +#: cinelerra/awindowgui.C:2224 msgid "Proxy clip" -msgstr "Información del clip" +msgstr "Clip de Proxy" -#: cinelerra/awindowgui.C:2383 +#: cinelerra/awindowgui.C:2398 msgid "Time Stamps" msgstr "Marcas de tiempo" -#: cinelerra/awindowgui.C:3131 +#: cinelerra/awindowgui.C:3146 msgid "No info available" msgstr "Ninguna información disponible" -#: cinelerra/awindowgui.C:3224 +#: cinelerra/awindowgui.C:3239 msgid "Delete asset from disk" msgstr "Borrar clip desde el disco" -#: cinelerra/awindowgui.C:3237 +#: cinelerra/awindowgui.C:3252 msgid "Delete asset from project" msgstr "Borrar los clips de proyecto" -#: cinelerra/awindowgui.C:3266 +#: cinelerra/awindowgui.C:3281 msgid "Redraw index" msgstr "Volver a dibujar índice" -#: cinelerra/awindowgui.C:3279 +#: cinelerra/awindowgui.C:3294 msgid "Paste asset on recordable tracks" msgstr "Pegar clip en pistas grabables" -#: cinelerra/awindowgui.C:3292 +#: cinelerra/awindowgui.C:3307 msgid "Append asset in new tracks" msgstr "Agregar clip en una nueva pista" -#: cinelerra/awindowgui.C:3305 +#: cinelerra/awindowgui.C:3320 msgid "View asset" msgstr "Ver recurso" -#: cinelerra/awindowgui.C:3349 cinelerra/fileffmpeg.C:1015 +#: cinelerra/awindowgui.C:3364 cinelerra/fileffmpeg.C:1015 msgid "ffmpeg" msgstr "ffmpeg" -#: cinelerra/awindowgui.C:3350 +#: cinelerra/awindowgui.C:3365 msgid "ladspa" msgstr "ladspa" -#: cinelerra/awindowgui.C:3351 +#: cinelerra/awindowgui.C:3366 msgid "lv2" msgstr "lv2" -#: cinelerra/awindowgui.C:3352 +#: cinelerra/awindowgui.C:3367 msgid "audio_tools" -msgstr "audio_tools" +msgstr "audio_herramientas" -#: cinelerra/awindowgui.C:3353 +#: cinelerra/awindowgui.C:3368 msgid "audio_transitions" -msgstr "audio_transitions" +msgstr "audio_transiciones" -#: cinelerra/awindowgui.C:3354 +#: cinelerra/awindowgui.C:3369 msgid "blending" msgstr "mezcla" -#: cinelerra/awindowgui.C:3355 +#: cinelerra/awindowgui.C:3370 msgid "colors" msgstr "colores" -#: cinelerra/awindowgui.C:3356 +#: cinelerra/awindowgui.C:3371 msgid "exotic" msgstr "exótico" -#: cinelerra/awindowgui.C:3357 +#: cinelerra/awindowgui.C:3372 msgid "transforms" msgstr "transformadas" -#: cinelerra/awindowgui.C:3358 +#: cinelerra/awindowgui.C:3373 msgid "tv_effects" -msgstr "tv_effects" +msgstr "tv_efectos" -#: cinelerra/awindowgui.C:3359 +#: cinelerra/awindowgui.C:3374 msgid "video_tools" -msgstr "video_tools" +msgstr "video_herramientas" -#: cinelerra/awindowgui.C:3360 +#: cinelerra/awindowgui.C:3375 msgid "video_transitions" -msgstr "video_transitions" +msgstr "video_transiciones" -#: cinelerra/awindowgui.C:3472 +#: cinelerra/awindowgui.C:3487 msgid "Display icons packed" msgstr "Mostrar iconos empaquetados" -#: cinelerra/awindowgui.C:3475 +#: cinelerra/awindowgui.C:3490 msgid "Display icon list" msgstr "Mostrar lista de íconos" -#: cinelerra/awindowgui.C:3485 cinelerra/clippopup.C:166 +#: cinelerra/awindowgui.C:3500 cinelerra/clippopup.C:173 #: cinelerra/folderlistmenu.C:92 cinelerra/proxypopup.C:131 msgid "Sort items" msgstr "Organizar objectos" -#: cinelerra/awindowgui.C:3539 cinelerra/channeledit.C:476 +#: cinelerra/awindowgui.C:3554 cinelerra/channeledit.C:476 msgid "Select" msgstr "Seleccionar" @@ -1134,18 +1208,18 @@ msgstr "Existe" #: cinelerra/recordengine.C:701 #, c-format msgid "Untimed" -msgstr "No programado" +msgstr "Sin Tiempo" #: cinelerra/batch.C:139 cinelerra/recordengine.C:694 #: cinelerra/recordengine.C:702 #, c-format msgid "Timed" -msgstr "Programado" +msgstr "Cronometrado" -#: cinelerra/batch.C:141 cinelerra/batchrender.C:960 cinelerra/ffmpeg.C:3068 -#: cinelerra/ffmpeg.C:3176 cinelerra/file.C:1257 cinelerra/file.C:1284 -#: cinelerra/interfaceprefs.C:542 cinelerra/interlacemodes.h:27 -#: cinelerra/loadmode.C:110 cinelerra/new.C:873 cinelerra/record.C:736 +#: cinelerra/batch.C:141 cinelerra/batchrender.C:960 cinelerra/ffmpeg.C:3091 +#: cinelerra/ffmpeg.C:3199 cinelerra/file.C:1263 cinelerra/file.C:1290 +#: cinelerra/interfaceprefs.C:551 cinelerra/interlacemodes.h:27 +#: cinelerra/loadmode.C:116 cinelerra/new.C:873 cinelerra/record.C:741 #: cinelerra/vdeviceprefs.C:657 plugins/motion2point/motionwindow.C:791 #: plugins/motion2point/motionwindow.C:862 plugins/timefront/timefront.C:421 #: plugins/titler/titler.C:2336 @@ -1167,11 +1241,11 @@ msgstr "Etiquetado" msgid "Farmed" msgstr "Criado" -#: cinelerra/batchrender.C:65 plugins/compressor/compressor.C:1021 +#: cinelerra/batchrender.C:65 cinelerra/compressortools.C:522 msgid "Output" msgstr "Salida" -#: cinelerra/batchrender.C:65 +#: cinelerra/batchrender.C:65 cinelerra/loadmode.C:55 msgid "EDL" msgstr "EDL" @@ -1181,13 +1255,13 @@ msgstr "Transcurrido" #: cinelerra/batchrender.C:69 msgid "Batch Render..." -msgstr "Batch Render..." +msgstr "Renderizar por lotes..." #: cinelerra/batchrender.C:69 msgid "Shift-B" msgstr "Mayús-B" -#: cinelerra/batchrender.C:390 cinelerra/bdcreate.C:291 +#: cinelerra/batchrender.C:390 cinelerra/bdcreate.C:294 #: cinelerra/dvdcreate.C:359 #, c-format msgid "Unable to save: %s" @@ -1203,7 +1277,7 @@ msgstr "pulse Cancelar para abandonar renderizado por lotes" msgid "EDL %s not found.\n" msgstr "EDL %s no encontrado.\n" -#: cinelerra/batchrender.C:493 cinelerra/file.C:236 cinelerra/formatcheck.C:47 +#: cinelerra/batchrender.C:493 cinelerra/file.C:237 cinelerra/formatcheck.C:47 #: cinelerra/formatcheck.C:58 cinelerra/formatcheck.C:67 #: cinelerra/menueffects.C:148 cinelerra/menueffects.C:159 #: cinelerra/menueffects.C:247 cinelerra/menueffects.C:255 @@ -1238,7 +1312,7 @@ msgstr "%d trabajo EDLs de archivo de renderizado con y sin etiquetas\n" #: cinelerra/batchrender.C:726 msgid ": Batch Render" -msgstr ": Batch Render" +msgstr ": Renderizar por lotes" #: cinelerra/batchrender.C:758 msgid "Output path:" @@ -1271,17 +1345,17 @@ msgid "Close" msgstr "Cerrar" #: cinelerra/batchrender.C:1040 cinelerra/recordbatches.C:469 -#: plugins/crikey/crikeywindow.C:593 plugins/sketcher/sketcherwindow.C:833 -#: plugins/sketcher/sketcherwindow.C:1215 plugins/tracer/tracerwindow.C:598 +#: plugins/crikey/crikeywindow.C:593 plugins/sketcher/sketcherwindow.C:922 +#: plugins/sketcher/sketcherwindow.C:1304 plugins/tracer/tracerwindow.C:598 msgid "New" msgstr "Nuevo" #: cinelerra/batchrender.C:1052 cinelerra/channeledit.C:577 -#: cinelerra/clippopup.C:333 cinelerra/cwindowtool.C:1905 +#: cinelerra/clippopup.C:340 cinelerra/cwindowtool.C:1905 #: cinelerra/cwindowtool.C:1959 cinelerra/dbwindow.C:240 #: cinelerra/keyframegui.C:742 cinelerra/labelpopup.C:87 #: cinelerra/recordbatches.C:487 plugins/piano/piano.C:835 -#: plugins/synthesizer/synthesizer.C:1305 +#: plugins/synthesizer/synthesizer.C:1311 msgid "Delete" msgstr "Borrar" @@ -1333,20 +1407,20 @@ msgstr "Inicio" msgid "warn if jobs/session mismatched" msgstr "advertir si los trabajos / sesiones no coinciden" -#: cinelerra/batchrender.C:1403 cinelerra/bdcreate.C:690 +#: cinelerra/batchrender.C:1403 cinelerra/bdcreate.C:689 #: cinelerra/dvdcreate.C:822 cinelerra/performanceprefs.C:400 msgid "Use render farm" msgstr "Usar granja de renderizado" -#: cinelerra/bdcreate.C:80 +#: cinelerra/bdcreate.C:83 msgid "BD Render..." msgstr "BD Render ..." -#: cinelerra/bdcreate.C:80 +#: cinelerra/bdcreate.C:83 msgid "Ctrl-d" msgstr "Ctrl-d" -#: cinelerra/bdcreate.C:159 cinelerra/dvdcreate.C:165 +#: cinelerra/bdcreate.C:162 cinelerra/dvdcreate.C:165 #, c-format msgid "" "Unable to save: %s\n" @@ -1355,132 +1429,132 @@ msgstr "" "No se puede guardar: %s\n" "-- %s" -#: cinelerra/bdcreate.C:226 cinelerra/dvdcreate.C:295 +#: cinelerra/bdcreate.C:229 cinelerra/dvdcreate.C:295 #, c-format msgid "No EDL/Session" msgstr "No EDL / Sesión" -#: cinelerra/bdcreate.C:235 cinelerra/dvdcreate.C:303 +#: cinelerra/bdcreate.C:238 cinelerra/dvdcreate.C:303 #, c-format msgid "No content: %s" msgstr "Sin contenido: %s" -#: cinelerra/bdcreate.C:243 cinelerra/dvdcreate.C:311 +#: cinelerra/bdcreate.C:246 cinelerra/dvdcreate.C:311 #, c-format msgid "" "Unable to create directory: %s\n" "-- %s" msgstr "" -"No se puede crear el directorio: %s\n" +"No se puede crear la carpeta: %s\n" "-- %s" -#: cinelerra/bdcreate.C:387 cinelerra/dvdcreate.C:509 +#: cinelerra/bdcreate.C:386 cinelerra/dvdcreate.C:509 #: plugins/scaleratio/scaleratio.C:96 msgid "Scale Ratio" msgstr "Relación de escala" -#: cinelerra/bdcreate.C:424 +#: cinelerra/bdcreate.C:423 msgid "create bd" msgstr "crear bd" -#: cinelerra/bdcreate.C:490 +#: cinelerra/bdcreate.C:489 msgid "Must be root to mount UDFS images\n" msgstr "Debe ser root para montar imágenes UDFS\n" -#: cinelerra/bdcreate.C:500 cinelerra/dvdcreate.C:630 +#: cinelerra/bdcreate.C:499 cinelerra/dvdcreate.C:630 msgid "end setup, start batch render" msgstr "fin de configuración, comienzo de renderizado por lotes" -#: cinelerra/bdcreate.C:577 cinelerra/dvdcreate.C:708 +#: cinelerra/bdcreate.C:576 cinelerra/dvdcreate.C:708 msgid "disk space: " msgstr "espacio del disco: " -#: cinelerra/bdcreate.C:619 cinelerra/dvdcreate.C:751 +#: cinelerra/bdcreate.C:618 cinelerra/dvdcreate.C:751 #: plugins/deinterlace/deinterlace.C:84 plugins/denoisemjpeg/denoisemjpeg.C:248 msgid "Deinterlace" msgstr "Desentrelazado" -#: cinelerra/bdcreate.C:639 cinelerra/dvdcreate.C:771 plugins/ivtc/ivtc.C:76 +#: cinelerra/bdcreate.C:638 cinelerra/dvdcreate.C:771 plugins/ivtc/ivtc.C:76 msgid "Inverse Telecine" msgstr "Telecine Inverso" -#: cinelerra/bdcreate.C:659 cinelerra/dvdcreate.C:791 +#: cinelerra/bdcreate.C:658 cinelerra/dvdcreate.C:791 msgid "Resize Tracks" msgstr "Cambiar el tamaño de las Pistas" -#: cinelerra/bdcreate.C:670 cinelerra/dvdcreate.C:802 -#: cinelerra/scopewindow.C:1330 plugins/colorbalance/colorbalance.C:507 +#: cinelerra/bdcreate.C:669 cinelerra/dvdcreate.C:802 +#: cinelerra/scopewindow.C:1330 plugins/colorbalance/colorbalance.C:506 #: plugins/gamma/gamma.C:451 plugins/histogram/histogram.C:99 #: plugins/interpolate/interpolate.C:246 msgid "Histogram" msgstr "Histograma" -#: cinelerra/bdcreate.C:680 cinelerra/dvdcreate.C:812 +#: cinelerra/bdcreate.C:679 cinelerra/dvdcreate.C:812 msgid "Chapters at Labels" msgstr "Capítulos en las etiquetas" -#: cinelerra/bdcreate.C:701 cinelerra/dvdcreate.C:832 +#: cinelerra/bdcreate.C:700 cinelerra/dvdcreate.C:832 msgid "Audio 5.1" msgstr "Audio 5.1" -#: cinelerra/bdcreate.C:712 +#: cinelerra/bdcreate.C:711 msgid ": Create BD" msgstr ": Crear BD" -#: cinelerra/bdcreate.C:749 cinelerra/channeledit.C:990 +#: cinelerra/bdcreate.C:748 cinelerra/channeledit.C:990 #: cinelerra/clipedit.C:163 cinelerra/dvdcreate.C:890 msgid "Title:" msgstr "Título:" -#: cinelerra/bdcreate.C:755 cinelerra/dvdcreate.C:896 +#: cinelerra/bdcreate.C:754 cinelerra/dvdcreate.C:896 msgid "Work path:" msgstr "Camino del trabajo:" -#: cinelerra/bdcreate.C:762 cinelerra/dvdcreate.C:903 +#: cinelerra/bdcreate.C:761 cinelerra/dvdcreate.C:903 msgid "Work path" msgstr "Camino del trabajo" -#: cinelerra/bdcreate.C:762 cinelerra/dvdcreate.C:903 +#: cinelerra/bdcreate.C:761 cinelerra/dvdcreate.C:903 msgid "Select a Work directory:" -msgstr "Seleccionar un directorio de trabajo:" +msgstr "Seleccionar una carpeta de trabajo:" -#: cinelerra/bdcreate.C:768 cinelerra/dvdcreate.C:909 +#: cinelerra/bdcreate.C:767 cinelerra/dvdcreate.C:909 msgid "Media:" -msgstr "Medios de comunicación:" +msgstr "Medios Multimedia:" -#: cinelerra/bdcreate.C:779 cinelerra/dvdcreate.C:920 cinelerra/recordgui.C:224 +#: cinelerra/bdcreate.C:778 cinelerra/dvdcreate.C:920 cinelerra/recordgui.C:224 msgid "Format:" msgstr "Formato:" -#: cinelerra/bdcreate.C:786 cinelerra/dvdcreate.C:926 +#: cinelerra/bdcreate.C:785 cinelerra/dvdcreate.C:926 #: cinelerra/resizetrackthread.C:125 plugins/pitch/pitch.C:418 #: plugins/scale/scalewin.C:52 msgid "Scale:" msgstr "Escala:" -#: cinelerra/bdcreate.C:1020 +#: cinelerra/bdcreate.C:1019 msgid "* non-standard format" msgstr "* formato no estandar" -#: cinelerra/binfolder.C:39 +#: cinelerra/binfolder.C:39 plugins/sketcher/sketcherwindow.C:296 msgid "Off" -msgstr "apagado" +msgstr "Apagado" #: cinelerra/binfolder.C:40 msgid "And" -msgstr "y" +msgstr "And" #: cinelerra/binfolder.C:41 msgid "Or" -msgstr "o" +msgstr "Or" #: cinelerra/binfolder.C:42 msgid "And Not" -msgstr "y no" +msgstr "No And" #: cinelerra/binfolder.C:43 msgid "Or Not" -msgstr "o no" +msgstr "No Or" #: cinelerra/binfolder.C:47 msgid "Patterns" @@ -1508,7 +1582,7 @@ msgstr "Altura" #: cinelerra/binfolder.C:53 cinelerra/performanceprefs.C:227 msgid "Framerate" -msgstr "Fotogramas por segundos" +msgstr "FPS" #: cinelerra/binfolder.C:54 msgid "Samplerate" @@ -1536,7 +1610,7 @@ msgstr "Mayor o igual >=" #: cinelerra/binfolder.C:63 msgid "Gt > " -msgstr "Mayor >" +msgstr "Mayor > " #: cinelerra/binfolder.C:64 msgid "Ne !=" @@ -1548,7 +1622,7 @@ msgstr "Menor o igual <=" #: cinelerra/binfolder.C:66 msgid "Lt < " -msgstr "Menor <" +msgstr "Menor < " #: cinelerra/binfolder.C:67 msgid "Matches" @@ -1626,7 +1700,7 @@ msgstr "Objetivo" msgid "Op" msgstr "Op" -#: cinelerra/binfolder.C:1460 cinelerra/colorpicker.C:209 +#: cinelerra/binfolder.C:1460 cinelerra/colorpicker.C:259 #: cinelerra/keyframegui.C:57 plugins/histogram/histogramwindow.C:63 #: plugins/histogram_bezier/bistogramwindow.C:68 msgid "Value" @@ -1634,26 +1708,25 @@ msgstr "Valor" #: cinelerra/binfolder.C:1611 cinelerra/shbtnprefs.C:152 #: plugins/overlayaudio/overlayaudio.C:174 plugins/piano/piano.C:814 -#: plugins/synthesizer/synthesizer.C:1285 +#: plugins/synthesizer/synthesizer.C:1291 msgid "Add" msgstr "Agregar" -#: cinelerra/binfolder.C:1635 cinelerra/mainmenu.C:940 +#: cinelerra/binfolder.C:1635 cinelerra/mainmenu.C:944 #: cinelerra/shbtnprefs.C:172 msgid "Del" -msgstr "Del" +msgstr "Supr" #: cinelerra/binfolder.C:1655 cinelerra/cwindowtool.C:367 #: cinelerra/fileffmpeg.C:1092 cinelerra/fileffmpeg.C:1497 -#: cinelerra/keyframegui.C:780 cinelerra/loadfile.C:204 -#: cinelerra/loadfile.C:214 cinelerra/loadfile.C:216 +#: cinelerra/keyframegui.C:780 cinelerra/loadfile.C:199 #: cinelerra/mixersalign.C:428 cinelerra/mixersalign.C:436 #: cinelerra/plugindialog.C:287 cinelerra/plugindialog.C:360 #: cinelerra/plugindialog.C:473 cinelerra/pluginfclient.C:218 #: cinelerra/pluginfclient.C:570 cinelerra/pluginfclient.C:601 #: cinelerra/pluginlv2gui.C:98 cinelerra/pluginlv2gui.C:225 -#: cinelerra/preferencesthread.C:641 cinelerra/preferencesthread.C:643 -#: cinelerra/setformat.C:805 +#: cinelerra/preferencesthread.C:644 cinelerra/preferencesthread.C:646 +#: cinelerra/setformat.C:800 msgid "Apply" msgstr "Aplicar" @@ -1663,7 +1736,7 @@ msgstr "Nombre de carpeta:" #: cinelerra/binfolder.C:1692 msgid "media bin" -msgstr "medios de comunicación" +msgstr "contenedor de medios" #: cinelerra/binfolder.C:1692 msgid "clip bin" @@ -1695,7 +1768,7 @@ msgstr "BRender::set_video_map %jd: intento de ajustarlo fuera del mapa %jd.\n" msgid "Look for file" msgstr "Busca el archivo" -#: cinelerra/canvas.C:921 +#: cinelerra/canvas.C:923 msgid "Windowed" msgstr "Ventana" @@ -1719,7 +1792,7 @@ msgstr "Zoom 50%" msgid "Zoom 75%" msgstr "Zoom 75%" -#: cinelerra/canvas.C:972 cinelerra/recordmonitor.C:880 +#: cinelerra/canvas.C:972 cinelerra/recordmonitor.C:886 msgid "Zoom 100%" msgstr "Zoom 100%" @@ -1779,15 +1852,15 @@ msgstr "Mayús-F12" msgid "Reset translation" msgstr "Restablecer la traducción" -#: cinelerra/canvas.C:1106 cinelerra/plugintoggles.C:76 +#: cinelerra/canvas.C:1105 cinelerra/plugintoggles.C:76 msgid "Show controls" msgstr "Mostrar controles" -#: cinelerra/canvas.C:1108 +#: cinelerra/canvas.C:1105 msgid "Hide controls" msgstr "Ocultar controles" -#: cinelerra/canvas.C:1139 +#: cinelerra/canvas.C:1122 msgid "Close source" msgstr "Cerrar origen" @@ -1910,6 +1983,8 @@ msgid "Norm:" msgstr "Norma:" #: cinelerra/channeledit.C:648 cinelerra/channeledit.C:1031 +#: plugins/compressor/compressor.C:440 +#: plugins/compressormulti/comprmultigui.C:152 msgid "Input:" msgstr "Entrar:" @@ -2026,7 +2101,7 @@ msgstr "buscar títulos de eventos / info" #: cinelerra/channelinfo.C:1100 #, c-format msgid "bad scan time: %s\n" -msgstr "Mal tiempo de escaneado: %s\n" +msgstr "tiempo erroneo de escaneado: %s\n" #: cinelerra/channelinfo.C:1107 #, c-format @@ -2119,12 +2194,12 @@ msgid "Delete all clips." msgstr "Borrar todos los clips." #: cinelerra/channelinfo.C:1932 cinelerra/recordbatches.C:472 -#: cinelerra/recordgui.C:922 +#: cinelerra/recordgui.C:965 msgid "Create new clip." msgstr "Crear nuevo clip." #: cinelerra/channelinfo.C:1945 cinelerra/recordbatches.C:490 -#: cinelerra/recordgui.C:935 +#: cinelerra/recordgui.C:978 msgid "Delete clip." msgstr "Eliminar clip." @@ -2152,89 +2227,75 @@ msgstr ": La información del clip" msgid "Comments:" msgstr "Comentarios:" -#: cinelerra/clippopup.C:356 +#: cinelerra/clippopup.C:362 msgid "Paste Clip" msgstr "Pegar clip" -#: cinelerra/clippopup.C:378 +#: cinelerra/clippopup.C:384 msgid "paste clip: " msgstr "pegar clip: " -#: cinelerra/clippopup.C:422 -msgid "Nest" -msgstr "Anidar" +#: cinelerra/clippopup.C:431 +msgid "Nest to Media" +msgstr "Anidar en Medios" -#: cinelerra/clippopup.C:445 -#, c-format -msgid "Nested_%02d%02d%02d-%02d%02d%02d" -msgstr "Anidado_%02d%02d%02d-%02d%02d%02d" - -#: cinelerra/clippopup.C:458 -#, c-format -msgid "Nested: %s" -msgstr "Anidado: %s" - -#: cinelerra/clippopup.C:478 -msgid "UnNest" -msgstr "Desanidado" - -#: cinelerra/colorpicker.C:77 +#: cinelerra/colorpicker.C:74 msgid ": " msgstr ": " -#: cinelerra/colorpicker.C:78 +#: cinelerra/colorpicker.C:75 msgid "Color Picker" msgstr "Selector de color" -#: cinelerra/colorpicker.C:179 +#: cinelerra/colorpicker.C:229 msgid "colorpicker#H:" msgstr "H:" -#: cinelerra/colorpicker.C:180 +#: cinelerra/colorpicker.C:230 msgid "colorpicker#S:" msgstr "S:" -#: cinelerra/colorpicker.C:181 +#: cinelerra/colorpicker.C:231 msgid "colorpicker_value#V:" msgstr "V:" -#: cinelerra/colorpicker.C:182 +#: cinelerra/colorpicker.C:232 msgid "colorpicker#R:" msgstr "R:" -#: cinelerra/colorpicker.C:183 +#: cinelerra/colorpicker.C:233 msgid "colorpicker#G:" msgstr "G:" -#: cinelerra/colorpicker.C:184 +#: cinelerra/colorpicker.C:234 msgid "colorpicker#B:" msgstr "B:" -#: cinelerra/colorpicker.C:185 +#: cinelerra/colorpicker.C:235 msgid "colorpicker#Y:" msgstr "Y:" -#: cinelerra/colorpicker.C:186 +#: cinelerra/colorpicker.C:236 msgid "colorpicker#U:" msgstr "U:" -#: cinelerra/colorpicker.C:187 +#: cinelerra/colorpicker.C:237 msgid "colorpicker_Cr#V:" msgstr "V:" -#: cinelerra/colorpicker.C:189 +#: cinelerra/colorpicker.C:239 msgid "colorpicker#A:" msgstr "A:" -#: cinelerra/colorpicker.C:205 +#: cinelerra/colorpicker.C:255 msgid "Hue" msgstr "Hue" -#: cinelerra/colorpicker.C:207 +#: cinelerra/colorpicker.C:257 msgid "Saturation" msgstr "Saturación" -#: cinelerra/colorpicker.C:211 plugins/colorbalance/colorbalancewindow.C:59 +#: cinelerra/colorpicker.C:261 plugins/colorbalance/colorbalancewindow.C:59 #: plugins/denoisevideo/denoisevideo.C:277 plugins/downsample/downsample.C:278 #: plugins/histogram/histogramwindow.C:69 #: plugins/histogram_bezier/bistogramwindow.C:71 @@ -2242,9 +2303,9 @@ msgstr "Saturación" #: plugins/swapchannels/swapchannels.C:449 #: plugins/swapchannels/swapchannels.C:474 plugins/zoomblur/zoomblur.C:173 msgid "Red" -msgstr "Rojo" +msgstr "R-Rojo" -#: cinelerra/colorpicker.C:213 plugins/colorbalance/colorbalancewindow.C:65 +#: cinelerra/colorpicker.C:263 plugins/colorbalance/colorbalancewindow.C:65 #: plugins/denoisevideo/denoisevideo.C:279 plugins/downsample/downsample.C:284 #: plugins/histogram/histogramwindow.C:75 #: plugins/histogram_bezier/bistogramwindow.C:74 @@ -2252,9 +2313,9 @@ msgstr "Rojo" #: plugins/swapchannels/swapchannels.C:452 #: plugins/swapchannels/swapchannels.C:475 plugins/zoomblur/zoomblur.C:175 msgid "Green" -msgstr "Verde" +msgstr "G-Verde" -#: cinelerra/colorpicker.C:215 plugins/colorbalance/colorbalancewindow.C:71 +#: cinelerra/colorpicker.C:265 plugins/colorbalance/colorbalancewindow.C:71 #: plugins/denoisevideo/denoisevideo.C:281 plugins/downsample/downsample.C:290 #: plugins/histogram/histogramwindow.C:81 #: plugins/histogram_bezier/bistogramwindow.C:77 @@ -2263,37 +2324,37 @@ msgstr "Verde" #: plugins/swapchannels/swapchannels.C:476 plugins/theme_blue/bluetheme.C:63 #: plugins/zoomblur/zoomblur.C:177 msgid "Blue" -msgstr "Azul" +msgstr "B-Azul" -#: cinelerra/colorpicker.C:217 +#: cinelerra/colorpicker.C:267 msgid "Luminance" msgstr "Luminancia" -#: cinelerra/colorpicker.C:219 +#: cinelerra/colorpicker.C:269 msgid "Blue Luminance Difference" msgstr "Diferencia de luminancia Azul" -#: cinelerra/colorpicker.C:221 +#: cinelerra/colorpicker.C:271 msgid "Red Luminance Difference" -msgstr "Diferencia de luminancia Rojo" +msgstr "Diferencia de luminancia Roja" -#: cinelerra/colorpicker.C:224 plugins/crikey/crikeywindow.C:96 -#: plugins/denoisevideo/denoisevideo.C:283 plugins/downsample/downsample.C:296 -#: plugins/linearblur/linearblur.C:184 plugins/radialblur/radialblur.C:181 -#: plugins/swapchannels/swapchannels.C:458 +#: cinelerra/colorpicker.C:274 plugins/alpha/alpha.C:117 +#: plugins/crikey/crikeywindow.C:96 plugins/denoisevideo/denoisevideo.C:283 +#: plugins/downsample/downsample.C:296 plugins/linearblur/linearblur.C:184 +#: plugins/radialblur/radialblur.C:181 plugins/swapchannels/swapchannels.C:458 #: plugins/swapchannels/swapchannels.C:477 plugins/zoomblur/zoomblur.C:179 msgid "Alpha" -msgstr "Alpha" +msgstr "Alfa" -#: cinelerra/colorpicker.C:1030 +#: cinelerra/colorpicker.C:1125 msgid "hex rgb color" msgstr "color RGB hexadecimal" -#: cinelerra/colorpicker.C:1078 +#: cinelerra/colorpicker.C:1173 msgid "grab from anywhere picker" msgstr "selector agarrar desde cualquier lugar" -#: cinelerra/colorpicker.C:1100 +#: cinelerra/colorpicker.C:1195 msgid "color history" msgstr "historico de color" @@ -2341,6 +2402,23 @@ msgstr "Mi" msgid "cut %f/%f = %d\n" msgstr "cortar %f/%f = %d\n" +#: cinelerra/compressortools.C:523 cinelerra/compressortools.C:524 +#: cinelerra/compressortools.C:525 +msgid "Input" +msgstr "Entrar" + +#: cinelerra/compressortools.C:996 +msgid "Copy graph" +msgstr "Copiar gráfico" + +#: cinelerra/compressortools.C:1019 +msgid "Paste graph" +msgstr "Pegar gráfico" + +#: cinelerra/compressortools.C:1062 +msgid "Clear graph" +msgstr "Eliminar gráfico" + #: cinelerra/compresspopup.C:38 msgid "DV" msgstr "DV" @@ -2349,7 +2427,7 @@ msgstr "DV" msgid "MJPA" msgstr "MJPA" -#: cinelerra/compresspopup.C:41 cinelerra/file.inc:115 +#: cinelerra/compresspopup.C:41 cinelerra/file.inc:116 msgid "PNG" msgstr "PNG" @@ -2408,47 +2486,127 @@ msgstr ": Archivo existe" msgid "The following files exist. Overwrite them?" msgstr "Existen los siguientes archivos. ¿Sobreescribirlos?" -#: cinelerra/cpanel.C:152 +#: cinelerra/convert.C:208 +msgid "Transcode clip" +msgstr "Transcodificar clip" + +#: cinelerra/convert.C:290 +#, c-format +msgid "" +"transcode target file exists but is incorrect format:\n" +"%s\n" +"remove file from disk before transcode to new format.\n" +msgstr "" +"el archivo de destino de transcodificación existe pero tiene un formato incorrecto:\n" +"%s\n" +"eliminar el archivo del disco antes de transcodificar a un nuevo formato.\n" + +#: cinelerra/convert.C:377 +#, c-format +msgid "convert: failed=%d canceled=%d\n" +msgstr "convertir: fallido=%d cancelado)%d\n" + +#: cinelerra/convert.C:382 +#, c-format +msgid "TranscodeRender::run: done in %s\n" +msgstr "TranscodificarRender::ejecuta: hecho en %s\n" + +#: cinelerra/convert.C:384 +msgid "transcode cancelled" +msgstr "transcodificación cancelada" + +#: cinelerra/convert.C:386 +msgid "transcode failed" +msgstr "falló la transcodificación" + +#: cinelerra/convert.C:388 +#, c-format +msgid "transcode %d files, render time %s" +msgstr "transcodificación %d archivos, tiempo de render %s" + +#: cinelerra/convert.C:397 +msgid "Error making transcode." +msgstr "Error al hacer la transcodificación." + +#: cinelerra/convert.C:425 +msgid "Transcode files..." +msgstr "Transcodificando archivos..." + +#: cinelerra/convert.C:535 +msgid ": Transcode settings" +msgstr ": Configuración de transcodificación" + +#: cinelerra/convert.C:562 +msgid "Render untagged assets and replace in project" +msgstr "Renderizar activos sin etiquetar y reemplazar en el proyecto" + +#: cinelerra/convert.C:565 cinelerra/convert.C:573 +msgid "Tag suffix:" +msgstr "Sufijo de etiqueta:" + +#: cinelerra/convert.C:587 cinelerra/proxy.C:457 cinelerra/render.C:1062 +msgid "Beep on done volume" +msgstr "" +"Volumen del pitido\n" +"al terminar" + +#: cinelerra/convert.C:628 +msgid "Transcode..." +msgstr "Transcodificar..." + +#: cinelerra/convert.C:628 +msgid "Alt-e" +msgstr "Alt-e" + +#: cinelerra/convert.C:711 +msgid "Remove originals from project" +msgstr "Eliminar originales del proyecto" + +#: cinelerra/convert.C:727 +msgid "Into Nested Proxy directory" +msgstr "Dentro de la carpeta del Proxy Anidado" + +#: cinelerra/cpanel.C:153 msgid "Protect video from changes (F1)" msgstr "Proteger vídeo de cambios (F1)" -#: cinelerra/cpanel.C:176 +#: cinelerra/cpanel.C:177 msgid "Edit mask (F3)" msgstr "Editar máscara (F3)" -#: cinelerra/cpanel.C:198 +#: cinelerra/cpanel.C:199 msgid "Ruler (F4)" msgstr "Regla (F4)" -#: cinelerra/cpanel.C:220 +#: cinelerra/cpanel.C:221 msgid "Zoom view (F2)" msgstr "Vista Zoom (F2)" -#: cinelerra/cpanel.C:240 +#: cinelerra/cpanel.C:241 msgid "Adjust camera automation (F5)" msgstr "Ajustar automatización de cámara (F5)" -#: cinelerra/cpanel.C:260 +#: cinelerra/cpanel.C:261 msgid "Adjust projector automation (F6)" msgstr "Ajustar automatización proyector (F6)" -#: cinelerra/cpanel.C:280 +#: cinelerra/cpanel.C:281 msgid "Crop a layer or output (F7)" msgstr "Recortar una capa o la salida (F7)" -#: cinelerra/cpanel.C:304 +#: cinelerra/cpanel.C:305 msgid "Get color (F8)" msgstr "Obtener color (F8)" -#: cinelerra/cpanel.C:328 +#: cinelerra/cpanel.C:329 msgid "Show tool info (F9)" msgstr "Mostrar información de herramientas (F9)" -#: cinelerra/cpanel.C:359 +#: cinelerra/cpanel.C:360 msgid "Show safe regions (F10)" msgstr "Mostrar zonas seguras (F10)" -#: cinelerra/cpanel.C:376 plugins/perspective/perspective.C:203 +#: cinelerra/cpanel.C:377 plugins/perspective/perspective.C:203 #: plugins/zoom/zoom.C:147 msgid "Zoom" msgstr "Enfocar" @@ -2465,44 +2623,44 @@ msgstr ": Recortar" msgid "Select a region to crop in the video output window" msgstr "Seleccionar una región para recortar en la ventana de salida de vídeo" -#: cinelerra/cwindowgui.C:79 +#: cinelerra/cwindowgui.C:80 msgid ": Compositor" msgstr ": Compositor" -#: cinelerra/cwindowgui.C:668 cinelerra/cwindowgui.C:701 +#: cinelerra/cwindowgui.C:666 cinelerra/cwindowgui.C:699 msgid "insert assets" msgstr "insertar clips" -#: cinelerra/cwindowgui.C:821 cinelerra/mbuttons.C:243 +#: cinelerra/cwindowgui.C:819 cinelerra/mbuttons.C:243 msgid "main window: " msgstr "ventana principal: " -#: cinelerra/cwindowgui.C:1770 cinelerra/cwindowgui.C:3334 +#: cinelerra/cwindowgui.C:1781 cinelerra/cwindowgui.C:3322 msgid "mask rotate" msgstr "rotación de máscara" -#: cinelerra/cwindowgui.C:1774 cinelerra/cwindowgui.C:3338 +#: cinelerra/cwindowgui.C:1785 cinelerra/cwindowgui.C:3326 msgid "mask scale" msgstr "escalar máscara" -#: cinelerra/cwindowgui.C:1782 +#: cinelerra/cwindowgui.C:1793 msgid "mask translate" msgstr "máscara convertir" -#: cinelerra/cwindowgui.C:1789 +#: cinelerra/cwindowgui.C:1800 msgid "mask adjust" msgstr "ajuste de máscara" -#: cinelerra/cwindowgui.C:1802 cinelerra/cwindowtool.C:2943 +#: cinelerra/cwindowgui.C:1813 cinelerra/cwindowtool.C:2943 #: cinelerra/cwindowtool.C:2970 msgid "mask point" msgstr "punto de máscara" -#: cinelerra/cwindowgui.C:2298 cinelerra/cwindowgui.C:2436 +#: cinelerra/cwindowgui.C:2309 cinelerra/cwindowgui.C:2424 msgid "Eyedrop" msgstr "Eyedrop" -#: cinelerra/cwindowgui.C:3059 cinelerra/cwindowgui.C:3317 +#: cinelerra/cwindowgui.C:3047 cinelerra/cwindowgui.C:3305 #: cinelerra/cwindowtool.C:883 cinelerra/cwindowtool.C:931 #: cinelerra/cwindowtool.C:994 cinelerra/cwindowtool.C:998 #: cinelerra/cwindowtool.C:1025 cinelerra/cwindowtool.C:1029 @@ -2513,7 +2671,7 @@ msgstr "Eyedrop" msgid "camera" msgstr "cámara" -#: cinelerra/cwindowgui.C:3061 cinelerra/cwindowgui.C:3321 +#: cinelerra/cwindowgui.C:3049 cinelerra/cwindowgui.C:3309 #: cinelerra/cwindowtool.C:1294 cinelerra/cwindowtool.C:1340 #: cinelerra/cwindowtool.C:1392 cinelerra/cwindowtool.C:1397 #: cinelerra/cwindowtool.C:1421 cinelerra/cwindowtool.C:1425 @@ -2524,11 +2682,11 @@ msgstr "cámara" msgid "projector" msgstr "proyector" -#: cinelerra/cwindowgui.C:3330 +#: cinelerra/cwindowgui.C:3318 msgid "mask" msgstr "máscara" -#: cinelerra/cwindowgui.h:55 cinelerra/scale.C:363 cinelerra/setformat.C:771 +#: cinelerra/cwindowgui.h:55 cinelerra/scale.C:363 cinelerra/setformat.C:766 msgid "Auto" msgstr "Automático" @@ -2632,7 +2790,7 @@ msgstr "Justificar abajo" #: cinelerra/cwindowtool.C:1186 msgid "Add Keyframe: Shift-F11" -msgstr "Agregar fotograma clave: Shift-F11" +msgstr "Agregar fotograma clave: Mayús-F11" #: cinelerra/cwindowtool.C:1200 msgid "Reset Camera: F11" @@ -2644,7 +2802,7 @@ msgstr ": Proyector" #: cinelerra/cwindowtool.C:1558 msgid "Add Keyframe: Shift-F12" -msgstr "Agregar fotograma clave: Shift-F12" +msgstr "Agregar fotograma clave: Mayús-F12" #: cinelerra/cwindowtool.C:1572 msgid "Reset Projector: F12" @@ -2664,7 +2822,7 @@ msgstr "habilitar máscara" #: cinelerra/cwindowtool.C:1881 cinelerra/cwindowtool.C:1899 msgid "Solo" -msgstr "en solitario" +msgstr "Solo" #: cinelerra/cwindowtool.C:1885 msgid "Solo video track" @@ -2694,11 +2852,11 @@ msgstr "Foco" msgid "Center for rotate/scale" msgstr "Centrar para rotar/escalar" -#: cinelerra/cwindowtool.C:2119 +#: cinelerra/cwindowtool.C:2119 plugins/sketcher/sketcherwindow.C:1400 msgid "Help" msgstr "Ayuda" -#: cinelerra/cwindowtool.C:2123 +#: cinelerra/cwindowtool.C:2123 plugins/sketcher/sketcherwindow.C:1404 msgid "Show help text" msgstr "Mostrar texto de ayuda" @@ -2794,7 +2952,7 @@ msgstr "Formas predefinidas" #: cinelerra/cwindowtool.C:2716 plugins/findobj/findobjwindow.C:865 #: plugins/findobj/findobjwindow.C:881 plugins/gradient/gradient.C:337 #: plugins/piano/piano.C:688 plugins/piano/piano.C:941 -#: plugins/synthesizer/synthesizer.C:974 plugins/synthesizer/synthesizer.C:1399 +#: plugins/synthesizer/synthesizer.C:975 plugins/synthesizer/synthesizer.C:1409 #: plugins/tremolo/tremolo.C:473 #, c-format msgid "Square" @@ -2805,8 +2963,8 @@ msgid "Circle" msgstr "Círculo" #: cinelerra/cwindowtool.C:2720 plugins/piano/piano.C:689 -#: plugins/piano/piano.C:942 plugins/synthesizer/synthesizer.C:975 -#: plugins/synthesizer/synthesizer.C:1400 plugins/tremolo/tremolo.C:474 +#: plugins/piano/piano.C:942 plugins/synthesizer/synthesizer.C:976 +#: plugins/synthesizer/synthesizer.C:1410 plugins/tremolo/tremolo.C:474 #, c-format msgid "Triangle" msgstr "Triángulo" @@ -2848,7 +3006,7 @@ msgstr "Pluma:" msgid "Mask Points" msgstr "Puntos de máscara" -#: cinelerra/cwindowtool.C:2765 plugins/compressor/compressor.C:882 +#: cinelerra/cwindowtool.C:2765 msgid "Point:" msgstr "Punto:" @@ -3002,9 +3160,9 @@ msgstr "%0.01f pixeles" #: cinelerra/dbwindow.C:202 msgid "Media DB..." -msgstr "Media DB..." +msgstr "Media db..." -#: cinelerra/dbwindow.C:202 cinelerra/mainmenu.C:1634 +#: cinelerra/dbwindow.C:202 cinelerra/mainmenu.C:1638 msgid "Shift-M" msgstr "Mayús-M" @@ -3478,7 +3636,7 @@ msgstr "Velocidad ISO: %d\n" #: cinelerra/dcraw.C:10370 #, c-format msgid "Shutter: " -msgstr "Obturardor:" +msgstr "Obturardor: " #: cinelerra/dcraw.C:10373 #, c-format @@ -3656,8 +3814,8 @@ msgstr "** %scarrier, dvb_locked %s\n" msgid "no " msgstr "no " -#: cinelerra/devicedvbinput.C:494 cinelerra/mwindow.C:658 -#: cinelerra/mwindow.C:706 +#: cinelerra/devicedvbinput.C:494 cinelerra/mwindow.C:670 +#: cinelerra/mwindow.C:718 msgid "lock" msgstr "bloquear" @@ -3766,7 +3924,7 @@ msgstr "Punto de salida ( ] or > )" #: cinelerra/editpanel.C:731 msgid "Splice ( v )" -msgstr "Separar (v)" +msgstr "Juntar (v)" #: cinelerra/editpanel.C:758 msgid "To clip ( i )" @@ -3828,71 +3986,76 @@ msgstr "Deshacer (z)" msgid "Redo ( shift Z )" msgstr "Rehacer ( Mayús Z )" -#: cinelerra/editpopup.C:90 cinelerra/mainmenu.C:1004 +#: cinelerra/editpopup.C:136 +#, c-format +msgid "Edit is not EDL: %s" +msgstr "Editar no es EDL: %s" + +#: cinelerra/editpopup.C:144 cinelerra/mainmenu.C:1008 msgid "Clear Select" -msgstr "Limpiar Seleccionar" +msgstr "Desselecionar todos los clips" -#: cinelerra/editpopup.C:90 +#: cinelerra/editpopup.C:144 msgid "Ctrl-Shift-A" msgstr "Ctrl-Mayús-A" -#: cinelerra/editpopup.C:105 +#: cinelerra/editpopup.C:159 msgid "Ctrl-c" msgstr "Ctrl-c" -#: cinelerra/editpopup.C:119 +#: cinelerra/editpopup.C:173 msgid "Copy pack" -msgstr "Paquete de copias" +msgstr "Copiar para juntar al pegar" -#: cinelerra/editpopup.C:119 +#: cinelerra/editpopup.C:173 msgid "Ctrl-Shift-C" msgstr "Ctrl-Mayús-C" -#: cinelerra/editpopup.C:134 +#: cinelerra/editpopup.C:188 msgid "Ctrl-x" msgstr "Ctrl-x" -#: cinelerra/editpopup.C:148 +#: cinelerra/editpopup.C:202 msgid "Cut pack" -msgstr "Paquete de cortar" +msgstr "Cortar para juntar al pegar" -#: cinelerra/editpopup.C:148 +#: cinelerra/editpopup.C:202 msgid "Ctrl-z" msgstr "Ctrl-z" -#: cinelerra/editpopup.C:162 +#: cinelerra/editpopup.C:216 msgid "Ctrl-m" msgstr "Ctrl-m" -#: cinelerra/editpopup.C:176 +#: cinelerra/editpopup.C:230 msgid "Mute pack" -msgstr "Paquete de silencio" +msgstr "Cortar dejando el hueco para juntar al pegar" -#: cinelerra/editpopup.C:176 +#: cinelerra/editpopup.C:230 msgid "Ctrl-Shift-M" msgstr "Ctrl-Mayús-M" -#: cinelerra/editpopup.C:191 +#: cinelerra/editpopup.C:245 msgid "Ctrl-v" msgstr "Ctrl-v" -#: cinelerra/editpopup.C:211 +#: cinelerra/editpopup.C:265 msgid "Overwrite" msgstr "Sobrescribir" -#: cinelerra/editpopup.C:211 +#: cinelerra/editpopup.C:265 msgid "Ctrl-b" msgstr "Ctrl-b" -#: cinelerra/editpopup.C:231 +#: cinelerra/editpopup.C:285 msgid "Overwrite Plugins" -msgstr "Sobreescribir complementos" +msgstr "Sobreescribir solo los efectos" -#: cinelerra/editpopup.C:231 +#: cinelerra/editpopup.C:285 msgid "Ctrl-Shift-P" msgstr "Ctrl-Mayús-P" -#: cinelerra/edl.C:1837 +#: cinelerra/edl.C:1891 msgid "new_edl edit" msgstr "edición new_edl" @@ -3922,7 +4085,7 @@ msgstr "Exportación de EDL" #: cinelerra/exportedl.C:364 msgid "Select a file to export to:" -msgstr "Seleccione un archivo para exportar a:" +msgstr "Seleccione un archivo para exportar en:" #: cinelerra/exportedl.C:378 cinelerra/formattools.C:146 msgid "Output to file" @@ -3930,7 +4093,7 @@ msgstr "Salida a archivo" #: cinelerra/exportedl.C:378 cinelerra/formattools.C:146 msgid "Select a file to write to:" -msgstr "Seleccione un archivo para escribir:" +msgstr "Lugar y Nombre del archivo que va a crear:" #: cinelerra/exportedl.C:382 msgid "Select track to be exported:" @@ -3961,29 +4124,29 @@ msgstr "Pluma por el número de fotogramas:" msgid "%s err: %s\n" msgstr "%s err: %s\n" -#: cinelerra/ffmpeg.C:394 cinelerra/ffmpeg.C:3353 +#: cinelerra/ffmpeg.C:417 cinelerra/ffmpeg.C:3376 msgid "cant allocate codec context\n" msgstr "no puede asignar contexto de códec %s:%s\n" -#: cinelerra/ffmpeg.C:437 +#: cinelerra/ffmpeg.C:460 msgid "open decoder failed\n" msgstr "fallo apertura de decodificador\n" -#: cinelerra/ffmpeg.C:440 +#: cinelerra/ffmpeg.C:463 #, c-format msgid "can't open input file: %s\n" msgstr "no se puede abrir archivo de entrada: %s\n" -#: cinelerra/ffmpeg.C:502 +#: cinelerra/ffmpeg.C:525 msgid "av_buffersrc_add_frame_flags failed\n" msgstr "av_buffersrc_add_frame_flags fallaron\n" -#: cinelerra/ffmpeg.C:1035 cinelerra/ffmpeg.C:1085 -#: cinelerra/performanceprefs.C:339 +#: cinelerra/ffmpeg.C:1058 cinelerra/ffmpeg.C:1108 +#: cinelerra/performanceprefs.C:339 cinelerra/plugin.C:227 msgid "none" msgstr "ninguno" -#: cinelerra/ffmpeg.C:1389 +#: cinelerra/ffmpeg.C:1412 #, c-format msgid "" "Error retrieving data from GPU to CPU\n" @@ -3992,122 +4155,127 @@ msgstr "" "Error recuperando datos desde GPU a CPU\n" "archivo: %s\n" -#: cinelerra/ffmpeg.C:1977 +#: cinelerra/ffmpeg.C:2000 #, c-format msgid "options open failed %s\n" msgstr "opciones de apertura fallaron %s\n" -#: cinelerra/ffmpeg.C:1983 +#: cinelerra/ffmpeg.C:2006 #, c-format msgid "format/codec not found %s\n" msgstr "formato / códec no encontrado %s\n" -#: cinelerra/ffmpeg.C:2081 +#: cinelerra/ffmpeg.C:2104 #, c-format msgid "err reading %s: line %d\n" msgstr "errar lectura %s: línea %d\n" -#: cinelerra/ffmpeg.C:2175 +#: cinelerra/ffmpeg.C:2198 #, c-format msgid "vid%d (%d), id 0x%06x:\n" msgstr "vid%d (%d), id 0x%06x:\n" -#: cinelerra/ffmpeg.C:2198 +#: cinelerra/ffmpeg.C:2221 #, c-format msgid "aud%d (%d), id 0x%06x:\n" msgstr "aud%d (%d), id 0x%06x:\n" -#: cinelerra/ffmpeg.C:2295 +#: cinelerra/ffmpeg.C:2318 #, c-format msgid "can't stat file: %s\n" msgstr "no se puede identificar el archivo: %s\n" -#: cinelerra/ffmpeg.C:2393 +#: cinelerra/ffmpeg.C:2398 +#, c-format +msgid "FFMPEG::open_decoder: some stream have bad times: %s\n" +msgstr "FFMPEG::abrir_decodificador: algunos flujos tienen mal el tiempo: %s\n" + +#: cinelerra/ffmpeg.C:2416 #, c-format msgid "bad file path: %s\n" msgstr "mala ruta del archivo: %s\n" -#: cinelerra/ffmpeg.C:2398 +#: cinelerra/ffmpeg.C:2421 #, c-format msgid "bad file format: %s\n" msgstr "formato de archivo incorrecto: %s\n" -#: cinelerra/ffmpeg.C:2402 +#: cinelerra/ffmpeg.C:2425 #, c-format msgid "mismatch audio/video file format: %s\n" msgstr "desajuste formato de archivo de audio / vídeo: %s\n" -#: cinelerra/ffmpeg.C:2412 +#: cinelerra/ffmpeg.C:2435 #, c-format msgid "failed: %s\n" msgstr "fallado: %s\n" -#: cinelerra/ffmpeg.C:2436 +#: cinelerra/ffmpeg.C:2459 #, c-format msgid "get_encoder failed %s:%s\n" msgstr "get_encoder falló %s:%s\n" -#: cinelerra/ffmpeg.C:2455 +#: cinelerra/ffmpeg.C:2478 #, c-format msgid "cant find codec %s:%s\n" msgstr "no puedo encontrar códec %s:%s\n" -#: cinelerra/ffmpeg.C:2461 +#: cinelerra/ffmpeg.C:2484 #, c-format msgid "unknown codec %s:%s\n" msgstr "códec desconocido %s:%s\n" -#: cinelerra/ffmpeg.C:2468 +#: cinelerra/ffmpeg.C:2491 #, c-format msgid "cant create stream %s:%s\n" msgstr "no puedo crear el flujo %s:%s\n" -#: cinelerra/ffmpeg.C:2476 +#: cinelerra/ffmpeg.C:2499 #, c-format msgid "duplicate audio %s:%s\n" msgstr "duplicado de audio %s:%s\n" -#: cinelerra/ffmpeg.C:2481 +#: cinelerra/ffmpeg.C:2504 #, c-format msgid "bad audio options %s:%s\n" msgstr "malas opciones de audio %s:%s\n" -#: cinelerra/ffmpeg.C:2517 +#: cinelerra/ffmpeg.C:2540 #, c-format msgid "check_sample_rate failed %s\n" msgstr "check_sample_rate falló %s\n" -#: cinelerra/ffmpeg.C:2536 +#: cinelerra/ffmpeg.C:2559 #, c-format msgid "duplicate video %s:%s\n" msgstr "video duplicado %s:%s\n" -#: cinelerra/ffmpeg.C:2541 +#: cinelerra/ffmpeg.C:2564 #, c-format msgid "bad video options %s:%s\n" msgstr "malas opciones de vídeo %s:%s\n" -#: cinelerra/ffmpeg.C:2598 +#: cinelerra/ffmpeg.C:2621 #, c-format msgid "check_frame_rate failed %s\n" msgstr "check_frame_rate falló %s\n" -#: cinelerra/ffmpeg.C:2614 +#: cinelerra/ffmpeg.C:2637 #, c-format msgid "not audio/video, %s:%s\n" msgstr "no audio / vídeo, %s:%s\n" -#: cinelerra/ffmpeg.C:2652 +#: cinelerra/ffmpeg.C:2675 #, c-format msgid "error: stats file = %s\n" msgstr "error: archivo datos = %s\n" -#: cinelerra/ffmpeg.C:2675 +#: cinelerra/ffmpeg.C:2698 #, c-format msgid "open failed %s:%s\n" msgstr "falla al abrir %s:%s\n" -#: cinelerra/ffmpeg.C:2685 +#: cinelerra/ffmpeg.C:2708 #, c-format msgid "" "bitstream filter failed %s:\n" @@ -4116,17 +4284,17 @@ msgstr "" "fallo en el filtro de flujo de bits %s:\n" "%s\n" -#: cinelerra/ffmpeg.C:3336 +#: cinelerra/ffmpeg.C:3359 #, c-format msgid "av_frame_alloc failed\n" msgstr "av_frame_alloc falla\n" -#: cinelerra/ffmpeg.C:3382 +#: cinelerra/ffmpeg.C:3405 #, c-format msgid "codec open failed\n" msgstr "error al abrir el códec\n" -#: cinelerra/ffmpeg.C:3412 +#: cinelerra/ffmpeg.C:3435 msgid "over 100 read_frame errs\n" msgstr "más de 100 read_frame yerra\n" @@ -4176,24 +4344,24 @@ msgstr ": Compresión de audio" msgid "Bitrate (kbps):" msgstr "Velocidad de bits (kbps):" -#: cinelerra/file.C:242 +#: cinelerra/file.C:243 msgid "This format doesn't support audio." msgstr "Este formato no soporta audio." -#: cinelerra/file.C:245 +#: cinelerra/file.C:246 msgid "This format doesn't support video." msgstr "Este formato no soporta vídeo." -#: cinelerra/file.C:1291 cinelerra/file.C:1297 cinelerra/fileformat.C:152 +#: cinelerra/file.C:1297 cinelerra/file.C:1303 cinelerra/fileformat.C:152 #: cinelerra/filesndfile.C:455 msgid "Lo Hi" msgstr "Lo Hi" -#: cinelerra/file.C:1298 cinelerra/fileformat.C:166 cinelerra/filesndfile.C:440 +#: cinelerra/file.C:1304 cinelerra/fileformat.C:166 cinelerra/filesndfile.C:440 msgid "Hi Lo" msgstr "Hi-Lo" -#: cinelerra/file.C:1519 +#: cinelerra/file.C:1528 msgid "UNKNOWN" msgstr "DESCONOCIDO" @@ -4481,157 +4649,161 @@ msgstr "ningún códec nombrado: %s: %s" #: cinelerra/fileformat.C:34 msgid ": File Format" -msgstr ": Formato de archivo" +msgstr ": Formato del archivo" #: cinelerra/fileformat.C:73 msgid "Assuming raw PCM:" msgstr "Asumiendo PCM crudo:" -#: cinelerra/file.inc:97 +#: cinelerra/file.inc:98 msgid "AC3" msgstr "AC3" -#: cinelerra/file.inc:98 +#: cinelerra/file.inc:99 msgid "Apple/SGI AIFF" msgstr "Apple / SGI AIFF" -#: cinelerra/file.inc:99 +#: cinelerra/file.inc:100 msgid "AVI Arne Type 1" msgstr "AVI Arne Tipo 1" -#: cinelerra/file.inc:100 +#: cinelerra/file.inc:101 msgid "AVI Avifile" msgstr "AVI Avifile" -#: cinelerra/file.inc:101 +#: cinelerra/file.inc:102 msgid "AVI DV Type 2" msgstr "AVI DV tipo 2" -#: cinelerra/file.inc:102 +#: cinelerra/file.inc:103 msgid "AVI Lavtools" msgstr "AVI Lavtools" -#: cinelerra/file.inc:103 +#: cinelerra/file.inc:104 msgid "EXR" msgstr "EXR" -#: cinelerra/file.inc:104 +#: cinelerra/file.inc:105 msgid "EXR Sequence" msgstr "Secuencia EXR" -#: cinelerra/file.inc:105 +#: cinelerra/file.inc:106 msgid "FFMPEG" msgstr "FFMPEG" -#: cinelerra/file.inc:106 +#: cinelerra/file.inc:107 msgid "FLAC" msgstr "FLAC" -#: cinelerra/file.inc:107 +#: cinelerra/file.inc:108 msgid "GIF" msgstr "GIF" -#: cinelerra/file.inc:108 +#: cinelerra/file.inc:109 msgid "GIF Sequence" msgstr "Secuencia GIF" -#: cinelerra/file.inc:110 +#: cinelerra/file.inc:111 msgid "JPEG Sequence" -msgstr "JPEG Secuencia" +msgstr "Secuencia de JPG" -#: cinelerra/file.inc:111 +#: cinelerra/file.inc:112 msgid "Microsoft WAV" msgstr "Microsoft WAV" -#: cinelerra/file.inc:112 +#: cinelerra/file.inc:113 msgid "MPEG Audio" msgstr "MPEG Audio" -#: cinelerra/file.inc:114 +#: cinelerra/file.inc:115 msgid "MPEG Video" msgstr "Vídeo MPEG" -#: cinelerra/file.inc:116 +#: cinelerra/file.inc:117 msgid "PNG Sequence" -msgstr "PNG Secuencia" +msgstr "Secuencia de PNG" -#: cinelerra/file.inc:117 +#: cinelerra/file.inc:118 msgid "PPM" msgstr "PPM" -#: cinelerra/file.inc:118 +#: cinelerra/file.inc:119 msgid "PPM Sequence" -msgstr "Secuencia PPM" +msgstr "Secuencia de PPM" -#: cinelerra/file.inc:119 +#: cinelerra/file.inc:120 msgid "Raw DV" msgstr "Raw DV" -#: cinelerra/file.inc:120 +#: cinelerra/file.inc:121 msgid "Raw PCM" msgstr "Raw PCM" -#: cinelerra/file.inc:121 +#: cinelerra/file.inc:122 msgid "Sun/NeXT AU" msgstr "Sun/NeXT AU" -#: cinelerra/file.inc:122 +#: cinelerra/file.inc:123 msgid "TGA" msgstr "TGA" -#: cinelerra/file.inc:123 +#: cinelerra/file.inc:124 msgid "TGA Sequence" -msgstr "TGA Secuencia" +msgstr "Secuencia de TGA" -#: cinelerra/file.inc:124 +#: cinelerra/file.inc:125 msgid "TIFF" msgstr "TIFF" -#: cinelerra/file.inc:125 +#: cinelerra/file.inc:126 msgid "TIFF Sequence" -msgstr "Secuencia TIFF" +msgstr "Secuencia de TIFF" -#: cinelerra/file.inc:126 +#: cinelerra/file.inc:127 msgid "Unknown sound" msgstr "Sonido desconocido" -#: cinelerra/file.inc:173 +#: cinelerra/file.inc:128 +msgid "Reference to EDL" +msgstr "Referencia a EDL" + +#: cinelerra/file.inc:176 msgid "8 Bit Linear" msgstr "8 Bit Linear" -#: cinelerra/file.inc:174 +#: cinelerra/file.inc:177 msgid "16 Bit Linear" msgstr "16 Bit Linear" -#: cinelerra/file.inc:175 +#: cinelerra/file.inc:178 msgid "24 Bit Linear" msgstr "24 Bit Linear" -#: cinelerra/file.inc:176 +#: cinelerra/file.inc:179 msgid "32 Bit Linear" msgstr "32 Bit Linear" -#: cinelerra/file.inc:177 +#: cinelerra/file.inc:180 msgid "u Law" msgstr "u Ley" -#: cinelerra/file.inc:178 +#: cinelerra/file.inc:181 msgid "IMA 4" msgstr "IMA 4" -#: cinelerra/file.inc:179 +#: cinelerra/file.inc:182 msgid "ADPCM" msgstr "ADPCM" -#: cinelerra/file.inc:180 +#: cinelerra/file.inc:183 msgid "Float" msgstr "Flotante" -#: cinelerra/file.inc:182 +#: cinelerra/file.inc:185 msgid "RGB ALPHA" msgstr "RGB ALPHA" -#: cinelerra/file.inc:183 +#: cinelerra/file.inc:186 msgid "PNG ALPHA" msgstr "PNG ALPHA" @@ -4729,7 +4901,7 @@ msgstr " (%5.2f), marcos %jd" #: cinelerra/filempeg.C:196 cinelerra/filempeg.C:215 #, c-format msgid " (%0.3f secs)" -msgstr " (%0.3f segundos)" +msgstr " (%0.3f seg)" #: cinelerra/filempeg.C:201 #, c-format @@ -4964,7 +5136,7 @@ msgstr "MPEG-1 Generico" #: cinelerra/filempeg.C:2097 msgid "standard VCD" -msgstr "VCD estándar" +msgstr "estándar VCD" #: cinelerra/filempeg.C:2098 msgid "user VCD" @@ -5034,6 +5206,10 @@ msgstr "YUV 4: 2: 2" msgid "PPM, RGB raw only" msgstr "PPM, RGB solo crudo" +#: cinelerra/fileref.C:68 +msgid "Reference files cant be created by rendering\n" +msgstr "Los archivos de referencia no se pueden crear renderizando\n" + #: cinelerra/filesndfile.C:269 #, c-format msgid "sf_seek() to sample %jd failed, reason: %s\n" @@ -5111,7 +5287,7 @@ msgstr "Carpeta..." #: cinelerra/folderlistmenu.C:51 msgid "New Media" -msgstr "Nuevo Medios" +msgstr "Nuevos Medios Multimedia" #: cinelerra/folderlistmenu.C:52 msgid "New Clips" @@ -5159,39 +5335,39 @@ msgstr "Preestablecidos:" #: cinelerra/formattools.C:159 cinelerra/recordprefs.C:71 msgid "File Format:" -msgstr "Formato de archivo:" +msgstr "Formato del archivo:" -#: cinelerra/formattools.C:563 +#: cinelerra/formattools.C:568 msgid "Configure audio compression" msgstr "Configurar de compresión de audio" -#: cinelerra/formattools.C:585 +#: cinelerra/formattools.C:590 msgid "Configure video compression" msgstr "Configurar la compresión de vídeo" -#: cinelerra/formattools.C:689 +#: cinelerra/formattools.C:694 msgid "Record audio tracks" msgstr "Grabar las pistas de audio" -#: cinelerra/formattools.C:689 +#: cinelerra/formattools.C:694 msgid "Render audio tracks" msgstr "Renderizar pistas de audio" -#: cinelerra/formattools.C:707 +#: cinelerra/formattools.C:712 msgid "Record video tracks" msgstr "Grabar las pistas de vídeo" -#: cinelerra/formattools.C:707 +#: cinelerra/formattools.C:712 msgid "Render video tracks" msgstr "Renderizar pistas de vídeo" -#: cinelerra/formattools.C:790 +#: cinelerra/formattools.C:795 msgid "Create new file at each label" msgstr "Crear un fichero nuevo en cada etiqueta" #: cinelerra/formatwindow.C:29 cinelerra/formatwindow.C:90 msgid ": File format" -msgstr ": Formato de archivo" +msgstr ": Formato del archivo" #: cinelerra/formatwindow.C:46 msgid "Set parameters for this audio format:" @@ -5231,52 +5407,52 @@ msgstr "Transición" #: cinelerra/gwindowgui.C:65 cinelerra/viewmenu.C:129 msgid "Plugin Keyframes" -msgstr "complemento Fotogramas clave" +msgstr "Fotogramas Clave Efectos" #: cinelerra/gwindowgui.C:66 cinelerra/gwindowgui.C:164 msgid "Hard Edges" msgstr "Bordes duros" -#: cinelerra/gwindowgui.C:72 cinelerra/mainmenu.C:254 +#: cinelerra/gwindowgui.C:72 cinelerra/mainmenu.C:258 msgid "Camera X" msgstr "Cámara X" -#: cinelerra/gwindowgui.C:73 cinelerra/mainmenu.C:256 +#: cinelerra/gwindowgui.C:73 cinelerra/mainmenu.C:260 msgid "Camera Y" msgstr "Cámara Y" -#: cinelerra/gwindowgui.C:74 cinelerra/mainmenu.C:258 +#: cinelerra/gwindowgui.C:74 cinelerra/mainmenu.C:262 msgid "Camera Z" msgstr "Cámara Z" -#: cinelerra/gwindowgui.C:75 cinelerra/mainmenu.C:260 +#: cinelerra/gwindowgui.C:75 cinelerra/mainmenu.C:264 msgid "Projector X" msgstr "Proyector X" -#: cinelerra/gwindowgui.C:76 cinelerra/mainmenu.C:262 +#: cinelerra/gwindowgui.C:76 cinelerra/mainmenu.C:266 msgid "Projector Y" msgstr "Proyector Y" -#: cinelerra/gwindowgui.C:77 cinelerra/mainmenu.C:264 +#: cinelerra/gwindowgui.C:77 cinelerra/mainmenu.C:268 msgid "Projector Z" msgstr "Proyector Z" -#: cinelerra/gwindowgui.C:78 cinelerra/mainmenu.C:246 +#: cinelerra/gwindowgui.C:78 cinelerra/mainmenu.C:250 msgid "Fade" -msgstr "Difuminado" +msgstr "Fundido / Volumen" #: cinelerra/gwindowgui.C:80 cinelerra/recordbatches.C:23 #: plugins/parametric/parametric.C:427 msgid "Mode" -msgstr "Modo" +msgstr "Modo Superposición" -#: cinelerra/gwindowgui.C:81 cinelerra/mainmenu.C:251 +#: cinelerra/gwindowgui.C:81 cinelerra/mainmenu.C:255 #: plugins/crikey/crikeywindow.C:98 #: plugins/denoiseseltempavg/seltempavgwindow.C:68 msgid "Mask" msgstr "Máscara" -#: cinelerra/gwindowgui.C:82 cinelerra/mainmenu.C:252 +#: cinelerra/gwindowgui.C:82 cinelerra/mainmenu.C:256 msgid "Speed" msgstr "Velocidad" @@ -5295,14 +5471,14 @@ msgstr "Mayús-F2" #: cinelerra/iec61883input.C:202 #, c-format msgid "write_frame: incomplete frame received.\n" -msgstr "Write_frame: Marco incompleto recibido\n" +msgstr "escribir_fotograma: fotograma incompleto recibido\n" -#: cinelerra/indexfile.C:476 +#: cinelerra/indexfile.C:485 #, c-format msgid "Creating %s." msgstr "Creando %s." -#: cinelerra/indexfile.C:643 +#: cinelerra/indexfile.C:652 #, c-format msgid "IndexFile::draw_index: index has 0 zoom\n" msgstr "Indexfile::draw_index: el index tiene 0 zoom\n" @@ -5330,11 +5506,11 @@ msgstr "Todas las ediciones (ondulación)" #: cinelerra/interfaceprefs.C:37 msgid "One Edit (roll)" -msgstr "Una edición (rollo)" +msgstr "Una edición (enrrollar)" #: cinelerra/interfaceprefs.C:38 msgid "Src Only (slip)" -msgstr "Solo origne (separar)" +msgstr "Src solamente (deslizar)" #: cinelerra/interfaceprefs.C:39 msgid "Move Edit (slide)" @@ -5358,7 +5534,7 @@ msgstr "Keyframe reticle:" #: cinelerra/interfaceprefs.C:88 msgid "Snapshot path:" -msgstr "Ruta de la instantania" +msgstr "Ruta de la instantánea:" #: cinelerra/interfaceprefs.C:93 msgid "Clicking on edit boundaries does what:" @@ -5378,123 +5554,127 @@ msgstr "Botón 3:" #: cinelerra/interfaceprefs.C:124 plugins/reroute/reroute.C:204 msgid "Operation:" -msgstr "Operación" +msgstr "Operación:" -#: cinelerra/interfaceprefs.C:138 +#: cinelerra/interfaceprefs.C:139 msgid "PIN:" msgstr "PIN:" -#: cinelerra/interfaceprefs.C:150 +#: cinelerra/interfaceprefs.C:151 +msgid "Nested Proxy Path:" +msgstr "Ruta de proxy anidada:" + +#: cinelerra/interfaceprefs.C:158 msgid "Default LV2_PATH:" msgstr "LV2_PATH por defecto:" -#: cinelerra/interfaceprefs.C:164 cinelerra/interfaceprefs.C:169 +#: cinelerra/interfaceprefs.C:173 cinelerra/interfaceprefs.C:178 msgid "(must be root)" msgstr "(debes ser root)" -#: cinelerra/interfaceprefs.C:176 +#: cinelerra/interfaceprefs.C:185 msgid "Min DB for meter:" -msgstr "Min DB para metro:" +msgstr "Medidor Audio (db) Mín:" -#: cinelerra/interfaceprefs.C:181 plugins/threshold/thresholdwindow.C:500 +#: cinelerra/interfaceprefs.C:190 plugins/threshold/thresholdwindow.C:500 msgid "Max:" -msgstr "Max:" +msgstr "Máx:" -#: cinelerra/interfaceprefs.C:206 +#: cinelerra/interfaceprefs.C:215 msgid "Index files:" -msgstr "Ficheros de índice:" +msgstr "Ficheros del índice:" -#: cinelerra/interfaceprefs.C:210 +#: cinelerra/interfaceprefs.C:219 msgid "Index files go here:" -msgstr "Los ficheros de index van aquí:" +msgstr "Los archivos del índice están en:" -#: cinelerra/interfaceprefs.C:217 +#: cinelerra/interfaceprefs.C:226 msgid "Index Path" msgstr "Ruta del Índice" -#: cinelerra/interfaceprefs.C:217 +#: cinelerra/interfaceprefs.C:226 msgid "Select the directory for index files" -msgstr "Seleccione el directorio para los archivos de índice" +msgstr "Seleccione la carpeta para los archivos de índice" -#: cinelerra/interfaceprefs.C:220 +#: cinelerra/interfaceprefs.C:229 msgid "Size of index file in KB:" -msgstr "Tamaño del archivo de índice en KB:" +msgstr "Tamaño del archivo en KB:" -#: cinelerra/interfaceprefs.C:227 +#: cinelerra/interfaceprefs.C:236 msgid "Number of index files to keep:" -msgstr "Número de ficheros de índice que deben mantenerse:" +msgstr "Número de archivos a guardar:" -#: cinelerra/interfaceprefs.C:232 +#: cinelerra/interfaceprefs.C:241 msgid "Delete existing indexes" msgstr "Borrar los índices existentes" -#: cinelerra/interfaceprefs.C:236 +#: cinelerra/interfaceprefs.C:245 msgid "Delete clip thumbnails" msgstr "Eliminar miniaturas de clip" -#: cinelerra/interfaceprefs.C:309 +#: cinelerra/interfaceprefs.C:318 msgid "build ffmpeg marker indexes" msgstr "construir índices de marcadores ffmpeg" -#: cinelerra/interfaceprefs.C:400 +#: cinelerra/interfaceprefs.C:409 msgid "Scan for commercials during toc build" msgstr "Buscar anuncios durante construcción del toc" -#: cinelerra/interfaceprefs.C:414 +#: cinelerra/interfaceprefs.C:423 msgid "Android Remote Control" msgstr "Control Remoto Android" -#: cinelerra/interfaceprefs.C:465 +#: cinelerra/interfaceprefs.C:474 msgid "Shell Commands" msgstr "Comandos del Shell" -#: cinelerra/interfaceprefs.C:469 +#: cinelerra/interfaceprefs.C:478 msgid "Main Menu Shell Commands" msgstr "Menú Principal Comandos de Shell" -#: cinelerra/interfaceprefs.C:479 +#: cinelerra/interfaceprefs.C:488 msgid "Import images with a duration of" -msgstr "Importar imágenes con una duración de" +msgstr "Duración imágenes importadas" -#: cinelerra/interfaceprefs.C:538 cinelerra/shbtnprefs.C:251 +#: cinelerra/interfaceprefs.C:547 cinelerra/shbtnprefs.C:251 #: cinelerra/shbtnprefs.C:266 msgid "Never" msgstr "Nunca" -#: cinelerra/interfaceprefs.C:539 +#: cinelerra/interfaceprefs.C:548 msgid "Dragging" msgstr "Arrastrando" -#: cinelerra/interfaceprefs.C:540 cinelerra/shbtnprefs.C:250 +#: cinelerra/interfaceprefs.C:549 cinelerra/shbtnprefs.C:250 #: cinelerra/shbtnprefs.C:265 msgid "Always" msgstr "Siempre" -#: cinelerra/interfaceprefs.C:555 +#: cinelerra/interfaceprefs.C:564 msgid "trap sigSEGV" -msgstr "Trap SIGSEV" +msgstr "trap SIGSEV" -#: cinelerra/interfaceprefs.C:571 +#: cinelerra/interfaceprefs.C:580 msgid "trap sigINT" -msgstr "Trap SIGINT" +msgstr "trap SIGINT" -#: cinelerra/interfaceprefs.C:594 +#: cinelerra/interfaceprefs.C:603 msgid "Probe Order" -msgstr "Orden de sondeo:" +msgstr "Orden de sondeo" -#: cinelerra/interfaceprefs.C:598 +#: cinelerra/interfaceprefs.C:607 msgid "File Open Probe Ordering" msgstr "Orden de prueba de apertura de archivo" -#: cinelerra/interfaceprefs.C:611 +#: cinelerra/interfaceprefs.C:620 msgid "Use yuv420p dvd interlace format" msgstr "Use yuv420p DVD entrelazado formato" -#: cinelerra/interfaceprefs.C:644 +#: cinelerra/interfaceprefs.C:653 msgid "Auto start lv2 gui" -msgstr "Auto iniciar lv2 gui" +msgstr "Auto iniciar interfaz gráfica de lv2" -#: cinelerra/interfaceprefs.C:656 +#: cinelerra/interfaceprefs.C:665 msgid "Reload plugin index" msgstr "Recargar índice de complemento" @@ -5504,17 +5684,17 @@ msgstr "¡Error!" #: cinelerra/interlacemodes.h:30 msgid "Top Fields First" -msgstr "Los campos Mejores Primera" +msgstr "Campos superiores primero" #: cinelerra/interlacemodes.h:33 msgid "Bottom Fields First" -msgstr "Los campos Inferior Primera" +msgstr "Campos inferiores primero" #: cinelerra/interlacemodes.h:36 msgid "Not Interlaced" msgstr "No entrelazado" -#: cinelerra/interlacemodes.h:45 plugins/deinterlace-cv/deinterwindow-cv.C:277 +#: cinelerra/interlacemodes.h:46 plugins/deinterlace-cv/deinterwindow-cv.C:277 #: plugins/motion/motionwindow.C:762 plugins/motion2point/motionwindow.C:767 #: plugins/motion2point/motionwindow.C:788 #: plugins/motion-cv/motionwindow-cv.C:624 @@ -5522,31 +5702,31 @@ msgstr "No entrelazado" msgid "Do Nothing" msgstr "No hacer nada" -#: cinelerra/interlacemodes.h:48 +#: cinelerra/interlacemodes.h:49 msgid "Shift Up 1 pixel" msgstr "Desplazar arriba 1 píxel" -#: cinelerra/interlacemodes.h:51 +#: cinelerra/interlacemodes.h:52 msgid "Shift Down 1 pixel" msgstr "Desplazar abajo 1 píxel" -#: cinelerra/interlacemodes.h:58 +#: cinelerra/interlacemodes.h:59 msgid "unknown" msgstr "desconocido" -#: cinelerra/interlacemodes.h:59 +#: cinelerra/interlacemodes.h:60 msgid "non-interlaced, progressive frame" msgstr "marco progresivo no entrelazado" -#: cinelerra/interlacemodes.h:60 +#: cinelerra/interlacemodes.h:61 msgid "interlaced, top-field first" -msgstr "Entrelazado, la parte superior del campo en primer lugar" +msgstr "entrelazado, campo superior primero" -#: cinelerra/interlacemodes.h:61 +#: cinelerra/interlacemodes.h:62 msgid "interlaced, bottom-field first" -msgstr "Entrelazado, de abajo hacia el primer campo" +msgstr "entrelazado, campo inferior primero" -#: cinelerra/interlacemodes.h:62 +#: cinelerra/interlacemodes.h:63 msgid "mixed, \"refer to frame header\"" msgstr "mixto, \"consulte el encabezado del marco\"" @@ -5565,7 +5745,7 @@ msgstr "aplicar predefinido" #: cinelerra/keyframegui.C:439 msgid "edit keyframe" -msgstr "Editar fotograma clave" +msgstr "editar fotograma clave" #: cinelerra/keyframegui.C:480 msgid "Keyframe parameters:" @@ -5577,7 +5757,7 @@ msgstr "Editar valor:" #: cinelerra/keyframegui.C:510 msgid "Preset title:" -msgstr "Título predefinido" +msgstr "Título predefinido:" #: cinelerra/keyframegui.C:673 msgid "Apply to all selected keyframes" @@ -5593,11 +5773,11 @@ msgstr "Mostrar configuración del plugin" #: cinelerra/keyframepopup.C:180 msgid "Delete keyframe" -msgstr "borrar fotograma clave" +msgstr "Borrar fotograma clave" #: cinelerra/keyframepopup.C:192 cinelerra/keyframepopup.C:196 msgid "delete keyframe" -msgstr "Borrar fotograma clave" +msgstr "borrar fotograma clave" #: cinelerra/keyframepopup.C:209 cinelerra/keyframepopup.C:535 msgid "Hide keyframe type" @@ -5605,7 +5785,7 @@ msgstr "Ocultar tipo de fotograma clave" #: cinelerra/keyframepopup.C:227 msgid "Show keyframe settings" -msgstr "Mostrar preferencias del fotograma clave." +msgstr "Mostrar preferencias del fotograma clave" #: cinelerra/keyframepopup.C:342 msgid "Copy keyframe" @@ -5625,7 +5805,7 @@ msgstr "editar disjunto" #: cinelerra/keyframepopup.C:463 msgid "misconfigured" -msgstr "Mal configurado" +msgstr "mal configurado" #: cinelerra/keyframepopup.C:478 cinelerra/keyframepopup.C:484 msgid "change keyframe curve mode" @@ -5636,7 +5816,7 @@ msgid "Edit Params..." msgstr "Editar parámetros..." #: cinelerra/keyframepopup.C:592 cinelerra/keyframepopup.C:595 -#: cinelerra/mwindowedit.C:1212 +#: cinelerra/mwindowedit.C:1213 msgid "mute" msgstr "mutear" @@ -5650,7 +5830,7 @@ msgstr ": Label" #: cinelerra/labeledit.C:102 msgid "Label Text:" -msgstr "Texto de etiqueta" +msgstr "Texto de etiqueta:" #: cinelerra/labelnavigate.C:64 msgid "Previous label" @@ -5668,79 +5848,102 @@ msgstr "Ir a" msgid ": Levels" msgstr "Niveles" -#: cinelerra/loadfile.C:163 +#: cinelerra/loadfile.C:124 +msgid "" +"Other projects can change this project\n" +"and this can become a broken link" +msgstr "" +"Otros proyectos pueden cambiar este proyecto\n" +"y esto puede convertirse en un enlace roto" + +#: cinelerra/loadfile.C:169 msgid ": Load" msgstr ": Carga" -#: cinelerra/loadfile.C:164 +#: cinelerra/loadfile.C:170 msgid "Select files to load:" msgstr "Seleccionar archivos para cargar:" -#: cinelerra/loadfile.C:234 +#: cinelerra/loadfile.C:245 msgid ": Locate file" msgstr ": Localizar el archivo" -#: cinelerra/loadfile.C:287 +#: cinelerra/loadfile.C:298 msgid "Load backup" msgstr "Cargar copia de seguridad" -#: cinelerra/loadmode.C:43 +#: cinelerra/loadmode.C:28 +msgid "Load strategy:" +msgstr "Estrategia de inserción:" + +msgid "Insertion strategy:" +msgstr "Estrategia de inserción:" + +#: cinelerra/loadmode.C:29 +msgid "EDL strategy:" +msgstr "Estrategia EDL:" + +#: cinelerra/loadmode.C:48 msgid "Insert nothing" msgstr "No insertar nada" -#: cinelerra/loadmode.C:44 +#: cinelerra/loadmode.C:49 msgid "Replace current project" msgstr "Reemplazar proyecto actual" -#: cinelerra/loadmode.C:45 +#: cinelerra/loadmode.C:50 msgid "Replace current project and concatenate tracks" msgstr "Reemplazar proyecto actual y concatenar pistas" -#: cinelerra/loadmode.C:46 +#: cinelerra/loadmode.C:51 msgid "Append in new tracks" msgstr "Añadir en una pista nueva" -#: cinelerra/loadmode.C:47 +#: cinelerra/loadmode.C:52 msgid "Concatenate to existing tracks" msgstr "Concatenar con las pistas existentes" -#: cinelerra/loadmode.C:48 +#: cinelerra/loadmode.C:53 msgid "Paste over selection/at insertion point" msgstr "Pegar sobre la selección/en el punto de inserción" -#: cinelerra/loadmode.C:49 +#: cinelerra/loadmode.C:54 msgid "Create new resources only" msgstr "Crear solo recursos nuevos" -#: cinelerra/loadmode.C:50 +#: cinelerra/loadmode.C:55 msgid "Nest sequence" -msgstr "Secuencia de anidado" +msgstr "Anidar secuencia" -#: cinelerra/loadmode.C:118 cinelerra/loadmode.C:167 -msgid "Load strategy:" -msgstr "Estrategia de inserción:" +#: cinelerra/loadmode.C:56 +msgid "Nested" +msgstr "Anidado" + +#: cinelerra/loadmode.C:57 +msgid "Reference" +msgstr "Referencia" #: cinelerra/localsession.C:63 #, c-format msgid "Program" msgstr "Programa" -#: cinelerra/main.C:207 +#: cinelerra/main.C:209 #, c-format msgid ": Could not set locale.\n" msgstr ": No se pudo establecer la configuración regional.\n" -#: cinelerra/main.C:238 +#: cinelerra/main.C:240 #, c-format msgid "%s: -c needs a filename.\n" msgstr "%s:. -c Necesita un nombre de archivo\n" -#: cinelerra/main.C:253 +#: cinelerra/main.C:255 #, c-format msgid "-b may not be used by the user.\n" msgstr "-b No puede ser utilizada por el usuario.\n" -#: cinelerra/main.C:309 +#: cinelerra/main.C:311 #, c-format msgid "" "\n" @@ -5749,7 +5952,7 @@ msgstr "" "\n" "Uso:\n" -#: cinelerra/main.C:310 +#: cinelerra/main.C:312 #, c-format msgid "" "%s [-f] [-c configuration] [-d port] [-n nice] [-r batch file] [filenames]\n" @@ -5758,49 +5961,49 @@ msgstr "" "%s [-f] [configuración -c] [puerto -d] [nice -n] [ lote ficheros -r] [nombre de archivo]\n" "\n" -#: cinelerra/main.C:311 +#: cinelerra/main.C:313 #, c-format msgid "-d = Run in the background as renderfarm client. The port (400) is optional.\n" msgstr "-d = Ejecutar en el fondo como cliente de granja de renderizado. El puerto (400) es opcional.\n" -#: cinelerra/main.C:312 +#: cinelerra/main.C:314 #, c-format msgid "-f = Run in the foreground as renderfarm client. Substitute for -d.\n" msgstr "-f = Ejecutar en primer plan como cliente de granja de renderizado. Substituir por -d.\n" -#: cinelerra/main.C:313 +#: cinelerra/main.C:315 #, c-format msgid "-n = Nice value if running as renderfarm client. (19)\n" msgstr "-n = Buen valor si se ejecuta como cliente de granja de renderizado. (20)\n" -#: cinelerra/main.C:314 +#: cinelerra/main.C:316 #, c-format msgid "-c = Configuration file to use instead of %s/%s.\n" msgstr "-c = Archivo de configuración para utilizar en lugar de %s /%s.\n" -#: cinelerra/main.C:316 +#: cinelerra/main.C:318 #, c-format msgid "-r = batch render the contents of the batch file (%s/%s) with no GUI. batch file is optional.\n" msgstr "-r = Renderizado por lotes el contenido del archivo por lotes (%s /%s) sin archivo por lotes GUI. Es opcional.\n" -#: cinelerra/main.C:318 +#: cinelerra/main.C:320 #, c-format msgid "-S = do not reload perpetual session\n" msgstr "-S = no recargar sesión perpetua\n" -#: cinelerra/main.C:319 +#: cinelerra/main.C:321 #, c-format msgid "-x = reload from backup\n" msgstr "-x = recargar desde copia de seguridad\n" -#: cinelerra/main.C:320 +#: cinelerra/main.C:322 #, c-format msgid "" "filenames = files to load\n" "\n" "\n" msgstr "" -"Nombres de archivo = Archivos para cargar\n" +"nombres de archivo = archivos para cargar\n" "\n" "\n" @@ -5810,461 +6013,462 @@ msgstr ": Mensajes" #: cinelerra/mainerror.C:61 msgid "Message log:" -msgstr "Mensaje de registro" +msgstr "Mensaje de registro:" #: cinelerra/mainindexes.C:183 cinelerra/threadindexer.C:137 msgid "Building Indexes..." msgstr "Construyendo indices..." -#: cinelerra/mainmenu.C:145 cinelerra/shbtnprefs.C:192 plugins/svg/svgwin.C:267 +#: cinelerra/mainmenu.C:146 cinelerra/shbtnprefs.C:192 plugins/svg/svgwin.C:267 msgid "Edit" msgstr "Editar" -#: cinelerra/mainmenu.C:169 +#: cinelerra/mainmenu.C:170 msgid "Keyframes" msgstr "Fotogramas clave" -#: cinelerra/mainmenu.C:186 cinelerra/mixersalign.C:261 cinelerra/new.C:344 +#: cinelerra/mainmenu.C:187 cinelerra/mixersalign.C:261 cinelerra/new.C:344 #: cinelerra/setformat.C:303 msgid "Audio" msgstr "Audio" -#: cinelerra/mainmenu.C:195 cinelerra/new.C:375 cinelerra/setformat.C:342 +#: cinelerra/mainmenu.C:196 cinelerra/new.C:375 cinelerra/setformat.C:342 msgid "Video" msgstr "Vídeo" -#: cinelerra/mainmenu.C:202 +#: cinelerra/mainmenu.C:203 msgid "Tracks" msgstr "Pistas" -#: cinelerra/mainmenu.C:214 +#: cinelerra/mainmenu.C:215 msgid "Settings" msgstr "Ajustes" -#: cinelerra/mainmenu.C:248 cinelerra/vpatchgui.C:272 +#: cinelerra/mainmenu.C:252 cinelerra/vpatchgui.C:272 msgid "Overlay mode" -msgstr "Modo de superposición:" +msgstr "Modo de superposición" -#: cinelerra/mainmenu.C:267 +#: cinelerra/mainmenu.C:271 msgid "Window" msgstr "Ventana" -#: cinelerra/mainmenu.C:278 +#: cinelerra/mainmenu.C:282 msgid "Tile left" msgstr "Mosaico izquierda" -#: cinelerra/mainmenu.C:279 +#: cinelerra/mainmenu.C:283 msgid "Tile right" msgstr "Mosaico derecho" -#: cinelerra/mainmenu.C:282 +#: cinelerra/mainmenu.C:286 msgid "Default positions" msgstr "Posiciones predeterminadas" -#: cinelerra/mainmenu.C:282 +#: cinelerra/mainmenu.C:286 msgid "Ctrl-P" msgstr "Ctrl-P" -#: cinelerra/mainmenu.C:283 +#: cinelerra/mainmenu.C:287 msgid "Load layout..." -msgstr "Cargar diseño" +msgstr "Cargar diseño..." -#: cinelerra/mainmenu.C:285 +#: cinelerra/mainmenu.C:289 msgid "Save layout..." -msgstr "Guardar diseño" +msgstr "Guardar diseño..." -#: cinelerra/mainmenu.C:552 +#: cinelerra/mainmenu.C:556 msgid "Dumps..." msgstr "Volcados..." -#: cinelerra/mainmenu.C:573 +#: cinelerra/mainmenu.C:577 msgid "Dump CICache" msgstr "Vaciar CICache" -#: cinelerra/mainmenu.C:583 +#: cinelerra/mainmenu.C:587 msgid "Dump EDL" msgstr "Vaciar EDL" -#: cinelerra/mainmenu.C:595 +#: cinelerra/mainmenu.C:599 msgid "Dump Plugins" msgstr "Vaciar Plugins" -#: cinelerra/mainmenu.C:607 +#: cinelerra/mainmenu.C:611 msgid "Dump Assets" msgstr "Vaciar clips" -#: cinelerra/mainmenu.C:617 +#: cinelerra/mainmenu.C:621 msgid "Dump Undo" msgstr "Deshacer volcado" -#: cinelerra/mainmenu.C:630 cinelerra/mixersalign.C:482 +#: cinelerra/mainmenu.C:634 cinelerra/mixersalign.C:482 msgid "Undo" msgstr "Deshacer" -#: cinelerra/mainmenu.C:643 +#: cinelerra/mainmenu.C:647 #, c-format msgid "Undo %s" msgstr "Deshacer %s" -#: cinelerra/mainmenu.C:649 +#: cinelerra/mainmenu.C:653 msgid "Redo" msgstr "Rehacer" -#: cinelerra/mainmenu.C:649 +#: cinelerra/mainmenu.C:653 msgid "Shift-Z" msgstr "Mayús-Z" -#: cinelerra/mainmenu.C:664 +#: cinelerra/mainmenu.C:668 #, c-format msgid "Redo %s" msgstr "Rehacer %s" -#: cinelerra/mainmenu.C:670 +#: cinelerra/mainmenu.C:674 msgid "Cut keyframes" msgstr "Cortar fotogramas clave" -#: cinelerra/mainmenu.C:670 +#: cinelerra/mainmenu.C:674 msgid "Shift-X" msgstr "Mayús-X" -#: cinelerra/mainmenu.C:684 +#: cinelerra/mainmenu.C:688 msgid "Copy keyframes" msgstr "Copiar fotogramas clave" -#: cinelerra/mainmenu.C:684 +#: cinelerra/mainmenu.C:688 msgid "Shift-C" msgstr "Mayús-C" -#: cinelerra/mainmenu.C:698 +#: cinelerra/mainmenu.C:702 msgid "Paste keyframes" msgstr "Pegar fotogramas clave" -#: cinelerra/mainmenu.C:698 +#: cinelerra/mainmenu.C:702 msgid "Shift-V" msgstr "Mayús-V" -#: cinelerra/mainmenu.C:712 +#: cinelerra/mainmenu.C:716 msgid "Clear keyframes" -msgstr "Limpiar Fotogramas clave" +msgstr "Eliminar Fotogramas clave" -#: cinelerra/mainmenu.C:712 +#: cinelerra/mainmenu.C:716 msgid "Shift-Del" -msgstr "Mayús-Del" +msgstr "Mayús-Supr" -#: cinelerra/mainmenu.C:728 +#: cinelerra/mainmenu.C:732 msgid "Change to linear" msgstr "Cambiar a lineal" -#: cinelerra/mainmenu.C:743 +#: cinelerra/mainmenu.C:747 msgid "Change to smooth" msgstr "Cambiar a suavizar" -#: cinelerra/mainmenu.C:757 +#: cinelerra/mainmenu.C:761 msgid "Create curve type..." msgstr "Crear tipo curva..." -#: cinelerra/mainmenu.C:816 +#: cinelerra/mainmenu.C:820 msgid "Cut default keyframe" msgstr "Cortar fotograma clave por defecto" -#: cinelerra/mainmenu.C:816 +#: cinelerra/mainmenu.C:820 msgid "Alt-x" msgstr "Alt-x" -#: cinelerra/mainmenu.C:830 +#: cinelerra/mainmenu.C:834 msgid "Copy default keyframe" msgstr "Copiar fotograma por defecto" -#: cinelerra/mainmenu.C:830 +#: cinelerra/mainmenu.C:834 msgid "Alt-c" msgstr "Alt-c" -#: cinelerra/mainmenu.C:844 +#: cinelerra/mainmenu.C:848 msgid "Paste default keyframe" msgstr "Pegar fotograma clave por defecto" -#: cinelerra/mainmenu.C:844 +#: cinelerra/mainmenu.C:848 msgid "Alt-v" msgstr "Alt-v" -#: cinelerra/mainmenu.C:858 +#: cinelerra/mainmenu.C:862 msgid "Clear default keyframe" msgstr "Borrar fotograma clave por defecto" -#: cinelerra/mainmenu.C:858 +#: cinelerra/mainmenu.C:862 msgid "Alt-Del" -msgstr "Alt-Del" +msgstr "Alt-Supr" -#: cinelerra/mainmenu.C:872 +#: cinelerra/mainmenu.C:876 msgid "Split | Cut" msgstr "Dividir | Cortar" -#: cinelerra/mainmenu.C:920 +#: cinelerra/mainmenu.C:924 msgid "Clear..." -msgstr "Limpiar..." +msgstr "Eliminar -->..." -#: cinelerra/mainmenu.C:940 cinelerra/recordbatches.C:546 -#: cinelerra/swindow.C:563 plugins/compressor/compressor.C:1395 +#: cinelerra/mainmenu.C:944 cinelerra/recordbatches.C:546 +#: cinelerra/swindow.C:563 plugins/compressor/compressor.C:688 +#: plugins/compressormulti/comprmultigui.C:621 #: plugins/histogram_bezier/bistogramwindow.C:82 #: plugins/histogram_bezier/bistogramwindow.C:83 plugins/piano/piano.C:906 -#: plugins/synthesizer/synthesizer.C:1368 +#: plugins/synthesizer/synthesizer.C:1374 msgid "Clear" -msgstr "Limpiar" +msgstr "Eliminar (Elimina el hueco)" -#: cinelerra/mainmenu.C:956 +#: cinelerra/mainmenu.C:960 msgid "Paste silence" msgstr "Pegar Silencio" -#: cinelerra/mainmenu.C:956 +#: cinelerra/mainmenu.C:960 msgid "Shift-Space" msgstr "Mayús-Space" -#: cinelerra/mainmenu.C:970 +#: cinelerra/mainmenu.C:974 msgid "Select All" msgstr "Seleccionar todo" -#: cinelerra/mainmenu.C:982 +#: cinelerra/mainmenu.C:986 msgid "Clear Hard Edges" -msgstr "Limpiar bordes duros" +msgstr "Eliminar bordes duros" -#: cinelerra/mainmenu.C:993 +#: cinelerra/mainmenu.C:997 msgid "Clear labels" -msgstr "Limpiar etiquetas" +msgstr "Eliminar etiquetas" -#: cinelerra/mainmenu.C:1017 +#: cinelerra/mainmenu.C:1021 msgid "Cut ads" msgstr "Cortar anuncios" -#: cinelerra/mainmenu.C:1029 +#: cinelerra/mainmenu.C:1033 msgid "Detach transitions" -msgstr "Separar transiciones" +msgstr "Quitar transiciones" -#: cinelerra/mainmenu.C:1041 +#: cinelerra/mainmenu.C:1045 msgid "Mute Region" -msgstr "Mutear región" +msgstr "Eliminar selección dejando el hueco" -#: cinelerra/mainmenu.C:1055 +#: cinelerra/mainmenu.C:1059 msgid "Trim Selection" msgstr "Recorta selección" -#: cinelerra/mainmenu.C:1080 cinelerra/mainmenu.C:1148 +#: cinelerra/mainmenu.C:1084 cinelerra/mainmenu.C:1152 #: cinelerra/trackpopup.C:206 msgid "Add track" msgstr "Añadir pista" -#: cinelerra/mainmenu.C:1093 cinelerra/mainmenu.C:1163 +#: cinelerra/mainmenu.C:1097 cinelerra/mainmenu.C:1167 #: cinelerra/trackpopup.C:193 msgid "Delete track" msgstr "Eliminar pista" -#: cinelerra/mainmenu.C:1104 cinelerra/mainmenu.C:1189 +#: cinelerra/mainmenu.C:1108 cinelerra/mainmenu.C:1193 msgid "Default Transition" msgstr "Transición predeterminada" -#: cinelerra/mainmenu.C:1118 +#: cinelerra/mainmenu.C:1122 msgid "Map 1:1" msgstr "Mapa 1:1" -#: cinelerra/mainmenu.C:1130 +#: cinelerra/mainmenu.C:1134 msgid "Map 5.1:2" msgstr "Mapa 5.1:2" -#: cinelerra/mainmenu.C:1148 +#: cinelerra/mainmenu.C:1152 msgid "Shift-T" msgstr "Mayús-T" -#: cinelerra/mainmenu.C:1176 +#: cinelerra/mainmenu.C:1180 msgid "Reset Translation" msgstr "Restablecer Trasformación" -#: cinelerra/mainmenu.C:1189 +#: cinelerra/mainmenu.C:1193 msgid "Shift-U" msgstr "Mayús-U" -#: cinelerra/mainmenu.C:1218 +#: cinelerra/mainmenu.C:1222 msgid "Delete tracks" msgstr "Eliminar las pistas" -#: cinelerra/mainmenu.C:1230 +#: cinelerra/mainmenu.C:1234 msgid "Delete first track" msgstr "Eliminar primera pista" -#: cinelerra/mainmenu.C:1246 +#: cinelerra/mainmenu.C:1250 msgid "Delete last track" msgstr "Eliminar última pista" -#: cinelerra/mainmenu.C:1261 +#: cinelerra/mainmenu.C:1265 msgid "Move tracks up" msgstr "Mover pistas hacia arriba" -#: cinelerra/mainmenu.C:1261 +#: cinelerra/mainmenu.C:1265 msgid "Shift-Up" msgstr "Mayús-Up" -#: cinelerra/mainmenu.C:1275 +#: cinelerra/mainmenu.C:1279 msgid "Move tracks down" msgstr "Mover pistas hacia abajo" -#: cinelerra/mainmenu.C:1275 +#: cinelerra/mainmenu.C:1279 msgid "Shift-Down" msgstr "Mayús-Down" -#: cinelerra/mainmenu.C:1291 +#: cinelerra/mainmenu.C:1295 msgid "Concatenate tracks" msgstr "Concatenar pistas" -#: cinelerra/mainmenu.C:1308 +#: cinelerra/mainmenu.C:1312 msgid "Loop Playback" msgstr "Reproducción en bucle" -#: cinelerra/mainmenu.C:1308 +#: cinelerra/mainmenu.C:1312 msgid "Shift-L" msgstr "Mayús-L" -#: cinelerra/mainmenu.C:1330 +#: cinelerra/mainmenu.C:1334 msgid "Add subttl" msgstr "Añadir SUBTTL" -#: cinelerra/mainmenu.C:1330 +#: cinelerra/mainmenu.C:1334 msgid "Shift-Y" msgstr "Mayús-Y" -#: cinelerra/mainmenu.C:1344 cinelerra/swindow.C:461 +#: cinelerra/mainmenu.C:1348 cinelerra/swindow.C:461 msgid "paste subttl" msgstr "pegar SUBTTL" -#: cinelerra/mainmenu.C:1358 +#: cinelerra/mainmenu.C:1362 msgid "Toggle background rendering" msgstr "Alternar renderizado de fondo" -#: cinelerra/mainmenu.C:1358 +#: cinelerra/mainmenu.C:1362 msgid "Shift-G" msgstr "Mayús-G" -#: cinelerra/mainmenu.C:1376 +#: cinelerra/mainmenu.C:1380 msgid "Edit labels" msgstr "Editar etiquetas" -#: cinelerra/mainmenu.C:1393 +#: cinelerra/mainmenu.C:1397 msgid "Edit effects" msgstr "Editar efectos" -#: cinelerra/mainmenu.C:1410 +#: cinelerra/mainmenu.C:1414 msgid "Keyframes follow edits" msgstr "Fotogramas clave siguen las ediciones" -#: cinelerra/mainmenu.C:1425 +#: cinelerra/mainmenu.C:1429 msgid "Align cursor on frames" msgstr "Alinear el cursor a los fotogramas" -#: cinelerra/mainmenu.C:1425 +#: cinelerra/mainmenu.C:1429 msgid "Ctrl-a" msgstr "Ctrl-a" -#: cinelerra/mainmenu.C:1441 +#: cinelerra/mainmenu.C:1445 msgid "Typeless keyframes" -msgstr "fotogramas clave sin tipo" +msgstr "Fotogramas clave sin tipo" -#: cinelerra/mainmenu.C:1456 cinelerra/mainmenu.C:1466 +#: cinelerra/mainmenu.C:1460 cinelerra/mainmenu.C:1470 msgid "Slow Shuttle" msgstr "Trasladar lento" -#: cinelerra/mainmenu.C:1471 +#: cinelerra/mainmenu.C:1475 msgid "Fast Shuttle" msgstr "Trasladar Fast" -#: cinelerra/mainmenu.C:1477 +#: cinelerra/mainmenu.C:1481 msgid "Save settings now" msgstr "Guardar preferencias ahora" -#: cinelerra/mainmenu.C:1477 +#: cinelerra/mainmenu.C:1481 msgid "Ctrl-s" msgstr "Ctrl-s" -#: cinelerra/mainmenu.C:1487 +#: cinelerra/mainmenu.C:1491 msgid "Saved settings." msgstr "Preferencias guardadas." -#: cinelerra/mainmenu.C:1500 +#: cinelerra/mainmenu.C:1504 msgid "Show Viewer" msgstr "Mostrar Visor" -#: cinelerra/mainmenu.C:1512 +#: cinelerra/mainmenu.C:1516 msgid "Show Resources" msgstr "Mostrar Recursos" -#: cinelerra/mainmenu.C:1524 +#: cinelerra/mainmenu.C:1528 msgid "Show Compositor" msgstr "Mostrar Compositor" -#: cinelerra/mainmenu.C:1537 +#: cinelerra/mainmenu.C:1541 msgid "Show Overlays" msgstr "Mostrar Superposiciones" -#: cinelerra/mainmenu.C:1537 +#: cinelerra/mainmenu.C:1541 msgid "Ctrl-0" msgstr "Ctrl-0" -#: cinelerra/mainmenu.C:1557 +#: cinelerra/mainmenu.C:1561 msgid "Show Levels" msgstr "Mostrar Niveles" -#: cinelerra/mainmenu.C:1590 +#: cinelerra/mainmenu.C:1594 msgid "Split X pane" msgstr "Dividir hoja X" -#: cinelerra/mainmenu.C:1590 +#: cinelerra/mainmenu.C:1594 msgid "Ctrl-1" msgstr "Ctrl-1" -#: cinelerra/mainmenu.C:1604 +#: cinelerra/mainmenu.C:1608 msgid "Split Y pane" msgstr "Dividir hoja Y" -#: cinelerra/mainmenu.C:1604 +#: cinelerra/mainmenu.C:1608 msgid "Ctrl-2" msgstr "Ctrl-2" -#: cinelerra/mainmenu.C:1619 +#: cinelerra/mainmenu.C:1623 msgid "Mixers..." msgstr "Mezcladores..." -#: cinelerra/mainmenu.C:1634 +#: cinelerra/mainmenu.C:1638 msgid "Mixer Viewer" msgstr "Visor de mezcladores" -#: cinelerra/mainmenu.C:1647 +#: cinelerra/mainmenu.C:1651 msgid "Tile mixers" msgstr "Mezcladores de mosaico" -#: cinelerra/mainmenu.C:1660 +#: cinelerra/mainmenu.C:1664 msgid "Align mixers" msgstr "Alinear mezcladores" -#: cinelerra/mainmenu.C:1681 +#: cinelerra/mainmenu.C:1685 #, c-format msgid "Ctrl-Shift+F%d" msgstr "Ctrl-Mayús+F%d" -#: cinelerra/mainmenu.C:1726 cinelerra/mainmenu.C:1772 +#: cinelerra/mainmenu.C:1730 cinelerra/mainmenu.C:1776 #, c-format msgid "Layout %d" msgstr "Diseño %d" -#: cinelerra/mainmenu.C:1860 +#: cinelerra/mainmenu.C:1864 msgid ": Layout" msgstr ": Diseño" -#: cinelerra/mainmenu.C:1879 +#: cinelerra/mainmenu.C:1883 msgid "Layout Name:" msgstr "Nombre de diseño:" -#: cinelerra/mainmenu.C:1888 +#: cinelerra/mainmenu.C:1892 #, c-format msgid "a-z,A-Z,0-9_ only, %dch max" msgstr "a-z,A-Z,0-9_ solo, %dch max" -#: cinelerra/mainmenu.C:1944 +#: cinelerra/mainmenu.C:1948 msgid "Load Recent..." msgstr "Cargar recientes..." @@ -6273,7 +6477,8 @@ msgstr "Cargar recientes..." msgid "%s ETA: %s" msgstr "%s tiempo estimado: %s" -#: cinelerra/mainsession.C:637 cinelerra/mwindowedit.C:2150 +#: cinelerra/mainsession.C:641 cinelerra/mwindow.C:3980 +#: cinelerra/mwindowedit.C:2155 #, c-format msgid "Clip %d" msgstr "Clip %d" @@ -6289,7 +6494,7 @@ msgstr "hora min seg mseg" #: cinelerra/mediadb.C:838 #, c-format msgid " find timeline frame_id(%d) failed\n" -msgstr "Encontrar frame_id línea de tiempo (%d) fracasado\n" +msgstr " encontrar frame_id línea de tiempo (%d) fracasado\n" #: cinelerra/menuattacheffect.C:29 msgid "Attach Effect..." @@ -6301,7 +6506,7 @@ msgstr "Adjuntar Efecto" #: cinelerra/menuattachtransition.C:40 msgid "Attach Transition..." -msgstr "Adjuntar Transición ..." +msgstr "Adjuntar Transición..." #: cinelerra/menuattachtransition.C:123 msgid "Attach Transition" @@ -6317,7 +6522,7 @@ msgstr "Seleccionar transición de la lista" #: cinelerra/menueditlength.C:31 msgid "Edit Length..." -msgstr "Editar Longitud ..." +msgstr "Editar Duración..." #: cinelerra/menueditlength.C:52 msgid "Shuffle Edits" @@ -6338,7 +6543,7 @@ msgstr "Renderizar efecto ..." #: cinelerra/menueffects.C:147 #, c-format msgid "No recordable tracks specified." -msgstr "No se han especificado pistas modificables" +msgstr "No se han especificado pistas modificables." #: cinelerra/menueffects.C:158 #, c-format @@ -6357,7 +6562,7 @@ msgstr "Sin efecto seleccionado." msgid "No selected range to process." msgstr "No se ha seleccionado un rango para procesar." -#: cinelerra/menueffects.C:312 cinelerra/mwindowgui.C:499 +#: cinelerra/menueffects.C:312 cinelerra/mwindowgui.C:527 #: cinelerra/vwindowgui.C:146 #, c-format msgid ": %s" @@ -6377,13 +6582,13 @@ msgstr ": Renderizar efecto" msgid "Select an effect" msgstr "Seleccione un efecto" -#: cinelerra/menueffects.C:619 cinelerra/render.C:1019 cinelerra/render.C:1209 +#: cinelerra/menueffects.C:619 cinelerra/render.C:1020 cinelerra/render.C:1212 msgid "Select the first file to render to:" -msgstr "Seleccione el primer archivo que renderizar a:" +msgstr "Indique el lugar y nombre del primer archivo a exportar:" -#: cinelerra/menueffects.C:620 cinelerra/render.C:1020 cinelerra/render.C:1210 +#: cinelerra/menueffects.C:620 cinelerra/render.C:1021 cinelerra/render.C:1213 msgid "Select a file to render to:" -msgstr "Seleccione un archivo para renderizar a:" +msgstr "Indique el lugar y nombre del archivo a exportar:" #: cinelerra/menueffects.C:732 msgid "Set up effect panel and hit \"OK\"" @@ -6395,7 +6600,7 @@ msgstr ": Effect Prompt" #: cinelerra/menutransitionlength.C:32 msgid "Transition Length..." -msgstr "Transición Longitud ..." +msgstr "Duración de la Transición..." #: cinelerra/messages.C:69 cinelerra/messages.C:85 cinelerra/messages.C:106 #, c-format @@ -6416,7 +6621,7 @@ msgid "Show meters" msgstr "Mostrar metros" #: cinelerra/mixersalign.C:73 cinelerra/mixersalign.C:261 -#: cinelerra/patchgui.C:664 +#: cinelerra/patchgui.C:665 msgid "Nudge" msgstr "Empujar" @@ -6455,10 +6660,12 @@ msgstr "pos" #: plugins/brightness/brightnesswindow.C:168 plugins/chromakey/chromakey.C:272 #: plugins/chromakeyhsv/chromakey.C:479 plugins/color3way/color3waywindow.C:649 #: plugins/colorbalance/colorbalancewindow.C:230 +#: plugins/compressor/compressor.C:706 +#: plugins/compressormulti/comprmultigui.C:640 #: plugins/crikey/crikeywindow.C:634 plugins/crop/cropwin.C:506 #: plugins/descratch/descratch.C:497 plugins/descratch/descratch.C:722 #: plugins/findobj/findobjwindow.C:300 plugins/gamma/gammawindow.C:317 -#: plugins/gradient/gradient.C:451 plugins/graphic/graphic.C:681 +#: plugins/gradient/gradient.C:451 plugins/graphic/graphic.C:651 #: plugins/histogram/histogramwindow.C:624 #: plugins/histogram_bezier/bistogramwindow.C:540 #: plugins/huesaturation/huesaturation.C:188 plugins/lens/lens.C:421 @@ -6470,8 +6677,8 @@ msgstr "pos" #: plugins/rgbshift/rgbshift.C:115 plugins/rotate/rotate.C:244 #: plugins/rumbler/rumbler.C:154 plugins/sharpen/sharpenwindow.C:167 #: plugins/shiftinterlace/shiftinterlace.C:188 -#: plugins/sketcher/sketcherwindow.C:1269 -#: plugins/sketcher/sketcherwindow.C:1289 +#: plugins/sketcher/sketcherwindow.C:1358 +#: plugins/sketcher/sketcherwindow.C:1378 #: plugins/swapchannels/swapchannels.C:184 plugins/swapframes/swapframes.C:165 #: plugins/tracer/tracerwindow.C:636 plugins/translate/translatewin.C:164 #: plugins/unsharp/unsharpwindow.C:138 plugins/wave/wave.C:215 @@ -6517,15 +6724,15 @@ msgstr "Mezcladores:" #: cinelerra/mixersalign.C:537 msgid "Master Track:" -msgstr "Pista maestra" +msgstr "Pista maestra:" #: cinelerra/mixersalign.C:539 msgid "Audio Tracks:" -msgstr "Pistas de audio" +msgstr "Pistas de audio:" #: cinelerra/mixersalign.C:870 msgid "align mixers" -msgstr "Alinear mezcaldores" +msgstr "alinear mezcaldores" #: cinelerra/mixersalign.C:1260 msgid "scan master track empty" @@ -6538,7 +6745,7 @@ msgstr "Ajustar mezcladores hecho: %0.3f secs" #: cinelerra/mixersalign.C:1550 msgid "match mixer audio" -msgstr "Ajustar mezcaldores de audio" +msgstr "ajustar mezcaldores de audio" #: cinelerra/mixersalign.C:1620 msgid "master audio track empty" @@ -6546,20 +6753,20 @@ msgstr "pista principal de audio vacía" #: cinelerra/mixersalign.C:1626 msgid "master audio track length > 60 seconds" -msgstr "pista principal de audio > 60 segundos" +msgstr "longitud pista principal de audio > 60 segundos" #: cinelerra/mixersalign.C:1660 msgid "no mixers selected" -msgstr "Ningún mezclador seleccionado" +msgstr "ningún mezclador seleccionado" #: cinelerra/mixersalign.C:1674 #, c-format msgid "Render mixer done: %0.3f secs" -msgstr "Renderizado mezcladores hecho_ %0.3f segundos" +msgstr "Renderizado mezcladores hecho: %0.3f segundos" #: cinelerra/mixersalign.C:1682 cinelerra/mixersalign.C:1726 msgid "selection (master) not set" -msgstr "seleccion (maestra) no establecida" +msgstr "selección (maestra) no establecida" #: cinelerra/mixersalign.C:1687 msgid "in point selection (master start) must be set" @@ -6585,90 +6792,90 @@ msgstr "ajuste de selección de mezclador cancelado" msgid "Error in match render." msgstr "Error en ajuste de renderizado." -#: cinelerra/mwindow.C:634 +#: cinelerra/mwindow.C:646 #, c-format msgid "MWindow::init_plugins: can't open plugin index: %s\n" msgstr "MWindow::init_plugins: no se abrir el índice del complemento: %s\n" -#: cinelerra/mwindow.C:656 +#: cinelerra/mwindow.C:668 #, c-format msgid "MWindow::init_plugins: can't %s plugin index: %s\n" msgstr "MWindow::init_plugins: no se puede %s el índice del complemento: %s\n" -#: cinelerra/mwindow.C:658 cinelerra/mwindow.C:706 +#: cinelerra/mwindow.C:670 cinelerra/mwindow.C:718 msgid "create" msgstr "crear" -#: cinelerra/mwindow.C:687 +#: cinelerra/mwindow.C:699 #, c-format msgid "MWindow::init_ladspa_plugins: can't open ladspa plugin index: %s\n" msgstr "MWindow::init_ladspa_index: no se puede abrir el índice del complemento ladspa: %s\n" -#: cinelerra/mwindow.C:704 +#: cinelerra/mwindow.C:716 #, c-format msgid "MWindow::init_ladspa_plugins: can't %s ladspa plugin index: %s\n" msgstr "MWindow::init_ladspa_index: no se puede %s el índice del complemento ladspa: %s\n" -#: cinelerra/mwindow.C:1085 +#: cinelerra/mwindow.C:1097 #, c-format msgid "MWindow::init_theme: prefered theme %s not found.\n" msgstr "MWindow::init_theme: tema preferido %s no encontrado\n" -#: cinelerra/mwindow.C:1090 +#: cinelerra/mwindow.C:1102 #, c-format msgid "MWindow::init_theme: trying default theme %s\n" msgstr "MWindow::init_theme: tratar el tema por defecto %s\n" -#: cinelerra/mwindow.C:1100 +#: cinelerra/mwindow.C:1112 #, c-format msgid "MWindow::init_theme: theme_plugin not found.\n" msgstr "MWindow::init_theme: no se encontró theme_plugin\n" -#: cinelerra/mwindow.C:1106 +#: cinelerra/mwindow.C:1118 #, c-format msgid "MWindow::init_theme: unable to load theme %s\n" msgstr "MWindow::init_theme: no puede cargar el tema %s\n" -#: cinelerra/mwindow.C:1346 cinelerra/zwindow.C:265 +#: cinelerra/mwindow.C:1357 cinelerra/zwindow.C:275 #, c-format msgid "Mixer %d" msgstr "Mezclador %d" -#: cinelerra/mwindow.C:1392 +#: cinelerra/mwindow.C:1403 msgid "create mixers" msgstr "crear mezcladores" -#: cinelerra/mwindow.C:1740 +#: cinelerra/mwindow.C:1769 msgid "multiple video tracks" msgstr "múltiples pistas de vídeo" -#: cinelerra/mwindow.C:1752 +#: cinelerra/mwindow.C:1781 msgid "crosses edits" msgstr "cruza ediciones" -#: cinelerra/mwindow.C:1754 +#: cinelerra/mwindow.C:1783 msgid "not asset" msgstr "no es un recurso" -#: cinelerra/mwindow.C:1773 +#: cinelerra/mwindow.C:1802 msgid "no file" msgstr "ningún archivo" -#: cinelerra/mwindow.C:1779 +#: cinelerra/mwindow.C:1808 msgid "db failed" msgstr "db fracasado" -#: cinelerra/mwindow.C:1783 +#: cinelerra/mwindow.C:1812 #, c-format msgid "put_commercial: %s" msgstr "put_commercial: %s" -#: cinelerra/mwindow.C:1870 +#: cinelerra/mwindow.C:1975 #, c-format msgid "Loading %s" msgstr "Cargando %s" -#: cinelerra/mwindow.C:1883 +#: cinelerra/mwindow.C:1987 #, c-format msgid "" "%s's resolution is %dx%d.\n" @@ -6678,7 +6885,7 @@ msgstr "" "\n" "Es posible que las imágenes con dimensiones impares no se decodifiquen correctamente." -#: cinelerra/mwindow.C:1892 +#: cinelerra/mwindow.C:1994 #, c-format msgid "" "%s's index was built for program number %d\n" @@ -6689,16 +6896,16 @@ msgstr "" "Preferencias de reproducción es %d.\n" " Usando programa %d." -#: cinelerra/mwindow.C:1928 +#: cinelerra/mwindow.C:2028 cinelerra/mwindow.C:2029 #, c-format msgid "Failed to open %s" msgstr "Fracaso al abrir %s" -#: cinelerra/mwindow.C:1962 +#: cinelerra/mwindow.C:2070 msgid "'s format couldn't be determined." msgstr "el formato 's no se pudo determinar." -#: cinelerra/mwindow.C:2022 +#: cinelerra/mwindow.C:2121 #, c-format msgid "" "XML file %s\n" @@ -6707,12 +6914,12 @@ msgstr "" "Archivo XML %s\n" " no es de cinelerra." -#: cinelerra/mwindow.C:2024 +#: cinelerra/mwindow.C:2123 #, c-format msgid "Unknown %s" -msgstr " %s desconocido" +msgstr "Desconocido %s" -#: cinelerra/mwindow.C:2034 +#: cinelerra/mwindow.C:2130 #, c-format msgid "" "Warning: XML from cinelerra version %s\n" @@ -6721,27 +6928,36 @@ msgstr "" "Cuidado: XML de la versión %s de cinelerra\n" "Datos de la sesión pueden ser incompatibles." -#: cinelerra/mwindow.C:2232 +#: cinelerra/mwindow.C:2187 +#, c-format +msgid "" +"Error: Unable to load xml:\n" +" %s" +msgstr "" +"Error: No se puede cargar el xml:\n" +" %s" + +#: cinelerra/mwindow.C:2337 msgid "load" msgstr "cargar" -#: cinelerra/mwindow.C:2344 cinelerra/mwindow.C:2459 +#: cinelerra/mwindow.C:2457 cinelerra/mwindow.C:2572 msgid "proxy" msgstr "proxy" -#: cinelerra/mwindow.C:2486 cinelerra/mwindow.C:2501 +#: cinelerra/mwindow.C:2595 cinelerra/mwindow.C:2610 #, c-format msgid "" "The %s '%s' in file '%s' is not part of your installation of Cinelerra.\n" "The project won't be rendered as it was meant and Cinelerra might crash.\n" msgstr "El %s '%s' en el archivo '%s' no es parte de la instalación de Cinelerra. NLa proyecto no se rindió ya que estaba destinado y Cinelerra puede bloquearse.\n" -#: cinelerra/mwindow.C:2529 +#: cinelerra/mwindow.C:2638 #, c-format msgid "MWindow::init_shm: couldn't open %s for reading.\n" msgstr "MWindow::init_shm: no se pudo abrir %s para lectura.\n" -#: cinelerra/mwindow.C:2536 +#: cinelerra/mwindow.C:2645 #, c-format msgid "" "MWindow::init_shm: %s is %p.\n" @@ -6756,58 +6972,89 @@ msgstr "" "antes de intentar iniciar cinelerra.\n" "Debería ser al menos 0x%jx para Cinelerra.\n" -#: cinelerra/mwindow.C:2567 +#: cinelerra/mwindow.C:2676 msgid "Initializing Plugins" msgstr "Iniciando Plugins" -#: cinelerra/mwindow.C:2574 +#: cinelerra/mwindow.C:2683 msgid "Initializing GUI" msgstr "Iniciando GUI" -#: cinelerra/mwindow.C:2582 +#: cinelerra/mwindow.C:2691 msgid "Initializing Fonts" msgstr "Iniciando Fuentes" -#: cinelerra/mwindow.C:3756 +#: cinelerra/mwindow.C:3921 +msgid "open edl" +msgstr "abrir edl" + +#: cinelerra/mwindow.C:3930 +#, c-format +msgid "Warning: Asset not updated: %s" +msgstr "Advertencia: activo no actualizado: %s" + +#: cinelerra/mwindow.C:3950 +#, c-format +msgid "Nested_%02d%02d%02d-%02d%02d%02d_" +msgstr "Anidado_%02d%02d%02d-%02d%02d%02d_" + +#: cinelerra/mwindow.C:3961 +msgid "clip2media" +msgstr "clip2deMedios" + +#: cinelerra/mwindow.C:3991 +#, c-format +msgid "From: %s" +msgstr "Desde: %s" + +#: cinelerra/mwindow.C:3993 +msgid "media2clip" +msgstr "medios2clip" + +#: cinelerra/mwindow.C:4007 cinelerra/mwindow.C:4019 +msgid "reference" +msgstr "referencia" + +#: cinelerra/mwindow.C:4122 #, c-format msgid "Couldn't open %s for writing." msgstr "No se pudo abrir %s para la escritura." -#: cinelerra/mwindow.C:3788 -msgid "perpetual session" -msgstr "sesión perpetua" +#: cinelerra/mwindow.C:4175 +msgid "perpetual load" +msgstr "carga perpetua" -#: cinelerra/mwindow.C:3823 +#: cinelerra/mwindow.C:4201 #, c-format msgid "Copying: %s\n" msgstr "Copiando: %s\n" -#: cinelerra/mwindow.C:3910 +#: cinelerra/mwindow.C:4288 #, c-format msgid "Saving to %s:\n" msgstr "Guardando a: %s\n" -#: cinelerra/mwindow.C:3969 cinelerra/savefile.C:95 cinelerra/savefile.C:202 +#: cinelerra/mwindow.C:4350 cinelerra/savefile.C:95 cinelerra/savefile.C:202 #, c-format msgid "\"%s\" %dC written" msgstr "\"%s\" %dC escrito" -#: cinelerra/mwindow.C:3976 cinelerra/savefile.C:190 +#: cinelerra/mwindow.C:4357 cinelerra/savefile.C:190 #, c-format msgid "Couldn't open %s." msgstr "No se pudo abrir %s." -#: cinelerra/mwindow.C:4126 +#: cinelerra/mwindow.C:4532 msgid "remove assets" msgstr "eliminar clips" -#: cinelerra/mwindow.C:4353 +#: cinelerra/mwindow.C:4757 #, c-format msgid "Using %s" msgstr "Utilizando %s" -#: cinelerra/mwindow.C:4490 cinelerra/mwindowedit.C:192 -#: cinelerra/mwindowedit.C:239 cinelerra/preferencesthread.C:285 +#: cinelerra/mwindow.C:4894 cinelerra/mwindowedit.C:193 +#: cinelerra/mwindowedit.C:240 cinelerra/preferencesthread.C:288 msgid "" "This project's dimensions are not multiples of 4 so\n" "it can't be rendered by OpenGL." @@ -6815,284 +7062,296 @@ msgstr "" "Las dimensiones de este proyecto no son múltiplos de 4 por lo\n" " cual no puede ser renderizado con OpenGL." -#: cinelerra/mwindow.C:4607 +#: cinelerra/mwindow.C:5011 msgid "select asset" msgstr "selecionar clip" -#: cinelerra/mwindowedit.C:89 cinelerra/mwindowedit.C:101 -#: cinelerra/mwindowedit.C:115 +#: cinelerra/mwindowedit.C:90 cinelerra/mwindowedit.C:102 +#: cinelerra/mwindowedit.C:116 msgid "add track" -msgstr "Añadir pista" +msgstr "añadir pista" -#: cinelerra/mwindowedit.C:213 +#: cinelerra/mwindowedit.C:214 msgid "asset to all" msgstr "clip a todo" -#: cinelerra/mwindowedit.C:253 +#: cinelerra/mwindowedit.C:254 msgid "asset to size" msgstr "clip a tamaño" -#: cinelerra/mwindowedit.C:273 +#: cinelerra/mwindowedit.C:274 msgid "asset to rate" msgstr "clip a calidad" -#: cinelerra/mwindowedit.C:288 +#: cinelerra/mwindowedit.C:289 msgid "clear" -msgstr "limpiar" +msgstr "eliminar" -#: cinelerra/mwindowedit.C:353 +#: cinelerra/mwindowedit.C:354 msgid "clear keyframes" -msgstr "limpiar keyframes" +msgstr "eliminar keyframes" -#: cinelerra/mwindowedit.C:366 +#: cinelerra/mwindowedit.C:367 msgid "clear default keyframe" -msgstr "limpiar el fotograma clave por defecto" +msgstr "eliminar el fotograma clave por defecto" -#: cinelerra/mwindowedit.C:378 +#: cinelerra/mwindowedit.C:379 msgid "clear labels" -msgstr "limpiar etiquetas" +msgstr "eliminar etiquetas" -#: cinelerra/mwindowedit.C:402 +#: cinelerra/mwindowedit.C:403 msgid "clear hard edges" msgstr "limpie bordes duros" -#: cinelerra/mwindowedit.C:430 +#: cinelerra/mwindowedit.C:431 msgid "concatenate tracks" msgstr "concatenar pistas" -#: cinelerra/mwindowedit.C:568 +#: cinelerra/mwindowedit.C:569 msgid "crop" msgstr "recortar" -#: cinelerra/mwindowedit.C:591 +#: cinelerra/mwindowedit.C:592 msgid "blade" msgstr "cuchilla" -#: cinelerra/mwindowedit.C:611 +#: cinelerra/mwindowedit.C:612 msgid "split | cut" msgstr "dividir | cortar" -#: cinelerra/mwindowedit.C:669 +#: cinelerra/mwindowedit.C:670 msgid "cut keyframes" msgstr "cortar fotogramas clave" -#: cinelerra/mwindowedit.C:685 +#: cinelerra/mwindowedit.C:686 msgid "cut default keyframe" -msgstr "cortar fotograma clave por defecto " +msgstr "cortar fotograma clave por defecto" -#: cinelerra/mwindowedit.C:697 +#: cinelerra/mwindowedit.C:698 msgid "delete tracks" msgstr "borrar pistas" -#: cinelerra/mwindowedit.C:711 +#: cinelerra/mwindowedit.C:712 msgid "delete track" msgstr "eliminar pista" -#: cinelerra/mwindowedit.C:779 cinelerra/mwindowedit.C:808 +#: cinelerra/mwindowedit.C:780 cinelerra/mwindowedit.C:809 msgid "insert effect" msgstr "insertar efecto" -#: cinelerra/mwindowedit.C:930 +#: cinelerra/mwindowedit.C:931 msgid "drag handle" -msgstr "gestiona arrastrar " +msgstr "gestiona arrastrar" -#: cinelerra/mwindowedit.C:948 +#: cinelerra/mwindowedit.C:949 msgid "match output size" msgstr "ajusta a la dimensión de la salida" -#: cinelerra/mwindowedit.C:983 +#: cinelerra/mwindowedit.C:984 msgid "del edit" msgstr "eliminar edición" -#: cinelerra/mwindowedit.C:993 +#: cinelerra/mwindowedit.C:994 msgid "cut edit" msgstr "cortar edición" -#: cinelerra/mwindowedit.C:1012 +#: cinelerra/mwindowedit.C:1013 msgid "move edit" msgstr "mover el recorte" -#: cinelerra/mwindowedit.C:1054 +#: cinelerra/mwindowedit.C:1055 msgid "paste clip" msgstr "pegar clip" -#: cinelerra/mwindowedit.C:1086 +#: cinelerra/mwindowedit.C:1087 msgid "move group" msgstr "mover grupo" -#: cinelerra/mwindowedit.C:1099 +#: cinelerra/mwindowedit.C:1100 msgid "paste effect" msgstr "pegar efecto" -#: cinelerra/mwindowedit.C:1112 +#: cinelerra/mwindowedit.C:1113 msgid "move effect" msgstr "mover efecto" -#: cinelerra/mwindowedit.C:1127 +#: cinelerra/mwindowedit.C:1128 msgid "move effect up" msgstr "mover efecto arriba" -#: cinelerra/mwindowedit.C:1140 +#: cinelerra/mwindowedit.C:1141 msgid "move effect down" msgstr "mover efecto abajo" -#: cinelerra/mwindowedit.C:1151 +#: cinelerra/mwindowedit.C:1152 msgid "move track down" msgstr "mover la pista abajo" -#: cinelerra/mwindowedit.C:1164 +#: cinelerra/mwindowedit.C:1165 msgid "move tracks down" msgstr "mover las pistas abajo" -#: cinelerra/mwindowedit.C:1177 +#: cinelerra/mwindowedit.C:1178 msgid "move track up" -msgstr "Mover la pista arriba" +msgstr "mover la pista arriba" -#: cinelerra/mwindowedit.C:1189 +#: cinelerra/mwindowedit.C:1190 msgid "move tracks up" -msgstr "Mover las pistas arriba" +msgstr "mover las pistas arriba" -#: cinelerra/mwindowedit.C:1261 +#: cinelerra/mwindowedit.C:1268 msgid "overwrite" msgstr "sobrescribir" -#: cinelerra/mwindowedit.C:1314 +#: cinelerra/mwindowedit.C:1321 msgid "paste" msgstr "pegar" -#: cinelerra/mwindowedit.C:1351 +#: cinelerra/mwindowedit.C:1358 msgid "paste assets" msgstr "pegar clips" -#: cinelerra/mwindowedit.C:1427 +#: cinelerra/mwindowedit.C:1434 msgid "paste keyframes" msgstr "pegar fotogramas clave" -#: cinelerra/mwindowedit.C:1453 +#: cinelerra/mwindowedit.C:1460 msgid "paste default keyframe" -msgstr "Pegar fotogramas clave por defecto" +msgstr "pegar fotogramas clave por defecto" -#: cinelerra/mwindowedit.C:1761 cinelerra/mwindowedit.C:1768 +#: cinelerra/mwindowedit.C:1766 cinelerra/mwindowedit.C:1773 msgid "silence" msgstr "silencio" -#: cinelerra/mwindowedit.C:1784 +#: cinelerra/mwindowedit.C:1789 msgid "detach transition" msgstr "quitar transición" -#: cinelerra/mwindowedit.C:1801 +#: cinelerra/mwindowedit.C:1806 msgid "detach transitions" msgstr "quitar transiciones" -#: cinelerra/mwindowedit.C:1816 cinelerra/mwindowedit.C:1844 -#: cinelerra/mwindowedit.C:1864 cinelerra/mwindowedit.C:1885 +#: cinelerra/mwindowedit.C:1821 cinelerra/mwindowedit.C:1849 +#: cinelerra/mwindowedit.C:1869 cinelerra/mwindowedit.C:1890 msgid "transition" msgstr "transición" -#: cinelerra/mwindowedit.C:1831 +#: cinelerra/mwindowedit.C:1836 msgid "attach transitions" msgstr "adjuntar transiciones" -#: cinelerra/mwindowedit.C:1856 cinelerra/mwindowedit.C:1876 +#: cinelerra/mwindowedit.C:1861 cinelerra/mwindowedit.C:1881 #, c-format msgid "No default transition %s found." msgstr "No se encontró ninguna transición %s predeterminada." -#: cinelerra/mwindowedit.C:1903 +#: cinelerra/mwindowedit.C:1908 msgid "shuffle edits" msgstr "mezclar ediciones" -#: cinelerra/mwindowedit.C:1922 +#: cinelerra/mwindowedit.C:1927 msgid "reverse edits" msgstr "ediciones inverso" -#: cinelerra/mwindowedit.C:1941 +#: cinelerra/mwindowedit.C:1946 msgid "align edits" msgstr "alinear ediciones" -#: cinelerra/mwindowedit.C:1960 +#: cinelerra/mwindowedit.C:1965 msgid "edit length" msgstr "edita la longitud" -#: cinelerra/mwindowedit.C:1980 cinelerra/mwindowedit.C:1999 +#: cinelerra/mwindowedit.C:1985 cinelerra/mwindowedit.C:2004 msgid "transition length" msgstr "longitud de transición" -#: cinelerra/mwindowedit.C:2063 +#: cinelerra/mwindowedit.C:2068 msgid "resize track" msgstr "cambiar el tamaño de la pista" -#: cinelerra/mwindowedit.C:2076 +#: cinelerra/mwindowedit.C:2081 msgid "in point" msgstr "punto de entrada" -#: cinelerra/mwindowedit.C:2089 +#: cinelerra/mwindowedit.C:2094 msgid "out point" msgstr "punto de salida" -#: cinelerra/mwindowedit.C:2102 +#: cinelerra/mwindowedit.C:2107 msgid "clear in/out" -msgstr "limpiar entrada/salida" +msgstr "eliminar entrada/salida" -#: cinelerra/mwindowedit.C:2139 +#: cinelerra/mwindowedit.C:2144 msgid "splice" msgstr "empalmar" -#: cinelerra/mwindowedit.C:2258 +#: cinelerra/mwindowedit.C:2259 msgid "label" msgstr "etiqueta" -#: cinelerra/mwindowedit.C:2274 +#: cinelerra/mwindowedit.C:2275 msgid "trim selection" msgstr "eliminar selección" -#: cinelerra/mwindowedit.C:2333 +#: cinelerra/mwindowedit.C:2334 msgid "create new folder failed" msgstr "fallo crear nueva carpeta" -#: cinelerra/mwindowedit.C:2335 +#: cinelerra/mwindowedit.C:2336 msgid "new folder" msgstr "nueva carpeta" -#: cinelerra/mwindowedit.C:2343 +#: cinelerra/mwindowedit.C:2344 msgid "delete folder failed" msgstr "falla eliminar carpeta" -#: cinelerra/mwindowedit.C:2345 +#: cinelerra/mwindowedit.C:2346 msgid "del folder" msgstr "eliminar carpeta" -#: cinelerra/mwindowedit.C:2381 +#: cinelerra/mwindowedit.C:2382 msgid "map 1:1" msgstr "mapa 1:1" -#: cinelerra/mwindowedit.C:2381 +#: cinelerra/mwindowedit.C:2382 msgid "map 5.1:2" msgstr "mapa 5.1:2" -#: cinelerra/mwindowedit.C:2453 +#: cinelerra/mwindowedit.C:2459 +msgid "convert assets format error" +msgstr "error de formato de conversión de activos" + +#: cinelerra/mwindowedit.C:2461 +msgid "No convertable assets found" +msgstr "Activos no convertibles encontrados" + +#: cinelerra/mwindowedit.C:2476 +msgid "convert" +msgstr "convertir" + +#: cinelerra/mwindowedit.C:2493 msgid "cut ads" msgstr "cortar anuncios" -#: cinelerra/mwindowgui.C:82 +#: cinelerra/mwindowgui.C:85 msgid ": Program" msgstr ": Programa" -#: cinelerra/mwindowgui.C:2296 +#: cinelerra/mwindowgui.C:2338 msgid "Changing the base codecs may require rebuilding indexes." msgstr "Changing the base codecs may require rebuilding indexes." -#: cinelerra/mwindowgui.C:2311 cinelerra/mwindowgui.C:2345 +#: cinelerra/mwindowgui.C:2377 cinelerra/mwindowgui.C:2411 msgid "Disable proxy" msgstr "Desactivar proxy" -#: cinelerra/mwindowgui.C:2311 cinelerra/mwindowgui.C:2345 +#: cinelerra/mwindowgui.C:2377 cinelerra/mwindowgui.C:2411 msgid "Enable proxy" msgstr "Activar proxy" #: cinelerra/mwindow.inc:59 msgid "Cinelerra: Asset Info" -msgstr "Cinelerra: Activos Info" +msgstr "Cinelerra: Información del archivo" #: cinelerra/mwindow.inc:60 msgid "Cinelerra: Asset path" @@ -7200,7 +7459,7 @@ msgstr "Cinelerra: Editar canal" #: cinelerra/mwindow.inc:86 msgid "Cinelerra: Edit length" -msgstr "Cinelerra: Editar longitud" +msgstr "Cinelerra: Editar duración" #: cinelerra/mwindow.inc:87 msgid "Cinelerra: Effect Prompt" @@ -7236,11 +7495,11 @@ msgstr "Cinelerra: El archivo existe" #: cinelerra/mwindow.inc:95 msgid "Cinelerra: File format" -msgstr "Cinelerra: Formato de archivo" +msgstr "Cinelerra: Formato del archivo" #: cinelerra/mwindow.inc:96 msgid "Cinelerra: File Format" -msgstr "Cinelerra: Formato de archivo" +msgstr "Cinelerra: Formato del Archivo" #: cinelerra/mwindow.inc:97 msgid "Cinelerra: Goto position" @@ -7521,7 +7780,9 @@ msgstr ": Agregar al proyecto" msgid "" "Cannot create and access project path:\n" "%s" -msgstr "No se puede crear y acceder a la ruta del proyecto: %s" +msgstr "" +"No se puede crear y acceder a la ruta del proyecto: \n" +"%s" #: cinelerra/new.C:333 msgid "Parameters for the new project:" @@ -7541,7 +7802,7 @@ msgstr "Velocidad de muestreo:" #: cinelerra/new.C:394 cinelerra/recordgui.C:246 msgid "Framerate:" -msgstr "Fotograma por segundos:" +msgstr "Fotogramas x seg:" #: cinelerra/new.C:418 cinelerra/setformat.C:360 msgid "Canvas size:" @@ -7569,7 +7830,7 @@ msgstr "Directorio del Proyecto" #: cinelerra/new.C:476 msgid "Project Directory Path:" -msgstr "Rutal del directorio del Proyecto" +msgstr "Rutal del Directorio del Proyecto:" #: cinelerra/new.C:478 msgid "Project Name:" @@ -7580,7 +7841,7 @@ msgid "Auto aspect ratio" msgstr "Relación de aspecto Automatica" #: cinelerra/new.C:945 cinelerra/resizetrackthread.C:189 -#: cinelerra/setformat.C:827 plugins/photoscale/photoscale.C:198 +#: cinelerra/setformat.C:822 plugins/photoscale/photoscale.C:198 msgid "Swap dimensions" msgstr "Intercambiar dimensiones" @@ -7600,43 +7861,43 @@ msgstr "reproducir parche" msgid "Arm track" msgstr "Activar pista" -#: cinelerra/patchgui.C:399 +#: cinelerra/patchgui.C:400 msgid "record patch" -msgstr "registrar parche " +msgstr "parchear la grabación" -#: cinelerra/patchgui.C:426 +#: cinelerra/patchgui.C:427 msgid "Gang faders" -msgstr "Junta difuminados" +msgstr "Junta fundidos" -#: cinelerra/patchgui.C:451 +#: cinelerra/patchgui.C:452 msgid "gang patch" msgstr "junta parche" -#: cinelerra/patchgui.C:478 +#: cinelerra/patchgui.C:479 msgid "Draw media" msgstr "Dibujar medios" -#: cinelerra/patchgui.C:503 +#: cinelerra/patchgui.C:504 msgid "draw patch" msgstr "dibujar parche" -#: cinelerra/patchgui.C:529 +#: cinelerra/patchgui.C:530 msgid "Don't send to output" msgstr "No enviar a la salida" -#: cinelerra/patchgui.C:569 +#: cinelerra/patchgui.C:570 msgid "mute patch" msgstr "silenciar parche" -#: cinelerra/patchgui.C:615 +#: cinelerra/patchgui.C:616 msgid "expand patch" msgstr "ampliar parche" -#: cinelerra/patchgui.C:642 cinelerra/patchgui.C:646 +#: cinelerra/patchgui.C:643 cinelerra/patchgui.C:647 msgid "track title" msgstr "título della pista" -#: cinelerra/patchgui.C:675 cinelerra/patchgui.C:681 +#: cinelerra/patchgui.C:676 cinelerra/patchgui.C:682 msgid "nudge." msgstr "empujar." @@ -7654,7 +7915,7 @@ msgstr "Segundos de preroll para renderizados:" #: cinelerra/performanceprefs.C:98 msgid "Project SMP cpus:" -msgstr "Proyecto CPUs SMP" +msgstr "Proyecto CPUs SMP:" #: cinelerra/performanceprefs.C:113 msgid "Background Rendering (Video only)" @@ -7678,7 +7939,7 @@ msgstr "Granja de Renderizado" #: cinelerra/performanceprefs.C:155 cinelerra/performanceprefs.C:651 msgid "Reset rates" -msgstr "Restablecer tasas" +msgstr "Restablecer" #: cinelerra/performanceprefs.C:158 msgid "Nodes:" @@ -7690,7 +7951,7 @@ msgstr "Nombre de host:" #: cinelerra/performanceprefs.C:176 msgid "Client Watchdog Timeout:" -msgstr "Final tiempo de vigilancia de cliente" +msgstr "Final tiempo de vigilancia de cliente:" #: cinelerra/performanceprefs.C:179 msgid "Total jobs to create:" @@ -7702,12 +7963,13 @@ msgstr "(Anulado si \"fichero nuevo en cada etiqueta\" está seleccionado)" #: cinelerra/performanceprefs.C:227 cinelerra/pluginpopup.C:222 #: cinelerra/recordbatches.C:22 cinelerra/transitionpopup.C:313 +#: plugins/sketcher/sketcherwindow.C:298 msgid "On" -msgstr "Encendido" +msgstr "ON" #: cinelerra/performanceprefs.C:227 msgid "Hostname" -msgstr "Nombre de host" +msgstr "Nombre" #: cinelerra/performanceprefs.C:227 msgid "Port" @@ -7768,6 +8030,7 @@ msgid "Audio offset (sec):" msgstr "Compensación audio (seg):" #: cinelerra/playbackprefs.C:120 cinelerra/recordprefs.C:155 +#: plugins/compressormulti/comprmultigui.C:161 #: plugins/denoiseseltempavg/seltempavgwindow.C:114 #: plugins/freeverb/freeverb.C:312 plugins/histeq/histeq.C:103 msgid "Gain:" @@ -7783,11 +8046,11 @@ msgstr "Salida de Vídeo" #: cinelerra/playbackprefs.C:144 msgid "Framerate achieved:" -msgstr "Fotogramas por segundos alcanzado:" +msgstr "Fotogramas por seg alcanzado:" #: cinelerra/playbackprefs.C:156 msgid "Scaling equation: Enlarge / Reduce " -msgstr "Ecuación de escalado: Ampliar/Reducir" +msgstr "Ecuación de escalado: Ampliar/Reducir " #: cinelerra/playbackprefs.C:165 msgid "DVD Subtitle to display:" @@ -7835,7 +8098,7 @@ msgstr "Activar subtítulos/didascalias" #: cinelerra/playbackprefs.C:424 msgid "Label cells" -msgstr "células Etiqueta" +msgstr "Etiquetar celdas" #: cinelerra/playtransport.C:397 msgid "Fast reverse ( + or Alt-p )" @@ -7875,12 +8138,24 @@ msgstr "Autor: %s" msgid "License: %s" msgstr "Licencia: %s" -#: cinelerra/pluginarray.C:222 +#: cinelerra/pluginarray.C:224 #, c-format msgid "%s took %s" msgstr "%s tomó %s" -#: cinelerra/pluginclient.C:1060 cinelerra/pluginclient.C:1071 +#: cinelerra/plugin.C:223 +msgid "standalone" +msgstr "autónomo" + +#: cinelerra/plugin.C:224 +msgid "shared plugin" +msgstr "plugin compartido" + +#: cinelerra/plugin.C:225 +msgid "shared module" +msgstr "modulo compartido" + +#: cinelerra/pluginclient.C:1085 cinelerra/pluginclient.C:1096 msgid "tweek" msgstr "tweek" @@ -7898,7 +8173,7 @@ msgstr "Pistas compartidas:" #: cinelerra/plugindialog.C:462 msgid "attach effect" -msgstr "Adjuntar efecto" +msgstr "adjuntar efecto" #: cinelerra/plugindialog.C:713 msgid "Attach single standalone and share others" @@ -7910,15 +8185,15 @@ msgstr "UI" #: cinelerra/pluginpopup.C:92 msgid "Change..." -msgstr "Cambiar..." +msgstr "Cambiar efecto..." #: cinelerra/pluginpopup.C:108 msgid ": Change Effect" -msgstr ": Efecto Cambio" +msgstr ": Cambiar Efecto" #: cinelerra/pluginpopup.C:122 cinelerra/transitionpopup.C:295 msgid "Detach" -msgstr "Separar" +msgstr "Quitar" #: cinelerra/pluginpopup.C:139 msgid "detach effect" @@ -7938,7 +8213,7 @@ msgstr "Mostrar" #: cinelerra/pluginpopup.C:273 msgid "Presets..." -msgstr "Presets ..." +msgstr "Ajustes preestablecidos..." #: cinelerra/pluginprefs.C:59 msgid "Plugin Set" @@ -7954,7 +8229,7 @@ msgstr "Ruta Plugin Global" #: cinelerra/pluginprefs.C:67 cinelerra/pluginprefs.C:77 msgid "Select the directory for plugins" -msgstr "Seleccione el directorio de plugins" +msgstr "Seleccione la carpeta de plugins" #: cinelerra/pluginprefs.C:71 msgid "Look for personal plugins here" @@ -7978,23 +8253,23 @@ msgstr "Encender" msgid "Preset Edit" msgstr "Editar preestablecidos" -#: cinelerra/preferences.C:414 +#: cinelerra/preferences.C:425 msgid "Current Manual" msgstr "Manual Actual" -#: cinelerra/preferences.C:415 +#: cinelerra/preferences.C:426 msgid "Setting Shell Commands" msgstr "Ajustes de Comandos del Shell" -#: cinelerra/preferences.C:416 +#: cinelerra/preferences.C:427 msgid "Shortcuts" -msgstr "atajos" +msgstr "Atajos de teclado" -#: cinelerra/preferences.C:417 +#: cinelerra/preferences.C:428 msgid "RenderMux" msgstr "RenderizarMux" -#: cinelerra/preferences.inc:33 +#: cinelerra/preferences.inc:36 msgid "" "Currently: Try FFMpeg first\n" " Click to: Try FFMpeg last" @@ -8002,7 +8277,7 @@ msgstr "" "Actualmente: Pruebe primero FFMpeg\n" " Clic en: Probar por último FFMpeg" -#: cinelerra/preferences.inc:34 +#: cinelerra/preferences.inc:37 msgid "" "Currently: Try FFMpeg last\n" " Click to: Try FFMpeg first" @@ -8018,59 +8293,59 @@ msgstr "Preferencias ..." msgid "Shift-P" msgstr "Mayús-P" -#: cinelerra/preferencesthread.C:372 cinelerra/render.C:863 +#: cinelerra/preferencesthread.C:375 cinelerra/render.C:863 msgid "render" msgstr "renderizar" -#: cinelerra/preferencesthread.C:375 cinelerra/record.C:432 +#: cinelerra/preferencesthread.C:378 cinelerra/record.C:439 msgid "record" msgstr "grabar" -#: cinelerra/preferencesthread.C:386 +#: cinelerra/preferencesthread.C:389 msgid "*Playback A" msgstr "* La reproducción A" -#: cinelerra/preferencesthread.C:386 +#: cinelerra/preferencesthread.C:389 msgid "Playback A" msgstr "Reproducción A" -#: cinelerra/preferencesthread.C:389 +#: cinelerra/preferencesthread.C:392 msgid "*Playback B" msgstr "* La reproducción B" -#: cinelerra/preferencesthread.C:389 +#: cinelerra/preferencesthread.C:392 msgid "Playback B" msgstr "Reproducción B" -#: cinelerra/preferencesthread.C:391 +#: cinelerra/preferencesthread.C:394 msgid "Recording" msgstr "Grabación" -#: cinelerra/preferencesthread.C:393 +#: cinelerra/preferencesthread.C:396 msgid "Performance" msgstr "Performance" -#: cinelerra/preferencesthread.C:395 +#: cinelerra/preferencesthread.C:398 msgid "Interface" msgstr "Interfaz" -#: cinelerra/preferencesthread.C:397 +#: cinelerra/preferencesthread.C:400 msgid "Appearance" msgstr "Apariencia" -#: cinelerra/preferencesthread.C:399 +#: cinelerra/preferencesthread.C:402 msgid "About" msgstr "Acerca de" -#: cinelerra/preferencesthread.C:424 +#: cinelerra/preferencesthread.C:427 msgid ": Preferences" msgstr "Preferencias" -#: cinelerra/preferencesthread.C:687 +#: cinelerra/preferencesthread.C:690 msgid "restart" msgstr "reiniciar" -#: cinelerra/preferencesthread.C:706 +#: cinelerra/preferencesthread.C:709 #, c-format msgid "Busy: %s in progress. Are you sure?" msgstr "Ocupado: %s en progreso. ¿Está seguro?" @@ -8080,7 +8355,7 @@ msgid ": Probes" msgstr ": Sondear" #: cinelerra/probeprefs.C:137 plugins/crikey/crikeywindow.C:522 -#: plugins/sketcher/sketcherwindow.C:885 plugins/sketcher/sketcherwindow.C:1116 +#: plugins/sketcher/sketcherwindow.C:974 plugins/sketcher/sketcherwindow.C:1205 #: plugins/tracer/tracerwindow.C:479 msgid "Up" msgstr "Arriba" @@ -8101,38 +8376,47 @@ msgstr "Alt-r" msgid "Original size" msgstr "Tamaño original" -#: cinelerra/proxy.C:338 +#: cinelerra/proxy.C:170 +msgid "Specified format does not render video" +msgstr "El formato especificado no es valido para video" + +#: cinelerra/proxy.C:286 +#, c-format +msgid "bad proxy path: %s\n" +msgstr "ruta de proxy incorrecta: %s\n" + +#: cinelerra/proxy.C:363 msgid "Creating proxy files..." -msgstr "Creando archivos proxy" +msgstr "Creando archivos proxy..." -#: cinelerra/proxy.C:357 +#: cinelerra/proxy.C:376 +msgid "Error making proxy." +msgstr "Error al crear el proxy." + +#: cinelerra/proxy.C:383 msgid ": Proxy settings" msgstr ": Ajustes de Proxy" -#: cinelerra/proxy.C:396 plugins/reframe/reframe.C:190 +#: cinelerra/proxy.C:423 plugins/reframe/reframe.C:190 #: plugins/resample/resample.C:84 msgid "Scale factor:" msgstr "Factor de escala:" -#: cinelerra/proxy.C:409 +#: cinelerra/proxy.C:436 msgid "New media dimensions: " -msgstr "Nueva dimensión de Medios:" +msgstr "Nuevas dimensiones: " -#: cinelerra/proxy.C:415 +#: cinelerra/proxy.C:442 msgid "Active Scale: " -msgstr "Escala Activo:" +msgstr "Activar Escala: " -#: cinelerra/proxy.C:473 +#: cinelerra/proxy.C:502 msgid "Use scaler (FFMPEG only)" msgstr "Usar Escalar (Solo FFMPEG)" -#: cinelerra/proxy.C:498 +#: cinelerra/proxy.C:527 msgid "Auto proxy/scale media loads" -msgstr "Cargar medios auto proxy/escalar" - -#: cinelerra/proxy.C:521 cinelerra/render.C:1215 -msgid "Beep on done" -msgstr "Pitido al terminar" +msgstr "Proxy automático/cargar medios a escala" #: cinelerra/question.C:34 msgid ": Question" @@ -8175,7 +8459,7 @@ msgstr "Ruta" msgid "News" msgstr "Noticias" -#: cinelerra/recordbatches.C:505 cinelerra/recordgui.C:949 +#: cinelerra/recordbatches.C:505 cinelerra/recordgui.C:992 msgid "" "Start batch recording\n" "from the current position." @@ -8187,7 +8471,7 @@ msgstr "" msgid "Activate" msgstr "Activar" -#: cinelerra/recordbatches.C:534 cinelerra/recordgui.C:980 +#: cinelerra/recordbatches.C:534 cinelerra/recordgui.C:1023 msgid "" "Make the highlighted\n" "clip active." @@ -8195,15 +8479,15 @@ msgstr "" "Hacer que el clip destacado\n" "se active." -#: cinelerra/record.C:85 +#: cinelerra/record.C:87 msgid "Record..." msgstr "Grabar ..." -#: cinelerra/record.C:551 +#: cinelerra/record.C:556 msgid "Deleting" msgstr "Eliminación" -#: cinelerra/record.C:1203 +#: cinelerra/record.C:1208 msgid "Running" msgstr "Corriendo" @@ -8225,12 +8509,12 @@ msgstr "Hora de inicio:" msgid "Duration time:" msgstr "Tiempo de duración:" -#: cinelerra/recordgui.C:169 plugins/audioscope/audioscope.C:401 +#: cinelerra/recordgui.C:169 plugins/audioscope/audioscope.C:395 #: plugins/denoisemjpeg/denoisemjpeg.C:395 plugins/descratch/descratch.C:510 #: plugins/echocancel/echocancel.C:451 plugins/findobj/findobjwindow.C:54 #: plugins/lens/lens.C:537 plugins/overlay/overlay.C:202 #: plugins/overlayaudio/overlayaudio.C:209 -#: plugins/spectrogram/spectrogram.C:433 plugins/spherecam/spherecam.C:410 +#: plugins/spectrogram/spectrogram.C:427 plugins/spherecam/spherecam.C:410 msgid "Mode:" msgstr "Modo:" @@ -8286,112 +8570,126 @@ msgstr "Lotes:" msgid "Cron:" msgstr "Cronómetro:" -#: cinelerra/recordgui.C:352 cinelerra/recordgui.C:985 +#: cinelerra/recordgui.C:352 cinelerra/recordgui.C:1028 msgid "Idle" msgstr "Inactivo" -#: cinelerra/recordgui.C:568 +#: cinelerra/recordgui.C:392 +msgid "deinterlace" +msgstr "desentralzado" + +#: cinelerra/recordgui.C:574 msgid "Save the recording and quit." msgstr "Guardar la grabación y salir." -#: cinelerra/recordgui.C:591 +#: cinelerra/recordgui.C:597 msgid "Quit without pasting into project." msgstr "Salir sin pegar en el proyecto." -#: cinelerra/recordgui.C:616 +#: cinelerra/recordgui.C:622 msgid "Quit and paste into project." msgstr "Salir y pegar en el proyecto." -#: cinelerra/recordgui.C:628 +#: cinelerra/recordgui.C:634 msgid "Start Over" msgstr "Volver a empezar" -#: cinelerra/recordgui.C:630 +#: cinelerra/recordgui.C:636 msgid "Rewind the current file and erase." msgstr "Rebobinar el archivo actual y borrar." -#: cinelerra/recordgui.C:646 +#: cinelerra/recordgui.C:652 msgid "drop overrun frames" -msgstr "Soltar fotogramas desbordados" +msgstr "soltar fotogramas desbordados" -#: cinelerra/recordgui.C:650 +#: cinelerra/recordgui.C:656 msgid "Drop input frames when behind." msgstr "Deja caer fotogramas de entrada cuando se retrasan." -#: cinelerra/recordgui.C:670 +#: cinelerra/recordgui.C:676 msgid "fill underrun frames" msgstr "rellenar fotogramas empotrados" -#: cinelerra/recordgui.C:674 +#: cinelerra/recordgui.C:680 msgid "Write extra frames when behind." msgstr "Escribir extra fotogramas cuando se retrasan." -#: cinelerra/recordgui.C:694 +#: cinelerra/recordgui.C:700 msgid "poweroff when done" msgstr "apagar una vez hecho" -#: cinelerra/recordgui.C:698 +#: cinelerra/recordgui.C:704 msgid "poweroff system when batch record done." msgstr "apagar el sistema cuando el grabado por lotes finalice." -#: cinelerra/recordgui.C:719 +#: cinelerra/recordgui.C:725 msgid "check for ads" msgstr "comprobar anuncios" -#: cinelerra/recordgui.C:723 +#: cinelerra/recordgui.C:729 msgid "check for commercials." msgstr "comprobar anuncios." -#: cinelerra/recordgui.C:746 +#: cinelerra/recordgui.C:773 plugins/piano/piano.C:1384 +#: plugins/synthesizer/synthesizer.C:1920 +msgid "Even" +msgstr "Par" + +#: cinelerra/recordgui.C:774 plugins/piano/piano.C:1407 +#: plugins/synthesizer/synthesizer.C:1944 +msgid "Odd" +msgstr "Impar" + +#: cinelerra/recordgui.C:789 msgid "Monitor video" msgstr "Monitor de vídeo" -#: cinelerra/recordgui.C:786 +#: cinelerra/recordgui.C:829 msgid "Monitor audio" msgstr "Monitor de audio" -#: cinelerra/recordgui.C:823 +#: cinelerra/recordgui.C:866 msgid "Audio meters" msgstr "Medidores de audio" -#: cinelerra/recordgui.C:970 +#: cinelerra/recordgui.C:1013 msgid "Stopped" msgstr "Detenido" -#: cinelerra/recordgui.C:991 +#: cinelerra/recordgui.C:1034 msgid "Label" msgstr "Etiqueta" -#: cinelerra/recordgui.C:1019 +#: cinelerra/recordgui.C:1062 msgid "ClrLbls" -msgstr "Limpiar etiquetas" +msgstr "Eliminar etiquetas" -#: cinelerra/recordgui.C:1068 +#: cinelerra/recordgui.C:1111 msgid "Interrupt recording in progress?" msgstr "Interrumpir la grabación en curso?" -#: cinelerra/recordgui.C:1094 +#: cinelerra/recordgui.C:1137 msgid "Rewind batch and overwrite?" msgstr "Rebobinar lote y sobrescribir?" -#: cinelerra/recordmonitor.C:234 +#: cinelerra/recordmonitor.C:235 msgid ": Video in" msgstr ": Video in" -#: cinelerra/recordmonitor.C:642 +#: cinelerra/recordmonitor.C:643 #, c-format msgid ": Video in %d%%" msgstr ": Video in %d%%" -#: cinelerra/recordmonitor.C:674 +#: cinelerra/recordmonitor.C:675 msgid "Record cursor" msgstr "Grabar cursor" -#: cinelerra/recordmonitor.C:691 +#: cinelerra/recordmonitor.C:692 msgid "Big cursor" msgstr "Cursor grande" -#: cinelerra/recordmonitor.C:747 +#: cinelerra/recordmonitor.C:748 msgid "Swap fields" msgstr "Intercambiar campos" @@ -8401,7 +8699,7 @@ msgstr "Entrada de Audio" #: cinelerra/recordprefs.C:105 cinelerra/recordprefs.C:175 msgid "Record Driver:" -msgstr "Controlador de Grabación:" +msgstr "Controlador:" #: cinelerra/recordprefs.C:115 msgid "Samples read from device:" @@ -8622,27 +8920,27 @@ msgstr "No se pudo iniciar granja de render" msgid "Error rendering data." msgstr "Error al renderizar los datos." -#: cinelerra/render.C:978 +#: cinelerra/render.C:979 msgid ": Render" msgstr ": Renderizar" -#: cinelerra/render.C:1028 +#: cinelerra/render.C:1029 msgid "Render range:" msgstr "Render rango:" -#: cinelerra/render.C:1103 +#: cinelerra/render.C:1106 msgid "Project" msgstr "Proyecto" -#: cinelerra/render.C:1114 +#: cinelerra/render.C:1117 msgid "Selection" -msgstr "Seleccion" +msgstr "Selección" -#: cinelerra/render.C:1126 +#: cinelerra/render.C:1129 msgid "In/Out Points" -msgstr "Los puntos Entrada/Salida" +msgstr "Puntos Entrada/Salida" -#: cinelerra/render.C:1137 +#: cinelerra/render.C:1140 msgid "One Frame" msgstr "Un fotograma" @@ -8754,11 +9052,11 @@ msgid "Size:" msgstr "Tamaño:" #: cinelerra/resizetrackthread.C:132 cinelerra/resizetrackthread.C:143 -#: plugins/compressor/compressor.C:886 plugins/scale/scalewin.C:70 +#: plugins/scale/scalewin.C:70 msgid "x" msgstr "x" -#: cinelerra/resourcepixmap.C:431 +#: cinelerra/resourcepixmap.C:461 #, c-format msgid "ResourcePixmap::draw_audio_source: failed to check out %s for drawing.\n" msgstr "ResourcePixmap::draw_audio_source: no se pudo verificar %s para dibujar.\n" @@ -8859,8 +9157,8 @@ msgstr "Histograma Parade" msgid "Waveform Parade" msgstr "Forma de onda Parade" -#: cinelerra/scopewindow.C:1340 plugins/audioscope/audioscope.C:314 -#: plugins/piano/piano.C:528 plugins/synthesizer/synthesizer.C:554 +#: cinelerra/scopewindow.C:1340 plugins/audioscope/audioscope.C:311 +#: plugins/piano/piano.C:528 plugins/synthesizer/synthesizer.C:562 msgid "Waveform" msgstr "Forma de onda" @@ -8888,7 +9186,7 @@ msgstr ": Poner Formado" msgid "Channel positions:" msgstr "Posiciones del canal:" -#: cinelerra/setformat.C:612 +#: cinelerra/setformat.C:607 #, c-format msgid "%d degrees" msgstr "%d grados" @@ -9067,7 +9365,7 @@ msgstr "arrastrar etiqueta" #: cinelerra/timeentry.C:51 msgid "Sun" -msgstr "Sol" +msgstr "Dom" #: cinelerra/timeentry.C:51 msgid "Mon" @@ -9100,7 +9398,7 @@ msgid "" " %s" msgstr "" "no existe archivo de consejos:\n" -"%s" +" %s" #: cinelerra/tipwindow.C:119 msgid ": Tip of the day" @@ -9118,11 +9416,11 @@ msgstr "Próxima sugerencia" msgid "Previous tip" msgstr "Sugerencia anterior" -#: cinelerra/trackcanvas.C:4623 +#: cinelerra/trackcanvas.C:4630 msgid "keyframe" msgstr "fotograma clave" -#: cinelerra/trackcanvas.C:4831 +#: cinelerra/trackcanvas.C:4838 msgid "hard_edge" msgstr "borde_duro" @@ -9148,7 +9446,7 @@ msgstr "Encontrar en recursos" #: cinelerra/trackpopup.C:270 msgid "User title..." -msgstr "Título de usuario ..." +msgstr "Título personalizado..." #: cinelerra/trackpopup.C:355 msgid ": Set edit title" @@ -9162,7 +9460,7 @@ msgstr "Título de usuario:" msgid "Bar Color..." msgstr "Color de Barra..." -#: cinelerra/trackpopup.C:433 cinelerra/trackpopup.C:459 +#: cinelerra/trackpopup.C:433 cinelerra/trackpopup.C:460 #: plugins/echocancel/echocancel.C:212 plugins/perspective/perspective.C:607 msgid "default" msgstr "default" @@ -9171,25 +9469,25 @@ msgstr "default" msgid "Bar Color" msgstr "Color de barra" -#: cinelerra/trackpopup.C:498 +#: cinelerra/trackpopup.C:500 msgid "Show edit" msgstr "Mostrar edición" -#: cinelerra/trackpopup.C:553 +#: cinelerra/trackpopup.C:555 msgid ": Show edit" msgstr ": Mostar edición" -#: cinelerra/trackpopup.C:572 +#: cinelerra/trackpopup.C:574 #, c-format msgid "Track %d:" msgstr "Pista %d:" -#: cinelerra/trackpopup.C:579 +#: cinelerra/trackpopup.C:582 #, c-format msgid "Edit %d:" -msgstr "%d:" +msgstr "Editar %d:" -#: cinelerra/trackpopup.C:600 +#: cinelerra/trackpopup.C:603 #, c-format msgid "" "StartSource: %s\n" @@ -9223,7 +9521,7 @@ msgstr ": Longitud de Transición" #: cinelerra/transitionpopup.C:270 #, c-format msgid "Length: %2.2f sec" -msgstr "Tiempo: %2.2f segundos" +msgstr "Tiempo: %2.2f seg" #: cinelerra/transitionpopup.C:277 msgid "Attach..." @@ -9339,11 +9637,11 @@ msgstr "Reemplazar" #: cinelerra/vpatchgui.C:389 msgid "Max" -msgstr "Max" +msgstr "Máx" #: cinelerra/vpatchgui.C:390 msgid "Min" -msgstr "Min" +msgstr "Mín" #: cinelerra/vpatchgui.C:391 msgid "Darken" @@ -9443,7 +9741,7 @@ msgstr "Visor" msgid ": Viewer" msgstr ": Visor" -#: cinelerra/vwindowgui.C:698 +#: cinelerra/vwindowgui.C:694 msgid "viewer window: " msgstr "ventana del visor: " @@ -9451,7 +9749,7 @@ msgstr "ventana del visor: " msgid ": Warning" msgstr ": Advertencia" -#: cinelerra/wwindow.C:98 +#: cinelerra/wwindow.C:99 msgid "Don't show this warning again." msgstr "No mostrar esta advertencia." @@ -9485,11 +9783,11 @@ msgstr "Tipo de automatización" #: cinelerra/zoombar.C:455 msgid "Audio Fade:" -msgstr "Audio Fade:" +msgstr "Fundido de Audio:" #: cinelerra/zoombar.C:456 msgid "Video Fade:" -msgstr "Video Fade:" +msgstr "Fundido de Vídeo:" #: cinelerra/zoombar.C:457 msgid "Zoom:" @@ -9497,7 +9795,7 @@ msgstr "Zoom:" #: cinelerra/zoombar.C:458 plugins/titler/titlerwindow.C:343 msgid "Speed:" -msgstr "Velocitad:" +msgstr "Velocidad:" #: cinelerra/zoombar.C:503 msgid "Automation range" @@ -9561,58 +9859,62 @@ msgstr "Hoyo" msgid "Dust" msgstr "Polvo" -#: plugins/audioscope/audioscope.C:312 +#: plugins/alpha/alpha.C:95 +msgid "Alpha:" +msgstr "Alfa:" + +#: plugins/audioscope/audioscope.C:309 msgid "XY Mode" msgstr "Modo XY" -#: plugins/audioscope/audioscope.C:316 +#: plugins/audioscope/audioscope.C:313 msgid "Rising Trigger" msgstr "Rising Trigger" -#: plugins/audioscope/audioscope.C:319 +#: plugins/audioscope/audioscope.C:316 msgid "Falling Trigger" msgstr "Falling Trigger" -#: plugins/audioscope/audioscope.C:373 +#: plugins/audioscope/audioscope.C:367 msgid "History Size:" msgstr "Tamaño Historico:" -#: plugins/audioscope/audioscope.C:383 plugins/pitch/pitch.C:423 +#: plugins/audioscope/audioscope.C:377 plugins/pitch/pitch.C:423 msgid "Window Size:" msgstr "Tamaño de la ventana:" -#: plugins/audioscope/audioscope.C:409 +#: plugins/audioscope/audioscope.C:403 msgid "Trigger level:" msgstr "Nivel de disparo:" -#: plugins/audioscope/audioscope.C:417 +#: plugins/audioscope/audioscope.C:411 msgid "Sample: 0" msgstr "Muestra: 0" -#: plugins/audioscope/audioscope.C:419 +#: plugins/audioscope/audioscope.C:413 msgid "Level 0: 0" msgstr "Nivel 0: 0" -#: plugins/audioscope/audioscope.C:421 +#: plugins/audioscope/audioscope.C:415 msgid "Level 1: 0" msgstr "Nivel 1: 0" -#: plugins/audioscope/audioscope.C:577 +#: plugins/audioscope/audioscope.C:571 #, c-format msgid "Sample: %d" msgstr "Muestra: %d" -#: plugins/audioscope/audioscope.C:580 +#: plugins/audioscope/audioscope.C:574 #, c-format msgid "Level 0: %.2f" msgstr "Nivel 0: %.2f" -#: plugins/audioscope/audioscope.C:583 +#: plugins/audioscope/audioscope.C:577 #, c-format msgid "Level 1: %.2f" msgstr "Nivel 1: %.2f" -#: plugins/audioscope/audioscope.C:664 +#: plugins/audioscope/audioscope.C:658 msgid "AudioScope" msgstr "AudioScope" @@ -9642,7 +9944,7 @@ msgstr "DeslizarBandas" #: plugins/bandwipe/bandwipe.C:182 msgid "BandWipe" -msgstr "LimpiarBandas" +msgstr "EliminarBandas" #: plugins/bluebanana/bluebanana.C:87 msgid "Blue Banana" @@ -9683,7 +9985,7 @@ msgstr "Modelo de color desconocido en BluebananaA2Sel: update ()\n" #: plugins/bluebanana/bluebananawindow.C:2095 msgid "Combine Selection" -msgstr "Seleccion combinada" +msgstr "Selección combinada" #: plugins/bluebanana/bluebananawindow.C:2096 msgid " Mark Selected Areas" @@ -9715,7 +10017,7 @@ msgid "blue" msgstr "azul" #: plugins/bluebanana/bluebananawindow.C:2119 -#: plugins/sketcher/sketcherwindow.C:743 plugins/titler/titler.h:28 +#: plugins/sketcher/sketcherwindow.C:832 plugins/titler/titler.h:28 msgid "alpha" msgstr "alpha" @@ -9737,21 +10039,21 @@ msgstr " Filtro Activo" #: plugins/blur/blur.C:136 plugins/blur/blurwindow.C:55 msgid "Blur" -msgstr "Difuminado" +msgstr "Desenfoque" #: plugins/blur/blurwindow.C:147 plugins/downsample/downsample.C:256 -#: plugins/flip/flipwindow.C:47 plugins/spectrogram/spectrogram.C:159 +#: plugins/flip/flipwindow.C:47 plugins/spectrogram/spectrogram.C:158 msgid "Vertical" msgstr "Vertical" #: plugins/blur/blurwindow.C:166 plugins/downsample/downsample.C:238 -#: plugins/flip/flipwindow.C:53 plugins/spectrogram/spectrogram.C:162 +#: plugins/flip/flipwindow.C:53 plugins/spectrogram/spectrogram.C:161 msgid "Horizontal" msgstr "Horizontal" #: plugins/blur/blurwindow.C:185 msgid "Blur alpha" -msgstr "Difuminado alpha" +msgstr "Difuminar alpha" #: plugins/blur/blurwindow.C:200 msgid "Alpha determines radius" @@ -9823,15 +10125,15 @@ msgstr "Valores negfix computado:" #: plugins/C41/c41.C:253 msgid "Min/Max R:" -msgstr "Mín/Max R:" +msgstr "Mín/Máx R:" #: plugins/C41/c41.C:257 msgid "Min/Max G:" -msgstr "Mín/Max G:" +msgstr "Mín/Máx G:" #: plugins/C41/c41.C:261 msgid "Min/Max B:" -msgstr "Mín/Max B:" +msgstr "Mín/Máx B:" #: plugins/C41/c41.C:265 plugins/C41/c41.C:329 msgid "Light:" @@ -9867,15 +10169,15 @@ msgstr "valores negfix para aplicar:" #: plugins/C41/c41.C:314 msgid "Min R:" -msgstr "Min R:" +msgstr "Mín R:" #: plugins/C41/c41.C:319 msgid "Min G:" -msgstr "Min G:" +msgstr "Mín G:" #: plugins/C41/c41.C:324 msgid "Min B:" -msgstr "Min B:" +msgstr "Mín B:" #: plugins/C41/c41.C:355 msgid "Col:" @@ -9930,7 +10232,7 @@ msgstr "Seleccione el rango para transferir:" #: plugins/cdripper/cdripwindow.C:46 plugins/cdripper/cdripwindow.C:50 msgid "Min." -msgstr "Min." +msgstr "Mín." #: plugins/cdripper/cdripwindow.C:47 plugins/cdripper/cdripwindow.C:51 msgid "Sec." @@ -9995,11 +10297,11 @@ msgstr "Tolerancia Hue:" #: plugins/chromakeyhsv/chromakey.C:211 msgid "Min. Brightness:" -msgstr "Min. Brillo:" +msgstr "Mín. Brillo:" #: plugins/chromakeyhsv/chromakey.C:214 msgid "Max. Brightness:" -msgstr "Max Brillo:" +msgstr "Máx Brillo:" #: plugins/chromakeyhsv/chromakey.C:217 msgid "Saturation Offset:" @@ -10007,7 +10309,7 @@ msgstr "Compensación de Saturación:" #: plugins/chromakeyhsv/chromakey.C:220 msgid "Min Saturation:" -msgstr "Min Saturación:" +msgstr "Mín Saturación:" #: plugins/chromakeyhsv/chromakey.C:226 msgid "Mask tweaking:" @@ -10050,16 +10352,16 @@ msgid "Color 3 Way" msgstr "Color de 3 vías" #: plugins/color3way/color3way.C:582 plugins/color3way/color3way.C:589 -#: plugins/colorbalance/colorbalance.C:596 -#: plugins/colorbalance/colorbalance.C:603 plugins/gamma/gamma.C:584 +#: plugins/colorbalance/colorbalance.C:595 +#: plugins/colorbalance/colorbalance.C:602 plugins/gamma/gamma.C:584 #: plugins/histogram/histogram.C:644 plugins/histogram/histogram.C:660 #: plugins/histogram/histogram.C:667 plugins/histogram/histogram.C:674 msgid "Interpolate Pixels" msgstr "Interpolar Píxeles" #: plugins/color3way/color3way.C:583 plugins/color3way/color3way.C:594 -#: plugins/colorbalance/colorbalance.C:597 -#: plugins/colorbalance/colorbalance.C:608 plugins/gamma/gamma.C:406 +#: plugins/colorbalance/colorbalance.C:596 +#: plugins/colorbalance/colorbalance.C:607 plugins/gamma/gamma.C:406 #: plugins/histogram/histogram.C:645 plugins/histogram/histogram.C:653 #: plugins/histogram/histogram.C:661 plugins/histogram/histogram.C:677 #: plugins/interpolate/interpolate.C:245 @@ -10097,7 +10399,7 @@ msgstr "Copiar a todos" msgid "White balance" msgstr "Balance de blancos" -#: plugins/colorbalance/colorbalance.C:356 +#: plugins/colorbalance/colorbalance.C:355 #: plugins/colorbalance/colorbalancewindow.C:55 plugins/gamma/gamma.C:453 #: plugins/histogram/histogram.C:646 plugins/histogram/histogram.C:654 #: plugins/histogram/histogram.C:668 plugins/histogram/histogram.C:680 @@ -10125,46 +10427,77 @@ msgstr "Preservar luminosidad" msgid "Lock parameters" msgstr "Bloquear parámetros" -#: plugins/compressor/compressor.C:117 +#: plugins/compressor/compressor.C:109 msgid "Compressor" msgstr "Compresor" -#: plugins/compressor/compressor.C:859 -msgid "Reaction secs:" -msgstr "Segundos de reacción:" +#: plugins/compressor/compressor.C:394 +#: plugins/compressormulti/comprmultigui.C:113 +msgid "Sound level (Press shift to snap to grid):" +msgstr "Nivel de sonido (presione Mayúsculas para ajustar a la cuadrícula):" + +#: plugins/compressor/compressor.C:406 +#: plugins/compressormulti/comprmultigui.C:129 +msgid "Attack secs:" +msgstr "Seg de ataque:" -#: plugins/compressor/compressor.C:863 -msgid "Decay secs:" -msgstr "Segundos de atenuación:" +#: plugins/compressor/compressor.C:412 +#: plugins/compressormulti/comprmultigui.C:135 +msgid "Release secs:" +msgstr "Segundos de relajación:" -#: plugins/compressor/compressor.C:867 +#: plugins/compressor/compressor.C:418 +#: plugins/compressormulti/comprmultigui.C:185 msgid "Trigger Type:" msgstr "Tipo de Disparador:" -#: plugins/compressor/compressor.C:872 +#: plugins/compressor/compressor.C:424 msgid "Trigger:" msgstr "Desencadenar:" -#: plugins/compressor/compressor.C:1022 plugins/compressor/compressor.C:1024 -msgid "Input" -msgstr "Entrar" +#: plugins/compressor/compressor.C:434 +#: plugins/compressormulti/comprmultigui.C:145 +msgid "Output:" +msgstr "Salida:" -#: plugins/compressor/compressor.C:1371 plugins/compressor/compressor.C:1376 -msgid "Trigger" -msgstr "Desencadenar" +#: plugins/compressor/compressor.C:744 +#: plugins/compressormulti/comprmultigui.C:660 +msgid "Smooth only" +msgstr "Suavizar sólo" -#: plugins/compressor/compressor.C:1372 plugins/piano/piano.C:1107 -#: plugins/synthesizer/synthesizer.C:1553 -msgid "Maximum" -msgstr "Máximo" +#: plugins/compressormulti/comprmulti.C:155 +msgid "Compressor Multi" +msgstr "Compresos Multibanda" -#: plugins/compressor/compressor.C:1373 -msgid "Total" -msgstr "Total" +#: plugins/compressormulti/comprmultigui.C:99 +msgid "Current band:" +msgstr "Banda actual:" -#: plugins/compressor/compressor.C:1412 -msgid "Smooth only" -msgstr "Suavizar sólo" +#: plugins/compressormulti/comprmultigui.C:119 +msgid "Bandwidth:" +msgstr "Ancho de Banda:" + +#: plugins/compressormulti/comprmultigui.C:165 +msgid "Freq range:" +msgstr "Rango de Frecuencias:" + +#: plugins/compressormulti/comprmultigui.C:201 +msgid "Steepness:" +msgstr "Escarpado:" + +#: plugins/compressormulti/comprmultigui.C:207 +#: plugins/echocancel/echocancel.C:459 plugins/graphic/graphic.C:790 +#: plugins/spectrogram/spectrogram.C:409 +msgid "Window size:" +msgstr "Tamaño de la ventana:" + +#: plugins/compressormulti/comprmultigui.C:674 +msgid "Solo band" +msgstr "Sólo esta Banda" + +#: plugins/compressormulti/comprmultigui.C:693 +msgid "Bypass band" +msgstr "Banda de derivación" #: plugins/crikey/crikey.C:259 msgid "CriKey" @@ -10180,14 +10513,14 @@ msgid "Draw mode:" msgstr "Modo dibujo:" #: plugins/crikey/crikeywindow.C:150 plugins/radialblur/radialblur.C:150 -#: plugins/sketcher/sketcherwindow.C:396 plugins/titler/titlerwindow.C:289 +#: plugins/sketcher/sketcherwindow.C:448 plugins/titler/titlerwindow.C:289 #: plugins/titler/titlerwindow.C:293 plugins/tracer/tracerwindow.C:114 #: plugins/zoomblur/zoomblur.C:148 msgid "X:" msgstr "X:" #: plugins/crikey/crikeywindow.C:159 plugins/perspective/perspective.C:137 -#: plugins/radialblur/radialblur.C:157 plugins/sketcher/sketcherwindow.C:413 +#: plugins/radialblur/radialblur.C:157 plugins/sketcher/sketcherwindow.C:465 #: plugins/titler/titlerwindow.C:290 plugins/titler/titlerwindow.C:298 #: plugins/tracer/tracerwindow.C:124 plugins/yuv/yuv.C:264 #: plugins/yuv/yuvwindow.C:43 plugins/zoomblur/zoomblur.C:155 @@ -10211,13 +10544,13 @@ msgid "E" msgstr "E" #: plugins/crikey/crikeywindow.C:351 plugins/crop/cropwin.C:115 -#: plugins/sketcher/sketcherwindow.C:56 plugins/sketcher/sketcherwindow.C:993 +#: plugins/sketcher/sketcherwindow.C:56 plugins/sketcher/sketcherwindow.C:1082 #: plugins/tracer/tracerwindow.C:362 msgid "X" msgstr "X" #: plugins/crikey/crikeywindow.C:352 plugins/crop/cropwin.C:124 -#: plugins/sketcher/sketcherwindow.C:994 plugins/tracer/tracerwindow.C:363 +#: plugins/sketcher/sketcherwindow.C:1083 plugins/tracer/tracerwindow.C:363 msgid "Y" msgstr "Y" @@ -10229,15 +10562,15 @@ msgstr "T" msgid "Tag" msgstr "Etiqueta" -#: plugins/crikey/crikeywindow.C:547 plugins/sketcher/sketcherwindow.C:909 -#: plugins/sketcher/sketcherwindow.C:1154 plugins/tracer/tracerwindow.C:504 +#: plugins/crikey/crikeywindow.C:547 plugins/sketcher/sketcherwindow.C:998 +#: plugins/sketcher/sketcherwindow.C:1243 plugins/tracer/tracerwindow.C:504 msgid "Dn" msgstr "Dn" #: plugins/crikey/crikeywindow.C:571 plugins/findobj/findobjwindow.C:521 #: plugins/findobj/findobjwindow.C:563 plugins/findobj/findobjwindow.C:605 #: plugins/mandelcuda/mandelbrotwindow.C:158 -#: plugins/nbodycuda/nbodywindow.C:175 plugins/sketcher/sketcherwindow.C:1193 +#: plugins/nbodycuda/nbodywindow.C:175 plugins/sketcher/sketcherwindow.C:1282 #: plugins/titler/titlerwindow.C:1229 plugins/tracer/tracerwindow.C:528 msgid "Drag" msgstr "Arrastrar" @@ -10372,7 +10705,7 @@ msgstr "Mantener campo inferior" #: plugins/deinterlace-cv/deinterwindow-cv.C:95 msgid "Average top fields" -msgstr "Promedio campos superior" +msgstr "Promediar campos superiores" #: plugins/deinterlace-cv/deinterwindow-cv.C:97 msgid "Average bottom fields" @@ -10434,8 +10767,8 @@ msgid "Delay Video" msgstr "Retrasar vídeo" #: plugins/denoise/denoise.C:768 plugins/echocancel/echocancel.C:433 -#: plugins/gain/gainwindow.C:56 plugins/graphic/graphic.C:808 -#: plugins/spectrogram/spectrogram.C:401 plugins/vocoder/vocoder.C:297 +#: plugins/gain/gainwindow.C:56 plugins/graphic/graphic.C:778 +#: plugins/spectrogram/spectrogram.C:396 plugins/vocoder/vocoder.C:297 msgid "Level:" msgstr "Nivel:" @@ -10641,7 +10974,7 @@ msgstr "len:" #: plugins/descratch/descratch.C:546 msgid "blur:" -msgstr "difuminado:" +msgstr "desenfoque:" #: plugins/descratch/descratch.C:549 msgid "gap:" @@ -10709,7 +11042,9 @@ msgstr "Compensación vertical" #: plugins/downsample/downsample.C:378 plugins/reframert/reframert.C:241 msgid "Downsample" -msgstr "Disminuir resolución" +msgstr "" +"Píxelar\n" +"Bajar Resolución" #: plugins/echo/echo.C:147 msgid "Level: " @@ -10740,8 +11075,8 @@ msgid "OFF" msgstr "OFF" #: plugins/echocancel/echocancel.C:263 plugins/normalize/normalize.C:53 -#: plugins/piano/piano.C:1127 plugins/spectrogram/spectrogram.C:246 -#: plugins/synthesizer/synthesizer.C:1574 +#: plugins/piano/piano.C:1127 plugins/spectrogram/spectrogram.C:245 +#: plugins/synthesizer/synthesizer.C:1584 msgid "Normalize" msgstr "Normalizar" @@ -10749,16 +11084,11 @@ msgstr "Normalizar" msgid "Gain: " msgstr "Ganancia: " -#: plugins/echocancel/echocancel.C:459 plugins/graphic/graphic.C:820 -#: plugins/spectrogram/spectrogram.C:414 -msgid "Window size:" -msgstr "Tamaño de la ventana:" - -#: plugins/echocancel/echocancel.C:476 plugins/spectrogram/spectrogram.C:445 +#: plugins/echocancel/echocancel.C:476 plugins/spectrogram/spectrogram.C:439 msgid "History:" msgstr "Historico:" -#: plugins/echocancel/echocancel.C:483 plugins/spectrogram/spectrogram.C:453 +#: plugins/echocancel/echocancel.C:483 plugins/spectrogram/spectrogram.C:447 msgid "X Zoom:" msgstr "X Zoom:" @@ -10778,7 +11108,7 @@ msgstr "Picos:" msgid "0 Hz" msgstr "0 Hz" -#: plugins/echocancel/echocancel.C:503 plugins/spectrogram/spectrogram.C:466 +#: plugins/echocancel/echocancel.C:503 plugins/spectrogram/spectrogram.C:460 msgid "Amplitude: 0 dB" msgstr "Amplitud: 0 dB" @@ -11024,6 +11354,10 @@ msgstr "Dibujar vectores" msgid "Do stabilization" msgstr "Estabilizar" +#: plugins/foreground/foreground.C:142 +msgid "Foreground" +msgstr "Primer plano" + #: plugins/framefield/framefield.C:564 plugins/rgb601/rgb601.C:294 #: plugins/rgb601/rgb601.C:295 msgid "Frames to fields" @@ -11146,11 +11480,11 @@ msgstr "Color exterior:" msgid "Gradient" msgstr "Degradado" -#: plugins/graphic/graphic.C:803 +#: plugins/graphic/graphic.C:773 msgid "Frequency:" msgstr "Frecuencia:" -#: plugins/graphic/graphic.C:1048 +#: plugins/graphic/graphic.C:1001 msgid "EQ Graphic" msgstr "Graphic EQ" @@ -11210,11 +11544,11 @@ msgstr "Entrada y:" #: plugins/histogram_bezier/bistogramwindow.C:119 msgid "Output min:" -msgstr "Min de la salida:" +msgstr "Mín de la salida:" #: plugins/histogram_bezier/bistogramwindow.C:125 msgid "Output Max:" -msgstr "Salida de Max:" +msgstr "Máx de Salida:" #: plugins/histogram_bezier/bistogramwindow.C:155 msgid "Interpolation:" @@ -11303,8 +11637,8 @@ msgid "Invert Video" msgstr "Invertir Vídeo" #: plugins/invertvideo/invertwindow.C:44 plugins/piano/piano.C:1207 -#: plugins/piano/piano.C:1254 plugins/synthesizer/synthesizer.C:1657 -#: plugins/synthesizer/synthesizer.C:1706 plugins/tracer/tracerwindow.C:670 +#: plugins/piano/piano.C:1254 plugins/synthesizer/synthesizer.C:1667 +#: plugins/synthesizer/synthesizer.C:1716 plugins/tracer/tracerwindow.C:670 msgid "Invert" msgstr "Invertir" @@ -11403,19 +11737,19 @@ msgstr "Interp:" msgid "Lens" msgstr "Lente" -#: plugins/level/leveleffect.C:130 +#: plugins/level/leveleffect.C:93 msgid "Duration (seconds):" msgstr "Duración (segundos):" -#: plugins/level/leveleffect.C:133 +#: plugins/level/leveleffect.C:96 msgid "Max soundlevel (dB):" -msgstr "Niveldesonido Max (dB):" +msgstr "Volumen Máx (dB):" -#: plugins/level/leveleffect.C:136 +#: plugins/level/leveleffect.C:99 msgid "RMS soundlevel (dB):" msgstr "Niveldesonido RMS (dB):" -#: plugins/level/leveleffect.C:198 +#: plugins/level/leveleffect.C:134 msgid "SoundLevel" msgstr "Niveldesonido" @@ -11430,7 +11764,7 @@ msgstr "Pasos:" #: plugins/linearblur/linearblur.C:358 msgid "Linear Blur" -msgstr "Difuminado linear" +msgstr "Desenfoque Lineal" #: plugins/liveaudio/liveaudio.C:149 msgid "Live audio" @@ -11474,7 +11808,7 @@ msgstr "Julia" #: plugins/motion/motion.C:215 msgid "Motion" -msgstr "Movimiento" +msgstr "Animación" #: plugins/motion/motionwindow.C:57 plugins/motion2point/motionwindow.C:76 #: plugins/motion-cv/motionwindow-cv.C:56 @@ -11807,7 +12141,7 @@ msgstr "Activar seguimiento" #: plugins/motionblur/motionblur.C:317 msgid "Motion Blur" -msgstr "Difuminado in movimiento" +msgstr "Desenfoque de movimiento" #: plugins/motion-cv/motion-cv.C:209 msgid "MotionCV" @@ -11845,7 +12179,7 @@ msgstr "punto" msgid "sprite" msgstr "duende" -#: plugins/nbodycuda/nbodywindow.C:36 plugins/sketcher/sketcherwindow.C:742 +#: plugins/nbodycuda/nbodywindow.C:36 plugins/sketcher/sketcherwindow.C:831 #: plugins/titler/titler.h:27 msgid "color" msgstr "color" @@ -11872,7 +12206,7 @@ msgstr ": Normalizar" #: plugins/normalize/normalizewindow.C:45 msgid "Enter the DB to overload by:" -msgstr "Introduzca el DB para sobrecargar:" +msgstr "Introduzca el db para sobrecargar:" #: plugins/normalize/normalizewindow.C:80 msgid "Treat tracks independantly" @@ -11940,21 +12274,21 @@ msgid "Qual" msgstr "Calid" #: plugins/parametric/parametric.C:426 plugins/piano/piano.C:503 -#: plugins/piano/piano.C:563 plugins/synthesizer/synthesizer.C:528 -#: plugins/synthesizer/synthesizer.C:591 +#: plugins/piano/piano.C:563 plugins/synthesizer/synthesizer.C:535 +#: plugins/synthesizer/synthesizer.C:599 msgid "Level" msgstr "Nivel" #: plugins/parametric/parametric.C:438 plugins/piano/piano.C:554 -#: plugins/synthesizer/synthesizer.C:582 plugins/vocoder/vocoder.C:294 +#: plugins/synthesizer/synthesizer.C:590 plugins/vocoder/vocoder.C:294 msgid "Wetness:" msgstr "Wetness:" -#: plugins/parametric/parametric.C:445 +#: plugins/parametric/parametric.C:445 plugins/reverb/reverbwindow.C:173 msgid "Window:" msgstr "Ventana:" -#: plugins/parametric/parametric.C:819 +#: plugins/parametric/parametric.C:769 msgid "EQ Parametric" msgstr "EQ paramétrico" @@ -12035,90 +12369,86 @@ msgid "Pianoesizer" msgstr "Pianoesizer" #: plugins/piano/piano.C:504 plugins/piano/piano.C:565 -#: plugins/synthesizer/synthesizer.C:529 plugins/synthesizer/synthesizer.C:593 +#: plugins/synthesizer/synthesizer.C:536 plugins/synthesizer/synthesizer.C:601 msgid "Phase" msgstr "Fase" #: plugins/piano/piano.C:505 plugins/piano/piano.C:567 -#: plugins/synthesizer/synthesizer.C:530 plugins/synthesizer/synthesizer.C:595 +#: plugins/synthesizer/synthesizer.C:537 plugins/synthesizer/synthesizer.C:603 msgid "Harmonic" msgstr "Armónica" -#: plugins/piano/piano.C:530 plugins/synthesizer/synthesizer.C:556 +#: plugins/piano/piano.C:530 plugins/synthesizer/synthesizer.C:564 msgid "Wave Function" msgstr "Función onda" -#: plugins/piano/piano.C:545 plugins/synthesizer/synthesizer.C:572 +#: plugins/piano/piano.C:545 plugins/synthesizer/synthesizer.C:580 msgid "Base Frequency:" msgstr "Frecuencia Base:" -#: plugins/piano/piano.C:685 plugins/synthesizer/synthesizer.C:971 +#: plugins/piano/piano.C:685 plugins/synthesizer/synthesizer.C:972 #, c-format msgid "DC" msgstr "DC" #: plugins/piano/piano.C:686 plugins/piano/piano.C:939 #: plugins/piano/piano.C:1228 plugins/piano/piano.C:1295 -#: plugins/synthesizer/synthesizer.C:972 plugins/synthesizer/synthesizer.C:1397 -#: plugins/synthesizer/synthesizer.C:1679 -#: plugins/synthesizer/synthesizer.C:1749 plugins/tremolo/tremolo.C:470 +#: plugins/synthesizer/synthesizer.C:973 plugins/synthesizer/synthesizer.C:1407 +#: plugins/synthesizer/synthesizer.C:1689 +#: plugins/synthesizer/synthesizer.C:1759 plugins/tremolo/tremolo.C:470 #, c-format msgid "Sine" msgstr "Seno" #: plugins/piano/piano.C:687 plugins/piano/piano.C:940 -#: plugins/synthesizer/synthesizer.C:973 plugins/synthesizer/synthesizer.C:1398 +#: plugins/synthesizer/synthesizer.C:974 plugins/synthesizer/synthesizer.C:1408 #: plugins/tremolo/tremolo.C:471 #, c-format msgid "Sawtooth" msgstr "Diente de sierra" #: plugins/piano/piano.C:690 plugins/piano/piano.C:943 -#: plugins/synthesizer/synthesizer.C:976 plugins/synthesizer/synthesizer.C:1401 +#: plugins/synthesizer/synthesizer.C:977 plugins/synthesizer/synthesizer.C:1411 #, c-format msgid "Pulse" msgstr "Pulso" #: plugins/piano/piano.C:691 plugins/piano/piano.C:944 -#: plugins/synthesizer/synthesizer.C:977 plugins/synthesizer/synthesizer.C:1402 +#: plugins/synthesizer/synthesizer.C:978 plugins/synthesizer/synthesizer.C:1412 #, c-format msgid "Noise" msgstr "Ruido" #: plugins/piano/piano.C:1086 plugins/piano/piano.C:1275 -#: plugins/synthesizer/synthesizer.C:1531 -#: plugins/synthesizer/synthesizer.C:1728 +#: plugins/synthesizer/synthesizer.C:1541 +#: plugins/synthesizer/synthesizer.C:1738 msgid "Zero" msgstr "Cero" -#: plugins/piano/piano.C:1163 plugins/synthesizer/synthesizer.C:1611 +#: plugins/piano/piano.C:1107 plugins/synthesizer/synthesizer.C:1563 +msgid "Maximum" +msgstr "Máximo" + +#: plugins/piano/piano.C:1163 plugins/synthesizer/synthesizer.C:1621 msgid "Slope" msgstr "Pendiente" #: plugins/piano/piano.C:1186 plugins/piano/piano.C:1318 -#: plugins/piano/piano.C:1343 plugins/synthesizer/synthesizer.C:1635 -#: plugins/synthesizer/synthesizer.C:1773 -#: plugins/synthesizer/synthesizer.C:1799 +#: plugins/piano/piano.C:1343 plugins/synthesizer/synthesizer.C:1645 +#: plugins/synthesizer/synthesizer.C:1783 +#: plugins/synthesizer/synthesizer.C:1809 msgid "Random" msgstr "Aleatorio" -#: plugins/piano/piano.C:1364 plugins/synthesizer/synthesizer.C:1821 +#: plugins/piano/piano.C:1364 plugins/synthesizer/synthesizer.C:1899 msgid "Enumerate" msgstr "Enumerar" -#: plugins/piano/piano.C:1384 plugins/synthesizer/synthesizer.C:1842 -msgid "Even" -msgstr "Par" - -#: plugins/piano/piano.C:1407 plugins/synthesizer/synthesizer.C:1866 -msgid "Odd" -msgstr "Impar" - -#: plugins/piano/piano.C:1425 plugins/synthesizer/synthesizer.C:1885 +#: plugins/piano/piano.C:1425 plugins/synthesizer/synthesizer.C:1963 msgid "Fibonnacci" msgstr "Fibonnacci" -#: plugins/piano/piano.C:1449 plugins/synthesizer/synthesizer.C:1911 +#: plugins/piano/piano.C:1449 plugins/synthesizer/synthesizer.C:1989 msgid "Prime" msgstr "Primo" @@ -12158,7 +12488,7 @@ msgstr "Iteraciones:" #: plugins/radialblur/radialblur.C:352 msgid "Radial Blur" -msgstr "Difuminado radial" +msgstr "Desenfoque radial" #: plugins/reframe/reframe.C:54 msgid "Reframe" @@ -12178,7 +12508,7 @@ msgstr "ReframeRT" #: plugins/removegaps/removegaps.C:105 msgid "Threshold of gap (DB):" -msgstr "Umbral de gap (DB):" +msgstr "Umbral de gap (db):" #: plugins/removegaps/removegaps.C:112 msgid "Max duration of gap (Seconds):" @@ -12230,42 +12560,10 @@ msgstr "Salida de ejemplos:" msgid "ResampleRT" msgstr "RemuestreoRT" -#: plugins/reverb/reverb.C:101 +#: plugins/reverb/reverb.C:85 msgid "Reverb" msgstr "Reverberación" -#: plugins/reverb/reverbwindow.C:54 -msgid "Initial signal level:" -msgstr "Nivel de la señal inicial:" - -#: plugins/reverb/reverbwindow.C:56 -msgid "ms before reflections:" -msgstr "ms antes reflexiones:" - -#: plugins/reverb/reverbwindow.C:58 -msgid "First reflection level:" -msgstr "Primer nivel de reflexión:" - -#: plugins/reverb/reverbwindow.C:60 -msgid "Last reflection level:" -msgstr "Último nivel de reflexión:" - -#: plugins/reverb/reverbwindow.C:62 -msgid "Number of reflections:" -msgstr "Número de reflexiones:" - -#: plugins/reverb/reverbwindow.C:64 -msgid "ms of reflections:" -msgstr "ms de reflexiones:" - -#: plugins/reverb/reverbwindow.C:66 -msgid "Start band for lowpass:" -msgstr "Inicio banda por lowpass:" - -#: plugins/reverb/reverbwindow.C:68 -msgid "End band for lowpass:" -msgstr "Fin de banda por lowpass:" - #: plugins/reverseaudio/reverseaudio.C:170 msgid "Reverse audio" msgstr "Audio Reverse" @@ -12438,7 +12736,7 @@ msgstr "Dirección" #: plugins/shapewipe/shapewipe.C:365 msgid "Shape Wipe" -msgstr "Limpiar forma" +msgstr "Barrido" #: plugins/shapewipe/shapewipe.C:601 #, c-format @@ -12473,7 +12771,7 @@ msgstr "Compensación par:" msgid "ShiftInterlace" msgstr "Moverentrelazado" -#: plugins/sketcher/sketcher.C:348 +#: plugins/sketcher/sketcher.C:352 msgid "Sketcher" msgstr "Dibujante" @@ -12505,23 +12803,31 @@ msgstr "/" msgid "Curve Color" msgstr "Curva de color" -#: plugins/sketcher/sketcherwindow.C:307 +#: plugins/sketcher/sketcherwindow.C:281 +msgid "Anti-Aliasing" +msgstr "Alisando los bordes dentados" + +#: plugins/sketcher/sketcherwindow.C:297 +msgid "Double" +msgstr "Doble" + +#: plugins/sketcher/sketcherwindow.C:355 msgid "Curve" msgstr "Curva" -#: plugins/sketcher/sketcherwindow.C:330 plugins/sketcher/sketcherwindow.C:331 +#: plugins/sketcher/sketcherwindow.C:382 plugins/sketcher/sketcherwindow.C:383 msgid "Pen:" msgstr "Pluma:" -#: plugins/sketcher/sketcherwindow.C:381 +#: plugins/sketcher/sketcherwindow.C:433 msgid "Point" msgstr "Punto" -#: plugins/sketcher/sketcherwindow.C:402 plugins/sketcher/sketcherwindow.C:403 +#: plugins/sketcher/sketcherwindow.C:454 plugins/sketcher/sketcherwindow.C:455 msgid "ID:" msgstr "Id:" -#: plugins/sketcher/sketcherwindow.C:428 +#: plugins/sketcher/sketcherwindow.C:483 msgid "" "\n" "Shift=\n" @@ -12537,7 +12843,7 @@ msgstr "" "Ctrl+Alt=\n" "Ctrl+Mayús=" -#: plugins/sketcher/sketcherwindow.C:435 +#: plugins/sketcher/sketcherwindow.C:490 msgid "" " LMB\n" "new line point\n" @@ -12553,7 +12859,7 @@ msgstr "" "arrastrar todas las curvas\n" "nuevo punto de llenado" -#: plugins/sketcher/sketcherwindow.C:442 +#: plugins/sketcher/sketcherwindow.C:497 msgid "" " RMB\n" "new arc point\n" @@ -12569,23 +12875,23 @@ msgstr "" "nueva curva\n" "nuevo punto de partida" -#: plugins/sketcher/sketcherwindow.C:739 plugins/sketcher/sketcherwindow.C:991 +#: plugins/sketcher/sketcherwindow.C:828 plugins/sketcher/sketcherwindow.C:1080 msgid "ID" msgstr "ID" -#: plugins/sketcher/sketcherwindow.C:740 +#: plugins/sketcher/sketcherwindow.C:829 msgid "width" msgstr "ancho" -#: plugins/sketcher/sketcherwindow.C:741 +#: plugins/sketcher/sketcherwindow.C:830 msgid "pen" msgstr "pluma" -#: plugins/sketcher/sketcherwindow.C:859 plugins/sketcher/sketcherwindow.C:1234 +#: plugins/sketcher/sketcherwindow.C:948 plugins/sketcher/sketcherwindow.C:1323 msgid "sketcherwindow#Del" msgstr "Borrar" -#: plugins/sketcher/sketcherwindow.C:992 +#: plugins/sketcher/sketcherwindow.C:1081 msgid "Type" msgstr "Tipo" @@ -12593,21 +12899,21 @@ msgstr "Tipo" msgid "Slide" msgstr "Deslizar" -#: plugins/spectrogram/spectrogram.C:460 +#: plugins/spectrogram/spectrogram.C:454 msgid "Freq: 0 Hz" msgstr "Freq: 0 Hz" -#: plugins/spectrogram/spectrogram.C:590 +#: plugins/spectrogram/spectrogram.C:579 #, c-format msgid "Freq: %d Hz" msgstr "Freq: %d Hz" -#: plugins/spectrogram/spectrogram.C:593 +#: plugins/spectrogram/spectrogram.C:582 #, c-format msgid "Amplitude: %.2f dB" msgstr "Amplitud: %.2f dB" -#: plugins/spectrogram/spectrogram.C:684 +#: plugins/spectrogram/spectrogram.C:665 msgid "Spectrogram" msgstr "Espectrograma" @@ -12746,7 +13052,7 @@ msgstr "Abrir un archivo SVG existente o crear uno nuevo" #: plugins/svg/svgwin.C:456 msgid "update dpi" -msgstr "Actualización dpi" +msgstr "actualización dpi" #: plugins/swapchannels/swapchannels.C:109 #: plugins/swapchannels/swapchannels.C:235 @@ -12785,29 +13091,41 @@ msgstr "Fotogramas de Intercambio" msgid "Synthesizer" msgstr "Synthesizador" -#: plugins/synthesizer/synthesizer.C:649 +#: plugins/synthesizer/synthesizer.C:654 msgid "Momentary notes" msgstr "Notas momentáneas" -#: plugins/synthesizer/synthesizer.C:654 +#: plugins/synthesizer/synthesizer.C:659 msgid "Ctrl or Shift to select multiple notes." msgstr "Ctrl o Mayús para seleccionar varias notas." +#: plugins/synthesizer/synthesizer.C:1831 +msgid "Powers of 1.4" +msgstr "Potencias de 1.4" + +#: plugins/synthesizer/synthesizer.C:1853 +msgid "Powers of 2" +msgstr "Potencias de 2" + +#: plugins/synthesizer/synthesizer.C:1877 +msgid "Minimum" +msgstr "Minimo" + #: plugins/theme_blond/blondtheme.C:65 msgid "Blond" -msgstr "Blond" +msgstr "Rubia" #: plugins/theme_blond_cv/blondcvtheme.C:62 msgid "Blond-cv" -msgstr "Blond-cv" +msgstr "Rubia-cv" #: plugins/theme_blue_dot/bluedottheme.C:67 msgid "Blue Dot" -msgstr "Blue Dot" +msgstr "Punto azul" #: plugins/theme_bright/brighttheme.C:61 msgid "Bright" -msgstr "Bright" +msgstr "Brillante" #: plugins/theme_cakewalk/cakewalk.C:49 msgid "Cakewalk" @@ -12859,7 +13177,7 @@ msgstr "Color intenso" #: plugins/threshold/thresholdwindow.C:487 msgid "Min:" -msgstr "Min:" +msgstr "Mín:" #: plugins/timeavg/timeavg.C:119 msgid "Time Average" @@ -13011,7 +13329,7 @@ msgstr "TitleMain::cargar_freetype_face %s fracasado.\n" #: plugins/titler/titler.C:2330 msgid "No motion" -msgstr "Ningún movimiento" +msgstr "Ningúna" #: plugins/titler/titler.C:2331 msgid "Bottom to top" @@ -13078,8 +13396,8 @@ msgid "Font:" msgstr "Fuente:" #: plugins/titler/titlerwindow.C:248 -msgid "Pitch:" -msgstr "Pitch:" +msgid "Line Pitch:" +msgstr "Interlineado:" #: plugins/titler/titlerwindow.C:255 msgid "Style:" @@ -13091,19 +13409,19 @@ msgstr "Justificar:" #: plugins/titler/titlerwindow.C:317 msgid "Motion:" -msgstr "Movimiento:" +msgstr "Animación:" #: plugins/titler/titlerwindow.C:324 msgid "Drop shadow:" -msgstr "Dibujar sombra:" +msgstr "Sombra (Distancia):" #: plugins/titler/titlerwindow.C:331 msgid "Fade in (sec):" -msgstr "Difuminado hacia dentro (seg):" +msgstr "Fundido de Entrada (seg):" #: plugins/titler/titlerwindow.C:337 msgid "Fade out (sec):" -msgstr "Difuminado hacia fuera (seg):" +msgstr "Fundido de Salida (seg):" #: plugins/titler/titlerwindow.C:356 plugins/titler/titlerwindow.C:360 msgid "Outline:" @@ -13111,11 +13429,11 @@ msgstr "Contorno:" #: plugins/titler/titlerwindow.C:366 msgid "Stroker:" -msgstr "Acariciador:" +msgstr "Engrosar:" #: plugins/titler/titlerwindow.C:392 msgid "background media" -msgstr "medios de fondo" +msgstr "medios para el fondo" #: plugins/titler/titlerwindow.C:392 msgid "Select background media path" @@ -13139,7 +13457,7 @@ msgstr "Color del contorno" #: plugins/titler/titlerwindow.C:853 msgid "Stamp timecode" -msgstr "Estampar el timecode" +msgstr "Mostrar Código de Tiempo" #: plugins/titler/titlerwindow.C:1009 #, c-format @@ -13241,7 +13559,7 @@ msgstr "Revisión diente de sierra" #: plugins/unsharp/unsharp.C:126 msgid "Unsharp" -msgstr "Desenfoque" +msgstr "Enfocar" #: plugins/videoscope/videoscope.C:238 msgid "VideoScope" @@ -13365,4 +13683,12 @@ msgstr "Y Ampliación:" #: plugins/zoomblur/zoomblur.C:352 msgid "Zoom Blur" -msgstr "Difuminado Zoom" +msgstr "Desenfoque Zoom" + +#: cinelerra/editpopup.C:216 +msgid "editpopup#Mute" +msgstr "Cortar dejando el hueco" + +#: cinelerra/assetpopup.C:423 +msgid "assetpopup#Paste" +msgstr "Insertar" diff --git a/cinelerra-5.1/thirdparty/src/libxcb.patch1 b/cinelerra-5.1/thirdparty/src/libxcb.patch1 new file mode 100755 index 00000000..4a30290c --- /dev/null +++ b/cinelerra-5.1/thirdparty/src/libxcb.patch1 @@ -0,0 +1,43 @@ +diff --git a/configure.ac b/configure.ac +index f880918..66e24a0 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -51,7 +51,7 @@ AC_SUBST(HTML_CHECK_RESULT) + + # Checks for pkg-config packages + PKG_CHECK_MODULES(XCBPROTO, xcb-proto >= 1.13) +-NEEDED="pthread-stubs xau >= 0.99.2" ++NEEDED="xau >= 0.99.2" + PKG_CHECK_MODULES(NEEDED, $NEEDED) + + have_xdmcp="no" +diff --git a/src/xcb_in.c b/src/xcb_in.c +index 73209e0..0dd7314 100644 +--- a/src/xcb_in.c ++++ b/src/xcb_in.c +@@ -966,7 +966,7 @@ void _xcb_in_replies_done(xcb_connection_t *c) + + int _xcb_in_read(xcb_connection_t *c) + { +- int n; ++ int n, err; + + #if HAVE_SENDMSG + struct iovec iov = { +@@ -999,6 +999,7 @@ int _xcb_in_read(xcb_connection_t *c) + #else + n = recv(c->fd, c->in.queue + c->in.queue_len, sizeof(c->in.queue) - c->in.queue_len, 0); + #endif ++ err = errno; + if(n > 0) { + #if HAVE_SENDMSG + struct cmsghdr *hdr; +@@ -1039,7 +1040,7 @@ int _xcb_in_read(xcb_connection_t *c) + } + #endif + #ifndef _WIN32 +- if((n > 0) || (n < 0 && errno == EAGAIN)) ++ if((n > 0) || (n < 0 && (err == EAGAIN || err == ENOENT || err == 0))) + #else + if((n > 0) || (n < 0 && WSAGetLastError() == WSAEWOULDBLOCK)) + #endif /* !_WIN32 */