Overview
avidemux3.changes
Changed
x
1
2
-------------------------------------------------------------------
3
+Tue Mar 08 16:09:34 UTC 2016 - joerg.lorenzen@ki.tng.de
4
+
5
+- Update to version 2.6.12
6
+ + [H264] Fixed crash when saving h264 annexB in avi (Brundle)
7
+ + [Vdpau] Fixed VDPAU resize and deinterlace when height is padded
8
+ + [Mkv] Faster loading of VP9 and h265
9
+ + [MP4] Supports more flavors of H265
10
+ + [i18n] Spanish translation update by ringmaster
11
+ + [Edit] Another frame seeking bug fixed, happened rarely
12
+ + [All] Slightly better crash handler
13
+ + [FFmpeg]Update to 2.7.6
14
+ + [Muxer] Basic webm support
15
+ + [Jobs] Fixed right click menus with qt5
16
+
17
+-------------------------------------------------------------------
18
Fri Feb 05 21:02:11 UTC 2016 - joerg.lorenzen@ki.tng.de
19
20
- Update to version 2.6.11
21
avidemux3.spec
Changed
54
1
2
3
Name: avidemux3
4
Summary: Graphical video editing and transcoding tool
5
-Version: 2.6.11
6
+Version: 2.6.12
7
Release: 1
8
Url: http://avidemux.sourceforge.net/
9
Source0: avidemux_%{version}.tar.gz
10
11
Patch4: avidemux-package_version.patch
12
Patch5: avidemux-bootStrap.patch
13
Patch6: avidemux-cpu_armel.patch
14
-Patch7: avidemux-ADM_VERSION.patch
15
-Patch8: avidemux-cmake-permissions.patch
16
-Patch9: avidemux-find-lrelease-qt5.patch
17
+Patch7: avidemux-cmake-permissions.patch
18
+Patch8: avidemux-find-lrelease-qt5.patch
19
License: GPL-2.0
20
Group: Productivity/Multimedia/Video/Editors and Convertors
21
22
23
find ./ -name '*.sql' -exec dos2unix -q {} \;
24
find ./ -name '*.txt' -exec dos2unix -q {} \;
25
find . -type f -exec sed -i -e 's|intfloat_readwrite.h|intfloat.h|g' {} \;
26
-sed -i -e 's|set(FFMPEG_VERSION "2.7.2")|set(FFMPEG_VERSION "%{ffmpeg_version}")|g' cmake/admFFmpegBuild.cmake
27
-rm -f avidemux_core/ffmpeg_package/ffmpeg-2.7.2.tar.bz2
28
+sed -i -e 's|set(FFMPEG_VERSION "2.7.6")|set(FFMPEG_VERSION "%{ffmpeg_version}")|g' cmake/admFFmpegBuild.cmake
29
+rm -f avidemux_core/ffmpeg_package/ffmpeg-2.7.6.tar.bz2
30
cp %{S:2} avidemux_core/ffmpeg_package/
31
pushd avidemux_core/ffmpeg_package/patches
32
rm -f config.mak.diff
33
34
%patch4 -p0
35
%patch5 -p0
36
%patch6 -p0
37
-%patch7 -p0
38
-%patch8 -p1
39
+%patch7 -p1
40
%if %{with build_qt5}
41
-%patch9 -p0
42
+%patch8 -p0
43
%endif
44
chmod 755 bootStrap.bash
45
chmod 644 AUTHORS COPYING README
46
47
%{_libdir}/ADM_plugins6/muxers/libADM_mx_mp4.so
48
%{_libdir}/ADM_plugins6/muxers/libADM_mx_mp4v2.so
49
%{_libdir}/ADM_plugins6/muxers/libADM_mx_raw.so
50
+%{_libdir}/ADM_plugins6/muxers/libADM_mx_Webm.so
51
%{_libdir}/ADM_plugins6/pluginSettings/x264/3/ultraFast.json
52
%{_libdir}/ADM_plugins6/pluginSettings/x264/3/PSP.json
53
%{_libdir}/ADM_plugins6/pluginSettings/x264/3/veryFast.json
54
avidemux-ADM_VERSION.patch
Deleted
23
1
2
---- avidemux/common/main.cpp.orig 2014-11-28 22:27:34.739989392 +0100
3
-+++ avidemux/common/main.cpp 2014-11-28 22:27:19.253254919 +0100
4
-@@ -137,7 +137,7 @@
5
- int startAvidemux(int argc, char *argv[])
6
- {
7
- printf("*************************\n");
8
-- printf(" Avidemux v"ADM_VERSION);
9
-+ printf(" Avidemux v",ADM_VERSION);
10
-
11
- #if defined( ADM_SUBVERSION )
12
- #define MKSTRING(x) x
13
---- avidemux/gtk/CMakeLists.txt.orig 2014-11-28 22:42:25.006820533 +0100
14
-+++ avidemux/gtk/CMakeLists.txt 2014-11-28 22:42:25.039819908 +0100
15
-@@ -34,6 +34,7 @@
16
-
17
- SDLify(../common/main.cpp)
18
- ADD_SOURCE_CFLAGS(../common/main.cpp "-DADM_SUBVERSION=\"${ADM_SUBVERSION}\"")
19
-+ADD_SOURCE_CFLAGS(../common/main.cpp "-DADM_VERSION='\"${AVIDEMUX_VERSION}\"'")
20
-
21
- ###########################################
22
- # Version Info
23
avidemux_2.6.11.tar.gz/avidemux_core/ffmpeg_package/ffmpeg-2.7.2.tar.bz2
Deleted
avidemux_2.6.11.tar.gz/avidemux/common/ADM_editor/include/ADM_edit.hxx -> avidemux_2.6.12.tar.gz/avidemux/common/ADM_editor/include/ADM_edit.hxx
Changed
9
1
2
bool updateImageTiming(_SEGMENT *seg,ADMImage *image);
3
// Need to get the image just before targetPts
4
bool decodeTillPictureAtPts(uint64_t targetPts,ADMImage *image);
5
+ bool getFrameNumFromPtsOrBefore(_VIDEOS *v,uint64_t refTime,int &frameNumber);
6
7
protected:
8
/// Decode frame and on until frame is popped out of decoders
9
avidemux_2.6.11.tar.gz/avidemux/common/ADM_editor/src/ADM_edSearch.cpp -> avidemux_2.6.12.tar.gz/avidemux/common/ADM_editor/src/ADM_edSearch.cpp
Changed
165
1
2
#include "fourcc.h"
3
#include "ADM_edit.hxx"
4
#include "ADM_vidMisc.h"
5
+
6
+#define pivotPrintf(...) {}
7
+
8
/**
9
\fn getNKFramePTS
10
*/
11
12
}
13
return false;
14
}
15
+/**
16
+ * \fn getFrameNumberBeforePts
17
+ * \brief Search the framenumber that has a valid PTS = what's given or before
18
+ * it can be equal to refTime
19
+ * @param v
20
+ * @param refTime
21
+ * @param frameNumber
22
+ * @return
23
+ */
24
+bool ADM_Composer::getFrameNumFromPtsOrBefore(_VIDEOS *v,uint64_t refTime,int &frameNumber)
25
+{
26
+ uint32_t nbFrame = v->_nb_video_frames;
27
+ uint64_t pts, dts;
28
+ uint32_t curFrame=nbFrame >> 1;
29
+ uint32_t splitMoval = curFrame >> 1;
30
+ pivotPrintf("Looking for frame with a pts %s\n",ADM_us2plain(refTime));
31
+ // Try to find the frame that as the timestamp close enough to refTime, while being smaller
32
+ do
33
+ {
34
+ // seems like the pts determination, not always works -> retry if necessary
35
+ bool worked;
36
+ do {
37
+ pts=ADM_NO_PTS;
38
+ worked = v->_aviheader->getPtsDts(curFrame,&pts,&dts);
39
+ if (worked && pts != ADM_NO_PTS)
40
+ break; // found
41
+ curFrame--;
42
+ if (!curFrame)
43
+ {
44
+ ADM_warning("The whole segment is corrupted. Abort the search");
45
+ return false;
46
+ }
47
+ } while(true);
48
+ pivotPrintf("SplitMoval=%d\n",splitMoval);
49
+ if(pts==refTime)
50
+ break;
51
+ if (!splitMoval)
52
+ break;
53
+ pivotPrintf("Pivot time is %d, %s\n",curFrame,ADM_us2plain(pts));
54
+ if (pts >= refTime)
55
+ curFrame -= splitMoval;
56
+ else
57
+ curFrame += splitMoval;
58
+ splitMoval >>= 1;
59
+ pivotPrintf("Split=%d\n",splitMoval);
60
+ } while(refTime != pts);
61
+
62
+ pivotPrintf("-Matching frame is %d, time is %s\n",curFrame,ADM_us2plain(pts));
63
+ if (pts > refTime && curFrame)
64
+ curFrame--;
65
+ frameNumber=curFrame;
66
+ return true;
67
+}
68
/**
69
\fn searchPreviousKeyFrameInRef
70
\brief Search next key frame in ref video ref
71
72
@param nkTime : Time of the ref video
73
74
*/
75
+
76
bool ADM_Composer::searchPreviousKeyFrameInRef(int ref,uint64_t refTime,uint64_t *nkTime)
77
{
78
// Search for the current frame with quick search
79
_VIDEOS *v = _segments.getRefVideo(ref);
80
uint32_t nbFrame = v->_nb_video_frames;
81
uint64_t pts, dts;
82
- uint32_t curFrame=nbFrame >> 1;
83
- uint32_t splitMoval = curFrame >> 1;
84
- do {
85
- // seems like the pts determination, not always works -> retry if necessary
86
- bool worked;
87
- do {
88
- worked = v->_aviheader->getPtsDts(curFrame,&pts,&dts);
89
- if (!worked || pts == ADM_NO_PTS) {
90
- curFrame++;
91
- if (curFrame == nbFrame) {
92
- ADM_warning("The whole segment is corrupted. Abort the search");
93
- return false;
94
- }
95
- } else
96
- break;
97
- } while(true);
98
-
99
- if (splitMoval != 0) {
100
- if (pts >= refTime)
101
- curFrame -= splitMoval;
102
- else
103
- curFrame += splitMoval;
104
- splitMoval >>= 1;
105
- } else
106
- break;
107
- } while(refTime != pts);
108
+ int curFrame;
109
110
- if (pts < refTime)
111
- curFrame++;
112
- for (int i=curFrame; i>=0; i--)
113
- {
114
- uint64_t p;
115
- uint32_t flags;
116
- v->_aviheader->getFlags(i,&flags);
117
- if(!(flags & AVI_KEY_FRAME)) continue;
118
- if(!v->_aviheader->getPtsDts(i,&pts,&dts) || pts == ADM_NO_PTS)
119
- {
120
- ADM_warning("The keyframe with PTS less than %"PRIu32"ms is corrupted\n",refTime/1000);
121
- continue;
122
- }
123
- if(pts>=refTime) continue;
124
- *nkTime = pts;
125
- return true;
126
- }
127
- ADM_warning("Cannot find keyframe with PTS less than %"PRIu32"ms\n",refTime/1000);
128
+ // look up the frame we are starting from...
129
+ if(!getFrameNumFromPtsOrBefore(v,refTime,curFrame))
130
+ {
131
+ ADM_warning("Cannot locate the frame we are talking about at PTS=%s\n",ADM_us2plain(refTime));
132
+ return false;
133
+ }
134
+ // rewind until we find a keyframe
135
+ for (int i=curFrame; i>=0; i--)
136
+ {
137
+ uint64_t p;
138
+ uint32_t flags;
139
+ v->_aviheader->getFlags(i,&flags);
140
+ if(!(flags & AVI_KEY_FRAME))
141
+ continue;
142
+ if(!v->_aviheader->getPtsDts(i,&pts,&dts))
143
+ continue;
144
+ if(pts == ADM_NO_PTS)
145
+ continue;
146
+ pivotPrintf("-- Previous Kf ! This one is %s\n",ADM_us2plain(pts));
147
+ pivotPrintf("-- Ref is %s\n",ADM_us2plain(refTime));
148
+ pivotPrintf("-- DTS %s\n",ADM_us2plain(dts));
149
+ if(pts>=refTime)
150
+ continue;
151
+ *nkTime = pts; // ok found it
152
+#if 0
153
+ for(int j=0;j<5;j++)
154
+ {
155
+ if(!v->_aviheader->getPtsDts(i+j,&pts,&dts)) continue ;
156
+ printf("Neighbor [%d] = %s\n",j,ADM_us2plain(pts));
157
+ }
158
+#endif
159
+ return true;
160
+ }
161
+ ADM_warning("Cannot find keyframe with PTS less than %s\n",ADM_us2plain(refTime));
162
return false;
163
}
164
165
avidemux_2.6.11.tar.gz/avidemux/common/ADM_editor/src/audio/ADM_edAudioPcm.cpp -> avidemux_2.6.12.tar.gz/avidemux/common/ADM_editor/src/audio/ADM_edAudioPcm.cpp
Changed
13
1
2
{
3
if(labs((int64_t)lastDts-(int64_t)packetBufferDts)>ADM_ALLOWED_DRIFT_US)
4
{
5
- printf("[Composer::getPCMPacket] Track %d,%"PRIx64" : drift %d, computed :%"PRIu64" got %"PRIu64"\n",
6
- (int)myTrackNumber,(uint64_t)trk,(int)(lastDts-packetBufferDts),lastDts,packetBufferDts);
7
+ ADM_info("[Composer::getPCMPacket] Track %d,%"PRIx64" : drift %d, computed :%s",
8
+ (int)myTrackNumber,(uint64_t)trk,(int)(lastDts-packetBufferDts),ADM_us2plain(lastDts));
9
+ ADM_info(" got %s\n", ADM_us2plain(packetBufferDts));
10
if(packetBufferDts<lastDts)
11
{
12
printf("[Composer::getPCMPacket] Track %d:%"PRIx64" : Dropping packet %"PRIu32" last =%"PRIu32"\n",myTrackNumber,(uint64_t)trk,(uint32_t)(lastDts/1000),(uint32_t)(packetBufferDts/1000));
13
avidemux_2.6.11.tar.gz/avidemux/common/ADM_muxerGate/src/ADM_videoCopyFromAnnexB.cpp -> avidemux_2.6.12.tar.gz/avidemux/common/ADM_muxerGate/src/ADM_videoCopyFromAnnexB.cpp
Changed
12
1
2
context->pix_fmt = PIX_FMT_YUV420P;
3
4
video_body->getExtraHeaderData(&extraLen,&extraData);
5
- context->extradata=extraData;
6
+ // duplicate extraData with malloc scheme, it will be freed by the bitstream filter
7
+ context->extradata=(uint8_t*)av_malloc(extraLen);
8
+ memcpy( context->extradata,extraData,extraLen);
9
context->extradata_size=extraLen;
10
codecContext=(void *)context;
11
12
avidemux_2.6.11.tar.gz/avidemux/common/gui_savenew.cpp -> avidemux_2.6.12.tar.gz/avidemux/common/gui_savenew.cpp
Changed
43
1
2
uint32_t extraLen;
3
video_body->getExtraHeaderData(&extraLen,&extra);
4
//#warning do something better
5
- ADM_videoStreamCopy *copy=NULL;
6
+ ADM_videoStreamCopy *copy=NULL;
7
if(isH264Compatible(info.fcc))
8
{
9
+ bool isAnnexB=!extraLen; // this is not very good
10
if(muxer->preferH264AnnexB())
11
{
12
- ADM_info("The video stream is H264\n");
13
+ ADM_info("The video stream is a flavor of H264\n");
14
ADM_info("The muxer prefers AnnexB H264 bitstream\n");
15
- if(extraLen)
16
+ if(!isAnnexB)
17
{
18
// Need to do mp4 to annexB
19
- ADM_info("Probably AnnexB bitstream\n");
20
+ ADM_info("Input is probably MP4 bitstream\n");
21
copy=new ADM_videoStreamCopyToAnnexB(markerA,markerB);
22
}
23
}else
24
{
25
- if(!extraLen)
26
+ ADM_info("The video stream is a flavor of H264\n");
27
+ ADM_info("The muxer prefers MP4 style H264 bitstream\n");
28
+ if(isAnnexB)
29
{
30
- ADM_info("Probably AnnexB bitstream\n");
31
+ ADM_info("Input is probably AnnexB bitstream\n");
32
copy=new ADM_videoStreamCopyFromAnnexB(markerA,markerB);
33
}
34
}
35
36
37
if(!copy)
38
{
39
+ ADM_info("Simple copy mode engaged\n");
40
copy=new ADM_videoStreamCopy(markerA,markerB);
41
}
42
video=copy;
43
avidemux_2.6.11.tar.gz/avidemux/common/main.cpp -> avidemux_2.6.12.tar.gz/avidemux/common/main.cpp
Changed
10
1
2
int startAvidemux(int argc, char *argv[])
3
{
4
printf("*************************\n");
5
- printf(" Avidemux v"ADM_VERSION);
6
+ printf(" Avidemux v%s", ADM_VERSION);
7
8
#if defined( ADM_SUBVERSION )
9
#define MKSTRING(x) x
10
avidemux_2.6.11.tar.gz/avidemux/gtk/ADM_userInterfaces/ADM_gui2/GUI_bindings.cpp -> avidemux_2.6.12.tar.gz/avidemux/gtk/ADM_userInterfaces/ADM_gui2/GUI_bindings.cpp
Changed
16
1
2
{
3
return;
4
}
5
+/**
6
+*/
7
+bool UI_setDisplayName(const char *name)
8
+{
9
+ return true;
10
+}
11
+bool UI_reset(void)
12
+{
13
+ return true;
14
+}
15
// EOF
16
avidemux_2.6.11.tar.gz/avidemux/gtk/ADM_userInterfaces/ADM_gui2/GUI_gtkRender.cpp -> avidemux_2.6.12.tar.gz/avidemux/gtk/ADM_userInterfaces/ADM_gui2/GUI_gtkRender.cpp
Changed
10
1
2
xinfo->display = 0;
3
xinfo->window = getMainNSWindow();
4
#else
5
- xinfo->window = GDK_WINDOW_XID(win);
6
+ xinfo->systemWindowId = GDK_WINDOW_XID(win);
7
xinfo->display = GDK_WINDOW_XDISPLAY(parentWin);
8
#endif
9
10
avidemux_2.6.11.tar.gz/avidemux/gtk/CMakeLists.txt -> avidemux_2.6.12.tar.gz/avidemux/gtk/CMakeLists.txt
Changed
11
1
2
ADD_SUBDIRECTORY(ADM_userInterfaces ./ADM_userInterfacesGtk)
3
4
SDLify(../common/main.cpp)
5
-ADD_SOURCE_CFLAGS(../common/main.cpp "-DADM_SUBVERSION=\"${ADM_SUBVERSION}\"")
6
+ADD_SOURCE_CFLAGS(../common/main.cpp "-DADM_SUBVERSION='\"${ADM_SUBVERSION}\"'")
7
+ADD_SOURCE_CFLAGS(../common/main.cpp "-DADM_VERSION='\"${AVIDEMUX_VERSION}\"'")
8
9
###########################################
10
# Version Info
11
avidemux_2.6.11.tar.gz/avidemux/qt4/ADM_jobs/src/ADM_jobControl.cpp -> avidemux_2.6.12.tar.gz/avidemux/qt4/ADM_jobs/src/ADM_jobControl.cpp
Changed
39
1
2
ui.tableWidget->addAction(runNow);
3
ui.tableWidget->addAction(setOk);
4
ui.tableWidget->addAction(setReady);
5
- connect(del,SIGNAL(activated()),this, SLOT(del()));
6
- connect(runNow,SIGNAL(activated()),this, SLOT(runNow()));
7
- connect(setOk,SIGNAL(activated()),this, SLOT(setOk()));
8
- connect(setReady,SIGNAL(activated()),this,SLOT(setReady()));
9
+ connect(del,SIGNAL(triggered()),this, SLOT(del()));
10
+ connect(runNow,SIGNAL(triggered()),this, SLOT(runNow()));
11
+ connect(setOk,SIGNAL(triggered()),this, SLOT(setOk()));
12
+ connect(setReady,SIGNAL(triggered()),this,SLOT(setReady()));
13
14
connect(ui.pushButtonQuit,SIGNAL(pressed()),this,SLOT(quit()));
15
connect(ui.pushButtonRunAll,SIGNAL(pressed()),this,SLOT(runAllJob()));
16
17
18
void jobWindow::del(void)
19
{
20
+ ADM_info("Del\n");
21
runAction(JobAction_delete);
22
}
23
void jobWindow::setOk(void)
24
{
25
+ ADM_info("Ok\n");
26
runAction(JobAction_setOk);
27
}
28
void jobWindow::setReady(void)
29
{
30
+ ADM_info("setReady\n");
31
runAction(JobAction_setReady);
32
}
33
void jobWindow::runNow(void)
34
{
35
+ ADM_info("runNow\n");
36
runAction(JobAction_runNow);
37
}
38
39
avidemux_2.6.11.tar.gz/avidemux/qt4/ADM_userInterfaces/ADM_gui/Q_gui2.cpp -> avidemux_2.6.12.tar.gz/avidemux/qt4/ADM_userInterfaces/ADM_gui/Q_gui2.cpp
Changed
28
1
2
#include <QKeyEvent>
3
#include <QGraphicsView>
4
#include <QtCore/QDir>
5
+#include <QMessageBox>
6
#include "ADM_cpp.h"
7
#define MENU_DECLARE
8
#include "Q_gui2.h"
9
10
*/
11
static void FatalFunctionQt(const char *title, const char *info)
12
{
13
- GUI_Info_HIG(ADM_LOG_IMPORTANT, title, info);
14
+ printf("Crash Dump for %s\n",title);
15
+ printf("%s\n",info);
16
+ fflush(stdout);
17
+
18
+ QMessageBox msgBox;
19
+ msgBox.setText(title);
20
+ msgBox.setInformativeText(QT_TR_NOOP("The application has encountered a fatal problem\nThe current editing has been saved and will be reloaded at next start"));
21
+ msgBox.setDetailedText(info);
22
+ msgBox.setIcon(QMessageBox::Critical);
23
+ msgBox.exec();
24
+ abort();
25
}
26
27
/**
28
avidemux_2.6.11.tar.gz/avidemux/qt4/ADM_userInterfaces/ADM_gui/file_qt4.cpp -> avidemux_2.6.12.tar.gz/avidemux/qt4/ADM_userInterfaces/ADM_gui/file_qt4.cpp
Changed
10
1
2
label, // caption
3
str, // folder
4
filterFile, // filter
5
- NULL); // selected filter
6
+ NULL,QFileDialog::DontConfirmOverwrite); // selected filter
7
8
9
if (fileName.isNull() ) return;
10
avidemux_2.6.11.tar.gz/avidemux/qt4/i18n/avidemux_es.ts -> avidemux_2.6.12.tar.gz/avidemux/qt4/i18n/avidemux_es.ts
Changed
3770
1
2
</message>
3
<message>
4
<source>MPEG-2 requant</source>
5
- <translation type="obsolete">Cuantizador MPEG</translation>
6
+ <translation type="obsolete">recuantizar MPEG-2</translation>
7
</message>
8
<message>
9
<source>dummy</source>
10
- <translation type="obsolete">
11
- </translation>
12
+ <translation type="obsolete">vacio</translation>
13
</message>
14
<message>
15
<source>Copy</source>
16
17
</message>
18
<message>
19
<source>Dummy</source>
20
- <translation type="obsolete">
21
- </translation>
22
+ <translation type="obsolete">Vacio</translation>
23
</message>
24
<message>
25
<source>None</source>
26
27
<message>
28
<source>The beginning frame is not a key frame.
29
Please move the A marker.</source>
30
- <translation type="obsolete">La imagen inicial no es un Imagen-Clave
31
+ <translation type="obsolete">La imagen inicial no es una Imagen-Clave
32
Desplace el marcador A.</translation>
33
</message>
34
<message>
35
<source>_Use systray while encoding</source>
36
- <translation type="obsolete">Minimizar en el tray al codificar</translation>
37
+ <translation type="obsolete">_Minimizar al codificar</translation>
38
</message>
39
<message>
40
<source>_Accept non-standard audio frequency for DVD</source>
41
- <translation type="obsolete">Permitir frecuencia de sonido no estándar para DVD</translation>
42
+ <translation type="obsolete">_Permitir frecuencia de sonido no estándar para DVD</translation>
43
</message>
44
<message>
45
<source>Create _OpenDML files</source>
46
47
</message>
48
<message>
49
<source>Automatically _index MPEG files</source>
50
- <translation type="obsolete">Indexar automáticamente archivos MPEG</translation>
51
+ <translation type="obsolete">_Indexar automáticamente archivos MPEG</translation>
52
</message>
53
<message>
54
<source>Automatically _swap A and B if A>B</source>
55
- <translation type="obsolete">Indexar automáticamente archivos MPEG</translation>
56
+ <translation type="obsolete">Intercambiar _automaticamente A y B si A>B</translation>
57
</message>
58
<message>
59
<source>_Disable NUV audio sync</source>
60
- <translation type="obsolete">Desactivar sincronización de audio NUV</translation>
61
+ <translation type="obsolete">_Desactivar sincronización de audio NUV</translation>
62
</message>
63
<message>
64
<source>Automatically _build VBR map</source>
65
- <translation type="obsolete">Construir automáticamente mapa VBR</translation>
66
+ <translation type="obsolete">_Construir automáticamente mapa VBR</translation>
67
</message>
68
<message>
69
<source>Automatically _rebuild index</source>
70
- <translation type="obsolete">Reconstruir automáticamente el índice</translation>
71
+ <translation type="obsolete">_Reconstruir automáticamente el índice</translation>
72
</message>
73
<message>
74
<source>Automatically remove _packed bitstream</source>
75
- <translation type="obsolete">Eliminar automáticamente el empaquetado bitstream</translation>
76
+ <translation type="obsolete">Eliminar automáticamente el em_paquetado bitstream</translation>
77
</message>
78
<message>
79
<source>SIMD</source>
80
81
</message>
82
<message>
83
<source>_lavc threads:</source>
84
- <translation type="obsolete">Procesos Xvid:</translation>
85
+ <translation type="obsolete">Hilos _lavc:</translation>
86
</message>
87
<message>
88
<source>Multi-threading</source>
89
- <translation type="obsolete">Multi-tarea</translation>
90
+ <translation type="obsolete">Multi-hilo</translation>
91
</message>
92
<message>
93
<source>Above normal</source>
94
95
</message>
96
<message>
97
<source>_Encoding priority:</source>
98
- <translation type="obsolete">Prioridad de codificación:</translation>
99
+ <translation type="obsolete">_Prioridad de codificación:</translation>
100
</message>
101
<message>
102
<source>_Indexing/unpacking priority:</source>
103
- <translation type="obsolete">Prioridad de Indexado/descompresión:</translation>
104
+ <translation type="obsolete">Prioridad de _Indexado/descompresión:</translation>
105
</message>
106
<message>
107
<source>_Playback priority:</source>
108
- <translation type="obsolete">Prioridad de reproducción:</translation>
109
+ <translation type="obsolete">Prioridad de _reproducción:</translation>
110
</message>
111
<message>
112
<source>Prioritisation</source>
113
114
</message>
115
<message>
116
<source>_Use alternative tag for MP3 in .mp4</source>
117
- <translation type="obsolete">Usar un tag alternativo para MP3 en .mp4</translation>
118
+ <translation type="obsolete">_Usar tag alternativo para MP3 en .mp4</translation>
119
</message>
120
<message>
121
<source>XVideo (best)</source>
122
123
</message>
124
<message>
125
<source>Video _display:</source>
126
- <translation type="obsolete">Bitrate vídeo:</translation>
127
+ <translation type="obsolete">Mostrar _Video:</translation>
128
</message>
129
<message>
130
<source>No alerts</source>
131
132
</message>
133
<message>
134
<source>_Message level:</source>
135
- <translation type="obsolete">Nivel de mensaje:</translation>
136
+ <translation type="obsolete">Nivel de _mensaje:</translation>
137
</message>
138
<message>
139
<source>Master</source>
140
141
</message>
142
<message>
143
<source>_Volume control:</source>
144
- <translation type="obsolete">Control de volumen:</translation>
145
+ <translation type="obsolete">Control de _Volumen:</translation>
146
</message>
147
<message>
148
<source>No downmixing</source>
149
- <translation type="obsolete">Sin downmixing (multicanal)</translation>
150
+ <translation type="obsolete">Sin downmixing</translation>
151
</message>
152
<message>
153
<source>Pro Logic</source>
154
155
</message>
156
<message>
157
<source>_Local playback downmixing:</source>
158
- <translation type="obsolete">Downmixing de reproducción Local:</translation>
159
+ <translation type="obsolete">Downmixing de reproducción _Local:</translation>
160
</message>
161
<message>
162
<source>De_ringing</source>
163
164
</message>
165
<message>
166
<source>Timecode:</source>
167
- <translation type="obsolete">Marca de tiempo:</translation>
168
+ <translation type="obsolete">Marcador de tiempo:</translation>
169
</message>
170
<message>
171
<source>_Dynamic range compression</source>
172
173
</message>
174
<message>
175
<source>Marker A > B</source>
176
- <translation type="obsolete">Marcador A > B</translation>
177
+ <translation type="obsolete">Marcadordor A > B</translation>
178
</message>
179
<message>
180
<source>Cannot copy.</source>
181
182
</message>
183
<message>
184
<source>Smart Copy</source>
185
- <translation type="obsolete">
186
- </translation>
187
+ <translation type="obsolete">Copia Inteligente</translation>
188
</message>
189
<message>
190
<source>Trouble initializing audio device</source>
191
192
</message>
193
<message>
194
<source>Timecode:</source>
195
- <translation type="unfinished">Marca de tiempo:</translation>
196
+ <translation type="unfinished">Marcador de tiempo:</translation>
197
</message>
198
<message>
199
<source>0/0</source>
200
201
</message>
202
<message>
203
<source>Open</source>
204
- <translation type="unfinished"></translation>
205
+ <translation type="unfinished">Abrir</translation>
206
</message>
207
<message>
208
<source>Append</source>
209
- <translation type="unfinished"></translation>
210
+ <translation type="unfinished">Anexar</translation>
211
</message>
212
<message>
213
<source>Save</source>
214
- <translation type="unfinished"></translation>
215
+ <translation type="unfinished">Guardar</translation>
216
</message>
217
<message>
218
<source>Queue</source>
219
- <translation type="unfinished"></translation>
220
+ <translation type="unfinished">Cola</translation>
221
</message>
222
<message>
223
<source>Save as Image</source>
224
- <translation type="unfinished"></translation>
225
+ <translation type="unfinished">Guardar como Imagen</translation>
226
</message>
227
<message>
228
<source>Save as BMP</source>
229
- <translation type="unfinished"></translation>
230
+ <translation type="unfinished">Guardar como BMP</translation>
231
</message>
232
<message>
233
<source>Save as JPEG</source>
234
- <translation type="unfinished"></translation>
235
+ <translation type="unfinished">Guardar como JPEG</translation>
236
</message>
237
<message>
238
<source>Close</source>
239
- <translation type="unfinished"></translation>
240
+ <translation type="unfinished">Cerrar</translation>
241
</message>
242
<message>
243
<source>-</source>
244
245
</message>
246
<message>
247
<source>Information</source>
248
- <translation type="unfinished"></translation>
249
+ <translation type="unfinished">Información</translation>
250
</message>
251
<message>
252
<source>Connect to avsproxy</source>
253
- <translation type="unfinished"></translation>
254
+ <translation type="unfinished">Conectar a avsproxy</translation>
255
</message>
256
<message>
257
<source>Quit</source>
258
- <translation type="unfinished"></translation>
259
+ <translation type="unfinished">Salir</translation>
260
</message>
261
<message>
262
<source>Undo</source>
263
- <translation type="unfinished"></translation>
264
+ <translation type="unfinished">Deshacer</translation>
265
</message>
266
<message>
267
<source>Reset Edit</source>
268
- <translation type="unfinished"></translation>
269
+ <translation type="unfinished">Deshacer edición</translation>
270
</message>
271
<message>
272
<source>Cut</source>
273
- <translation type="unfinished"></translation>
274
+ <translation type="unfinished">Cortar</translation>
275
</message>
276
<message>
277
<source>Copy</source>
278
279
</message>
280
<message>
281
<source>Paste</source>
282
- <translation type="unfinished"></translation>
283
+ <translation type="unfinished">Pegar</translation>
284
</message>
285
<message>
286
<source>Delete</source>
287
- <translation type="unfinished"></translation>
288
+ <translation type="unfinished">Borrar</translation>
289
</message>
290
<message>
291
<source>Set Marker A</source>
292
- <translation type="unfinished"></translation>
293
+ <translation type="unfinished">Establecer Marcador A</translation>
294
</message>
295
<message>
296
<source>Set Marker B</source>
297
- <translation type="unfinished"></translation>
298
+ <translation type="unfinished">Establecer Marcador B</translation>
299
</message>
300
<message>
301
<source>Decoder Option</source>
302
- <translation type="unfinished"></translation>
303
+ <translation type="unfinished">Opción Descodificador</translation>
304
</message>
305
<message>
306
<source>PostProcessing</source>
307
- <translation type="unfinished"></translation>
308
+ <translation type="unfinished">PostProcesado</translation>
309
</message>
310
<message>
311
<source>Filters</source>
312
313
</message>
314
<message>
315
<source>Select Track</source>
316
- <translation type="unfinished"></translation>
317
+ <translation type="unfinished">Seleccionar Pista</translation>
318
</message>
319
<message>
320
<source>Save audio</source>
321
- <translation type="unfinished"></translation>
322
+ <translation type="unfinished">Guardar sonido</translation>
323
</message>
324
<message>
325
<source>Build Option</source>
326
- <translation type="unfinished"></translation>
327
+ <translation type="unfinished">Opciones de versión</translation>
328
</message>
329
<message>
330
<source>Plugins</source>
331
332
</message>
333
<message>
334
<source>&Advanced</source>
335
- <translation type="unfinished"></translation>
336
+ <translation type="unfinished">&Avanzado</translation>
337
</message>
338
<message>
339
<source>Open Application &Log</source>
340
- <translation type="unfinished"></translation>
341
+ <translation type="unfinished">Abrir Registro &Aplicación</translation>
342
</message>
343
<message>
344
<source>Open Application Data &Folder</source>
345
- <translation type="unfinished"></translation>
346
+ <translation type="unfinished">Abrir Carpeta Datos &Aplicación</translation>
347
</message>
348
<message>
349
<source>About</source>
350
- <translation type="unfinished"></translation>
351
+ <translation type="unfinished">Acerca de...</translation>
352
</message>
353
<message>
354
<source>Play/Stop</source>
355
356
</message>
357
<message>
358
<source>Previous Frame</source>
359
- <translation type="unfinished"></translation>
360
+ <translation type="unfinished">Imagen Anterior</translation>
361
</message>
362
<message>
363
<source>Next Frame</source>
364
- <translation type="unfinished"></translation>
365
+ <translation type="unfinished">Imagen Siguiente</translation>
366
</message>
367
<message>
368
<source>Previous Intra Frame</source>
369
- <translation type="unfinished"></translation>
370
+ <translation type="unfinished">Imagen-Clave Anterior</translation>
371
</message>
372
<message>
373
<source>Next Intra Frame</source>
374
- <translation type="unfinished"></translation>
375
+ <translation type="unfinished">Imagen-Clave Siguiente</translation>
376
</message>
377
<message>
378
<source>Previous Black Frame</source>
379
- <translation type="unfinished"></translation>
380
+ <translation type="unfinished">Imagen Negra Anterior</translation>
381
</message>
382
<message>
383
<source>Next Black Frame</source>
384
- <translation type="unfinished"></translation>
385
+ <translation type="unfinished">Imagen Negra Siguiente</translation>
386
</message>
387
<message>
388
<source>First Frame</source>
389
- <translation type="unfinished"></translation>
390
+ <translation type="unfinished">Imagen Inicial</translation>
391
</message>
392
<message>
393
<source>Last Frame</source>
394
- <translation type="unfinished"></translation>
395
+ <translation type="unfinished">Imagen Final</translation>
396
</message>
397
<message>
398
<source>Go To Marker A</source>
399
- <translation type="unfinished"></translation>
400
+ <translation type="unfinished">Ir a Marcador A</translation>
401
</message>
402
<message>
403
<source>Go To Marker B</source>
404
- <translation type="unfinished"></translation>
405
+ <translation type="unfinished">ir a Marcador B</translation>
406
</message>
407
<message>
408
<source>Go To Time</source>
409
- <translation type="unfinished"></translation>
410
+ <translation type="unfinished">Ir a Tiempo</translation>
411
</message>
412
<message>
413
<source>R_esampling (Hz):</source>
414
415
</message>
416
<message>
417
<source>_Frame rate change:</source>
418
- <translation type="unfinished">Cambiar el número de FPS:</translation>
419
+ <translation type="unfinished">Cambiar el número de _FPS:</translation>
420
</message>
421
<message>
422
<source>No change</source>
423
424
</message>
425
<message>
426
<source>G_ain value:</source>
427
- <translation type="unfinished">Valor de la g_anancia:</translation>
428
+ <translation type="unfinished">Valor de la G_anancia:</translation>
429
</message>
430
<message>
431
<source>_Mixer:</source>
432
- <translation type="unfinished">Mezclador:</translation>
433
+ <translation type="unfinished">_Mezclador:</translation>
434
</message>
435
<message>
436
<source>Remix:</source>
437
- <translation type="unfinished"></translation>
438
+ <translation type="unfinished">Remezcla</translation>
439
</message>
440
<message>
441
<source>Shift audio:</source>
442
- <translation type="unfinished"></translation>
443
+ <translation type="unfinished">Desplazar sonido:</translation>
444
</message>
445
<message>
446
<source>Shift Value (ms):</source>
447
- <translation type="unfinished"></translation>
448
+ <translation type="unfinished">Valor Desplazamiento (ms)</translation>
449
</message>
450
<message>
451
<source>Audio Filters</source>
452
453
</message>
454
<message>
455
<source>Fontconfig</source>
456
- <translation type="unfinished">
457
- </translation>
458
+ <translation type="unfinished">Fuente</translation>
459
</message>
460
<message>
461
<source>FreeType 2</source>
462
463
</message>
464
<message>
465
<source>Select Video To Write</source>
466
- <translation type="unfinished">Seleccione archivo AVI para escribir</translation>
467
+ <translation type="unfinished">Seleccione Archivo para Guardar</translation>
468
</message>
469
<message>
470
<source>Save Job</source>
471
472
</message>
473
<message>
474
<source>Enable openGl support</source>
475
- <translation type="unfinished"></translation>
476
+ <translation type="unfinished">Activar soporte openGL</translation>
477
</message>
478
<message>
479
<source>_Split MPEG files every (MB):</source>
480
- <translation type="unfinished"></translation>
481
+ <translation type="unfinished">_Dividir archivos MPEG cada (MB)</translation>
482
</message>
483
<message>
484
<source>VDPAU (best)</source>
485
- <translation type="unfinished"></translation>
486
+ <translation type="unfinished">VDPAU (mejor)</translation>
487
</message>
488
<message>
489
<source>OpenGL (best)</source>
490
- <translation type="unfinished"></translation>
491
+ <translation type="unfinished">OpenGL (mejor)</translation>
492
</message>
493
<message>
494
<source>MS Windows GDI (SDL)</source>
495
496
</message>
497
<message>
498
<source>No audio track</source>
499
- <translation type="unfinished"></translation>
500
+ <translation type="unfinished">Sin pista de sonido</translation>
501
</message>
502
<message>
503
<source>An audio track is necessary to create such file</source>
504
- <translation type="unfinished"></translation>
505
+ <translation type="unfinished">Una pista de sonido es necesaria para crear este archivo</translation>
506
</message>
507
<message>
508
<source>Codec Error</source>
509
510
</message>
511
<message>
512
<source>Cannot select the MPEG-4 SP codec.</source>
513
- <translation type="unfinished"></translation>
514
+ <translation type="unfinished">No se puede seleccionar el codec MPEG-4</translation>
515
</message>
516
<message>
517
<source>No AAC audio encoder plugin found.</source>
518
- <translation type="unfinished"></translation>
519
+ <translation type="unfinished">No se ha encontradio plugin codificador para sonido AAC</translation>
520
</message>
521
<message>
522
<source>The MP3 codec does not allow disabling reservoir.
523
Install lame plugin</source>
524
- <translation type="unfinished"></translation>
525
+ <translation type="unfinished">El codec MP3 no permite desactivar reserva
526
+Instale el plugin lame</translation>
527
</message>
528
<message>
529
<source>You don't have LAME!.
530
It is needed to create FLV video.</source>
531
- <translation type="unfinished"></translation>
532
+ <translation type="unfinished">¡No tiene LAME!.
533
+Se necesita para crear videos FLV</translation>
534
</message>
535
<message>
536
<source>Cannot select FLV1 codec.</source>
537
- <translation type="unfinished"></translation>
538
+ <translation type="unfinished">No se puede seleccionar codec FLV1</translation>
539
</message>
540
<message>
541
<source>Cannot select mpeg4 sp codec.</source>
542
- <translation type="unfinished"></translation>
543
+ <translation type="unfinished">No se puede seleccionar codec MPEG-4 SP</translation>
544
</message>
545
<message>
546
<source>You don't have FAAC!.
547
It is needed to create PSP compatible video.</source>
548
- <translation type="unfinished"></translation>
549
+ <translation type="unfinished">¡No tiene FAAC!.
550
+Se necesita para crear video compatible PSP</translation>
551
</message>
552
<message>
553
<source>Select script to save</source>
554
- <translation type="unfinished"></translation>
555
+ <translation type="unfinished">Seleccione script para guardar</translation>
556
</message>
557
<message>
558
<source>Not coded in this version</source>
559
560
</message>
561
<message>
562
<source>Select AVI File to Append...</source>
563
- <translation type="unfinished">Seleccionar archivo AVI para adjuntar...</translation>
564
+ <translation type="unfinished">Seleccionar archivo AVI para anexar...</translation>
565
</message>
566
<message>
567
<source>Are you sure?</source>
568
569
</message>
570
<message>
571
<source>Something failed when appending</source>
572
- <translation type="unfinished">Ha sucedido algo inesperado</translation>
573
+ <translation type="unfinished">Algo falló al anexar</translation>
574
</message>
575
<message>
576
<source>Something bad happened (II)</source>
577
- <translation type="unfinished">Error no previsto (II)</translation>
578
+ <translation type="unfinished">Algo imprevisto pasó (II)</translation>
579
</message>
580
<message>
581
<source>Checking video</source>
582
583
</message>
584
<message>
585
<source>Marker A > B</source>
586
- <translation type="unfinished">Marcador A > B</translation>
587
+ <translation type="unfinished">Marcadordor A > B</translation>
588
</message>
589
<message>
590
<source>Cannot delete the selection.</source>
591
592
</message>
593
<message>
594
<source>You can't remove all frames</source>
595
- <translation type="unfinished">Imposible borrar todos los frames</translation>
596
+ <translation type="unfinished">Imposible borrar todas las imágenes</translation>
597
</message>
598
<message>
599
<source>Something bad happened</source>
600
601
</message>
602
<message>
603
<source>Frame Hex Dump</source>
604
- <translation type="unfinished">_Frames por segundo</translation>
605
+ <translation type="unfinished">Volcado Hex de la Imagen</translation>
606
</message>
607
<message>
608
<source>TimeStamp:</source>
609
- <translation type="unfinished"></translation>
610
+ <translation type="unfinished">Marca de Tiempo:</translation>
611
</message>
612
<message>
613
<source>Go to Time</source>
614
- <translation type="unfinished">Saltar a _tiempo...</translation>
615
+ <translation type="unfinished">Saltar a Tiempo</translation>
616
</message>
617
<message>
618
<source>_Filter strength:</source>
619
- <translation type="unfinished">Intensidad de Filtrado: </translation>
620
+ <translation type="unfinished">Intensidad de _Filtrado:</translation>
621
</message>
622
<message>
623
<source>_Swap U and V</source>
624
- <translation type="unfinished">Intercambiar U y V</translation>
625
+ <translation type="unfinished">_Intercambiar U y V</translation>
626
</message>
627
<message>
628
<source>_Deringing</source>
629
- <translation type="unfinished">
630
- </translation>
631
+ <translation type="unfinished"></translation>
632
</message>
633
<message>
634
<source>Output file</source>
635
- <translation type="unfinished"></translation>
636
+ <translation type="unfinished">Archivo de Salida</translation>
637
</message>
638
<message>
639
<source>Job name</source>
640
- <translation type="unfinished"></translation>
641
+ <translation type="unfinished">Nombre de Tarea</translation>
642
</message>
643
<message>
644
<source>Queue job to jobList</source>
645
- <translation type="unfinished"></translation>
646
+ <translation type="unfinished">Añadir tarea a la Cola</translation>
647
</message>
648
<message>
649
<source>Select Workbench to Save</source>
650
651
</message>
652
<message>
653
<source>Fail to save as jpeg</source>
654
- <translation type="unfinished"></translation>
655
+ <translation type="unfinished">Fallo al guardar como jpeg</translation>
656
</message>
657
<message>
658
<source>Saving as set of jpegs</source>
659
660
</message>
661
<message>
662
<source>BMP op failed</source>
663
- <translation type="unfinished">
664
- </translation>
665
+ <translation type="unfinished">Op BMP ha fallado</translation>
666
</message>
667
<message>
668
<source>Saving %s as a BMP file failed.</source>
669
- <translation type="unfinished">
670
- </translation>
671
+ <translation type="unfinished">Guardar %s como BMP ha fallado.</translation>
672
</message>
673
<message>
674
<source>File %s has been successfully saved.</source>
675
676
</message>
677
<message>
678
<source>Recent Files</source>
679
- <translation type="unfinished"></translation>
680
+ <translation type="unfinished">Archivos Recientes</translation>
681
</message>
682
<message>
683
<source>Recent Projects</source>
684
- <translation type="unfinished"></translation>
685
+ <translation type="unfinished">Proyectos Recientes</translation>
686
</message>
687
<message>
688
<source>Custom</source>
689
690
</message>
691
<message>
692
<source>_New frame rate:</source>
693
- <translation type="obsolete">Nuevo frames por segundo</translation>
694
+ <translation type="obsolete">_Nuevo imágenes por segundo</translation>
695
</message>
696
<message>
697
<source>Resample fps</source>
698
699
</message>
700
<message>
701
<source>Log</source>
702
- <translation type="obsolete">Log</translation>
703
+ <translation type="obsolete"></translation>
704
</message>
705
<message>
706
<source>Phods</source>
707
- <translation type="obsolete">Phods</translation>
708
+ <translation type="obsolete"></translation>
709
</message>
710
<message>
711
<source>EPZS</source>
712
- <translation type="obsolete">EPZS</translation>
713
+ <translation type="obsolete"></translation>
714
</message>
715
<message>
716
<source>H.263</source>
717
- <translation type="obsolete">H.263</translation>
718
+ <translation type="obsolete"></translation>
719
</message>
720
<message>
721
<source>MPEG</source>
722
- <translation type="obsolete">MPEG</translation>
723
+ <translation type="obsolete"></translation>
724
</message>
725
<message>
726
<source>Advanced Simple Profile</source>
727
- <translation type="unfinished"></translation>
728
+ <translation type="unfinished">Perfil Simple Avanzado</translation>
729
</message>
730
<message>
731
<source>Motion Estimation</source>
732
733
</message>
734
<message>
735
<source>VBR</source>
736
- <translation type="obsolete">VBR</translation>
737
+ <translation type="obsolete"></translation>
738
</message>
739
<message>
740
<source>Quality based</source>
741
- <translation type="obsolete">Calidad </translation>
742
+ <translation type="obsolete">Basado en Calidad </translation>
743
</message>
744
<message>
745
<source>_Bitrate:</source>
746
747
</message>
748
<message>
749
<source>_Quantizer:</source>
750
- <translation type="obsolete">Cuantizador:</translation>
751
+ <translation type="obsolete">_Cuantizador:</translation>
752
</message>
753
<message>
754
<source>CBR</source>
755
756
</message>
757
<message>
758
<source>Bit_rate mode:</source>
759
- <translation type="obsolete">Modo bitrate:</translation>
760
+ <translation type="obsolete">Modo bit_rate:</translation>
761
</message>
762
<message>
763
<source>LAME Configuration</source>
764
765
</message>
766
<message>
767
<source>Partial Start Frame:</source>
768
- <translation type="unfinished"></translation>
769
+ <translation type="unfinished">Imagen de Inicio Parcial</translation>
770
</message>
771
<message>
772
<source>Partial End Frame:</source>
773
- <translation type="unfinished"></translation>
774
+ <translation type="unfinished">Imagen de Final Parcial</translation>
775
</message>
776
<message>
777
<source>Configure child</source>
778
- <translation type="unfinished"></translation>
779
+ <translation type="unfinished">Configurar Pequeño</translation>
780
</message>
781
<message>
782
<source>Partial Video Filter</source>
783
- <translation type="unfinished"></translation>
784
+ <translation type="unfinished">Filtro de Video Parcial</translation>
785
</message>
786
<message>
787
<source>_Interlaced</source>
788
- <translation type="unfinished"></translation>
789
+ <translation type="unfinished">_Entrelazado</translation>
790
</message>
791
<message>
792
<source>Ca_rtoon mode</source>
793
- <translation type="unfinished"></translation>
794
+ <translation type="unfinished">Modo _Dibujos</translation>
795
</message>
796
<message>
797
<source>_Greyscale</source>
798
- <translation type="unfinished"></translation>
799
+ <translation type="unfinished">Escala de _Grises</translation>
800
</message>
801
<message>
802
<source>Turbo mode</source>
803
- <translation type="unfinished"></translation>
804
+ <translation type="unfinished">Modo Turbo</translation>
805
</message>
806
<message>
807
<source>C_hroma optimizer</source>
808
- <translation type="unfinished"></translation>
809
+ <translation type="unfinished">Optimizar C_roma</translation>
810
</message>
811
<message>
812
<source>Main</source>
813
- <translation type="unfinished"></translation>
814
+ <translation type="unfinished">Principal</translation>
815
</message>
816
<message>
817
<source>Very Low</source>
818
- <translation type="unfinished"></translation>
819
+ <translation type="unfinished">Muy Bajo</translation>
820
</message>
821
<message>
822
<source>Very High</source>
823
- <translation type="unfinished"></translation>
824
+ <translation type="unfinished">Muy Alto</translation>
825
</message>
826
<message>
827
<source>Ultra High</source>
828
- <translation type="unfinished"></translation>
829
+ <translation type="unfinished">Ultra Alto</translation>
830
</message>
831
<message>
832
<source>Motion Search Precision</source>
833
- <translation type="unfinished"></translation>
834
+ <translation type="unfinished">Precisión en Búsqueda de Movimiento</translation>
835
</message>
836
<message>
837
<source>Off</source>
838
839
</message>
840
<message>
841
<source>Mode Decision</source>
842
- <translation type="unfinished"></translation>
843
+ <translation type="unfinished">Decisión de Modo</translation>
844
</message>
845
<message>
846
<source>Limited Search</source>
847
- <translation type="unfinished"></translation>
848
+ <translation type="unfinished">Búsqueda Limitada</translation>
849
</message>
850
<message>
851
<source>Medium Search</source>
852
- <translation type="unfinished"></translation>
853
+ <translation type="unfinished">Búsqueda Media</translation>
854
</message>
855
<message>
856
<source>Wide Search</source>
857
- <translation type="unfinished"></translation>
858
+ <translation type="unfinished">Búsqueda Ampliada</translation>
859
</message>
860
<message>
861
<source>VHQ Mode</source>
862
- <translation type="unfinished"></translation>
863
+ <translation type="unfinished">Modo VHQ</translation>
864
</message>
865
<message>
866
<source>Max B Frames</source>
867
- <translation type="unfinished"></translation>
868
+ <translation type="unfinished">Max Imágenes B</translation>
869
</message>
870
<message>
871
<source>Quarter Pixel</source>
872
873
</message>
874
<message>
875
<source>Quantization Matrix</source>
876
- <translation type="unfinished"></translation>
877
+ <translation type="unfinished">Matriz de Cuantización</translation>
878
</message>
879
<message>
880
<source>Trellis Quantization</source>
881
- <translation type="unfinished"></translation>
882
+ <translation type="unfinished">Cuantización Trellis</translation>
883
</message>
884
<message>
885
<source>Two Pass Tuning</source>
886
- <translation type="unfinished"></translation>
887
+ <translation type="unfinished">Ajuste Dos Pasadas</translation>
888
</message>
889
<message>
890
<source>Key Frame Boost(%)</source>
891
- <translation type="unfinished"></translation>
892
+ <translation type="unfinished">Imagen-clave Boost(%)</translation>
893
</message>
894
<message>
895
<source>I-frames closer than...</source>
896
- <translation type="unfinished"></translation>
897
+ <translation type="unfinished">I-frames más cerca que...</translation>
898
</message>
899
<message>
900
<source>.. are reduced by(%)</source>
901
- <translation type="unfinished"></translation>
902
+ <translation type="unfinished">... son reducidas en (%)</translation>
903
</message>
904
<message>
905
<source>Max Overflow Improvement(%)</source>
906
- <translation type="unfinished"></translation>
907
+ <translation type="unfinished">Máximo Mejora por Desbordamiento (%)</translation>
908
</message>
909
<message>
910
<source>Max Overglow Degradation(%)</source>
911
- <translation type="unfinished"></translation>
912
+ <translation type="unfinished">Máxim Degradación por Desbordamiento (%)</translation>
913
</message>
914
<message>
915
<source>Curve Compression</source>
916
- <translation type="unfinished"></translation>
917
+ <translation type="unfinished">Curva de Compresión</translation>
918
</message>
919
<message>
920
<source>High Bitrate Scenes (%)</source>
921
- <translation type="unfinished"></translation>
922
+ <translation type="unfinished">Escenas de Alto Bitrate (%)</translation>
923
</message>
924
<message>
925
<source>Low Bitrate Scenes (%)</source>
926
- <translation type="unfinished"></translation>
927
+ <translation type="unfinished">Escenas de Bajo Bitrate (%)</translation>
928
</message>
929
<message>
930
<source>Overflow Control Strength</source>
931
- <translation type="unfinished"></translation>
932
+ <translation type="unfinished">Intensidad de Control Desbordamiento</translation>
933
</message>
934
<message>
935
<source>Two Pass</source>
936
- <translation type="unfinished"></translation>
937
+ <translation type="unfinished">Dos Pasadas</translation>
938
</message>
939
<message>
940
<source>Xvid4 Configuration</source>
941
- <translation type="unfinished"></translation>
942
+ <translation type="unfinished">Configuración Xvid4</translation>
943
</message>
944
<message>
945
<source>Ready</source>
946
947
</message>
948
<message>
949
<source>Job Name</source>
950
- <translation type="unfinished"></translation>
951
+ <translation type="unfinished">Nombre Tarea</translation>
952
</message>
953
<message>
954
<source>Status</source>
955
- <translation type="unfinished"></translation>
956
+ <translation type="unfinished">Estado</translation>
957
</message>
958
<message>
959
<source>Start Time</source>
960
- <translation type="unfinished"></translation>
961
+ <translation type="unfinished">Hora de Inicio</translation>
962
</message>
963
<message>
964
<source>End Time</source>
965
- <translation type="unfinished"></translation>
966
+ <translation type="unfinished">Hora Final</translation>
967
</message>
968
<message>
969
<source>Sure!</source>
970
971
</message>
972
<message>
973
<source>Are you sure you want to delete %s job?</source>
974
- <translation type="unfinished"></translation>
975
+ <translation type="unfinished">¿Estás seguro de borrar %s tareas?</translation>
976
</message>
977
<message>
978
<source>Delete *all* job</source>
979
- <translation type="unfinished"></translation>
980
+ <translation type="unfinished">Borrar *todas* las tareas</translation>
981
</message>
982
<message>
983
<source>Are you sure you want to delete ALL jobs?</source>
984
- <translation type="unfinished"></translation>
985
+ <translation type="unfinished">¿Estás seguro de querer borrar TODAS las tareas?</translation>
986
</message>
987
<message>
988
<source>Already done</source>
989
- <translation type="unfinished"></translation>
990
+ <translation type="unfinished">Ya está hecho</translation>
991
</message>
992
<message>
993
<source>This script has already been successfully executed.</source>
994
- <translation type="unfinished"></translation>
995
+ <translation type="unfinished">Este script se ha ejecutado satisfactoriamente</translation>
996
</message>
997
</context>
998
<context>
999
1000
</message>
1001
<message>
1002
<source>Aften Configuration</source>
1003
- <translation type="unfinished"></translation>
1004
+ <translation type="unfinished">Configuración Aften</translation>
1005
</message>
1006
</context>
1007
<context>
1008
1009
</message>
1010
<message>
1011
<source>Adaptative sharpener by MarcFD.</source>
1012
- <translation type="unfinished">ASharp por MarcFD</translation>
1013
+ <translation type="unfinished">Agudizador adaptativo por MarcFD</translation>
1014
</message>
1015
</context>
1016
<context>
1017
1018
</message>
1019
<message>
1020
<source>Hardcode ass/ssa subtitles using libass.</source>
1021
- <translation type="unfinished"></translation>
1022
+ <translation type="unfinished">Grabado de subtítulos ass/ssa en vídeo mediante libass.</translation>
1023
</message>
1024
<message>
1025
<source>_Subtitle file (ASS/SSA):</source>
1026
- <translation type="unfinished">Archivo de subtítulo (ASS/SSA):</translation>
1027
+ <translation type="unfinished">Archivo de _subtítulo (ASS/SSA):</translation>
1028
</message>
1029
<message>
1030
<source>Select Subtitle file</source>
1031
1032
</message>
1033
<message>
1034
<source>_Line spacing:</source>
1035
- <translation type="unfinished">Entrelazando:</translation>
1036
+ <translation type="unfinished">Espaciado de _líneas:</translation>
1037
</message>
1038
<message>
1039
<source>_Font scale:</source>
1040
- <translation type="unfinished">Tamaño fuente</translation>
1041
+ <translation type="unfinished">Tamaño _fuente</translation>
1042
</message>
1043
<message>
1044
<source>_Top margin:</source>
1045
- <translation type="unfinished">
1046
- </translation>
1047
+ <translation type="unfinished">Margen _superior:</translation>
1048
</message>
1049
<message>
1050
<source>Botto_m margin</source>
1051
- <translation type="unfinished">Inferior</translation>
1052
+ <translation type="unfinished">_Margen inferior</translation>
1053
</message>
1054
<message>
1055
<source>ASS</source>
1056
1057
<name>autoWizard</name>
1058
<message>
1059
<source>Codec:</source>
1060
- <translation type="obsolete">Codec:</translation>
1061
+ <translation type="obsolete"></translation>
1062
</message>
1063
</context>
1064
<context>
1065
<name>avsfilter</name>
1066
<message>
1067
<source>_wine app file:</source>
1068
- <translation type="unfinished"></translation>
1069
+ <translation type="unfinished">Archivo apl. _wine</translation>
1070
</message>
1071
<message>
1072
<source>Select wine filename[wine/cedega/etc.]</source>
1073
- <translation type="unfinished"></translation>
1074
+ <translation type="unfinished">Seleccione archivo wine [wine/cedega/etc.]</translation>
1075
</message>
1076
<message>
1077
<source>_loader file:</source>
1078
- <translation type="unfinished"></translation>
1079
+ <translation type="unfinished">Archivo _cargador:</translation>
1080
</message>
1081
<message>
1082
<source>Select loader filename[avsload.exe]</source>
1083
- <translation type="unfinished"></translation>
1084
+ <translation type="unfinished">Seleccione archivo carga [avsload.exe]</translation>
1085
</message>
1086
<message>
1087
<source>_avs file:</source>
1088
- <translation type="unfinished"></translation>
1089
+ <translation type="unfinished">Archivo _avs:</translation>
1090
</message>
1091
<message>
1092
<source>Select avs filename[*.avs]</source>
1093
- <translation type="unfinished"></translation>
1094
+ <translation type="unfinished">Seleccione archivo avs [*.avs]</translation>
1095
</message>
1096
<message>
1097
<source>_pipe timeout:</source>
1098
1099
</message>
1100
<message>
1101
<source>AvsFilter config</source>
1102
- <translation type="unfinished"></translation>
1103
+ <translation type="unfinished">Configuración AVSFilter</translation>
1104
</message>
1105
</context>
1106
<context>
1107
<name>blacken</name>
1108
<message>
1109
<source>_Left border:</source>
1110
- <translation type="unfinished">Borde inferior:</translation>
1111
+ <translation type="unfinished">_Borde Izquierdo:</translation>
1112
</message>
1113
<message>
1114
<source>_Right border:</source>
1115
- <translation type="unfinished">Borde inferior:</translation>
1116
+ <translation type="unfinished">Borde _Derecho:</translation>
1117
</message>
1118
<message>
1119
<source>_Top border:</source>
1120
- <translation type="unfinished">Borde inferior:</translation>
1121
+ <translation type="unfinished">Borde _Superior:</translation>
1122
</message>
1123
<message>
1124
<source>_Bottom border:</source>
1125
- <translation type="unfinished">Borde inferior:</translation>
1126
+ <translation type="unfinished">Borde _Inferior:</translation>
1127
</message>
1128
<message>
1129
<source>Blacken Borders</source>
1130
1131
<name>blackenBorders</name>
1132
<message>
1133
<source>_Left border:</source>
1134
- <translation type="obsolete">Borde inferior:</translation>
1135
+ <translation type="obsolete">Borde _Izquierdo:</translation>
1136
</message>
1137
<message>
1138
<source>_Right border:</source>
1139
- <translation type="obsolete">Borde inferior:</translation>
1140
+ <translation type="obsolete">Borde _Derecho:</translation>
1141
</message>
1142
<message>
1143
<source>_Top border:</source>
1144
- <translation type="obsolete">Borde inferior:</translation>
1145
+ <translation type="obsolete">Borde _Superior:</translation>
1146
</message>
1147
<message>
1148
<source>_Bottom border:</source>
1149
- <translation type="obsolete">Borde inferior:</translation>
1150
+ <translation type="obsolete">Borde _Inferior:</translation>
1151
</message>
1152
<message>
1153
<source>Blacken Borders</source>
1154
1155
</message>
1156
<message>
1157
<source>_New frame rate:</source>
1158
- <translation type="obsolete">Nuevo frames por segundo</translation>
1159
+ <translation type="obsolete">_Nuevo frames por segundo</translation>
1160
</message>
1161
<message>
1162
<source>Resample fps</source>
1163
1164
</message>
1165
<message>
1166
<source>Source Fps:</source>
1167
- <translation type="unfinished"></translation>
1168
+ <translation type="unfinished">Fps origen:</translation>
1169
</message>
1170
<message>
1171
<source>Source frame rate:</source>
1172
- <translation type="unfinished"></translation>
1173
+ <translation type="unfinished">Ratio de imágenes/s origen</translation>
1174
</message>
1175
<message>
1176
<source>Destination Fps:</source>
1177
- <translation type="unfinished"></translation>
1178
+ <translation type="unfinished">Ratio de imágenes/s destino:</translation>
1179
</message>
1180
<message>
1181
<source>Destination frame rate:</source>
1182
- <translation type="unfinished"></translation>
1183
+ <translation type="unfinished">Ratio imágenes/s destino:</translation>
1184
</message>
1185
<message>
1186
<source>Change fps</source>
1187
- <translation type="unfinished"></translation>
1188
+ <translation type="unfinished">Cambiar Fps</translation>
1189
</message>
1190
<message>
1191
<source>Invalid fps</source>
1192
- <translation type="unfinished"></translation>
1193
+ <translation type="unfinished">Fps incorrecto</translation>
1194
</message>
1195
</context>
1196
<context>
1197
<name>changefps</name>
1198
<message>
1199
<source>Change FPS</source>
1200
- <translation type="unfinished"></translation>
1201
+ <translation type="unfinished">Cambiar FPS</translation>
1202
</message>
1203
<message>
1204
<source>Speed up/slow down the video as if altering fps. This filter changes duration.</source>
1205
- <translation type="unfinished"></translation>
1206
+ <translation type="unfinished">Acelerar/enlentecer video al alterar los fps; este filtro cambia la duración del video.</translation>
1207
</message>
1208
</context>
1209
<context>
1210
<name>chromashift</name>
1211
<message>
1212
<source>Shift chroma U/V to fix badly synced luma/chroma.</source>
1213
- <translation type="unfinished">Cambiar croma U/V en mal sincronismo de luma/croma.</translation>
1214
+ <translation type="unfinished">Cambiar croma U/V para corregir mal sincronismo de luma/croma.</translation>
1215
</message>
1216
<message>
1217
<source>ChromaShift</source>
1218
1219
<name>coloryuv</name>
1220
<message>
1221
<source>Avisynth color filter.</source>
1222
- <translation type="unfinished"></translation>
1223
+ <translation type="unfinished">Filtro de color Avisynth.</translation>
1224
</message>
1225
<message>
1226
<source>Color management filter.</source>
1227
- <translation type="unfinished"></translation>
1228
+ <translation type="unfinished">Filtro de control de Color.</translation>
1229
</message>
1230
<message>
1231
<source>AutoWhite</source>
1232
- <translation type="unfinished"></translation>
1233
+ <translation type="unfinished">Auto Luminosidad</translation>
1234
</message>
1235
<message>
1236
<source>AutoGain</source>
1237
- <translation type="unfinished"></translation>
1238
+ <translation type="unfinished">Auto Ganancia</translation>
1239
</message>
1240
<message>
1241
<source>Clip to Tv Range (16-235)</source>
1242
- <translation type="unfinished"></translation>
1243
+ <translation type="unfinished">Clip a rango de TV (16-235)</translation>
1244
</message>
1245
<message>
1246
<source>None</source>
1247
1248
</message>
1249
<message>
1250
<source>Levels:</source>
1251
- <translation type="unfinished"></translation>
1252
+ <translation type="unfinished">Niveles</translation>
1253
</message>
1254
<message>
1255
<source>Y gain</source>
1256
- <translation type="unfinished"></translation>
1257
+ <translation type="unfinished">Ganancia Y</translation>
1258
</message>
1259
<message>
1260
<source>Y Brightness</source>
1261
- <translation type="unfinished"></translation>
1262
+ <translation type="unfinished">Brillo Y</translation>
1263
</message>
1264
<message>
1265
<source>Y Gamma</source>
1266
- <translation type="unfinished"></translation>
1267
+ <translation type="unfinished">Gamma Y</translation>
1268
</message>
1269
<message>
1270
<source>Y Contrast</source>
1271
- <translation type="unfinished"></translation>
1272
+ <translation type="unfinished">Contraste Y</translation>
1273
</message>
1274
<message>
1275
<source>U gain</source>
1276
- <translation type="unfinished"></translation>
1277
+ <translation type="unfinished">Ganancia U</translation>
1278
</message>
1279
<message>
1280
<source>U Brightness</source>
1281
- <translation type="unfinished"></translation>
1282
+ <translation type="unfinished">Brillo U</translation>
1283
</message>
1284
<message>
1285
<source>U Contrast</source>
1286
- <translation type="unfinished"></translation>
1287
+ <translation type="unfinished">Contraste U</translation>
1288
</message>
1289
<message>
1290
<source>V gain</source>
1291
- <translation type="unfinished"></translation>
1292
+ <translation type="unfinished">Ganancia V</translation>
1293
</message>
1294
<message>
1295
<source>V Brightness</source>
1296
- <translation type="unfinished"></translation>
1297
+ <translation type="unfinished">Brillo V</translation>
1298
</message>
1299
<message>
1300
<source>V Contrast</source>
1301
- <translation type="unfinished"></translation>
1302
+ <translation type="unfinished">Contraste V</translation>
1303
</message>
1304
<message>
1305
<source>Flags</source>
1306
- <translation type="unfinished"></translation>
1307
+ <translation type="unfinished">Banderas</translation>
1308
</message>
1309
<message>
1310
<source>Y</source>
1311
1312
<name>convolution</name>
1313
<message>
1314
<source>_Process luma</source>
1315
- <translation type="unfinished">Procesando</translation>
1316
+ <translation type="unfinished">_Procesar luma</translation>
1317
</message>
1318
<message>
1319
<source>Process luma plane</source>
1320
- <translation type="unfinished">
1321
- </translation>
1322
+ <translation type="unfinished">Procesar plano luma</translation>
1323
</message>
1324
<message>
1325
<source>P_rocess chroma</source>
1326
- <translation type="unfinished">
1327
- </translation>
1328
+ <translation type="unfinished">P_rocesado chroma</translation>
1329
</message>
1330
<message>
1331
<source>Fast Convolution</source>
1332
- <translation type="unfinished">
1333
- </translation>
1334
+ <translation type="unfinished">Circunvolución Rápida</translation>
1335
</message>
1336
</context>
1337
<context>
1338
<name>crash</name>
1339
<message>
1340
<source>Load it</source>
1341
- <translation type="unfinished">
1342
- </translation>
1343
+ <translation type="unfinished">Cargarlo</translation>
1344
</message>
1345
<message>
1346
<source>Crash file</source>
1347
- <translation type="unfinished">Guardar el archivo</translation>
1348
+ <translation type="unfinished">Archivo para depuración error</translation>
1349
</message>
1350
<message>
1351
<source>I have detected a crash file.
1352
Do you want to load it ?
1353
(It will be deleted in all cases, you should save it if you want to keep it)</source>
1354
- <translation type="unfinished">Detectado un archivo crash.
1355
+ <translation type="unfinished">Detectado un archivo de depuración error.
1356
¿Desea cargarlo?
1357
(será borrado de todos modos, deberá guardarlo si no quiere perderlo)</translation>
1358
</message>
1359
1360
<name>crop</name>
1361
<message>
1362
<source>crop</source>
1363
- <translation type="unfinished"></translation>
1364
+ <translation type="unfinished">cortar</translation>
1365
</message>
1366
<message>
1367
<source>crop filter</source>
1368
- <translation type="unfinished"></translation>
1369
+ <translation type="unfinished">filtro de corte</translation>
1370
</message>
1371
<message>
1372
<source>Warning Cropping too much width ! Width reseted !
1373
</source>
1374
- <translation type="unfinished"></translation>
1375
+ <translation type="unfinished">¡Peligro cortando demasiada anchura! ¡Anchura restablecida!</translation>
1376
</message>
1377
<message>
1378
<source>Warning Cropping too much height ! Height reseted !
1379
</source>
1380
- <translation type="unfinished"></translation>
1381
+ <translation type="unfinished">¡Peligro cortando demasiada altura! ¡Altura restablecida!</translation>
1382
</message>
1383
</context>
1384
<context>
1385
1386
</message>
1387
<message>
1388
<source>Reset</source>
1389
- <translation type="obsolete">Limpiar</translation>
1390
+ <translation type="obsolete">Restablecer</translation>
1391
</message>
1392
</context>
1393
<context>
1394
1395
</message>
1396
<message>
1397
<source>Donald Graft decimate. Remove duplicate after telecide.</source>
1398
- <translation type="unfinished"></translation>
1399
+ <translation type="unfinished">Reducción Donald Graft. Elimiar duplicados después de telecide.</translation>
1400
</message>
1401
<message>
1402
<source>Discard closer</source>
1403
- <translation type="unfinished">
1404
- </translation>
1405
+ <translation type="unfinished">Descartar más cercano</translation>
1406
</message>
1407
<message>
1408
<source>Replace (interpolate)</source>
1409
- <translation type="unfinished">
1410
- </translation>
1411
+ <translation type="unfinished">Reemplazar (interpolar)</translation>
1412
</message>
1413
<message>
1414
<source>Discard longer dupe (animés)</source>
1415
- <translation type="unfinished"></translation>
1416
+ <translation type="unfinished">Descartar duplicado largo (animés)</translation>
1417
</message>
1418
<message>
1419
<source>Pulldown dupe removal</source>
1420
- <translation type="unfinished">
1421
- </translation>
1422
+ <translation type="unfinished">Quitar duplicados Pulldown</translation>
1423
</message>
1424
<message>
1425
<source>Fastest (no chroma, partial luma)</source>
1426
1427
</message>
1428
<message>
1429
<source>_Quality:</source>
1430
- <translation type="unfinished">Calidad</translation>
1431
+ <translation type="unfinished">_Calidad</translation>
1432
</message>
1433
<message>
1434
<source>_Threshold 1:</source>
1435
- <translation type="unfinished">Umbral:</translation>
1436
+ <translation type="unfinished">_Umbral 1:</translation>
1437
</message>
1438
<message>
1439
<source>T_hreshold 2:</source>
1440
- <translation type="unfinished">Umbral:</translation>
1441
+ <translation type="unfinished">U_mbral 2:</translation>
1442
</message>
1443
<message>
1444
<source>C_ycle:</source>
1445
- <translation type="unfinished">Azul:</translation>
1446
+ <translation type="unfinished">C_iclo:</translation>
1447
</message>
1448
<message>
1449
<source>Sho_w</source>
1450
- <translation type="unfinished"></translation>
1451
+ <translation type="unfinished">Mo_strar</translation>
1452
</message>
1453
<message>
1454
<source>Decomb Decimate</source>
1455
- <translation type="unfinished">
1456
- </translation>
1457
+ <translation type="unfinished"></translation>
1458
</message>
1459
</context>
1460
<context>
1461
1462
</message>
1463
<message>
1464
<source>Blend a logo by interpolating its surrounding box.</source>
1465
- <translation type="unfinished">Mezclar logo interpolando lienzo circundante.</translation>
1466
+ <translation type="unfinished">Borrar logo interpolando imagen circundante.</translation>
1467
</message>
1468
</context>
1469
<context>
1470
1471
</message>
1472
<message>
1473
<source>Keep nb of frames and fps</source>
1474
- <translation type="unfinished">
1475
- </translation>
1476
+ <translation type="unfinished">Mantener núm. de imágenes y fps</translation>
1477
</message>
1478
<message>
1479
<source>Double nb of frames and fps</source>
1480
- <translation type="unfinished">
1481
- </translation>
1482
+ <translation type="unfinished">Doblar núm. de imágenes y fps</translation>
1483
</message>
1484
<message>
1485
<source>Double nb of frames (slow motion)</source>
1486
- <translation type="unfinished">
1487
- </translation>
1488
+ <translation type="unfinished">Doblar núm. de imágenes (slow motion)</translation>
1489
</message>
1490
<message>
1491
<source>_Top Field First:</source>
1492
- <translation type="unfinished"></translation>
1493
+ <translation type="unfinished">_Campo Superior Primero:</translation>
1494
</message>
1495
<message>
1496
<source>_Mode:</source>
1497
1498
</message>
1499
<message>
1500
<source>Extra check, avoid using it</source>
1501
- <translation type="unfinished">
1502
- </translation>
1503
+ <translation type="unfinished">Comprobación extra, evitar usarlo</translation>
1504
</message>
1505
<message>
1506
<source>DGBob</source>
1507
- <translation type="unfinished">
1508
- </translation>
1509
+ <translation type="unfinished"></translation>
1510
</message>
1511
</context>
1512
<context>
1513
<name>dmxHeader</name>
1514
<message>
1515
<source>Out of memory</source>
1516
- <translation type="obsolete">Out of memory</translation>
1517
+ <translation type="obsolete">Sin memoria</translation>
1518
</message>
1519
<message>
1520
<source>Opening MPEG</source>
1521
1522
</message>
1523
<message>
1524
<source>Priority:</source>
1525
- <translation type="unfinished">Prioridad.</translation>
1526
+ <translation type="unfinished">Prioridad:</translation>
1527
</message>
1528
<message>
1529
<source>High</source>
1530
1531
</message>
1532
<message>
1533
<source>Phase:</source>
1534
- <translation type="unfinished"></translation>
1535
+ <translation type="unfinished">Fase:</translation>
1536
</message>
1537
<message>
1538
<source>Video Codec:</source>
1539
- <translation type="unfinished"></translation>
1540
+ <translation type="unfinished">Códec de Video:</translation>
1541
</message>
1542
<message>
1543
<source><html><head><meta name="qrichtext" content="1" /><style type="text/css">
1544
1545
</message>
1546
<message>
1547
<source>In</source>
1548
- <translation type="unfinished">En</translation>
1549
+ <translation type="unfinished">Entrada</translation>
1550
</message>
1551
<message>
1552
<source>Fade in</source>
1553
1554
</message>
1555
<message>
1556
<source>_Fade type:</source>
1557
- <translation type="unfinished">Tipo de imagen:</translation>
1558
+ <translation type="unfinished">Tipo de _Desvanecimiento:</translation>
1559
</message>
1560
<message>
1561
<source>_Start time (ms):</source>
1562
- <translation type="unfinished"></translation>
1563
+ <translation type="unfinished">_Comienzo (ms)</translation>
1564
</message>
1565
<message>
1566
<source>_End time (ms):</source>
1567
- <translation type="unfinished"></translation>
1568
+ <translation type="unfinished">_Final (ms)</translation>
1569
</message>
1570
<message>
1571
<source>Fade to black</source>
1572
- <translation type="unfinished"></translation>
1573
+ <translation type="unfinished">Fundido a Negro</translation>
1574
</message>
1575
</context>
1576
<context>
1577
1578
</message>
1579
<message>
1580
<source>Wide (16:9)</source>
1581
- <translation type="unfinished"></translation>
1582
+ <translation type="unfinished">Ancho (16:9)</translation>
1583
</message>
1584
<message>
1585
<source>Default</source>
1586
1587
</message>
1588
<message>
1589
<source>MB comparison</source>
1590
- <translation type="unfinished"></translation>
1591
+ <translation type="unfinished">Comparación en MB</translation>
1592
</message>
1593
<message>
1594
<source>Fewest bits (vhq)</source>
1595
- <translation type="unfinished"></translation>
1596
+ <translation type="unfinished">Menos bits (vhq)</translation>
1597
</message>
1598
<message>
1599
<source>Rate distortion</source>
1600
- <translation type="unfinished"></translation>
1601
+ <translation type="unfinished">Distorsión de Ratio</translation>
1602
</message>
1603
<message>
1604
<source>One thread</source>
1605
- <translation type="unfinished"></translation>
1606
+ <translation type="unfinished">Un hilo</translation>
1607
</message>
1608
<message>
1609
<source>Two threads)</source>
1610
- <translation type="unfinished"></translation>
1611
+ <translation type="unfinished">Dos hilos</translation>
1612
</message>
1613
<message>
1614
<source>Three threads</source>
1615
- <translation type="unfinished"></translation>
1616
+ <translation type="unfinished">Tres hilos</translation>
1617
</message>
1618
<message>
1619
<source>Auto (#cpu)</source>
1620
1621
</message>
1622
<message>
1623
<source>Interlaced</source>
1624
- <translation type="unfinished"></translation>
1625
+ <translation type="unfinished">Entrelazado</translation>
1626
</message>
1627
<message>
1628
<source>Top Field First</source>
1629
- <translation type="unfinished"></translation>
1630
+ <translation type="unfinished">Campo Superior Primero</translation>
1631
</message>
1632
<message>
1633
<source>Bottom Field First</source>
1634
- <translation type="unfinished"></translation>
1635
+ <translation type="unfinished">Campo Inferior Primero</translation>
1636
</message>
1637
<message>
1638
<source>Threading</source>
1639
1640
</message>
1641
<message>
1642
<source>Mi_n. quantizer:</source>
1643
- <translation type="unfinished"></translation>
1644
+ <translation type="unfinished">Cuantizador Mi_n.:</translation>
1645
</message>
1646
<message>
1647
<source>Ma_x. quantizer:</source>
1648
- <translation type="unfinished"></translation>
1649
+ <translation type="unfinished">Cuantizador Ma_x.:</translation>
1650
</message>
1651
<message>
1652
<source>Max. quantizer _difference:</source>
1653
- <translation type="unfinished"></translation>
1654
+ <translation type="unfinished">_Diferencia máx. cuantizador</translation>
1655
</message>
1656
<message>
1657
<source>VBV Buffer Size:</source>
1658
- <translation type="unfinished"></translation>
1659
+ <translation type="unfinished">Tamaño buffer VBV</translation>
1660
</message>
1661
<message>
1662
<source>Max bitrate (kb/s):</source>
1663
- <translation type="unfinished"></translation>
1664
+ <translation type="unfinished">Bitrate máx. (kb/s)</translation>
1665
</message>
1666
<message>
1667
<source>_Trellis quantization</source>
1668
- <translation type="unfinished"></translation>
1669
+ <translation type="unfinished">Cuantización _Trellis</translation>
1670
</message>
1671
<message>
1672
<source>_Number of B frames:</source>
1673
- <translation type="unfinished"></translation>
1674
+ <translation type="unfinished">_Número de imágenes B:</translation>
1675
</message>
1676
<message>
1677
<source>_Macroblock decision:</source>
1678
- <translation type="unfinished"></translation>
1679
+ <translation type="unfinished">Decisión de _Macrobloque:</translation>
1680
</message>
1681
<message>
1682
<source>Aspect ratio:</source>
1683
- <translation type="unfinished"></translation>
1684
+ <translation type="unfinished">Ratio de aspecto:</translation>
1685
</message>
1686
<message>
1687
<source>Matrices:</source>
1688
1689
</message>
1690
<message>
1691
<source>_Filesize tolerance (kb):</source>
1692
- <translation type="unfinished"></translation>
1693
+ <translation type="unfinished">Tolerancia _Tamaño (kb):</translation>
1694
</message>
1695
<message>
1696
<source>_Quantizer compression:</source>
1697
- <translation type="unfinished"></translation>
1698
+ <translation type="unfinished">_Cuantizador de compresión:</translation>
1699
</message>
1700
<message>
1701
<source>Quantizer _blur:</source>
1702
- <translation type="unfinished"></translation>
1703
+ <translation type="unfinished">Cuantizador _blur:</translation>
1704
</message>
1705
<message>
1706
<source>_Gop Size:</source>
1707
- <translation type="unfinished"></translation>
1708
+ <translation type="unfinished">Tamaño _Gop:</translation>
1709
</message>
1710
<message>
1711
<source>_Interlaced:</source>
1712
- <translation type="unfinished"></translation>
1713
+ <translation type="unfinished">_Entrelazado:</translation>
1714
</message>
1715
<message>
1716
<source>Field Order:</source>
1717
- <translation type="unfinished"></translation>
1718
+ <translation type="unfinished">Orden de Campo:</translation>
1719
</message>
1720
<message>
1721
<source>Basic Settings</source>
1722
- <translation type="unfinished"></translation>
1723
+ <translation type="unfinished">Configuración básica</translation>
1724
</message>
1725
<message>
1726
<source>Adv. Settings</source>
1727
- <translation type="unfinished"></translation>
1728
+ <translation type="unfinished">Configuración Avanzada</translation>
1729
</message>
1730
<message>
1731
<source>Interlacing</source>
1732
1733
</message>
1734
<message>
1735
<source>Quantization</source>
1736
- <translation type="unfinished"></translation>
1737
+ <translation type="unfinished">Cuantización</translation>
1738
</message>
1739
<message>
1740
<source>Rate Control</source>
1741
1742
</message>
1743
<message>
1744
<source>libavcodec MPEG-2 configuration</source>
1745
- <translation type="unfinished"></translation>
1746
+ <translation type="unfinished">Configuración libavcodec MPEG-2</translation>
1747
</message>
1748
</context>
1749
<context>
1750
1751
</message>
1752
<message>
1753
<source>MB comparison</source>
1754
- <translation type="unfinished"></translation>
1755
+ <translation type="unfinished">Comparación de MB</translation>
1756
</message>
1757
<message>
1758
<source>Fewest bits (vhq)</source>
1759
- <translation type="unfinished"></translation>
1760
+ <translation type="unfinished">Menores bits (vhq)</translation>
1761
</message>
1762
<message>
1763
<source>Rate distortion</source>
1764
- <translation type="unfinished"></translation>
1765
+ <translation type="unfinished">Distorsión de Ratio</translation>
1766
</message>
1767
<message>
1768
<source>One thread</source>
1769
- <translation type="unfinished"></translation>
1770
+ <translation type="unfinished">Un hilo</translation>
1771
</message>
1772
<message>
1773
<source>Two threads)</source>
1774
- <translation type="unfinished"></translation>
1775
+ <translation type="unfinished">Dos hilos</translation>
1776
</message>
1777
<message>
1778
<source>Three threads</source>
1779
- <translation type="unfinished"></translation>
1780
+ <translation type="unfinished">Tres hilos</translation>
1781
</message>
1782
<message>
1783
<source>Auto (#cpu)</source>
1784
1785
</message>
1786
<message>
1787
<source>Threading</source>
1788
- <translation type="unfinished">Hilos</translation>
1789
+ <translation type="unfinished">Procesos</translation>
1790
</message>
1791
<message>
1792
<source>Mi_n. quantizer:</source>
1793
- <translation type="unfinished"></translation>
1794
+ <translation type="unfinished">Cuantizador Mi_n.:</translation>
1795
</message>
1796
<message>
1797
<source>Ma_x. quantizer:</source>
1798
- <translation type="unfinished"></translation>
1799
+ <translation type="unfinished">Cuantizador Ma_x.:</translation>
1800
</message>
1801
<message>
1802
<source>Max. quantizer _difference:</source>
1803
- <translation type="unfinished"></translation>
1804
+ <translation type="unfinished">_Diferencia máx. cuantizador</translation>
1805
</message>
1806
<message>
1807
<source>4_MV</source>
1808
1809
</message>
1810
<message>
1811
<source>_Trellis quantization</source>
1812
- <translation type="unfinished"></translation>
1813
+ <translation type="unfinished">Cuantización _Trellis</translation>
1814
</message>
1815
<message>
1816
<source>_Quarter pixel</source>
1817
1818
</message>
1819
<message>
1820
<source>_Number of B frames:</source>
1821
- <translation type="unfinished"></translation>
1822
+ <translation type="unfinished">_Número de imágenes-B:</translation>
1823
</message>
1824
<message>
1825
<source>_Quantization type:</source>
1826
- <translation type="unfinished"></translation>
1827
+ <translation type="unfinished">Tipo de _Cuantización:</translation>
1828
</message>
1829
<message>
1830
<source>_Macroblock decision:</source>
1831
- <translation type="unfinished"></translation>
1832
+ <translation type="unfinished">Decisión de _Macrobloque:</translation>
1833
</message>
1834
<message>
1835
<source>_Filesize tolerance (kb):</source>
1836
- <translation type="unfinished"></translation>
1837
+ <translation type="unfinished">Tolerancia _tamaño archivo (kb):</translation>
1838
</message>
1839
<message>
1840
<source>_Quantizer compression:</source>
1841
- <translation type="unfinished"></translation>
1842
+ <translation type="unfinished">Compresión Cuanti_zador</translation>
1843
</message>
1844
<message>
1845
<source>Quantizer _blur:</source>
1846
- <translation type="unfinished"></translation>
1847
+ <translation type="unfinished">Cuantizador _blur:</translation>
1848
</message>
1849
<message>
1850
<source>_Gop Size:</source>
1851
- <translation type="unfinished"></translation>
1852
+ <translation type="unfinished">Tamaño _Gop</translation>
1853
</message>
1854
<message>
1855
<source>User Interface</source>
1856
1857
</message>
1858
<message>
1859
<source>Advanced Simple Profile</source>
1860
- <translation type="unfinished"></translation>
1861
+ <translation type="unfinished">Perfil avanzado simple</translation>
1862
</message>
1863
<message>
1864
<source>Motion Estimation</source>
1865
1866
</message>
1867
<message>
1868
<source>Quantization</source>
1869
- <translation type="unfinished"></translation>
1870
+ <translation type="unfinished">Cuantización</translation>
1871
</message>
1872
<message>
1873
<source>Rate Control</source>
1874
1875
</message>
1876
<message>
1877
<source>libavcodec MPEG-4 configuration</source>
1878
- <translation type="unfinished"></translation>
1879
+ <translation type="unfinished">Configuración libavcodec MPEG-4</translation>
1880
</message>
1881
</context>
1882
<context>
1883
1884
</message>
1885
<message>
1886
<source>MB comparison</source>
1887
- <translation type="unfinished"></translation>
1888
+ <translation type="unfinished">Comparación MB</translation>
1889
</message>
1890
<message>
1891
<source>Fewest bits (vhq)</source>
1892
- <translation type="unfinished"></translation>
1893
+ <translation type="unfinished">Menores bits (vhq)</translation>
1894
</message>
1895
<message>
1896
<source>Rate distortion</source>
1897
- <translation type="unfinished"></translation>
1898
+ <translation type="unfinished">Distorsión de Ratio</translation>
1899
</message>
1900
<message>
1901
<source>Mi_n. quantizer:</source>
1902
- <translation type="unfinished"></translation>
1903
+ <translation type="unfinished">Cuantizador mi_n.:</translation>
1904
</message>
1905
<message>
1906
<source>Ma_x. quantizer:</source>
1907
- <translation type="unfinished"></translation>
1908
+ <translation type="unfinished">Cuantizador ma_x.:</translation>
1909
</message>
1910
<message>
1911
<source>Max. quantizer _difference:</source>
1912
- <translation type="unfinished"></translation>
1913
+ <translation type="unfinished">_Diferencia máx. cuantizador</translation>
1914
</message>
1915
<message>
1916
<source>_Trellis quantization</source>
1917
- <translation type="unfinished"></translation>
1918
+ <translation type="unfinished">Cuantización _Trellis</translation>
1919
</message>
1920
<message>
1921
<source>_Filesize tolerance (kb):</source>
1922
- <translation type="unfinished"></translation>
1923
+ <translation type="unfinished">Tolerancia ta_maño (kb):</translation>
1924
</message>
1925
<message>
1926
<source>_Quantizer compression:</source>
1927
- <translation type="unfinished"></translation>
1928
+ <translation type="unfinished">Compresión Cuanti_zador</translation>
1929
</message>
1930
<message>
1931
<source>Quantizer _blur:</source>
1932
- <translation type="unfinished"></translation>
1933
+ <translation type="unfinished">Cuantizador _blur:</translation>
1934
</message>
1935
<message>
1936
<source>_Gop Size:</source>
1937
- <translation type="unfinished"></translation>
1938
+ <translation type="unfinished">Tamaño _Gop:</translation>
1939
</message>
1940
<message>
1941
<source>User Interface</source>
1942
1943
</message>
1944
<message>
1945
<source>Quantization</source>
1946
- <translation type="unfinished"></translation>
1947
+ <translation type="unfinished">Cuantizador</translation>
1948
</message>
1949
<message>
1950
<source>Rate Control</source>
1951
1952
</message>
1953
<message>
1954
<source>libavcodec MPEG-4 configuration</source>
1955
- <translation type="unfinished"></translation>
1956
+ <translation type="unfinished">Configuración libavcodec MPEG-4</translation>
1957
</message>
1958
</context>
1959
<context>
1960
1961
<name>flux</name>
1962
<message>
1963
<source>Spatio-temporal cleaner by Ross Thomas.</source>
1964
- <translation type="unfinished">
1965
- </translation>
1966
+ <translation type="unfinished">Limpiador espacio-temporal por Ross Thomas.</translation>
1967
</message>
1968
<message>
1969
<source>_Temporal threshold:</source>
1970
- <translation type="unfinished">Umbral:</translation>
1971
+ <translation type="unfinished">Umbral _temporal:</translation>
1972
</message>
1973
<message>
1974
<source>_Spatial threshold:</source>
1975
- <translation type="unfinished">Umbral:</translation>
1976
+ <translation type="unfinished">Umbral e_spacial:</translation>
1977
</message>
1978
<message>
1979
<source>FluxSmooth</source>
1980
- <translation type="unfinished">
1981
- </translation>
1982
+ <translation type="unfinished"></translation>
1983
</message>
1984
</context>
1985
<context>
1986
1987
</message>
1988
<message>
1989
<source>MB comparison</source>
1990
- <translation type="unfinished"></translation>
1991
+ <translation type="unfinished">Comparación MB</translation>
1992
</message>
1993
<message>
1994
<source>Fewest bits (vhq)</source>
1995
- <translation type="unfinished"></translation>
1996
+ <translation type="unfinished">Menores bits (vhq)</translation>
1997
</message>
1998
<message>
1999
<source>Rate distortion</source>
2000
- <translation type="unfinished"></translation>
2001
+ <translation type="unfinished">Distorsión de ratio</translation>
2002
</message>
2003
<message>
2004
- <source>Mi_n. quantizer:</source>
2005
- <translation type="unfinished"></translation>
2006
+ <source>Mi_n. quantizer:</source>
2007
+ <translation type="unfinished">Cuantizador mi_n.:</translation>
2008
</message>
2009
<message>
2010
<source>Ma_x. quantizer:</source>
2011
- <translation type="unfinished"></translation>
2012
+ <translation type="unfinished">Cuantizador ma_x.:</translation>
2013
</message>
2014
<message>
2015
<source>Max. quantizer _difference:</source>
2016
- <translation type="unfinished"></translation>
2017
+ <translation type="unfinished">_Diferencia máx. cuantizador</translation>
2018
</message>
2019
<message>
2020
<source>_Trellis quantization</source>
2021
- <translation type="unfinished"></translation>
2022
+ <translation type="unfinished">Cuantización _Trellis</translation>
2023
</message>
2024
<message>
2025
<source>_Filesize tolerance (kb):</source>
2026
- <translation type="unfinished"></translation>
2027
+ <translation type="unfinished">Tolerancia ta_maño (kb):</translation>
2028
</message>
2029
<message>
2030
<source>_Quantizer compression:</source>
2031
- <translation type="unfinished"></translation>
2032
+ <translation type="unfinished">Compresión Cuanti_zador</translation>
2033
</message>
2034
<message>
2035
<source>Quantizer _blur:</source>
2036
- <translation type="unfinished"></translation>
2037
+ <translation type="unfinished">Cuantizador _blur:</translation>
2038
</message>
2039
<message>
2040
<source>_Gop Size:</source>
2041
- <translation type="unfinished"></translation>
2042
+ <translation type="unfinished">Tamaño _Gop:</translation>
2043
</message>
2044
<message>
2045
<source>User Interface</source>
2046
2047
</message>
2048
<message>
2049
<source>Quantization</source>
2050
- <translation type="unfinished"></translation>
2051
+ <translation type="unfinished">Cuantización</translation>
2052
</message>
2053
<message>
2054
<source>Rate Control</source>
2055
2056
</message>
2057
<message>
2058
<source>libavcodec FLV1 configuration</source>
2059
- <translation type="unfinished"></translation>
2060
+ <translation type="unfinished">Configuración libavcodec FLV1</translation>
2061
</message>
2062
</context>
2063
<context>
2064
2065
<name>glYadif</name>
2066
<message>
2067
<source>Temporal & spatial check</source>
2068
- <translation type="obsolete">
2069
- </translation>
2070
+ <translation type="obsolete">Comprobación espacio & temporal</translation>
2071
</message>
2072
<message>
2073
<source>Bob, temporal & spatial check</source>
2074
- <translation type="obsolete">
2075
- </translation>
2076
+ <translation type="obsolete">Comprobación Bob, temporal & espacial</translation>
2077
</message>
2078
<message>
2079
<source>Skip spatial temporal check</source>
2080
- <translation type="obsolete">
2081
- </translation>
2082
+ <translation type="obsolete">Saltar comprobación espacial temporal</translation>
2083
</message>
2084
<message>
2085
<source>Bob, skip spatial temporal check</source>
2086
- <translation type="obsolete">
2087
- </translation>
2088
+ <translation type="obsolete">Saltar comprobación espacial, temporal y Bob</translation>
2089
</message>
2090
<message>
2091
<source>Bottom field first</source>
2092
- <translation type="obsolete">Campo inf. (conservar superior)</translation>
2093
+ <translation type="obsolete">Campo inf. primero</translation>
2094
</message>
2095
<message>
2096
<source>Top field first</source>
2097
- <translation type="obsolete">Intercambiar campos</translation>
2098
+ <translation type="obsolete">Campo superior primero</translation>
2099
</message>
2100
<message>
2101
<source>_Mode:</source>
2102
2103
</message>
2104
<message>
2105
<source>_Order:</source>
2106
- <translation type="obsolete">_Modo:</translation>
2107
+ <translation type="obsolete">_Orden:</translation>
2108
</message>
2109
<message>
2110
<source>yadif</source>
2111
- <translation type="obsolete">
2112
- </translation>
2113
+ <translation type="obsolete"></translation>
2114
</message>
2115
</context>
2116
<context>
2117
2118
<name>hflip</name>
2119
<message>
2120
<source>Horizontal Flip</source>
2121
- <translation type="unfinished"></translation>
2122
+ <translation type="unfinished">Volteo horizontal</translation>
2123
</message>
2124
<message>
2125
<source>Horizontally flip the image.</source>
2126
- <translation type="unfinished"></translation>
2127
+ <translation type="unfinished">Voltear horizontalmente la imagen.</translation>
2128
</message>
2129
</context>
2130
<context>
2131
2132
</message>
2133
<message>
2134
<source>Number of I frames:</source>
2135
- <translation type="unfinished">Número de frames B:</translation>
2136
+ <translation type="unfinished">Número de frames I:</translation>
2137
</message>
2138
<message>
2139
<source>Number of P frames:</source>
2140
- <translation type="unfinished">Número de frames B:</translation>
2141
+ <translation type="unfinished">Número de frames P:</translation>
2142
</message>
2143
<message>
2144
<source>Number of B frames:</source>
2145
2146
</message>
2147
<message>
2148
<source>Max. B frames:</source>
2149
- <translation type="unfinished">Bitrate máx.:</translation>
2150
+ <translation type="unfinished">Imágenes B máx.:</translation>
2151
</message>
2152
<message>
2153
<source>Bitrate Histogram</source>
2154
2155
<name>hue</name>
2156
<message>
2157
<source>Mplayer Hue</source>
2158
- <translation type="unfinished"></translation>
2159
+ <translation type="unfinished">Mplayer matizado</translation>
2160
</message>
2161
<message>
2162
<source>Adjust hue and saturation.</source>
2163
2164
</message>
2165
<message>
2166
<source>HuffYUV Configuration</source>
2167
- <translation type="unfinished"></translation>
2168
+ <translation type="unfinished">Configuración HuffYUV</translation>
2169
</message>
2170
</context>
2171
<context>
2172
<name>indexing</name>
2173
<message>
2174
<source>Continue indexing</source>
2175
- <translation type="unfinished"></translation>
2176
+ <translation type="unfinished">Continuar indexado</translation>
2177
</message>
2178
<message>
2179
<source>Abort Requested</source>
2180
- <translation type="unfinished"></translation>
2181
+ <translation type="unfinished">Cancelar petición</translation>
2182
</message>
2183
<message>
2184
<source>Do you want to abort indexing ?</source>
2185
- <translation type="unfinished"></translation>
2186
+ <translation type="unfinished">¿Quiere anular el indexado?</translation>
2187
</message>
2188
<message>
2189
<source>Time Left :%02d:%02d:%02d</source>
2190
- <translation type="unfinished"></translation>
2191
+ <translation type="unfinished">Tiempo restante :%02d:%02d:%02d</translation>
2192
</message>
2193
</context>
2194
<context>
2195
<name>jobs</name>
2196
<message>
2197
<source>Avidemux Jobs</source>
2198
- <translation type="unfinished"></translation>
2199
+ <translation type="unfinished">Tareas Avidemux</translation>
2200
</message>
2201
<message>
2202
<source>Run all pending jobs</source>
2203
- <translation type="unfinished"></translation>
2204
+ <translation type="unfinished">Ejecutar todas las tareas pendientes</translation>
2205
</message>
2206
<message>
2207
<source>Run jobs</source>
2208
- <translation type="unfinished"></translation>
2209
+ <translation type="unfinished">Ejecutar tareas</translation>
2210
</message>
2211
<message>
2212
<source>Delete already executed jobs</source>
2213
- <translation type="unfinished"></translation>
2214
+ <translation type="unfinished">Borrar las tareas ya ejecutadas</translation>
2215
</message>
2216
<message>
2217
<source>Cleanup</source>
2218
- <translation type="unfinished"></translation>
2219
+ <translation type="unfinished">Limpiar</translation>
2220
</message>
2221
<message>
2222
<source>If you use VDPAU you cannot use CLI version</source>
2223
- <translation type="unfinished"></translation>
2224
+ <translation type="unfinished">Si se usa VDPAU no se puede utilizar la versión CLI</translation>
2225
</message>
2226
<message>
2227
<source>use QT4 version</source>
2228
- <translation type="unfinished"></translation>
2229
+ <translation type="unfinished">Usar versión QT4</translation>
2230
</message>
2231
<message>
2232
<source>Quit</source>
2233
- <translation type="unfinished"></translation>
2234
+ <translation type="unfinished">Salir</translation>
2235
</message>
2236
<message>
2237
<source>Oops</source>
2238
2239
</message>
2240
<message>
2241
<source>Delete Sel. Job</source>
2242
- <translation type="unfinished"></translation>
2243
+ <translation type="unfinished">Borrar tarea seleccionada</translation>
2244
</message>
2245
<message>
2246
<source>Run All Jobs</source>
2247
- <translation type="unfinished"></translation>
2248
+ <translation type="unfinished">Ejecutar todas las tareas</translation>
2249
</message>
2250
<message>
2251
<source>Run Selected Job</source>
2252
- <translation type="unfinished"></translation>
2253
+ <translation type="unfinished">Ejecutar la tarea seleccionada</translation>
2254
</message>
2255
</context>
2256
<context>
2257
2258
</message>
2259
<message>
2260
<source>_Quantizer:</source>
2261
- <translation type="unfinished">Cuantizador:</translation>
2262
+ <translation type="unfinished">_Cuantizador:</translation>
2263
</message>
2264
<message>
2265
<source>_ColorSpace:</source>
2266
2267
</message>
2268
<message>
2269
<source>Mjpeg Configuration</source>
2270
- <translation type="unfinished"></translation>
2271
+ <translation type="unfinished">Configuración Mjpeg</translation>
2272
</message>
2273
</context>
2274
<context>
2275
2276
</message>
2277
<message>
2278
<source>_Field order:</source>
2279
- <translation type="obsolete">
2280
- </translation>
2281
+ <translation type="obsolete">Orden _campo:</translation>
2282
</message>
2283
<message>
2284
<source>_Threshold:</source>
2285
- <translation type="obsolete">Umbral:</translation>
2286
+ <translation type="obsolete">_Umbral:</translation>
2287
</message>
2288
<message>
2289
<source>Smaller means more deinterlacing</source>
2290
- <translation type="obsolete">
2291
- </translation>
2292
+ <translation type="obsolete">Más pequeño implica más desentrelazado</translation>
2293
</message>
2294
<message>
2295
<source>_Sharp</source>
2296
- <translation type="obsolete">Agudizar</translation>
2297
+ <translation type="obsolete">_Agudizar</translation>
2298
</message>
2299
<message>
2300
<source>_Sharper engine:</source>
2301
- <translation type="obsolete">
2302
- </translation>
2303
+ <translation type="obsolete">_Motor de agudizado</translation>
2304
</message>
2305
<message>
2306
<source>T_woway</source>
2307
2308
</message>
2309
<message>
2310
<source>Extrapolate better (better not to use it)</source>
2311
- <translation type="obsolete">
2312
- </translation>
2313
+ <translation type="obsolete">Extrapolar mejor (mejor no usar)</translation>
2314
</message>
2315
<message>
2316
<source>_Map</source>
2317
2318
</message>
2319
<message>
2320
<source>Port of Donald Graft Kernel Deinterlacer.</source>
2321
- <translation type="unfinished"></translation>
2322
+ <translation type="unfinished">Núcleo de Desentrelazado portado de Donald Graft.</translation>
2323
</message>
2324
<message>
2325
<source>Top</source>
2326
2327
</message>
2328
<message>
2329
<source>_Field order:</source>
2330
- <translation type="unfinished">
2331
- </translation>
2332
+ <translation type="unfinished">_Orden de campo:</translation>
2333
</message>
2334
<message>
2335
<source>_Threshold:</source>
2336
- <translation type="unfinished">Umbral:</translation>
2337
+ <translation type="unfinished">_Umbral:</translation>
2338
</message>
2339
<message>
2340
<source>Smaller means more deinterlacing</source>
2341
- <translation type="unfinished">
2342
- </translation>
2343
+ <translation type="unfinished">Más pequeño implica más desentrelazado</translation>
2344
</message>
2345
<message>
2346
<source>_Sharp</source>
2347
- <translation type="unfinished">Agudizar</translation>
2348
+ <translation type="unfinished">_Agudizar</translation>
2349
</message>
2350
<message>
2351
<source>_Sharper engine:</source>
2352
- <translation type="unfinished">
2353
- </translation>
2354
+ <translation type="unfinished">_Motor de agudizado:</translation>
2355
</message>
2356
<message>
2357
<source>T_woway</source>
2358
- <translation type="unfinished">
2359
- </translation>
2360
+ <translation type="unfinished"></translation>
2361
</message>
2362
<message>
2363
<source>Extrapolate better (better not to use it)</source>
2364
- <translation type="unfinished">
2365
- </translation>
2366
+ <translation type="unfinished">Extrapolar mejor (mejor no usar)</translation>
2367
</message>
2368
<message>
2369
<source>_Map</source>
2370
2371
</message>
2372
<message>
2373
<source>Bit_rate mode:</source>
2374
- <translation type="unfinished">Modo bitrate:</translation>
2375
+ <translation type="unfinished">Modo bit_rate:</translation>
2376
</message>
2377
<message>
2378
<source>_Bitrate:</source>
2379
2380
</message>
2381
<message>
2382
<source>_Quality:</source>
2383
- <translation type="unfinished">Calidad</translation>
2384
+ <translation type="unfinished">_Calidad</translation>
2385
</message>
2386
<message>
2387
<source>_Disable reservoir:</source>
2388
- <translation type="unfinished"></translation>
2389
+ <translation type="unfinished">Desac_tivar reserva:</translation>
2390
</message>
2391
<message>
2392
<source>LAME Configuration</source>
2393
2394
<name>largeMedian</name>
2395
<message>
2396
<source>_Process luma</source>
2397
- <translation type="obsolete">Procesando</translation>
2398
+ <translation type="obsolete">_Procesar luma</translation>
2399
</message>
2400
<message>
2401
<source>Process luma plane</source>
2402
- <translation type="obsolete">
2403
- </translation>
2404
+ <translation type="obsolete">Procesar plano luma</translation>
2405
</message>
2406
<message>
2407
<source>P_rocess chroma</source>
2408
- <translation type="obsolete">
2409
- </translation>
2410
+ <translation type="obsolete">P_rocesar chroma</translation>
2411
</message>
2412
<message>
2413
<source>Fast Convolution</source>
2414
- <translation type="obsolete">
2415
- </translation>
2416
+ <translation type="obsolete"></translation>
2417
</message>
2418
</context>
2419
<context>
2420
<name>largemedian</name>
2421
<message>
2422
<source>Large Median (5x5).</source>
2423
- <translation type="unfinished"></translation>
2424
+ <translation type="unfinished">Mediado largo (5x5 px).</translation>
2425
</message>
2426
<message>
2427
<source>Median filter on 5x5 matrix.</source>
2428
- <translation type="unfinished"></translation>
2429
+ <translation type="unfinished">Filtro mediado en matrices de 5x5.</translation>
2430
</message>
2431
<message>
2432
<source>_Process luma</source>
2433
- <translation type="unfinished">Procesando</translation>
2434
+ <translation type="unfinished">_Procesado luma</translation>
2435
</message>
2436
<message>
2437
<source>Process luma plane</source>
2438
- <translation type="unfinished">
2439
- </translation>
2440
+ <translation type="unfinished">Procesado plano luma</translation>
2441
</message>
2442
<message>
2443
<source>P_rocess chroma</source>
2444
- <translation type="unfinished">
2445
- </translation>
2446
+ <translation type="unfinished">P_rocesado chroma</translation>
2447
</message>
2448
<message>
2449
<source>Fast Convolution</source>
2450
- <translation type="unfinished">
2451
- </translation>
2452
+ <translation type="unfinished"></translation>
2453
</message>
2454
</context>
2455
<context>
2456
2457
</message>
2458
<message>
2459
<source>Linear blend</source>
2460
- <translation type="obsolete">
2461
- </translation>
2462
+ <translation type="obsolete">Mezclado lineal</translation>
2463
</message>
2464
<message>
2465
<source>Linear interpolate</source>
2466
- <translation type="obsolete">Desentrelazado</translation>
2467
+ <translation type="obsolete">Interpolado lineal</translation>
2468
</message>
2469
<message>
2470
<source>Cubic interpolate</source>
2471
- <translation type="obsolete">mcDeinterlace</translation>
2472
+ <translation type="obsolete">Interpolado cúbico</translation>
2473
</message>
2474
<message>
2475
<source>Median interpolate</source>
2476
- <translation type="obsolete">Bitrate min.:</translation>
2477
+ <translation type="obsolete">Interpolado medio:</translation>
2478
</message>
2479
<message>
2480
<source>FFmpeg deint</source>
2481
- <translation type="obsolete">
2482
- </translation>
2483
+ <translation type="obsolete">Desen. FFmpeg</translation>
2484
</message>
2485
<message>
2486
<source>_Deinterlacing:</source>
2487
- <translation type="obsolete">Entrelazando:</translation>
2488
+ <translation type="obsolete">_Desentrelazado:</translation>
2489
</message>
2490
<message>
2491
<source>_Autolevel</source>
2492
- <translation type="obsolete">
2493
- </translation>
2494
+ <translation type="obsolete">_Autonivelado</translation>
2495
</message>
2496
<message>
2497
<source>libavcodec deinterlacer</source>
2498
- <translation type="obsolete">libavcodec descentralizado</translation>
2499
+ <translation type="obsolete">libavcodec desentrelazado</translation>
2500
</message>
2501
</context>
2502
<context>
2503
2504
<name>lavdeint</name>
2505
<message>
2506
<source>Libavdec Deinterlacers</source>
2507
- <translation type="unfinished"></translation>
2508
+ <translation type="unfinished">Desentrelazado con Libavdec</translation>
2509
</message>
2510
<message>
2511
<source>Lavcodec deinterlacer family.</source>
2512
- <translation type="unfinished"></translation>
2513
+ <translation type="unfinished">Familia desentrelazadores Lavcodec</translation>
2514
</message>
2515
<message>
2516
<source>None</source>
2517
2518
</message>
2519
<message>
2520
<source>Linear blend</source>
2521
- <translation type="unfinished">
2522
- </translation>
2523
+ <translation type="unfinished">Mezcla lineal</translation>
2524
</message>
2525
<message>
2526
<source>Linear interpolate</source>
2527
- <translation type="unfinished">Desentrelazado</translation>
2528
+ <translation type="obsolete">Interpolado lineal</translation>
2529
</message>
2530
<message>
2531
<source>Cubic interpolate</source>
2532
- <translation type="unfinished">mcDeinterlace</translation>
2533
+ <translation type="obsolete">Interpolado cúbico</translation>
2534
</message>
2535
<message>
2536
<source>Median interpolate</source>
2537
- <translation type="unfinished">Bitrate min.:</translation>
2538
+ <translation type="obsolete">Interpolado medio:</translation>
2539
</message>
2540
<message>
2541
<source>FFmpeg deint</source>
2542
- <translation type="unfinished">
2543
- </translation>
2544
+ <translation type="obsolete">Desen. FFmpeg</translation>
2545
</message>
2546
<message>
2547
<source>_Deinterlacing:</source>
2548
- <translation type="unfinished">Entrelazando:</translation>
2549
+ <translation type="obsolete">_Desentrelazado:</translation>
2550
</message>
2551
<message>
2552
<source>_Autolevel</source>
2553
- <translation type="unfinished">
2554
- </translation>
2555
+ <translation type="obsolete">_Autonivelado</translation>
2556
</message>
2557
<message>
2558
<source>libavcodec deinterlacer</source>
2559
- <translation type="unfinished">libavcodec descentralizado</translation>
2560
+ <translation type="unfinished">Desentrelazado con Libavdec</translation>
2561
</message>
2562
</context>
2563
<context>
2564
<name>licenseDialog</name>
2565
<message>
2566
<source>License</source>
2567
- <translation type="unfinished"></translation>
2568
+ <translation type="unfinished">Licencia</translation>
2569
</message>
2570
<message>
2571
<source>OK</source>
2572
2573
</message>
2574
<message>
2575
<source>Select JPEG file</source>
2576
- <translation type="unfinished">Seleccionar archivo IFO</translation>
2577
+ <translation type="unfinished">Seleccionar archivo JPEG</translation>
2578
</message>
2579
<message>
2580
<source>_X Position:</source>
2581
- <translation type="unfinished">Posición X:</translation>
2582
+ <translation type="unfinished">Posición _X:</translation>
2583
</message>
2584
<message>
2585
<source>_Y Position:</source>
2586
- <translation type="unfinished">Posición Y:</translation>
2587
+ <translation type="unfinished">Posición _Y:</translation>
2588
</message>
2589
<message>
2590
<source>_Alpha:</source>
2591
2592
</message>
2593
<message>
2594
<source>Add logo.</source>
2595
- <translation type="unfinished"></translation>
2596
+ <translation type="unfinished">Añadir logo.</translation>
2597
</message>
2598
<message>
2599
<source>Put a logo on top of video, with alpha blending.</source>
2600
- <translation type="unfinished"></translation>
2601
+ <translation type="unfinished">Poner un logo sobre el video, con mezclado alfa.</translation>
2602
</message>
2603
</context>
2604
<context>
2605
<name>lumaonly</name>
2606
<message>
2607
<source>GreyScale</source>
2608
- <translation type="unfinished"></translation>
2609
+ <translation type="unfinished">Escala de grises</translation>
2610
</message>
2611
<message>
2612
<source>Remove color, only key grey image.</source>
2613
- <translation type="unfinished"></translation>
2614
+ <translation type="unfinished">Eliminar el color, dejar imagen gris.</translation>
2615
</message>
2616
</context>
2617
<context>
2618
2619
</message>
2620
<message>
2621
<source>Transform</source>
2622
- <translation type="unfinished">Transform</translation>
2623
+ <translation type="unfinished">Transformar</translation>
2624
</message>
2625
<message>
2626
<source>Interlacing</source>
2627
2628
</message>
2629
<message>
2630
<source><big><b>Active Filters</b></big></source>
2631
- <translation type="unfinished"></translation>
2632
+ <translation type="unfinished"><big><b>Filtros Activos</b></big></translation>
2633
</message>
2634
<message>
2635
<source>C&onfigure</source>
2636
- <translation type="unfinished"></translation>
2637
+ <translation type="unfinished">C&onfigurar</translation>
2638
</message>
2639
<message>
2640
<source>P&artial</source>
2641
- <translation type="unfinished"></translation>
2642
+ <translation type="unfinished">P&arcial</translation>
2643
</message>
2644
<message>
2645
<source>Down</source>
2646
- <translation type="unfinished"></translation>
2647
+ <translation type="unfinished">Abajo</translation>
2648
</message>
2649
<message>
2650
<source>Up</source>
2651
- <translation type="unfinished"></translation>
2652
+ <translation type="unfinished">Arriba</translation>
2653
</message>
2654
<message>
2655
<source>Remove</source>
2656
- <translation type="unfinished"></translation>
2657
+ <translation type="unfinished">Eliminar</translation>
2658
</message>
2659
<message>
2660
<source>Add</source>
2661
- <translation type="unfinished"></translation>
2662
+ <translation type="unfinished">Añadir</translation>
2663
</message>
2664
<message>
2665
<source><big><b>Available Filters</b></big></source>
2666
- <translation type="unfinished"></translation>
2667
+ <translation type="unfinished"><big><b>Filtros Disponibles</b></big></translation>
2668
</message>
2669
<message>
2670
<source>OpenGl</source>
2671
2672
</message>
2673
<message>
2674
<source>&Preview</source>
2675
- <translation type="unfinished"></translation>
2676
+ <translation type="unfinished">&Vista anticipada</translation>
2677
</message>
2678
<message>
2679
<source>&Close</source>
2680
- <translation type="unfinished"></translation>
2681
+ <translation type="unfinished">&Cerrar</translation>
2682
</message>
2683
</context>
2684
<context>
2685
2686
</message>
2687
<message>
2688
<source>Motion compensation deinterlacer. Ported from MPlayer.</source>
2689
- <translation type="unfinished">
2690
- </translation>
2691
+ <translation type="unfinished">Desentrelazado compensación movimiento. Portado desde MPlayer</translation>
2692
</message>
2693
<message>
2694
<source>Fast</source>
2695
2696
</message>
2697
<message>
2698
<source>Bottom :</source>
2699
- <translation type="unfinished"></translation>
2700
+ <translation type="unfinished">Inferior:</translation>
2701
</message>
2702
<message>
2703
<source>_Qp:</source>
2704
2705
<name>meadian</name>
2706
<message>
2707
<source>3x3 convolution filter :median.</source>
2708
- <translation type="unfinished"></translation>
2709
+ <translation type="unfinished">3x3 filtro de convolucion: Medio.</translation>
2710
</message>
2711
</context>
2712
<context>
2713
2714
</message>
2715
<message>
2716
<source>3x3 convolution filter :mean.</source>
2717
- <translation type="unfinished"></translation>
2718
+ <translation type="unfinished">3x3 filtro de convolucion: Medio.</translation>
2719
</message>
2720
</context>
2721
<context>
2722
<name>median</name>
2723
<message>
2724
<source>Median convolution.</source>
2725
- <translation type="unfinished"></translation>
2726
+ <translation type="unfinished">Circunvolución media.</translation>
2727
</message>
2728
</context>
2729
<context>
2730
<name>mkvmuxer</name>
2731
<message>
2732
<source>Saving Mkv</source>
2733
- <translation type="unfinished"></translation>
2734
+ <translation type="unfinished">Guardar MKV</translation>
2735
</message>
2736
</context>
2737
<context>
2738
2739
</message>
2740
<message>
2741
<source>Reduce noise, smooth image, increase compressibility. HQ Version.</source>
2742
- <translation type="unfinished"></translation>
2743
+ <translation type="unfinished">Reducir ruído, suavizar imagen, aumentar compresibilidad. Versión Alta Calidad.</translation>
2744
</message>
2745
<message>
2746
<source>_Spatial luma strength:</source>
2747
- <translation type="unfinished">Intensidad de Filtrado: </translation>
2748
+ <translation type="unfinished">Intensidad filtrado e_spacial luma:</translation>
2749
</message>
2750
<message>
2751
<source>S_patial chroma strength:</source>
2752
- <translation type="unfinished">Intensidad de Filtrado: </translation>
2753
+ <translation type="unfinished">Intensidad filtrado es_pacial chroma:</translation>
2754
</message>
2755
<message>
2756
<source>Luma _Temporal strength:</source>
2757
- <translation type="unfinished"></translation>
2758
+ <translation type="unfinished">Intensidad filtrado _temporal luma:</translation>
2759
</message>
2760
<message>
2761
<source>MPlayer denoise3d</source>
2762
- <translation type="unfinished">MPlayer redimensionar</translation>
2763
+ <translation type="unfinished">MPlayer Denoise3D</translation>
2764
</message>
2765
</context>
2766
<context>
2767
2768
</message>
2769
<message>
2770
<source>Reduce noise, smooth image, increase compressibility.</source>
2771
- <translation type="unfinished">Reducir ruido, alisar imagen, incrementar compresibilidad.</translation>
2772
+ <translation type="unfinished">Reducir ruido, suavizar imagen, incrementar compresibilidad.</translation>
2773
</message>
2774
<message>
2775
<source>_Spatial luma strength:</source>
2776
- <translation type="unfinished">Intensidad de Filtrado: </translation>
2777
+ <translation type="unfinished">Intensidad filtrado e_spacial luma:</translation>
2778
</message>
2779
<message>
2780
<source>S_patial chroma strength:</source>
2781
- <translation type="unfinished">Intensidad de Filtrado: </translation>
2782
+ <translation type="unfinished">Intensidad filtrado es_pacial chroma:</translation>
2783
</message>
2784
<message>
2785
<source>_Temporal strength:</source>
2786
- <translation type="unfinished">Intensidad de Filtrado: </translation>
2787
+ <translation type="unfinished">Intensidad filtrado _temporal:</translation>
2788
</message>
2789
<message>
2790
<source>MPlayer denoise3d</source>
2791
- <translation type="unfinished">MPlayer redimensionar</translation>
2792
+ <translation type="unfinished"></translation>
2793
</message>
2794
</context>
2795
<context>
2796
<name>msharpen</name>
2797
<message>
2798
<source>Sharpen edges without amplifying noise. By Donald Graft.</source>
2799
- <translation type="unfinished">Sharpen edges without amplifying noise. Por Donald Graft.</translation>
2800
+ <translation type="unfinished">Aclarar bordes sin amplificar ruído. Por Donald Graft.</translation>
2801
</message>
2802
<message>
2803
<source>_Mask</source>
2804
- <translation type="unfinished">
2805
- </translation>
2806
+ <translation type="unfinished">_Máscara</translation>
2807
</message>
2808
<message>
2809
<source>_High Q</source>
2810
- <translation type="unfinished">Alto</translation>
2811
+ <translation type="unfinished">_Alto Q</translation>
2812
</message>
2813
<message>
2814
<source>_Threshold:</source>
2815
- <translation type="unfinished">Umbral:</translation>
2816
+ <translation type="unfinished">_Umbral:</translation>
2817
</message>
2818
<message>
2819
<source>_Strength:</source>
2820
- <translation type="unfinished">Intensidad: </translation>
2821
+ <translation type="unfinished">Inten_sidad:</translation>
2822
</message>
2823
<message>
2824
<source>MSharpen</source>
2825
2826
</message>
2827
<message>
2828
<source>Msharpen</source>
2829
- <translation type="unfinished"></translation>
2830
+ <translation type="unfinished">Agudizar</translation>
2831
</message>
2832
</context>
2833
<context>
2834
<name>muxerMP4</name>
2835
<message>
2836
<source>Saving mp4</source>
2837
- <translation type="unfinished"></translation>
2838
+ <translation type="unfinished">Guardar MP4</translation>
2839
</message>
2840
<message>
2841
<source>Saving PSP</source>
2842
- <translation type="unfinished"></translation>
2843
+ <translation type="unfinished">Guardar PSP</translation>
2844
</message>
2845
</context>
2846
<context>
2847
<name>muxerffPS</name>
2848
<message>
2849
<source>Saving mpeg PS (ff)</source>
2850
- <translation type="unfinished"></translation>
2851
+ <translation type="unfinished">Guardar mpeg PS (ff)</translation>
2852
</message>
2853
</context>
2854
<context>
2855
<name>muxerffTS</name>
2856
<message>
2857
<source>Saving mpeg TS (ff)</source>
2858
- <translation type="unfinished"></translation>
2859
+ <translation type="unfinished">Guardar mpeg TS (ff)</translation>
2860
</message>
2861
</context>
2862
<context>
2863
<name>nuvHeader</name>
2864
<message>
2865
<source>Opening Nuppel video</source>
2866
- <translation type="obsolete">
2867
- </translation>
2868
+ <translation type="obsolete">Abriendo video Nuppel</translation>
2869
</message>
2870
<message>
2871
<source>Sure you want to abort ?</source>
2872
2873
<name>openGlResize</name>
2874
<message>
2875
<source>Width :</source>
2876
- <translation type="unfinished"></translation>
2877
+ <translation type="unfinished">Anchura</translation>
2878
</message>
2879
<message>
2880
<source>Height :</source>
2881
- <translation type="unfinished"></translation>
2882
+ <translation type="unfinished">Altura</translation>
2883
</message>
2884
<message>
2885
<source>glResize</source>
2886
- <translation type="unfinished"></translation>
2887
+ <translation type="unfinished">glResize</translation>
2888
</message>
2889
</context>
2890
<context>
2891
2892
</message>
2893
<message>
2894
<source>Frame Rate:</source>
2895
- <translation type="unfinished">Frame Rate:</translation>
2896
+ <translation type="unfinished">Ratio de imágenes:</translation>
2897
</message>
2898
<message>
2899
<source>Total Duration:</source>
2900
2901
</message>
2902
<message>
2903
<source>Quarter Pixel:</source>
2904
- <translation type="obsolete">_Quarter pixel</translation>
2905
+ <translation type="obsolete">Quarter pixel</translation>
2906
</message>
2907
<message>
2908
<source>Audio</source>
2909
2910
</message>
2911
<message>
2912
<source>File Size:</source>
2913
- <translation type="obsolete">Tamaño del archivo: </translation>
2914
+ <translation type="obsolete">Tamaño del archivo:</translation>
2915
</message>
2916
<message>
2917
<source>Frequency:</source>
2918
2919
</message>
2920
<message>
2921
<source>TextLabel</source>
2922
- <translation type="unfinished"></translation>
2923
+ <translation type="unfinished">Etiqueta de texto</translation>
2924
</message>
2925
<message>
2926
<source>Extra Video Properties</source>
2927
- <translation type="unfinished"></translation>
2928
+ <translation type="unfinished">Propiedades Extras de Video</translation>
2929
</message>
2930
<message>
2931
<source>ExtraDataSize:</source>
2932
- <translation type="unfinished"></translation>
2933
+ <translation type="unfinished">Tamaño Extra Datos</translation>
2934
</message>
2935
<message>
2936
<source>Extra data :</source>
2937
- <translation type="unfinished"></translation>
2938
+ <translation type="unfinished">Datos extra:</translation>
2939
</message>
2940
<message>
2941
<source>OK</source>
2942
2943
<name>removePlaneFilter</name>
2944
<message>
2945
<source>Process luma plane</source>
2946
- <translation type="obsolete">
2947
- </translation>
2948
+ <translation type="obsolete">Procesar plano luma</translation>
2949
</message>
2950
</context>
2951
<context>
2952
<name>removeplane</name>
2953
<message>
2954
<source>Remove Plane</source>
2955
- <translation type="unfinished"></translation>
2956
+ <translation type="unfinished">Eliminar Plano</translation>
2957
</message>
2958
<message>
2959
<source>Remove Y,U or V plane (used mainly to debug other filters).</source>
2960
- <translation type="unfinished"></translation>
2961
+ <translation type="unfinished">Eliminar plano Y, U o V (utilizados principalmente para otros filtros).</translation>
2962
</message>
2963
<message>
2964
<source>Keep Y Plane</source>
2965
- <translation type="unfinished"></translation>
2966
+ <translation type="unfinished">Mantener plano Y</translation>
2967
</message>
2968
<message>
2969
<source>Process luma plane</source>
2970
- <translation type="unfinished">
2971
- </translation>
2972
+ <translation type="unfinished">Procesar plano luma</translation>
2973
</message>
2974
<message>
2975
<source>Keep U Plane</source>
2976
- <translation type="unfinished"></translation>
2977
+ <translation type="unfinished">Mantener Plano U</translation>
2978
</message>
2979
<message>
2980
<source>Process chromaU plane</source>
2981
- <translation type="unfinished"></translation>
2982
+ <translation type="unfinished">Procesar plano chromaU</translation>
2983
</message>
2984
<message>
2985
<source>Keep V Plane</source>
2986
- <translation type="unfinished"></translation>
2987
+ <translation type="unfinished">Mantener plano V</translation>
2988
</message>
2989
<message>
2990
<source>Process chromaV plane</source>
2991
- <translation type="unfinished"></translation>
2992
+ <translation type="unfinished">Procesar plano cromaV</translation>
2993
</message>
2994
<message>
2995
<source>Remove plane</source>
2996
- <translation type="unfinished"></translation>
2997
+ <translation type="unfinished">Eliminar plano</translation>
2998
</message>
2999
</context>
3000
<context>
3001
3002
</message>
3003
<message>
3004
<source>_New frame rate:</source>
3005
- <translation type="unfinished">Nuevo frames por segundo</translation>
3006
+ <translation type="unfinished">_Nuevo imágenes por segundo</translation>
3007
</message>
3008
<message>
3009
<source>Resample fps</source>
3010
3011
</message>
3012
<message>
3013
<source>Resample FPS</source>
3014
- <translation type="unfinished"></translation>
3015
+ <translation type="unfinished">Restablecer FPS</translation>
3016
</message>
3017
<message>
3018
<source>Change and enforce FPS. Keep duration and sync.</source>
3019
- <translation type="unfinished"></translation>
3020
+ <translation type="unfinished">Cambiar y forzar FPS. Mantener duración y sincronismo.</translation>
3021
</message>
3022
</context>
3023
<context>
3024
3025
</message>
3026
<message>
3027
<source>swScale Resizer.</source>
3028
- <translation type="unfinished"></translation>
3029
+ <translation type="unfinished">Cambiar tamaño por software</translation>
3030
</message>
3031
</context>
3032
<context>
3033
3034
<name>rotate</name>
3035
<message>
3036
<source>Rotate</source>
3037
- <translation type="unfinished">Bitrate</translation>
3038
+ <translation type="unfinished">Rotar</translation>
3039
</message>
3040
<message>
3041
<source>Rotate the image by 90/180/270 degrees.</source>
3042
- <translation type="unfinished"></translation>
3043
+ <translation type="unfinished">Rotar la imagen en 90/180/270 grados.</translation>
3044
</message>
3045
<message>
3046
<source>None</source>
3047
3048
</message>
3049
<message>
3050
<source>90 degrees</source>
3051
- <translation type="unfinished">
3052
- </translation>
3053
+ <translation type="unfinished">90 grados</translation>
3054
</message>
3055
<message>
3056
<source>90°</source>
3057
- <translation type="unfinished"></translation>
3058
+ <translation type="unfinished">90°</translation>
3059
</message>
3060
<message>
3061
<source>180 degrees</source>
3062
- <translation type="unfinished">
3063
- </translation>
3064
+ <translation type="unfinished">180 grados</translation>
3065
</message>
3066
<message>
3067
<source>180°</source>
3068
- <translation type="unfinished"></translation>
3069
+ <translation type="unfinished">180°</translation>
3070
</message>
3071
<message>
3072
<source>270 degrees</source>
3073
- <translation type="unfinished">
3074
- </translation>
3075
+ <translation type="unfinished">270 grados</translation>
3076
</message>
3077
<message>
3078
<source>270°</source>
3079
- <translation type="unfinished"></translation>
3080
+ <translation type="unfinished">270°</translation>
3081
</message>
3082
<message>
3083
<source>_Angle:</source>
3084
- <translation type="unfinished">Azul:</translation>
3085
+ <translation type="unfinished">_Angulo:</translation>
3086
</message>
3087
</context>
3088
<context>
3089
3090
</message>
3091
<message>
3092
<source>90 degrees</source>
3093
- <translation type="obsolete">
3094
- </translation>
3095
+ <translation type="obsolete">90 grados</translation>
3096
</message>
3097
<message>
3098
<source>180 degrees</source>
3099
- <translation type="obsolete">
3100
- </translation>
3101
+ <translation type="obsolete">180 grados</translation>
3102
</message>
3103
<message>
3104
<source>270 degrees</source>
3105
- <translation type="obsolete">
3106
- </translation>
3107
+ <translation type="obsolete">270 grados</translation>
3108
</message>
3109
<message>
3110
<source>_Angle:</source>
3111
- <translation type="obsolete">Azul:</translation>
3112
+ <translation type="obsolete">_Angulo:</translation>
3113
</message>
3114
<message>
3115
<source>Rotate</source>
3116
- <translation type="obsolete">Bitrate</translation>
3117
+ <translation type="obsolete">Rotar</translation>
3118
</message>
3119
</context>
3120
<context>
3121
<name>rotateGl</name>
3122
<message>
3123
<source>Angle (°):</source>
3124
- <translation type="unfinished"></translation>
3125
+ <translation type="unfinished">Angulo (°)</translation>
3126
</message>
3127
<message>
3128
<source>glRotate</source>
3129
- <translation type="unfinished"></translation>
3130
+ <translation type="unfinished">Rotar GL</translation>
3131
</message>
3132
</context>
3133
<context>
3134
3135
</message>
3136
<message>
3137
<source>00:00:00.000</source>
3138
- <translation type="unfinished">00:00:00.000</translation>
3139
+ <translation type="unfinished">00:00:00,000</translation>
3140
</message>
3141
<message>
3142
<source>next</source>
3143
- <translation type="unfinished"></translation>
3144
+ <translation type="unfinished">Siguiente</translation>
3145
</message>
3146
</context>
3147
<context>
3148
3149
</message>
3150
<message>
3151
<source>_Line spacing:</source>
3152
- <translation type="obsolete">Entrelazando:</translation>
3153
+ <translation type="obsolete">_Entrelazando:</translation>
3154
</message>
3155
<message>
3156
<source>_Font scale:</source>
3157
- <translation type="obsolete">Tamaño fuente</translation>
3158
+ <translation type="obsolete">_Tamaño fuente</translation>
3159
</message>
3160
<message>
3161
<source>_Top margin:</source>
3162
- <translation type="obsolete">
3163
- </translation>
3164
+ <translation type="obsolete">_Margen superior</translation>
3165
</message>
3166
<message>
3167
<source>Botto_m margin</source>
3168
- <translation type="obsolete">Inferior</translation>
3169
+ <translation type="obsolete">Margen _Inferior</translation>
3170
</message>
3171
<message>
3172
<source>ASS</source>
3173
3174
<name>swapuv</name>
3175
<message>
3176
<source>Swap UV</source>
3177
- <translation type="unfinished"></translation>
3178
+ <translation type="unfinished">Intercambiar UV</translation>
3179
</message>
3180
<message>
3181
<source>Swap the U and V planes.</source>
3182
- <translation type="unfinished"></translation>
3183
+ <translation type="unfinished">Intercambiar planos U y V.</translation>
3184
</message>
3185
</context>
3186
<context>
3187
<name>uisupport</name>
3188
<message>
3189
<source>X11</source>
3190
- <translation type="unfinished"></translation>
3191
+ <translation type="unfinished">X11</translation>
3192
</message>
3193
<message>
3194
<source>MS Windows GDI</source>
3195
- <translation type="unfinished"></translation>
3196
+ <translation type="unfinished">MS Windows GDI</translation>
3197
</message>
3198
<message>
3199
<source>Mac OS X Quartz 2D</source>
3200
- <translation type="unfinished"></translation>
3201
+ <translation type="unfinished">Mac OS X Quartz 2D</translation>
3202
</message>
3203
<message>
3204
<source>Mac OS X QuickDraw</source>
3205
- <translation type="unfinished"></translation>
3206
+ <translation type="unfinished">Mac OS X QuickDraw</translation>
3207
</message>
3208
<message>
3209
<source>OpenGL</source>
3210
- <translation type="unfinished"></translation>
3211
+ <translation type="unfinished">OpenGL</translation>
3212
</message>
3213
<message>
3214
<source>MS Windows Direct3D</source>
3215
- <translation type="unfinished"></translation>
3216
+ <translation type="unfinished">MS Windows Direct3D</translation>
3217
</message>
3218
<message>
3219
<source>Default Raster</source>
3220
- <translation type="unfinished"></translation>
3221
+ <translation type="unfinished">Pasada por Defecto</translation>
3222
</message>
3223
</context>
3224
<context>
3225
<name>vdpauVideoFilterDeint</name>
3226
<message>
3227
<source>Keep Top Field</source>
3228
- <translation type="unfinished"></translation>
3229
+ <translation type="unfinished">Mantener Campo Superior</translation>
3230
</message>
3231
<message>
3232
<source>Keep Bottom Field</source>
3233
- <translation type="unfinished"></translation>
3234
+ <translation type="unfinished">Mantener Campo Inferior</translation>
3235
</message>
3236
<message>
3237
<source>Double framerate</source>
3238
- <translation type="unfinished"></translation>
3239
+ <translation type="unfinished">Doblar framerate</translation>
3240
</message>
3241
<message>
3242
<source>_Resize:</source>
3243
- <translation type="unfinished"></translation>
3244
+ <translation type="unfinished">_Redimensionar</translation>
3245
</message>
3246
<message>
3247
<source>_Deint Mode:</source>
3248
- <translation type="unfinished"></translation>
3249
+ <translation type="unfinished">_Modo Desentrelazado</translation>
3250
</message>
3251
<message>
3252
<source>Width :</source>
3253
- <translation type="unfinished"></translation>
3254
+ <translation type="unfinished">Anchura :</translation>
3255
</message>
3256
<message>
3257
<source>Height :</source>
3258
- <translation type="unfinished"></translation>
3259
+ <translation type="unfinished">Altura :</translation>
3260
</message>
3261
<message>
3262
<source>vdpau</source>
3263
- <translation type="unfinished"></translation>
3264
+ <translation type="unfinished">vdpau</translation>
3265
</message>
3266
</context>
3267
<context>
3268
<name>vdpaufilter</name>
3269
<message>
3270
<source>Keep Top Field</source>
3271
- <translation type="unfinished"></translation>
3272
+ <translation type="unfinished">Mantener Campo Superior</translation>
3273
</message>
3274
<message>
3275
<source>Keep Bottom Field</source>
3276
- <translation type="unfinished"></translation>
3277
+ <translation type="unfinished">Mantener Campo Inferior</translation>
3278
</message>
3279
<message>
3280
<source>Double framerate</source>
3281
- <translation type="unfinished"></translation>
3282
+ <translation type="unfinished">Doblar framerate</translation>
3283
</message>
3284
<message>
3285
<source>_Resize:</source>
3286
- <translation type="unfinished"></translation>
3287
+ <translation type="unfinished">_Redimensionar</translation>
3288
</message>
3289
<message>
3290
<source>_Deint Mode:</source>
3291
- <translation type="unfinished"></translation>
3292
+ <translation type="unfinished">_Modo Desentrelazado</translation>
3293
</message>
3294
<message>
3295
<source>Width :</source>
3296
- <translation type="unfinished"></translation>
3297
+ <translation type="unfinished">Anchura :</translation>
3298
</message>
3299
<message>
3300
<source>Height :</source>
3301
- <translation type="unfinished"></translation>
3302
+ <translation type="unfinished">Altura :</translation>
3303
</message>
3304
<message>
3305
<source>vdpau</source>
3306
- <translation type="unfinished"></translation>
3307
+ <translation type="unfinished">vdpau</translation>
3308
</message>
3309
</context>
3310
<context>
3311
<name>vdpaufilter2</name>
3312
<message>
3313
<source>Width :</source>
3314
- <translation type="unfinished"></translation>
3315
+ <translation type="unfinished">Anchura :</translation>
3316
</message>
3317
<message>
3318
<source>Height :</source>
3319
- <translation type="unfinished"></translation>
3320
+ <translation type="unfinished">Altura :</translation>
3321
</message>
3322
<message>
3323
<source>vdpau</source>
3324
- <translation type="unfinished"></translation>
3325
+ <translation type="unfinished">vdpau</translation>
3326
</message>
3327
</context>
3328
<context>
3329
<name>vdpresize</name>
3330
<message>
3331
<source>vdpau: Resize</source>
3332
- <translation type="unfinished"></translation>
3333
+ <translation type="unfinished">vdpau: Redimensionar</translation>
3334
</message>
3335
<message>
3336
<source>vdpau: Resize image using vdpau.</source>
3337
- <translation type="unfinished"></translation>
3338
+ <translation type="unfinished">vdpau: Redimensionar imagen utilizando vdpau.</translation>
3339
</message>
3340
</context>
3341
<context>
3342
<name>vflip</name>
3343
<message>
3344
<source>Vertical Flip</source>
3345
- <translation type="unfinished"></translation>
3346
+ <translation type="unfinished">Volteo Vertical</translation>
3347
</message>
3348
<message>
3349
<source>Vertically flip the image.</source>
3350
- <translation type="unfinished"></translation>
3351
+ <translation type="unfinished">Voltear verticalmente la imagen.</translation>
3352
</message>
3353
</context>
3354
<context>
3355
<name>vidBlendRemoval</name>
3356
<message>
3357
<source>_Threshold:</source>
3358
- <translation type="obsolete">Umbral:</translation>
3359
+ <translation type="obsolete">_Umbral:</translation>
3360
</message>
3361
<message>
3362
<source>If value is smaller than threshold it is considered valid.Smaller value might mean more false positive.</source>
3363
- <translation type="obsolete">
3364
- </translation>
3365
+ <translation type="obsolete">Si el valor es más pequeño que el umbral, se considera válido. Un valor más pequeño podría dar falsos positivos.</translation>
3366
</message>
3367
<message>
3368
<source>_Noise:</source>
3369
- <translation type="obsolete">Ruido</translation>
3370
+ <translation type="obsolete">_Ruido</translation>
3371
</message>
3372
<message>
3373
<source>If pixels are closer than noise, they are considered to be the same</source>
3374
- <translation type="obsolete">
3375
- </translation>
3376
+ <translation type="obsolete">Si los pixels cercanos son parecidos, se consideran el mismo</translation>
3377
</message>
3378
<message>
3379
<source>I_dentical:</source>
3380
- <translation type="obsolete">_Inicial:</translation>
3381
+ <translation type="obsolete">I_déntica:</translation>
3382
</message>
3383
<message>
3384
<source>If metric is less than identical, images are considered identical</source>
3385
- <translation type="obsolete">
3386
- </translation>
3387
+ <translation type="obsolete">Si la métrica es menos que la idéntica, las imágenes se consideran idénticas</translation>
3388
</message>
3389
<message>
3390
<source>_Show metrics</source>
3391
- <translation type="obsolete">Mostrar vectores de movimiento</translation>
3392
+ <translation type="obsolete">_Mostrar métricas</translation>
3393
</message>
3394
<message>
3395
<source>Show metric in image (debug)</source>
3396
- <translation type="obsolete">
3397
- </translation>
3398
+ <translation type="obsolete">Mostrar métrica en imagen (depuración)</translation>
3399
</message>
3400
<message>
3401
<source>Blend Removal</source>
3402
3403
</message>
3404
<message>
3405
<source>Do you want to print metrics on screen ?</source>
3406
- <translation type="obsolete">¿Desea imprimir las mediciones en pantalla?</translation>
3407
+ <translation type="obsolete">¿Desea imprimir las métricas en pantalla?</translation>
3408
</message>
3409
<message>
3410
<source>_Threshold:</source>
3411
- <translation type="obsolete">Umbral:</translation>
3412
+ <translation type="obsolete">_Umbral:</translation>
3413
</message>
3414
<message>
3415
<source>If value is smaller than threshold it is considered valid. Smaller value might mean more false positive</source>
3416
- <translation type="obsolete">
3417
- </translation>
3418
+ <translation type="obsolete">Si el valor es más pequeño que el umbral, se considera válido. Un valor más pequeño podría dar falsos positivos.</translation>
3419
</message>
3420
<message>
3421
<source>_Noise:</source>
3422
3423
</message>
3424
<message>
3425
<source>If pixels are closer than noise, they are considered to be the same</source>
3426
- <translation type="obsolete">
3427
- </translation>
3428
+ <translation type="obsolete">Si los pixels cercanos son parecidos, se consideran el mismo</translation>
3429
</message>
3430
<message>
3431
<source>_Identical:</source>
3432
- <translation type="obsolete">_Inicial:</translation>
3433
+ <translation type="obsolete">_Idéntica:</translation>
3434
</message>
3435
<message>
3436
<source>If metric is less than identical, images are considered identical</source>
3437
- <translation type="obsolete">
3438
- </translation>
3439
+ <translation type="obsolete">Si la métrica es menos que la idéntica, las imágenes se consideran idénticas</translation>
3440
</message>
3441
<message>
3442
<source>_Show metrics</source>
3443
- <translation type="obsolete">Mostrar vectores de movimiento</translation>
3444
+ <translation type="obsolete">_Mostrar métricas</translation>
3445
</message>
3446
<message>
3447
<source>Show metric in image (debug)</source>
3448
- <translation type="obsolete">
3449
- </translation>
3450
+ <translation type="obsolete">Mostrar métrica en imagen (depuración)</translation>
3451
</message>
3452
<message>
3453
<source>Hard IVTC Removal</source>
3454
- <translation type="obsolete">Remover mezcla</translation>
3455
+ <translation type="obsolete">Eliminar Hard IVTC</translation>
3456
</message>
3457
</context>
3458
<context>
3459
3460
</message>
3461
<message>
3462
<source>Subtitle Font Size and Position</source>
3463
- <translation type="unfinished"></translation>
3464
+ <translation type="unfinished">Tamaño Fuente y Posición subtítulos</translation>
3465
</message>
3466
<message>
3467
<source>Delay :</source>
3468
- <translation type="unfinished"></translation>
3469
+ <translation type="unfinished">Retraso:</translation>
3470
</message>
3471
<message>
3472
<source>Select File</source>
3473
- <translation type="unfinished"></translation>
3474
+ <translation type="unfinished">Seleccionar archivo</translation>
3475
</message>
3476
<message>
3477
<source>Language :</source>
3478
- <translation type="unfinished"></translation>
3479
+ <translation type="unfinished">Idioma:</translation>
3480
</message>
3481
<message>
3482
<source>Idx File :</source>
3483
- <translation type="unfinished"></translation>
3484
+ <translation type="unfinished">Archivo Idx:</translation>
3485
</message>
3486
</context>
3487
<context>
3488
3489
</message>
3490
<message>
3491
<source>Quality based</source>
3492
- <translation type="unfinished">Calidad </translation>
3493
+ <translation type="unfinished">Basado en calidad</translation>
3494
</message>
3495
<message>
3496
<source>_Mode:</source>
3497
3498
</message>
3499
<message>
3500
<source>_Quality:</source>
3501
- <translation type="unfinished">Calidad</translation>
3502
+ <translation type="unfinished">_Calidad</translation>
3503
</message>
3504
<message>
3505
<source>Vorbis Configuration</source>
3506
3507
</message>
3508
<message>
3509
<source>Elapsed:</source>
3510
- <translation type="unfinished"></translation>
3511
+ <translation type="unfinished">Transcurrido:</translation>
3512
</message>
3513
<message>
3514
<source>Time Remaining:</source>
3515
- <translation type="unfinished"></translation>
3516
+ <translation type="unfinished">Tiempo restante:</translation>
3517
</message>
3518
<message>
3519
<source>Cancel</source>
3520
- <translation type="unfinished"></translation>
3521
+ <translation type="unfinished">Cancelar</translation>
3522
</message>
3523
</context>
3524
<context>
3525
3526
</message>
3527
<message>
3528
<source>Hexagonal Search</source>
3529
- <translation type="obsolete">Búsqueda de Movimiento</translation>
3530
+ <translation type="obsolete">Búsqueda Hexagonal</translation>
3531
</message>
3532
<message>
3533
<source>Exhaustive Search</source>
3534
- <translation type="obsolete">Búsqueda de Movimiento</translation>
3535
+ <translation type="obsolete">Búsqueda Exhaustiva</translation>
3536
</message>
3537
<message>
3538
<source>Hadamard Exhaustive Search</source>
3539
- <translation type="obsolete">
3540
- </translation>
3541
+ <translation type="obsolete">Búsqueda Exhaustiva Hadamard</translation>
3542
</message>
3543
<message>
3544
<source>None</source>
3545
3546
</message>
3547
<message>
3548
<source>Flat Matrix</source>
3549
- <translation type="obsolete">Matriz</translation>
3550
+ <translation type="obsolete">Matriz Plana</translation>
3551
</message>
3552
<message>
3553
<source>JVT Matrix</source>
3554
- <translation type="obsolete">Matriz</translation>
3555
+ <translation type="obsolete">Matriz JVT</translation>
3556
</message>
3557
<message>
3558
<source>Custom Matrix</source>
3559
3560
</message>
3561
<message>
3562
<source>Pixel Aspect Ratio</source>
3563
- <translation type="obsolete">Relación de aspecto:</translation>
3564
+ <translation type="obsolete">Relación de aspecto de Pixel:</translation>
3565
</message>
3566
<message>
3567
<source>As Input</source>
3568
- <translation type="obsolete">Entrada</translation>
3569
+ <translation type="obsolete">Como Entrada</translation>
3570
</message>
3571
<message>
3572
<source>:</source>
3573
3574
<name>x264Dialog</name>
3575
<message>
3576
<source>Target Bitrate:</source>
3577
- <translation type="unfinished"></translation>
3578
+ <translation type="unfinished">Bitrate Buscado</translation>
3579
</message>
3580
<message>
3581
<source>kbit/s</source>
3582
3583
</message>
3584
<message>
3585
<source>Quantiser:</source>
3586
- <translation type="unfinished"></translation>
3587
+ <translation type="unfinished">Cuantizador</translation>
3588
</message>
3589
<message>
3590
<source>Quality:</source>
3591
- <translation type="unfinished"></translation>
3592
+ <translation type="unfinished">Calidad</translation>
3593
</message>
3594
<message>
3595
<source>Target Video Size:</source>
3596
- <translation type="unfinished"></translation>
3597
+ <translation type="unfinished">Tamaño de Video Buscado</translation>
3598
</message>
3599
<message>
3600
<source>MB</source>
3601
3602
</message>
3603
<message>
3604
<source>Average Bitrate:</source>
3605
- <translation type="unfinished"></translation>
3606
+ <translation type="unfinished">Bitrate Medio</translation>
3607
</message>
3608
<message>
3609
<source>Macroblock-Tree optimisation requires Variance Adaptive Quantisation to be enabled. Variance Adaptive Quantisation will automatically be enabled.
3610
3611
<translation type="unfinished"></translation>
3612
</message>
3613
<message>
3614
- <source>Macroblock-Tree optimisation requires Variance Adaptive Quantisation to be enabled. Macroblock-Tree optimisation will automatically be disabled.
3615
+ <source>La optimización del Árbol-Macroblock requiere que se active la Cuantización Variable Adaptativa. Esta optimización se desactivará automáticamente.
3616
3617
-Do you wish to continue?</source>
3618
+¿Quiere continuar?</source>
3619
<translation type="unfinished"></translation>
3620
</message>
3621
</context>
3622
3623
</message>
3624
<message>
3625
<source>Square</source>
3626
- <translation type="unfinished"></translation>
3627
+ <translation type="unfinished">Cuadrado</translation>
3628
</message>
3629
<message>
3630
<source>One thread</source>
3631
- <translation type="unfinished"></translation>
3632
+ <translation type="unfinished">Un hilo</translation>
3633
</message>
3634
<message>
3635
<source>Two threads)</source>
3636
- <translation type="unfinished"></translation>
3637
+ <translation type="unfinished">Dos hilos</translation>
3638
</message>
3639
<message>
3640
<source>Three threads</source>
3641
- <translation type="unfinished"></translation>
3642
+ <translation type="unfinished">Tres hilos</translation>
3643
</message>
3644
<message>
3645
<source>Auto (#cpu)</source>
3646
3647
</message>
3648
<message>
3649
<source>MotionEstimation</source>
3650
- <translation type="unfinished"></translation>
3651
+ <translation type="unfinished">Estimación de Movimiento</translation>
3652
</message>
3653
<message>
3654
<source>Threading</source>
3655
- <translation type="unfinished">Hilos</translation>
3656
+ <translation type="unfinished">Procesos</translation>
3657
</message>
3658
<message>
3659
<source>_Trellis quantization</source>
3660
- <translation type="unfinished"></translation>
3661
+ <translation type="unfinished">Cuantización _Trellis</translation>
3662
</message>
3663
<message>
3664
<source>_Number of B frames:</source>
3665
- <translation type="unfinished"></translation>
3666
+ <translation type="unfinished">_Número de imágenes-B:</translation>
3667
</message>
3668
<message>
3669
<source>_Quantization type:</source>
3670
- <translation type="unfinished"></translation>
3671
+ <translation type="unfinished">Tipo _Cuantización:</translation>
3672
</message>
3673
<message>
3674
<source>_Macroblock decision:</source>
3675
- <translation type="unfinished"></translation>
3676
+ <translation type="unfinished">Decisiones _Macroblock</translation>
3677
</message>
3678
<message>
3679
<source>Profile:</source>
3680
- <translation type="unfinished"></translation>
3681
+ <translation type="unfinished">Perfil:</translation>
3682
</message>
3683
<message>
3684
<source>_Gop Size:</source>
3685
- <translation type="unfinished"></translation>
3686
+ <translation type="unfinished">Tamaño _Gop:</translation>
3687
</message>
3688
<message>
3689
<source>Advanced Simple Profile</source>
3690
- <translation type="unfinished"></translation>
3691
+ <translation type="unfinished">Perfil Simple Avanzado</translation>
3692
</message>
3693
<message>
3694
<source>Motion Estimation</source>
3695
3696
</message>
3697
<message>
3698
<source>Quantization</source>
3699
- <translation type="unfinished"></translation>
3700
+ <translation type="unfinished">Cuantización</translation>
3701
</message>
3702
<message>
3703
<source>Threads</source>
3704
- <translation type="unfinished"></translation>
3705
+ <translation type="unfinished">Hilos</translation>
3706
</message>
3707
<message>
3708
<source>Rate Control</source>
3709
3710
</message>
3711
<message>
3712
<source>Xvid4 MPEG-4 ASP configuration</source>
3713
- <translation type="unfinished"></translation>
3714
+ <translation type="unfinished">Configuración Xvid4 MPEG-4 ASP</translation>
3715
</message>
3716
</context>
3717
<context>
3718
<name>yadifFilter</name>
3719
<message>
3720
<source>Temporal & spatial check</source>
3721
- <translation type="obsolete">
3722
- </translation>
3723
+ <translation type="obsolete">Comprobación espacial & temporal</translation>
3724
</message>
3725
<message>
3726
<source>Bob, temporal & spatial check</source>
3727
- <translation type="obsolete">
3728
- </translation>
3729
+ <translation type="obsolete">Comprobación de Bob, temporal & espacial.</translation>
3730
</message>
3731
<message>
3732
<source>Skip spatial temporal check</source>
3733
- <translation type="obsolete">
3734
- </translation>
3735
+ <translation type="obsolete">Saltar comprobación espacial temporal</translation>
3736
</message>
3737
<message>
3738
<source>Bob, skip spatial temporal check</source>
3739
- <translation type="obsolete">
3740
- </translation>
3741
+ <translation type="obsolete">Saltar comprobación Bob, espacial temporal</translation>
3742
</message>
3743
<message>
3744
<source>Bottom field first</source>
3745
- <translation type="obsolete">Campo inf. (conservar superior)</translation>
3746
+ <translation type="obsolete">Campo inferior Primero</translation>
3747
</message>
3748
<message>
3749
<source>Top field first</source>
3750
- <translation type="obsolete">Intercambiar campos</translation>
3751
+ <translation type="obsolete">Campo superior primero</translation>
3752
</message>
3753
<message>
3754
<source>_Mode:</source>
3755
3756
</message>
3757
<message>
3758
<source>_Order:</source>
3759
- <translation type="obsolete">_Modo:</translation>
3760
+ <translation type="obsolete">_Orden:</translation>
3761
</message>
3762
<message>
3763
<source>yadif</source>
3764
- <translation type="obsolete">
3765
- </translation>
3766
+ <translation type="obsolete"></translation>
3767
</message>
3768
</context>
3769
</TS>
3770
avidemux_2.6.11.tar.gz/avidemux/winInstaller/avidemux_crossQt5.nsi -> avidemux_2.6.12.tar.gz/avidemux/winInstaller/avidemux_crossQt5.nsi
Changed
14
1
2
SetOutPath $INSTDIR\plugins\muxers
3
${File} ${ROOT_FOLDER}/plugins/muxers/libADM_mx_raw.dll
4
${MementoSectionEnd}
5
+ ${MementoSection} "Raw Video" SecMuxWebm
6
+ SectionIn 1 2
7
+ SetOverwrite on
8
+ SetOutPath $INSTDIR\plugins\muxers
9
+ ${File} ${ROOT_FOLDER}/plugins/muxers/libADM_mx_Webm.dll
10
+ ${MementoSectionEnd}
11
SectionGroupEnd
12
SectionGroup "Script Engines" SecGrpScriptEngine
13
#${MementoSection} "QtScript" SecScriptQt
14
avidemux_2.6.11.tar.gz/avidemux_core/ADM_core/include/ADM_crashdump_mingw.h -> avidemux_2.6.12.tar.gz/avidemux_core/ADM_core/include/ADM_crashdump_mingw.h
Changed
27
1
2
-#if defined(__MINGW32__) && !defined ADM_CRASHDUMP_MINGW_H
3
-#define ADM_CRASHDUMP_MINGW_H
4
+/**
5
+ * \file ADM_crashdump_mingw
6
+ * \brief Catch low level error, mingw version
7
+ */
8
+#if defined(__MINGW32__)
9
10
-#include <windows.h>
11
-#include <excpt.h>
12
-
13
-#if defined(_WIN64)
14
-ADM_CORE6_EXPORT LONG WINAPI ExceptionFilter(struct _EXCEPTION_POINTERS *exceptionInfo);
15
-#define installSigHandler() SetUnhandledExceptionFilter(ExceptionFilter)
16
-#define uninstallSigHandler()
17
-#else
18
-ADM_CORE6_EXPORT EXCEPTION_DISPOSITION ExceptionHandler(struct _EXCEPTION_RECORD *exceptionRecord, void *establisherFrame, struct _CONTEXT *contextRecord, void *dispatcherContext);
19
-#define installSigHandler() __try1(ExceptionHandler)
20
-#define uninstallSigHandler() __except1
21
-#endif
22
+#pragma once
23
+ADM_CORE6_EXPORT void installSigHandler(void);
24
+ADM_CORE6_EXPORT void uninstallSigHandler(void);
25
26
#endif
27
avidemux_2.6.11.tar.gz/avidemux_core/ADM_core/src/ADM_crashdump_mingw.cpp -> avidemux_2.6.12.tar.gz/avidemux_core/ADM_core/src/ADM_crashdump_mingw.cpp
Changed
123
1
2
* (at your option) any later version. *
3
* *
4
***************************************************************************/
5
+#include <windows.h>
6
+#include <excpt.h>
7
8
#include "ADM_crashdump.h"
9
#include <stdio.h>
10
11
#include <imagehlp.h>
12
#include <cxxabi.h>
13
14
+
15
+static LONG WINAPI ExceptionFilter(struct _EXCEPTION_POINTERS *exceptionInfo);
16
static ADM_saveFunction *mysaveFunction = NULL;
17
static ADM_fatalFunction *myFatalFunction = NULL;
18
+
19
+
20
+/**
21
+ * \fn installSigHandler
22
+ * \brief add hook to catch exception (null pointers etc...)
23
+ */
24
+void installSigHandler(void)
25
+{
26
+ SetUnhandledExceptionFilter(ExceptionFilter);
27
+}
28
+/**
29
+ * \fn uninstallSigHandler
30
+ * \brief
31
+ */
32
+void uninstallSigHandler(void)
33
+{
34
+
35
+}
36
+
37
+
38
/**
39
*
40
* @param save
41
42
RtlCaptureContext_* contextFunc = (RtlCaptureContext_*)GetProcAddress(hinstLib, "RtlCaptureContext");
43
STACKFRAME frame;
44
CONTEXT context;
45
- int limit = 50;
46
+ int limit = 70;
47
DWORD machineType;
48
49
memset(&frame, 0, sizeof(STACKFRAME));
50
51
* @param exceptionRecord
52
* @param contextRecord
53
*/
54
-void HandleException(struct _EXCEPTION_RECORD *exceptionRecord, struct _CONTEXT *contextRecord)
55
+void HandleException(const char *message,struct _EXCEPTION_RECORD *exceptionRecord, struct _CONTEXT *contextRecord)
56
{
57
std::string s;
58
fflush(stderr);
59
60
{
61
s+=DumpExceptionInfo(process, exceptionRecord, contextRecord);
62
}
63
+ fflush(stderr);
64
+ fflush(stdout);
65
66
s+=DumpBackTrace(process);
67
+ fflush(stderr);
68
+ fflush(stdout);
69
+
70
+ const char *title;
71
+ if(!message) title="Crash";
72
+ else title=message;
73
if (myFatalFunction)
74
- myFatalFunction("Crash", s.c_str());
75
+ myFatalFunction(title, s.c_str());
76
SymCleanup(process);
77
-
78
+ fflush(stderr);
79
+ fflush(stdout);
80
exit(1);
81
}
82
/**
83
84
*/
85
EXCEPTION_DISPOSITION ExceptionHandler(struct _EXCEPTION_RECORD *exceptionRecord, void *establisherFrame, struct _CONTEXT *contextRecord, void *dispatcherContext)
86
{
87
- HandleException(exceptionRecord, contextRecord);
88
+ HandleException("ExceptionHandler",exceptionRecord, contextRecord);
89
}
90
/**
91
*
92
93
*/
94
LONG WINAPI ExceptionFilter(struct _EXCEPTION_POINTERS *exceptionInfo)
95
{
96
- HandleException(exceptionInfo->ExceptionRecord, exceptionInfo->ContextRecord);
97
+ HandleException("ExceptionFilter",exceptionInfo->ExceptionRecord, exceptionInfo->ContextRecord);
98
+ return EXCEPTION_CONTINUE_SEARCH;
99
+}
100
+/**
101
+ *
102
+ * @param pExceptionInfo
103
+ * @return
104
+ */
105
+LONG WINAPI TopLevelExceptionHandler(struct _EXCEPTION_POINTERS *exceptionInfo)
106
+{
107
+ HandleException("TopLevelExceptionHandler",exceptionInfo->ExceptionRecord, exceptionInfo->ContextRecord);
108
+ return EXCEPTION_CONTINUE_SEARCH;
109
}
110
+
111
/**
112
*
113
* @param info
114
115
*/
116
void ADM_backTrack(const char *info, int lineno, const char *file)
117
{
118
- HandleException(NULL, NULL);
119
+ char title[2048]={0};
120
+ snprintf(title,2000,"%s at line %d, file %s",info,lineno,file);
121
+ HandleException(title,NULL, NULL);
122
}
123
avidemux_2.6.11.tar.gz/avidemux_core/ADM_core/src/ADM_crashdump_unix.cpp -> avidemux_2.6.12.tar.gz/avidemux_core/ADM_core/src/ADM_crashdump_unix.cpp
Changed
74
1
2
{
3
if(mysaveFunction)
4
mysaveFunction();
5
-
6
-#if !defined(__HAIKU__)
7
- char wholeStuff[2048];
8
-#if !defined(__sun__)
9
+#define MAX_BACKTRACK 30
10
+#if !defined(__HAIKU__) && !defined(__sun__)
11
+ char wholeStuff[2048];
12
char buffer[4096];
13
char in[2048];
14
- void *stack[20];
15
+ void *stack[MAX_BACKTRACK+1];
16
char **functions;
17
int count, i;
18
-#endif
19
wholeStuff[0]=0;
20
21
printf("\n*********** BACKTRACK **************\n");
22
23
-#if !defined(__sun__)
24
- count = backtrace(stack, 20);
25
+ count = backtrace(stack, MAX_BACKTRACK);
26
functions = backtrace_symbols(stack, count);
27
-#endif
28
sprintf(wholeStuff,"%s\n at line %d, file %s",info,lineno,file);
29
-#if !defined(__sun__)
30
- int status;
31
- size_t size=2047;
32
+ int status;
33
+ size_t size=2047;
34
// it looks like that xxxx (functionName+0x***) XXXX
35
for (i=0; i < count; i++)
36
{
37
- char *s=strstr(functions[i],"(");
38
- buffer[0]=0;
39
- if(s && strstr(s+1,"+"))
40
- {
41
- strcpy(in,s+1);
42
- char *e=strstr(in,"+");
43
- *e=0;
44
- __cxxabiv1::__cxa_demangle(in,buffer,&size,&status);
45
- if(status) strcpy(buffer,in);
46
- }else
47
- strcpy(buffer,functions[i]);
48
- printf("%s:%d:<%s>:%d\n",functions[i],i,buffer,status);
49
- strcat(wholeStuff,buffer);
50
- strcat(wholeStuff,"\n");
51
- }
52
-#else
53
- backtrace(fileno(stdout));
54
-#endif
55
+ char *s=strstr(functions[i],"(");
56
+ buffer[0]=0;
57
+ if(s && strstr(s+1,"+"))
58
+ {
59
+ strcpy(in,s+1);
60
+ char *e=strstr(in,"+");
61
+ *e=0;
62
+ __cxxabiv1::__cxa_demangle(in,buffer,&size,&status);
63
+ if(status)
64
+ strcpy(buffer,in);
65
+ }else
66
+ strcpy(buffer,functions[i]);
67
+ printf("%s:%d:<%s>:%d\n",functions[i],i,buffer,status);
68
+ strcat(wholeStuff,buffer);
69
+ strcat(wholeStuff,"\n");
70
+ }
71
printf("*********** BACKTRACK **************\n");
72
73
if(myFatalFunction)
74
avidemux_2.6.11.tar.gz/avidemux_core/ADM_core/src/CMakeLists.txt -> avidemux_2.6.12.tar.gz/avidemux_core/ADM_core/src/CMakeLists.txt
Changed
12
1
2
ENDIF (WIN32)
3
4
if (HAVE_EXECINFO)
5
- include_directories("${LIBEXECINFO_INCLUDE_DIR}")
6
- target_link_libraries(ADM_core6 "${LIBEXECINFO_LIBRARY_DIR}")
7
+ include_directories("${EXECINFO_INCLUDE_DIR}")
8
+ target_link_libraries(ADM_core6 "${EXECINFO_LIBRARY_DIR}")
9
endif (HAVE_EXECINFO)
10
11
if (ADM_DEBUG AND FIND_LEAKS)
12
avidemux_2.6.11.tar.gz/avidemux_core/ADM_coreSocket/include/ADM_coreSocket.h -> avidemux_2.6.12.tar.gz/avidemux_core/ADM_coreSocket/include/ADM_coreSocket.h
Changed
12
1
2
#ifndef ADM_CORE_SOCKET_H
3
#define ADM_CORE_SOCKET_H
4
5
+#ifdef _WIN32
6
+#include "winsock2.h"
7
+#endif
8
+
9
#include "ADM_coreSocket6_export.h"
10
#include "ADM_threads.h"
11
12
avidemux_2.6.11.tar.gz/avidemux_core/ADM_coreVideoCodec/ADM_hwAccel/ADM_coreVdpau/include/ADM_coreVdpau.h -> avidemux_2.6.12.tar.gz/avidemux_core/ADM_coreVideoCodec/ADM_hwAccel/ADM_coreVdpau/include/ADM_coreVdpau.h
Changed
25
1
2
static VdpStatus mixerCreate(uint32_t width,uint32_t height, VdpVideoMixer *mixer,bool deinterlace=false);
3
static VdpStatus mixerDestroy(VdpVideoMixer mixer);
4
static VdpStatus mixerRender(VdpVideoMixer mixer,VdpVideoSurface sourceSurface,VdpOutputSurface targetOutputSurface, uint32_t targetWidth, uint32_t targetHeight );
5
+ static VdpStatus mixerRenderWithCropping(VdpVideoMixer mixer,VdpVideoSurface sourceSurface,VdpOutputSurface targetOutputSurface, uint32_t targetWidth, uint32_t targetHeight ,
6
+ uint32_t sourceWidth, uint32_t sourceHeight);
7
static VdpStatus mixerRenderWithPastAndFuture(bool topField,VdpVideoMixer mixer,
8
VdpVideoSurface sourceSurface[3], // Past present future
9
- VdpOutputSurface targetOutputSurface,
10
- uint32_t targetWidth, uint32_t targetHeight );
11
+ VdpOutputSurface targetOutputSurface, uint32_t targetWidth, uint32_t targetHeight,uint32_t sourceWidth, uint32_t sourceHeight );
12
static VdpStatus mixerGetAttributesValue(VdpVideoMixer mixer,
13
uint32_t attrCount,
14
const VdpVideoMixerAttribute *xkeys,
15
16
{
17
return (x+15) & ~15;
18
}
19
+ static VdpStatus outputSurfaceGetParameters( VdpOutputSurface surface, VdpRGBAFormat * rgba_format,
20
+ uint32_t * width, uint32_t * height);
21
+ static VdpStatus surfaceGetParameters(VdpVideoSurface surface,VdpChromaType *chomra,uint32_t *w,uint32_t *h);
22
23
#endif
24
};
25
avidemux_2.6.11.tar.gz/avidemux_core/ADM_coreVideoCodec/ADM_hwAccel/ADM_coreVdpau/include/ADM_coreVdpauInternal.h -> avidemux_2.6.12.tar.gz/avidemux_core/ADM_coreVideoCodec/ADM_hwAccel/ADM_coreVdpau/include/ADM_coreVdpauInternal.h
Changed
11
1
2
VdpVideoMixerGetAttributeValues *mixerGetAttributesValue;
3
VdpVideoMixerSetAttributeValues *mixerSetAttributesValue;
4
5
+ VdpOutputSurfaceGetParameters *mixerGetOutputSurfaceParameters;
6
+ VdpVideoSurfaceGetParameters *mixerGetSurfaceParameters;
7
+
8
VdpPresentationQueueTargetCreateX11 *presentationQueueDisplayX11Create;
9
}VdpFunctions;
10
11
avidemux_2.6.11.tar.gz/avidemux_core/ADM_coreVideoCodec/ADM_hwAccel/ADM_coreVdpau/src/ADM_coreVdpau.cpp -> avidemux_2.6.12.tar.gz/avidemux_core/ADM_coreVideoCodec/ADM_hwAccel/ADM_coreVdpau/src/ADM_coreVdpau.cpp
Changed
45
1
2
GetMe(putBitsYV12OutputSurface,VDP_FUNC_ID_OUTPUT_SURFACE_PUT_BITS_Y_CB_CR);
3
GetMe(putBitsCapsOutputSurface,VDP_FUNC_ID_OUTPUT_SURFACE_QUERY_PUT_BITS_Y_CB_CR_CAPABILITIES);
4
GetMe(getBitsNativeOutputSurface,VDP_FUNC_ID_OUTPUT_SURFACE_GET_BITS_NATIVE);
5
+
6
+
7
8
GetMe(presentationQueueDestroy,VDP_FUNC_ID_PRESENTATION_QUEUE_DESTROY);
9
GetMe(presentationQueueCreate,VDP_FUNC_ID_PRESENTATION_QUEUE_CREATE);
10
11
12
GetMe(mixerGetAttributesValue,VDP_FUNC_ID_VIDEO_MIXER_GET_ATTRIBUTE_VALUES);
13
GetMe(mixerSetAttributesValue,VDP_FUNC_ID_VIDEO_MIXER_SET_ATTRIBUTE_VALUES);
14
-
15
+ GetMe(mixerGetOutputSurfaceParameters,VDP_FUNC_ID_OUTPUT_SURFACE_GET_PARAMETERS); ///
16
+ GetMe(mixerGetSurfaceParameters,VDP_FUNC_ID_VIDEO_SURFACE_GET_PARAMETERS); ///
17
if(VDP_STATUS_OK!=ADM_coreVdpau::funcs.presentationQueueDisplayX11Create(ADM_coreVdpau::vdpDevice,x->systemWindowId,&queueX11))
18
{
19
ADM_warning("Cannot create X11 Presentation Queue\n");
20
21
( void * const *)ptr,
22
pitches));
23
}
24
+
25
+
26
+/**
27
+ \fn
28
+ \brief
29
+*/
30
+VdpStatus admVdpau::outputSurfaceGetParameters( VdpOutputSurface surface, VdpRGBAFormat * rgba_format,
31
+ uint32_t * width, uint32_t * height)
32
+{
33
+ CHECK(ADM_coreVdpau::funcs.mixerGetOutputSurfaceParameters(surface,rgba_format,width,height));
34
+}
35
+/**
36
+ */
37
+VdpStatus admVdpau::surfaceGetParameters(VdpVideoSurface surface,VdpChromaType *chroma,uint32_t *w,uint32_t *h)
38
+{
39
+ CHECK(ADM_coreVdpau::funcs.mixerGetSurfaceParameters(surface,chroma,w,h));
40
+}
41
+
42
/**
43
\fn
44
\brief
45
avidemux_2.6.11.tar.gz/avidemux_core/ADM_coreVideoCodec/ADM_hwAccel/ADM_coreVdpau/src/ADM_coreVdpauMixer.cpp -> avidemux_2.6.12.tar.gz/avidemux_core/ADM_coreVideoCodec/ADM_hwAccel/ADM_coreVdpau/src/ADM_coreVdpauMixer.cpp
Changed
143
1
2
#include "ADM_default.h"
3
#include "../include/ADM_coreVdpau.h"
4
5
-#ifdef USE_VDPAU
6
+#if defined(USE_VDPAU)
7
#include "../include/ADM_coreVdpauInternal.h"
8
#include "ADM_dynamicLoading.h"
9
10
-#if 1
11
+#if 0
12
#define aprintf ADM_info
13
#else
14
#define aprintf(...) {}
15
16
uint32_t color=VDP_CHROMA_TYPE_420;
17
void *values[MIXER_NB_PARAM]={&width,&height,&color};
18
int nbFeature=0;
19
+ ADM_info("Creating vdpauMixer with width=%d, height=%d color=%d\n",width,height,color);
20
//features[nbFeature++]=VDP_VIDEO_MIXER_FEATURE_HIGH_QUALITY_SCALING_L5;
21
if(deinterlace)
22
{
23
24
NULL, // dest video Rec
25
0,NULL); // Layers
26
27
+#if 0
28
+ ADM_info("Target width=%d height=%d\n", targetWidth,targetHeight);
29
+ VdpRGBAFormat fmt;
30
+ VdpChromaType chroma;
31
+ uint32_t tw,th;
32
+
33
+ if(VDP_STATUS_OK!=ADM_coreVdpau::funcs.mixerGetOutputSurfaceParameters(targetOutputSurface,&fmt,&tw,&th))
34
+ {
35
+ ADM_warning("VdpOutputSurfaceGetParameters failed\n");
36
+ }
37
+ ADM_info("output surface width=%d height=%d fmt=%d\n", tw,th,fmt);
38
+ if(VDP_STATUS_OK!=ADM_coreVdpau::funcs.mixerGetSurfaceParameters(sourceSurface,&chroma,&tw,&th))
39
+ {
40
+ ADM_warning("mixerGetSurfaceParameters failed\n");
41
+ }
42
+ ADM_info("input surface width=%d height=%d fmt=%d\n", tw,th,chroma);
43
+#endif
44
+ if(VDP_STATUS_OK!=e)
45
+ {
46
+
47
+ ADM_warning("MixerRender failed :%s\n",getErrorString(e));
48
+
49
+ }
50
+ return e;
51
+}
52
+/**
53
+ * \fn mixerRenderWithCropping
54
+ * \brief Same as above but allow to take only top/left of the input image
55
+ * @param mixer
56
+ * @param sourceSurface
57
+ * @param targetOutputSurface
58
+ * @param targetWidth
59
+ * @param targetHeight
60
+ * @param sourceWidth
61
+ * @param sourceHeight
62
+ * @return
63
+ */
64
+VdpStatus admVdpau::mixerRenderWithCropping(VdpVideoMixer mixer,
65
+ VdpVideoSurface sourceSurface,
66
+ VdpOutputSurface targetOutputSurface,
67
+ uint32_t targetWidth,
68
+ uint32_t targetHeight,uint32_t sourceWidth, uint32_t sourceHeight )
69
+{
70
+const VdpVideoSurface listOfInvalidSurface[1]={VDP_INVALID_HANDLE};
71
+
72
+ VdpRect rect;
73
+ rect.x0=rect.y0=0;
74
+ rect.x1=sourceWidth;
75
+ rect.y1=sourceHeight;
76
+#if 0
77
+ VdpChromaType sourceChroma;
78
+ uint32_t sourceW,sourceH;
79
+ ADM_coreVdpau::funcs.mixerGetSurfaceParameters(sourceSurface,&sourceChroma,&sourceW,&sourceH);
80
+ ADM_info("Source is %d %d x %d\n",sourceChroma,sourceW,sourceH);
81
+ VdpRGBAFormat rgb;
82
+ ADM_coreVdpau::funcs.mixerGetOutputSurfaceParameters(targetOutputSurface,&rgb,&sourceW,&sourceH);
83
+ ADM_info("Target is %d %d x %d\n",rgb,sourceW,sourceH);
84
+ ADM_info("Cropped to %d x %d ==> %d x %d\n",sourceWidth,sourceHeight,targetWidth,targetHeight);
85
+ ADM_info("Rect %d %d %d %d\n",rect.x0,rect.y0,rect.x1,rect.y1);
86
+#endif
87
+ VdpStatus e=ADM_coreVdpau::funcs.mixerRender(mixer,
88
+ VDP_INVALID_HANDLE,NULL, // Background
89
+ VDP_VIDEO_MIXER_PICTURE_STRUCTURE_FRAME,
90
+
91
+ 0, listOfInvalidSurface, // Past...
92
+ sourceSurface, // current
93
+ 0, listOfInvalidSurface, // Future
94
+ &rect, // source RECT
95
+ targetOutputSurface,
96
+ NULL, // dest Rec
97
+ NULL, // dest video Rec
98
+ 0,NULL); // Layers
99
+
100
101
if(VDP_STATUS_OK!=e)
102
{
103
104
}
105
return e;
106
}
107
+
108
/**
109
\fn mixerGetAttributesValue
110
*/
111
112
VdpVideoSurface sourceSurface[3], // Past present future
113
VdpOutputSurface targetOutputSurface,
114
uint32_t targetWidth,
115
- uint32_t targetHeight )
116
+ uint32_t targetHeight,
117
+ uint32_t sourceWidth,
118
+ uint32_t sourceHeight )
119
{
120
int nbPrev=2,nbNext=2;
121
VdpVideoMixerPictureStructure fieldType=VDP_VIDEO_MIXER_PICTURE_STRUCTURE_TOP_FIELD;
122
123
VdpVideoSurface future[2]={VDP_INVALID_HANDLE,VDP_INVALID_HANDLE};
124
VdpVideoSurface present;
125
126
+ VdpRect rect;
127
+ rect.x0=rect.y0=0;
128
+ rect.x1=sourceWidth;
129
+ rect.y1=sourceHeight;
130
+
131
present=sourceSurface[1];
132
int index=0;
133
if(!topField) index=1;
134
135
nbPrev, past, // Past...
136
present, // current
137
nbNext, future, // Future
138
- NULL, // source RECT
139
+ &rect, // source RECT
140
targetOutputSurface,
141
NULL, // dest Rec
142
NULL, // dest video Rec
143
avidemux_2.6.11.tar.gz/avidemux_core/ADM_coreVideoCodec/include/ADM_ffmp43.h -> avidemux_2.6.12.tar.gz/avidemux_core/ADM_coreVideoCodec/include/ADM_ffmp43.h
Changed
13
1
2
#pragma once
3
4
#include "ADM_coreVideoCodec6_export.h"
5
+typedef void (AV_FATAL_HANDLER)(const char *why,int fileno,const char *filewhereitcrashed);
6
7
extern "C" {
8
#include "libavcodec/avcodec.h"
9
+extern void av_setFatalHandler(AV_FATAL_HANDLER *func);
10
}
11
12
#include "ADM_codec.h"
13
avidemux_2.6.11.tar.gz/avidemux_core/ADM_coreVideoCodec/src/ADM_ffmp43.cpp -> avidemux_2.6.12.tar.gz/avidemux_core/ADM_coreVideoCodec/src/ADM_ffmp43.cpp
Changed
27
1
2
{
3
void adm_lavLogCallback(void *instance, int level, const char* fmt, va_list list);
4
}
5
+
6
+
7
+extern "C"
8
+{
9
+static void ffFatalError(const char *what,int lineno, const char *filez)
10
+{
11
+ ADM_backTrack(what,lineno,filez);
12
+}
13
+
14
+}
15
/**
16
\fn ADM_lavInit
17
\brief Init both lavcodec and lavformat
18
19
{
20
avcodec_register_all();
21
av_log_set_callback(adm_lavLogCallback);
22
-
23
+ av_setFatalHandler(ffFatalError);
24
#ifdef ADM_DEBUG
25
av_log_set_level(AV_LOG_DEBUG);
26
#endif
27
avidemux_2.6.12.tar.gz/avidemux_core/ffmpeg_package/ffmpeg-2.7.6.tar.bz2
Added
avidemux_2.6.12.tar.gz/avidemux_core/ffmpeg_package/patches/libavutil_avassert_h.patch
Added
24
1
2
+--- libavutil/avassert.h.old 2016-01-31 00:43:51.000000000 +0100
3
++++ libavutil/avassert.h 2016-02-16 21:21:02.768117422 +0100
4
+@@ -30,14 +30,17 @@
5
+ #include <stdlib.h>
6
+ #include "avutil.h"
7
+ #include "log.h"
8
++extern void av_fatalHandler(const char *why,const char *file, int lineno);
9
++typedef void (AV_FATAL_HANDLER)(const char *why,int lineno, const char *file);
10
++
11
++extern void av_setFatalHandler(AV_FATAL_HANDLER *func);
12
+
13
+ /**
14
+ * assert() equivalent, that is always enabled.
15
+ */
16
+ #define av_assert0(cond) do { \
17
+ if (!(cond)) { \
18
+- av_log(NULL, AV_LOG_PANIC, "Assertion %s failed at %s:%d\n", \
19
+- AV_STRINGIFY(cond), __FILE__, __LINE__); \
20
++ av_fatalHandler( AV_STRINGIFY(cond),__FILE__,__LINE__); \
21
+ abort(); \
22
+ } \
23
+ } while (0)
24
avidemux_2.6.12.tar.gz/avidemux_core/ffmpeg_package/patches/libavutil_log_c.patch
Added
43
1
2
+--- libavutil/log.c.old 2016-01-31 00:43:51.000000000 +0100
3
++++ libavutil/log.c 2016-02-16 21:24:19.943656163 +0100
4
+@@ -39,6 +39,7 @@
5
+ #include "common.h"
6
+ #include "internal.h"
7
+ #include "log.h"
8
++#include "avassert.h" // MEANX
9
+
10
+ #if HAVE_PTHREADS
11
+ #include <pthread.h>
12
+@@ -121,7 +122,7 @@
13
+
14
+ #endif
15
+ static int use_color = -1;
16
+-
17
++static AV_FATAL_HANDLER *fatalHandler=NULL; // MEANX
18
+ static void check_color_terminal(void)
19
+ {
20
+ #if defined(_WIN32) && !defined(__MINGW32CE__) && HAVE_SETCONSOLETEXTATTRIBUTE
21
+@@ -430,7 +431,21 @@
22
+ missing_feature_sample(0, avc, msg, argument_list);
23
+ va_end(argument_list);
24
+ }
25
++// MEANX
26
+
27
++void av_fatalHandler(const char *why,const char *filez, int lineno)
28
++{
29
++char *cleartext[2048];
30
++ if(!fatalHandler)
31
++ printf("[CRASH] %s, file %s, lineno=%d\n",cleartext,filez,lineno);
32
++ else
33
++ (fatalHandler)(cleartext,lineno,filez);
34
++}
35
++void av_setFatalHandler(AV_FATAL_HANDLER *func)
36
++{
37
++ fatalHandler=func;
38
++}
39
++//
40
+ #ifdef TEST
41
+ // LCOV_EXCL_START
42
+ #include <string.h>
43
avidemux_2.6.11.tar.gz/avidemux_plugins/ADM_audioDecoders/ADM_ad_opus/ADM_opus.cpp -> avidemux_2.6.12.tar.gz/avidemux_plugins/ADM_audioDecoders/ADM_ad_opus/ADM_opus.cpp
Changed
10
1
2
3
4
int err=opus_decode_float(opus_handle,inptr,nbIn,outptr,5760,false); //??
5
- ADM_info("Incoming = %d bytes, out samples=%d\n",nbIn,err);
6
+ //ADM_info("Incoming = %d bytes, out samples=%d\n",nbIn,err);
7
if(err>0)
8
{
9
*nbOut=err*wavHeader.channels;
10
avidemux_2.6.11.tar.gz/avidemux_plugins/ADM_demuxers/Matroska/ADM_ebml.h -> avidemux_2.6.12.tar.gz/avidemux_plugins/ADM_demuxers/Matroska/ADM_ebml.h
Changed
51
1
2
uint32_t readu32(void);
3
int32_t reads32(void);
4
/***********************************/
5
- virtual uint8_t readBin(uint8_t *whereto,uint32_t len)=0;
6
- virtual uint8_t skip(uint32_t nbBytes)=0;
7
+ virtual bool readBin(uint8_t *whereto,uint32_t len)=0;
8
+ virtual bool skip(uint32_t nbBytes)=0;
9
virtual uint64_t tell(void)=0;
10
};
11
-
12
+/**
13
+ */
14
class ADM_ebml_file : public ADM_ebml
15
{
16
protected:
17
18
uint64_t _size;
19
uint32_t _close;
20
public:
21
- ADM_ebml_file();
22
- ADM_ebml_file(ADM_ebml_file *father,uint64_t size);
23
- ~ADM_ebml_file();
24
- uint8_t open(const char *fn);
25
+ ADM_ebml_file();
26
+ ADM_ebml_file(ADM_ebml_file *father,uint64_t size);
27
+ ~ADM_ebml_file();
28
+ bool open(const char *fn);
29
30
- virtual uint8_t readBin(uint8_t *whereto,uint32_t len);
31
- virtual uint8_t skip(uint32_t nbBytes);
32
+ virtual bool readBin(uint8_t *whereto,uint32_t len);
33
+ virtual bool skip(uint32_t nbBytes);
34
uint64_t tell(void);
35
- uint8_t seek(uint64_t pos);
36
- uint8_t finished(void);
37
+ bool seek(uint64_t pos);
38
+ bool finished(void);
39
uint64_t getFileSize(void) {return _size;};
40
- uint8_t find(ADM_MKV_SEARCHTYPE search,
41
- MKV_ELEM_ID prim,MKV_ELEM_ID second,uint64_t *len,uint32_t rewind=1);
42
- uint8_t simplefind(MKV_ELEM_ID prim,uint64_t *len,uint32_t rewind=1);
43
- uint64_t remaining(void);
44
+ bool find(ADM_MKV_SEARCHTYPE search,
45
+ MKV_ELEM_ID prim,MKV_ELEM_ID second,uint64_t *len,bool rewind=1);
46
+ bool simplefind(MKV_ELEM_ID prim,uint64_t *len,bool rewind=true);
47
+ uint64_t remaining(void);
48
};
49
50
void bigHexPrint(uint64_t v);
51
avidemux_2.6.11.tar.gz/avidemux_plugins/ADM_demuxers/Matroska/ADM_mkv.cpp -> avidemux_2.6.12.tar.gz/avidemux_plugins/ADM_demuxers/Matroska/ADM_mkv.cpp
Changed
213
1
2
_timeBase=timeBase/1000; // We work in us
3
}
4
}
5
- /* Now find tracks */
6
- if(!ebml.find(ADM_MKV_SECONDARY,MKV_SEGMENT,MKV_TRACKS,&alen))
7
+ /* --*/
8
+ if(!ebml.simplefind(MKV_SEGMENT,&len,true))
9
{
10
- printf("[MKV] Cannot find tracks\n");
11
- return 0;
12
+ printf("[MKV] Cannot find Segment\n");
13
+ return false;
14
+ }
15
+ _segmentPosition=ebml.tell();
16
+ printf("[MKV] found Segment at 0x%llx\n",(uint64_t)_segmentPosition);
17
+ /* Now find tracks */
18
+ if(ebml.find(ADM_MKV_SECONDARY,MKV_SEGMENT,MKV_SEEK_HEAD,&alen))
19
+ {
20
+ ADM_ebml_file seekHead( &ebml,alen);
21
+ readSeekHead(&seekHead);
22
}
23
+ /* Now find tracks */
24
/* And analyze them */
25
- if(!analyzeTracks(&ebml,alen))
26
+ if(!analyzeTracks(&ebml))
27
{
28
printf("[MKV] incorrect tracks\n");
29
}
30
31
printf("[MKV] No video\n");
32
return 0;
33
}
34
+ readCue(&ebml);
35
printf("[MKV] Indexing clusters\n");
36
if(!indexClusters(&ebml))
37
{
38
printf("[MKV] Cluster indexing failed\n");
39
return 0;
40
- }
41
- readCue(&ebml);
42
+ }
43
printf("[MKV]Found %u clusters\n",_clusters.size());
44
printf("[MKV] Indexing video\n");
45
if(!videoIndexer(&ebml))
46
47
return 1;
48
49
}
50
+
51
+/**
52
+ * \fn goBeforeAtomAtPosition
53
+ * \brief check and position the read at the payload for atom searchedId, return payloadSize in outputLen
54
+ */
55
+bool mkvHeader::goBeforeAtomAtPosition(ADM_ebml_file *parser, uint64_t position,uint64_t &outputLen, MKV_ELEM_ID searchedId,const char *txt)
56
+{
57
+ uint64_t id,len;
58
+ ADM_MKV_TYPE type;
59
+ const char *ss;
60
+
61
+ if(!position)
62
+ {
63
+ ADM_warning("No offset available for %s\n",txt);
64
+ return false;
65
+ }
66
+ parser->seek(position);
67
+ if(!parser->readElemId(&id,&len))
68
+ {
69
+ ADM_warning("No element available for %s\n",txt);
70
+ return false;
71
+ }
72
+ if(!ADM_searchMkvTag( (MKV_ELEM_ID)id,&ss,&type))
73
+ {
74
+ printf("[MKV/SeekHead] Tag 0x%"PRIx64" not found (len %"PRIu64")\n",id,len);
75
+ return false;
76
+ }
77
+ if(id!=searchedId)
78
+ {
79
+ printf("Found %s instead of %s, ignored \n",ss,txt);
80
+ return false;
81
+ }
82
+ outputLen=len;
83
+ return true;
84
+}
85
+
86
/**
87
\fn analyzeTracks
88
\brief Read Tracks Info.
89
*/
90
-uint8_t mkvHeader::analyzeTracks(void *head,uint32_t headlen)
91
+bool mkvHeader::analyzeTracks(ADM_ebml_file *parser)
92
{
93
- uint64_t id,len;
94
- ADM_MKV_TYPE type;
95
+ uint64_t len;
96
+ uint64_t id;
97
const char *ss;
98
- ADM_ebml_file father( (ADM_ebml_file *)head,headlen);
99
- while(!father.finished())
100
- {
101
+ ADM_MKV_TYPE type;
102
+
103
+ if(!goBeforeAtomAtPosition(parser, _trackPosition,len, MKV_TRACKS,"MKV_TRACKS"))
104
+ {
105
+ ADM_warning("Cannot go to the TRACKS atom\n");
106
+ return false;
107
+ }
108
+
109
+ ADM_ebml_file father( parser,len);
110
+ while(!father.finished())
111
+ {
112
father.readElemId(&id,&len);
113
if(!ADM_searchMkvTag( (MKV_ELEM_ID)id,&ss,&type))
114
{
115
116
continue;
117
}
118
if(!analyzeOneTrack(&father,len)) return 0;
119
- }
120
+ }
121
return 1;
122
}
123
124
125
_audioStreams=NULL;
126
127
readBuffer=NULL;
128
+ _cuePosition=0;
129
+ _segmentPosition=0;
130
+ _trackPosition=0;
131
}
132
/**
133
\fn ~mkvHeader
134
135
return true;
136
137
}
138
-
139
-
140
+/**
141
+ * \fn readSeekHead
142
+ * \bried used to locate the interesting parts of the file
143
+ */
144
+bool mkvHeader::readSeekHead(ADM_ebml_file *body)
145
+{
146
+ uint64_t vlen,len;
147
+ ADM_info("Parsing SeekHead\n");
148
+ while(!body->finished())
149
+ {
150
+ if(!body->simplefind(MKV_SEEK,&vlen,false))
151
+ break;
152
+ ADM_ebml_file item(body,vlen);
153
+ uint64_t id;
154
+ ADM_MKV_TYPE type;
155
+ const char *ss;
156
+
157
+ item.readElemId(&id,&len);
158
+ if(!ADM_searchMkvTag( (MKV_ELEM_ID)id,&ss,&type))
159
+ {
160
+ printf("[MKV/SeekHead] Tag 0x%"PRIx64" not found (len %"PRIu64")\n",id,len);
161
+ return false;
162
+ }
163
+ if(id!=MKV_ID)
164
+ {
165
+ printf("Found %s in CUES, ignored \n",ss);
166
+ item.skip(len);
167
+ return false;
168
+ }
169
+ // read id
170
+ uint64_t t=item.readEBMCode_Full();
171
+ if(!ADM_searchMkvTag( (MKV_ELEM_ID)t,&ss,&type))
172
+ {
173
+ printf("[MKV/SeekHead] Tag 0x%"PRIx64" not found (len %"PRIu64")\n",id,len);
174
+ return false;
175
+ }
176
+ ADM_info("Found entry for %s\n",ss);
177
+ item.readElemId(&id,&len);
178
+ if(!ADM_searchMkvTag( (MKV_ELEM_ID)id,&ss,&type))
179
+ {
180
+ printf("[MKV/SeekHead] Tag 0x%"PRIx64" not found (len %"PRIu64")\n",id,len);
181
+ return false;
182
+ }
183
+ if(id!=MKV_SEEK_POSITION)
184
+ {
185
+ printf("Found %s in CUES, ignored \n",ss);
186
+ item.skip(len);
187
+ return false;
188
+ }
189
+ uint64_t position=item.readUnsignedInt(len);
190
+ switch(t)
191
+ {
192
+ case MKV_CUES:
193
+ _cuePosition=position+_segmentPosition;
194
+ ADM_info(" at position 0x%llx\n",_cuePosition);
195
+ break;
196
+ case MKV_TRACKS:
197
+ _trackPosition=position+_segmentPosition;;
198
+ ADM_info(" at position at 0x%llx\n",_trackPosition);
199
+ case MKV_INFO:
200
+ default:
201
+ break;
202
+ }
203
+
204
+ }
205
+ ADM_info("Parsing SeekHead done successfully\n");
206
+ if(!_trackPosition )
207
+ return false;
208
+ return true;
209
+}
210
211
//****************************************
212
//EOF
213
avidemux_2.6.11.tar.gz/avidemux_plugins/ADM_demuxers/Matroska/ADM_mkv.h -> avidemux_2.6.12.tar.gz/avidemux_plugins/ADM_demuxers/Matroska/ADM_mkv.h
Changed
39
1
2
uint32_t _nbAudioTrack;
3
uint32_t _currentAudioTrack;
4
uint32_t _reordered;
5
+ //
6
+ uint64_t _segmentPosition;
7
+ uint64_t _cuePosition;
8
+ uint64_t _trackPosition;
9
10
uint8_t checkHeader(void *head,uint32_t headlen);
11
- uint8_t analyzeTracks(void *head,uint32_t headlen);
12
+ bool analyzeTracks(ADM_ebml_file *parser);
13
uint8_t analyzeOneTrack(void *head,uint32_t headlen);
14
uint8_t walk(void *seed);
15
uint64_t walkAndFind(void *seed,MKV_ELEM_ID searched);
16
int searchTrackFromTid(uint32_t tid);
17
+ bool readSeekHead(ADM_ebml_file *body);
18
//
19
uint8_t reformatVorbisHeader(mkvTrak *trk);
20
// Indexers
21
22
uint8_t addIndexEntry(uint32_t track,ADM_ebml_file *parser,uint64_t where, uint32_t size,uint32_t flags,
23
uint32_t timecodeMS);
24
uint8_t videoIndexer(ADM_ebml_file *parser);
25
- uint8_t readCue(ADM_ebml_file *parser);
26
+ bool readCue(ADM_ebml_file *parser);
27
uint8_t indexClusters(ADM_ebml_file *parser);
28
uint8_t indexBlock(ADM_ebml_file *parser,uint32_t count,uint32_t timecodeMS);
29
30
31
bool ComputeDeltaAndCheckBFrames(uint32_t *minDeltaX, uint32_t *maxDeltaX, bool *bFramePresent);
32
bool updateFlagsWithCue(void); // in case we can trust it, update KEY_FRAME_FLAGS
33
bool dumpVideoIndex(int maxIndex);
34
+ bool goBeforeAtomAtPosition(ADM_ebml_file *parser, uint64_t position,uint64_t &outputLen,
35
+ MKV_ELEM_ID searchedId,const char *txt);
36
public:
37
38
39
avidemux_2.6.11.tar.gz/avidemux_plugins/ADM_demuxers/Matroska/ADM_mkvIndexer.cpp -> avidemux_2.6.12.tar.gz/avidemux_plugins/ADM_demuxers/Matroska/ADM_mkvIndexer.cpp
Changed
202
1
2
}
3
return -1;
4
}
5
+
6
+static bool canRederiveFrameType(uint32_t fcc)
7
+{
8
+ if(isMpeg4Compatible(fcc)) return true;
9
+ if(isH264Compatible(fcc)) return true;
10
+ if(isMpeg12Compatible(fcc)) return true;
11
+ return false;
12
+
13
+}
14
+
15
/**
16
\fn addVideoEntry
17
\brief add an entry to the video index
18
19
// For the 2 most common cases : mp4 & h264.
20
// Hackish, we already read the 3 bytes header
21
// But they are already taken into account in the size part
22
- if(!track) // Track 0 is video
23
+ if(!track && canRederiveFrameType(_videostream.fccHandler)) // Track 0 is video
24
{
25
if( isMpeg4Compatible(_videostream.fccHandler))
26
{
27
28
\brief Update index with cue content
29
30
*/
31
-uint8_t mkvHeader::readCue(ADM_ebml_file *parser)
32
+bool mkvHeader::readCue(ADM_ebml_file *parser)
33
{
34
- uint64_t fileSize,len,bsize;
35
- uint64_t alen,vlen;
36
+ uint64_t len,vlen;
37
uint64_t id;
38
ADM_MKV_TYPE type;
39
const char *ss;
40
uint64_t time;
41
- uint64_t segmentPos;
42
+
43
+
44
45
- parser->seek(0);
46
+ if(!goBeforeAtomAtPosition(parser, _cuePosition,vlen, MKV_CUES,"MKV_CUES"))
47
+ {
48
+ ADM_warning("Cannot go to the CUES atom\n");
49
+ return false;
50
+ }
51
52
- if(!parser->simplefind(MKV_SEGMENT,&vlen,1))
53
- {
54
- printf("[MKV] Cannot find CLUSTER atom\n");
55
- return 0;
56
- }
57
- ADM_ebml_file segment(parser,vlen);
58
- segmentPos=segment.tell();
59
+ ADM_ebml_file cues(parser,vlen);
60
+ while(!cues.finished())
61
+ {
62
+ cues.readElemId(&id,&len);
63
+ if(!ADM_searchMkvTag( (MKV_ELEM_ID)id,&ss,&type))
64
+ {
65
+ printf("[MKV] Tag 0x%"PRIx64" not found (len %"PRIu64")\n",id,len);
66
+ cues.skip(len);
67
+ continue;
68
+ }
69
+ if(id!=MKV_CUE_POINT)
70
+ {
71
+ printf("Found %s in CUES, ignored \n",ss);
72
+ cues.skip(len);
73
+ continue;
74
+ }
75
+ ADM_ebml_file cue(&cues,len);
76
+ // Cue TIME normally
77
+ cue.readElemId(&id,&len);
78
+ if(id!=MKV_CUE_TIME)
79
+ {
80
+ ADM_searchMkvTag( (MKV_ELEM_ID)id,&ss,&type);
81
+ printf("Found %s(0x%"PRIx64"), expected CUE_TIME (0x%x)\n", ss,id,MKV_CUE_TIME);
82
+ cue.skip(cue.remaining());
83
+ continue;
84
+ }
85
+ time=cue.readUnsignedInt(len);
86
87
- while(segment.simplefind(MKV_CUES,&alen,0))
88
- {
89
- ADM_ebml_file cues(&segment,alen);
90
- while(!cues.finished())
91
- {
92
- cues.readElemId(&id,&len);
93
- if(!ADM_searchMkvTag( (MKV_ELEM_ID)id,&ss,&type))
94
- {
95
- printf("[MKV] Tag 0x%"PRIx64" not found (len %"PRIu64")\n",id,len);
96
- cues.skip(len);
97
- continue;
98
- }
99
- if(id!=MKV_CUE_POINT)
100
- {
101
- printf("Found %s in CUES, ignored \n",ss);
102
- cues.skip(len);
103
- continue;
104
- }
105
- ADM_ebml_file cue(&cues,len);
106
- // Cue TIME normally
107
- cue.readElemId(&id,&len);
108
- if(id!=MKV_CUE_TIME)
109
- {
110
- ADM_searchMkvTag( (MKV_ELEM_ID)id,&ss,&type);
111
- printf("Found %s(0x%"PRIx64"), expected CUE_TIME (0x%x)\n", ss,id,MKV_CUE_TIME);
112
- cue.skip(cue.remaining());
113
- continue;
114
- }
115
- time=cue.readUnsignedInt(len);
116
117
+ cue.readElemId(&id,&len);
118
+ if(id!=MKV_CUE_TRACK_POSITION)
119
+ {
120
+ ADM_searchMkvTag( (MKV_ELEM_ID)id,&ss,&type);
121
+ printf("Found %s (0x%"PRIx64"), expected MKV_CUE_TRACK_POSITION (0x%x)\n", ss,id,MKV_CUE_TRACK_POSITION);
122
+ cue.skip(cues.remaining());
123
+ continue;
124
+ }
125
+ ADM_ebml_file trackPos(&cue,len);
126
+ uint64_t tid=0;
127
+ uint64_t cluster_position=0;
128
+ uint64_t cue_position=0;
129
+ while(!trackPos.finished())
130
+ {
131
+ trackPos.readElemId(&id,&len);
132
+ switch(id)
133
+ {
134
+ case MKV_CUE_TRACK: tid=trackPos.readUnsignedInt(len);break;
135
+ case MKV_CUE_CLUSTER_POSITION: cluster_position=trackPos.readUnsignedInt(len);break;
136
+ case MKV_CUE_RELATIVE_POSITION: cue_position=trackPos.readUnsignedInt(len);break;
137
+ default:
138
+ ADM_searchMkvTag( (MKV_ELEM_ID)id,&ss,&type);
139
+ printf("[MKV] in cluster position found tag %s (0x%"PRIx64")\n",ss,id);
140
+ trackPos.skip(len);
141
+ continue;
142
+ }
143
+ }
144
+ aprintf("Track %"PRIx64" segmentPos=%"PRIx64" Cluster Position 0x%"PRIx64" Cue position 0x%"PRIx64" Absolute=%"PRIx64" time %"PRIu64"\n",
145
+ tid,_segmentPosition,cluster_position,cue_position,cue_position+cluster_position+_segmentPosition,time);
146
147
- cue.readElemId(&id,&len);
148
- if(id!=MKV_CUE_TRACK_POSITION)
149
- {
150
- ADM_searchMkvTag( (MKV_ELEM_ID)id,&ss,&type);
151
- printf("Found %s (0x%"PRIx64"), expected MKV_CUE_TRACK_POSITION (0x%x)\n", ss,id,MKV_CUE_TRACK_POSITION);
152
- cue.skip(cues.remaining());
153
- continue;
154
- }
155
- ADM_ebml_file trackPos(&cue,len);
156
- uint64_t tid=0;
157
- uint64_t cluster_position=0;
158
- uint64_t cue_position=0;
159
- while(!trackPos.finished())
160
- {
161
- trackPos.readElemId(&id,&len);
162
- switch(id)
163
- {
164
- case MKV_CUE_TRACK: tid=trackPos.readUnsignedInt(len);break;
165
- case MKV_CUE_CLUSTER_POSITION: cluster_position=trackPos.readUnsignedInt(len);break;
166
- case MKV_CUE_RELATIVE_POSITION: cue_position=trackPos.readUnsignedInt(len);break;
167
- default:
168
- ADM_searchMkvTag( (MKV_ELEM_ID)id,&ss,&type);
169
- printf("[MKV] in cluster position found tag %s (0x%"PRIx64")\n",ss,id);
170
- trackPos.skip(len);
171
- continue;
172
- }
173
- }
174
- aprintf("Track %"PRIx64" segmentPos=%"PRIx64" Cluster Position 0x%"PRIx64" Cue position 0x%"PRIx64" Absolute=%"PRIx64" time %"PRIu64"\n",
175
- tid,segmentPos,cluster_position,cue_position,cue_position+cluster_position+segmentPos,time);
176
-
177
- if(!searchTrackFromTid(tid)) //only keep video i.e. track zero
178
- _cueTime.append(time);
179
- }
180
+ if(!searchTrackFromTid(tid)) //only keep video i.e. track zero
181
+ {
182
+ //printf("Adding cue entry\n");
183
+ _cueTime.append(time);
184
+ }
185
}
186
- printf("[MKV] Cues updated\n");
187
- return 1;
188
+ if(_cueTime.size())
189
+ {
190
+ ADM_info("[MKV] Cues updated\n");
191
+ return true;
192
+ }
193
+ else
194
+ {
195
+ ADM_info("[MKV] No Cue found\n");
196
+ return false;
197
+ }
198
+
199
}
200
/**
201
\fn indexClusters
202
avidemux_2.6.11.tar.gz/avidemux_plugins/ADM_demuxers/Matroska/ebml.cpp -> avidemux_2.6.12.tar.gz/avidemux_plugins/ADM_demuxers/Matroska/ebml.cpp
Changed
93
1
2
}
3
fp=NULL;
4
}
5
-uint8_t ADM_ebml_file::open(const char *name)
6
+/**
7
+ *
8
+ * @param name
9
+ * @return
10
+ */
11
+bool ADM_ebml_file::open(const char *name)
12
{
13
14
fp=ADM_fopen(name,"rb");
15
16
fseeko(fp,0,SEEK_SET);
17
return 1;
18
}
19
-uint8_t ADM_ebml_file::readBin(uint8_t *whereto,uint32_t len)
20
+/**
21
+ *
22
+ * @param whereto
23
+ * @param len
24
+ * @return
25
+ */
26
+bool ADM_ebml_file::readBin(uint8_t *whereto,uint32_t len)
27
{
28
ADM_assert(fp);
29
if(!fread(whereto,len,1,fp)) return 0;
30
return 1;
31
}
32
-
33
-uint8_t ADM_ebml_file::skip(uint32_t vv)
34
+/**
35
+ *
36
+ * @param vv
37
+ * @return
38
+ */
39
+bool ADM_ebml_file::skip(uint32_t vv)
40
{
41
fseeko(fp,vv,SEEK_CUR);
42
return 1;
43
44
{
45
return ftello(fp);
46
}
47
-uint8_t ADM_ebml_file::seek(uint64_t pos)
48
+/**
49
+ *
50
+ * @param pos
51
+ * @return
52
+ */
53
+bool ADM_ebml_file::seek(uint64_t pos)
54
{
55
fseeko(fp,pos,SEEK_SET);
56
return 1;
57
}
58
-uint8_t ADM_ebml_file::finished(void)
59
+/**
60
+ *
61
+ * @return
62
+ */
63
+bool ADM_ebml_file::finished(void)
64
{
65
if(tell()>(_fileSize-2)) return 1;
66
if(tell()>(_begin+_size-2)) return 1;
67
68
\fn find
69
\brief Search for the tag given and returns the corresponding atom
70
*/
71
- uint8_t ADM_ebml_file::find(ADM_MKV_SEARCHTYPE search,MKV_ELEM_ID prim,MKV_ELEM_ID second,uint64_t *len,uint32_t rewind)
72
+ bool ADM_ebml_file::find(ADM_MKV_SEARCHTYPE search,MKV_ELEM_ID prim,MKV_ELEM_ID second,uint64_t *len,bool rewind)
73
{
74
uint64_t id,pos;
75
ADM_MKV_TYPE type;
76
77
\fn find
78
\brief Search for the tag given and returns the corresponding atom
79
*/
80
-uint8_t ADM_ebml_file::simplefind(MKV_ELEM_ID prim,uint64_t *len,uint32_t rewind)
81
+bool ADM_ebml_file::simplefind(MKV_ELEM_ID prim,uint64_t *len,bool rewind)
82
{
83
uint64_t id,alen;
84
ADM_MKV_TYPE type;
85
86
87
while(!finished())
88
{
89
+ //printf("Offset is %d\n",(int)(this->tell()>>10));
90
readElemId(&id,&alen);
91
if(!ADM_searchMkvTag( (MKV_ELEM_ID)id,&ss,&type))
92
{
93
avidemux_2.6.11.tar.gz/avidemux_plugins/ADM_demuxers/Mp4/ADM_mp4Analyzer.cpp -> avidemux_2.6.12.tar.gz/avidemux_plugins/ADM_demuxers/Mp4/ADM_mp4Analyzer.cpp
Changed
9
1
2
break;
3
//
4
case MKFCCR('h','e','v','1'): // hev1 / hevc
5
+ case MKFCCR('h','v','c','1'): // hev1 / hevc
6
{
7
commonPart(H265);
8
while(!son.isDone())
9
avidemux_2.6.11.tar.gz/avidemux_plugins/ADM_demuxers/MpegTS/ADM_tsAudio.cpp -> avidemux_2.6.12.tar.gz/avidemux_plugins/ADM_demuxers/MpegTS/ADM_tsAudio.cpp
Changed
10
1
2
again:
3
if(latm.empty()==true) // fetch next LOAS frame, it will contain several frames
4
{
5
-
6
-
7
if(!retries)
8
{
9
ADM_error("Cannot get AAC packet from LATM\n");
10
avidemux_2.6.11.tar.gz/avidemux_plugins/ADM_demuxers/MpegTS/ADM_tsReadIndex.cpp -> avidemux_2.6.12.tar.gz/avidemux_plugins/ADM_demuxers/MpegTS/ADM_tsReadIndex.cpp
Changed
13
1
2
}
3
head=tail+1;
4
ADM_tsAccess *track=listOfAudioTracks[trackNb]->access;
5
- track->push(startAt,dts,size);
6
+ if(dts!=ADM_NO_PTS)
7
+ track->push(startAt,dts,size);
8
+ else
9
+ ADM_warning("No audio DTS\n");
10
11
trackNb++;
12
//printf("[%s] => %"PRIx32" Dts:%"PRId64" Size:%"PRId64"\n",buffer,pes,dts,size);
13
avidemux_2.6.11.tar.gz/avidemux_plugins/ADM_muxers/CMakeLists.txt -> avidemux_2.6.12.tar.gz/avidemux_plugins/ADM_muxers/CMakeLists.txt
Changed
9
1
2
ADD_SUBDIRECTORY(muxerFlv)
3
ADD_SUBDIRECTORY(muxerMp4)
4
ADD_SUBDIRECTORY(muxerMkv)
5
+ADD_SUBDIRECTORY(muxerWebm)
6
ADD_SUBDIRECTORY(muxerffPS)
7
ADD_SUBDIRECTORY(muxerffTS)
8
#ADD_SUBDIRECTORY(muxerMplex)
9
avidemux_2.6.12.tar.gz/avidemux_plugins/ADM_muxers/muxerWebm
Added
2
1
+(directory)
2
avidemux_2.6.12.tar.gz/avidemux_plugins/ADM_muxers/muxerWebm/CMakeLists.txt
Added
15
1
2
+include(mx_plugin)
3
+SET(ADM_Webm_SRCS
4
+ muxerWebm.cpp
5
+ muxerWebmPlugin.cpp
6
+ muxerWebmConfig.cpp
7
+)
8
+
9
+ADD_MUXER(ADM_mx_Webm ${ADM_Webm_SRCS})
10
+
11
+TARGET_LINK_LIBRARIES(ADM_mx_Webm ADM_libavutil ADM_libavcodec ADM_libavformat)
12
+INIT_MUXER(ADM_mx_Webm)
13
+INSTALL_MUXER(ADM_mx_Webm)
14
+
15
avidemux_2.6.12.tar.gz/avidemux_plugins/ADM_muxers/muxerWebm/muxerWebm.cpp
Added
183
1
2
+/***************************************************************************
3
+ \file muxerWebm
4
+ \brief i/f to lavformat Matroska muxer
5
+ -------------------
6
+
7
+ copyright : (C) 2009 by mean
8
+ email : fixounet@free.fr
9
+
10
+ ***************************************************************************/
11
+
12
+/***************************************************************************
13
+ * *
14
+ * This program is free software; you can redistribute it and/or modify *
15
+ * it under the terms of the GNU General Public License as published by *
16
+ * the Free Software Foundation; either version 2 of the License, or *
17
+ * (at your option) any later version. *
18
+ * *
19
+ ***************************************************************************/
20
+
21
+#include "ADM_default.h"
22
+#include "fourcc.h"
23
+#include "muxerWebm.h"
24
+#include "DIA_coreToolkit.h"
25
+#include "ADM_muxerUtils.h"
26
+
27
+#if 0
28
+#define aprintf(...) {}
29
+#else
30
+#define aprintf printf
31
+#endif
32
+
33
+Webm_muxer WebmMuxerConfig=
34
+{
35
+ false, // Force
36
+ 1280 // Display width
37
+};
38
+
39
+
40
+/**
41
+ \fn muxerWebm
42
+ \brief Constructor
43
+*/
44
+muxerWebm::muxerWebm()
45
+{
46
+};
47
+/**
48
+ \fn muxerWebm
49
+ \brief Destructor
50
+*/
51
+
52
+muxerWebm::~muxerWebm()
53
+{
54
+
55
+}
56
+/**
57
+ \fn open
58
+ \brief Check that the streams are ok, initialize context...
59
+*/
60
+
61
+bool muxerWebm::open(const char *file, ADM_videoStream *s,uint32_t nbAudioTrack,ADM_audioStream **a)
62
+{
63
+ // We only support VP8 + Vorbis
64
+ uint32_t fcc=s->getFCC();
65
+ if(!fourCC::check(fcc,(const uint8_t *)"VP8 ") && !fourCC::check(fcc,(const uint8_t *)"VP9 "))
66
+ {
67
+ GUI_Error_HIG("Webm","Unsupported Video.\nOnly VP8/VP9 Video and Vorbis/Opus audio supported");
68
+ return false;
69
+ }
70
+ for( int i=0;i<nbAudioTrack;i++)
71
+ {
72
+ uint16_t encoding=a[i]->getInfo()->encoding;
73
+ switch(encoding)
74
+ {
75
+ case WAV_OGG_VORBIS:
76
+ case WAV_OPUS:
77
+ break;
78
+ default:
79
+ GUI_Error_HIG("Webm","Unsupported Audio.\nOnly VP8/VP9 Video and Vorbis/Opus audio supported");
80
+ return false;
81
+ }
82
+ }
83
+ /* All seems fine, open stuff */
84
+ if(false==setupMuxer("webm",file))
85
+ {
86
+ ADM_warning("[Webm] Failed to open muxer (setup)\n");
87
+ return false;
88
+ }
89
+
90
+ if(initVideo(s)==false)
91
+ {
92
+ ADM_warning("[Webm] Failed to init video\n");
93
+ return false;
94
+ }
95
+
96
+
97
+ AVCodecContext *c;
98
+ c = video_st->codec;
99
+ rescaleFps(s->getAvgFps1000(),&(c->time_base));
100
+ video_st->time_base=c->time_base;
101
+ c->gop_size=15;
102
+
103
+ if(true==WebmMuxerConfig.forceDisplayWidth && WebmMuxerConfig.displayWidth)
104
+ {
105
+ //sar=display/code
106
+ int num=1,den=1;
107
+ av_reduce(&num, &den, WebmMuxerConfig.displayWidth, s->getWidth(),65535);
108
+ c->sample_aspect_ratio.num=num;
109
+ c->sample_aspect_ratio.den=den;
110
+ video_st->sample_aspect_ratio.num=num;
111
+ video_st->sample_aspect_ratio.den=den;
112
+ ADM_info("Forcing display width of %d\n",(int)WebmMuxerConfig.displayWidth);
113
+ }
114
+
115
+ if(initAudio(nbAudioTrack,a)==false)
116
+ {
117
+ ADM_warning("[Webm] Failed to init audio\n");
118
+ return false;
119
+ }
120
+
121
+ // /audio
122
+ int er = avio_open(&(oc->pb), file, AVIO_FLAG_WRITE);
123
+
124
+ if (er)
125
+ {
126
+ ADM_error("[Webm]: Failed to open file :%s, er=%d\n",file,er);
127
+ return false;
128
+ }
129
+
130
+ AVDictionary *dict = NULL;
131
+ char buf[64];
132
+
133
+ snprintf(buf, sizeof(buf), "%d", AV_TIME_BASE / 10);
134
+ av_dict_set(&dict, "preload", buf, 0);
135
+ av_dict_set(&dict, "max_delay", "200000", 0);
136
+ av_dict_set(&dict, "muxrate", "10080000", 0);
137
+
138
+ ADM_assert(avformat_write_header(oc, &dict) >= 0);
139
+ ADM_info("Timebase codec = %d/%d\n",video_st->time_base.num,video_st->time_base.den);
140
+// ADM_info("Original timebase = %d/%d\n",myTimeBase.num,myTimeBase.den);
141
+
142
+
143
+ vStream=s;
144
+ aStreams=a;
145
+ nbAStreams=nbAudioTrack;
146
+ initialized=true;
147
+ return true;
148
+}
149
+
150
+/**
151
+ \fn save
152
+*/
153
+bool muxerWebm::save(void)
154
+{
155
+ const char *title=QT_TRANSLATE_NOOP("Webmmuxer","Saving Webm");
156
+ return saveLoop(title);
157
+}
158
+
159
+bool muxerWebm::muxerRescaleVideoTimeDts(uint64_t *time,uint64_t computedDts)
160
+{
161
+ if(*time==ADM_NO_PTS)
162
+ {
163
+ *time=computedDts;
164
+ return muxerRescaleVideoTime(time);
165
+ }
166
+ return muxerRescaleVideoTime(time);
167
+}
168
+/**
169
+ \fn close
170
+ \brief Cleanup is done in the dtor
171
+*/
172
+bool muxerWebm::close(void)
173
+{
174
+
175
+ ADM_info("[Webm] Closing\n");
176
+ return closeMuxer();
177
+}
178
+
179
+//EOF
180
+
181
+
182
+
183
avidemux_2.6.12.tar.gz/avidemux_plugins/ADM_muxers/muxerWebm/muxerWebm.h
Added
41
1
2
+/***************************************************************************
3
+ oplug_vcdff.h - description
4
+ -------------------
5
+ begin : Sun Nov 10 2002
6
+ copyright : (C) 2002 by mean
7
+ email : fixounet@free.fr
8
+ ***************************************************************************/
9
+
10
+/***************************************************************************
11
+ * *
12
+ * This program is free software; you can redistribute it and/or modify *
13
+ * it under the terms of the GNU General Public License as published by *
14
+ * the Free Software Foundation; either version 2 of the License, or *
15
+ * (at your option) any later version. *
16
+ * *
17
+ ***************************************************************************/
18
+#ifndef ADM_MUXER_Webm
19
+#define ADM_MUXER_Webm
20
+
21
+#include "ADM_muxer.h"
22
+#include "ADM_coreMuxerFfmpeg.h"
23
+#include "webm_muxer.h"
24
+extern Webm_muxer WebmMuxerConfig;
25
+
26
+class muxerWebm : public muxerFFmpeg
27
+{
28
+protected:
29
+ bool muxerRescaleVideoTimeDts(uint64_t *time,uint64_t computedDts);
30
+ const char *getContainerName(void) {return "Webm";};
31
+public:
32
+ muxerWebm();
33
+ virtual ~muxerWebm();
34
+ virtual bool open(const char *file, ADM_videoStream *s,uint32_t nbAudioTrack,ADM_audioStream **a);
35
+ virtual bool save(void) ;
36
+ virtual bool close(void) ;
37
+ virtual bool useGlobalHeader(void) {return true;}
38
+};
39
+
40
+#endif
41
avidemux_2.6.12.tar.gz/avidemux_plugins/ADM_muxers/muxerWebm/muxerWebmConfig.cpp
Added
43
1
2
+/***************************************************************************
3
+ copyright : (C) 2007 by mean
4
+ email : fixounet@free.fr
5
+
6
+ ***************************************************************************/
7
+
8
+/***************************************************************************
9
+ * *
10
+ * This program is free software; you can redistribute it and/or modify *
11
+ * it under the terms of the GNU General Public License as published by *
12
+ * the Free Software Foundation; either version 2 of the License, or *
13
+ * (at your option) any later version. *
14
+ * *
15
+ ***************************************************************************/
16
+
17
+#include "ADM_default.h"
18
+#include "ADM_muxerInternal.h"
19
+#include "muxerWebm.h"
20
+#define ADM_MINIMAL_UI_INTERFACE
21
+#include "DIA_factory.h"
22
+#include "fourcc.h"
23
+bool WebmConfigure(void)
24
+{
25
+ bool force=WebmMuxerConfig.forceDisplayWidth;
26
+ uint32_t displayWidth=(uint32_t)WebmMuxerConfig.displayWidth;
27
+
28
+ diaElemToggle alternate(&force,"Force display width");
29
+ diaElemUInteger dWidth(&displayWidth,"Display width",16,65535);
30
+
31
+ diaElem *tabs[]={&alternate,&dWidth};
32
+ if( diaFactoryRun(("Webm Muxer"),2,tabs))
33
+ {
34
+ WebmMuxerConfig.forceDisplayWidth=(bool)force;
35
+ WebmMuxerConfig.displayWidth=displayWidth;
36
+ return true;
37
+ }
38
+ return false;
39
+
40
+}
41
+
42
+
43
avidemux_2.6.12.tar.gz/avidemux_plugins/ADM_muxers/muxerWebm/muxerWebmPlugin.cpp
Added
36
1
2
+/***************************************************************************
3
+ copyright : (C) 2007 by mean
4
+ email : fixounet@free.fr
5
+
6
+ See lavformat/flv[dec/env].c for detail
7
+ ***************************************************************************/
8
+
9
+/***************************************************************************
10
+ * *
11
+ * This program is free software; you can redistribute it and/or modify *
12
+ * it under the terms of the GNU General Public License as published by *
13
+ * the Free Software Foundation; either version 2 of the License, or *
14
+ * (at your option) any later version. *
15
+ * *
16
+ ***************************************************************************/
17
+
18
+#include "ADM_default.h"
19
+#include "ADM_muxerInternal.h"
20
+#include "muxerWebm.h"
21
+#include "webm_muxer_desc.cpp"
22
+#include "fourcc.h"
23
+ bool WebmConfigure(void);
24
+
25
+ADM_MUXER_BEGIN( "Webm",muxerWebm,
26
+ 1,0,0,
27
+ "Webm", // Internal name
28
+ "Webm muxer plugin (c) Mean 2009",
29
+ "Webm Muxer", // DIsplay name
30
+ WebmConfigure,
31
+ Webm_muxer_param, //template
32
+ &WebmMuxerConfig, //config
33
+ sizeof(Webm_muxer)
34
+ );
35
+
36
avidemux_2.6.12.tar.gz/avidemux_plugins/ADM_muxers/muxerWebm/webm_muxer.conf
Added
6
1
2
+Webm_muxer{
3
+bool:forceDisplayWidth
4
+uint32_t:displayWidth
5
+}
6
avidemux_2.6.12.tar.gz/avidemux_plugins/ADM_muxers/muxerWebm/webm_muxer.h
Added
11
1
2
+// automatically generated by admSerialization.py, do not edit!
3
+// automatically generated by admSerialization.py do not edit
4
+#ifndef ADM_Webm_muxer_CONF_H
5
+#define ADM_Webm_muxer_CONF_H
6
+typedef struct {
7
+bool forceDisplayWidth;
8
+uint32_t displayWidth;
9
+}Webm_muxer;
10
+#endif
11
avidemux_2.6.12.tar.gz/avidemux_plugins/ADM_muxers/muxerWebm/webm_muxer_desc.cpp
Added
7
1
2
+const ADM_paramList Webm_muxer_param[]={
3
+ {"forceDisplayWidth",offsetof(Webm_muxer,forceDisplayWidth),"bool",ADM_param_bool},
4
+ {"displayWidth",offsetof(Webm_muxer,displayWidth),"uint32_t",ADM_param_uint32_t},
5
+{NULL,0,NULL}
6
+};
7
avidemux_2.6.11.tar.gz/avidemux_plugins/ADM_videoFilters6/fields/ADM_vidSeparateField.cpp -> avidemux_2.6.12.tar.gz/avidemux_plugins/ADM_videoFilters6/fields/ADM_vidSeparateField.cpp
Changed
55
1
2
3
#include "ADM_default.h"
4
#include "ADM_coreVideoFilter.h"
5
+#include "ADM_vidMisc.h"
6
7
/**
8
\class AVDMVideoSeparateField
9
10
AVDMVideoSeparateField::AVDMVideoSeparateField( ADM_coreVideoFilter *in,CONFcouple *setup)
11
: ADM_coreVideoFilterCached(4,in,setup)
12
{
13
-
14
- info.height>>=1;
15
- info.frameIncrement/=2;
16
-
17
+ info.height>>=1;
18
+ info.frameIncrement/=2;
19
}
20
/**
21
\fn AVDMVideoSeparateField
22
23
ADMImage *cur,*next;
24
uint32_t frame=nextFrame++;
25
*fn=frame;
26
- cur=vidCache->getImage(frame/2);
27
- if(!cur)
28
- {
29
- ADM_warning("Seoarate field : cannot read\n");
30
- vidCache->unlockAll();
31
- return 0;
32
- }
33
-
34
+ cur=vidCache->getImage(frame/2);
35
+ if(!cur)
36
+ {
37
+ ADM_warning("Seoarate field : cannot read\n");
38
+ vidCache->unlockAll();
39
+ return 0;
40
+ }
41
+
42
for(int i=0;i<3;i++)
43
{
44
ADM_PLANE plane=(ADM_PLANE)i;
45
46
image->copyInfo(cur);
47
if(frame&1)
48
image->Pts+=info.frameIncrement;
49
- vidCache->unlockAll();
50
+ vidCache->unlockAll();
51
+ //ADM_info("Output PTS=%s\n",ADM_us2plain(image->Pts));
52
return 1;
53
}
54
// EOF
55
avidemux_2.6.11.tar.gz/avidemux_plugins/ADM_videoFilters6/vdpauFilters/ADM_vidVdpauFilter.cpp -> avidemux_2.6.12.tar.gz/avidemux_plugins/ADM_videoFilters6/vdpauFilters/ADM_vidVdpauFilter.cpp
Changed
54
1
2
// check if we have something to do
3
if(info.width==previousFilter->getInfo()->width && info.height==previousFilter->getInfo()->height)
4
return false;
5
+
6
if(VDP_STATUS_OK!=admVdpau::outputSurfaceCreate(VDP_RGBA_FORMAT_B8G8R8A8,
7
info.width,info.height,&outputSurface))
8
{
9
10
goto badInit;
11
}
12
}
13
+ {
14
+ int paddedHeight=(previousFilter->getInfo()->height+15)&~15;
15
if(VDP_STATUS_OK!=admVdpau::mixerCreate(previousFilter->getInfo()->width,
16
- previousFilter->getInfo()->height,&mixer))
17
+ paddedHeight,&mixer))
18
{
19
ADM_error("Cannot create mixer\n");
20
goto badInit;
21
- }
22
+ }
23
+ }
24
setIdentityCSC();
25
tempBuffer=new uint8_t[info.width*info.height*4];
26
scaler=new ADMColorScalerSimple( info.width,info.height, ADM_COLOR_RGB32A,ADM_COLOR_YV12);
27
28
{
29
//printf("Uploading image to vdpau\n");
30
if(false==uploadImage(next,0,nextFrame))
31
- {
32
- vidCache->unlockAll();
33
- return false;
34
- }
35
+ {
36
+ vidCache->unlockAll();
37
+ return false;
38
+ }
39
tmpSurface=input[0];
40
}
41
42
// Call mixer...
43
- if(VDP_STATUS_OK!=admVdpau::mixerRender(
44
+ if(VDP_STATUS_OK!=admVdpau::mixerRenderWithCropping(
45
mixer,
46
tmpSurface,
47
outputSurface,
48
- info.width,info.height))
49
+ info.width,info.height, // target
50
+ previousFilter->getInfo()->width,previousFilter->getInfo()->height))
51
52
{
53
ADM_warning("[Vdpau] Cannot mixerRender\n");
54
avidemux_2.6.11.tar.gz/avidemux_plugins/ADM_videoFilters6/vdpauFilters/ADM_vidVdpauFilterDeint.cpp -> avidemux_2.6.12.tar.gz/avidemux_plugins/ADM_videoFilters6/vdpauFilters/ADM_vidVdpauFilterDeint.cpp
Changed
29
1
2
scaler=NULL;
3
secondField=false;
4
nextFrame=0;
5
+ int paddedHeight=(previousFilter->getInfo()->height+15)&~15;
6
if(!admVdpau::isOperationnal())
7
{
8
ADM_warning("Vdpau not operationnal\n");
9
10
for(int i=0;i<3;i++)
11
slots[i].image=new ADMImageDefault( previousFilter->getInfo()->width,
12
previousFilter->getInfo()->height);
13
-
14
+
15
if(VDP_STATUS_OK!=admVdpau::mixerCreate(previousFilter->getInfo()->width,
16
- previousFilter->getInfo()->height,&mixer,true))
17
+ paddedHeight,&mixer,true))
18
{
19
ADM_error("Cannot create mixer\n");
20
goto badInit;
21
22
mixer,
23
in,
24
outputSurface,
25
+ getInfo()->width,getInfo()->height,
26
previousFilter->getInfo()->width,previousFilter->getInfo()->height))
27
28
{
29
avidemux_2.6.11.tar.gz/bootStrap.bash -> avidemux_2.6.12.tar.gz/bootStrap.bash
Changed
58
1
2
do_gtk=0
3
do_qt4=1
4
do_plugins=1
5
+do_asan=0
6
debug=0
7
qt_ext=Qt4
8
+export QT_SELECT=4 # default for ubuntu, harmless for others
9
export O_PARAL="-j 2"
10
fail()
11
{
12
13
export SOURCEDIR=$2
14
export EXTRA=$3
15
export DEBUG=""
16
+ export ASAN=""
17
BUILDER="Unix Makefiles"
18
if [ "x$debug" = "x1" ] ; then
19
DEBUG="-DVERBOSE=1 -DCMAKE_BUILD_TYPE=Debug "
20
BUILDDIR="${BUILDDIR}_debug"
21
BUILDER="CodeBlocks - Unix Makefiles"
22
fi
23
+ if [ "x$do_asan" = "x1" ] ; then
24
+ BUILDDIR="${BUILDDIR}_asan"
25
+ ASAN="-DASAN=True"
26
+ fi
27
FAKEROOT=" -DFAKEROOT=$FAKEROOT_DIR "
28
echo "Building $BUILDDIR from $SOURCEDIR with EXTRA=<$EXTRA>, DEBUG=<$DEBUG>"
29
rm -Rf ./$BUILDDIR
30
mkdir $BUILDDIR || fail mkdir
31
cd $BUILDDIR
32
- cmake $PKG $FAKEROOT $QT_FLAVOR -DCMAKE_EDIT_COMMAND=vim -DAVIDEMUX_SOURCE_DIR=$TOP -DCMAKE_INSTALL_PREFIX=/usr $EXTRA $DEBUG -G "$BUILDER" $SOURCEDIR || fail cmakeZ
33
+ cmake $PKG $FAKEROOT $QT_FLAVOR -DCMAKE_EDIT_COMMAND=vim -DAVIDEMUX_SOURCE_DIR=$TOP -DCMAKE_INSTALL_PREFIX=/usr $EXTRA $ASAN $DEBUG -G "$BUILDER" $SOURCEDIR || fail cmakeZ
34
make $PARAL >& /tmp/log$BUILDDIR || fail "make, result in /tmp/log$BUILDDIR"
35
if [ "x$PKG" != "x" ] ; then
36
$FAKEROOT_COMMAND make package DESTDIR=$FAKEROOT_DIR/tmp || fail package
37
38
echo " --with-plugins : Build plugins"
39
echo " --without-plugins : Dont build plugins"
40
echo " --enable-qt5 : Try to use qt5 instead of qt4"
41
+ echo " --enable-asan : Enable Clang/llvm address sanitizer"
42
echo "The end result will be in the install folder. You can then copy it to / or whatever"
43
config
44
45
46
;;
47
--enable-qt5)
48
QT_FLAVOR="-DENABLE_QT5=True"
49
+ export QT_SELECT=5
50
qt_ext=Qt5
51
;;
52
+ --enable-asan)
53
+ do_asan=1
54
+ ;;
55
--with-qt4)
56
do_qt4=1
57
;;
58
avidemux_2.6.11.tar.gz/cmake/admAsNeeded.cmake -> avidemux_2.6.12.tar.gz/cmake/admAsNeeded.cmake
Changed
18
1
2
AS_NEEDED(${name})
3
4
if (UNIX AND NOT APPLE)
5
+ if(NOT ASAN)
6
TARGET_LINK_LIBRARIES( ${name} "-Wl,-z,defs")
7
+ endif(NOT ASAN)
8
TARGET_LINK_LIBRARIES( ${name} "stdc++") # for clang
9
endif (UNIX AND NOT APPLE)
10
ENDMACRO(ADM_ADD_SHARED_LIBRARY name)
11
12
if (CMAKE_COMPILER_IS_GNUCC)
13
ADD_TARGET_CFLAGS(${name} "-fno-exceptions -fno-rtti")
14
endif (CMAKE_COMPILER_IS_GNUCC)
15
-ENDMACRO(ADM_TARGET_NO_EXCEPTION name)
16
\ No newline at end of file
17
+ENDMACRO(ADM_TARGET_NO_EXCEPTION name)
18
avidemux_2.6.11.tar.gz/cmake/admCheckFaad.cmake -> avidemux_2.6.12.tar.gz/cmake/admCheckFaad.cmake
Changed
14
1
2
FIND_HEADER_AND_LIB(FAAD faad.h faad)
3
4
IF (FAAD_FOUND)
5
- ADM_CHECK_FUNCTION_EXISTS(faacDecInit "${FAAD_LIBRARY_DIR}" FAACDEC_FUNCTION_FOUND)
6
+ ADM_CHECK_FUNCTION_EXISTS(faacDecInit "${FAAD_LIBRARY_DIR}" FAACDEC_FUNCTION_FOUND "" -I"${FAAD_INCLUDE_DIR}")
7
8
IF (NOT FAACDEC_FUNCTION_FOUND)
9
- ADM_CHECK_FUNCTION_EXISTS(NeAACDecInit "${FAAD_LIBRARY_DIR}" NEAACDEC_FUNCTION_FOUND)
10
+ ADM_CHECK_FUNCTION_EXISTS(NeAACDecInit "${FAAD_LIBRARY_DIR}" NEAACDEC_FUNCTION_FOUND "" -I"${FAAD_INCLUDE_DIR}")
11
12
IF (NOT NEAACDEC_FUNCTION_FOUND)
13
SET(FAAD_FOUND 0)
14
avidemux_2.6.11.tar.gz/cmake/admCheckMiscLibs.cmake -> avidemux_2.6.12.tar.gz/cmake/admCheckMiscLibs.cmake
Changed
36
1
2
MESSAGE(STATUS "Checking for execinfo")
3
MESSAGE(STATUS "*********************")
4
5
-FIND_HEADER_AND_LIB(execinfo execinfo.h execinfo backtrace_symbols)
6
-PRINT_LIBRARY_INFO("execinfo" EXECINFO_FOUND "${LIBEXECINFO_INCLUDE_DIR}" "${LIBEXECINFO_LIBRARY_DIR}")
7
+FIND_HEADER_AND_LIB(EXECINFO execinfo.h c backtrace_symbols)
8
+PRINT_LIBRARY_INFO("execinfo" EXECINFO_FOUND "${EXECINFO_INCLUDE_DIR}" "${EXECINFO_LIBRARY_DIR}")
9
10
-IF (LIBEXECINFO_INCLUDE_DIR)
11
+IF (EXECINFO_INCLUDE_DIR)
12
# Try linking without -lexecinfo
13
- ADM_COMPILE(execinfo.cpp "" ${LIBEXECINFO_INCLUDE_DIR} "" WITHOUT_LIBEXECINFO outputWithoutLibexecinfo)
14
+ ADM_COMPILE(execinfo.cpp "" ${EXECINFO_INCLUDE_DIR} "" WITHOUT_LIBEXECINFO outputWithoutLibexecinfo)
15
16
IF (WITHOUT_LIBEXECINFO)
17
- SET(LIBEXECINFO_LIBRARY_DIR "")
18
+ SET(EXECINFO_LIBRARY_DIR "")
19
SET(HAVE_EXECINFO 1)
20
21
MESSAGE(STATUS "execinfo not required")
22
ELSE (WITHOUT_LIBEXECINFO)
23
- ADM_COMPILE(execinfo.cpp "" ${LIBEXECINFO_INCLUDE_DIR} ${LIBEXECINFO_LIBRARY_DIR} WITH_LIBEXECINFO outputWithLibexecinfo)
24
+ ADM_COMPILE(execinfo.cpp "" ${EXECINFO_INCLUDE_DIR} ${EXECINFO_LIBRARY_DIR} WITH_LIBEXECINFO outputWithLibexecinfo)
25
26
IF (WITH_LIBEXECINFO)
27
SET(HAVE_EXECINFO 1)
28
29
MESSAGE(STATUS "Does not work, with ${outputWithLibexecinfo}")
30
ENDIF (WITH_LIBEXECINFO)
31
ENDIF (WITHOUT_LIBEXECINFO)
32
-ENDIF (LIBEXECINFO_INCLUDE_DIR)
33
+ENDIF (EXECINFO_INCLUDE_DIR)
34
35
MESSAGE("")
36
avidemux_2.6.11.tar.gz/cmake/admFFmpegBuild.cmake -> avidemux_2.6.12.tar.gz/cmake/admFFmpegBuild.cmake
Changed
30
1
2
3
option(FF_INHERIT_BUILD_ENV "" ON)
4
5
-set(FFMPEG_VERSION "2.7.2")
6
+set(FFMPEG_VERSION "2.7.6")
7
set(FFMPEG_ROOT_DIR "${AVIDEMUX_TOP_SOURCE_DIR}/avidemux_core/ffmpeg_package")
8
set(FFMPEG_PATCH_DIR "${FFMPEG_ROOT_DIR}/patches/")
9
set(FFMPEG_SOURCE_ARCHIVE "ffmpeg-${FFMPEG_VERSION}.tar.bz2")
10
11
svq3 theora tscc mp2 mp3 mp2_float mp3_float
12
vc1 vp3 vp6 vp6a vp6f vp8 vp9 wmapro wmav2 wmv1 wmv2 wmv3 cscd)
13
set(FFMPEG_ENCODERS ac3 ac3_float dvvideo ffv1 ffvhuff flv h263 huffyuv mjpeg mp2 mpeg1video mpeg2video mpeg4 snow aac dca)
14
-set(FFMPEG_MUXERS flv matroska mpeg1vcd mpeg2dvd mpeg2svcd mpegts mov mp4 psp)
15
+set(FFMPEG_MUXERS flv matroska mpeg1vcd mpeg2dvd mpeg2svcd mpegts mov mp4 psp webm)
16
set(FFMPEG_PARSERS ac3 h263 h264 hevc mpeg4video)
17
set(FFMPEG_PROTOCOLS file)
18
set(FFMPEG_BSFS h264_mp4toannexb aac_adtstoasc)
19
20
xadd(--ld "${CMAKE_C_COMPILER}")
21
xadd(--ar "${CMAKE_AR}")
22
# nm should be ok if we do not cross compile
23
-
24
+ if(CMAKE_LD_FLAGS)
25
+ xadd(--extra-ldflags ${CMAKE_LD_FLAGS})
26
+ endif(CMAKE_LD_FLAGS)
27
if (CMAKE_C_FLAGS)
28
xadd(--extra-cflags ${CMAKE_C_FLAGS})
29
endif (CMAKE_C_FLAGS)
30
avidemux_2.6.11.tar.gz/cmake/admMainChecks.cmake -> avidemux_2.6.12.tar.gz/cmake/admMainChecks.cmake
Changed
20
1
2
########################################
3
INCLUDE(admDetermineSystem)
4
5
+# Address sanitizer only works with llvm/clang
6
+IF(${CMAKE_CXX_COMPILER} MATCHES ".*[cC]lang.*")
7
+ IF (ASAN)
8
+ MESSAGE(STATUS "Address Sanitizer activated")
9
+ SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fsanitize=address -fno-omit-frame-pointer")
10
+ SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fsanitize=address -fno-omit-frame-pointer")
11
+ SET(CMAKE_LD_FLAGS "${CMAKE_LD_FLAGS} -fsanitize=address ")
12
+ ELSE (ASAN)
13
+ MESSAGE(STATUS "Address Sanitizer not activated")
14
+ ENDIF (ASAN)
15
+ENDIF(${CMAKE_CXX_COMPILER} MATCHES ".*[cC]lang.*")
16
+
17
IF (ADM_CPU_ALTIVEC)
18
SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${ADM_ALTIVEC_FLAGS}")
19
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${ADM_ALTIVEC_FLAGS}")
20
avidemux_2.6.11.tar.gz/cmake/avidemuxVersion.cmake -> avidemux_2.6.12.tar.gz/cmake/avidemuxVersion.cmake
Changed
10
1
2
include(admTimeStamp)
3
SET(CPACK_PACKAGE_VERSION_MAJOR "2")
4
SET(CPACK_PACKAGE_VERSION_MINOR "6")
5
-SET(CPACK_PACKAGE_VERSION_P "11")
6
+SET(CPACK_PACKAGE_VERSION_P "12")
7
SET(CPACK_PACKAGE_VERSION_PATCH "${CPACK_PACKAGE_VERSION_P}")
8
SET(AVIDEMUX_VERSION "${CPACK_PACKAGE_VERSION_MAJOR}.${CPACK_PACKAGE_VERSION_MINOR}.${CPACK_PACKAGE_VERSION_PATCH}")
9
IF(NOT RELEASE)
10
Refresh
No build results available
Refresh
No rpmlint results available
Login required, please
login
or
signup
in order to comment
Request History
enzokiel created request about 9 years ago
- Update to version 2.6.12
enzokiel accepted request about 9 years ago
OK.