add h264 lossless, ru po upd, add ydiff, ffmpeg cmdl/xfer fixes, build upgrades,...
authorGood Guy <good1.2guy@gmail.com>
Fri, 30 Dec 2016 20:01:13 +0000 (13:01 -0700)
committerGood Guy <good1.2guy@gmail.com>
Fri, 30 Dec 2016 20:01:13 +0000 (13:01 -0700)
15 files changed:
cinelerra-5.1/bld_scripts/bld_prepare.sh
cinelerra-5.1/cinelerra/Makefile
cinelerra-5.1/cinelerra/batchrender.C
cinelerra-5.1/cinelerra/bdwrite.C
cinelerra-5.1/cinelerra/ffmpeg.C
cinelerra-5.1/cinelerra/ffmpeg.h
cinelerra-5.1/cinelerra/ydiff.C [new file with mode: 0644]
cinelerra-5.1/configure.ac
cinelerra-5.1/ffmpeg/video/ks.pro [new file with mode: 0644]
cinelerra-5.1/ffmpeg/video/lossless.m2ts [new file with mode: 0644]
cinelerra-5.1/guicast/bccmdl.py
cinelerra-5.1/guicast/bccmodels.C
cinelerra-5.1/guicast/bccmodels.h
cinelerra-5.1/po/ru.po
cinelerra-5.1/thirdparty/src/x264.patch1 [new file with mode: 0644]

index 5d751adc14fcbfc6567943e96d15baf98d1d30da..767b039f94651310b85e19bb7963c6f86d2771e6 100755 (executable)
@@ -44,8 +44,8 @@ case "$dir" in
     festival-devel libdc1394-devel libiec61883-devel esound-devel \
     flac-devel libsndfile-devel libtheora-devel linux-firmware \
     ivtv-firmware libvorbis-devel texinfo xz-devel lzma-devel cmake git \
     festival-devel libdc1394-devel libiec61883-devel esound-devel \
     flac-devel libsndfile-devel libtheora-devel linux-firmware \
     ivtv-firmware libvorbis-devel texinfo xz-devel lzma-devel cmake git \
-    autoconf automake rpm-build
-#   ctags patch gcc-c++ perl::XML_Parser libtiff-devel python dvdauthor
+    ctags patch gcc-c++ perl-XML-XPath libtiff-devel python dvdauthor \
+    autoconf automake rpm-build ccache
   ;;
 "suse" | "leap")
   zypper -n install nasm gcc gcc-c++ zlib-devel texinfo libpng16-devel \
   ;;
 "suse" | "leap")
   zypper -n install nasm gcc gcc-c++ zlib-devel texinfo libpng16-devel \
index c4706b3d707c5308e484e30a4d274397d7100e9a..4ce1cb8f102930070f5a8959487bdb4a690d4864 100644 (file)
@@ -422,6 +422,10 @@ $(BDWRITE):        $(BDWOBJS) $(LIBRARIES)
        $(if $(findstring -g,$(CFLAGS)),objcopy --only-keep-debug $(BDWRITE) $(BDWRITE).debuginfo)
        $(if $(findstring -ggdb,$(CFLAGS)),,strip $(BDWRITE))
 
        $(if $(findstring -g,$(CFLAGS)),objcopy --only-keep-debug $(BDWRITE) $(BDWRITE).debuginfo)
        $(if $(findstring -ggdb,$(CFLAGS)),,strip $(BDWRITE))
 
+ydiff: ydiff.C $(LIBRARIES)
+       @echo g++ -o $@ ydiff.C
+       @g++ `pkg-config --cflags --libs gtk+-2.0` $(CFLAGS) ydiff.C -o $@ $(LIBS)
+
 clean:
        rm -rf $(OBJDIR)
 
 clean:
        rm -rf $(OBJDIR)
 
index 19f370e558cf2e8824485b8fd4e25c398d26cfd6..bbd66d47fa955d1756cdd70a35f147bc587812a3 100644 (file)
@@ -821,7 +821,7 @@ void BatchRenderGUI::create_objects()
 
        add_subwindow(list_title = new BC_Title(x, y, _("Batches to render:")));
        x1 = x + list_title->get_w() + mwindow->theme->widget_border;;
 
        add_subwindow(list_title = new BC_Title(x, y, _("Batches to render:")));
        x1 = x + list_title->get_w() + mwindow->theme->widget_border;;
-       add_subwindow(batch_path = new BC_Title(x1, y, thread->batch_path, MEDIUMFONT, YELLOW));
+       add_subwindow(batch_path = new BC_Title(x1, y, thread->batch_path, MEDIUMFONT));
        y += list_title->get_h() + mwindow->theme->widget_border;
        y1 = get_h();
        y1 -= 15 + BC_GenericButton::calculate_h() + mwindow->theme->widget_border;
        y += list_title->get_h() + mwindow->theme->widget_border;
        y1 = get_h();
        y1 -= 15 + BC_GenericButton::calculate_h() + mwindow->theme->widget_border;
index e2bab71dc9a628107098cd7941dac124c5c4af60..e70aa69a1503549c5bc1bb03b988e43942a48264 100644 (file)
@@ -2647,7 +2647,18 @@ int media_info::scan(AVFormatContext *fmt_ctx)
   int ret = 0;
   AVPacket ipkt;
   av_init_packet(&ipkt);
   int ret = 0;
   AVPacket ipkt;
   av_init_packet(&ipkt);
-
+#if 0
+// zero pts at pos zero
+  for( int i=0; i<programs.size(); ++i ) {
+    program *p = programs[i];
+    for( int j=0; j<p->strm_idx.size(); ++j ) {
+      stream *sp = streams[p->strm_idx[j]];
+      sp->last_pts = 0;
+      AVStream *st = fmt_ctx->streams[sp->av_idx];
+      p->add_label(0, 0, 0, st->id);
+    }
+  }
+#endif
   for( int64_t count=0; ret>=0; ++count ) {
     av_packet_unref(&ipkt);
     ipkt.data = 0; ipkt.size = 0;
   for( int64_t count=0; ret>=0; ++count ) {
     av_packet_unref(&ipkt);
     ipkt.data = 0; ipkt.size = 0;
index 172252f694416953d027ac4921987a65b33ca0ef..474d7c135da3f26cb3dbef4f8eee8c18803e7921 100644 (file)
@@ -848,6 +848,7 @@ AVPixelFormat FFVideoConvert::color_model_to_pix_fmt(int color_model)
        case BC_RGB565:         return AV_PIX_FMT_RGB565;
        case BC_RGB161616:      return AV_PIX_FMT_RGB48LE;
        case BC_RGBA16161616:   return AV_PIX_FMT_RGBA64LE;
        case BC_RGB565:         return AV_PIX_FMT_RGB565;
        case BC_RGB161616:      return AV_PIX_FMT_RGB48LE;
        case BC_RGBA16161616:   return AV_PIX_FMT_RGBA64LE;
+       case BC_AYUV16161616:   return AV_PIX_FMT_AYUV64LE;
        default: break;
        }
 
        default: break;
        }
 
@@ -872,6 +873,7 @@ int FFVideoConvert::pix_fmt_to_color_model(AVPixelFormat pix_fmt)
        case AV_PIX_FMT_RGB565:         return BC_RGB565;
        case AV_PIX_FMT_RGB48LE:        return BC_RGB161616;
        case AV_PIX_FMT_RGBA64LE:       return BC_RGBA16161616;
        case AV_PIX_FMT_RGB565:         return BC_RGB565;
        case AV_PIX_FMT_RGB48LE:        return BC_RGB161616;
        case AV_PIX_FMT_RGBA64LE:       return BC_RGBA16161616;
+       case AV_PIX_FMT_AYUV64LE:       return BC_AYUV16161616;
        default: break;
        }
 
        default: break;
        }
 
@@ -918,7 +920,7 @@ int FFVideoConvert::convert_picture_vframe(VFrame *frame, AVFrame *ip, AVFrame *
 
        AVPixelFormat pix_fmt = (AVPixelFormat)ip->format;
        convert_ctx = sws_getCachedContext(convert_ctx, ip->width, ip->height, pix_fmt,
 
        AVPixelFormat pix_fmt = (AVPixelFormat)ip->format;
        convert_ctx = sws_getCachedContext(convert_ctx, ip->width, ip->height, pix_fmt,
-               frame->get_w(), frame->get_h(), ofmt, SWS_BICUBIC, NULL, NULL, NULL);
+               frame->get_w(), frame->get_h(), ofmt, SWS_POINT, NULL, NULL, NULL);
        if( !convert_ctx ) {
                fprintf(stderr, "FFVideoConvert::convert_picture_frame:"
                                " sws_getCachedContext() failed\n");
        if( !convert_ctx ) {
                fprintf(stderr, "FFVideoConvert::convert_picture_frame:"
                                " sws_getCachedContext() failed\n");
@@ -938,20 +940,25 @@ int FFVideoConvert::convert_cmodel(VFrame *frame, AVFrame *ip)
        // try direct transfer
        if( !convert_picture_vframe(frame, ip) ) return 1;
        // use indirect transfer
        // try direct transfer
        if( !convert_picture_vframe(frame, ip) ) return 1;
        // use indirect transfer
-       AVPixelFormat pix_fmt = (AVPixelFormat)ip->format;
-       const AVPixFmtDescriptor *desc = av_pix_fmt_desc_get(pix_fmt);
+       AVPixelFormat ifmt = (AVPixelFormat)ip->format;
+       const AVPixFmtDescriptor *desc = av_pix_fmt_desc_get(ifmt);
        int max_bits = 0;
        for( int i = 0; i <desc->nb_components; ++i ) {
                int bits = desc->comp[i].depth;
                if( bits > max_bits ) max_bits = bits;
        }
        int max_bits = 0;
        for( int i = 0; i <desc->nb_components; ++i ) {
                int bits = desc->comp[i].depth;
                if( bits > max_bits ) max_bits = bits;
        }
-// from libavcodec/pixdesc.c
-#define pixdesc_has_alpha(pixdesc) ((pixdesc)->nb_components == 2 || \
- (pixdesc)->nb_components == 4 || (pixdesc)->flags & AV_PIX_FMT_FLAG_PAL)
-       int icolor_model = pixdesc_has_alpha(desc) ?
-               (max_bits > 8 ? BC_RGBA16161616 : BC_RGBA8888) :
-               (max_bits > 8 ? BC_RGB161616 : BC_RGB888) ;
-       VFrame vframe(ip->width, ip->height, icolor_model);
+       int imodel = pix_fmt_to_color_model(ifmt);
+       if( imodel < 0 )  {
+               int cmodel = frame->get_color_model();
+               BC_CModels::is_yuv(cmodel) ?
+                   (BC_CModels::has_alpha(cmodel) ?
+                       BC_AYUV16161616 :
+                       (max_bits > 8 ? BC_AYUV16161616 : BC_YUV444P)) :
+                   (BC_CModels::has_alpha(cmodel) ?
+                       (max_bits > 8 ? BC_RGBA16161616 : BC_RGBA8888) :
+                       (max_bits > 8 ? BC_RGB161616 : BC_RGB888)) ;
+       }
+       VFrame vframe(ip->width, ip->height, imodel);
        if( convert_picture_vframe(&vframe, ip) ) return -1;
        frame->transfer_from(&vframe);
        return 1;
        if( convert_picture_vframe(&vframe, ip) ) return -1;
        frame->transfer_from(&vframe);
        return 1;
@@ -1011,7 +1018,7 @@ int FFVideoConvert::convert_vframe_picture(VFrame *frame, AVFrame *op, AVFrame *
 
        AVPixelFormat ofmt = (AVPixelFormat)op->format;
        convert_ctx = sws_getCachedContext(convert_ctx, frame->get_w(), frame->get_h(),
 
        AVPixelFormat ofmt = (AVPixelFormat)op->format;
        convert_ctx = sws_getCachedContext(convert_ctx, frame->get_w(), frame->get_h(),
-               ifmt, op->width, op->height, ofmt, SWS_BICUBIC, NULL, NULL, NULL);
+               ifmt, op->width, op->height, ofmt, SWS_POINT, NULL, NULL, NULL);
        if( !convert_ctx ) {
                fprintf(stderr, "FFVideoConvert::convert_frame_picture:"
                                " sws_getCachedContext() failed\n");
        if( !convert_ctx ) {
                fprintf(stderr, "FFVideoConvert::convert_frame_picture:"
                                " sws_getCachedContext() failed\n");
@@ -1031,13 +1038,22 @@ int FFVideoConvert::convert_pixfmt(VFrame *frame, AVFrame *op)
        // try direct transfer
        if( !convert_vframe_picture(frame, op) ) return 1;
        // use indirect transfer
        // try direct transfer
        if( !convert_vframe_picture(frame, op) ) return 1;
        // use indirect transfer
-       int colormodel = frame->get_color_model();
-       int bits = BC_CModels::calculate_pixelsize(colormodel) * 8;
-       bits /= BC_CModels::components(colormodel);
-       int icolor_model =  BC_CModels::has_alpha(colormodel) ?
-               (bits > 8 ? BC_RGBA16161616 : BC_RGBA8888) :
-               (bits > 8 ? BC_RGB161616: BC_RGB888) ;
-       VFrame vframe(frame->get_w(), frame->get_h(), icolor_model);
+       int cmodel = frame->get_color_model();
+       int bits = BC_CModels::calculate_pixelsize(cmodel) * 8;
+       bits /= BC_CModels::components(cmodel);
+       AVPixelFormat ofmt = (AVPixelFormat)op->format;
+       int imodel = pix_fmt_to_color_model(ofmt);
+       if( imodel < 0 ) {
+               imodel =
+                   BC_CModels::is_yuv(cmodel) ?
+                       (BC_CModels::has_alpha(cmodel) ?
+                       BC_AYUV16161616 :
+                       (bits > 8 ? BC_AYUV16161616 : BC_YUV444P)) :
+                   (BC_CModels::has_alpha(cmodel) ?
+                       (bits > 8 ? BC_RGBA16161616 : BC_RGBA8888) :
+                       (bits > 8 ? BC_RGB161616 : BC_RGB888)) ;
+       }
+       VFrame vframe(frame->get_w(), frame->get_h(), imodel);
        vframe.transfer_from(frame);
        if( !convert_vframe_picture(&vframe, op) ) return 1;
        return -1;
        vframe.transfer_from(frame);
        if( !convert_vframe_picture(&vframe, op) ) return 1;
        return -1;
index a0eaf61726c49cf36919b0bca3327973b3233571..91ad65a6488f9ceb15435be04e63197c3e226247 100644 (file)
@@ -211,12 +211,12 @@ public:
 
        int convert_picture_vframe(VFrame *frame, AVFrame *ip);
        int convert_picture_vframe(VFrame *frame, AVFrame *ip, AVFrame *ipic);
 
        int convert_picture_vframe(VFrame *frame, AVFrame *ip);
        int convert_picture_vframe(VFrame *frame, AVFrame *ip, AVFrame *ipic);
-       int convert_cmodel(VFrame *frame_out, AVFrame *ip);
-       int transfer_cmodel(VFrame *frame_in, AVFrame *ifp);
+       int convert_cmodel(VFrame *frame, AVFrame *ip);
+       int transfer_cmodel(VFrame *frame, AVFrame *ifp);
        int convert_vframe_picture(VFrame *frame, AVFrame *op);
        int convert_vframe_picture(VFrame *frame, AVFrame *op, AVFrame *opic);
        int convert_pixfmt(VFrame *frame, AVFrame *op);
        int convert_vframe_picture(VFrame *frame, AVFrame *op);
        int convert_vframe_picture(VFrame *frame, AVFrame *op, AVFrame *opic);
        int convert_pixfmt(VFrame *frame, AVFrame *op);
-       int transfer_pixfmt(VFrame *frame_in, AVFrame *ofp);
+       int transfer_pixfmt(VFrame *frame, AVFrame *ofp);
 };
 
 class FFVideoStream : public FFStream, public FFVideoConvert {
 };
 
 class FFVideoStream : public FFStream, public FFVideoConvert {
diff --git a/cinelerra-5.1/cinelerra/ydiff.C b/cinelerra-5.1/cinelerra/ydiff.C
new file mode 100644 (file)
index 0000000..a4b4769
--- /dev/null
@@ -0,0 +1,393 @@
+#include <stdio.h>
+#include <stdint.h>
+#include <stdlib.h>
+#include <math.h>
+#include <sys/stat.h>
+#include <sys/time.h>
+
+extern "C" {
+#include "libavfilter/buffersrc.h"
+#include "libavfilter/buffersink.h"
+#include "libavformat/avformat.h"
+#include "libavformat/avio.h"
+#include "libavcodec/avcodec.h"
+#include "libavfilter/avfilter.h"
+#include "libavutil/avutil.h"
+#include "libavutil/imgutils.h"
+#include "libavutil/opt.h"
+#include "libavutil/pixdesc.h"
+#include "libswresample/swresample.h"
+#include "libswscale/swscale.h"
+}
+
+#include <gtk/gtk.h>
+#include <gdk/gdk.h>
+
+int done = 0;
+
+void sigint(int n)
+{
+  done = 1;
+}
+
+
+void dst_exit(GtkWidget *widget, gpointer data)
+{
+   exit(0);
+}
+
+class gtk_window {
+public:
+  gtk_window(int width, int height);
+  ~gtk_window();
+
+  GdkVisual *visual;
+  GtkWidget *window;
+  GtkWidget *image;
+  GtkWidget *panel_hbox;
+  GdkImage  *img0, *img1;
+  GdkPixbuf *pbuf0, *pbuf1;
+  unsigned char *bfr, *bfrs, *bfr0, *bfr1;
+  unsigned char **rows, **row0, **row1;
+  uint64_t flip_bfrs, flip_rows;
+  int width, height, linesize;
+  int done;
+
+  pthread_t tid;
+  static void *entry(void *t);
+  void start();
+  void *run();
+  uint8_t *next_bfr();
+  void post();
+
+  pthread_mutex_t draw;
+  void draw_lock() { pthread_mutex_lock(&draw); }
+  void draw_unlock() { pthread_mutex_unlock(&draw); }
+};
+
+gtk_window::gtk_window(int width, int height)
+{
+  this->width = width;
+  this->height = height;
+  this->linesize = width*3;
+  visual = gdk_visual_get_system();
+  window = gtk_window_new(GTK_WINDOW_TOPLEVEL);
+  gtk_signal_connect(GTK_OBJECT(window),"destroy",
+     GTK_SIGNAL_FUNC(dst_exit),NULL);
+  gtk_window_set_position(GTK_WINDOW(window), GTK_WIN_POS_NONE);
+  /* try for shared image bfr, only seems to work with gtk_rgb */
+  img0 = gdk_image_new(GDK_IMAGE_SHARED, visual, width, height);
+  pbuf0 = gdk_pixbuf_new_from_data((const guchar *)img0->mem,
+     GDK_COLORSPACE_RGB,FALSE,8,width,height,linesize,NULL,NULL);
+  bfr0 = gdk_pixbuf_get_pixels(pbuf0);
+  memset(bfr0,0,height*linesize);
+  image = gtk_image_new_from_pixbuf(pbuf0);
+  /* double buffered */
+  img1 = gdk_image_new(GDK_IMAGE_SHARED, visual, width, height);
+  pbuf1 = gdk_pixbuf_new_from_data((const guchar *)img1->mem,
+     GDK_COLORSPACE_RGB,FALSE,8,width,height,linesize,NULL,NULL);
+  bfr1 = gdk_pixbuf_get_pixels(pbuf1);
+  memset(bfr1,0,height*linesize);
+
+  row0 = new unsigned char *[height];
+  row1 = new unsigned char *[height];
+
+  for( int i=0; i<height; ++i ) {
+    row0[i] = bfr0 + i*linesize;
+    row1[i] = bfr1 + i*linesize;
+  }
+  bfrs = bfr0;
+  rows = row0;
+
+  flip_bfrs = ((uint64_t)bfr0 ^ (uint64_t)bfr1);
+  flip_rows = ((uint64_t)row0 ^ (uint64_t)row1);
+  pthread_mutex_init(&draw, 0);
+  post();
+  
+  panel_hbox = gtk_hbox_new(FALSE,0);
+  gtk_container_add(GTK_CONTAINER(window), panel_hbox);
+  /* pack image into panel */
+  gtk_box_pack_start(GTK_BOX(panel_hbox), image, TRUE, TRUE, 0);
+  gtk_widget_show_all(window);
+}
+
+gtk_window::~gtk_window()
+{
+  delete [] row0;
+  delete [] row1;
+  pthread_mutex_destroy(&draw);
+}
+
+void *gtk_window::entry(void *t)
+{
+  return ((gtk_window*)t)->run();
+}
+
+void gtk_window::start()
+{
+  pthread_attr_t attr;
+  pthread_attr_init(&attr);
+  pthread_attr_setinheritsched(&attr, PTHREAD_INHERIT_SCHED);
+  done = 0;
+  pthread_create(&tid, &attr, &entry, this);
+  pthread_attr_destroy(&attr);
+}
+
+void *gtk_window::run()
+{
+  while( !done ) {
+    if( !gtk_events_pending() ) {
+      if( !bfr ) { usleep(10000);  continue; }
+      GdkGC *blk = image->style->black_gc;
+      gdk_draw_rgb_image(image->window,blk, 0,0,width,height,
+         GDK_RGB_DITHER_NONE,bfr,linesize);
+      gdk_flush();
+      uint64_t *fbfrs = (uint64_t *)&bfrs;  *fbfrs ^= flip_bfrs;
+      uint64_t *frows = (uint64_t *)&rows;  *frows ^= flip_rows;
+      bfr = 0;
+      draw_unlock();
+    }
+    else
+      gtk_main_iteration();
+  }
+
+  return (void*)0;
+}
+
+uint8_t *gtk_window::next_bfr()
+{
+  return bfrs;
+}
+
+void gtk_window::post()
+{
+  draw_lock();
+  bfr = bfrs;
+}
+
+
+class ffcmpr {
+public:
+  ffcmpr();
+  ~ffcmpr();
+  AVPacket ipkt;
+  AVFormatContext *fmt_ctx;
+  AVFrame *ipic;
+  AVStream *st;
+  AVCodecContext *ctx;
+  AVPixelFormat pix_fmt;
+  double frame_rate;
+  int width, height;
+  int open_decoder(const char *filename, int vid_no);
+  void close_decoder();
+  AVFrame *read_frame();
+};
+
+ffcmpr::ffcmpr()
+{
+  av_init_packet(&this->ipkt);
+  this->fmt_ctx = 0;
+  this->ipic = 0;
+  this->st = 0;
+  this->ctx = 0 ;
+  this->frame_rate = 0;
+  this->pix_fmt = AV_PIX_FMT_NONE;
+  width = height = 0;
+}
+
+void ffcmpr::close_decoder()
+{
+  av_packet_unref(&ipkt);
+  if( !fmt_ctx ) return;
+  avformat_close_input(&fmt_ctx);
+  av_frame_free(&ipic);
+}
+
+ffcmpr::~ffcmpr()
+{
+  close_decoder();
+}
+
+int ffcmpr::open_decoder(const char *filename, int vid_no)
+{
+  struct stat fst;
+  if( stat(filename, &fst) ) return 1;
+
+  av_log_set_level(AV_LOG_VERBOSE);
+  fmt_ctx = 0;
+  AVDictionary *fopts = 0;
+  av_register_all();
+  av_dict_set(&fopts, "formatprobesize", "5000000", 0);
+  av_dict_set(&fopts, "scan_all_pmts", "1", 0);
+  av_dict_set(&fopts, "threads", "auto", 0);
+  int ret = avformat_open_input(&fmt_ctx, filename, NULL, &fopts);
+  av_dict_free(&fopts);
+  if( ret < 0 ) {
+    fprintf(stderr,"file open failed: %s\n", filename);
+    return ret;
+  }
+  ret = avformat_find_stream_info(fmt_ctx, NULL);
+  if( ret < 0 ) {
+    fprintf(stderr,"file probe failed: %s\n", filename);
+    return ret;
+  }
+
+  this->st = 0;
+  for( int i=0; !this->st && ret>=0 && i<(int)fmt_ctx->nb_streams; ++i ) {
+    AVStream *fst = fmt_ctx->streams[i];
+    AVMediaType type = fst->codec->codec_type;
+    if( type != AVMEDIA_TYPE_VIDEO ) continue;
+    if( --vid_no < 0 ) this->st = fst;
+  }
+
+  AVCodecID codec_id = st->codec->codec_id;
+  AVDictionary *copts = 0;
+  //av_dict_copy(&copts, opts, 0);
+  AVCodec *decoder = avcodec_find_decoder(codec_id);
+  if( avcodec_open2(st->codec, decoder, &copts) < 0 ) {
+    fprintf(stderr,"codec open failed: %s\n", filename);
+    return -1;
+  }
+  av_dict_free(&copts);
+  ipic = av_frame_alloc();
+
+  AVRational framerate = av_guess_frame_rate(fmt_ctx, st, 0);
+  this->frame_rate = !framerate.den ? 0 : (double)framerate.num / framerate.den;
+  this->ctx = st->codec;
+  this->pix_fmt = ctx->pix_fmt;
+  this->width  = ctx->width;
+  this->height = ctx->height;
+  return 0;
+}
+
+AVFrame *ffcmpr::read_frame()
+{
+  av_frame_unref(ipic);
+
+  for( int retrys=1000; --retrys>=0; ) {
+    av_packet_unref(&ipkt);
+    int ret = av_read_frame(fmt_ctx, &ipkt);
+    if( ret == AVERROR_EOF ) break;
+    if( ret != 0 ) continue;
+    if( !ipkt.data ) continue;
+    if( ipkt.stream_index != st->index ) continue;
+    while( ipkt.size > 0 ) {
+      int got_frame = 0;
+      ret = avcodec_decode_video2(st->codec, ipic, &got_frame, &ipkt);
+      if( ret <= 0 ) break;
+      if( got_frame )
+        return ipic;
+      ipkt.data += ret;
+      ipkt.size -= ret;
+    }
+  }
+  return 0;
+}
+
+static int diff_frame(AVFrame *afrm, AVFrame *bfrm, uint8_t *fp, int w, int h)
+{
+  int n = 0, m = 0;
+  uint8_t *arow = afrm->data[0];
+  uint8_t *brow = bfrm->data[0];
+  int asz = afrm->linesize[0], bsz = afrm->linesize[0];
+  int rsz = w * 3;
+  for( int y=h; --y>=0; arow+=asz, brow+=bsz ) {
+    uint8_t *ap = arow, *bp = brow;
+    for( int x=rsz; --x>=0; ++ap,++bp ) {
+      int d = *ap - *bp, v = d + 128;
+      if( v > 255 ) v = 255;
+      else if( v < 0 ) v = 0;
+      *fp++ = v;
+      m += d;
+      if( d < 0 ) d = -d;
+      n += d;
+    }
+  }
+  int sz = h*rsz;
+  printf("%d %d %d %f", sz, m, n, (double)n/sz);
+  return n;
+}
+
+int main(int ac, char **av)
+{
+  int ret;
+  setbuf(stdout,NULL);
+
+  gtk_set_locale();
+  gtk_init(&ac, &av);
+
+  ffcmpr a, b;
+  if( a.open_decoder(av[1],0) ) return 1;
+  if( b.open_decoder(av[2],0) ) return 1;
+
+  printf("file a:%s\n", av[1]);
+  printf("  id 0x%06x:", a.ctx->codec_id);
+  const AVCodecDescriptor *adesc = avcodec_descriptor_get(a.ctx->codec_id);
+  printf("  video %s\n", adesc ? adesc->name : " (unkn)");
+  printf(" %dx%d %5.2f", a.width, a.height, a.frame_rate);
+  const char *apix = av_get_pix_fmt_name(a.pix_fmt);
+  printf(" pix %s\n", apix ? apix : "(unkn)");
+
+  printf("file b:%s\n", av[2]);
+  printf("  id 0x%06x:", b.ctx->codec_id);
+  const AVCodecDescriptor *bdesc = avcodec_descriptor_get(b.ctx->codec_id);
+  printf("  video %s\n", bdesc ? bdesc->name : " (unkn)");
+  printf(" %dx%d %5.2f", b.width, b.height, b.frame_rate);
+  const char *bpix = av_get_pix_fmt_name(b.pix_fmt);
+  printf(" pix %s\n", bpix ? bpix : "(unkn)");
+
+//  if( a.ctx->codec_id != b.ctx->codec_id ) { printf("codec mismatch\n"); return 1;}
+  if( a.width != b.width ) { printf("width mismatch\n"); return 1;}
+  if( a.height != b.height ) { printf("height mismatch\n"); return 1;}
+  if( a.frame_rate != b.frame_rate ) { printf("framerate mismatch\n"); return 1;}
+//  if( a.pix_fmt != b.pix_fmt ) { printf("format mismatch\n"); return 1;}
+
+  signal(SIGINT,sigint);
+
+  struct SwsContext *a_cvt = sws_getCachedContext(0, a.width, a.height, a.pix_fmt,
+                a.width, a.height, AV_PIX_FMT_RGB24, SWS_POINT, 0, 0, 0);
+  struct SwsContext *b_cvt = sws_getCachedContext(0, b.width, b.height, b.pix_fmt,
+                b.width, b.height, AV_PIX_FMT_RGB24, SWS_POINT, 0, 0, 0);
+  if( !a_cvt || !b_cvt ) {
+    printf("sws_getCachedContext() failed\n");
+    return 1;
+  }
+
+  AVFrame *afrm = av_frame_alloc();
+  av_image_alloc(afrm->data, afrm->linesize,
+     a.width, a.height, AV_PIX_FMT_RGB24, 1);
+
+  AVFrame *bfrm = av_frame_alloc();
+  av_image_alloc(bfrm->data, bfrm->linesize,
+     b.width, b.height, AV_PIX_FMT_RGB24, 1);
+
+  gtk_window gw(a.width, a.height);
+  gw.start();
+
+  int64_t err = 0;
+  int frm_no = 0;
+
+  while( !done ) {
+    AVFrame *ap = a.read_frame();
+    if( !ap ) break;
+    AVFrame *bp = b.read_frame();
+    if( !bp ) break;
+    sws_scale(a_cvt, ap->data, ap->linesize, 0, ap->height,
+       afrm->data, afrm->linesize);
+    sws_scale(b_cvt, bp->data, bp->linesize, 0, bp->height,
+       bfrm->data, bfrm->linesize);
+    uint8_t *fbfr = gw.next_bfr();
+    ret = diff_frame(afrm, bfrm, fbfr, ap->width, ap->height);
+    err += ret;  ++frm_no;
+    printf("  %d\n",frm_no);
+    gw.post();
+  }
+
+  av_frame_free(&afrm);
+  av_frame_free(&bfrm);
+  
+  b.close_decoder();
+  a.close_decoder();
+  return 0;
+}
+
index a665849d79e317f25a8a6a9770233bb91e679c74..9c69fa0126d64bfae984ce9b99a7e847d7c05651 100644 (file)
@@ -228,7 +228,7 @@ PKG_3RD([libjpeg],[auto],
     simd/.libs/libsimd.a ],
   [ . ])
 
     simd/.libs/libsimd.a ],
   [ . ])
 
-PKG_3RD([openjpeg],[yes],
+PKG_3RD([openjpeg],[auto],
   [openjpeg-2.1.0-20160221],
   [ bin/libopenjp2.a ],
   [ src/lib/openjp2 ])
   [openjpeg-2.1.0-20160221],
   [ bin/libopenjp2.a ],
   [ src/lib/openjp2 ])
@@ -423,7 +423,7 @@ CHECK_LIB([libjpeg], [jpeg], [jpeg_start_decompress])
 CHECK_HEADERS([libjpeg], [jpeg headers], [stdio.h jpeglib.h])
 CHECK_LIB([libogg], [ogg], [ogg_stream_init])
 CHECK_HEADERS([libogg], [ogg headers], [ogg/ogg.h])
 CHECK_HEADERS([libjpeg], [jpeg headers], [stdio.h jpeglib.h])
 CHECK_LIB([libogg], [ogg], [ogg_stream_init])
 CHECK_HEADERS([libogg], [ogg headers], [ogg/ogg.h])
-CHECK_LIB([openjpeg], [openjpeg], [opj_version])
+CHECK_LIB([openjpeg], [openjp2], [opj_version])
 CHECK_HEADERS([openjpeg], [openjpeg headers], [openjpeg.h])
 CHECK_LIB([libsndfile], [sndfile], [sf_open])
 CHECK_HEADERS([libsndfile], [sndfile headers], [sndfile.h])
 CHECK_HEADERS([openjpeg], [openjpeg headers], [openjpeg.h])
 CHECK_LIB([libsndfile], [sndfile], [sf_open])
 CHECK_HEADERS([libsndfile], [sndfile headers], [sndfile.h])
diff --git a/cinelerra-5.1/ffmpeg/video/ks.pro b/cinelerra-5.1/ffmpeg/video/ks.pro
new file mode 100644 (file)
index 0000000..7170a15
--- /dev/null
@@ -0,0 +1,2 @@
+mov prores_ks
+profile=4444
diff --git a/cinelerra-5.1/ffmpeg/video/lossless.m2ts b/cinelerra-5.1/ffmpeg/video/lossless.m2ts
new file mode 100644 (file)
index 0000000..8ba8756
--- /dev/null
@@ -0,0 +1,2 @@
+mpegts libx264
+qp=0
index 069cbe704c6fc60f80fcc0bfed56370e5352fd1a..d4634e07e75613d63f4fd9f22d49245c80b80255 100755 (executable)
@@ -439,6 +439,7 @@ add_cmodel(13, "bc_yuv888", "i8", "yuv888")
 add_cmodel(14, "bc_yuva8888", "i8", "yuv888", "a8")
 add_cmodel(15, "bc_yuv161616", "i16", "yuv161616")
 add_cmodel(16, "bc_yuva16161616", "i16", "yuv161616", "a16")
 add_cmodel(14, "bc_yuva8888", "i8", "yuv888", "a8")
 add_cmodel(15, "bc_yuv161616", "i16", "yuv161616")
 add_cmodel(16, "bc_yuva16161616", "i16", "yuv161616", "a16")
+add_cmodel(35, "bc_ayuv16161616", "i16", "a16", "yuv161616")
 
 add_cmodel(18, "bc_uvy422", "i8", "uyvy8888")
 add_cmodel(19, "bc_yuv422", "i8", "yuyv8888")
 
 add_cmodel(18, "bc_uvy422", "i8", "uyvy8888")
 add_cmodel(19, "bc_yuv422", "i8", "yuyv8888")
@@ -476,7 +477,7 @@ adata = {
 
 def has_alpha(nm):
   return nm in ["bc_rgba8888", "bc_argb8888", "bc_abgr8888", \
 
 def has_alpha(nm):
   return nm in ["bc_rgba8888", "bc_argb8888", "bc_abgr8888", \
-    "bc_rgba16161616", "bc_yuva8888", "bc_yuva16161616", \
+    "bc_rgba16161616", "bc_yuva8888", "bc_yuva16161616", "bc_ayuv16161616", \
     "bc_uyva8888", "bc_rgba_float", "bc_rgba_floatp",]
 
 def has_bgcolor(fr_cmdl,to_cmdl):
     "bc_uyva8888", "bc_rgba_float", "bc_rgba_floatp",]
 
 def has_bgcolor(fr_cmdl,to_cmdl):
@@ -497,7 +498,7 @@ def is_rgb(nm):
 
 def is_yuv(nm):
   return nm in [ "bc_yuv888", "bc_yuva8888", "bc_yuv161616", \
 
 def is_yuv(nm):
   return nm in [ "bc_yuv888", "bc_yuva8888", "bc_yuv161616", \
-    "bc_yuva16161616", "bc_yuv422", "bc_uvy422", "bc_yuv101010", \
+    "bc_yuva16161616", "bc_ayuv16161616", "bc_yuv422", "bc_uvy422", "bc_yuv101010", \
     "bc_vyu888", "bc_uyva8888", "bc_yuv420p", "bc_yuv420pi", "bc_yuv422p", \
     "bc_yuv444p", "bc_yuv411p", "bc_yuv410p", ]
 
     "bc_vyu888", "bc_uyva8888", "bc_yuv420p", "bc_yuv420pi", "bc_yuv422p", \
     "bc_yuv444p", "bc_yuv411p", "bc_yuv410p", ]
 
index 7afaab7ad780fc935e74b132f69e56070f757207..6fe12cbbe5b1bdc66e1bfb70823ef5b9d49da80d 100644 (file)
@@ -51,6 +51,7 @@ int BC_CModels::components(int colormodel)
        case BC_YUVA8888:     return 4;
        case BC_YUV161616:    return 3;
        case BC_YUVA16161616: return 4;
        case BC_YUVA8888:     return 4;
        case BC_YUV161616:    return 3;
        case BC_YUVA16161616: return 4;
+       case BC_AYUV16161616: return 4;
        case BC_YUV101010:    return 3;
        case BC_RGB_FLOAT:    return 3;
        case BC_RGBA_FLOAT:   return 4;
        case BC_YUV101010:    return 3;
        case BC_RGB_FLOAT:    return 3;
        case BC_RGBA_FLOAT:   return 4;
@@ -84,6 +85,7 @@ int BC_CModels::calculate_pixelsize(int colormodel)
        case BC_YUVA8888:     return 4;
        case BC_YUV161616:    return 6;
        case BC_YUVA16161616: return 8;
        case BC_YUVA8888:     return 4;
        case BC_YUV161616:    return 6;
        case BC_YUVA16161616: return 8;
+       case BC_AYUV16161616: return 8;
        case BC_YUV101010:    return 4;
        case BC_VYU888:       return 3;
        case BC_UYVA8888:     return 4;
        case BC_YUV101010:    return 4;
        case BC_VYU888:       return 3;
        case BC_UYVA8888:     return 4;
@@ -119,6 +121,7 @@ int BC_CModels::calculate_max(int colormodel)
        case BC_YUVA8888:     return 0xff;
        case BC_YUV161616:    return 0xffff;
        case BC_YUVA16161616: return 0xffff;
        case BC_YUVA8888:     return 0xff;
        case BC_YUV161616:    return 0xffff;
        case BC_YUVA16161616: return 0xffff;
+       case BC_AYUV16161616: return 0xffff;
        case BC_RGB_FLOAT:    return 1;
        case BC_RGBA_FLOAT:   return 1;
        case BC_RGB_FLOATP:   return 1;
        case BC_RGB_FLOAT:    return 1;
        case BC_RGBA_FLOAT:   return 1;
        case BC_RGB_FLOATP:   return 1;
@@ -165,6 +168,7 @@ void BC_CModels::to_text(char *string, int cmodel)
        case BC_YUVA8888:     strcpy(string, "YUVA-8 Bit");  break;
        case BC_YUV161616:    strcpy(string, "YUV-16 Bit");  break;
        case BC_YUVA16161616: strcpy(string, "YUVA-16 Bit"); break;
        case BC_YUVA8888:     strcpy(string, "YUVA-8 Bit");  break;
        case BC_YUV161616:    strcpy(string, "YUV-16 Bit");  break;
        case BC_YUVA16161616: strcpy(string, "YUVA-16 Bit"); break;
+       case BC_AYUV16161616: strcpy(string, "AYUV-16 Bit"); break;
        case BC_RGB_FLOAT:    strcpy(string, "RGB-FLOAT");   break;
        case BC_RGBA_FLOAT:   strcpy(string, "RGBA-FLOAT");  break;
        case BC_RGB_FLOATP:   strcpy(string, "RGB-FLOATP");  break;
        case BC_RGB_FLOAT:    strcpy(string, "RGB-FLOAT");   break;
        case BC_RGBA_FLOAT:   strcpy(string, "RGBA-FLOAT");  break;
        case BC_RGB_FLOATP:   strcpy(string, "RGB-FLOATP");  break;
@@ -187,6 +191,7 @@ int BC_CModels::from_text(const char *text)
        if(!strcasecmp(text, "YUVA-8 Bit"))  return BC_YUVA8888;
        if(!strcasecmp(text, "YUV-16 Bit"))  return BC_YUV161616;
        if(!strcasecmp(text, "YUVA-16 Bit")) return BC_YUVA16161616;
        if(!strcasecmp(text, "YUVA-8 Bit"))  return BC_YUVA8888;
        if(!strcasecmp(text, "YUV-16 Bit"))  return BC_YUV161616;
        if(!strcasecmp(text, "YUVA-16 Bit")) return BC_YUVA16161616;
+       if(!strcasecmp(text, "AYUV-16 Bit")) return BC_AYUV16161616;
        return BC_RGB888;
 }
 
        return BC_RGB888;
 }
 
@@ -228,6 +233,7 @@ int BC_CModels::is_yuv(int colormodel)
        case BC_YUVA8888:
        case BC_YUV161616:
        case BC_YUVA16161616:
        case BC_YUVA8888:
        case BC_YUV161616:
        case BC_YUVA16161616:
+       case BC_AYUV16161616:
        case BC_YUV422:
        case BC_UVY422:
        case BC_YUV101010:
        case BC_YUV422:
        case BC_UVY422:
        case BC_YUV101010:
index 302e56b135b851da15b35601a164aec53e3b0898..d079b290fe81e7da1182bbfb2121010544ec541b 100644 (file)
 // Must match colormodels.h in quicktime
 #ifndef BC_TRANSPARENCY
 
 // Must match colormodels.h in quicktime
 #ifndef BC_TRANSPARENCY
 
-
-#define BC_TRANSPARENCY 0
-#define BC_COMPRESSED   1
-#define BC_RGB8         2
-#define BC_RGB565       3
-#define BC_BGR565       4
-#define BC_BGR888       5
-#define BC_BGR8888      6
+enum BC_CModel {
+       BC_TRANSPARENCY = 0,
+       BC_COMPRESSED   = 1,
+       BC_RGB8         = 2,
+       BC_RGB565       = 3,
+       BC_BGR565       = 4,
+       BC_BGR888       = 5,
+       BC_BGR8888      = 6,
 // Working bitmaps are packed to simplify processing
 // Working bitmaps are packed to simplify processing
-#define BC_RGB888       9
-#define BC_RGBA8888     10
-#define BC_ARGB8888     20
-#define BC_ABGR8888     21
-#define BC_RGB161616    11
-#define BC_RGBA16161616 12
-#define BC_YUV888       13
-#define BC_YUVA8888     14
-#define BC_YUV161616    15
-#define BC_YUVA16161616 16
-#define BC_UVY422       18
-#define BC_YUV422       19
-#define BC_A8           22
-#define BC_A16          23
-#define BC_A_FLOAT      31
-#define BC_YUV101010    24
-#define BC_VYU888       25
-#define BC_UYVA8888     26
-#define BC_RGB_FLOAT    29
-#define BC_RGBA_FLOAT   30
+       BC_RGB888       = 9,
+       BC_RGBA8888     = 10,
+       BC_ARGB8888     = 20,
+       BC_ABGR8888     = 21,
+       BC_RGB161616    = 11,
+       BC_RGBA16161616 = 12,
+       BC_YUV888       = 13,
+       BC_YUVA8888     = 14,
+       BC_YUV161616    = 15,
+       BC_YUVA16161616 = 16,
+       BC_UVY422       = 18,
+       BC_YUV422       = 19,
+       BC_A8           = 22,
+       BC_A16          = 23,
+       BC_A_FLOAT      = 31,
+       BC_YUV101010    = 24,
+       BC_VYU888       = 25,
+       BC_UYVA8888     = 26,
+       BC_RGB_FLOAT    = 29,
+       BC_RGBA_FLOAT   = 30,
 // Planar
 // Planar
-#define BC_YUV420P      7
-#define BC_YUV422P      8
-#define BC_YUV444P      27
-#define BC_YUV411P      17
-#define BC_YUV410P      28
-#define BC_RGB_FLOATP   32
-#define BC_RGBA_FLOATP  33
-#define BC_YUV420PI     34
+       BC_YUV420P      = 7,
+       BC_YUV422P      = 8,
+       BC_YUV444P      = 27,
+       BC_YUV411P      = 17,
+       BC_YUV410P      = 28,
+       BC_RGB_FLOATP   = 32,
+       BC_RGBA_FLOATP  = 33,
+       BC_YUV420PI     = 34,
+// only used in intermediate ffmpeg xfers
+       BC_AYUV16161616 = 35,
+};
 
 // Colormodels purely used by Quicktime are done in Quicktime.
 
 
 // Colormodels purely used by Quicktime are done in Quicktime.
 
index 9f50cb4d6195e2e512ec3eb662354ec71ca0d084..18499d22e17a7f285343b80efdfeca3b0c0a32e6 100644 (file)
@@ -7,8 +7,8 @@
 msgid ""
 msgstr "Project-Id-Version: Cinelerra 5.1\n"
 "Report-Msgid-Bugs-To: cinelerra@lists.cinelerra-cv.org\n"
 msgid ""
 msgstr "Project-Id-Version: Cinelerra 5.1\n"
 "Report-Msgid-Bugs-To: cinelerra@lists.cinelerra-cv.org\n"
-"POT-Creation-Date: 2016-10-18 20:15+0300\n"
-"PO-Revision-Date: 2016-10-18 23:15+0300\n"
+"POT-Creation-Date: 2016-12-26 20:15+0300\n"
+"PO-Revision-Date: 2016-12-26 22:15+0300\n"
 "Last-Translator: Igor Vladimirsky aka igor_ubuntu <sitelve@gmail.com>\n"
 "Language-Team: <sitelve@gmail.com>\n"
 "Language: ru_RU\n"
 "Last-Translator: Igor Vladimirsky aka igor_ubuntu <sitelve@gmail.com>\n"
 "Language-Team: <sitelve@gmail.com>\n"
 "Language: ru_RU\n"
@@ -17,14 +17,14 @@ msgstr "Project-Id-Version: Cinelerra 5.1\n"
 "Content-Transfer-Encoding: 8bit\n"
 
 #: guicast//bcbutton.C:268 guicast//bcbutton.C:276 guicast//bcbutton.C:492
 "Content-Transfer-Encoding: 8bit\n"
 
 #: guicast//bcbutton.C:268 guicast//bcbutton.C:276 guicast//bcbutton.C:492
-#: cinelerra//preferencesthread.C:623
+#: cinelerra//preferencesthread.C:630
 msgid "OK"
 msgstr "ОК"
 
 #: guicast//bcbutton.C:324 guicast//bcbutton.C:332 guicast//bcbutton.C:340
 #: guicast//bcbutton.C:519 guicast//bcbutton.C:521 guicast//bcbutton.C:528
 #: cinelerra//confirmquit.C:107 cinelerra//confirmquit.C:109
 msgid "OK"
 msgstr "ОК"
 
 #: guicast//bcbutton.C:324 guicast//bcbutton.C:332 guicast//bcbutton.C:340
 #: guicast//bcbutton.C:519 guicast//bcbutton.C:521 guicast//bcbutton.C:528
 #: cinelerra//confirmquit.C:107 cinelerra//confirmquit.C:109
-#: cinelerra//preferencesthread.C:651 cinelerra//preferencesthread.C:653
+#: cinelerra//preferencesthread.C:658 cinelerra//preferencesthread.C:660
 msgid "Cancel"
 msgstr "Прервать"
 
 msgid "Cancel"
 msgstr "Прервать"
 
@@ -34,7 +34,7 @@ msgid "cannot connect to X server.\n"
 msgstr "cannot connect to X server.\n"
 
 #: guicast//bccapture.C:67 guicast//bcdisplay.C:60
 msgstr "cannot connect to X server.\n"
 
 #: guicast//bccapture.C:67 guicast//bcdisplay.C:60
-#: guicast//bcdisplayinfo.C:242 guicast//bcwindowbase.C:667
+#: guicast//bcdisplayinfo.C:242 guicast//bcwindowbase.C:668
 #, c-format
 msgid "'DISPLAY' environment variable not set.\n"
 msgstr "DISPLAY' environment variable not set.\n"
 #, c-format
 msgid "'DISPLAY' environment variable not set.\n"
 msgstr "DISPLAY' environment variable not set.\n"
@@ -103,15 +103,15 @@ msgstr "Удалить файлы"
 msgid "Refresh"
 msgstr "Обновить"
 
 msgid "Refresh"
 msgstr "Обновить"
 
-#: guicast//bcfilebox.C:1301 cinelerra//newfolder.C:37
+#: guicast//bcfilebox.C:1299 cinelerra//newfolder.C:37
 msgid ": New folder"
 msgstr ": Новая папка"
 
 msgid ": New folder"
 msgstr ": Новая папка"
 
-#: guicast//bcfilebox.C:1316
+#: guicast//bcfilebox.C:1314
 msgid ": Rename"
 msgstr ": Переименование"
 
 msgid ": Rename"
 msgstr ": Переименование"
 
-#: guicast//bcfilebox.C:1331
+#: guicast//bcfilebox.C:1329
 msgid ": Delete"
 msgstr ": Удаление"
 
 msgid ": Delete"
 msgstr ": Удаление"
 
@@ -143,7 +143,7 @@ msgstr "Безымянный"
 
 #: guicast//bcpopup.C:36 guicast//bcpopup.C:54 cinelerra//canvas.C:1195
 msgid "Fullscreen"
 
 #: guicast//bcpopup.C:36 guicast//bcpopup.C:54 cinelerra//canvas.C:1195
 msgid "Fullscreen"
-msgstr "Ð\9fолнÑ\8bй экран"
+msgstr "Ð\9dа Ð²ÐµÑ\81Ñ\8c экран"
 
 #: guicast//bcpopup.C:88
 msgid "Popup"
 
 #: guicast//bcpopup.C:88
 msgid "Popup"
@@ -151,7 +151,7 @@ msgstr ""
 
 #: guicast//bcprogressbox.C:118
 msgid "Progress"
 
 #: guicast//bcprogressbox.C:118
 msgid "Progress"
-msgstr ""
+msgstr "Ход выполнения"
 
 #: guicast//bcrecentlist.C:40 guicast//bcrecentlist.C:52
 msgid "Choose from recently used"
 
 #: guicast//bcrecentlist.C:40 guicast//bcrecentlist.C:52
 msgid "Choose from recently used"
@@ -228,7 +228,7 @@ msgstr "Футы+кадры"
 msgid "Hours:Minutes:Seconds"
 msgstr "Часы:Мин:Сек."
 
 msgid "Hours:Minutes:Seconds"
 msgstr "Часы:Мин:Сек."
 
-#: guicast//units.h:71 cinelerra//interfaceprefs.C:229
+#: guicast//units.h:71 cinelerra//interfaceprefs.C:231
 #: cinelerra//patchbay.C:93
 msgid "Seconds"
 msgstr "Секунды"
 #: cinelerra//patchbay.C:93
 msgid "Seconds"
 msgstr "Секунды"
@@ -294,7 +294,7 @@ msgid "Server:"
 msgstr "Сервер:"
 
 #: cinelerra//adeviceprefs.C:442 cinelerra//adeviceprefs.C:493
 msgstr "Сервер:"
 
 #: cinelerra//adeviceprefs.C:442 cinelerra//adeviceprefs.C:493
-#: cinelerra//interfaceprefs.C:204 cinelerra//performanceprefs.C:202
+#: cinelerra//interfaceprefs.C:206 cinelerra//performanceprefs.C:209
 #: cinelerra//vdeviceprefs.C:268
 msgid "Port:"
 msgstr "Порт:"
 #: cinelerra//vdeviceprefs.C:268
 msgid "Port:"
 msgstr "Порт:"
@@ -323,7 +323,7 @@ msgstr "dev:"
 
 #: cinelerra//adeviceprefs.C:578 cinelerra//adeviceprefs.C:597
 msgid "Follow audio config"
 
 #: cinelerra//adeviceprefs.C:578 cinelerra//adeviceprefs.C:597
 msgid "Follow audio config"
-msgstr ""
+msgstr "Автообновление конфигурации аудио"
 
 #: cinelerra//amodule.C:499
 #, c-format
 
 #: cinelerra//amodule.C:499
 #, c-format
@@ -624,7 +624,7 @@ msgstr "Пауза"
 
 #: cinelerra//avc1394transport.C:337
 msgid "Fast Forward ( Enter )"
 
 #: cinelerra//avc1394transport.C:337
 msgid "Fast Forward ( Enter )"
-msgstr "Перемотка вперед ( Enter )"
+msgstr "Перемотка вперёд ( Enter )"
 
 #: cinelerra//avc1394transport.C:365 cinelerra//playtransport.C:524
 msgid "Jump to end ( End )"
 
 #: cinelerra//avc1394transport.C:365 cinelerra//playtransport.C:524
 msgid "Jump to end ( End )"
@@ -660,7 +660,7 @@ msgstr "Медиаданные"
 
 #: cinelerra//awindowgui.C:78
 msgid "User"
 
 #: cinelerra//awindowgui.C:78
 msgid "User"
-msgstr ""
+msgstr "Пользователь"
 
 #: cinelerra//awindowgui.C:422
 msgid ": Resources"
 
 #: cinelerra//awindowgui.C:422
 msgid ": Resources"
@@ -822,13 +822,13 @@ msgstr "Невременной"
 msgid "Timed"
 msgstr "Временной"
 
 msgid "Timed"
 msgstr "Временной"
 
-#: cinelerra//batch.C:141 cinelerra//batchrender.C:939
-#: cinelerra//ffmpeg.C:2167 cinelerra//ffmpeg.C:2277 cinelerra//file.C:1359
-#: cinelerra//file.C:1387 cinelerra//interfaceprefs.C:871
+#: cinelerra//batch.C:141 cinelerra//batchrender.C:958
+#: cinelerra//ffmpeg.C:2181 cinelerra//ffmpeg.C:2291 cinelerra//file.C:1349
+#: cinelerra//file.C:1377 cinelerra//interfaceprefs.C:886
 #: cinelerra//interlacemodes.h:34 cinelerra//loadmode.C:93
 #: cinelerra//interlacemodes.h:34 cinelerra//loadmode.C:93
-#: cinelerra//new.C:857 cinelerra//record.C:721 cinelerra//vdeviceprefs.C:638
-#: plugins/motion2point/motionwindow.C:801
-#: plugins/motion2point/motionwindow.C:872 plugins/timefront/timefront.C:419
+#: cinelerra//new.C:857 cinelerra//record.C:723 cinelerra//vdeviceprefs.C:638
+#: plugins/motion2point/motionwindow.C:796
+#: plugins/motion2point/motionwindow.C:867 plugins/timefront/timefront.C:419
 msgid "Unknown"
 msgstr "Неизвестно"
 
 msgid "Unknown"
 msgstr "Неизвестно"
 
@@ -858,18 +858,18 @@ msgstr "Пакетный рендеринг..."
 msgid "Shift-B"
 msgstr "Shift-B"
 
 msgid "Shift-B"
 msgstr "Shift-B"
 
-#: cinelerra//batchrender.C:439 cinelerra//bdcreate.C:229
-#: cinelerra//dvdcreate.C:285
+#: cinelerra//batchrender.C:436 cinelerra//bdcreate.C:231
+#: cinelerra//dvdcreate.C:282
 #, c-format
 msgid "Unable to save: %s"
 msgstr "Невозможно сохранить: %s"
 
 #, c-format
 msgid "Unable to save: %s"
 msgstr "Невозможно сохранить: %s"
 
-#: cinelerra//batchrender.C:509
+#: cinelerra//batchrender.C:506
 #, c-format
 msgid "EDL %s not found.\n"
 msgstr "EDL %s не найден.\n"
 
 #, c-format
 msgid "EDL %s not found.\n"
 msgstr "EDL %s не найден.\n"
 
-#: cinelerra//batchrender.C:511 cinelerra//file.C:275
+#: cinelerra//batchrender.C:508 cinelerra//file.C:275
 #: cinelerra//formatcheck.C:51 cinelerra//formatcheck.C:62
 #: cinelerra//formatcheck.C:71 cinelerra//menueffects.C:148
 #: cinelerra//menueffects.C:159 cinelerra//menueffects.C:259
 #: cinelerra//formatcheck.C:51 cinelerra//formatcheck.C:62
 #: cinelerra//formatcheck.C:71 cinelerra//menueffects.C:148
 #: cinelerra//menueffects.C:159 cinelerra//menueffects.C:259
@@ -883,237 +883,244 @@ msgstr "EDL %s не найден.\n"
 msgid ": Error"
 msgstr ": Ошибка"
 
 msgid ": Error"
 msgstr ": Ошибка"
 
-#: cinelerra//batchrender.C:524 cinelerra//batchrender.C:526
+#: cinelerra//batchrender.C:521 cinelerra//batchrender.C:523
 #, c-format
 msgid "%d job EDLs do not match session edl\n"
 msgstr ""
 
 #, c-format
 msgid "%d job EDLs do not match session edl\n"
 msgstr ""
 
-#: cinelerra//batchrender.C:527
+#: cinelerra//batchrender.C:524
 #, c-format
 msgid "press cancel to abandon batch render"
 msgstr ""
 
 #, c-format
 msgid "press cancel to abandon batch render"
 msgstr ""
 
-#: cinelerra//batchrender.C:739
+#: cinelerra//batchrender.C:754
 msgid ": Batch Render"
 msgstr ": Пакетный рендеринг"
 
 msgid ": Batch Render"
 msgstr ": Пакетный рендеринг"
 
-#: cinelerra//batchrender.C:766
+#: cinelerra//batchrender.C:781
 msgid "Output path:"
 msgstr "Путь выведения в файл:"
 
 msgid "Output path:"
 msgstr "Путь выведения в файл:"
 
-#: cinelerra//batchrender.C:775
+#: cinelerra//batchrender.C:790
 msgid "EDL Path:"
 msgstr "Путь к EDL:"
 
 msgid "EDL Path:"
 msgstr "Путь к EDL:"
 
-#: cinelerra//batchrender.C:784
+#: cinelerra//batchrender.C:799
 msgid "Input EDL"
 msgstr "Импорт EDL"
 
 msgid "Input EDL"
 msgstr "Импорт EDL"
 
-#: cinelerra//batchrender.C:784
+#: cinelerra//batchrender.C:799
 msgid "Select an EDL to load:"
 msgstr "Выберите EDL для загрузки:"
 
 msgid "Select an EDL to load:"
 msgstr "Выберите EDL для загрузки:"
 
-#: cinelerra//batchrender.C:806
+#: cinelerra//batchrender.C:822
 msgid "Batches to render:"
 msgstr "Пакеты для рендеринга:"
 
 msgid "Batches to render:"
 msgstr "Пакеты для рендеринга:"
 
-#: cinelerra//batchrender.C:815 cinelerra//batchrender.C:1400
+#: cinelerra//batchrender.C:833 cinelerra//batchrender.C:1404
 #: cinelerra//recordbatches.C:538
 msgid "Stop"
 msgstr "Стоп"
 
 #: cinelerra//recordbatches.C:538
 msgid "Stop"
 msgstr "Стоп"
 
-#: cinelerra//batchrender.C:817 cinelerra//batchrender.C:1432
-#: cinelerra//tipwindow.C:279
+#: cinelerra//batchrender.C:835 cinelerra//batchrender.C:1436
+#: cinelerra//tipwindow.C:276
 msgid "Close"
 msgstr "Закрыть"
 
 msgid "Close"
 msgstr "Закрыть"
 
-#: cinelerra//batchrender.C:1051 cinelerra//new.C:57 cinelerra//new.C:139
-#: cinelerra//recordbatches.C:489
+#: cinelerra//batchrender.C:1070 cinelerra//recordbatches.C:489
 msgid "New"
 msgstr "Новый"
 
 msgid "New"
 msgstr "Новый"
 
-#: cinelerra//batchrender.C:1065 cinelerra//channeledit.C:587
+#: cinelerra//batchrender.C:1084 cinelerra//channeledit.C:587
 #: cinelerra//cwindowtool.C:1604 cinelerra//dbwindow.C:240
 #: cinelerra//recordbatches.C:507 plugins/piano/piano.C:841
 #: plugins/synthesizer/synthesizer.C:1377
 msgid "Delete"
 msgstr "Удалить"
 
 #: cinelerra//cwindowtool.C:1604 cinelerra//dbwindow.C:240
 #: cinelerra//recordbatches.C:507 plugins/piano/piano.C:841
 #: plugins/synthesizer/synthesizer.C:1377
 msgid "Delete"
 msgstr "Удалить"
 
-#: cinelerra//batchrender.C:1081
-msgid "Save List"
-msgstr "Сохранить список"
+#: cinelerra//batchrender.C:1100
+msgid "Save Jobs"
+msgstr ""
 
 
-#: cinelerra//batchrender.C:1084
+#: cinelerra//batchrender.C:1103
 msgid "Save a Batch Render List"
 msgstr "Сохранить список пакетного рендеринга"
 
 msgid "Save a Batch Render List"
 msgstr "Сохранить список пакетного рендеринга"
 
-#: cinelerra//batchrender.C:1129
+#: cinelerra//batchrender.C:1146
 msgid "Save Batch Render List"
 msgstr "Сохранение списка пакетного рендеринга"
 
 msgid "Save Batch Render List"
 msgstr "Сохранение списка пакетного рендеринга"
 
-#: cinelerra//batchrender.C:1130
+#: cinelerra//batchrender.C:1147
 msgid "Enter a Batch Render filename to save as:"
 msgstr "Введите имя файла для сохранения списка пак. рендеринга:"
 
 msgid "Enter a Batch Render filename to save as:"
 msgstr "Введите имя файла для сохранения списка пак. рендеринга:"
 
-#: cinelerra//batchrender.C:1167
-msgid "Load List"
-msgstr "Загрузить список"
+#: cinelerra//batchrender.C:1180
+msgid "Load Jobs"
+msgstr ""
 
 
-#: cinelerra//batchrender.C:1171
+#: cinelerra//batchrender.C:1184
 msgid "Load a previously saved Batch Render List"
 msgstr "Загрузить ранее сохранённый\n"
 "список пакетного рендеринга"
 
 msgid "Load a previously saved Batch Render List"
 msgstr "Загрузить ранее сохранённый\n"
 "список пакетного рендеринга"
 
-#: cinelerra//batchrender.C:1216
+#: cinelerra//batchrender.C:1224
 msgid "Load Batch Render List"
 msgstr "Загрузка списка пакетного рендеринга"
 
 msgid "Load Batch Render List"
 msgstr "Загрузка списка пакетного рендеринга"
 
-#: cinelerra//batchrender.C:1217
+#: cinelerra//batchrender.C:1225
 msgid "Enter a Batch Render filename to load from:"
 msgstr "Введите имя загружаемого файла списка пакет. рендеринга:"
 
 msgid "Enter a Batch Render filename to load from:"
 msgstr "Введите имя загружаемого файла списка пакет. рендеринга:"
 
-#: cinelerra//batchrender.C:1252
+#: cinelerra//batchrender.C:1256
 msgid "Use Current EDL"
 msgstr "Использ-ть текущий EDL"
 
 msgid "Use Current EDL"
 msgstr "Использ-ть текущий EDL"
 
-#: cinelerra//batchrender.C:1266
+#: cinelerra//batchrender.C:1270
 msgid "Save to EDL Path"
 msgstr ""
 
 msgid "Save to EDL Path"
 msgstr ""
 
-#: cinelerra//batchrender.C:1384 cinelerra//recordbatches.C:523
+#: cinelerra//batchrender.C:1388 cinelerra//recordbatches.C:523
 msgid "Start"
 msgstr "Старт"
 
 msgid "Start"
 msgstr "Старт"
 
-#: cinelerra//batchrender.C:1415
+#: cinelerra//batchrender.C:1419
 msgid "warn if jobs/session mismatched"
 msgstr ""
 
 msgid "warn if jobs/session mismatched"
 msgstr ""
 
-#: cinelerra//bdcreate.C:76
+#: cinelerra//bdcreate.C:81
 msgid "BD Render..."
 msgstr "BD-рендеринг..."
 
 msgid "BD Render..."
 msgstr "BD-рендеринг..."
 
-#: cinelerra//bdcreate.C:76
+#: cinelerra//bdcreate.C:81
 msgid "Ctrl-d"
 msgstr "Ctrl-d"
 
 msgid "Ctrl-d"
 msgstr "Ctrl-d"
 
-#: cinelerra//bdcreate.C:125 cinelerra//dvdcreate.C:134
+#: cinelerra//bdcreate.C:129 cinelerra//dvdcreate.C:134
 #, c-format
 msgid "No EDL/Session"
 msgstr ""
 
 #, c-format
 msgid "No EDL/Session"
 msgstr ""
 
-#: cinelerra//bdcreate.C:134 cinelerra//dvdcreate.C:143
+#: cinelerra//bdcreate.C:138 cinelerra//dvdcreate.C:143
 #, c-format
 msgid "No content: %s"
 msgstr ""
 
 #, c-format
 msgid "No content: %s"
 msgstr ""
 
-#: cinelerra//bdcreate.C:145 cinelerra//dvdcreate.C:154
+#: cinelerra//bdcreate.C:146 cinelerra//dvdcreate.C:151
 #, c-format
 msgid ""
 "Unable to create directory: %s\n"
 "-- %s"
 msgstr ""
 
 #, c-format
 msgid ""
 "Unable to create directory: %s\n"
 "-- %s"
 msgstr ""
 
-#: cinelerra//bdcreate.C:171 cinelerra//dvdcreate.C:180
+#: cinelerra//bdcreate.C:173 cinelerra//dvdcreate.C:177
 #, c-format
 msgid ""
 "Unable to save: %s\n"
 "-- %s"
 msgstr ""
 
 #, c-format
 msgid ""
 "Unable to save: %s\n"
 "-- %s"
 msgstr ""
 
-#: cinelerra//bdcreate.C:317 cinelerra//bdcreate.C:838
-#: cinelerra//dvdcreate.C:408 cinelerra//dvdcreate.C:962
+#: cinelerra//bdcreate.C:333 cinelerra//bdcreate.C:877
+#: cinelerra//dvdcreate.C:406 cinelerra//dvdcreate.C:971
 #: plugins/scaleratio/scaleratio.C:96
 msgid "Scale Ratio"
 msgstr ""
 
 #: plugins/scaleratio/scaleratio.C:96
 msgid "Scale Ratio"
 msgstr ""
 
-#: cinelerra//bdcreate.C:350
+#: cinelerra//bdcreate.C:369
 msgid "create bd"
 msgid "create bd"
+msgstr "создание BD"
+
+#: cinelerra//bdcreate.C:434
+msgid "Must be root to mount UDFS images\n"
 msgstr ""
 
 msgstr ""
 
-#: cinelerra//bdcreate.C:417 cinelerra//dvdcreate.C:524
+#: cinelerra//bdcreate.C:444 cinelerra//dvdcreate.C:525
 msgid "end setup, start batch render"
 msgstr ""
 
 msgid "end setup, start batch render"
 msgstr ""
 
-#: cinelerra//bdcreate.C:494 cinelerra//dvdcreate.C:602
+#: cinelerra//bdcreate.C:521 cinelerra//dvdcreate.C:603
 msgid "disk space: "
 msgstr "Диск. простр-во:"
 
 msgid "disk space: "
 msgstr "Диск. простр-во:"
 
-#: cinelerra//bdcreate.C:529 cinelerra//bdcreate.C:835
-#: cinelerra//dvdcreate.C:637 cinelerra//dvdcreate.C:959
+#: cinelerra//bdcreate.C:563 cinelerra//bdcreate.C:874
+#: cinelerra//dvdcreate.C:646 cinelerra//dvdcreate.C:968
 #: plugins/deinterlace/deinterlace.C:95
 #: plugins/denoisemjpeg/denoisemjpeg.C:248
 msgid "Deinterlace"
 msgstr "Деинтерлейс"
 
 #: plugins/deinterlace/deinterlace.C:95
 #: plugins/denoisemjpeg/denoisemjpeg.C:248
 msgid "Deinterlace"
 msgstr "Деинтерлейс"
 
-#: cinelerra//bdcreate.C:549 cinelerra//dvdcreate.C:657 plugins/ivtc/ivtc.C:76
+#: cinelerra//bdcreate.C:583 cinelerra//dvdcreate.C:666 plugins/ivtc/ivtc.C:76
 msgid "Inverse Telecine"
 msgstr "Обратный телесин"
 
 msgid "Inverse Telecine"
 msgstr "Обратный телесин"
 
-#: cinelerra//bdcreate.C:569 cinelerra//dvdcreate.C:677
+#: cinelerra//bdcreate.C:603 cinelerra//dvdcreate.C:686
 msgid "Resize Tracks"
 msgstr ""
 
 msgid "Resize Tracks"
 msgstr ""
 
-#: cinelerra//bdcreate.C:580 cinelerra//dvdcreate.C:688
+#: cinelerra//bdcreate.C:614 cinelerra//dvdcreate.C:697
 #: cinelerra//scopewindow.C:1331 plugins/colorbalance/colorbalance.C:493
 #: plugins/gamma/gamma.C:438 plugins/histogram/histogram.C:99
 #: plugins/interpolate/interpolate.C:256
 msgid "Histogram"
 msgstr "Гистограмма"
 
 #: cinelerra//scopewindow.C:1331 plugins/colorbalance/colorbalance.C:493
 #: plugins/gamma/gamma.C:438 plugins/histogram/histogram.C:99
 #: plugins/interpolate/interpolate.C:256
 msgid "Histogram"
 msgstr "Гистограмма"
 
-#: cinelerra//bdcreate.C:590 cinelerra//dvdcreate.C:698
+#: cinelerra//bdcreate.C:624 cinelerra//dvdcreate.C:707
 msgid "Chapters at Labels"
 msgstr ""
 
 msgid "Chapters at Labels"
 msgstr ""
 
-#: cinelerra//bdcreate.C:600 cinelerra//dvdcreate.C:708
+#: cinelerra//bdcreate.C:634 cinelerra//dvdcreate.C:717
 msgid "Audio 5.1"
 msgstr "Аудио 5.1"
 
 msgid "Audio 5.1"
 msgstr "Аудио 5.1"
 
-#: cinelerra//bdcreate.C:611
+#: cinelerra//bdcreate.C:645
 msgid ": Create BD"
 msgid ": Create BD"
-msgstr ""
+msgstr ": Создание BD (Blu-ray Disc)"
 
 
-#: cinelerra//bdcreate.C:643 cinelerra//channeledit.C:1032
-#: cinelerra//clipedit.C:188 cinelerra//dvdcreate.C:763
+#: cinelerra//bdcreate.C:678 cinelerra//channeledit.C:1032
+#: cinelerra//clipedit.C:188 cinelerra//dvdcreate.C:772
 msgid "Title:"
 msgstr "Имя:"
 
 msgid "Title:"
 msgstr "Имя:"
 
-#: cinelerra//bdcreate.C:649 cinelerra//dvdcreate.C:769
+#: cinelerra//bdcreate.C:684 cinelerra//dvdcreate.C:778
 msgid "Work path:"
 msgstr "Путь к раб. каталогу:"
 
 msgid "Work path:"
 msgstr "Путь к раб. каталогу:"
 
-#: cinelerra//bdcreate.C:656 cinelerra//dvdcreate.C:776
+#: cinelerra//bdcreate.C:691 cinelerra//dvdcreate.C:785
 msgid "Work path"
 msgstr "Путь к рабочему каталогу"
 
 msgid "Work path"
 msgstr "Путь к рабочему каталогу"
 
-#: cinelerra//bdcreate.C:656 cinelerra//dvdcreate.C:776
+#: cinelerra//bdcreate.C:691 cinelerra//dvdcreate.C:785
 msgid "Select a Work directory:"
 msgstr "Выберите рабочий каталог:"
 
 msgid "Select a Work directory:"
 msgstr "Выберите рабочий каталог:"
 
-#: cinelerra//bdcreate.C:662 cinelerra//dvdcreate.C:782
+#: cinelerra//bdcreate.C:697 cinelerra//dvdcreate.C:791
 msgid "Media:"
 msgstr "Медиа:"
 
 msgid "Media:"
 msgstr "Медиа:"
 
-#: cinelerra//bdcreate.C:673 cinelerra//dvdcreate.C:793
+#: cinelerra//bdcreate.C:708 cinelerra//dvdcreate.C:802
 #: cinelerra//recordgui.C:223
 msgid "Format:"
 msgstr "Формат:"
 
 #: cinelerra//recordgui.C:223
 msgid "Format:"
 msgstr "Формат:"
 
-#: cinelerra//bdcreate.C:679 cinelerra//dvdcreate.C:799
+#: cinelerra//bdcreate.C:715 cinelerra//dvdcreate.C:808
 #: cinelerra//resizetrackthread.C:128 plugins/pitch/pitch.C:418
 #: plugins/scale/scalewin.C:50
 msgid "Scale:"
 msgstr "Масштаб:"
 
 #: cinelerra//resizetrackthread.C:128 plugins/pitch/pitch.C:418
 #: plugins/scale/scalewin.C:50
 msgid "Scale:"
 msgstr "Масштаб:"
 
-#: cinelerra//bdcreate.C:837 cinelerra//dvdcreate.C:961
+#: cinelerra//bdcreate.C:876 cinelerra//dvdcreate.C:970
 #: plugins/photoscale/photoscale.C:291
 msgid "Auto Scale"
 msgstr ""
 
 #: plugins/photoscale/photoscale.C:291
 msgid "Auto Scale"
 msgstr ""
 
-#: cinelerra//bdcreate.C:839 cinelerra//dvdcreate.C:963
+#: cinelerra//bdcreate.C:878 cinelerra//dvdcreate.C:972
 #: plugins/scale/scale.C:90
 msgid "Scale"
 msgstr "Масштаб"
 
 #: plugins/scale/scale.C:90
 msgid "Scale"
 msgstr "Масштаб"
 
+#: cinelerra//bdcreate.C:938
+msgid "* non-standard format"
+msgstr ""
+
 #: cinelerra//brender.C:153
 msgid "BRender::fork_background: can't open /proc/self/cmdline.\n"
 msgstr "BRender::fork_background: can't open /proc/self/cmdline.\n"
 #: cinelerra//brender.C:153
 msgid "BRender::fork_background: can't open /proc/self/cmdline.\n"
 msgstr "BRender::fork_background: can't open /proc/self/cmdline.\n"
@@ -1138,7 +1145,7 @@ msgstr "В окне"
 
 #: cinelerra//canvas.C:1069
 msgid "Zoom 25%"
 
 #: cinelerra//canvas.C:1069
 msgid "Zoom 25%"
-msgstr "Масштаб 25%"
+msgstr "Zoom 25%"
 #msgstr "Масштаб 25%"
 
 #: cinelerra//canvas.C:1070
 #msgstr "Масштаб 25%"
 
 #: cinelerra//canvas.C:1070
@@ -1156,7 +1163,7 @@ msgid "Zoom 75%"
 msgstr "Масштаб 75%"
 #msgstr "Масштаб 75%"
 
 msgstr "Масштаб 75%"
 #msgstr "Масштаб 75%"
 
-#: cinelerra//canvas.C:1073 cinelerra//recordmonitor.C:858
+#: cinelerra//canvas.C:1073 cinelerra//recordmonitor.C:851
 msgid "Zoom 100%"
 msgstr "Масштаб 100%"
 #msgstr "Масштаб 100%"
 msgid "Zoom 100%"
 msgstr "Масштаб 100%"
 #msgstr "Масштаб 100%"
@@ -1183,7 +1190,7 @@ msgstr "Масштаб 400%"
 
 #: cinelerra//canvas.C:1100
 msgid "Zoom Auto"
 
 #: cinelerra//canvas.C:1100
 msgid "Zoom Auto"
-msgstr "Ð\90вÑ\82о Ð¼Ð°Ñ\81Ñ\88Ñ\82аб"
+msgstr "Ð\9cаÑ\81Ñ\88Ñ\82аб  Ð\90вÑ\82о"
 
 #: cinelerra//canvas.C:1130
 msgid "Reset camera"
 
 #: cinelerra//canvas.C:1130
 msgid "Reset camera"
@@ -1349,12 +1356,12 @@ msgstr "Вход:"
 
 #: cinelerra//channeledit.C:784 cinelerra//commercials.C:700
 msgid "Scanning"
 
 #: cinelerra//channeledit.C:784 cinelerra//commercials.C:700
 msgid "Scanning"
-msgstr ""
+msgstr "Сканирование"
 
 #: cinelerra//channeledit.C:799
 #, c-format
 msgid "Scanning %s"
 
 #: cinelerra//channeledit.C:799
 #, c-format
 msgid "Scanning %s"
-msgstr ""
+msgstr "Сканирование %s"
 
 #: cinelerra//channeledit.C:996
 msgid ": Edit Channel"
 
 #: cinelerra//channeledit.C:996
 msgid ": Edit Channel"
@@ -1451,7 +1458,7 @@ msgstr "Выкл. систему по завершении\n"
 
 #: cinelerra//channelinfo.C:1023
 msgid "Find"
 
 #: cinelerra//channelinfo.C:1023
 msgid "Find"
-msgstr ""
+msgstr "Поиск"
 
 #: cinelerra//channelinfo.C:1026
 msgid "search event titles/info"
 
 #: cinelerra//channelinfo.C:1026
 msgid "search event titles/info"
@@ -1572,7 +1579,7 @@ msgstr "Канал"
 
 #: cinelerra//channelpicker.C:560
 msgid "Edit picture"
 
 #: cinelerra//channelpicker.C:560
 msgid "Edit picture"
-msgstr ""
+msgstr "Правка изображения"
 
 #: cinelerra//channelpicker.C:589
 msgid "Edit channels"
 
 #: cinelerra//channelpicker.C:589
 msgid "Edit channels"
@@ -2240,23 +2247,23 @@ msgstr ""
 msgid "config geom %dx%d != %dx%d best_geom\n"
 msgstr ""
 
 msgid "config geom %dx%d != %dx%d best_geom\n"
 msgstr ""
 
-#: cinelerra//dvdcreate.C:84
+#: cinelerra//dvdcreate.C:85
 msgid "DVD Render..."
 msgstr "DVD-рендеринг..."
 
 msgid "DVD Render..."
 msgstr "DVD-рендеринг..."
 
-#: cinelerra//dvdcreate.C:84
+#: cinelerra//dvdcreate.C:85
 msgid "Shift-D"
 msgstr "Shift-D"
 
 #: cinelerra//dvdcreate.C:442
 msgid "create dvd"
 msgid "Shift-D"
 msgstr "Shift-D"
 
 #: cinelerra//dvdcreate.C:442
 msgid "create dvd"
-msgstr ""
+msgstr "создание DVD"
 
 
-#: cinelerra//dvdcreate.C:718
+#: cinelerra//dvdcreate.C:727
 msgid "Use FFMPEG"
 msgstr "Использ-ть FFmpeg"
 
 msgid "Use FFMPEG"
 msgstr "Использ-ть FFmpeg"
 
-#: cinelerra//dvdcreate.C:731
+#: cinelerra//dvdcreate.C:740
 msgid ": Create DVD"
 msgstr ": Создание DVD"
 
 msgid ": Create DVD"
 msgstr ": Создание DVD"
 
@@ -2427,12 +2434,12 @@ msgstr ": Задать название"
 msgid "User title"
 msgstr "Собственное название"
 
 msgid "User title"
 msgstr "Собственное название"
 
-#: cinelerra//edlsession.C:253 plugins/crossfade/crossfade.C:46
+#: cinelerra//edlsession.C:254 plugins/crossfade/crossfade.C:46
 #, c-format
 msgid "Crossfade"
 msgstr "Перекрестное затухание"
 
 #, c-format
 msgid "Crossfade"
 msgstr "Перекрестное затухание"
 
-#: cinelerra//edlsession.C:255 plugins/dissolve/dissolve.C:50
+#: cinelerra//edlsession.C:256 plugins/dissolve/dissolve.C:50
 #, c-format
 msgid "Dissolve"
 msgstr "Наплыв"
 #, c-format
 msgid "Dissolve"
 msgstr "Наплыв"
@@ -2448,7 +2455,7 @@ msgstr "Экспорт EDL..."
 
 #: cinelerra//exportedl.C:356
 msgid "No."
 
 #: cinelerra//exportedl.C:356
 msgid "No."
-msgstr "Номер"
+msgstr ""
 
 #: cinelerra//exportedl.C:357
 msgid "Track name"
 
 #: cinelerra//exportedl.C:357
 msgid "Track name"
@@ -2462,19 +2469,19 @@ msgstr ": Экспорт EDL"
 msgid "Select a file to export to:"
 msgstr "Введите имя для экспорта EDL-файла:"
 
 msgid "Select a file to export to:"
 msgstr "Введите имя для экспорта EDL-файла:"
 
-#: cinelerra//exportedl.C:415 cinelerra//formattools.C:192
+#: cinelerra//exportedl.C:410 cinelerra//formattools.C:192
 msgid "Output to file"
 msgstr "Выведение в файл"
 
 msgid "Output to file"
 msgstr "Выведение в файл"
 
-#: cinelerra//exportedl.C:416 cinelerra//formattools.C:192
+#: cinelerra//exportedl.C:410 cinelerra//formattools.C:192
 msgid "Select a file to write to:"
 msgstr "Введите имя для результирующего файла:"
 
 msgid "Select a file to write to:"
 msgstr "Введите имя для результирующего файла:"
 
-#: cinelerra//exportedl.C:421
+#: cinelerra//exportedl.C:414
 msgid "Select track to be exported:"
 msgstr "Выберите экспортируемую дорожку:"
 
 msgid "Select track to be exported:"
 msgstr "Выберите экспортируемую дорожку:"
 
-#: cinelerra//exportedl.C:451
+#: cinelerra//exportedl.C:444
 msgid "Currently only CMX 3600 format is supported"
 msgstr "Поддерживается только формат CMX 3600"
 
 msgid "Currently only CMX 3600 format is supported"
 msgstr "Поддерживается только формат CMX 3600"
 
@@ -2511,127 +2518,127 @@ msgstr "can't clone input file\n"
 msgid "av_buffersrc_add_frame_flags failed\n"
 msgstr "av_buffersrc_add_frame_flags failed\n"
 
 msgid "av_buffersrc_add_frame_flags failed\n"
 msgstr "av_buffersrc_add_frame_flags failed\n"
 
-#: cinelerra//ffmpeg.C:1293
+#: cinelerra//ffmpeg.C:1306
 #, c-format
 msgid "options open failed %s\n"
 msgstr "options open failed %s\n"
 
 #, c-format
 msgid "options open failed %s\n"
 msgstr "options open failed %s\n"
 
-#: cinelerra//ffmpeg.C:1297
+#: cinelerra//ffmpeg.C:1310
 #, c-format
 msgid "format/codec not found %s\n"
 msgstr "format/codec not found %s\n"
 
 #, c-format
 msgid "format/codec not found %s\n"
 msgstr "format/codec not found %s\n"
 
-#: cinelerra//ffmpeg.C:1349
+#: cinelerra//ffmpeg.C:1362
 #, c-format
 msgid "err reading %s: line %d\n"
 msgstr "err reading %s: line %d\n"
 
 #, c-format
 msgid "err reading %s: line %d\n"
 msgstr "err reading %s: line %d\n"
 
-#: cinelerra//ffmpeg.C:1432
+#: cinelerra//ffmpeg.C:1445
 #, c-format
 msgid "vid%d (%d),  id 0x%06x:\n"
 msgstr "vid%d (%d),  id 0x%06x:\n"
 
 #, c-format
 msgid "vid%d (%d),  id 0x%06x:\n"
 msgstr "vid%d (%d),  id 0x%06x:\n"
 
-#: cinelerra//ffmpeg.C:1454
+#: cinelerra//ffmpeg.C:1467
 #, c-format
 msgid "aud%d (%d),  id 0x%06x:\n"
 msgstr "aud%d (%d),  id 0x%06x:\n"
 
 #, c-format
 msgid "aud%d (%d),  id 0x%06x:\n"
 msgstr "aud%d (%d),  id 0x%06x:\n"
 
-#: cinelerra//ffmpeg.C:1542
+#: cinelerra//ffmpeg.C:1555
 #, c-format
 msgid "can't stat file: %s\n"
 msgstr "can't stat file: %s\n"
 
 #, c-format
 msgid "can't stat file: %s\n"
 msgstr "can't stat file: %s\n"
 
-#: cinelerra//ffmpeg.C:1634
+#: cinelerra//ffmpeg.C:1647
 #, c-format
 msgid "bad file path: %s\n"
 msgstr "bad file path: %s\n"
 
 #, c-format
 msgid "bad file path: %s\n"
 msgstr "bad file path: %s\n"
 
-#: cinelerra//ffmpeg.C:1640
+#: cinelerra//ffmpeg.C:1653
 #, c-format
 msgid "bad file format: %s\n"
 msgstr "bad file format: %s\n"
 
 #, c-format
 msgid "bad file format: %s\n"
 msgstr "bad file format: %s\n"
 
-#: cinelerra//ffmpeg.C:1644
+#: cinelerra//ffmpeg.C:1657
 #, c-format
 msgid "mismatch audio/video file format: %s\n"
 msgstr "mismatch audio/video file format: %s\n"
 
 #, c-format
 msgid "mismatch audio/video file format: %s\n"
 msgstr "mismatch audio/video file format: %s\n"
 
-#: cinelerra//ffmpeg.C:1651
+#: cinelerra//ffmpeg.C:1664
 #, c-format
 msgid "failed: %s\n"
 msgstr "failed: %s\n"
 
 #, c-format
 msgid "failed: %s\n"
 msgstr "failed: %s\n"
 
-#: cinelerra//ffmpeg.C:1676
+#: cinelerra//ffmpeg.C:1689
 #, c-format
 msgid "get_encoder failed %s:%s\n"
 msgstr "get_encoder failed %s:%s\n"
 
 #, c-format
 msgid "get_encoder failed %s:%s\n"
 msgstr "get_encoder failed %s:%s\n"
 
-#: cinelerra//ffmpeg.C:1692
+#: cinelerra//ffmpeg.C:1705
 #, c-format
 msgid "cant find codec %s:%s\n"
 msgstr "cant find codec %s:%s\n"
 
 #, c-format
 msgid "cant find codec %s:%s\n"
 msgstr "cant find codec %s:%s\n"
 
-#: cinelerra//ffmpeg.C:1698
+#: cinelerra//ffmpeg.C:1711
 #, c-format
 msgid "unknown codec %s:%s\n"
 msgstr "unknown codec %s:%s\n"
 
 #, c-format
 msgid "unknown codec %s:%s\n"
 msgstr "unknown codec %s:%s\n"
 
-#: cinelerra//ffmpeg.C:1705
+#: cinelerra//ffmpeg.C:1718
 #, c-format
 msgid "cant create stream %s:%s\n"
 msgstr "cant create stream %s:%s\n"
 
 #, c-format
 msgid "cant create stream %s:%s\n"
 msgstr "cant create stream %s:%s\n"
 
-#: cinelerra//ffmpeg.C:1714
+#: cinelerra//ffmpeg.C:1727
 #, c-format
 msgid "duplicate audio %s:%s\n"
 msgstr "duplicate audio %s:%s\n"
 
 #, c-format
 msgid "duplicate audio %s:%s\n"
 msgstr "duplicate audio %s:%s\n"
 
-#: cinelerra//ffmpeg.C:1720
+#: cinelerra//ffmpeg.C:1733
 #, c-format
 msgid "bad audio options %s:%s\n"
 msgstr "bad audio options %s:%s\n"
 
 #, c-format
 msgid "bad audio options %s:%s\n"
 msgstr "bad audio options %s:%s\n"
 
-#: cinelerra//ffmpeg.C:1741
+#: cinelerra//ffmpeg.C:1754
 #, c-format
 msgid "check_sample_rate failed %s\n"
 msgstr "check_sample_rate failed %s\n"
 
 #, c-format
 msgid "check_sample_rate failed %s\n"
 msgstr "check_sample_rate failed %s\n"
 
-#: cinelerra//ffmpeg.C:1757
+#: cinelerra//ffmpeg.C:1770
 #, c-format
 msgid "duplicate video %s:%s\n"
 msgstr "duplicate video %s:%s\n"
 
 #, c-format
 msgid "duplicate video %s:%s\n"
 msgstr "duplicate video %s:%s\n"
 
-#: cinelerra//ffmpeg.C:1763
+#: cinelerra//ffmpeg.C:1776
 #, c-format
 msgid "bad video options %s:%s\n"
 msgstr "bad video options %s:%s\n"
 
 #, c-format
 msgid "bad video options %s:%s\n"
 msgstr "bad video options %s:%s\n"
 
-#: cinelerra//ffmpeg.C:1800
+#: cinelerra//ffmpeg.C:1813
 #, c-format
 msgid "check_frame_rate failed %s\n"
 msgstr "check_frame_rate failed %s\n"
 
 #, c-format
 msgid "check_frame_rate failed %s\n"
 msgstr "check_frame_rate failed %s\n"
 
-#: cinelerra//ffmpeg.C:1809
+#: cinelerra//ffmpeg.C:1822
 #, c-format
 msgid "not audio/video, %s:%s\n"
 msgstr "not audio/video, %s:%s\n"
 
 #, c-format
 msgid "not audio/video, %s:%s\n"
 msgstr "not audio/video, %s:%s\n"
 
-#: cinelerra//ffmpeg.C:1820
+#: cinelerra//ffmpeg.C:1833
 #, c-format
 msgid "open failed %s:%s\n"
 msgstr "open failed %s:%s\n"
 
 #, c-format
 msgid "open failed %s:%s\n"
 msgstr "open failed %s:%s\n"
 
-#: cinelerra//ffmpeg.C:2455
+#: cinelerra//ffmpeg.C:2482
 #, c-format
 msgid "av_frame_alloc failed\n"
 msgstr "av_frame_alloc failed\n"
 
 #, c-format
 msgid "av_frame_alloc failed\n"
 msgstr "av_frame_alloc failed\n"
 
-#: cinelerra//ffmpeg.C:2470
+#: cinelerra//ffmpeg.C:2497
 #, c-format
 msgid "codec open failed\n"
 msgstr "codec open failed\n"
 
 #, c-format
 msgid "codec open failed\n"
 msgstr "codec open failed\n"
 
-#: cinelerra//ffmpeg.C:2483
+#: cinelerra//ffmpeg.C:2510
 msgid "over 100 read_frame errs\n"
 msgstr "over 100 read_frame errs\n"
 
 msgid "over 100 read_frame errs\n"
 msgstr "over 100 read_frame errs\n"
 
@@ -2670,7 +2677,7 @@ msgstr "Error while writing samples. \n"
 "%m\n"
 
 #: cinelerra//fileac3.C:337 cinelerra//filedv.C:984 cinelerra//fileflac.C:363
 "%m\n"
 
 #: cinelerra//fileac3.C:337 cinelerra//filedv.C:984 cinelerra//fileflac.C:363
-#: cinelerra//filempeg.C:1723 cinelerra//fileogg.C:2036
+#: cinelerra//filempeg.C:1723 cinelerra//fileogg.C:2016
 #: cinelerra//filesndfile.C:374 cinelerra//filevorbis.C:362
 msgid ": Audio Compression"
 msgstr ": Сжатие аудио"
 #: cinelerra//filesndfile.C:374 cinelerra//filevorbis.C:362
 msgid ": Audio Compression"
 msgstr ": Сжатие аудио"
@@ -2687,17 +2694,17 @@ msgstr "Этот формат не поддерживает аудио."
 msgid "This format doesn't support video."
 msgstr "Этот формат не поддерживает видео."
 
 msgid "This format doesn't support video."
 msgstr "Этот формат не поддерживает видео."
 
-#: cinelerra//file.C:1394 cinelerra//file.C:1400 cinelerra//fileformat.C:166
+#: cinelerra//file.C:1384 cinelerra//file.C:1390 cinelerra//fileformat.C:166
 #: cinelerra//filesndfile.C:457
 msgid "Lo Hi"
 msgstr "Lo Hi"
 
 #: cinelerra//filesndfile.C:457
 msgid "Lo Hi"
 msgstr "Lo Hi"
 
-#: cinelerra//file.C:1401 cinelerra//fileformat.C:180
+#: cinelerra//file.C:1391 cinelerra//fileformat.C:180
 #: cinelerra//filesndfile.C:442
 msgid "Hi Lo"
 msgstr "Hi Lo"
 
 #: cinelerra//filesndfile.C:442
 msgid "Hi Lo"
 msgstr "Hi Lo"
 
-#: cinelerra//file.C:1608
+#: cinelerra//file.C:1598
 msgid "UNKNOWN"
 msgstr "Неизвестно"
 
 msgid "UNKNOWN"
 msgstr "Неизвестно"
 
@@ -2787,7 +2794,7 @@ msgstr "Нет опций аудио для этого формата"
 
 #: cinelerra//filedv.C:1017 cinelerra//fileexr.C:578 cinelerra//filejpeg.C:300
 #: cinelerra//filejpeglist.C:152 cinelerra//filempeg.C:1915
 
 #: cinelerra//filedv.C:1017 cinelerra//fileexr.C:578 cinelerra//filejpeg.C:300
 #: cinelerra//filejpeglist.C:152 cinelerra//filempeg.C:1915
-#: cinelerra//fileogg.C:2163 cinelerra//filepng.C:407 cinelerra//filetga.C:902
+#: cinelerra//fileogg.C:2143 cinelerra//filepng.C:407 cinelerra//filetga.C:902
 #: cinelerra//filetiff.C:588
 msgid ": Video Compression"
 msgstr ": Сжатие видео"
 #: cinelerra//filetiff.C:588
 msgid ": Video Compression"
 msgstr ": Сжатие видео"
@@ -2834,7 +2841,7 @@ msgid "Preset:"
 msgstr "Предустановки"
 
 #: cinelerra//fileffmpeg.C:407 cinelerra//fileffmpeg.C:556
 msgstr "Предустановки"
 
 #: cinelerra//fileffmpeg.C:407 cinelerra//fileffmpeg.C:556
-#: cinelerra//filempeg.C:2027 cinelerra//fileogg.C:2186
+#: cinelerra//filempeg.C:2027 cinelerra//fileogg.C:2166
 msgid "Bitrate:"
 msgstr "Битрейт:"
 
 msgid "Bitrate:"
 msgstr "Битрейт:"
 
@@ -2851,7 +2858,7 @@ msgid ": Video Preset"
 msgstr ": Предустановки видео"
 
 #: cinelerra//fileffmpeg.C:560 cinelerra//filejpeg.C:318
 msgstr ": Предустановки видео"
 
 #: cinelerra//fileffmpeg.C:560 cinelerra//filejpeg.C:318
-#: cinelerra//filejpeglist.C:170 cinelerra//fileogg.C:2191
+#: cinelerra//filejpeglist.C:170 cinelerra//fileogg.C:2171
 #: cinelerra//formatwindow.C:108
 msgid "Quality:"
 msgstr "Качество:"
 #: cinelerra//formatwindow.C:108
 msgid "Quality:"
 msgstr "Качество:"
@@ -2867,7 +2874,7 @@ msgstr "Создание %s\n"
 
 #: cinelerra//fileffmpeg.C:744
 msgid "option"
 
 #: cinelerra//fileffmpeg.C:744
 msgid "option"
-msgstr ""
+msgstr "Опция"
 
 #: cinelerra//fileffmpeg.C:744 plugins/bluebanana/bluebananawindow.C:2005
 msgid "value"
 
 #: cinelerra//fileffmpeg.C:744 plugins/bluebanana/bluebananawindow.C:2005
 msgid "value"
@@ -2879,8 +2886,8 @@ msgstr "кодек"
 
 #: cinelerra//fileffmpeg.C:944 cinelerra//fileffmpeg.C:1343
 #: cinelerra//pluginfclient.C:208 cinelerra//pluginfclient.C:471
 
 #: cinelerra//fileffmpeg.C:944 cinelerra//fileffmpeg.C:1343
 #: cinelerra//pluginfclient.C:208 cinelerra//pluginfclient.C:471
-#: cinelerra//pluginfclient.C:497 cinelerra//preferencesthread.C:599
-#: cinelerra//preferencesthread.C:601 cinelerra//setformat.C:891
+#: cinelerra//pluginfclient.C:497 cinelerra//preferencesthread.C:606
+#: cinelerra//preferencesthread.C:608 cinelerra//setformat.C:891
 msgid "Apply"
 msgstr "Применить"
 
 msgid "Apply"
 msgstr "Применить"
 
@@ -3419,7 +3426,7 @@ msgstr "Удаление шума"
 
 #: cinelerra//filempeg.C:2062
 msgid "Sequence start codes in every GOP"
 
 #: cinelerra//filempeg.C:2062
 msgid "Sequence start codes in every GOP"
-msgstr ""
+msgstr "Старт-коды заголовков последовательности перед каждой GOP"
 
 #: cinelerra//filempeg.C:2095 cinelerra//filempeg.C:2098
 msgid "MPEG-1"
 
 #: cinelerra//filempeg.C:2095 cinelerra//filempeg.C:2098
 msgid "MPEG-1"
@@ -3485,7 +3492,7 @@ msgstr "ATSC 720p"
 msgid "ATSC 1080i"
 msgstr "ATSC 1080i"
 
 msgid "ATSC 1080i"
 msgstr "ATSC 1080i"
 
-#: cinelerra//filempeg.C:2197 cinelerra//fileogg.C:2259
+#: cinelerra//filempeg.C:2197 cinelerra//fileogg.C:2239
 #: cinelerra//filevorbis.C:424
 msgid "Fixed bitrate"
 msgstr "Фикс. битрейт"
 #: cinelerra//filevorbis.C:424
 msgid "Fixed bitrate"
 msgstr "Фикс. битрейт"
@@ -3559,7 +3566,7 @@ msgstr "FileOGG: End of file while searching for codec headers.\n"
 #: cinelerra//fileogg.C:639
 #, c-format
 msgid "Frame content is %dx%d with offset (%d,%d), We do not support this yet. You will get black border.\n"
 #: cinelerra//fileogg.C:639
 #, c-format
 msgid "Frame content is %dx%d with offset (%d,%d), We do not support this yet. You will get black border.\n"
-msgstr "СодеÑ\80жимое ÐºÐ°Ð´Ñ\80а - %dx%d Ñ\81о Ñ\81двигом (%d,%d).\n"
+msgstr "СодеÑ\80жимое ÐºÐ°Ð´Ñ\80а - %dx%d Ñ\81о Ñ\81меÑ\89ением (%d,%d).\n"
 "Мы пока не поддерживаем это. Вы получите чёрные края.\n"
 
 #: cinelerra//fileogg.C:659
 "Мы пока не поддерживаем это. Вы получите чёрные края.\n"
 
 #: cinelerra//fileogg.C:659
@@ -3581,8 +3588,8 @@ msgstr "FileOGG: Illegal seek beyond end of samples\n"
 msgid "FileOGG: Seeking to sample's page failed\n"
 msgstr "FileOGG: Seeking to sample's page failed\n"
 
 msgid "FileOGG: Seeking to sample's page failed\n"
 msgstr "FileOGG: Seeking to sample's page failed\n"
 
-#: cinelerra//fileogg.C:1095 cinelerra//fileogg.C:1299
-#: cinelerra//fileogg.C:1494
+#: cinelerra//fileogg.C:1095 cinelerra//fileogg.C:1274
+#: cinelerra//fileogg.C:1469
 msgid "FileOGG: Cannot find next page while seeking\n"
 msgstr "FileOGG: Cannot find next page while seeking\n"
 
 msgid "FileOGG: Cannot find next page while seeking\n"
 msgstr "FileOGG: Cannot find next page while seeking\n"
 
@@ -3604,111 +3611,111 @@ msgid "FileOGG: ogg_sync_and_get_next_page failed\n"
 msgstr "FileOGG: ogg_sync_and_get_next_page failed\n"
 
 #: cinelerra//fileogg.C:1243
 msgstr "FileOGG: ogg_sync_and_get_next_page failed\n"
 
 #: cinelerra//fileogg.C:1243
-msgid "FileOGG: Seeking to frame failed\n"
-msgstr "FileOGG: Seeking to frame failed\n"
+msgid "FileOGG: seek to frame failed\n"
+msgstr "FileOGG: seek to frame failed\n"
 
 
-#: cinelerra//fileogg.C:1279
-msgid "FileOGG: Seeking to keyframe failed\n"
-msgstr "FileOGG: Seeking to keyframe failed\n"
+#: cinelerra//fileogg.C:1255
+msgid "FileOGG: seek to iframe failed\n"
+msgstr "FileOGG: seek to iframe failed\n"
 
 
-#: cinelerra//fileogg.C:1463
+#: cinelerra//fileogg.C:1438
 #, c-format
 msgid "FileOGG:: Error while seeking to frame's keyframe (frame: %jd, keyframe: %jd)\n"
 msgstr "FileOGG:: Error while seeking to frame's keyframe (frame: %jd, keyframe: %jd)\n"
 
 #, c-format
 msgid "FileOGG:: Error while seeking to frame's keyframe (frame: %jd, keyframe: %jd)\n"
 msgstr "FileOGG:: Error while seeking to frame's keyframe (frame: %jd, keyframe: %jd)\n"
 
-#: cinelerra//fileogg.C:1474
+#: cinelerra//fileogg.C:1448
 #, c-format
 msgid "FileOGG:: Error while seeking to keyframe, wrong keyframe number (frame: %jd, keyframe: %jd)\n"
 msgstr "FileOGG:: Error while seeking to keyframe, wrong keyframe number (frame: %jd, keyframe: %jd)\n"
 
 #, c-format
 msgid "FileOGG:: Error while seeking to keyframe, wrong keyframe number (frame: %jd, keyframe: %jd)\n"
 msgstr "FileOGG:: Error while seeking to keyframe, wrong keyframe number (frame: %jd, keyframe: %jd)\n"
 
-#: cinelerra//fileogg.C:1502
+#: cinelerra//fileogg.C:1479
 msgid "FileOGG: Expecting keyframe, but didn't get it\n"
 msgstr "FileOGG: Expecting keyframe, but didn't get it\n"
 
 msgid "FileOGG: Expecting keyframe, but didn't get it\n"
 msgstr "FileOGG: Expecting keyframe, but didn't get it\n"
 
-#: cinelerra//fileogg.C:1518
+#: cinelerra//fileogg.C:1495
 #, c-format
 msgid "FileOGG: theora_decode_YUVout failed with code %i\n"
 msgstr "FileOGG: theora_decode_YUVout failed with code %i\n"
 
 #, c-format
 msgid "FileOGG: theora_decode_YUVout failed with code %i\n"
 msgstr "FileOGG: theora_decode_YUVout failed with code %i\n"
 
-#: cinelerra//fileogg.C:1580
+#: cinelerra//fileogg.C:1557
 msgid "FileOGG: Cannot find next page while trying to decode more samples\n"
 msgstr "FileOGG: Cannot find next page while trying to decode more samples\n"
 
 msgid "FileOGG: Cannot find next page while trying to decode more samples\n"
 msgstr "FileOGG: Cannot find next page while trying to decode more samples\n"
 
-#: cinelerra//fileogg.C:1620
+#: cinelerra//fileogg.C:1600
 #, c-format
 msgid "max samples=%d\n"
 msgstr ""
 
 #, c-format
 msgid "max samples=%d\n"
 msgstr ""
 
-#: cinelerra//fileogg.C:1681
+#: cinelerra//fileogg.C:1661
 msgid "FileOGG: Error at finding out what to read from file\n"
 msgstr "FileOGG: Error at finding out what to read from file\n"
 
 msgid "FileOGG: Error at finding out what to read from file\n"
 msgstr "FileOGG: Error at finding out what to read from file\n"
 
-#: cinelerra//fileogg.C:1703
+#: cinelerra//fileogg.C:1683
 msgid "Error while seeking to sample\n"
 msgstr "Error while seeking to sample\n"
 
 msgid "Error while seeking to sample\n"
 msgstr "Error while seeking to sample\n"
 
-#: cinelerra//fileogg.C:1753
+#: cinelerra//fileogg.C:1733
 #, c-format
 msgid "FileOGG:: History not aligned properly \n"
 msgstr "FileOGG:: History not aligned properly \n"
 
 #, c-format
 msgid "FileOGG:: History not aligned properly \n"
 msgstr "FileOGG:: History not aligned properly \n"
 
-#: cinelerra//fileogg.C:1754
+#: cinelerra//fileogg.C:1734
 #, c-format
 msgid "\tnext_sample_position: %jd, length: %jd\n"
 msgstr "\tnext_sample_position: %jd, length: %jd\n"
 
 #, c-format
 msgid "\tnext_sample_position: %jd, length: %jd\n"
 msgstr "\tnext_sample_position: %jd, length: %jd\n"
 
-#: cinelerra//fileogg.C:1755
+#: cinelerra//fileogg.C:1735
 #, c-format
 msgid "\thistory_start: %jd, length: %jd\n"
 msgstr "\thistory_start: %jd, length: %jd\n"
 
 #, c-format
 msgid "\thistory_start: %jd, length: %jd\n"
 msgstr "\thistory_start: %jd, length: %jd\n"
 
-#: cinelerra//fileogg.C:1774
+#: cinelerra//fileogg.C:1754
 msgid "error writing audio page\n"
 msgstr "error writing audio page\n"
 
 msgid "error writing audio page\n"
 msgstr "error writing audio page\n"
 
-#: cinelerra//fileogg.C:1788
+#: cinelerra//fileogg.C:1768
 msgid "error writing video page\n"
 msgstr "error writing video page\n"
 
 msgid "error writing video page\n"
 msgstr "error writing video page\n"
 
-#: cinelerra//fileogg.C:1962
+#: cinelerra//fileogg.C:1942
 #, c-format
 msgid "FileOGG: theora_encode_YUVin failed with code %i\n"
 msgstr "FileOGG: theora_encode_YUVin failed with code %i\n"
 
 #, c-format
 msgid "FileOGG: theora_encode_YUVin failed with code %i\n"
 msgstr "FileOGG: theora_encode_YUVin failed with code %i\n"
 
-#: cinelerra//fileogg.C:2065 cinelerra//filevorbis.C:393
+#: cinelerra//fileogg.C:2045 cinelerra//filevorbis.C:393
 msgid "Min bitrate:"
 msgstr "Мин. битрейт:"
 
 msgid "Min bitrate:"
 msgstr "Мин. битрейт:"
 
-#: cinelerra//fileogg.C:2069 cinelerra//filevorbis.C:397
+#: cinelerra//fileogg.C:2049 cinelerra//filevorbis.C:397
 msgid "Avg bitrate:"
 msgstr "Усред. битрейт:"
 
 msgid "Avg bitrate:"
 msgstr "Усред. битрейт:"
 
-#: cinelerra//fileogg.C:2074 cinelerra//filevorbis.C:402
+#: cinelerra//fileogg.C:2054 cinelerra//filevorbis.C:402
 msgid "Max bitrate:"
 msgstr "Макс. битрейт:"
 
 msgid "Max bitrate:"
 msgstr "Макс. битрейт:"
 
-#: cinelerra//fileogg.C:2091
+#: cinelerra//fileogg.C:2071
 msgid "Average bitrate"
 msgstr "Усред. битрейт"
 
 msgid "Average bitrate"
 msgstr "Усред. битрейт"
 
-#: cinelerra//fileogg.C:2103 cinelerra//filevorbis.C:436
+#: cinelerra//fileogg.C:2083 cinelerra//filevorbis.C:436
 msgid "Variable bitrate"
 msgstr "Переменный битрейт"
 
 msgid "Variable bitrate"
 msgstr "Переменный битрейт"
 
-#: cinelerra//fileogg.C:2208
+#: cinelerra//fileogg.C:2188
 msgid "Keyframe frequency:"
 msgstr "Частота ключ. кадров"
 
 msgid "Keyframe frequency:"
 msgstr "Частота ключ. кадров"
 
-#: cinelerra//fileogg.C:2214
+#: cinelerra//fileogg.C:2194
 msgid "Keyframe force frequency:"
 msgstr "Принудит.част. ключ. кадр."
 
 msgid "Keyframe force frequency:"
 msgstr "Принудит.част. ключ. кадр."
 
-#: cinelerra//fileogg.C:2220 plugins/denoisemjpeg/denoisemjpeg.C:377
+#: cinelerra//fileogg.C:2200 plugins/denoisemjpeg/denoisemjpeg.C:377
 #: plugins/greycstoration/greycstorationwindow.C:48
 msgid "Sharpness:"
 msgstr "Резкость:"
 
 #: plugins/greycstoration/greycstorationwindow.C:48
 msgid "Sharpness:"
 msgstr "Резкость:"
 
-#: cinelerra//fileogg.C:2273
+#: cinelerra//fileogg.C:2253
 msgid "Fixed quality"
 msgstr "Фикс. качество"
 
 msgid "Fixed quality"
 msgstr "Фикс. качество"
 
@@ -3955,17 +3962,17 @@ msgstr "Создание %s."
 msgid "IndexFile::draw_index: index has 0 zoom\n"
 msgstr "IndexFile::draw_index: index has 0 zoom\n"
 
 msgid "IndexFile::draw_index: index has 0 zoom\n"
 msgstr "IndexFile::draw_index: index has 0 zoom\n"
 
-#: cinelerra//indexstate.C:211
+#: cinelerra//indexstate.C:216
 #, c-format
 msgid "IndexState::write_index Couldn't write index file %s to disk.\n"
 msgstr "IndexState::write_index Couldn't write index file %s to disk.\n"
 
 #, c-format
 msgid "IndexState::write_index Couldn't write index file %s to disk.\n"
 msgstr "IndexState::write_index Couldn't write index file %s to disk.\n"
 
-#: cinelerra//indexstate.C:263
+#: cinelerra//indexstate.C:268
 #, c-format
 msgid "IndexState::write_markers Couldn't write marker file %s to disk.\n"
 msgstr "IndexState::write_markers Couldn't write marker file %s to disk.\n"
 
 #, c-format
 msgid "IndexState::write_markers Couldn't write marker file %s to disk.\n"
 msgstr "IndexState::write_markers Couldn't write marker file %s to disk.\n"
 
-#: cinelerra//indexstate.C:300
+#: cinelerra//indexstate.C:305
 #, c-format
 msgid ""
 "IndexState::read_markers marker file version mismatched\n"
 #, c-format
 msgid ""
 "IndexState::read_markers marker file version mismatched\n"
@@ -4001,120 +4008,124 @@ msgstr "Флаги"
 msgid "Frames per foot:"
 msgstr "Кадров на фут"
 
 msgid "Frames per foot:"
 msgstr "Кадров на фут"
 
-#: cinelerra//interfaceprefs.C:150
+#: cinelerra//interfaceprefs.C:153
 msgid "Index files"
 msgstr "Индексные файлы"
 
 msgid "Index files"
 msgstr "Индексные файлы"
 
-#: cinelerra//interfaceprefs.C:155
+#: cinelerra//interfaceprefs.C:158
 msgid "Index files go here:"
 msgstr "Расположение индекс. файлов:"
 
 msgid "Index files go here:"
 msgstr "Расположение индекс. файлов:"
 
-#: cinelerra//interfaceprefs.C:163
+#: cinelerra//interfaceprefs.C:165
 msgid "Index Path"
 msgstr "Путь к индексным файлам"
 
 msgid "Index Path"
 msgstr "Путь к индексным файлам"
 
-#: cinelerra//interfaceprefs.C:164
+#: cinelerra//interfaceprefs.C:166
 msgid "Select the directory for index files"
 msgstr "Выберите каталог для индексных файлов"
 
 msgid "Select the directory for index files"
 msgstr "Выберите каталог для индексных файлов"
 
-#: cinelerra//interfaceprefs.C:169
+#: cinelerra//interfaceprefs.C:171
 msgid "Size of index file:"
 msgstr "Размер индексного файла:"
 
 msgid "Size of index file:"
 msgstr "Размер индексного файла:"
 
-#: cinelerra//interfaceprefs.C:176
+#: cinelerra//interfaceprefs.C:178
 msgid "Number of index files to keep:"
 msgstr "Сохранять индексных файлов:"
 
 msgid "Number of index files to keep:"
 msgstr "Сохранять индексных файлов:"
 
-#: cinelerra//interfaceprefs.C:189
+#: cinelerra//interfaceprefs.C:191
 msgid "Editing"
 msgstr "Редактирование"
 
 msgid "Editing"
 msgstr "Редактирование"
 
-#: cinelerra//interfaceprefs.C:193
+#: cinelerra//interfaceprefs.C:195
 msgid "Keyframe reticle:"
 msgstr "Визирные линии\n"
 "  ключев. кадров:"
 
 msgid "Keyframe reticle:"
 msgstr "Визирные линии\n"
 "  ключев. кадров:"
 
-#: cinelerra//interfaceprefs.C:209
+#: cinelerra//interfaceprefs.C:211
 msgid "PIN:"
 msgstr "PIN"
 
 msgid "PIN:"
 msgstr "PIN"
 
-#: cinelerra//interfaceprefs.C:232
+#: cinelerra//interfaceprefs.C:234
 msgid "Clicking on edit boundaries does what:"
 msgstr "Поведение кнопок мыши на границах редактиров-я:"
 
 msgid "Clicking on edit boundaries does what:"
 msgstr "Поведение кнопок мыши на границах редактиров-я:"
 
-#: cinelerra//interfaceprefs.C:234
+#: cinelerra//interfaceprefs.C:236
 msgid "Button 1:"
 msgstr "Левая:"
 
 msgid "Button 1:"
 msgstr "Левая:"
 
-#: cinelerra//interfaceprefs.C:243
+#: cinelerra//interfaceprefs.C:245
 msgid "Button 2:"
 msgstr "Средняя:"
 
 msgid "Button 2:"
 msgstr "Средняя:"
 
-#: cinelerra//interfaceprefs.C:251
+#: cinelerra//interfaceprefs.C:253
 msgid "Button 3:"
 msgstr "Правая:"
 
 msgid "Button 3:"
 msgstr "Правая:"
 
-#: cinelerra//interfaceprefs.C:261
+#: cinelerra//interfaceprefs.C:263
 msgid "Min DB for meter:"
 msgstr "Мин. шкалы дБ:"
 
 msgid "Min DB for meter:"
 msgstr "Мин. шкалы дБ:"
 
-#: cinelerra//interfaceprefs.C:267
+#: cinelerra//interfaceprefs.C:269
 msgid "Max DB:"
 msgstr "Макс. дБ:"
 
 msgid "Max DB:"
 msgstr "Макс. дБ:"
 
-#: cinelerra//interfaceprefs.C:275
+#: cinelerra//interfaceprefs.C:277
 msgid "Theme:"
 msgstr "Тема:"
 
 msgid "Theme:"
 msgstr "Тема:"
 
-#: cinelerra//interfaceprefs.C:661
+#: cinelerra//interfaceprefs.C:663
 msgid "Use thumbnails in resource window"
 msgstr "Показывать миниатюры в окне 'Ресурсы'"
 
 msgid "Use thumbnails in resource window"
 msgstr "Показывать миниатюры в окне 'Ресурсы'"
 
-#: cinelerra//interfaceprefs.C:678
+#: cinelerra//interfaceprefs.C:680
 msgid "Show tip of the day"
 msgstr "Показывать совет дня"
 
 msgid "Show tip of the day"
 msgstr "Показывать совет дня"
 
-#: cinelerra//interfaceprefs.C:691
+#: cinelerra//interfaceprefs.C:693
 msgid "ffmpeg probe warns rebuild indexes"
 msgid "ffmpeg probe warns rebuild indexes"
-msgstr "Ð\9fÑ\80и Ñ\81мене Ð¿Ñ\80иоÑ\80иÑ\82еÑ\82а FFmpeg - Ð¿Ñ\80едÑ\83пÑ\80еждение"
+msgstr "Ð\9fÑ\80едÑ\83пÑ\80еждение Ð¿Ñ\80и Ñ\81мене Ð¿Ñ\80иоÑ\80иÑ\82еÑ\82а FFmpeg"
 
 
-#: cinelerra//interfaceprefs.C:704
+#: cinelerra//interfaceprefs.C:706
 msgid "EDL version warns if mismatched"
 msgstr ""
 
 msgid "EDL version warns if mismatched"
 msgstr ""
 
-#: cinelerra//interfaceprefs.C:717
+#: cinelerra//interfaceprefs.C:719
+msgid "Create Bluray warns if not root"
+msgstr ""
+
+#: cinelerra//interfaceprefs.C:732
 msgid "Popups activate on button up"
 msgstr "Вход в контекст. меню, отпустив правую к. мыши"
 
 msgid "Popups activate on button up"
 msgstr "Вход в контекст. меню, отпустив правую к. мыши"
 
-#: cinelerra//interfaceprefs.C:733
+#: cinelerra//interfaceprefs.C:748
 msgid "Scan for commercials during toc build"
 msgstr "Сканировать на рекламу при создании TOC"
 
 msgid "Scan for commercials during toc build"
 msgstr "Сканировать на рекламу при создании TOC"
 
-#: cinelerra//interfaceprefs.C:747
+#: cinelerra//interfaceprefs.C:762
 msgid "Android Remote Control"
 msgstr "Удалённое управление с Android"
 
 msgid "Android Remote Control"
 msgstr "Удалённое управление с Android"
 
-#: cinelerra//interfaceprefs.C:798
+#: cinelerra//interfaceprefs.C:813
 msgid "Shell Commands"
 msgstr "Shell - команды"
 
 msgid "Shell Commands"
 msgstr "Shell - команды"
 
-#: cinelerra//interfaceprefs.C:802
+#: cinelerra//interfaceprefs.C:817
 msgid "Main Menu Shell Commands"
 msgstr "Главное меню shell - команд"
 
 msgid "Main Menu Shell Commands"
 msgstr "Главное меню shell - команд"
 
-#: cinelerra//interfaceprefs.C:812
+#: cinelerra//interfaceprefs.C:827
 msgid "Import images with a duration of"
 msgstr "Длительность импортир-нных изображ-й"
 
 msgid "Import images with a duration of"
 msgstr "Длительность импортир-нных изображ-й"
 
-#: cinelerra//interfaceprefs.C:867
+#: cinelerra//interfaceprefs.C:882
 msgid "Never"
 msgstr "Не показывать"
 
 msgid "Never"
 msgstr "Не показывать"
 
-#: cinelerra//interfaceprefs.C:868
+#: cinelerra//interfaceprefs.C:883
 msgid "Dragging"
 msgstr "При перетаскивании кл. к."
 
 msgid "Dragging"
 msgstr "При перетаскивании кл. к."
 
-#: cinelerra//interfaceprefs.C:869
+#: cinelerra//interfaceprefs.C:884
 msgid "Always"
 msgstr "Всегда показывать"
 
 msgid "Always"
 msgstr "Всегда показывать"
 
@@ -4144,11 +4155,12 @@ msgstr "Без чередования"
 
 #: cinelerra//interlacemodes.h:52
 #: plugins/deinterlace-cv/deinterwindow-cv.C:273
 
 #: cinelerra//interlacemodes.h:52
 #: plugins/deinterlace-cv/deinterwindow-cv.C:273
-#: plugins/motion/motionwindow.C:982 plugins/motion2point/motionwindow.C:777
-#: plugins/motion2point/motionwindow.C:798
-#: plugins/motion.new/motionwindow.C:943 plugins/motion.new/motionwindow.C:963
+#: plugins/motion/motionwindow.C:758 plugins/motion2point/motionwindow.C:772
+#: plugins/motion2point/motionwindow.C:793
+#: plugins/motion-cv/motionwindow-cv.C:621
+#: plugins/motion-hv/motionwindow-hv.C:955
 msgid "Do Nothing"
 msgid "Do Nothing"
-msgstr "Ð\9dе Ð¸Ñ\81полÑ\8cзовать"
+msgstr "Ð\9dиÑ\87его Ð½Ðµ Ð´ÐµÐ»ать"
 
 #: cinelerra//interlacemodes.h:55
 msgid "Shift Up 1 pixel"
 
 #: cinelerra//interlacemodes.h:55
 msgid "Shift Up 1 pixel"
@@ -4342,29 +4354,29 @@ msgstr "Вложенная последовательность"
 
 #: cinelerra//loadmode.C:82 cinelerra//loadmode.C:102
 msgid "Insertion strategy:"
 
 #: cinelerra//loadmode.C:82 cinelerra//loadmode.C:102
 msgid "Insertion strategy:"
-msgstr "Ð\9cеÑ\82од Ð¾Ñ\82кÑ\80Ñ\8bÑ\82иÑ\8f Ñ\80еÑ\81Ñ\83Ñ\80Ñ\81ов:"
+msgstr "СÑ\82Ñ\80аÑ\82егиÑ\8f Ð¾Ñ\82кÑ\80Ñ\8bÑ\82иÑ\8f:"
 
 #: cinelerra//localsession.C:63
 #, c-format
 msgid "Program"
 msgstr "Программа"
 
 
 #: cinelerra//localsession.C:63
 #, c-format
 msgid "Program"
 msgstr "Программа"
 
-#: cinelerra//main.C:148
+#: cinelerra//main.C:158
 #, c-format
 msgid ": Could not set locale.\n"
 msgstr ": Could not set locale.\n"
 
 #, c-format
 msgid ": Could not set locale.\n"
 msgstr ": Could not set locale.\n"
 
-#: cinelerra//main.C:191
+#: cinelerra//main.C:201
 #, c-format
 msgid "%s: -c needs a filename.\n"
 msgstr "%s: -c требует имя файла.\n"
 
 #, c-format
 msgid "%s: -c needs a filename.\n"
 msgstr "%s: -c требует имя файла.\n"
 
-#: cinelerra//main.C:217
+#: cinelerra//main.C:227
 #, c-format
 msgid "-b may not be used by the user.\n"
 msgstr "-b не может быть использовано пользователем.\n"
 
 #, c-format
 msgid "-b may not be used by the user.\n"
 msgstr "-b не может быть использовано пользователем.\n"
 
-#: cinelerra//main.C:277
+#: cinelerra//main.C:287
 #, c-format
 msgid ""
 "\n"
 #, c-format
 msgid ""
 "\n"
@@ -4372,47 +4384,50 @@ msgid ""
 msgstr "\n"
 "Использование:\n"
 
 msgstr "\n"
 "Использование:\n"
 
-#: cinelerra//main.C:278
+#: cinelerra//main.C:288
 #, c-format
 msgid ""
 "%s [-f] [-c configuration] [-d port] [-n nice] [-r batch file] [filenames]\n"
 "\n"
 #, c-format
 msgid ""
 "%s [-f] [-c configuration] [-d port] [-n nice] [-r batch file] [filenames]\n"
 "\n"
-msgstr "%s [-f] [-c конфигурация] [-d порт] [-n значение для количества заданий] [-r пакетный файл] [имена открываемых файлов]\n"
+msgstr "%s [-f] [-c конфигурация] [-d порт] [-n значение 'Nice'] [-r пакетный файл] [имена файлов]\n"
 "\n"
 
 "\n"
 
-#: cinelerra//main.C:279
+#: cinelerra//main.C:289
 #, c-format
 msgid "-d = Run in the background as renderfarm client.  The port (400) is optional.\n"
 msgstr "-d = Запуск в фоновом режиме как клиента распределённого рендеринга.\n"
 "Значение 400 в поле \"Порт\" установлено по умолчанию и может быть изменено.\n"
 
 #, c-format
 msgid "-d = Run in the background as renderfarm client.  The port (400) is optional.\n"
 msgstr "-d = Запуск в фоновом режиме как клиента распределённого рендеринга.\n"
 "Значение 400 в поле \"Порт\" установлено по умолчанию и может быть изменено.\n"
 
-#: cinelerra//main.C:280
+#: cinelerra//main.C:290
 #, c-format
 msgid "-f = Run in the foreground as renderfarm client.  Substitute for -d.\n"
 #, c-format
 msgid "-f = Run in the foreground as renderfarm client.  Substitute for -d.\n"
-msgstr "-f = Запуск в приоритетном режиме как клиента распределённого рендеринга.Альтернатива для -d.\n"
+msgstr "-f = Запуск в приоритетном режиме как клиента распределённого рендеринга.\n"
+"Альтернатива для -d.\n"
 
 
-#: cinelerra//main.C:281
+#: cinelerra//main.C:291
 #, c-format
 msgid "-n = Nice value if running as renderfarm client. (20)\n"
 #, c-format
 msgid "-n = Nice value if running as renderfarm client. (20)\n"
-msgstr "-n = Значение для количества заданий при запуске как клиента распределённого рендеринга. (по-умолчанию 20).\n"
+msgstr "-n = Значение 'Nice', влияющие на приоритет процесса при запуске как клиента\n"
+"распределённого рендеринга. (по умолчанию = 20).\n"
 
 
-#: cinelerra//main.C:282
+#: cinelerra//main.C:292
 #, c-format
 msgid "-c = Configuration file to use instead of %s/%s.\n"
 msgstr "-c = Запуск с другим конфигурационным файлом вместо %s/%s.\n"
 
 #, c-format
 msgid "-c = Configuration file to use instead of %s/%s.\n"
 msgstr "-c = Запуск с другим конфигурационным файлом вместо %s/%s.\n"
 
-#: cinelerra//main.C:284
+#: cinelerra//main.C:294
 #, c-format
 msgid "-r = batch render the contents of the batch file (%s/%s) with no GUI.  batch file is optional.\n"
 #, c-format
 msgid "-r = batch render the contents of the batch file (%s/%s) with no GUI.  batch file is optional.\n"
-msgstr "-r = пакетный рендеринг содержимого из пакетного файла (%s/%s) (без GUI). Опция `пакетный файл`- дополнительная.\n"
+msgstr "-r = Пакетный рендеринг содержимого из пакетного файла (%s/%s) (без GUI).\n"
+"Опция `пакетный файл`- дополнительная.\n"
 
 
-#: cinelerra//main.C:286
+#: cinelerra//main.C:296
 #, c-format
 msgid ""
 "filenames = files to load\n"
 "\n"
 "\n"
 #, c-format
 msgid ""
 "filenames = files to load\n"
 "\n"
 "\n"
-msgstr "имена файлов = открываемых файлов\n"
+msgstr "имена Ñ\84айлов = Ð¸Ð¼ÐµÐ½Ð° Ð¾Ñ\82кÑ\80Ñ\8bваемÑ\8bÑ\85 Ñ\84айлов\n"
 "\n"
 "\n"
 
 "\n"
 "\n"
 
@@ -4714,8 +4729,8 @@ msgid "paste subttl"
 msgstr "Вставить субтитры"
 
 #: cinelerra//mainmenu.C:1245
 msgstr "Вставить субтитры"
 
 #: cinelerra//mainmenu.C:1245
-msgid "Set background render"
-msgstr "Фоновый рендеринг"
+msgid "Set background rendering"
+msgstr ""
 
 #: cinelerra//mainmenu.C:1263
 msgid "Edit labels"
 
 #: cinelerra//mainmenu.C:1263
 msgid "Edit labels"
@@ -4806,7 +4821,7 @@ msgstr ": Переход к ..."
 msgid "hour  min     sec     msec"
 msgstr "час  мин  сек    мсек"
 
 msgid "hour  min     sec     msec"
 msgstr "час  мин  сек    мсек"
 
-#: cinelerra//mediadb.C:834
+#: cinelerra//mediadb.C:838
 #, c-format
 msgid " find timeline frame_id(%d) failed\n"
 msgstr " find timeline frame_id(%d) failed\n"
 #, c-format
 msgid " find timeline frame_id(%d) failed\n"
 msgstr " find timeline frame_id(%d) failed\n"
@@ -4932,34 +4947,35 @@ msgstr "Messages::write_message"
 
 #: cinelerra//meterpanel.C:394
 msgid "Show meters"
 
 #: cinelerra//meterpanel.C:394
 msgid "Show meters"
-msgstr "Показывать уровни звука"
+msgstr "Показывать измерители\n"
+"уровня звука"
 
 
-#: cinelerra//mwindow.C:589
+#: cinelerra//mwindow.C:577
 #, c-format
 msgid "MWindow::init_plugins: can't create plugin index: %s\n"
 msgstr "MWindow::init_plugins: can't create plugin index: %s\n"
 
 #, c-format
 msgid "MWindow::init_plugins: can't create plugin index: %s\n"
 msgstr "MWindow::init_plugins: can't create plugin index: %s\n"
 
-#: cinelerra//mwindow.C:650
+#: cinelerra//mwindow.C:638
 #, c-format
 msgid "MWindow::init_ladspa_index: can't create plugin index: %s\n"
 msgstr "MWindow::init_ladspa_index: can't create plugin index: %s\n"
 
 #, c-format
 msgid "MWindow::init_ladspa_index: can't create plugin index: %s\n"
 msgstr "MWindow::init_ladspa_index: can't create plugin index: %s\n"
 
-#: cinelerra//mwindow.C:930
+#: cinelerra//mwindow.C:923
 #, c-format
 msgid "MWindow::init_theme: prefered theme %s not found.\n"
 msgstr "MWindow::init_theme: prefered theme %s not found.\n"
 
 #, c-format
 msgid "MWindow::init_theme: prefered theme %s not found.\n"
 msgstr "MWindow::init_theme: prefered theme %s not found.\n"
 
-#: cinelerra//mwindow.C:934
+#: cinelerra//mwindow.C:927
 #, c-format
 msgid "MWindow::init_theme: trying default theme %s\n"
 msgstr "MWindow::init_theme: trying default theme %s\n"
 
 #, c-format
 msgid "MWindow::init_theme: trying default theme %s\n"
 msgstr "MWindow::init_theme: trying default theme %s\n"
 
-#: cinelerra//mwindow.C:944
+#: cinelerra//mwindow.C:937
 #, c-format
 msgid "MWindow::init_theme: theme_plugin not found.\n"
 msgstr "MWindow::init_theme: theme_plugin not found.\n"
 
 #, c-format
 msgid "MWindow::init_theme: theme_plugin not found.\n"
 msgstr "MWindow::init_theme: theme_plugin not found.\n"
 
-#: cinelerra//mwindow.C:950
+#: cinelerra//mwindow.C:943
 #, c-format
 msgid "MWindow::init_theme: unable to load theme %s\n"
 msgstr "MWindow::init_theme: unable to load theme %s\n"
 #, c-format
 msgid "MWindow::init_theme: unable to load theme %s\n"
 msgstr "MWindow::init_theme: unable to load theme %s\n"
@@ -5076,29 +5092,29 @@ msgstr "Инициализация GUI"
 msgid "Initializing Fonts"
 msgstr "Инициализация шрифтов"
 
 msgid "Initializing Fonts"
 msgstr "Инициализация шрифтов"
 
-#: cinelerra//mwindow.C:2947
+#: cinelerra//mwindow.C:2958
 #, c-format
 msgid "Couldn't open %s for writing."
 msgstr "Couldn't open %s for writing."
 
 #, c-format
 msgid "Couldn't open %s for writing."
 msgstr "Couldn't open %s for writing."
 
-#: cinelerra//mwindow.C:3108
+#: cinelerra//mwindow.C:3119
 msgid "remove assets"
 msgstr "удалить ресурсы"
 
 msgid "remove assets"
 msgstr "удалить ресурсы"
 
-#: cinelerra//mwindow.C:3340
+#: cinelerra//mwindow.C:3351
 #, c-format
 msgid "Using %s"
 msgstr "Использование %s"
 
 #, c-format
 msgid "Using %s"
 msgstr "Использование %s"
 
-#: cinelerra//mwindow.C:3477 cinelerra//mwindowedit.C:234
-#: cinelerra//mwindowedit.C:300 cinelerra//preferencesthread.C:240
+#: cinelerra//mwindow.C:3488 cinelerra//mwindowedit.C:234
+#: cinelerra//mwindowedit.C:300 cinelerra//preferencesthread.C:247
 msgid ""
 "This project's dimensions are not multiples of 4 so\n"
 "it can't be rendered by OpenGL."
 msgstr "Размер проекта не кратен 4.\n"
 "Невозможно выполнить OpenGL-рендеринг."
 
 msgid ""
 "This project's dimensions are not multiples of 4 so\n"
 "it can't be rendered by OpenGL."
 msgstr "Размер проекта не кратен 4.\n"
 "Невозможно выполнить OpenGL-рендеринг."
 
-#: cinelerra//mwindow.C:3610
+#: cinelerra//mwindow.C:3621
 msgid "select asset"
 msgstr "выберите ресурс"
 
 msgid "select asset"
 msgstr "выберите ресурс"
 
@@ -5255,7 +5271,7 @@ msgstr "применить переход"
 #: cinelerra//mwindowedit.C:2009 cinelerra//mwindowedit.C:2030
 #, c-format
 msgid "No default transition %s found."
 #: cinelerra//mwindowedit.C:2009 cinelerra//mwindowedit.C:2030
 #, c-format
 msgid "No default transition %s found."
-msgstr "Переход по-умолчанию (станд.) %s не найден."
+msgstr "Переход по умолчанию (станд.) %s не найден."
 
 #: cinelerra//mwindowedit.C:2057
 msgid "shuffle edits"
 
 #: cinelerra//mwindowedit.C:2057
 msgid "shuffle edits"
@@ -5335,14 +5351,16 @@ msgid ": Program"
 msgstr ": Программа"
 
 #: cinelerra//mwindowgui.C:2279 cinelerra//mwindowgui.C:2290
 msgstr ": Программа"
 
 #: cinelerra//mwindowgui.C:2279 cinelerra//mwindowgui.C:2290
-#: cinelerra//preferencesthread.C:226
+#: cinelerra//preferencesthread.C:233
 msgid "Try FFMpeg first"
 msgid "Try FFMpeg first"
-msgstr ""
+msgstr "Включён приоритет FFmpeg\n"
+"при сборе инфо. об открываемом файле"
 
 #: cinelerra//mwindowgui.C:2279 cinelerra//mwindowgui.C:2290
 
 #: cinelerra//mwindowgui.C:2279 cinelerra//mwindowgui.C:2290
-#: cinelerra//preferencesthread.C:226
+#: cinelerra//preferencesthread.C:233
 msgid "Try FFMpeg last"
 msgid "Try FFMpeg last"
-msgstr ""
+msgstr "Выключен приоритет FFmpeg\n"
+"при сборе инфо. об открываемом файле"
 
 #: cinelerra//mwindowgui.C:2292
 msgid "Changing the base codecs may require rebuilding indexes."
 
 #: cinelerra//mwindowgui.C:2292
 msgid "Changing the base codecs may require rebuilding indexes."
@@ -5522,7 +5540,7 @@ msgstr "Cinelerra: Новая папка"
 
 #: cinelerra//mwindow.inc:95
 msgid "Cinelerra: New Project"
 
 #: cinelerra//mwindow.inc:95
 msgid "Cinelerra: New Project"
-msgstr "Cinelerra-CV: Новый проект"
+msgstr "Cinelerra: Новый проект"
 
 #: cinelerra//mwindow.inc:96
 msgid "Cinelerra: Normalize"
 
 #: cinelerra//mwindow.inc:96
 msgid "Cinelerra: Normalize"
@@ -5631,7 +5649,7 @@ msgstr "Cinelerra: Подтвержд-е сканир-я"
 
 #: cinelerra//mwindow.inc:122
 msgid "Cinelerra: Scopes"
 
 #: cinelerra//mwindow.inc:122
 msgid "Cinelerra: Scopes"
-msgstr ""
+msgstr "Cinelerra: Видеоскоп"
 
 #: cinelerra//mwindow.inc:123
 msgid "Cinelerra: Set edit title"
 
 #: cinelerra//mwindow.inc:123
 msgid "Cinelerra: Set edit title"
@@ -5709,6 +5727,14 @@ msgstr "Cinelerra: Просмотр"
 msgid "Cinelerra: Warning"
 msgstr "Cinelerra: Предупреждение"
 
 msgid "Cinelerra: Warning"
 msgstr "Cinelerra: Предупреждение"
 
+#: cinelerra//new.C:57
+msgid "New Project..."
+msgstr "Новый проект..."
+
+#: cinelerra//new.C:139
+msgid "New Project"
+msgstr "Новый проект"
+
 #: cinelerra//new.C:230
 msgid ": New Project"
 msgstr ": Новый проект"
 #: cinelerra//new.C:230
 msgid ": New Project"
 msgstr ": Новый проект"
@@ -5817,122 +5843,126 @@ msgstr "Размер кэша (МБ):"
 msgid "Seconds to preroll renders:"
 msgstr "Секунд предрендеринга:"
 
 msgid "Seconds to preroll renders:"
 msgstr "Секунд предрендеринга:"
 
-#: cinelerra//performanceprefs.C:112 cinelerra//performanceprefs.C:117
+#: cinelerra//performanceprefs.C:104
+msgid "Project SMP cpus:"
+msgstr "Количество CPU (SMP), используемых плагинами:"
+
+#: cinelerra//performanceprefs.C:119 cinelerra//performanceprefs.C:124
 msgid "(must be root)"
 msgid "(must be root)"
-msgstr "(должны быть root)"
+msgstr "(Ð\92Ñ\8b Ð´Ð¾Ð»Ð¶Ð½Ñ\8b Ð±Ñ\8bÑ\82Ñ\8c root)"
 
 
-#: cinelerra//performanceprefs.C:134
+#: cinelerra//performanceprefs.C:141
 msgid "Background Rendering (Video only)"
 msgstr "Фоновый рендеринг (только видео)"
 
 msgid "Background Rendering (Video only)"
 msgstr "Фоновый рендеринг (только видео)"
 
-#: cinelerra//performanceprefs.C:142
+#: cinelerra//performanceprefs.C:149
 msgid "Frames per background rendering job:"
 msgid "Frames per background rendering job:"
-msgstr "Ð\9aолиÑ\87еÑ\81Ñ\82во ÐºÐ°Ð´Ñ\80ов Ð½Ð° ÐºÐ°Ð¶Ð´Ñ\83Ñ\8e Ñ\84оновÑ\83Ñ\8e Ð·Ð°Ð´Ð°Ñ\87Ñ\83:"
+msgstr "Ð\9aадÑ\80ов Ñ\84он. Ñ\80-га Ð½Ð° ÐºÐ°Ð¶Ð´Ð¾Ðµ Ð·Ð°Ð´Ð°Ð½Ð¸Ðµ Ñ\80аÑ\81пÑ\80ед. Ñ\80-га:"
 
 
-#: cinelerra//performanceprefs.C:150
+#: cinelerra//performanceprefs.C:157
 msgid "Frames to preroll background:"
 msgstr "Кадров фонового предрендеринга:"
 
 msgid "Frames to preroll background:"
 msgstr "Кадров фонового предрендеринга:"
 
-#: cinelerra//performanceprefs.C:161
+#: cinelerra//performanceprefs.C:168
 msgid "Output for background rendering:"
 msgstr "Вывод для фонового рендеринга:"
 
 msgid "Output for background rendering:"
 msgstr "Вывод для фонового рендеринга:"
 
-#: cinelerra//performanceprefs.C:185
+#: cinelerra//performanceprefs.C:192
 msgid "Render Farm"
 msgstr "Распределённый рендеринг"
 
 msgid "Render Farm"
 msgstr "Распределённый рендеринг"
 
-#: cinelerra//performanceprefs.C:187
+#: cinelerra//performanceprefs.C:194
 msgid "Nodes:"
 msgstr "Узлов:"
 
 msgid "Nodes:"
 msgstr "Узлов:"
 
-#: cinelerra//performanceprefs.C:201
+#: cinelerra//performanceprefs.C:208
 msgid "Hostname:"
 msgstr "Имя хоста:"
 
 msgid "Hostname:"
 msgstr "Имя хоста:"
 
-#: cinelerra//performanceprefs.C:243
+#: cinelerra//performanceprefs.C:250
 msgid "Total jobs to create:"
 msgstr "Всего количество заданий:"
 
 msgid "Total jobs to create:"
 msgstr "Всего количество заданий:"
 
-#: cinelerra//performanceprefs.C:246
+#: cinelerra//performanceprefs.C:253
 msgid "(overridden if new file at each label is checked)"
 msgstr "(не используется, если выбран признак\n"
 "\"создавать отдельный файл на каждую метку\")"
 
 msgid "(overridden if new file at each label is checked)"
 msgstr "(не используется, если выбран признак\n"
 "\"создавать отдельный файл на каждую метку\")"
 
-#: cinelerra//performanceprefs.C:300 cinelerra//pluginpopup.C:228
+#: cinelerra//performanceprefs.C:307 cinelerra//pluginpopup.C:228
 #: cinelerra//plugintoggles.C:39 cinelerra//recordbatches.C:22
 #: cinelerra//transitionpopup.C:261
 msgid "On"
 msgstr "Вкл./Выкл."
 
 #: cinelerra//plugintoggles.C:39 cinelerra//recordbatches.C:22
 #: cinelerra//transitionpopup.C:261
 msgid "On"
 msgstr "Вкл./Выкл."
 
-#: cinelerra//performanceprefs.C:301
+#: cinelerra//performanceprefs.C:308
 msgid "Hostname"
 msgstr "Имя хоста"
 
 msgid "Hostname"
 msgstr "Имя хоста"
 
-#: cinelerra//performanceprefs.C:302
+#: cinelerra//performanceprefs.C:309
 msgid "Port"
 msgstr "Port"
 
 msgid "Port"
 msgstr "Port"
 
-#: cinelerra//performanceprefs.C:303
+#: cinelerra//performanceprefs.C:310
 msgid "Framerate"
 msgstr "Част. кадров"
 
 msgid "Framerate"
 msgstr "Част. кадров"
 
-#: cinelerra//performanceprefs.C:356
+#: cinelerra//performanceprefs.C:363
 msgid "Use background rendering"
 msgstr "Фоновый рендеринг"
 
 msgid "Use background rendering"
 msgstr "Фоновый рендеринг"
 
-#: cinelerra//performanceprefs.C:489
+#: cinelerra//performanceprefs.C:496
 msgid "Use render farm"
 msgstr "Включить распределённый рендеринг"
 
 msgid "Use render farm"
 msgstr "Включить распределённый рендеринг"
 
-#: cinelerra//performanceprefs.C:509
+#: cinelerra//performanceprefs.C:516
 msgid "Force single processor use"
 msgstr "Принудительно использовать один процессор"
 
 msgid "Force single processor use"
 msgstr "Принудительно использовать один процессор"
 
-#: cinelerra//performanceprefs.C:525
+#: cinelerra//performanceprefs.C:532
 msgid "trap sigSEGV"
 msgstr "trap sigSEGV"
 
 msgid "trap sigSEGV"
 msgstr "trap sigSEGV"
 
-#: cinelerra//performanceprefs.C:541
+#: cinelerra//performanceprefs.C:548
 msgid "trap sigINT"
 msgstr "trap sigINT"
 
 msgid "trap sigINT"
 msgstr "trap sigINT"
 
-#: cinelerra//performanceprefs.C:558
+#: cinelerra//performanceprefs.C:565
 msgid "On file open, ffmpeg probes early"
 msgid "On file open, ffmpeg probes early"
-msgstr ""
+msgstr "Приоритет FFmpeg при сборе инфо. о файле"
 
 
-#: cinelerra//performanceprefs.C:576
+#: cinelerra//performanceprefs.C:583
 msgid "build ffmpeg marker indexes"
 msgid "build ffmpeg marker indexes"
-msgstr ""
+msgstr "Строить индексы маркеров ключ. кадров (ffmpeg)"
 
 
-#: cinelerra//performanceprefs.C:599
+#: cinelerra//performanceprefs.C:606
 msgid "Consolidate output files on completion"
 msgstr "Объединить выходные файлы по завершении"
 
 msgid "Consolidate output files on completion"
 msgstr "Объединить выходные файлы по завершении"
 
-#: cinelerra//performanceprefs.C:729
+#: cinelerra//performanceprefs.C:736
 msgid "Add Node"
 msgstr "Добавить узел"
 
 msgid "Add Node"
 msgstr "Добавить узел"
 
-#: cinelerra//performanceprefs.C:757
+#: cinelerra//performanceprefs.C:764
 msgid "Apply Changes"
 msgstr "Применить"
 
 msgid "Apply Changes"
 msgstr "Применить"
 
-#: cinelerra//performanceprefs.C:784
+#: cinelerra//performanceprefs.C:791
 msgid "Delete Node"
 msgstr "Удалить узел"
 
 msgid "Delete Node"
 msgstr "Удалить узел"
 
-#: cinelerra//performanceprefs.C:812
+#: cinelerra//performanceprefs.C:819
 msgid "Sort nodes"
 msgstr "Сортировка узл."
 
 msgid "Sort nodes"
 msgstr "Сортировка узл."
 
-#: cinelerra//performanceprefs.C:839
+#: cinelerra//performanceprefs.C:846
 msgid "Reset rates"
 msgstr "Сброс частоты"
 
 msgid "Reset rates"
 msgstr "Сброс частоты"
 
-#: cinelerra//performanceprefs.C:919
+#: cinelerra//performanceprefs.C:945
 msgid "Use virtual filesystem"
 msgstr "Использовать виртуальную ФС"
 
 msgid "Use virtual filesystem"
 msgstr "Использовать виртуальную ФС"
 
-#: cinelerra//performanceprefs.C:935
+#: cinelerra//performanceprefs.C:961
 msgid "Use yuv420p dvd interlace format"
 msgstr ""
 
 msgid "Use yuv420p dvd interlace format"
 msgstr ""
 
@@ -5976,7 +6006,7 @@ msgstr "Номер дорожки DVD - субтитров:"
 
 #: cinelerra//playbackprefs.C:192
 msgid "TOC Program No:"
 
 #: cinelerra//playbackprefs.C:192
 msgid "TOC Program No:"
-msgstr ""
+msgstr "№ программы для TOC"
 
 #: cinelerra//playbackprefs.C:215
 msgid "Timecode offset:"
 
 #: cinelerra//playbackprefs.C:215
 msgid "Timecode offset:"
@@ -6020,7 +6050,7 @@ msgstr "Воспроизв. каждый кадр"
 
 #: cinelerra//playbackprefs.C:428
 msgid "Enable subtitles/captioning"
 
 #: cinelerra//playbackprefs.C:428
 msgid "Enable subtitles/captioning"
-msgstr ""
+msgstr "Включить субтитры/скрытые субтитры"
 
 #: cinelerra//playbackprefs.C:461
 msgid "Label cells"
 
 #: cinelerra//playbackprefs.C:461
 msgid "Label cells"
@@ -6044,7 +6074,7 @@ msgstr "Воспроизведение ( 3 )"
 
 #: cinelerra//playtransport.C:496
 msgid "Frame forward ( 1 )"
 
 #: cinelerra//playtransport.C:496
 msgid "Frame forward ( 1 )"
-msgstr "Кадр вперед ( 1 )"
+msgstr "Кадр вперёд ( 1 )"
 
 #: cinelerra//playtransport.C:511
 msgid "Fast forward ( Enter )"
 
 #: cinelerra//playtransport.C:511
 msgid "Fast forward ( Enter )"
@@ -6063,7 +6093,7 @@ msgstr "Лицензия: %s"
 #: cinelerra//pluginarray.C:222
 #, c-format
 msgid "%s took %s"
 #: cinelerra//pluginarray.C:222
 #, c-format
 msgid "%s took %s"
-msgstr "%s Ð¾кончен %s"
+msgstr "%s Ð·Ð°кончен %s"
 
 #: cinelerra//pluginclient.C:826 cinelerra//pluginclient.C:838
 msgid "tweek"
 
 #: cinelerra//pluginclient.C:826 cinelerra//pluginclient.C:838
 msgid "tweek"
@@ -6162,47 +6192,47 @@ msgstr ""
 msgid "Personal Plugin Path"
 msgstr ""
 
 msgid "Personal Plugin Path"
 msgstr ""
 
-#: cinelerra//preferencesthread.C:69
+#: cinelerra//preferencesthread.C:70
 msgid "Preferences..."
 msgstr "Параметры программы"
 
 msgid "Preferences..."
 msgstr "Параметры программы"
 
-#: cinelerra//preferencesthread.C:69
+#: cinelerra//preferencesthread.C:70
 msgid "Shift-P"
 msgstr "Shift-P"
 
 msgid "Shift-P"
 msgstr "Shift-P"
 
-#: cinelerra//preferencesthread.C:326
+#: cinelerra//preferencesthread.C:333
 msgid "*Playback A"
 msgid "*Playback A"
-msgstr ""
+msgstr "*Воспроизв-ние А"
 
 
-#: cinelerra//preferencesthread.C:326
+#: cinelerra//preferencesthread.C:333
 msgid "Playback A"
 msgid "Playback A"
-msgstr ""
+msgstr "Воспроизв-ние А"
 
 
-#: cinelerra//preferencesthread.C:329
+#: cinelerra//preferencesthread.C:336
 msgid "*Playback B"
 msgid "*Playback B"
-msgstr ""
+msgstr "*Воспр-ние В"
 
 
-#: cinelerra//preferencesthread.C:329
+#: cinelerra//preferencesthread.C:336
 msgid "Playback B"
 msgid "Playback B"
-msgstr ""
+msgstr "Воспр-ние В"
 
 
-#: cinelerra//preferencesthread.C:331
+#: cinelerra//preferencesthread.C:338
 msgid "Recording"
 msgstr "Запись"
 
 msgid "Recording"
 msgstr "Запись"
 
-#: cinelerra//preferencesthread.C:333
+#: cinelerra//preferencesthread.C:340
 msgid "Performance"
 msgid "Performance"
-msgstr "Производительность"
+msgstr "Производит-ность"
 
 
-#: cinelerra//preferencesthread.C:335
+#: cinelerra//preferencesthread.C:342
 msgid "Interface"
 msgstr "Интерфейс"
 
 msgid "Interface"
 msgstr "Интерфейс"
 
-#: cinelerra//preferencesthread.C:337
+#: cinelerra//preferencesthread.C:344
 msgid "About"
 msgstr "О программе"
 
 msgid "About"
 msgstr "О программе"
 
-#: cinelerra//preferencesthread.C:368
+#: cinelerra//preferencesthread.C:375
 msgid ": Preferences"
 msgstr ": Параметры"
 
 msgid ": Preferences"
 msgstr ": Параметры"
 
@@ -6222,7 +6252,7 @@ msgstr "Невозможно выйти пока идёт запись."
 msgid "Can't quit while a render is in progress."
 msgstr "Невозможно выйти пока идет рендеринг."
 
 msgid "Can't quit while a render is in progress."
 msgstr "Невозможно выйти пока идет рендеринг."
 
-#: cinelerra//quit.C:99
+#: cinelerra//quit.C:95
 msgid "Save edit list before exiting?"
 msgstr "Сохранить список редактирования перед выходом?"
 
 msgid "Save edit list before exiting?"
 msgstr "Сохранить список редактирования перед выходом?"
 
@@ -6233,7 +6263,7 @@ msgstr ": Подтверждение"
 #: cinelerra//recconfirmdelete.C:49
 #, c-format
 msgid "Delete this file and %s?"
 #: cinelerra//recconfirmdelete.C:49
 #, c-format
 msgid "Delete this file and %s?"
-msgstr "Удалить этот  файл и %s?"
+msgstr "Удалить этот файл и %s?"
 
 #: cinelerra//recordaudio.C:251 cinelerra//recordvideo.C:251
 msgid "No space left on disk."
 
 #: cinelerra//recordaudio.C:251 cinelerra//recordvideo.C:251
 msgid "No space left on disk."
@@ -6277,11 +6307,11 @@ msgstr "Запись..."
 msgid "record"
 msgstr "запись"
 
 msgid "record"
 msgstr "запись"
 
-#: cinelerra//record.C:534
+#: cinelerra//record.C:537
 msgid "Deleting"
 msgstr "Удаление"
 
 msgid "Deleting"
 msgstr "Удаление"
 
-#: cinelerra//record.C:1187
+#: cinelerra//record.C:1189
 msgid "Running"
 msgstr ""
 
 msgid "Running"
 msgstr ""
 
@@ -6541,7 +6571,7 @@ msgstr "Автоматическая синхронизация с диском"
 
 #: cinelerra//recordscopes.C:157
 msgid "View scope"
 
 #: cinelerra//recordscopes.C:157
 msgid "View scope"
-msgstr ""
+msgstr "Видеоскоп"
 
 #: cinelerra//recordthread.C:85
 msgid "Re-enable batches and restart?"
 
 #: cinelerra//recordthread.C:85
 msgid "Re-enable batches and restart?"
@@ -6593,7 +6623,7 @@ msgstr "Перемотка назад"
 
 #: cinelerra//recordtransport.C:366
 msgid "Fast forward"
 
 #: cinelerra//recordtransport.C:366
 msgid "Fast forward"
-msgstr "Перемотка вперед"
+msgstr "Перемотка вперёд"
 
 #: cinelerra//recordtransport.C:405
 msgid "Seek to end of recording"
 
 #: cinelerra//recordtransport.C:405
 msgid "Seek to end of recording"
@@ -6635,19 +6665,19 @@ msgstr "Расчётное время (ETA)"
 msgid "Already rendering"
 msgstr "Рендеринг уже идёт."
 
 msgid "Already rendering"
 msgstr "Рендеринг уже идёт."
 
-#: cinelerra//render.C:495
+#: cinelerra//render.C:494
 #, c-format
 msgid "Rendering %s..."
 msgstr "Рендеринг %s..."
 
 #, c-format
 msgid "Rendering %s..."
 msgstr "Рендеринг %s..."
 
-#: cinelerra//render.C:498
+#: cinelerra//render.C:497
 msgid "Rendering..."
 msgstr "Рендеринг..."
 
 msgid "Rendering..."
 msgstr "Рендеринг..."
 
-#: cinelerra//render.C:516
+#: cinelerra//render.C:515
 #, c-format
 msgid "Rendering took %s"
 #, c-format
 msgid "Rendering took %s"
-msgstr "РендеÑ\80инг Ð¾кончен %s"
+msgstr "РендеÑ\80инг Ð·Ð°кончен %s"
 
 #: cinelerra//render.C:785
 msgid "Starting render farm"
 
 #: cinelerra//render.C:785
 msgid "Starting render farm"
@@ -6688,7 +6718,7 @@ msgstr "Нач./Кон. точки"
 
 #: cinelerra//renderfarm.C:160
 msgid "RenderFarmServerThread::start_loop: socket\n"
 
 #: cinelerra//renderfarm.C:160
 msgid "RenderFarmServerThread::start_loop: socket\n"
-msgstr "RenderFarmServerThread::start_loop: сокет\n"
+msgstr "RenderFarmServerThread::start_loop: socket\n"
 
 #: cinelerra//renderfarm.C:184 cinelerra//renderfarm.C:225
 #, c-format
 
 #: cinelerra//renderfarm.C:184 cinelerra//renderfarm.C:225
 #, c-format
@@ -6697,7 +6727,7 @@ msgstr "RenderFarmServerThread::open_client: %s: %s\n"
 
 #: cinelerra//renderfarm.C:202
 msgid "RenderFarmServerThread::start_loop: socket"
 
 #: cinelerra//renderfarm.C:202
 msgid "RenderFarmServerThread::start_loop: socket"
-msgstr "RenderFarmServerThread::start_loop: сокет"
+msgstr "RenderFarmServerThread::start_loop: socket"
 
 #: cinelerra//renderfarm.C:215
 #, c-format
 
 #: cinelerra//renderfarm.C:215
 #, c-format
@@ -6709,29 +6739,29 @@ msgstr "RenderFarmServerThread::open_client: неизвестный хост %s.
 msgid "RenderFarmServerThread::run: unknown request %02x\n"
 msgstr "RenderFarmServerThread::run: неизвестный запрос %02x\n"
 
 msgid "RenderFarmServerThread::run: unknown request %02x\n"
 msgstr "RenderFarmServerThread::run: неизвестный запрос %02x\n"
 
-#: cinelerra//renderfarmclient.C:115 cinelerra//renderfarmclient.C:140
+#: cinelerra//renderfarmclient.C:120 cinelerra//renderfarmclient.C:145
 msgid "RenderFarmClient::main_loop: socket"
 msgstr "RenderFarmClient::main_loop: socket"
 
 msgid "RenderFarmClient::main_loop: socket"
 msgstr "RenderFarmClient::main_loop: socket"
 
-#: cinelerra//renderfarmclient.C:124
+#: cinelerra//renderfarmclient.C:129
 #, c-format
 msgid "RenderFarmClient::main_loop: bind port %d: %s"
 msgstr "RenderFarmClient::main_loop: связанный порт %d: %s"
 
 #, c-format
 msgid "RenderFarmClient::main_loop: bind port %d: %s"
 msgstr "RenderFarmClient::main_loop: связанный порт %d: %s"
 
-#: cinelerra//renderfarmclient.C:149
+#: cinelerra//renderfarmclient.C:154
 #, c-format
 msgid "RenderFarmClient::main_loop: bind path %s: %s\n"
 msgstr "RenderFarmClient::main_loop: связанный путь %s: %s\n"
 
 #, c-format
 msgid "RenderFarmClient::main_loop: bind path %s: %s\n"
 msgstr "RenderFarmClient::main_loop: связанный путь %s: %s\n"
 
-#: cinelerra//renderfarmclient.C:162
+#: cinelerra//renderfarmclient.C:166
 msgid "RenderFarmClient::main_loop: listen"
 msgstr "RenderFarmClient::main_loop: слушает"
 
 msgid "RenderFarmClient::main_loop: listen"
 msgstr "RenderFarmClient::main_loop: слушает"
 
-#: cinelerra//renderfarmclient.C:178 cinelerra//renderfarmclient.C:197
+#: cinelerra//renderfarmclient.C:178 cinelerra//renderfarmclient.C:192
 msgid "RenderFarmClient::main_loop: accept"
 msgstr "RenderFarmClient::main_loop: принимает"
 
 msgid "RenderFarmClient::main_loop: accept"
 msgstr "RenderFarmClient::main_loop: принимает"
 
-#: cinelerra//renderfarmclient.C:717
+#: cinelerra//renderfarmclient.C:680
 #, c-format
 msgid "RenderFarmClientThread::run: Session finished.\n"
 msgstr "RenderFarmClientThread::run: Сессия завершена.\n"
 #, c-format
 msgid "RenderFarmClientThread::run: Session finished.\n"
 msgstr "RenderFarmClientThread::run: Сессия завершена.\n"
@@ -6874,7 +6904,7 @@ msgstr ""
 
 #: cinelerra//scopewindow.C:426
 msgid ": Scopes"
 
 #: cinelerra//scopewindow.C:426
 msgid ": Scopes"
-msgstr ""
+msgstr ": Видеоскоп"
 
 #: cinelerra//scopewindow.C:1326
 msgid "Histogram Parade"
 
 #: cinelerra//scopewindow.C:1326
 msgid "Histogram Parade"
@@ -7195,23 +7225,23 @@ msgid ""
 msgstr "`Установки -> Бестиповые ключевые кадры` позволяет копировать ключевые кадры\n"
 "между аудио и видеодорожками.\n"
 
 msgstr "`Установки -> Бестиповые ключевые кадры` позволяет копировать ключевые кадры\n"
 "между аудио и видеодорожками.\n"
 
-#: cinelerra//tipwindow.C:144
+#: cinelerra//tipwindow.C:141
 msgid ": Tip of the day"
 msgstr ": Совет дня"
 
 msgid ": Tip of the day"
 msgstr ": Совет дня"
 
-#: cinelerra//tipwindow.C:209
+#: cinelerra//tipwindow.C:206
 msgid "Show tip of the day."
 msgstr "Показывать совет дня."
 
 msgid "Show tip of the day."
 msgstr "Показывать совет дня."
 
-#: cinelerra//tipwindow.C:230
+#: cinelerra//tipwindow.C:227
 msgid "Next tip"
 msgstr "След. совет."
 
 msgid "Next tip"
 msgstr "След. совет."
 
-#: cinelerra//tipwindow.C:253
+#: cinelerra//tipwindow.C:250
 msgid "Previous tip"
 msgstr "Предыд. совет."
 
 msgid "Previous tip"
 msgstr "Предыд. совет."
 
-#: cinelerra//trackcanvas.C:4196
+#: cinelerra//trackcanvas.C:4205
 msgid "keyframe"
 msgstr "ключевой кадр"
 
 msgid "keyframe"
 msgstr "ключевой кадр"
 
@@ -7242,7 +7272,7 @@ msgstr "Длина"
 
 #: cinelerra//vdeviceprefs.C:221 cinelerra//vdeviceprefs.C:355
 msgid "Follow video config"
 
 #: cinelerra//vdeviceprefs.C:221 cinelerra//vdeviceprefs.C:355
 msgid "Follow video config"
-msgstr ""
+msgstr "Автообновление конфигурации видео"
 
 #: cinelerra//vdeviceprefs.C:337
 msgid "Fields:"
 
 #: cinelerra//vdeviceprefs.C:337
 msgid "Fields:"
@@ -7893,9 +7923,7 @@ msgid "Select the range to transfer:"
 msgstr "Выберите диапазон для извлечения:"
 
 #: plugins/cdripper/cdripwindow.C:43 plugins/cdripper/cdripwindow.C:47
 msgstr "Выберите диапазон для извлечения:"
 
 #: plugins/cdripper/cdripwindow.C:43 plugins/cdripper/cdripwindow.C:47
-#: plugins/motion2point/motionwindow.C:773
-#: plugins/motion2point/motionwindow.C:786
-msgid "Track"
+msgid "Track:"
 msgstr "Трек"
 
 #: plugins/cdripper/cdripwindow.C:44 plugins/cdripper/cdripwindow.C:48
 msgstr "Трек"
 
 #: plugins/cdripper/cdripwindow.C:44 plugins/cdripper/cdripwindow.C:48
@@ -7982,11 +8010,11 @@ msgstr "Настройка маски:"
 
 #: plugins/chromakeyhsv/chromakey.C:218
 msgid "In Slope:"
 
 #: plugins/chromakeyhsv/chromakey.C:218
 msgid "In Slope:"
-msgstr "Коэф.атаки:"
+msgstr "Коэфф. спада:"
 
 #: plugins/chromakeyhsv/chromakey.C:221
 msgid "Out Slope:"
 
 #: plugins/chromakeyhsv/chromakey.C:221
 msgid "Out Slope:"
-msgstr "Коэф.спада:"
+msgstr "Коэфф. атаки:"
 
 #: plugins/chromakeyhsv/chromakey.C:224
 msgid "Alpha Offset:"
 
 #: plugins/chromakeyhsv/chromakey.C:224
 msgid "Alpha Offset:"
@@ -8456,7 +8484,7 @@ msgstr "Горизонтальное смещение"
 msgid "Vertical offset"
 msgstr "Вертикальное смещение"
 
 msgid "Vertical offset"
 msgstr "Вертикальное смещение"
 
-#: plugins/downsample/downsample.C:376 plugins/reframert/reframert.C:294
+#: plugins/downsample/downsample.C:376 plugins/reframert/reframert.C:348
 msgid "Downsample"
 msgstr "Понижение дискретизации"
 
 msgid "Downsample"
 msgstr "Понижение дискретизации"
 
@@ -8581,17 +8609,19 @@ msgid ""
 "(W/H Percent of image)"
 msgstr ""
 
 "(W/H Percent of image)"
 msgstr ""
 
-#: plugins/findobject/findobjectwindow.C:89 plugins/motion/motionwindow.C:135
-#: plugins/motion2point/motionwindow.C:130
-#: plugins/motion.new/motionwindow.C:140
+#: plugins/findobject/findobjectwindow.C:89 plugins/motion/motionwindow.C:116
+#: plugins/motion2point/motionwindow.C:125
+#: plugins/motion-cv/motionwindow-cv.C:110
+#: plugins/motion-hv/motionwindow-hv.C:135
 msgid "Block X:"
 msgid "Block X:"
-msgstr ""
+msgstr "Центр блока по оси X:"
 
 
-#: plugins/findobject/findobjectwindow.C:104 plugins/motion/motionwindow.C:169
-#: plugins/motion2point/motionwindow.C:143
-#: plugins/motion.new/motionwindow.C:174
+#: plugins/findobject/findobjectwindow.C:104 plugins/motion/motionwindow.C:141
+#: plugins/motion2point/motionwindow.C:138
+#: plugins/motion-cv/motionwindow-cv.C:117
+#: plugins/motion-hv/motionwindow-hv.C:169
 msgid "Block Y:"
 msgid "Block Y:"
-msgstr ""
+msgstr "Центр блока по оси Y:"
 
 #: plugins/findobject/findobjectwindow.C:145
 msgid "Object layer:"
 
 #: plugins/findobject/findobjectwindow.C:145
 msgid "Object layer:"
@@ -8638,11 +8668,11 @@ msgid "Draw object border"
 msgstr ""
 
 #: plugins/findobject/findobjectwindow.C:496
 msgstr ""
 
 #: plugins/findobject/findobjectwindow.C:496
-#: plugins/findobject/findobjectwindow.C:510
-#: plugins/motion/motionwindow.C:1047 plugins/motion2point/motionwindow.C:848
-#: plugins/motion2point/motionwindow.C:860
-#: plugins/motion.new/motionwindow.C:1010
-#: plugins/motion.new/motionwindow.C:1021
+#: plugins/findobject/findobjectwindow.C:510 plugins/motion/motionwindow.C:816
+#: plugins/motion2point/motionwindow.C:843
+#: plugins/motion2point/motionwindow.C:855
+#: plugins/motion-cv/motionwindow-cv.C:671
+#: plugins/motion-hv/motionwindow-hv.C:1020
 msgid "Don't Calculate"
 msgstr "Не рассчитывать"
 
 msgid "Don't Calculate"
 msgstr "Не рассчитывать"
 
@@ -8880,11 +8910,11 @@ msgstr "Смещение по Y:"
 
 #: plugins/interpolateall/interpolateall.C:97
 #: plugins/interpolateaudio/interpolateaudio.C:96
 
 #: plugins/interpolateall/interpolateall.C:97
 #: plugins/interpolateaudio/interpolateaudio.C:96
-#: plugins/reframert/reframert.C:312
+#: plugins/reframert/reframert.C:366
 msgid "Interpolate"
 msgstr "Интерполяция"
 
 msgid "Interpolate"
 msgstr "Интерполяция"
 
-#: plugins/interpolatevideo/interpolatevideo.C:847
+#: plugins/interpolatevideo/interpolatevideo.C:848
 msgid "Interpolate Video"
 msgstr ""
 
 msgid "Interpolate Video"
 msgstr ""
 
@@ -8975,7 +9005,7 @@ msgid "Rectilinear Shrink"
 msgstr "Бочка\"  на плоскости"
 
 #: plugins/lens/lens.C:329 plugins/perspective/perspective.C:185
 msgstr "Бочка\"  на плоскости"
 
 #: plugins/lens/lens.C:329 plugins/perspective/perspective.C:185
-#: plugins/reframert/reframert.C:275
+#: plugins/reframert/reframert.C:329
 msgid "Stretch"
 msgstr "Растягивание"
 
 msgid "Stretch"
 msgstr "Растягивание"
 
@@ -9068,238 +9098,325 @@ msgstr "Кадров в цикле:"
 msgid "Loop video"
 msgstr "Цикл видео"
 
 msgid "Loop video"
 msgstr "Цикл видео"
 
-#: plugins/motion/motion.C:279 plugins/motion.new/motion.C:260
+#: plugins/motion/motion.C:215
 msgid "Motion"
 msgstr "Движение"
 
 msgid "Motion"
 msgstr "Движение"
 
-#: plugins/motion/motionwindow.C:69 plugins/motion2point/motionwindow.C:79
-#: plugins/motion.new/motionwindow.C:74
+#: plugins/motion/motionwindow.C:55 plugins/motion2point/motionwindow.C:74
+#: plugins/motion-cv/motionwindow-cv.C:54
+#: plugins/motion-hv/motionwindow-hv.C:69
 msgid ""
 "Translation search radius:\n"
 "(W/H Percent of image)"
 msgid ""
 "Translation search radius:\n"
 "(W/H Percent of image)"
-msgstr ""
+msgstr "Размер области поиска:\n"
+"(Ш./В. как % от изображения)"
 
 
-#: plugins/motion/motionwindow.C:81 plugins/motion.new/motionwindow.C:86
+#: plugins/motion/motionwindow.C:64 plugins/motion-cv/motionwindow-cv.C:63
+#: plugins/motion-hv/motionwindow-hv.C:81
 msgid ""
 "Rotation search radius:\n"
 "(Degrees)"
 msgid ""
 "Rotation search radius:\n"
 "(Degrees)"
-msgstr ""
+msgstr "Размер области поиска:\n"
+"(Градусы)"
 
 
-#: plugins/motion/motionwindow.C:89 plugins/motion2point/motionwindow.C:114
-#: plugins/motion.new/motionwindow.C:94
+#: plugins/motion/motionwindow.C:70 plugins/motion2point/motionwindow.C:109
+#: plugins/motion-cv/motionwindow-cv.C:69
+#: plugins/motion-hv/motionwindow-hv.C:89
 msgid ""
 "Translation block size:\n"
 "(W/H Percent of image)"
 msgid ""
 "Translation block size:\n"
 "(W/H Percent of image)"
-msgstr ""
+msgstr "Размер блока для отслеживания:\n"
+"(Ш./В. как % от изображения)"
 
 
-#: plugins/motion/motionwindow.C:112 plugins/motion.new/motionwindow.C:117
+#: plugins/motion/motionwindow.C:92 plugins/motion-cv/motionwindow-cv.C:87
 msgid "Translation search steps:"
 msgid "Translation search steps:"
-msgstr ""
+msgstr "Число шагов поиска:"
 
 
-#: plugins/motion/motionwindow.C:119 plugins/motion.new/motionwindow.C:124
+#: plugins/motion/motionwindow.C:97 plugins/motion-cv/motionwindow-cv.C:92
 msgid "Rotation search steps:"
 msgid "Rotation search steps:"
-msgstr ""
+msgstr "Число шагов поиска:"
 
 
-#: plugins/motion/motionwindow.C:127 plugins/motion.new/motionwindow.C:132
+#: plugins/motion/motionwindow.C:103 plugins/motion-cv/motionwindow-cv.C:98
+#: plugins/motion-hv/motionwindow-hv.C:127
 msgid "Translation direction:"
 msgid "Translation direction:"
-msgstr ""
+msgstr "Направление перемещения:"
 
 
-#: plugins/motion/motionwindow.C:145 plugins/motion.new/motionwindow.C:150
+#: plugins/motion/motionwindow.C:111 plugins/motion-cv/motionwindow-cv.C:104
+msgid "Tracking file:"
+msgstr "Файл координат:"
+
+#: plugins/motion/motionwindow.C:124 plugins/motion-hv/motionwindow-hv.C:145
 msgid "Rotation center:"
 msgid "Rotation center:"
-msgstr ""
+msgstr "Центр вращения:"
 
 
-#: plugins/motion/motionwindow.C:154 plugins/motion.new/motionwindow.C:159
+#: plugins/motion/motionwindow.C:129 plugins/motion-hv/motionwindow-hv.C:154
 msgid "Maximum angle offset:"
 msgid "Maximum angle offset:"
-msgstr ""
+msgstr "Макс. угловое смещение:"
 
 
-#: plugins/motion/motionwindow.C:160 plugins/motion.new/motionwindow.C:165
+#: plugins/motion/motionwindow.C:134 plugins/motion-hv/motionwindow-hv.C:160
 msgid "Rotation settling speed:"
 msgstr ""
 
 msgid "Rotation settling speed:"
 msgstr ""
 
-#: plugins/motion/motionwindow.C:180 plugins/motion2point/motionwindow.C:184
-#: plugins/motion.new/motionwindow.C:185
+#: plugins/motion/motionwindow.C:149 plugins/motion2point/motionwindow.C:179
+#: plugins/motion-cv/motionwindow-cv.C:123
+#: plugins/motion-hv/motionwindow-hv.C:180
 msgid "Maximum absolute offset:"
 msgid "Maximum absolute offset:"
-msgstr ""
+msgstr "Макс. абсолютное смещение:"
 
 
-#: plugins/motion/motionwindow.C:186
+#: plugins/motion/motionwindow.C:155
 msgid "Motion settling speed:"
 msgstr ""
 
 msgid "Motion settling speed:"
 msgstr ""
 
-#: plugins/motion/motionwindow.C:207 plugins/motion2point/motionwindow.C:203
-#: plugins/motion.new/motionwindow.C:212
+#: plugins/motion/motionwindow.C:172 plugins/motion2point/motionwindow.C:198
+#: plugins/motion-cv/motionwindow-cv.C:150
+#: plugins/motion-hv/motionwindow-hv.C:207
 msgid "Frame number:"
 msgid "Frame number:"
-msgstr ""
+msgstr "№ кадра:"
 
 
-#: plugins/motion/motionwindow.C:232 plugins/motion2point/motionwindow.C:223
-#: plugins/motion.new/motionwindow.C:232
+#: plugins/motion/motionwindow.C:179 plugins/motion-cv/motionwindow-cv.C:157
+msgid ""
+"For best results\n"
+" Set: Play every frame\n"
+" Preferences-> Playback-> Video Out"
+msgstr ""
+"Для достижения наилучших результатов\n"
+"включите опцию 'Воспр-ть каждый кадр'\n"
+"в Параметры->Воспр-ние->Настр. видео (выход)"
+
+#: plugins/motion/motionwindow.C:182 plugins/motion-cv/motionwindow-cv.C:160
+msgid "Currently using: Play every frame"
+msgstr "Опция 'Воспроизводить каждый кадр'\n"
+"включена"
+
+#: plugins/motion/motionwindow.C:185 plugins/motion2point/motionwindow.C:218
+#: plugins/motion-cv/motionwindow-cv.C:145
+#: plugins/motion-hv/motionwindow-hv.C:227
 msgid "Master layer:"
 msgid "Master layer:"
-msgstr ""
+msgstr "Мастер - трек:"
 
 
-#: plugins/motion/motionwindow.C:241 plugins/motion2point/motionwindow.C:232
-#: plugins/motion.new/motionwindow.C:241
+#: plugins/motion/motionwindow.C:191 plugins/motion2point/motionwindow.C:227
+#: plugins/motion-cv/motionwindow-cv.C:164
+#: plugins/motion-hv/motionwindow-hv.C:236
 msgid "Action:"
 msgid "Action:"
-msgstr "Действие"
+msgstr "Действие:"
 
 
-#: plugins/motion/motionwindow.C:252 plugins/motion2point/motionwindow.C:243
-#: plugins/motion.new/motionwindow.C:252
+#: plugins/motion/motionwindow.C:197 plugins/motion2point/motionwindow.C:238
+#: plugins/motion-cv/motionwindow-cv.C:170
+#: plugins/motion-hv/motionwindow-hv.C:247
 msgid "Calculation:"
 msgstr "Расчёт:"
 
 msgid "Calculation:"
 msgstr "Расчёт:"
 
-#: plugins/motion/motionwindow.C:531
+#: plugins/motion/motionwindow.C:405 plugins/motion-cv/motionwindow-cv.C:321
 msgid "Add (loaded) offset from tracked frame"
 msgstr ""
 
 msgid "Add (loaded) offset from tracked frame"
 msgstr ""
 
-#: plugins/motion/motionwindow.C:596 plugins/motion.new/motionwindow.C:575
+#: plugins/motion/motionwindow.C:452 plugins/motion-cv/motionwindow-cv.C:351
 msgid "Track translation"
 msgstr "Перемещение"
 
 msgid "Track translation"
 msgstr "Перемещение"
 
-#: plugins/motion/motionwindow.C:616 plugins/motion.new/motionwindow.C:595
+#: plugins/motion/motionwindow.C:467 plugins/motion-cv/motionwindow-cv.C:366
+#: plugins/motion-hv/motionwindow-hv.C:589
 msgid "Track rotation"
 msgstr "Вращение"
 
 msgid "Track rotation"
 msgstr "Вращение"
 
-#: plugins/motion/motionwindow.C:751 plugins/motion2point/motionwindow.C:563
-#: plugins/motion.new/motionwindow.C:730
+#: plugins/motion/motionwindow.C:563 plugins/motion2point/motionwindow.C:558
+#: plugins/motion-cv/motionwindow-cv.C:447
+#: plugins/motion-hv/motionwindow-hv.C:724
 msgid "Draw vectors"
 msgstr "Показывать векторы движения"
 
 msgid "Draw vectors"
 msgstr "Показывать векторы движения"
 
-#: plugins/motion/motionwindow.C:778 plugins/motion2point/motionwindow.C:591
-#: plugins/motion.new/motionwindow.C:757
+#: plugins/motion/motionwindow.C:584 plugins/motion2point/motionwindow.C:586
+#: plugins/motion-cv/motionwindow-cv.C:465
+#: plugins/motion-hv/motionwindow-hv.C:751
 msgid "Track single frame"
 msgid "Track single frame"
-msgstr ""
+msgstr "Отслеживать одиночн. кадр"
 
 
-#: plugins/motion/motionwindow.C:832 plugins/motion2point/motionwindow.C:645
-#: plugins/motion.new/motionwindow.C:811
+#: plugins/motion/motionwindow.C:626 plugins/motion2point/motionwindow.C:640
+#: plugins/motion-cv/motionwindow-cv.C:503
+#: plugins/motion-hv/motionwindow-hv.C:805
 msgid "Track previous frame"
 msgid "Track previous frame"
-msgstr ""
+msgstr "Отслеживать предыдущ. кадр"
 
 
-#: plugins/motion/motionwindow.C:861 plugins/motion2point/motionwindow.C:674
-#: plugins/motion.new/motionwindow.C:840
+#: plugins/motion/motionwindow.C:649 plugins/motion2point/motionwindow.C:669
+#: plugins/motion-cv/motionwindow-cv.C:524
+#: plugins/motion-hv/motionwindow-hv.C:834
 msgid "Previous frame same block"
 msgid "Previous frame same block"
-msgstr ""
-
-#: plugins/motion/motionwindow.C:908 plugins/motion/motionwindow.C:914
-#: plugins/motion2point/motionwindow.C:721
-#: plugins/motion2point/motionwindow.C:727
-#: plugins/motion.new/motionwindow.C:887 plugins/motion.new/motionwindow.C:893
-#: plugins/overlay/overlay.C:170 plugins/overlayaudio/overlayaudio.C:163
-#: plugins/reroute/reroute.C:164 plugins/titler/titlewindow.C:1039
+msgstr "Отслеживать предыдущ. кадр (позиция блока не изменяется)"
+
+#: plugins/motion/motionwindow.C:690 plugins/motion/motionwindow.C:696
+#: plugins/motion2point/motionwindow.C:716
+#: plugins/motion2point/motionwindow.C:722
+#: plugins/motion-cv/motionwindow-cv.C:564
+#: plugins/motion-cv/motionwindow-cv.C:570
+#: plugins/motion-hv/motionwindow-hv.C:881
+#: plugins/motion-hv/motionwindow-hv.C:887 plugins/overlay/overlay.C:170
+#: plugins/overlayaudio/overlayaudio.C:163 plugins/reroute/reroute.C:164
+#: plugins/titler/titlewindow.C:1039
 msgid "Top"
 msgstr "Верх"
 
 msgid "Top"
 msgstr "Верх"
 
-#: plugins/motion/motionwindow.C:914 plugins/motion2point/motionwindow.C:727
-#: plugins/motion.new/motionwindow.C:893 plugins/overlay/overlay.C:171
+#: plugins/motion/motionwindow.C:696 plugins/motion2point/motionwindow.C:722
+#: plugins/motion-cv/motionwindow-cv.C:570
+#: plugins/motion-hv/motionwindow-hv.C:887 plugins/overlay/overlay.C:171
 #: plugins/overlayaudio/overlayaudio.C:164 plugins/reroute/reroute.C:165
 #: plugins/titler/titlewindow.C:1067
 msgid "Bottom"
 msgstr "Низ"
 
 #: plugins/overlayaudio/overlayaudio.C:164 plugins/reroute/reroute.C:165
 #: plugins/titler/titlewindow.C:1067
 msgid "Bottom"
 msgstr "Низ"
 
-#: plugins/motion/motionwindow.C:960 plugins/motion/motionwindow.C:973
-#: plugins/motion.new/motionwindow.C:939 plugins/motion.new/motionwindow.C:951
+#: plugins/motion/motionwindow.C:736 plugins/motion/motionwindow.C:749
+#: plugins/motion-cv/motionwindow-cv.C:606
+#: plugins/motion-cv/motionwindow-cv.C:617
+#: plugins/motion-hv/motionwindow-hv.C:933
+#: plugins/motion-hv/motionwindow-hv.C:946
 msgid "Track Subpixel"
 msgid "Track Subpixel"
-msgstr ""
-
-#: plugins/motion/motionwindow.C:961 plugins/motion/motionwindow.C:975
-#: plugins/motion2point/motionwindow.C:774
-#: plugins/motion2point/motionwindow.C:789
-#: plugins/motion.new/motionwindow.C:940 plugins/motion.new/motionwindow.C:954
+msgstr "Субпиксельное отслеживание"
+
+#: plugins/motion/motionwindow.C:737 plugins/motion/motionwindow.C:751
+#: plugins/motion2point/motionwindow.C:769
+#: plugins/motion2point/motionwindow.C:784
+#: plugins/motion-cv/motionwindow-cv.C:607
+#: plugins/motion-cv/motionwindow-cv.C:618
+#: plugins/motion-hv/motionwindow-hv.C:934
+#: plugins/motion-hv/motionwindow-hv.C:948
 msgid "Track Pixel"
 msgid "Track Pixel"
-msgstr ""
+msgstr "Пиксельное отслеживание"
 
 
-#: plugins/motion/motionwindow.C:962 plugins/motion/motionwindow.C:977
-#: plugins/motion.new/motionwindow.C:941 plugins/motion.new/motionwindow.C:957
+#: plugins/motion/motionwindow.C:738 plugins/motion/motionwindow.C:753
+#: plugins/motion-cv/motionwindow-cv.C:608
+#: plugins/motion-cv/motionwindow-cv.C:619
+#: plugins/motion-hv/motionwindow-hv.C:935
+#: plugins/motion-hv/motionwindow-hv.C:950
 msgid "Stabilize Subpixel"
 msgid "Stabilize Subpixel"
-msgstr "Стабилизация субпиксельная"
-
-#: plugins/motion/motionwindow.C:963 plugins/motion/motionwindow.C:979
-#: plugins/motion2point/motionwindow.C:776
-#: plugins/motion2point/motionwindow.C:795
-#: plugins/motion.new/motionwindow.C:942 plugins/motion.new/motionwindow.C:960
+msgstr "Субпиксельное стабилиз-ние"
+
+#: plugins/motion/motionwindow.C:739 plugins/motion/motionwindow.C:755
+#: plugins/motion2point/motionwindow.C:771
+#: plugins/motion2point/motionwindow.C:790
+#: plugins/motion-cv/motionwindow-cv.C:609
+#: plugins/motion-cv/motionwindow-cv.C:620
+#: plugins/motion-hv/motionwindow-hv.C:936
+#: plugins/motion-hv/motionwindow-hv.C:952
 msgid "Stabilize Pixel"
 msgid "Stabilize Pixel"
-msgstr "Стабилизация пиксельная"
-
-#: plugins/motion/motionwindow.C:1028 plugins/motion/motionwindow.C:1040
-#: plugins/motion2point/motionwindow.C:850
-#: plugins/motion2point/motionwindow.C:866
-#: plugins/motion.new/motionwindow.C:1012
-#: plugins/motion.new/motionwindow.C:1027
-msgid "Save coords to /tmp"
-msgstr "Сохранить координаты в /tmp"
-
-#: plugins/motion/motionwindow.C:1029 plugins/motion/motionwindow.C:1042
-#: plugins/motion2point/motionwindow.C:851
-#: plugins/motion2point/motionwindow.C:869
-#: plugins/motion.new/motionwindow.C:1013
-#: plugins/motion.new/motionwindow.C:1030
-msgid "Load coords from /tmp"
-msgstr "Загрузить координаты из /tmp"
-
-#: plugins/motion/motionwindow.C:1030 plugins/motion/motionwindow.C:1044
-#: plugins/motion2point/motionwindow.C:849
-#: plugins/motion2point/motionwindow.C:863
-#: plugins/motion.new/motionwindow.C:1011
-#: plugins/motion.new/motionwindow.C:1024
+msgstr "Пиксельное стабилиз-ние"
+
+#: plugins/motion/motionwindow.C:801 plugins/motion/motionwindow.C:812
+#: plugins/motion-cv/motionwindow-cv.C:662
+#: plugins/motion-cv/motionwindow-cv.C:673
+msgid "Save coords to tracking file"
+msgstr "Сохранить коорд-ты в файл коорд-т"
+
+#: plugins/motion/motionwindow.C:802 plugins/motion/motionwindow.C:813
+#: plugins/motion-cv/motionwindow-cv.C:663
+#: plugins/motion-cv/motionwindow-cv.C:674
+msgid "Load coords from tracking file"
+msgstr "Загрузить коорд-ты из файла коорд-т"
+
+#: plugins/motion/motionwindow.C:803 plugins/motion/motionwindow.C:814
+#: plugins/motion2point/motionwindow.C:844
+#: plugins/motion2point/motionwindow.C:858
+#: plugins/motion-cv/motionwindow-cv.C:661
+#: plugins/motion-cv/motionwindow-cv.C:672
+#: plugins/motion-hv/motionwindow-hv.C:1003
+#: plugins/motion-hv/motionwindow-hv.C:1017
 msgid "Recalculate"
 msgstr "Пересчитывать"
 
 msgid "Recalculate"
 msgstr "Пересчитывать"
 
-#: plugins/motion/motionwindow.C:1104 plugins/motion2point/motionwindow.C:930
-#: plugins/motion.new/motionwindow.C:1088 plugins/sharpen/sharpenwindow.C:114
+#: plugins/motion/motionwindow.C:865 plugins/motion2point/motionwindow.C:925
+#: plugins/motion-cv/motionwindow-cv.C:723
+#: plugins/motion-hv/motionwindow-hv.C:1077
+#: plugins/sharpen/sharpenwindow.C:114
 msgid "Horizontal only"
 msgstr "Только по горизонтали"
 
 msgid "Horizontal only"
 msgstr "Только по горизонтали"
 
-#: plugins/motion/motionwindow.C:1105 plugins/motion2point/motionwindow.C:931
-#: plugins/motion.new/motionwindow.C:1089
+#: plugins/motion/motionwindow.C:866 plugins/motion2point/motionwindow.C:926
+#: plugins/motion-cv/motionwindow-cv.C:724
+#: plugins/motion-hv/motionwindow-hv.C:1078
 msgid "Vertical only"
 msgstr "Только по вертикали"
 
 msgid "Vertical only"
 msgstr "Только по вертикали"
 
-#: plugins/motion/motionwindow.C:1106 plugins/motion2point/motionwindow.C:932
-#: plugins/motion.new/motionwindow.C:1090
+#: plugins/motion/motionwindow.C:867 plugins/motion2point/motionwindow.C:927
+#: plugins/motion-cv/motionwindow-cv.C:725
+#: plugins/motion-hv/motionwindow-hv.C:1079
 msgid "Both"
 msgstr "Оба направления"
 
 #: plugins/motion2point/motion.C:245
 msgid "Motion 2 Point"
 msgid "Both"
 msgstr "Оба направления"
 
 #: plugins/motion2point/motion.C:245
 msgid "Motion 2 Point"
-msgstr ""
+msgstr "Движение (2-х точеч.)"
 
 
-#: plugins/motion2point/motionwindow.C:66
+#: plugins/motion2point/motionwindow.C:61
 msgid "Track Point 1"
 msgid "Track Point 1"
-msgstr ""
+msgstr "Точка 1"
 
 
-#: plugins/motion2point/motionwindow.C:67
+#: plugins/motion2point/motionwindow.C:62
 msgid "Track Point 2"
 msgid "Track Point 2"
-msgstr ""
+msgstr "Точка 2"
 
 
-#: plugins/motion2point/motionwindow.C:97
+#: plugins/motion2point/motionwindow.C:92
 msgid ""
 "Translation search offset:\n"
 "(X/Y Percent of image)"
 msgid ""
 "Translation search offset:\n"
 "(X/Y Percent of image)"
-msgstr ""
+msgstr "Смещение области поиска:\n"
+"(X/Y как % от изображения)"
 
 
-#: plugins/motion2point/motionwindow.C:168
+#: plugins/motion2point/motionwindow.C:163
 msgid "Search steps:"
 msgid "Search steps:"
-msgstr ""
+msgstr "Число шагов поиска:"
 
 
-#: plugins/motion2point/motionwindow.C:176
+#: plugins/motion2point/motionwindow.C:171
 msgid "Search directions:"
 msgid "Search directions:"
-msgstr ""
+msgstr "Направление поиска:"
 
 
-#: plugins/motion2point/motionwindow.C:190
-#: plugins/motion.new/motionwindow.C:191
+#: plugins/motion2point/motionwindow.C:185
+#: plugins/motion-cv/motionwindow-cv.C:128
 msgid "Settling speed:"
 msgstr ""
 
 msgid "Settling speed:"
 msgstr ""
 
-#: plugins/motion2point/motionwindow.C:775
-#: plugins/motion2point/motionwindow.C:792
+#: plugins/motion2point/motionwindow.C:768
+#: plugins/motion2point/motionwindow.C:781
+msgid "Track"
+msgstr "Отслеживание"
+
+#: plugins/motion2point/motionwindow.C:770
+#: plugins/motion2point/motionwindow.C:787
 msgid "Stabilize"
 msgid "Stabilize"
-msgstr ""
+msgstr "Стабилизирование"
+
+#: plugins/motion2point/motionwindow.C:845
+#: plugins/motion2point/motionwindow.C:861
+#: plugins/motion-hv/motionwindow-hv.C:1001
+#: plugins/motion-hv/motionwindow-hv.C:1013
+msgid "Save coords to /tmp"
+msgstr "Сохранить координаты в /tmp"
+
+#: plugins/motion2point/motionwindow.C:846
+#: plugins/motion2point/motionwindow.C:864
+#: plugins/motion-hv/motionwindow-hv.C:1002
+#: plugins/motion-hv/motionwindow-hv.C:1015
+msgid "Load coords from /tmp"
+msgstr "Загрузить координаты из /tmp"
 
 #: plugins/motionblur/motionblur.C:315
 msgid "Motion Blur"
 msgstr "Размытие - Камера X/Y"
 
 
 #: plugins/motionblur/motionblur.C:315
 msgid "Motion Blur"
 msgstr "Размытие - Камера X/Y"
 
-#: plugins/motion.new/motionwindow.C:106
+#: plugins/motion-cv/motion-cv.C:209
+msgid "MotionCV"
+msgstr "Движение (CV)"
+
+#: plugins/motion-cv/motionwindow-cv.C:78
 msgid ""
 "Rotation block size:\n"
 "(W/H Percent of image)"
 msgid ""
 "Rotation block size:\n"
 "(W/H Percent of image)"
+msgstr "Размер блока для отслеживания:\n"
+"(Ш./В. как % от изображения)"
+
+#: plugins/motion-hv/motion-hv.C:260
+msgid "MotionHV"
+msgstr "Движение (HV)"
+
+#: plugins/motion-hv/motionwindow-hv.C:186
+msgid "MotionHV settling speed:"
 msgstr ""
 
 #: plugins/normalize/normalizewindow.C:27
 msgstr ""
 
 #: plugins/normalize/normalizewindow.C:27
@@ -9581,11 +9698,15 @@ msgstr "Скорость"
 msgid "Scale factor:"
 msgstr "Множитель:"
 
 msgid "Scale factor:"
 msgstr "Множитель:"
 
-#: plugins/reframert/reframert.C:214 plugins/resamplert/resamplert.C:95
-msgid "Scale by amount:"
-msgstr "Множитель:"
+#: plugins/reframert/reframert.C:237
+msgid "Input frames:"
+msgstr ""
 
 
-#: plugins/reframert/reframert.C:336
+#: plugins/reframert/reframert.C:247
+msgid "Output frames:"
+msgstr ""
+
+#: plugins/reframert/reframert.C:390
 msgid "ReframeRT"
 msgstr "Скорость (RT)"
 
 msgid "ReframeRT"
 msgstr "Скорость (RT)"
 
@@ -9633,7 +9754,15 @@ msgstr ": Передискретизация"
 msgid "Resample"
 msgstr "Передискретизация"
 
 msgid "Resample"
 msgstr "Передискретизация"
 
-#: plugins/resamplert/resamplert.C:186
+#: plugins/resamplert/resamplert.C:101
+msgid "Input samples:"
+msgstr ""
+
+#: plugins/resamplert/resamplert.C:107
+msgid "Output samples:"
+msgstr ""
+
+#: plugins/resamplert/resamplert.C:223
 msgid "ResampleRT"
 msgstr "Передискретизация (RT)"
 
 msgid "ResampleRT"
 msgstr "Передискретизация (RT)"
 
@@ -9688,7 +9817,7 @@ msgstr "Сохранить..."
 
 #: plugins/reverb/reverbwindow.C:369
 msgid "Set default"
 
 #: plugins/reverb/reverbwindow.C:369
 msgid "Set default"
-msgstr "Задать настройки по-умолчанию"
+msgstr "Задать настройки по умолчанию"
 
 #: plugins/reverb/reverbwindow.C:432
 msgid "Save reverb"
 
 #: plugins/reverb/reverbwindow.C:432
 msgid "Save reverb"
diff --git a/cinelerra-5.1/thirdparty/src/x264.patch1 b/cinelerra-5.1/thirdparty/src/x264.patch1
new file mode 100644 (file)
index 0000000..9cd14f2
--- /dev/null
@@ -0,0 +1,19 @@
+diff -ur a/encoder/encoder.c b/encoder/encoder.c
+--- a/encoder/encoder.c        2016-02-20 14:45:07.000000000 -0700
++++ b/encoder/encoder.c        2016-12-29 07:08:32.247434972 -0700
+@@ -614,6 +614,7 @@
+         return -1;
+     }
++#if 0
+     /* Detect default ffmpeg settings and terminate with an error. */
+     if( b_open )
+     {
+@@ -637,6 +638,7 @@
+             return -1;
+         }
+     }
++#endif
+     if( h->param.rc.i_rc_method < 0 || h->param.rc.i_rc_method > 2 )
+     {