rpms/catalyst-kmod/F-19 catalyst-kmod.spec, 1.18, 1.19 fglrx_intel_iommu.patch, 1.1, NONE
by Leigh Scott
Author: leigh123linux
Update of /cvs/nonfree/rpms/catalyst-kmod/F-19
In directory old02.ovh.rpmfusion.lan:/tmp/cvs-serv29812
Modified Files:
catalyst-kmod.spec
Removed Files:
fglrx_intel_iommu.patch
Log Message:
* Thu May 23 2013 Leigh Scott <leigh123linux(a)googlemail.com> - 13.4-3
- drop intel_iommu patch
Index: catalyst-kmod.spec
===================================================================
RCS file: /cvs/nonfree/rpms/catalyst-kmod/F-19/catalyst-kmod.spec,v
retrieving revision 1.18
retrieving revision 1.19
diff -u -r1.18 -r1.19
--- catalyst-kmod.spec 22 May 2013 18:28:19 -0000 1.18
+++ catalyst-kmod.spec 23 May 2013 08:34:47 -0000 1.19
@@ -13,7 +13,7 @@
Name: catalyst-kmod
Version: 13.4
-Release: 2%{?dist}
+Release: 3%{?dist}
# Taken over by kmodtool
Summary: AMD display driver kernel module
Group: System Environment/Kernel
@@ -23,7 +23,6 @@
Source11: catalyst-kmodtool-excludekernel-filterfile
Patch0: compat_alloc-Makefile.patch
Patch1: fglrx_fixing_ttys.patch
-Patch2: fglrx_intel_iommu.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
# needed for plague to make sure it builds for i686
@@ -70,7 +69,6 @@
pushd fglrxpkg
%patch0 -p0 -b.compat_alloc
%patch1 -p0
-%patch2 -p0
popd
for kernel_version in %{?kernel_versions} ; do
@@ -101,6 +99,9 @@
%changelog
+* Thu May 23 2013 Leigh Scott <leigh123linux(a)googlemail.com> - 13.4-3
+- drop intel_iommu patch
+
* Wed May 22 2013 Leigh Scott <leigh123linux(a)googlemail.com> - 13.4-2
- Add patch to fix tty issue
- Add patch to fix intel_iommu
--- fglrx_intel_iommu.patch DELETED ---
11 years, 6 months
rpms/mixxx/F-19 mixxx-1.11.0-20130517bzr.patch, NONE, 1.1 .cvsignore, 1.10, 1.11 mixxx.spec, 1.14, 1.15 sources, 1.10, 1.11 mixxx-1.10.0-gcc47.patch, 1.1, NONE mixxx-1.9.2-norpath.patch, 1.1, NONE
by Steven Boswell
Author: ulatekh
Update of /cvs/free/rpms/mixxx/F-19
In directory old02.ovh.rpmfusion.lan:/tmp/cvs-serv28589/F-19
Modified Files:
.cvsignore mixxx.spec sources
Added Files:
mixxx-1.11.0-20130517bzr.patch
Removed Files:
mixxx-1.10.0-gcc47.patch mixxx-1.9.2-norpath.patch
Log Message:
Updated to 1.11.0
mixxx-1.11.0-20130517bzr.patch:
plugins/soundsourcem4a/SConscript | 3
res/translations/mixxx.ts | 117 ++++++++++++++---------------
res/translations/mixxx/mixxx.pot | 18 ++--
src/dlgprefrecord.cpp | 6 +
src/library/autodjfeature.cpp | 5 -
src/library/baseexternallibraryfeature.cpp | 2
src/library/baseplaylistfeature.cpp | 4
src/library/basesqltablemodel.cpp | 2
src/library/dao/playlistdao.cpp | 65 ++++++++++++----
src/library/dao/playlistdao.h | 6 -
src/library/legacylibraryimporter.cpp | 3
src/library/playlistfeature.cpp | 6 -
src/library/playlisttablemodel.cpp | 4
src/library/setlogfeature.cpp | 10 +-
src/recording/enginerecord.cpp | 20 +++-
src/widget/wtracktableview.cpp | 2
vamp-plugins/SConscript | 2
17 files changed, 165 insertions(+), 110 deletions(-)
--- NEW FILE mixxx-1.11.0-20130517bzr.patch ---
--- mixxx-1.11.0/plugins/soundsourcem4a/SConscript 2013-05-08 16:20:26.000000000 -0700
+++ mixxx-upstream/plugins/soundsourcem4a/SConscript 2013-05-12 15:26:10.683778000 -0700
@@ -15,7 +15,6 @@
"soundsourcem4a.cpp", # MP4/M4A Support through FAAD/libmp4v2
]
-
#Tell SCons to build the SoundSourceM4A plugin
#=========================
if int(build.flags['faad']):
@@ -24,7 +23,7 @@
conf = Configure(env)
have_mp4v2_h = conf.CheckHeader('mp4v2/mp4v2.h')
- have_mp4 = (have_mp4v2_h and conf.CheckLib(['mp4v2', 'libmp4v2'])) or \
+ have_mp4 = conf.CheckLib(['mp4v2', 'libmp4v2']) or \
conf.CheckLib('mp4')
have_faad = conf.CheckLib(['faad', 'libfaad'])
--- mixxx-1.11.0/res/translations/mixxx/mixxx.pot 2013-05-08 16:20:26.000000000 -0700
+++ mixxx-upstream/res/translations/mixxx/mixxx.pot 2013-05-10 16:13:51.948412000 -0700
@@ -2,7 +2,7 @@
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-04-14 06:50+0200\n"
+"POT-Creation-Date: 2013-05-10 08:29+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL(a)li.org>\n"
@@ -3204,28 +3204,28 @@
msgstr ""
#: MidiController#1
-msgid "MixxxControl not found"
+msgid "MixxxControl(s) not found"
msgstr ""
#: MidiController#2
-msgid "The MixxxControl '%1, %2' specified in the loaded mapping is invalid."
+msgid ""
+"One or more MixxxControls specified in the outputs section of the loaded "
+"preset were invalid."
msgstr ""
#: MidiController#3
-msgid ""
-"The MIDI output message 0x%1 0x%2 will not be bound.\n"
-"(Click Show Details for hints.)"
+msgid "Some LEDs or other feedback may not work correctly."
msgstr ""
#: MidiController#4
-msgid "* Check to see that the MixxxControl name is spelled correctly in the "
+msgid "* Check to see that the MixxxControl names are spelled correctly in the "
"mapping file (.xml)\n"
msgstr ""
#: MidiController#5
msgid ""
-"* Make sure the MixxxControl you're trying to use actually exists. Visit "
-"this wiki page for a complete list:"
+"* Make sure the MixxxControls in question actually exist. Visit this wiki "
+"page for a complete list: "
msgstr ""
#: MixxxApp#1
--- mixxx-1.11.0/res/translations/mixxx.ts 2013-05-08 16:20:26.000000000 -0700
+++ mixxx-upstream/res/translations/mixxx.ts 2013-05-10 16:13:51.948412000 -0700
@@ -94,7 +94,7 @@
</message>
<message>
<location filename="../../src/library/baseplaylistfeature.cpp" line="57"/>
- <location filename="../../src/library/baseplaylistfeature.cpp" line="332"/>
+ <location filename="../../src/library/baseplaylistfeature.cpp" line="330"/>
<source>Export Playlist</source>
<translation type="unfinished"></translation>
</message>
@@ -161,7 +161,7 @@
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/library/baseplaylistfeature.cpp" line="334"/>
+ <location filename="../../src/library/baseplaylistfeature.cpp" line="332"/>
<source>M3U Playlist (*.m3u);;M3U8 Playlist (*.m3u8);;PLS Playlist (*.pls);;Text CSV (*.csv);;Readable Text (*.txt)</source>
<translation type="unfinished"></translation>
</message>
@@ -169,107 +169,107 @@
<context>
<name>BaseSqlTableModel</name>
<message>
- <location filename="../../src/library/basesqltablemodel.cpp" line="47"/>
+ <location filename="../../src/library/basesqltablemodel.cpp" line="48"/>
<source>Played</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/library/basesqltablemodel.cpp" line="49"/>
+ <location filename="../../src/library/basesqltablemodel.cpp" line="50"/>
<source>Artist</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/library/basesqltablemodel.cpp" line="51"/>
+ <location filename="../../src/library/basesqltablemodel.cpp" line="52"/>
<source>Title</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/library/basesqltablemodel.cpp" line="53"/>
+ <location filename="../../src/library/basesqltablemodel.cpp" line="54"/>
<source>Album</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/library/basesqltablemodel.cpp" line="55"/>
+ <location filename="../../src/library/basesqltablemodel.cpp" line="56"/>
<source>Genre</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/library/basesqltablemodel.cpp" line="57"/>
+ <location filename="../../src/library/basesqltablemodel.cpp" line="58"/>
<source>Composer</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/library/basesqltablemodel.cpp" line="59"/>
+ <location filename="../../src/library/basesqltablemodel.cpp" line="60"/>
<source>Year</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/library/basesqltablemodel.cpp" line="61"/>
+ <location filename="../../src/library/basesqltablemodel.cpp" line="62"/>
<source>Type</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/library/basesqltablemodel.cpp" line="63"/>
+ <location filename="../../src/library/basesqltablemodel.cpp" line="64"/>
<source>Location</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/library/basesqltablemodel.cpp" line="65"/>
+ <location filename="../../src/library/basesqltablemodel.cpp" line="66"/>
<source>Comment</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/library/basesqltablemodel.cpp" line="67"/>
+ <location filename="../../src/library/basesqltablemodel.cpp" line="68"/>
<source>Duration</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/library/basesqltablemodel.cpp" line="69"/>
+ <location filename="../../src/library/basesqltablemodel.cpp" line="70"/>
<source>Rating</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/library/basesqltablemodel.cpp" line="71"/>
+ <location filename="../../src/library/basesqltablemodel.cpp" line="72"/>
<source>Bitrate</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/library/basesqltablemodel.cpp" line="73"/>
+ <location filename="../../src/library/basesqltablemodel.cpp" line="74"/>
<source>BPM</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/library/basesqltablemodel.cpp" line="75"/>
+ <location filename="../../src/library/basesqltablemodel.cpp" line="76"/>
<source>Track #</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/library/basesqltablemodel.cpp" line="77"/>
+ <location filename="../../src/library/basesqltablemodel.cpp" line="78"/>
<source>Date Added</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/library/basesqltablemodel.cpp" line="79"/>
+ <location filename="../../src/library/basesqltablemodel.cpp" line="80"/>
<source>#</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/library/basesqltablemodel.cpp" line="81"/>
+ <location filename="../../src/library/basesqltablemodel.cpp" line="82"/>
<source>Timestamp</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/library/basesqltablemodel.cpp" line="83"/>
+ <location filename="../../src/library/basesqltablemodel.cpp" line="84"/>
<source>Key</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/library/basesqltablemodel.cpp" line="85"/>
+ <location filename="../../src/library/basesqltablemodel.cpp" line="86"/>
<source>BPM Lock</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/library/basesqltablemodel.cpp" line="88"/>
+ <location filename="../../src/library/basesqltablemodel.cpp" line="89"/>
<source>Preview</source>
<translation type="unfinished"></translation>
</message>
@@ -444,27 +444,27 @@
<context>
<name>ControllerEngine</name>
<message>
- <location filename="../../src/controllers/controllerengine.cpp" line="535"/>
+ <location filename="../../src/controllers/controllerengine.cpp" line="529"/>
<source>Uncaught exception at line %1 in file %2: %3</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/controllers/controllerengine.cpp" line="541"/>
+ <location filename="../../src/controllers/controllerengine.cpp" line="535"/>
<source>Uncaught exception at line %1 in passed code: %2</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/controllers/controllerengine.cpp" line="561"/>
+ <location filename="../../src/controllers/controllerengine.cpp" line="555"/>
<source>Controller script error</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/controllers/controllerengine.cpp" line="562"/>
+ <location filename="../../src/controllers/controllerengine.cpp" line="556"/>
<source>A control you just used is not working properly.</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/controllers/controllerengine.cpp" line="563"/>
+ <location filename="../../src/controllers/controllerengine.cpp" line="557"/>
<source><html>(The script code needs to be fixed.)<br>For now, you can:<ul><li>Ignore this error for this session but you may experience erratic behavior</li><li>Try to recover by resetting your controller</li></ul></html></source>
<translation type="unfinished"></translation>
</message>
@@ -568,7 +568,7 @@
</message>
<message>
<location filename="../../src/library/cratefeature.cpp" line="85"/>
- <location filename="../../src/library/cratefeature.cpp" line="562"/>
+ <location filename="../../src/library/cratefeature.cpp" line="559"/>
<source>Crates</source>
<translation type="unfinished"></translation>
</message>
@@ -579,7 +579,7 @@
</message>
<message>
<location filename="../../src/library/cratefeature.cpp" line="48"/>
- <location filename="../../src/library/cratefeature.cpp" line="493"/>
+ <location filename="../../src/library/cratefeature.cpp" line="490"/>
<source>Export Crate</source>
<translation type="unfinished"></translation>
</message>
@@ -630,27 +630,27 @@
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/library/cratefeature.cpp" line="495"/>
+ <location filename="../../src/library/cratefeature.cpp" line="492"/>
<source>M3U Playlist (*.m3u);;M3U8 Playlist (*.m3u8);;PLS Playlist (*.pls);;Text CSV (*.csv);;Readable Text (*.txt)</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/library/cratefeature.cpp" line="563"/>
+ <location filename="../../src/library/cratefeature.cpp" line="560"/>
<source>Crates are a great way to help organize the music you want to DJ with.</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/library/cratefeature.cpp" line="564"/>
+ <location filename="../../src/library/cratefeature.cpp" line="561"/>
<source>Make a crate for your next gig, for your favorite electrohouse tracks, or for your most requested songs.</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/library/cratefeature.cpp" line="565"/>
+ <location filename="../../src/library/cratefeature.cpp" line="562"/>
<source>Crates let you organize your music however you'd like!</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/library/cratefeature.cpp" line="568"/>
+ <location filename="../../src/library/cratefeature.cpp" line="565"/>
<source>Create new crate</source>
<translation type="unfinished"></translation>
</message>
@@ -3880,30 +3880,29 @@
<context>
<name>MidiController</name>
<message>
- <location filename="../../src/controllers/midi/midicontroller.cpp" line="116"/>
- <source>MixxxControl not found</source>
+ <location filename="../../src/controllers/midi/midicontroller.cpp" line="139"/>
+ <source>MixxxControl(s) not found</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/controllers/midi/midicontroller.cpp" line="117"/>
- <source>The MixxxControl '%1, %2' specified in the loaded mapping is invalid.</source>
+ <location filename="../../src/controllers/midi/midicontroller.cpp" line="140"/>
+ <source>One or more MixxxControls specified in the outputs section of the loaded preset were invalid.</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/controllers/midi/midicontroller.cpp" line="120"/>
- <source>The MIDI output message 0x%1 0x%2 will not be bound.
-(Click Show Details for hints.)</source>
+ <location filename="../../src/controllers/midi/midicontroller.cpp" line="142"/>
+ <source>Some LEDs or other feedback may not work correctly.</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/controllers/midi/midicontroller.cpp" line="124"/>
- <source>* Check to see that the MixxxControl name is spelled correctly in the mapping file (.xml)
+ <location filename="../../src/controllers/midi/midicontroller.cpp" line="143"/>
+ <source>* Check to see that the MixxxControl names are spelled correctly in the mapping file (.xml)
</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/controllers/midi/midicontroller.cpp" line="127"/>
- <source>* Make sure the MixxxControl you're trying to use actually exists. Visit this wiki page for a complete list:</source>
+ <location filename="../../src/controllers/midi/midicontroller.cpp" line="146"/>
+ <source>* Make sure the MixxxControls in question actually exist. Visit this wiki page for a complete list: </source>
<translation type="unfinished"></translation>
</message>
</context>
@@ -4298,7 +4297,7 @@
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/mixxx.cpp" line="1809"/>
+ <location filename="../../src/mixxx.cpp" line="1812"/>
<source>A sampler is currently playing. Exit Mixxx?</source>
<translation type="unfinished"></translation>
</message>
@@ -4410,44 +4409,44 @@
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/mixxx.cpp" line="1621"/>
+ <location filename="../../src/mixxx.cpp" line="1624"/>
<source>Error in skin file</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/mixxx.cpp" line="1622"/>
+ <location filename="../../src/mixxx.cpp" line="1625"/>
<source>The selected skin cannot be loaded.</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/mixxx.cpp" line="1757"/>
+ <location filename="../../src/mixxx.cpp" line="1760"/>
<source>OpenGL Direct Rendering</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/mixxx.cpp" line="1758"/>
+ <location filename="../../src/mixxx.cpp" line="1761"/>
<source>Direct rendering is not enabled on your machine.<br><br>This means that the waveform displays will be very<br><b>slow and may tax your CPU heavily</b>. Either update your<br>configuration to enable direct rendering, or disable<br>the waveform displays in the Mixxx preferences by selecting<br>"Empty" as the waveform display in the 'Interface' section.<br><br>NOTE: If you use NVIDIA hardware,<br>direct rendering may not be present, but you should<br>not experience degraded performance.</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/mixxx.cpp" line="1800"/>
- <location filename="../../src/mixxx.cpp" line="1808"/>
- <location filename="../../src/mixxx.cpp" line="1817"/>
+ <location filename="../../src/mixxx.cpp" line="1803"/>
+ <location filename="../../src/mixxx.cpp" line="1811"/>
+ <location filename="../../src/mixxx.cpp" line="1820"/>
<source>Confirm Exit</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/mixxx.cpp" line="1801"/>
+ <location filename="../../src/mixxx.cpp" line="1804"/>
<source>A deck is currently playing. Exit Mixxx?</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/mixxx.cpp" line="1818"/>
+ <location filename="../../src/mixxx.cpp" line="1821"/>
<source>The preferences window is still open.</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/mixxx.cpp" line="1819"/>
+ <location filename="../../src/mixxx.cpp" line="1822"/>
<source>Discard any changes and exit Mixxx?</source>
<translation type="unfinished"></translation>
</message>
@@ -6022,12 +6021,12 @@
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/widget/wtracktableview.cpp" line="485"/>
+ <location filename="../../src/widget/wtracktableview.cpp" line="487"/>
<source>Load to Deck %1</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/widget/wtracktableview.cpp" line="503"/>
+ <location filename="../../src/widget/wtracktableview.cpp" line="506"/>
<source>Sampler %1</source>
<translation type="unfinished"></translation>
</message>
--- mixxx-1.11.0/src/dlgprefrecord.cpp 2013-05-08 16:20:26.000000000 -0700
+++ mixxx-upstream/src/dlgprefrecord.cpp 2013-05-13 08:15:55.212095000 -0700
@@ -98,9 +98,11 @@
else if (format == ENCODING_MP3)
radioMp3->setChecked(true);
#endif
-#ifdef SF_FORMAT_FLAC
else if (format == ENCODING_AIFF)
radioAiff->setChecked(true);
+#ifdef SF_FORMAT_FLAC
+ else if (format == ENCODING_FLAC)
+ radioFlac->setChecked(true);
#endif
else //Invalid, so set default and save
{
@@ -109,6 +111,8 @@
config->set(ConfigKey(RECORDING_PREF_KEY, "Encoding"), ConfigValue(ENCODING_WAVE));
}
+ loadMetaData();
+
//Connections
connect(SliderQuality, SIGNAL(valueChanged(int)), this, SLOT(slotSliderQuality()));
connect(SliderQuality, SIGNAL(sliderMoved(int)), this, SLOT(slotSliderQuality()));
--- mixxx-1.11.0/src/library/autodjfeature.cpp 2013-05-08 16:20:26.000000000 -0700
+++ mixxx-upstream/src/library/autodjfeature.cpp 2013-05-12 15:26:10.683778000 -0700
@@ -88,8 +88,9 @@
trackIds.removeAt(trackId--);
}
}
- m_playlistDao.appendTracksToPlaylist(trackIds, playlistId);
- return true;
+
+ // Return whether the tracks were appended.
+ return m_playlistDao.appendTracksToPlaylist(trackIds, playlistId);
}
bool AutoDJFeature::dragMoveAccept(QUrl url) {
--- mixxx-1.11.0/src/library/baseexternallibraryfeature.cpp 2013-05-08 16:20:26.000000000 -0700
+++ mixxx-upstream/src/library/baseexternallibraryfeature.cpp 2013-05-12 15:26:10.683778000 -0700
@@ -93,6 +93,7 @@
// Start at position 2 because position 1 was already loaded to the deck
playlistDao.insertTrackIntoPlaylist(track->getId(), autoDJId, i+2);
} else {
+ // TODO(XXX): Care whether the append succeeded.
playlistDao.appendTrackToPlaylist(track->getId(), autoDJId);
}
}
@@ -142,6 +143,7 @@
if (index.isValid()) {
qDebug() << pPlaylistModelToAdd->getTrackLocation(index);
TrackPointer track = pPlaylistModelToAdd->getTrack(index);
+ // TODO(XXX): Care whether the append succeeded.
playlistDao.appendTrackToPlaylist(track->getId(), playlistId);
}
}
--- mixxx-1.11.0/src/library/baseplaylistfeature.cpp 2013-05-08 16:20:26.000000000 -0700
+++ mixxx-upstream/src/library/baseplaylistfeature.cpp 2013-05-12 15:26:10.683778000 -0700
@@ -188,9 +188,9 @@
} while (!validNameGiven);
int newPlaylistId = m_playlistDao.createPlaylist(name);
- m_playlistDao.copyPlaylistTracks(oldPlaylistId, newPlaylistId);
- if (newPlaylistId != -1) {
+ if (newPlaylistId != -1 &&
+ m_playlistDao.copyPlaylistTracks(oldPlaylistId, newPlaylistId)) {
emit(showTrackModel(m_pPlaylistTableModel));
}
}
--- mixxx-1.11.0/src/library/basesqltablemodel.cpp 2013-05-08 16:20:26.000000000 -0700
+++ mixxx-upstream/src/library/basesqltablemodel.cpp 2013-05-13 08:15:55.212095000 -0700
@@ -471,7 +471,7 @@
} else if (column == fieldIndex(PLAYLISTTRACKSTABLE_DATETIMEADDED)) {
QDateTime gmtDate = value.toDateTime();
gmtDate.setTimeSpec(Qt::UTC);
- value = gmtDate.toLocalTime().time();
+ value = gmtDate.toLocalTime();
} else if (column == fieldIndex(LIBRARYTABLE_BPM_LOCK)) {
value = value.toBool();
}
--- mixxx-1.11.0/src/library/dao/playlistdao.cpp 2013-05-08 16:20:26.000000000 -0700
+++ mixxx-upstream/src/library/dao/playlistdao.cpp 2013-05-12 15:26:10.683778000 -0700
@@ -177,7 +177,7 @@
return false;
}
-void PlaylistDAO::appendTracksToPlaylist(QList<int> trackIds, int playlistId) {
+bool PlaylistDAO::appendTracksToPlaylist(QList<int> trackIds, int playlistId) {
// qDebug() << "PlaylistDAO::appendTracksToPlaylist"
// << QThread::currentThread() << m_database.connectionName();
@@ -203,6 +203,7 @@
query.bindValue(":position", insertPosition++);
if (!query.exec()) {
LOG_FAILED_QUERY(query);
+ return false;
}
}
@@ -215,12 +216,13 @@
emit(trackAdded(playlistId, trackId, insertPosition++));
}
emit(changed(playlistId));
+ return true;
}
-void PlaylistDAO::appendTrackToPlaylist(int trackId, int playlistId) {
+bool PlaylistDAO::appendTrackToPlaylist(int trackId, int playlistId) {
QList<int> tracks;
tracks.append(trackId);
- appendTracksToPlaylist(tracks, playlistId);
+ return appendTracksToPlaylist(tracks, playlistId);
}
/** Find out how many playlists exist. */
@@ -523,6 +525,7 @@
if (bTop) {
insertTracksIntoPlaylist(ids, autoDJId, 2);
} else {
+ // TODO(XXX): Care whether the append succeeded.
appendTracksToPlaylist(ids, autoDJId);
}
}
@@ -549,23 +552,59 @@
return previousPlaylistId;
}
-void PlaylistDAO::copyPlaylistTracks(int sourcePlaylistID, int targetPlaylistId) {
- // Query Tracks from the source Playlist
- QSqlQuery query(m_database);
- query.prepare("SELECT track_id FROM PlaylistTracks "
- "WHERE playlist_id = :plid");
- query.bindValue(":plid", sourcePlaylistID);
+bool PlaylistDAO::copyPlaylistTracks(int sourcePlaylistID, int targetPlaylistID) {
+ // Start the transaction
+ ScopedTransaction transaction(m_database);
+
+ // Copy the new tracks after the last track in the target playlist.
+ int positionOffset = getMaxPosition(targetPlaylistID);
+
+ // Copy the tracks from one playlist to another, adjusting the position of
+ // each copied track, and preserving the date/time added.
+ // INSERT INTO PlaylistTracks (playlist_id, track_id, position, pl_datetime_added) SELECT :target_plid, track_id, position + :position_offset, pl_datetime_added FROM PlaylistTracks WHERE playlist_id = :source_plid;
+ QSqlQuery query(m_database);
+ query.prepare(QString("INSERT INTO " PLAYLIST_TRACKS_TABLE
+ " (%1, %2, %3, %4) SELECT :target_plid, %2, "
+ "%3 + :position_offset, %4 FROM " PLAYLIST_TRACKS_TABLE
+ " WHERE %1 = :source_plid")
+ .arg(PLAYLISTTRACKSTABLE_PLAYLISTID) // %1
+ .arg(PLAYLISTTRACKSTABLE_TRACKID) // %2
+ .arg(PLAYLISTTRACKSTABLE_POSITION) // %3
+ .arg(PLAYLISTTRACKSTABLE_DATETIMEADDED)); // %4
+ query.bindValue(":position_offset", positionOffset);
+ query.bindValue(":source_plid", sourcePlaylistID);
+ query.bindValue(":target_plid", targetPlaylistID);
if (!query.exec()) {
LOG_FAILED_QUERY(query);
- return;
+ return false;
}
- QList<int> trackIds;
+ // Query each added track and its new position.
+ // SELECT track_id, position FROM PlaylistTracks WHERE playlist_id = :target_plid AND position > :position_offset;
+ query.prepare(QString("SELECT %2, %3 FROM " PLAYLIST_TRACKS_TABLE
+ " WHERE %1 = :target_plid AND %3 > :position_offset")
+ .arg(PLAYLISTTRACKSTABLE_PLAYLISTID) // %1
+ .arg(PLAYLISTTRACKSTABLE_TRACKID) // %2
+ .arg(PLAYLISTTRACKSTABLE_POSITION)); // %3
+ query.bindValue(":target_plid", targetPlaylistID);
+ query.bindValue(":position_offset", positionOffset);
+ if (!query.exec()) {
+ LOG_FAILED_QUERY(query);
+ return false;
+ }
+
+ // Commit the transaction
+ transaction.commit();
+
+ // Let subscribers know about each added track.
while (query.next()) {
- trackIds.append(query.value(0).toInt());
+ int copiedTrackId = query.value(0).toInt();
+ int copiedPosition = query.value(1).toInt();
+ emit(trackAdded(targetPlaylistID, copiedTrackId, copiedPosition));
}
- appendTracksToPlaylist(trackIds, targetPlaylistId);
+ emit(changed(targetPlaylistID));
+ return true;
}
int PlaylistDAO::getMaxPosition(int playlistId) {
--- mixxx-1.11.0/src/library/dao/playlistdao.h 2013-05-08 16:20:26.000000000 -0700
+++ mixxx-upstream/src/library/dao/playlistdao.h 2013-05-12 15:26:10.683778000 -0700
@@ -44,9 +44,9 @@
// Find out the state of a playlist lock
bool isPlaylistLocked(int playlistId);
// Append a list of tracks to a playlist
- void appendTracksToPlaylist(QList<int> trackIds, int playlistId);
+ bool appendTracksToPlaylist(QList<int> trackIds, int playlistId);
// Append a track to a playlist
- void appendTrackToPlaylist(int trackId, int playlistId);
+ bool appendTrackToPlaylist(int trackId, int playlistId);
// Find out how many playlists exist.
unsigned int playlistCount();
// Find out the name of the playlist at the given Id
@@ -79,7 +79,7 @@
// hidden. Returns -1 if no such playlist exists.
int getPreviousPlaylist(int currentPlaylistId, HiddenType hidden);
// Append all the tracks in the source playlist to the target playlist.
- void copyPlaylistTracks(int sourcePlaylistID, int targetPlaylistId);
+ bool copyPlaylistTracks(int sourcePlaylistID, int targetPlaylistID);
// Returns the number of tracks in the given playlist.
int tracksInPlaylist(int playlistId);
signals:
--- mixxx-1.11.0/src/library/legacylibraryimporter.cpp 2013-05-08 16:20:26.000000000 -0700
+++ mixxx-upstream/src/library/legacylibraryimporter.cpp 2013-05-12 15:26:10.683778000 -0700
@@ -171,7 +171,8 @@
int dbTrackId = m_trackDao.getTrackId(trackLocation);
if (dbTrackId >= 0) {
- //Add it to the database's playlist.
+ // Add it to the database's playlist.
+ // TODO(XXX): Care if the append succeeded.
m_playlistDao.appendTrackToPlaylist(dbTrackId, playlistId);
}
}
--- mixxx-1.11.0/src/library/playlistfeature.cpp 2013-05-08 16:20:26.000000000 -0700
+++ mixxx-upstream/src/library/playlistfeature.cpp 2013-05-12 15:26:10.683778000 -0700
@@ -117,10 +117,8 @@
}
}
- // appendTracksToPlaylist doesn't return whether it succeeded, so assume it
- // did.
- m_playlistDao.appendTracksToPlaylist(trackIds, playlistId);
- return true;
+ // Return whether appendTracksToPlaylist succeeded.
+ return m_playlistDao.appendTracksToPlaylist(trackIds, playlistId);
}
bool PlaylistFeature::dragMoveAcceptChild(const QModelIndex& index, QUrl url) {
--- mixxx-1.11.0/src/library/playlisttablemodel.cpp 2013-05-08 16:20:26.000000000 -0700
+++ mixxx-upstream/src/library/playlisttablemodel.cpp 2013-05-12 15:26:10.683778000 -0700
@@ -109,10 +109,10 @@
return false;
}
- m_playlistDao.appendTrackToPlaylist(trackId, m_iPlaylistId);
+ bool bSuccess = m_playlistDao.appendTrackToPlaylist(trackId, m_iPlaylistId);
select(); //Repopulate the data model.
- return true;
+ return bSuccess;
}
int PlaylistTableModel::addTracks(const QModelIndex& index, QList<QString> locations) {
--- mixxx-1.11.0/src/library/setlogfeature.cpp 2013-05-08 16:20:26.000000000 -0700
+++ mixxx-upstream/src/library/setlogfeature.cpp 2013-05-12 15:26:10.683778000 -0700
@@ -202,10 +202,11 @@
m_playlistId = previousPlaylistId;
}
qDebug() << "slotJoinWithPrevious() current:" << currentPlaylistId << " previous:" << previousPlaylistId;
- m_playlistDao.copyPlaylistTracks(currentPlaylistId, previousPlaylistId);
- m_playlistDao.deletePlaylist(currentPlaylistId);
- slotPlaylistTableChanged(previousPlaylistId); // For moving selection
- emit(showTrackModel(m_pPlaylistTableModel));
+ if (m_playlistDao.copyPlaylistTracks(currentPlaylistId, previousPlaylistId)) {
+ m_playlistDao.deletePlaylist(currentPlaylistId);
+ slotPlaylistTableChanged(previousPlaylistId); // For moving selection
+ emit(showTrackModel(m_pPlaylistTableModel));
+ }
}
}
}
@@ -255,6 +256,7 @@
// View needs a refresh
m_pPlaylistTableModel->appendTrack(currentPlayingTrackId);
} else {
+ // TODO(XXX): Care whether the append succeeded.
m_playlistDao.appendTrackToPlaylist(currentPlayingTrackId,
m_playlistId);
}
--- mixxx-1.11.0/src/recording/enginerecord.cpp 2013-05-08 16:20:26.000000000 -0700
+++ mixxx-upstream/src/recording/enginerecord.cpp 2013-05-13 08:15:55.212095000 -0700
@@ -38,6 +38,8 @@
* *
***************************************************************************/
+const int kMetaDataLifeTimeout = 16;
+
EngineRecord::EngineRecord(ConfigObject<ConfigValue> * _config)
{
m_config = _config;
@@ -124,15 +126,13 @@
*/
bool EngineRecord::metaDataHasChanged()
{
- TrackPointer pTrack;
-
- if ( m_iMetaDataLife < 16 ) {
+ if (m_iMetaDataLife < kMetaDataLifeTimeout) {
m_iMetaDataLife++;
return false;
}
m_iMetaDataLife = 0;
- pTrack = PlayerInfo::Instance().getCurrentPlayingTrack();
+ TrackPointer pTrack = PlayerInfo::Instance().getCurrentPlayingTrack();
if ( !pTrack )
return false;
@@ -173,6 +173,10 @@
m_recReady->slotSet(RECORD_ON);
emit(isRecording(true)); //will notify the RecordingManager
+ // Since we just started recording, timeout and clear the metadata.
+ m_iMetaDataLife = kMetaDataLifeTimeout;
+ m_pCurrentTrack = TrackPointer();
+
if (m_bCueIsEnabled) {
openCueFile();
m_cuesamplepos = 0;
@@ -210,6 +214,10 @@
}
void EngineRecord::writeCueLine() {
+ if (!m_pCurrentTrack) {
+ return;
+ }
+
// account for multiple channels
unsigned long samplerate = m_samplerate->get() * 2;
// CDDA is specified as having 75 frames a second
@@ -228,9 +236,9 @@
.toLatin1()
);
- m_cuefile.write(QString(" TITLE %1\n")
+ m_cuefile.write(QString(" TITLE \"%1\"\n")
.arg(m_pCurrentTrack->getTitle()).toLatin1());
- m_cuefile.write(QString(" PERFORMER %1\n")
+ m_cuefile.write(QString(" PERFORMER \"%1\"\n")
.arg(m_pCurrentTrack->getArtist()).toLatin1());
// Woefully inaccurate (at the seconds level anyways).
--- mixxx-1.11.0/src/widget/wtracktableview.cpp 2013-05-08 16:20:26.000000000 -0700
+++ mixxx-upstream/src/widget/wtracktableview.cpp 2013-05-12 15:26:10.683778000 -0700
@@ -1025,6 +1025,7 @@
playlistDao.insertTracksIntoPlaylist(trackIds,
iAutoDJPlaylistId, 2);
} else {
+ // TODO(XXX): Care whether the append succeeded.
playlistDao.appendTracksToPlaylist(
trackIds, iAutoDJPlaylistId);
}
@@ -1089,6 +1090,7 @@
}
}
if (trackIds.size() > 0) {
+ // TODO(XXX): Care whether the append succeeded.
playlistDao.appendTracksToPlaylist(trackIds, iPlaylistId);
}
}
--- mixxx-1.11.0/vamp-plugins/SConscript 2013-05-08 16:20:26.000000000 -0700
+++ mixxx-upstream/vamp-plugins/SConscript 2013-05-17 07:46:13.646439000 -0700
@@ -51,7 +51,7 @@
if not conf.CheckLib('vamp-sdk'):
INTERNAL_VAMP_PATH = '#lib/vamp-2.3'
# For header includes
- build.env.Append(CPPPATH=[INTERNAL_VAMP_PATH])
+ env.Append(CPPPATH=[INTERNAL_VAMP_PATH])
sdk_src_path = '%s/src/vamp-sdk' % INTERNAL_VAMP_PATH
mixxxminimal_sources.extend(path % sdk_src_path for path in
['%s/PluginAdapter.cpp',
Index: .cvsignore
===================================================================
RCS file: /cvs/free/rpms/mixxx/F-19/.cvsignore,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -r1.10 -r1.11
--- .cvsignore 3 Mar 2013 21:43:35 -0000 1.10
+++ .cvsignore 23 May 2013 01:34:20 -0000 1.11
@@ -1 +1,2 @@
-mixxx-1.10.1-src.tar.gz
+mixxx-1.11.0-20130517bzr.tar.bz2
+mixxx-1.11.0-src.tar.gz
Index: mixxx.spec
===================================================================
RCS file: /cvs/free/rpms/mixxx/F-19/mixxx.spec,v
retrieving revision 1.14
retrieving revision 1.15
diff -u -r1.14 -r1.15
--- mixxx.spec 3 Mar 2013 21:43:35 -0000 1.14
+++ mixxx.spec 23 May 2013 01:34:20 -0000 1.15
@@ -1,17 +1,17 @@
-%global _with_bpm 1
-%global _with_libgpod 1
-
Name: mixxx
-Version: 1.10.1
-Release: 2%{?dist}
+Version: 1.11.0
+Release: 1%{?dist}
Summary: Mixxx is open source software for DJ'ing
Group: Applications/Multimedia
License: GPLv2+
URL: http://www.mixxx.org
-Source0: http://downloads.mixxx.org/mixxx-%{version}/mixxx-%{version}-src.tar.gz
-Patch0: mixxx-1.9.2-norpath.patch
-Patch1: mixxx-1.10.0-gcc47.patch
+Source0: http://downloads.mixxx.org/mixxx-%{version}/%{name}-%{version}-src.tar.gz
+Patch0: %{name}-%{version}-20130517bzr.patch
+# Updated manual...build it yourself with:
+# 1) bzr checkout lp:~mixxxdevelopers/mixxx/manual-1.11.x
+# 2) cd manual-1.11.x; make html; make latexpdf; make latexpdf
+Source1: %{name}-%{version}-20130517bzr.tar.bz2
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
#Build tools
@@ -29,14 +29,15 @@
BuildRequires: libmad-devel
BuildRequires: libmp4v2-devel
BuildRequires: libsndfile-devel
+BuildRequires: libusb1-devel
BuildRequires: libvorbis-devel
BuildRequires: portaudio-devel
BuildRequires: portmidi-devel
+BuildRequires: protobuf-devel
BuildRequires: taglib-devel
BuildRequires: flac-devel
#Optionals Requirements
-BuildRequires: ffmpeg-devel
BuildRequires: libshout-devel
#BuildRequires: python-devel
#BuildRequires: lua-devel, tolua++-devel
@@ -59,8 +60,19 @@
%prep
%setup -q
-%patch0 -p1 -b .norpath
-%patch1 -p1 -b .gcc47
+%patch0 -p1
+%setup -T -D -a 1
+
+# Fix file permissions. (Already fixed upstream.)
+chmod -x \
+ "res/controllers/Vestax VCI-300.midi.xml" \
+ "res/controllers/Vestax-VCI-300-scripts.js" \
+ "res/skins/Outline1024x600-Netbook/CHANGELOG.txt" \
+ "res/skins/Outline1024x600-Netbook/skin.xml" \
+ "res/skins/Outline1024x768-XGA/CHANGELOG.txt" \
+ "res/skins/Outline1024x768-XGA/skin.xml" \
+ "res/skins/Outline800x480-WVGA/skin.xml"
+
%build
@@ -73,6 +85,7 @@
shoutcast=1 hifieq=1 script=0 optimize=0 \
+
%install
rm -rf $RPM_BUILD_ROOT
@@ -80,6 +93,7 @@
export CXXFLAGS=$RPM_OPT_FLAGS
scons %{?_smp_mflags} \
install_root=$RPM_BUILD_ROOT%{_prefix} \
+ qtdir=%{_qt4_prefix} \
prefix=%{_prefix} install
desktop-file-install --vendor "" \
@@ -101,15 +115,13 @@
%doc Mixxx-Manual.pdf
%{_bindir}/%{name}
%{_datadir}/%{name}/
+%{_libdir}/%{name}/plugins/vamp/libmixxxminimal.so
%{_datadir}/applications/mixxx.desktop
%{_datadir}/pixmaps/mixxx-icon.png
%changelog
-* Sun Mar 03 2013 Nicolas Chauvet <kwizart(a)gmail.com> - 1.10.1-2
-- Mass rebuilt for Fedora 19 Features
-
-* Wed Jul 11 2012 Nicolas Chauvet <kwizart(a)gmail.com> - 1.10.1-1
-- Update to 1.10.1
+* Fri May 17 2013 Steven Boswell <ulatekh(a)yahoo.com> - 1.11.0-1
+- Update to 1.11.0
* Thu May 03 2012 Nicolas Chauvet <kwizart(a)gmail.com> - 1.10.0-1
- Update to 1.10.0
Index: sources
===================================================================
RCS file: /cvs/free/rpms/mixxx/F-19/sources,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -r1.10 -r1.11
--- sources 3 Mar 2013 21:43:35 -0000 1.10
+++ sources 23 May 2013 01:34:20 -0000 1.11
@@ -1 +1,2 @@
-765bc5216ec8102c2186dd3ea80187a9 mixxx-1.10.1-src.tar.gz
+021072cebcac0cbe2e0f0ea57554c4e5 mixxx-1.11.0-20130517bzr.tar.bz2
+89ee8ba60824919d8dd1194287bda259 mixxx-1.11.0-src.tar.gz
--- mixxx-1.10.0-gcc47.patch DELETED ---
--- mixxx-1.9.2-norpath.patch DELETED ---
11 years, 6 months
rpms/mixxx/F-17 mixxx-1.11.0-20130517bzr.patch, NONE, 1.1 .cvsignore, 1.10, 1.11 mixxx.spec, 1.14, 1.15 sources, 1.10, 1.11 mixxx-1.10.0-gcc47.patch, 1.1, NONE mixxx-1.9.2-norpath.patch, 1.1, NONE
by Steven Boswell
Author: ulatekh
Update of /cvs/free/rpms/mixxx/F-17
In directory old02.ovh.rpmfusion.lan:/tmp/cvs-serv28171/F-17
Modified Files:
.cvsignore mixxx.spec sources
Added Files:
mixxx-1.11.0-20130517bzr.patch
Removed Files:
mixxx-1.10.0-gcc47.patch mixxx-1.9.2-norpath.patch
Log Message:
Updated to 1.11.0
mixxx-1.11.0-20130517bzr.patch:
plugins/soundsourcem4a/SConscript | 3
res/translations/mixxx.ts | 117 ++++++++++++++---------------
res/translations/mixxx/mixxx.pot | 18 ++--
src/dlgprefrecord.cpp | 6 +
src/library/autodjfeature.cpp | 5 -
src/library/baseexternallibraryfeature.cpp | 2
src/library/baseplaylistfeature.cpp | 4
src/library/basesqltablemodel.cpp | 2
src/library/dao/playlistdao.cpp | 65 ++++++++++++----
src/library/dao/playlistdao.h | 6 -
src/library/legacylibraryimporter.cpp | 3
src/library/playlistfeature.cpp | 6 -
src/library/playlisttablemodel.cpp | 4
src/library/setlogfeature.cpp | 10 +-
src/recording/enginerecord.cpp | 20 +++-
src/widget/wtracktableview.cpp | 2
vamp-plugins/SConscript | 2
17 files changed, 165 insertions(+), 110 deletions(-)
--- NEW FILE mixxx-1.11.0-20130517bzr.patch ---
--- mixxx-1.11.0/plugins/soundsourcem4a/SConscript 2013-05-08 16:20:26.000000000 -0700
+++ mixxx-upstream/plugins/soundsourcem4a/SConscript 2013-05-12 15:26:10.683778000 -0700
@@ -15,7 +15,6 @@
"soundsourcem4a.cpp", # MP4/M4A Support through FAAD/libmp4v2
]
-
#Tell SCons to build the SoundSourceM4A plugin
#=========================
if int(build.flags['faad']):
@@ -24,7 +23,7 @@
conf = Configure(env)
have_mp4v2_h = conf.CheckHeader('mp4v2/mp4v2.h')
- have_mp4 = (have_mp4v2_h and conf.CheckLib(['mp4v2', 'libmp4v2'])) or \
+ have_mp4 = conf.CheckLib(['mp4v2', 'libmp4v2']) or \
conf.CheckLib('mp4')
have_faad = conf.CheckLib(['faad', 'libfaad'])
--- mixxx-1.11.0/res/translations/mixxx/mixxx.pot 2013-05-08 16:20:26.000000000 -0700
+++ mixxx-upstream/res/translations/mixxx/mixxx.pot 2013-05-10 16:13:51.948412000 -0700
@@ -2,7 +2,7 @@
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-04-14 06:50+0200\n"
+"POT-Creation-Date: 2013-05-10 08:29+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL(a)li.org>\n"
@@ -3204,28 +3204,28 @@
msgstr ""
#: MidiController#1
-msgid "MixxxControl not found"
+msgid "MixxxControl(s) not found"
msgstr ""
#: MidiController#2
-msgid "The MixxxControl '%1, %2' specified in the loaded mapping is invalid."
+msgid ""
+"One or more MixxxControls specified in the outputs section of the loaded "
+"preset were invalid."
msgstr ""
#: MidiController#3
-msgid ""
-"The MIDI output message 0x%1 0x%2 will not be bound.\n"
-"(Click Show Details for hints.)"
+msgid "Some LEDs or other feedback may not work correctly."
msgstr ""
#: MidiController#4
-msgid "* Check to see that the MixxxControl name is spelled correctly in the "
+msgid "* Check to see that the MixxxControl names are spelled correctly in the "
"mapping file (.xml)\n"
msgstr ""
#: MidiController#5
msgid ""
-"* Make sure the MixxxControl you're trying to use actually exists. Visit "
-"this wiki page for a complete list:"
+"* Make sure the MixxxControls in question actually exist. Visit this wiki "
+"page for a complete list: "
msgstr ""
#: MixxxApp#1
--- mixxx-1.11.0/res/translations/mixxx.ts 2013-05-08 16:20:26.000000000 -0700
+++ mixxx-upstream/res/translations/mixxx.ts 2013-05-10 16:13:51.948412000 -0700
@@ -94,7 +94,7 @@
</message>
<message>
<location filename="../../src/library/baseplaylistfeature.cpp" line="57"/>
- <location filename="../../src/library/baseplaylistfeature.cpp" line="332"/>
+ <location filename="../../src/library/baseplaylistfeature.cpp" line="330"/>
<source>Export Playlist</source>
<translation type="unfinished"></translation>
</message>
@@ -161,7 +161,7 @@
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/library/baseplaylistfeature.cpp" line="334"/>
+ <location filename="../../src/library/baseplaylistfeature.cpp" line="332"/>
<source>M3U Playlist (*.m3u);;M3U8 Playlist (*.m3u8);;PLS Playlist (*.pls);;Text CSV (*.csv);;Readable Text (*.txt)</source>
<translation type="unfinished"></translation>
</message>
@@ -169,107 +169,107 @@
<context>
<name>BaseSqlTableModel</name>
<message>
- <location filename="../../src/library/basesqltablemodel.cpp" line="47"/>
+ <location filename="../../src/library/basesqltablemodel.cpp" line="48"/>
<source>Played</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/library/basesqltablemodel.cpp" line="49"/>
+ <location filename="../../src/library/basesqltablemodel.cpp" line="50"/>
<source>Artist</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/library/basesqltablemodel.cpp" line="51"/>
+ <location filename="../../src/library/basesqltablemodel.cpp" line="52"/>
<source>Title</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/library/basesqltablemodel.cpp" line="53"/>
+ <location filename="../../src/library/basesqltablemodel.cpp" line="54"/>
<source>Album</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/library/basesqltablemodel.cpp" line="55"/>
+ <location filename="../../src/library/basesqltablemodel.cpp" line="56"/>
<source>Genre</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/library/basesqltablemodel.cpp" line="57"/>
+ <location filename="../../src/library/basesqltablemodel.cpp" line="58"/>
<source>Composer</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/library/basesqltablemodel.cpp" line="59"/>
+ <location filename="../../src/library/basesqltablemodel.cpp" line="60"/>
<source>Year</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/library/basesqltablemodel.cpp" line="61"/>
+ <location filename="../../src/library/basesqltablemodel.cpp" line="62"/>
<source>Type</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/library/basesqltablemodel.cpp" line="63"/>
+ <location filename="../../src/library/basesqltablemodel.cpp" line="64"/>
<source>Location</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/library/basesqltablemodel.cpp" line="65"/>
+ <location filename="../../src/library/basesqltablemodel.cpp" line="66"/>
<source>Comment</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/library/basesqltablemodel.cpp" line="67"/>
+ <location filename="../../src/library/basesqltablemodel.cpp" line="68"/>
<source>Duration</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/library/basesqltablemodel.cpp" line="69"/>
+ <location filename="../../src/library/basesqltablemodel.cpp" line="70"/>
<source>Rating</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/library/basesqltablemodel.cpp" line="71"/>
+ <location filename="../../src/library/basesqltablemodel.cpp" line="72"/>
<source>Bitrate</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/library/basesqltablemodel.cpp" line="73"/>
+ <location filename="../../src/library/basesqltablemodel.cpp" line="74"/>
<source>BPM</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/library/basesqltablemodel.cpp" line="75"/>
+ <location filename="../../src/library/basesqltablemodel.cpp" line="76"/>
<source>Track #</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/library/basesqltablemodel.cpp" line="77"/>
+ <location filename="../../src/library/basesqltablemodel.cpp" line="78"/>
<source>Date Added</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/library/basesqltablemodel.cpp" line="79"/>
+ <location filename="../../src/library/basesqltablemodel.cpp" line="80"/>
<source>#</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/library/basesqltablemodel.cpp" line="81"/>
+ <location filename="../../src/library/basesqltablemodel.cpp" line="82"/>
<source>Timestamp</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/library/basesqltablemodel.cpp" line="83"/>
+ <location filename="../../src/library/basesqltablemodel.cpp" line="84"/>
<source>Key</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/library/basesqltablemodel.cpp" line="85"/>
+ <location filename="../../src/library/basesqltablemodel.cpp" line="86"/>
<source>BPM Lock</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/library/basesqltablemodel.cpp" line="88"/>
+ <location filename="../../src/library/basesqltablemodel.cpp" line="89"/>
<source>Preview</source>
<translation type="unfinished"></translation>
</message>
@@ -444,27 +444,27 @@
<context>
<name>ControllerEngine</name>
<message>
- <location filename="../../src/controllers/controllerengine.cpp" line="535"/>
+ <location filename="../../src/controllers/controllerengine.cpp" line="529"/>
<source>Uncaught exception at line %1 in file %2: %3</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/controllers/controllerengine.cpp" line="541"/>
+ <location filename="../../src/controllers/controllerengine.cpp" line="535"/>
<source>Uncaught exception at line %1 in passed code: %2</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/controllers/controllerengine.cpp" line="561"/>
+ <location filename="../../src/controllers/controllerengine.cpp" line="555"/>
<source>Controller script error</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/controllers/controllerengine.cpp" line="562"/>
+ <location filename="../../src/controllers/controllerengine.cpp" line="556"/>
<source>A control you just used is not working properly.</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/controllers/controllerengine.cpp" line="563"/>
+ <location filename="../../src/controllers/controllerengine.cpp" line="557"/>
<source><html>(The script code needs to be fixed.)<br>For now, you can:<ul><li>Ignore this error for this session but you may experience erratic behavior</li><li>Try to recover by resetting your controller</li></ul></html></source>
<translation type="unfinished"></translation>
</message>
@@ -568,7 +568,7 @@
</message>
<message>
<location filename="../../src/library/cratefeature.cpp" line="85"/>
- <location filename="../../src/library/cratefeature.cpp" line="562"/>
+ <location filename="../../src/library/cratefeature.cpp" line="559"/>
<source>Crates</source>
<translation type="unfinished"></translation>
</message>
@@ -579,7 +579,7 @@
</message>
<message>
<location filename="../../src/library/cratefeature.cpp" line="48"/>
- <location filename="../../src/library/cratefeature.cpp" line="493"/>
+ <location filename="../../src/library/cratefeature.cpp" line="490"/>
<source>Export Crate</source>
<translation type="unfinished"></translation>
</message>
@@ -630,27 +630,27 @@
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/library/cratefeature.cpp" line="495"/>
+ <location filename="../../src/library/cratefeature.cpp" line="492"/>
<source>M3U Playlist (*.m3u);;M3U8 Playlist (*.m3u8);;PLS Playlist (*.pls);;Text CSV (*.csv);;Readable Text (*.txt)</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/library/cratefeature.cpp" line="563"/>
+ <location filename="../../src/library/cratefeature.cpp" line="560"/>
<source>Crates are a great way to help organize the music you want to DJ with.</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/library/cratefeature.cpp" line="564"/>
+ <location filename="../../src/library/cratefeature.cpp" line="561"/>
<source>Make a crate for your next gig, for your favorite electrohouse tracks, or for your most requested songs.</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/library/cratefeature.cpp" line="565"/>
+ <location filename="../../src/library/cratefeature.cpp" line="562"/>
<source>Crates let you organize your music however you'd like!</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/library/cratefeature.cpp" line="568"/>
+ <location filename="../../src/library/cratefeature.cpp" line="565"/>
<source>Create new crate</source>
<translation type="unfinished"></translation>
</message>
@@ -3880,30 +3880,29 @@
<context>
<name>MidiController</name>
<message>
- <location filename="../../src/controllers/midi/midicontroller.cpp" line="116"/>
- <source>MixxxControl not found</source>
+ <location filename="../../src/controllers/midi/midicontroller.cpp" line="139"/>
+ <source>MixxxControl(s) not found</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/controllers/midi/midicontroller.cpp" line="117"/>
- <source>The MixxxControl '%1, %2' specified in the loaded mapping is invalid.</source>
+ <location filename="../../src/controllers/midi/midicontroller.cpp" line="140"/>
+ <source>One or more MixxxControls specified in the outputs section of the loaded preset were invalid.</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/controllers/midi/midicontroller.cpp" line="120"/>
- <source>The MIDI output message 0x%1 0x%2 will not be bound.
-(Click Show Details for hints.)</source>
+ <location filename="../../src/controllers/midi/midicontroller.cpp" line="142"/>
+ <source>Some LEDs or other feedback may not work correctly.</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/controllers/midi/midicontroller.cpp" line="124"/>
- <source>* Check to see that the MixxxControl name is spelled correctly in the mapping file (.xml)
+ <location filename="../../src/controllers/midi/midicontroller.cpp" line="143"/>
+ <source>* Check to see that the MixxxControl names are spelled correctly in the mapping file (.xml)
</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/controllers/midi/midicontroller.cpp" line="127"/>
- <source>* Make sure the MixxxControl you're trying to use actually exists. Visit this wiki page for a complete list:</source>
+ <location filename="../../src/controllers/midi/midicontroller.cpp" line="146"/>
+ <source>* Make sure the MixxxControls in question actually exist. Visit this wiki page for a complete list: </source>
<translation type="unfinished"></translation>
</message>
</context>
@@ -4298,7 +4297,7 @@
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/mixxx.cpp" line="1809"/>
+ <location filename="../../src/mixxx.cpp" line="1812"/>
<source>A sampler is currently playing. Exit Mixxx?</source>
<translation type="unfinished"></translation>
</message>
@@ -4410,44 +4409,44 @@
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/mixxx.cpp" line="1621"/>
+ <location filename="../../src/mixxx.cpp" line="1624"/>
<source>Error in skin file</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/mixxx.cpp" line="1622"/>
+ <location filename="../../src/mixxx.cpp" line="1625"/>
<source>The selected skin cannot be loaded.</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/mixxx.cpp" line="1757"/>
+ <location filename="../../src/mixxx.cpp" line="1760"/>
<source>OpenGL Direct Rendering</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/mixxx.cpp" line="1758"/>
+ <location filename="../../src/mixxx.cpp" line="1761"/>
<source>Direct rendering is not enabled on your machine.<br><br>This means that the waveform displays will be very<br><b>slow and may tax your CPU heavily</b>. Either update your<br>configuration to enable direct rendering, or disable<br>the waveform displays in the Mixxx preferences by selecting<br>"Empty" as the waveform display in the 'Interface' section.<br><br>NOTE: If you use NVIDIA hardware,<br>direct rendering may not be present, but you should<br>not experience degraded performance.</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/mixxx.cpp" line="1800"/>
- <location filename="../../src/mixxx.cpp" line="1808"/>
- <location filename="../../src/mixxx.cpp" line="1817"/>
+ <location filename="../../src/mixxx.cpp" line="1803"/>
+ <location filename="../../src/mixxx.cpp" line="1811"/>
+ <location filename="../../src/mixxx.cpp" line="1820"/>
<source>Confirm Exit</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/mixxx.cpp" line="1801"/>
+ <location filename="../../src/mixxx.cpp" line="1804"/>
<source>A deck is currently playing. Exit Mixxx?</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/mixxx.cpp" line="1818"/>
+ <location filename="../../src/mixxx.cpp" line="1821"/>
<source>The preferences window is still open.</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/mixxx.cpp" line="1819"/>
+ <location filename="../../src/mixxx.cpp" line="1822"/>
<source>Discard any changes and exit Mixxx?</source>
<translation type="unfinished"></translation>
</message>
@@ -6022,12 +6021,12 @@
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/widget/wtracktableview.cpp" line="485"/>
+ <location filename="../../src/widget/wtracktableview.cpp" line="487"/>
<source>Load to Deck %1</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/widget/wtracktableview.cpp" line="503"/>
+ <location filename="../../src/widget/wtracktableview.cpp" line="506"/>
<source>Sampler %1</source>
<translation type="unfinished"></translation>
</message>
--- mixxx-1.11.0/src/dlgprefrecord.cpp 2013-05-08 16:20:26.000000000 -0700
+++ mixxx-upstream/src/dlgprefrecord.cpp 2013-05-13 08:15:55.212095000 -0700
@@ -98,9 +98,11 @@
else if (format == ENCODING_MP3)
radioMp3->setChecked(true);
#endif
-#ifdef SF_FORMAT_FLAC
else if (format == ENCODING_AIFF)
radioAiff->setChecked(true);
+#ifdef SF_FORMAT_FLAC
+ else if (format == ENCODING_FLAC)
+ radioFlac->setChecked(true);
#endif
else //Invalid, so set default and save
{
@@ -109,6 +111,8 @@
config->set(ConfigKey(RECORDING_PREF_KEY, "Encoding"), ConfigValue(ENCODING_WAVE));
}
+ loadMetaData();
+
//Connections
connect(SliderQuality, SIGNAL(valueChanged(int)), this, SLOT(slotSliderQuality()));
connect(SliderQuality, SIGNAL(sliderMoved(int)), this, SLOT(slotSliderQuality()));
--- mixxx-1.11.0/src/library/autodjfeature.cpp 2013-05-08 16:20:26.000000000 -0700
+++ mixxx-upstream/src/library/autodjfeature.cpp 2013-05-12 15:26:10.683778000 -0700
@@ -88,8 +88,9 @@
trackIds.removeAt(trackId--);
}
}
- m_playlistDao.appendTracksToPlaylist(trackIds, playlistId);
- return true;
+
+ // Return whether the tracks were appended.
+ return m_playlistDao.appendTracksToPlaylist(trackIds, playlistId);
}
bool AutoDJFeature::dragMoveAccept(QUrl url) {
--- mixxx-1.11.0/src/library/baseexternallibraryfeature.cpp 2013-05-08 16:20:26.000000000 -0700
+++ mixxx-upstream/src/library/baseexternallibraryfeature.cpp 2013-05-12 15:26:10.683778000 -0700
@@ -93,6 +93,7 @@
// Start at position 2 because position 1 was already loaded to the deck
playlistDao.insertTrackIntoPlaylist(track->getId(), autoDJId, i+2);
} else {
+ // TODO(XXX): Care whether the append succeeded.
playlistDao.appendTrackToPlaylist(track->getId(), autoDJId);
}
}
@@ -142,6 +143,7 @@
if (index.isValid()) {
qDebug() << pPlaylistModelToAdd->getTrackLocation(index);
TrackPointer track = pPlaylistModelToAdd->getTrack(index);
+ // TODO(XXX): Care whether the append succeeded.
playlistDao.appendTrackToPlaylist(track->getId(), playlistId);
}
}
--- mixxx-1.11.0/src/library/baseplaylistfeature.cpp 2013-05-08 16:20:26.000000000 -0700
+++ mixxx-upstream/src/library/baseplaylistfeature.cpp 2013-05-12 15:26:10.683778000 -0700
@@ -188,9 +188,9 @@
} while (!validNameGiven);
int newPlaylistId = m_playlistDao.createPlaylist(name);
- m_playlistDao.copyPlaylistTracks(oldPlaylistId, newPlaylistId);
- if (newPlaylistId != -1) {
+ if (newPlaylistId != -1 &&
+ m_playlistDao.copyPlaylistTracks(oldPlaylistId, newPlaylistId)) {
emit(showTrackModel(m_pPlaylistTableModel));
}
}
--- mixxx-1.11.0/src/library/basesqltablemodel.cpp 2013-05-08 16:20:26.000000000 -0700
+++ mixxx-upstream/src/library/basesqltablemodel.cpp 2013-05-13 08:15:55.212095000 -0700
@@ -471,7 +471,7 @@
} else if (column == fieldIndex(PLAYLISTTRACKSTABLE_DATETIMEADDED)) {
QDateTime gmtDate = value.toDateTime();
gmtDate.setTimeSpec(Qt::UTC);
- value = gmtDate.toLocalTime().time();
+ value = gmtDate.toLocalTime();
} else if (column == fieldIndex(LIBRARYTABLE_BPM_LOCK)) {
value = value.toBool();
}
--- mixxx-1.11.0/src/library/dao/playlistdao.cpp 2013-05-08 16:20:26.000000000 -0700
+++ mixxx-upstream/src/library/dao/playlistdao.cpp 2013-05-12 15:26:10.683778000 -0700
@@ -177,7 +177,7 @@
return false;
}
-void PlaylistDAO::appendTracksToPlaylist(QList<int> trackIds, int playlistId) {
+bool PlaylistDAO::appendTracksToPlaylist(QList<int> trackIds, int playlistId) {
// qDebug() << "PlaylistDAO::appendTracksToPlaylist"
// << QThread::currentThread() << m_database.connectionName();
@@ -203,6 +203,7 @@
query.bindValue(":position", insertPosition++);
if (!query.exec()) {
LOG_FAILED_QUERY(query);
+ return false;
}
}
@@ -215,12 +216,13 @@
emit(trackAdded(playlistId, trackId, insertPosition++));
}
emit(changed(playlistId));
+ return true;
}
-void PlaylistDAO::appendTrackToPlaylist(int trackId, int playlistId) {
+bool PlaylistDAO::appendTrackToPlaylist(int trackId, int playlistId) {
QList<int> tracks;
tracks.append(trackId);
- appendTracksToPlaylist(tracks, playlistId);
+ return appendTracksToPlaylist(tracks, playlistId);
}
/** Find out how many playlists exist. */
@@ -523,6 +525,7 @@
if (bTop) {
insertTracksIntoPlaylist(ids, autoDJId, 2);
} else {
+ // TODO(XXX): Care whether the append succeeded.
appendTracksToPlaylist(ids, autoDJId);
}
}
@@ -549,23 +552,59 @@
return previousPlaylistId;
}
-void PlaylistDAO::copyPlaylistTracks(int sourcePlaylistID, int targetPlaylistId) {
- // Query Tracks from the source Playlist
- QSqlQuery query(m_database);
- query.prepare("SELECT track_id FROM PlaylistTracks "
- "WHERE playlist_id = :plid");
- query.bindValue(":plid", sourcePlaylistID);
+bool PlaylistDAO::copyPlaylistTracks(int sourcePlaylistID, int targetPlaylistID) {
+ // Start the transaction
+ ScopedTransaction transaction(m_database);
+
+ // Copy the new tracks after the last track in the target playlist.
+ int positionOffset = getMaxPosition(targetPlaylistID);
+
+ // Copy the tracks from one playlist to another, adjusting the position of
+ // each copied track, and preserving the date/time added.
+ // INSERT INTO PlaylistTracks (playlist_id, track_id, position, pl_datetime_added) SELECT :target_plid, track_id, position + :position_offset, pl_datetime_added FROM PlaylistTracks WHERE playlist_id = :source_plid;
+ QSqlQuery query(m_database);
+ query.prepare(QString("INSERT INTO " PLAYLIST_TRACKS_TABLE
+ " (%1, %2, %3, %4) SELECT :target_plid, %2, "
+ "%3 + :position_offset, %4 FROM " PLAYLIST_TRACKS_TABLE
+ " WHERE %1 = :source_plid")
+ .arg(PLAYLISTTRACKSTABLE_PLAYLISTID) // %1
+ .arg(PLAYLISTTRACKSTABLE_TRACKID) // %2
+ .arg(PLAYLISTTRACKSTABLE_POSITION) // %3
+ .arg(PLAYLISTTRACKSTABLE_DATETIMEADDED)); // %4
+ query.bindValue(":position_offset", positionOffset);
+ query.bindValue(":source_plid", sourcePlaylistID);
+ query.bindValue(":target_plid", targetPlaylistID);
if (!query.exec()) {
LOG_FAILED_QUERY(query);
- return;
+ return false;
}
- QList<int> trackIds;
+ // Query each added track and its new position.
+ // SELECT track_id, position FROM PlaylistTracks WHERE playlist_id = :target_plid AND position > :position_offset;
+ query.prepare(QString("SELECT %2, %3 FROM " PLAYLIST_TRACKS_TABLE
+ " WHERE %1 = :target_plid AND %3 > :position_offset")
+ .arg(PLAYLISTTRACKSTABLE_PLAYLISTID) // %1
+ .arg(PLAYLISTTRACKSTABLE_TRACKID) // %2
+ .arg(PLAYLISTTRACKSTABLE_POSITION)); // %3
+ query.bindValue(":target_plid", targetPlaylistID);
+ query.bindValue(":position_offset", positionOffset);
+ if (!query.exec()) {
+ LOG_FAILED_QUERY(query);
+ return false;
+ }
+
+ // Commit the transaction
+ transaction.commit();
+
+ // Let subscribers know about each added track.
while (query.next()) {
- trackIds.append(query.value(0).toInt());
+ int copiedTrackId = query.value(0).toInt();
+ int copiedPosition = query.value(1).toInt();
+ emit(trackAdded(targetPlaylistID, copiedTrackId, copiedPosition));
}
- appendTracksToPlaylist(trackIds, targetPlaylistId);
+ emit(changed(targetPlaylistID));
+ return true;
}
int PlaylistDAO::getMaxPosition(int playlistId) {
--- mixxx-1.11.0/src/library/dao/playlistdao.h 2013-05-08 16:20:26.000000000 -0700
+++ mixxx-upstream/src/library/dao/playlistdao.h 2013-05-12 15:26:10.683778000 -0700
@@ -44,9 +44,9 @@
// Find out the state of a playlist lock
bool isPlaylistLocked(int playlistId);
// Append a list of tracks to a playlist
- void appendTracksToPlaylist(QList<int> trackIds, int playlistId);
+ bool appendTracksToPlaylist(QList<int> trackIds, int playlistId);
// Append a track to a playlist
- void appendTrackToPlaylist(int trackId, int playlistId);
+ bool appendTrackToPlaylist(int trackId, int playlistId);
// Find out how many playlists exist.
unsigned int playlistCount();
// Find out the name of the playlist at the given Id
@@ -79,7 +79,7 @@
// hidden. Returns -1 if no such playlist exists.
int getPreviousPlaylist(int currentPlaylistId, HiddenType hidden);
// Append all the tracks in the source playlist to the target playlist.
- void copyPlaylistTracks(int sourcePlaylistID, int targetPlaylistId);
+ bool copyPlaylistTracks(int sourcePlaylistID, int targetPlaylistID);
// Returns the number of tracks in the given playlist.
int tracksInPlaylist(int playlistId);
signals:
--- mixxx-1.11.0/src/library/legacylibraryimporter.cpp 2013-05-08 16:20:26.000000000 -0700
+++ mixxx-upstream/src/library/legacylibraryimporter.cpp 2013-05-12 15:26:10.683778000 -0700
@@ -171,7 +171,8 @@
int dbTrackId = m_trackDao.getTrackId(trackLocation);
if (dbTrackId >= 0) {
- //Add it to the database's playlist.
+ // Add it to the database's playlist.
+ // TODO(XXX): Care if the append succeeded.
m_playlistDao.appendTrackToPlaylist(dbTrackId, playlistId);
}
}
--- mixxx-1.11.0/src/library/playlistfeature.cpp 2013-05-08 16:20:26.000000000 -0700
+++ mixxx-upstream/src/library/playlistfeature.cpp 2013-05-12 15:26:10.683778000 -0700
@@ -117,10 +117,8 @@
}
}
- // appendTracksToPlaylist doesn't return whether it succeeded, so assume it
- // did.
- m_playlistDao.appendTracksToPlaylist(trackIds, playlistId);
- return true;
+ // Return whether appendTracksToPlaylist succeeded.
+ return m_playlistDao.appendTracksToPlaylist(trackIds, playlistId);
}
bool PlaylistFeature::dragMoveAcceptChild(const QModelIndex& index, QUrl url) {
--- mixxx-1.11.0/src/library/playlisttablemodel.cpp 2013-05-08 16:20:26.000000000 -0700
+++ mixxx-upstream/src/library/playlisttablemodel.cpp 2013-05-12 15:26:10.683778000 -0700
@@ -109,10 +109,10 @@
return false;
}
- m_playlistDao.appendTrackToPlaylist(trackId, m_iPlaylistId);
+ bool bSuccess = m_playlistDao.appendTrackToPlaylist(trackId, m_iPlaylistId);
select(); //Repopulate the data model.
- return true;
+ return bSuccess;
}
int PlaylistTableModel::addTracks(const QModelIndex& index, QList<QString> locations) {
--- mixxx-1.11.0/src/library/setlogfeature.cpp 2013-05-08 16:20:26.000000000 -0700
+++ mixxx-upstream/src/library/setlogfeature.cpp 2013-05-12 15:26:10.683778000 -0700
@@ -202,10 +202,11 @@
m_playlistId = previousPlaylistId;
}
qDebug() << "slotJoinWithPrevious() current:" << currentPlaylistId << " previous:" << previousPlaylistId;
- m_playlistDao.copyPlaylistTracks(currentPlaylistId, previousPlaylistId);
- m_playlistDao.deletePlaylist(currentPlaylistId);
- slotPlaylistTableChanged(previousPlaylistId); // For moving selection
- emit(showTrackModel(m_pPlaylistTableModel));
+ if (m_playlistDao.copyPlaylistTracks(currentPlaylistId, previousPlaylistId)) {
+ m_playlistDao.deletePlaylist(currentPlaylistId);
+ slotPlaylistTableChanged(previousPlaylistId); // For moving selection
+ emit(showTrackModel(m_pPlaylistTableModel));
+ }
}
}
}
@@ -255,6 +256,7 @@
// View needs a refresh
m_pPlaylistTableModel->appendTrack(currentPlayingTrackId);
} else {
+ // TODO(XXX): Care whether the append succeeded.
m_playlistDao.appendTrackToPlaylist(currentPlayingTrackId,
m_playlistId);
}
--- mixxx-1.11.0/src/recording/enginerecord.cpp 2013-05-08 16:20:26.000000000 -0700
+++ mixxx-upstream/src/recording/enginerecord.cpp 2013-05-13 08:15:55.212095000 -0700
@@ -38,6 +38,8 @@
* *
***************************************************************************/
+const int kMetaDataLifeTimeout = 16;
+
EngineRecord::EngineRecord(ConfigObject<ConfigValue> * _config)
{
m_config = _config;
@@ -124,15 +126,13 @@
*/
bool EngineRecord::metaDataHasChanged()
{
- TrackPointer pTrack;
-
- if ( m_iMetaDataLife < 16 ) {
+ if (m_iMetaDataLife < kMetaDataLifeTimeout) {
m_iMetaDataLife++;
return false;
}
m_iMetaDataLife = 0;
- pTrack = PlayerInfo::Instance().getCurrentPlayingTrack();
+ TrackPointer pTrack = PlayerInfo::Instance().getCurrentPlayingTrack();
if ( !pTrack )
return false;
@@ -173,6 +173,10 @@
m_recReady->slotSet(RECORD_ON);
emit(isRecording(true)); //will notify the RecordingManager
+ // Since we just started recording, timeout and clear the metadata.
+ m_iMetaDataLife = kMetaDataLifeTimeout;
+ m_pCurrentTrack = TrackPointer();
+
if (m_bCueIsEnabled) {
openCueFile();
m_cuesamplepos = 0;
@@ -210,6 +214,10 @@
}
void EngineRecord::writeCueLine() {
+ if (!m_pCurrentTrack) {
+ return;
+ }
+
// account for multiple channels
unsigned long samplerate = m_samplerate->get() * 2;
// CDDA is specified as having 75 frames a second
@@ -228,9 +236,9 @@
.toLatin1()
);
- m_cuefile.write(QString(" TITLE %1\n")
+ m_cuefile.write(QString(" TITLE \"%1\"\n")
.arg(m_pCurrentTrack->getTitle()).toLatin1());
- m_cuefile.write(QString(" PERFORMER %1\n")
+ m_cuefile.write(QString(" PERFORMER \"%1\"\n")
.arg(m_pCurrentTrack->getArtist()).toLatin1());
// Woefully inaccurate (at the seconds level anyways).
--- mixxx-1.11.0/src/widget/wtracktableview.cpp 2013-05-08 16:20:26.000000000 -0700
+++ mixxx-upstream/src/widget/wtracktableview.cpp 2013-05-12 15:26:10.683778000 -0700
@@ -1025,6 +1025,7 @@
playlistDao.insertTracksIntoPlaylist(trackIds,
iAutoDJPlaylistId, 2);
} else {
+ // TODO(XXX): Care whether the append succeeded.
playlistDao.appendTracksToPlaylist(
trackIds, iAutoDJPlaylistId);
}
@@ -1089,6 +1090,7 @@
}
}
if (trackIds.size() > 0) {
+ // TODO(XXX): Care whether the append succeeded.
playlistDao.appendTracksToPlaylist(trackIds, iPlaylistId);
}
}
--- mixxx-1.11.0/vamp-plugins/SConscript 2013-05-08 16:20:26.000000000 -0700
+++ mixxx-upstream/vamp-plugins/SConscript 2013-05-17 07:46:13.646439000 -0700
@@ -51,7 +51,7 @@
if not conf.CheckLib('vamp-sdk'):
INTERNAL_VAMP_PATH = '#lib/vamp-2.3'
# For header includes
- build.env.Append(CPPPATH=[INTERNAL_VAMP_PATH])
+ env.Append(CPPPATH=[INTERNAL_VAMP_PATH])
sdk_src_path = '%s/src/vamp-sdk' % INTERNAL_VAMP_PATH
mixxxminimal_sources.extend(path % sdk_src_path for path in
['%s/PluginAdapter.cpp',
Index: .cvsignore
===================================================================
RCS file: /cvs/free/rpms/mixxx/F-17/.cvsignore,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -r1.10 -r1.11
--- .cvsignore 4 Feb 2013 20:38:12 -0000 1.10
+++ .cvsignore 23 May 2013 01:14:31 -0000 1.11
@@ -1 +1,2 @@
-mixxx-1.10.1-src.tar.gz
+mixxx-1.11.0-20130517bzr.tar.bz2
+mixxx-1.11.0-src.tar.gz
Index: mixxx.spec
===================================================================
RCS file: /cvs/free/rpms/mixxx/F-17/mixxx.spec,v
retrieving revision 1.14
retrieving revision 1.15
diff -u -r1.14 -r1.15
--- mixxx.spec 4 Feb 2013 20:38:12 -0000 1.14
+++ mixxx.spec 23 May 2013 01:14:31 -0000 1.15
@@ -1,17 +1,17 @@
-%global _with_bpm 1
-%global _with_libgpod 1
-
Name: mixxx
-Version: 1.10.1
+Version: 1.11.0
Release: 1%{?dist}
Summary: Mixxx is open source software for DJ'ing
Group: Applications/Multimedia
License: GPLv2+
URL: http://www.mixxx.org
-Source0: http://downloads.mixxx.org/mixxx-%{version}/mixxx-%{version}-src.tar.gz
-Patch0: mixxx-1.9.2-norpath.patch
-Patch1: mixxx-1.10.0-gcc47.patch
+Source0: http://downloads.mixxx.org/mixxx-%{version}/%{name}-%{version}-src.tar.gz
+Patch0: %{name}-%{version}-20130517bzr.patch
+# Updated manual...build it yourself with:
+# 1) bzr checkout lp:~mixxxdevelopers/mixxx/manual-1.11.x
+# 2) cd manual-1.11.x; make html; make latexpdf; make latexpdf
+Source1: %{name}-%{version}-20130517bzr.tar.bz2
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
#Build tools
@@ -29,14 +29,15 @@
BuildRequires: libmad-devel
BuildRequires: libmp4v2-devel
BuildRequires: libsndfile-devel
+BuildRequires: libusb1-devel
BuildRequires: libvorbis-devel
BuildRequires: portaudio-devel
BuildRequires: portmidi-devel
+BuildRequires: protobuf-devel
BuildRequires: taglib-devel
BuildRequires: flac-devel
#Optionals Requirements
-BuildRequires: ffmpeg-devel
BuildRequires: libshout-devel
#BuildRequires: python-devel
#BuildRequires: lua-devel, tolua++-devel
@@ -59,8 +60,19 @@
%prep
%setup -q
-%patch0 -p1 -b .norpath
-%patch1 -p1 -b .gcc47
+%patch0 -p1
+%setup -T -D -a 1
+
+# Fix file permissions. (Already fixed upstream.)
+chmod -x \
+ "res/controllers/Vestax VCI-300.midi.xml" \
+ "res/controllers/Vestax-VCI-300-scripts.js" \
+ "res/skins/Outline1024x600-Netbook/CHANGELOG.txt" \
+ "res/skins/Outline1024x600-Netbook/skin.xml" \
+ "res/skins/Outline1024x768-XGA/CHANGELOG.txt" \
+ "res/skins/Outline1024x768-XGA/skin.xml" \
+ "res/skins/Outline800x480-WVGA/skin.xml"
+
%build
@@ -73,6 +85,7 @@
shoutcast=1 hifieq=1 script=0 optimize=0 \
+
%install
rm -rf $RPM_BUILD_ROOT
@@ -80,6 +93,7 @@
export CXXFLAGS=$RPM_OPT_FLAGS
scons %{?_smp_mflags} \
install_root=$RPM_BUILD_ROOT%{_prefix} \
+ qtdir=%{_qt4_prefix} \
prefix=%{_prefix} install
desktop-file-install --vendor "" \
@@ -101,12 +115,13 @@
%doc Mixxx-Manual.pdf
%{_bindir}/%{name}
%{_datadir}/%{name}/
+%{_libdir}/%{name}/plugins/vamp/libmixxxminimal.so
%{_datadir}/applications/mixxx.desktop
%{_datadir}/pixmaps/mixxx-icon.png
%changelog
-* Wed Jul 11 2012 Nicolas Chauvet <kwizart(a)gmail.com> - 1.10.1-1
-- Update to 1.10.1
+* Fri May 17 2013 Steven Boswell <ulatekh(a)yahoo.com> - 1.11.0-1
+- Update to 1.11.0
* Thu May 03 2012 Nicolas Chauvet <kwizart(a)gmail.com> - 1.10.0-1
- Update to 1.10.0
Index: sources
===================================================================
RCS file: /cvs/free/rpms/mixxx/F-17/sources,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -r1.10 -r1.11
--- sources 4 Feb 2013 20:38:12 -0000 1.10
+++ sources 23 May 2013 01:14:31 -0000 1.11
@@ -1 +1,2 @@
-765bc5216ec8102c2186dd3ea80187a9 mixxx-1.10.1-src.tar.gz
+021072cebcac0cbe2e0f0ea57554c4e5 mixxx-1.11.0-20130517bzr.tar.bz2
+89ee8ba60824919d8dd1194287bda259 mixxx-1.11.0-src.tar.gz
--- mixxx-1.10.0-gcc47.patch DELETED ---
--- mixxx-1.9.2-norpath.patch DELETED ---
11 years, 6 months
rpms/mixxx/F-18 mixxx-1.11.0-20130517bzr.patch, NONE, 1.1 .cvsignore, 1.10, 1.11 mixxx.spec, 1.14, 1.15 sources, 1.10, 1.11 mixxx-1.10.0-gcc47.patch, 1.1, NONE mixxx-1.9.2-norpath.patch, 1.1, NONE
by Steven Boswell
Author: ulatekh
Update of /cvs/free/rpms/mixxx/F-18
In directory old02.ovh.rpmfusion.lan:/tmp/cvs-serv27928/F-18
Modified Files:
.cvsignore mixxx.spec sources
Added Files:
mixxx-1.11.0-20130517bzr.patch
Removed Files:
mixxx-1.10.0-gcc47.patch mixxx-1.9.2-norpath.patch
Log Message:
Updated to 1.11.0
mixxx-1.11.0-20130517bzr.patch:
plugins/soundsourcem4a/SConscript | 3
res/translations/mixxx.ts | 117 ++++++++++++++---------------
res/translations/mixxx/mixxx.pot | 18 ++--
src/dlgprefrecord.cpp | 6 +
src/library/autodjfeature.cpp | 5 -
src/library/baseexternallibraryfeature.cpp | 2
src/library/baseplaylistfeature.cpp | 4
src/library/basesqltablemodel.cpp | 2
src/library/dao/playlistdao.cpp | 65 ++++++++++++----
src/library/dao/playlistdao.h | 6 -
src/library/legacylibraryimporter.cpp | 3
src/library/playlistfeature.cpp | 6 -
src/library/playlisttablemodel.cpp | 4
src/library/setlogfeature.cpp | 10 +-
src/recording/enginerecord.cpp | 20 +++-
src/widget/wtracktableview.cpp | 2
vamp-plugins/SConscript | 2
17 files changed, 165 insertions(+), 110 deletions(-)
--- NEW FILE mixxx-1.11.0-20130517bzr.patch ---
--- mixxx-1.11.0/plugins/soundsourcem4a/SConscript 2013-05-08 16:20:26.000000000 -0700
+++ mixxx-upstream/plugins/soundsourcem4a/SConscript 2013-05-12 15:26:10.683778000 -0700
@@ -15,7 +15,6 @@
"soundsourcem4a.cpp", # MP4/M4A Support through FAAD/libmp4v2
]
-
#Tell SCons to build the SoundSourceM4A plugin
#=========================
if int(build.flags['faad']):
@@ -24,7 +23,7 @@
conf = Configure(env)
have_mp4v2_h = conf.CheckHeader('mp4v2/mp4v2.h')
- have_mp4 = (have_mp4v2_h and conf.CheckLib(['mp4v2', 'libmp4v2'])) or \
+ have_mp4 = conf.CheckLib(['mp4v2', 'libmp4v2']) or \
conf.CheckLib('mp4')
have_faad = conf.CheckLib(['faad', 'libfaad'])
--- mixxx-1.11.0/res/translations/mixxx/mixxx.pot 2013-05-08 16:20:26.000000000 -0700
+++ mixxx-upstream/res/translations/mixxx/mixxx.pot 2013-05-10 16:13:51.948412000 -0700
@@ -2,7 +2,7 @@
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-04-14 06:50+0200\n"
+"POT-Creation-Date: 2013-05-10 08:29+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL(a)li.org>\n"
@@ -3204,28 +3204,28 @@
msgstr ""
#: MidiController#1
-msgid "MixxxControl not found"
+msgid "MixxxControl(s) not found"
msgstr ""
#: MidiController#2
-msgid "The MixxxControl '%1, %2' specified in the loaded mapping is invalid."
+msgid ""
+"One or more MixxxControls specified in the outputs section of the loaded "
+"preset were invalid."
msgstr ""
#: MidiController#3
-msgid ""
-"The MIDI output message 0x%1 0x%2 will not be bound.\n"
-"(Click Show Details for hints.)"
+msgid "Some LEDs or other feedback may not work correctly."
msgstr ""
#: MidiController#4
-msgid "* Check to see that the MixxxControl name is spelled correctly in the "
+msgid "* Check to see that the MixxxControl names are spelled correctly in the "
"mapping file (.xml)\n"
msgstr ""
#: MidiController#5
msgid ""
-"* Make sure the MixxxControl you're trying to use actually exists. Visit "
-"this wiki page for a complete list:"
+"* Make sure the MixxxControls in question actually exist. Visit this wiki "
+"page for a complete list: "
msgstr ""
#: MixxxApp#1
--- mixxx-1.11.0/res/translations/mixxx.ts 2013-05-08 16:20:26.000000000 -0700
+++ mixxx-upstream/res/translations/mixxx.ts 2013-05-10 16:13:51.948412000 -0700
@@ -94,7 +94,7 @@
</message>
<message>
<location filename="../../src/library/baseplaylistfeature.cpp" line="57"/>
- <location filename="../../src/library/baseplaylistfeature.cpp" line="332"/>
+ <location filename="../../src/library/baseplaylistfeature.cpp" line="330"/>
<source>Export Playlist</source>
<translation type="unfinished"></translation>
</message>
@@ -161,7 +161,7 @@
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/library/baseplaylistfeature.cpp" line="334"/>
+ <location filename="../../src/library/baseplaylistfeature.cpp" line="332"/>
<source>M3U Playlist (*.m3u);;M3U8 Playlist (*.m3u8);;PLS Playlist (*.pls);;Text CSV (*.csv);;Readable Text (*.txt)</source>
<translation type="unfinished"></translation>
</message>
@@ -169,107 +169,107 @@
<context>
<name>BaseSqlTableModel</name>
<message>
- <location filename="../../src/library/basesqltablemodel.cpp" line="47"/>
+ <location filename="../../src/library/basesqltablemodel.cpp" line="48"/>
<source>Played</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/library/basesqltablemodel.cpp" line="49"/>
+ <location filename="../../src/library/basesqltablemodel.cpp" line="50"/>
<source>Artist</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/library/basesqltablemodel.cpp" line="51"/>
+ <location filename="../../src/library/basesqltablemodel.cpp" line="52"/>
<source>Title</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/library/basesqltablemodel.cpp" line="53"/>
+ <location filename="../../src/library/basesqltablemodel.cpp" line="54"/>
<source>Album</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/library/basesqltablemodel.cpp" line="55"/>
+ <location filename="../../src/library/basesqltablemodel.cpp" line="56"/>
<source>Genre</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/library/basesqltablemodel.cpp" line="57"/>
+ <location filename="../../src/library/basesqltablemodel.cpp" line="58"/>
<source>Composer</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/library/basesqltablemodel.cpp" line="59"/>
+ <location filename="../../src/library/basesqltablemodel.cpp" line="60"/>
<source>Year</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/library/basesqltablemodel.cpp" line="61"/>
+ <location filename="../../src/library/basesqltablemodel.cpp" line="62"/>
<source>Type</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/library/basesqltablemodel.cpp" line="63"/>
+ <location filename="../../src/library/basesqltablemodel.cpp" line="64"/>
<source>Location</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/library/basesqltablemodel.cpp" line="65"/>
+ <location filename="../../src/library/basesqltablemodel.cpp" line="66"/>
<source>Comment</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/library/basesqltablemodel.cpp" line="67"/>
+ <location filename="../../src/library/basesqltablemodel.cpp" line="68"/>
<source>Duration</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/library/basesqltablemodel.cpp" line="69"/>
+ <location filename="../../src/library/basesqltablemodel.cpp" line="70"/>
<source>Rating</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/library/basesqltablemodel.cpp" line="71"/>
+ <location filename="../../src/library/basesqltablemodel.cpp" line="72"/>
<source>Bitrate</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/library/basesqltablemodel.cpp" line="73"/>
+ <location filename="../../src/library/basesqltablemodel.cpp" line="74"/>
<source>BPM</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/library/basesqltablemodel.cpp" line="75"/>
+ <location filename="../../src/library/basesqltablemodel.cpp" line="76"/>
<source>Track #</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/library/basesqltablemodel.cpp" line="77"/>
+ <location filename="../../src/library/basesqltablemodel.cpp" line="78"/>
<source>Date Added</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/library/basesqltablemodel.cpp" line="79"/>
+ <location filename="../../src/library/basesqltablemodel.cpp" line="80"/>
<source>#</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/library/basesqltablemodel.cpp" line="81"/>
+ <location filename="../../src/library/basesqltablemodel.cpp" line="82"/>
<source>Timestamp</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/library/basesqltablemodel.cpp" line="83"/>
+ <location filename="../../src/library/basesqltablemodel.cpp" line="84"/>
<source>Key</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/library/basesqltablemodel.cpp" line="85"/>
+ <location filename="../../src/library/basesqltablemodel.cpp" line="86"/>
<source>BPM Lock</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/library/basesqltablemodel.cpp" line="88"/>
+ <location filename="../../src/library/basesqltablemodel.cpp" line="89"/>
<source>Preview</source>
<translation type="unfinished"></translation>
</message>
@@ -444,27 +444,27 @@
<context>
<name>ControllerEngine</name>
<message>
- <location filename="../../src/controllers/controllerengine.cpp" line="535"/>
+ <location filename="../../src/controllers/controllerengine.cpp" line="529"/>
<source>Uncaught exception at line %1 in file %2: %3</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/controllers/controllerengine.cpp" line="541"/>
+ <location filename="../../src/controllers/controllerengine.cpp" line="535"/>
<source>Uncaught exception at line %1 in passed code: %2</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/controllers/controllerengine.cpp" line="561"/>
+ <location filename="../../src/controllers/controllerengine.cpp" line="555"/>
<source>Controller script error</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/controllers/controllerengine.cpp" line="562"/>
+ <location filename="../../src/controllers/controllerengine.cpp" line="556"/>
<source>A control you just used is not working properly.</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/controllers/controllerengine.cpp" line="563"/>
+ <location filename="../../src/controllers/controllerengine.cpp" line="557"/>
<source><html>(The script code needs to be fixed.)<br>For now, you can:<ul><li>Ignore this error for this session but you may experience erratic behavior</li><li>Try to recover by resetting your controller</li></ul></html></source>
<translation type="unfinished"></translation>
</message>
@@ -568,7 +568,7 @@
</message>
<message>
<location filename="../../src/library/cratefeature.cpp" line="85"/>
- <location filename="../../src/library/cratefeature.cpp" line="562"/>
+ <location filename="../../src/library/cratefeature.cpp" line="559"/>
<source>Crates</source>
<translation type="unfinished"></translation>
</message>
@@ -579,7 +579,7 @@
</message>
<message>
<location filename="../../src/library/cratefeature.cpp" line="48"/>
- <location filename="../../src/library/cratefeature.cpp" line="493"/>
+ <location filename="../../src/library/cratefeature.cpp" line="490"/>
<source>Export Crate</source>
<translation type="unfinished"></translation>
</message>
@@ -630,27 +630,27 @@
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/library/cratefeature.cpp" line="495"/>
+ <location filename="../../src/library/cratefeature.cpp" line="492"/>
<source>M3U Playlist (*.m3u);;M3U8 Playlist (*.m3u8);;PLS Playlist (*.pls);;Text CSV (*.csv);;Readable Text (*.txt)</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/library/cratefeature.cpp" line="563"/>
+ <location filename="../../src/library/cratefeature.cpp" line="560"/>
<source>Crates are a great way to help organize the music you want to DJ with.</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/library/cratefeature.cpp" line="564"/>
+ <location filename="../../src/library/cratefeature.cpp" line="561"/>
<source>Make a crate for your next gig, for your favorite electrohouse tracks, or for your most requested songs.</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/library/cratefeature.cpp" line="565"/>
+ <location filename="../../src/library/cratefeature.cpp" line="562"/>
<source>Crates let you organize your music however you'd like!</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/library/cratefeature.cpp" line="568"/>
+ <location filename="../../src/library/cratefeature.cpp" line="565"/>
<source>Create new crate</source>
<translation type="unfinished"></translation>
</message>
@@ -3880,30 +3880,29 @@
<context>
<name>MidiController</name>
<message>
- <location filename="../../src/controllers/midi/midicontroller.cpp" line="116"/>
- <source>MixxxControl not found</source>
+ <location filename="../../src/controllers/midi/midicontroller.cpp" line="139"/>
+ <source>MixxxControl(s) not found</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/controllers/midi/midicontroller.cpp" line="117"/>
- <source>The MixxxControl '%1, %2' specified in the loaded mapping is invalid.</source>
+ <location filename="../../src/controllers/midi/midicontroller.cpp" line="140"/>
+ <source>One or more MixxxControls specified in the outputs section of the loaded preset were invalid.</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/controllers/midi/midicontroller.cpp" line="120"/>
- <source>The MIDI output message 0x%1 0x%2 will not be bound.
-(Click Show Details for hints.)</source>
+ <location filename="../../src/controllers/midi/midicontroller.cpp" line="142"/>
+ <source>Some LEDs or other feedback may not work correctly.</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/controllers/midi/midicontroller.cpp" line="124"/>
- <source>* Check to see that the MixxxControl name is spelled correctly in the mapping file (.xml)
+ <location filename="../../src/controllers/midi/midicontroller.cpp" line="143"/>
+ <source>* Check to see that the MixxxControl names are spelled correctly in the mapping file (.xml)
</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/controllers/midi/midicontroller.cpp" line="127"/>
- <source>* Make sure the MixxxControl you're trying to use actually exists. Visit this wiki page for a complete list:</source>
+ <location filename="../../src/controllers/midi/midicontroller.cpp" line="146"/>
+ <source>* Make sure the MixxxControls in question actually exist. Visit this wiki page for a complete list: </source>
<translation type="unfinished"></translation>
</message>
</context>
@@ -4298,7 +4297,7 @@
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/mixxx.cpp" line="1809"/>
+ <location filename="../../src/mixxx.cpp" line="1812"/>
<source>A sampler is currently playing. Exit Mixxx?</source>
<translation type="unfinished"></translation>
</message>
@@ -4410,44 +4409,44 @@
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/mixxx.cpp" line="1621"/>
+ <location filename="../../src/mixxx.cpp" line="1624"/>
<source>Error in skin file</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/mixxx.cpp" line="1622"/>
+ <location filename="../../src/mixxx.cpp" line="1625"/>
<source>The selected skin cannot be loaded.</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/mixxx.cpp" line="1757"/>
+ <location filename="../../src/mixxx.cpp" line="1760"/>
<source>OpenGL Direct Rendering</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/mixxx.cpp" line="1758"/>
+ <location filename="../../src/mixxx.cpp" line="1761"/>
<source>Direct rendering is not enabled on your machine.<br><br>This means that the waveform displays will be very<br><b>slow and may tax your CPU heavily</b>. Either update your<br>configuration to enable direct rendering, or disable<br>the waveform displays in the Mixxx preferences by selecting<br>"Empty" as the waveform display in the 'Interface' section.<br><br>NOTE: If you use NVIDIA hardware,<br>direct rendering may not be present, but you should<br>not experience degraded performance.</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/mixxx.cpp" line="1800"/>
- <location filename="../../src/mixxx.cpp" line="1808"/>
- <location filename="../../src/mixxx.cpp" line="1817"/>
+ <location filename="../../src/mixxx.cpp" line="1803"/>
+ <location filename="../../src/mixxx.cpp" line="1811"/>
+ <location filename="../../src/mixxx.cpp" line="1820"/>
<source>Confirm Exit</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/mixxx.cpp" line="1801"/>
+ <location filename="../../src/mixxx.cpp" line="1804"/>
<source>A deck is currently playing. Exit Mixxx?</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/mixxx.cpp" line="1818"/>
+ <location filename="../../src/mixxx.cpp" line="1821"/>
<source>The preferences window is still open.</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/mixxx.cpp" line="1819"/>
+ <location filename="../../src/mixxx.cpp" line="1822"/>
<source>Discard any changes and exit Mixxx?</source>
<translation type="unfinished"></translation>
</message>
@@ -6022,12 +6021,12 @@
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/widget/wtracktableview.cpp" line="485"/>
+ <location filename="../../src/widget/wtracktableview.cpp" line="487"/>
<source>Load to Deck %1</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../../src/widget/wtracktableview.cpp" line="503"/>
+ <location filename="../../src/widget/wtracktableview.cpp" line="506"/>
<source>Sampler %1</source>
<translation type="unfinished"></translation>
</message>
--- mixxx-1.11.0/src/dlgprefrecord.cpp 2013-05-08 16:20:26.000000000 -0700
+++ mixxx-upstream/src/dlgprefrecord.cpp 2013-05-13 08:15:55.212095000 -0700
@@ -98,9 +98,11 @@
else if (format == ENCODING_MP3)
radioMp3->setChecked(true);
#endif
-#ifdef SF_FORMAT_FLAC
else if (format == ENCODING_AIFF)
radioAiff->setChecked(true);
+#ifdef SF_FORMAT_FLAC
+ else if (format == ENCODING_FLAC)
+ radioFlac->setChecked(true);
#endif
else //Invalid, so set default and save
{
@@ -109,6 +111,8 @@
config->set(ConfigKey(RECORDING_PREF_KEY, "Encoding"), ConfigValue(ENCODING_WAVE));
}
+ loadMetaData();
+
//Connections
connect(SliderQuality, SIGNAL(valueChanged(int)), this, SLOT(slotSliderQuality()));
connect(SliderQuality, SIGNAL(sliderMoved(int)), this, SLOT(slotSliderQuality()));
--- mixxx-1.11.0/src/library/autodjfeature.cpp 2013-05-08 16:20:26.000000000 -0700
+++ mixxx-upstream/src/library/autodjfeature.cpp 2013-05-12 15:26:10.683778000 -0700
@@ -88,8 +88,9 @@
trackIds.removeAt(trackId--);
}
}
- m_playlistDao.appendTracksToPlaylist(trackIds, playlistId);
- return true;
+
+ // Return whether the tracks were appended.
+ return m_playlistDao.appendTracksToPlaylist(trackIds, playlistId);
}
bool AutoDJFeature::dragMoveAccept(QUrl url) {
--- mixxx-1.11.0/src/library/baseexternallibraryfeature.cpp 2013-05-08 16:20:26.000000000 -0700
+++ mixxx-upstream/src/library/baseexternallibraryfeature.cpp 2013-05-12 15:26:10.683778000 -0700
@@ -93,6 +93,7 @@
// Start at position 2 because position 1 was already loaded to the deck
playlistDao.insertTrackIntoPlaylist(track->getId(), autoDJId, i+2);
} else {
+ // TODO(XXX): Care whether the append succeeded.
playlistDao.appendTrackToPlaylist(track->getId(), autoDJId);
}
}
@@ -142,6 +143,7 @@
if (index.isValid()) {
qDebug() << pPlaylistModelToAdd->getTrackLocation(index);
TrackPointer track = pPlaylistModelToAdd->getTrack(index);
+ // TODO(XXX): Care whether the append succeeded.
playlistDao.appendTrackToPlaylist(track->getId(), playlistId);
}
}
--- mixxx-1.11.0/src/library/baseplaylistfeature.cpp 2013-05-08 16:20:26.000000000 -0700
+++ mixxx-upstream/src/library/baseplaylistfeature.cpp 2013-05-12 15:26:10.683778000 -0700
@@ -188,9 +188,9 @@
} while (!validNameGiven);
int newPlaylistId = m_playlistDao.createPlaylist(name);
- m_playlistDao.copyPlaylistTracks(oldPlaylistId, newPlaylistId);
- if (newPlaylistId != -1) {
+ if (newPlaylistId != -1 &&
+ m_playlistDao.copyPlaylistTracks(oldPlaylistId, newPlaylistId)) {
emit(showTrackModel(m_pPlaylistTableModel));
}
}
--- mixxx-1.11.0/src/library/basesqltablemodel.cpp 2013-05-08 16:20:26.000000000 -0700
+++ mixxx-upstream/src/library/basesqltablemodel.cpp 2013-05-13 08:15:55.212095000 -0700
@@ -471,7 +471,7 @@
} else if (column == fieldIndex(PLAYLISTTRACKSTABLE_DATETIMEADDED)) {
QDateTime gmtDate = value.toDateTime();
gmtDate.setTimeSpec(Qt::UTC);
- value = gmtDate.toLocalTime().time();
+ value = gmtDate.toLocalTime();
} else if (column == fieldIndex(LIBRARYTABLE_BPM_LOCK)) {
value = value.toBool();
}
--- mixxx-1.11.0/src/library/dao/playlistdao.cpp 2013-05-08 16:20:26.000000000 -0700
+++ mixxx-upstream/src/library/dao/playlistdao.cpp 2013-05-12 15:26:10.683778000 -0700
@@ -177,7 +177,7 @@
return false;
}
-void PlaylistDAO::appendTracksToPlaylist(QList<int> trackIds, int playlistId) {
+bool PlaylistDAO::appendTracksToPlaylist(QList<int> trackIds, int playlistId) {
// qDebug() << "PlaylistDAO::appendTracksToPlaylist"
// << QThread::currentThread() << m_database.connectionName();
@@ -203,6 +203,7 @@
query.bindValue(":position", insertPosition++);
if (!query.exec()) {
LOG_FAILED_QUERY(query);
+ return false;
}
}
@@ -215,12 +216,13 @@
emit(trackAdded(playlistId, trackId, insertPosition++));
}
emit(changed(playlistId));
+ return true;
}
-void PlaylistDAO::appendTrackToPlaylist(int trackId, int playlistId) {
+bool PlaylistDAO::appendTrackToPlaylist(int trackId, int playlistId) {
QList<int> tracks;
tracks.append(trackId);
- appendTracksToPlaylist(tracks, playlistId);
+ return appendTracksToPlaylist(tracks, playlistId);
}
/** Find out how many playlists exist. */
@@ -523,6 +525,7 @@
if (bTop) {
insertTracksIntoPlaylist(ids, autoDJId, 2);
} else {
+ // TODO(XXX): Care whether the append succeeded.
appendTracksToPlaylist(ids, autoDJId);
}
}
@@ -549,23 +552,59 @@
return previousPlaylistId;
}
-void PlaylistDAO::copyPlaylistTracks(int sourcePlaylistID, int targetPlaylistId) {
- // Query Tracks from the source Playlist
- QSqlQuery query(m_database);
- query.prepare("SELECT track_id FROM PlaylistTracks "
- "WHERE playlist_id = :plid");
- query.bindValue(":plid", sourcePlaylistID);
+bool PlaylistDAO::copyPlaylistTracks(int sourcePlaylistID, int targetPlaylistID) {
+ // Start the transaction
+ ScopedTransaction transaction(m_database);
+
+ // Copy the new tracks after the last track in the target playlist.
+ int positionOffset = getMaxPosition(targetPlaylistID);
+
+ // Copy the tracks from one playlist to another, adjusting the position of
+ // each copied track, and preserving the date/time added.
+ // INSERT INTO PlaylistTracks (playlist_id, track_id, position, pl_datetime_added) SELECT :target_plid, track_id, position + :position_offset, pl_datetime_added FROM PlaylistTracks WHERE playlist_id = :source_plid;
+ QSqlQuery query(m_database);
+ query.prepare(QString("INSERT INTO " PLAYLIST_TRACKS_TABLE
+ " (%1, %2, %3, %4) SELECT :target_plid, %2, "
+ "%3 + :position_offset, %4 FROM " PLAYLIST_TRACKS_TABLE
+ " WHERE %1 = :source_plid")
+ .arg(PLAYLISTTRACKSTABLE_PLAYLISTID) // %1
+ .arg(PLAYLISTTRACKSTABLE_TRACKID) // %2
+ .arg(PLAYLISTTRACKSTABLE_POSITION) // %3
+ .arg(PLAYLISTTRACKSTABLE_DATETIMEADDED)); // %4
+ query.bindValue(":position_offset", positionOffset);
+ query.bindValue(":source_plid", sourcePlaylistID);
+ query.bindValue(":target_plid", targetPlaylistID);
if (!query.exec()) {
LOG_FAILED_QUERY(query);
- return;
+ return false;
}
- QList<int> trackIds;
+ // Query each added track and its new position.
+ // SELECT track_id, position FROM PlaylistTracks WHERE playlist_id = :target_plid AND position > :position_offset;
+ query.prepare(QString("SELECT %2, %3 FROM " PLAYLIST_TRACKS_TABLE
+ " WHERE %1 = :target_plid AND %3 > :position_offset")
+ .arg(PLAYLISTTRACKSTABLE_PLAYLISTID) // %1
+ .arg(PLAYLISTTRACKSTABLE_TRACKID) // %2
+ .arg(PLAYLISTTRACKSTABLE_POSITION)); // %3
+ query.bindValue(":target_plid", targetPlaylistID);
+ query.bindValue(":position_offset", positionOffset);
+ if (!query.exec()) {
+ LOG_FAILED_QUERY(query);
+ return false;
+ }
+
+ // Commit the transaction
+ transaction.commit();
+
+ // Let subscribers know about each added track.
while (query.next()) {
- trackIds.append(query.value(0).toInt());
+ int copiedTrackId = query.value(0).toInt();
+ int copiedPosition = query.value(1).toInt();
+ emit(trackAdded(targetPlaylistID, copiedTrackId, copiedPosition));
}
- appendTracksToPlaylist(trackIds, targetPlaylistId);
+ emit(changed(targetPlaylistID));
+ return true;
}
int PlaylistDAO::getMaxPosition(int playlistId) {
--- mixxx-1.11.0/src/library/dao/playlistdao.h 2013-05-08 16:20:26.000000000 -0700
+++ mixxx-upstream/src/library/dao/playlistdao.h 2013-05-12 15:26:10.683778000 -0700
@@ -44,9 +44,9 @@
// Find out the state of a playlist lock
bool isPlaylistLocked(int playlistId);
// Append a list of tracks to a playlist
- void appendTracksToPlaylist(QList<int> trackIds, int playlistId);
+ bool appendTracksToPlaylist(QList<int> trackIds, int playlistId);
// Append a track to a playlist
- void appendTrackToPlaylist(int trackId, int playlistId);
+ bool appendTrackToPlaylist(int trackId, int playlistId);
// Find out how many playlists exist.
unsigned int playlistCount();
// Find out the name of the playlist at the given Id
@@ -79,7 +79,7 @@
// hidden. Returns -1 if no such playlist exists.
int getPreviousPlaylist(int currentPlaylistId, HiddenType hidden);
// Append all the tracks in the source playlist to the target playlist.
- void copyPlaylistTracks(int sourcePlaylistID, int targetPlaylistId);
+ bool copyPlaylistTracks(int sourcePlaylistID, int targetPlaylistID);
// Returns the number of tracks in the given playlist.
int tracksInPlaylist(int playlistId);
signals:
--- mixxx-1.11.0/src/library/legacylibraryimporter.cpp 2013-05-08 16:20:26.000000000 -0700
+++ mixxx-upstream/src/library/legacylibraryimporter.cpp 2013-05-12 15:26:10.683778000 -0700
@@ -171,7 +171,8 @@
int dbTrackId = m_trackDao.getTrackId(trackLocation);
if (dbTrackId >= 0) {
- //Add it to the database's playlist.
+ // Add it to the database's playlist.
+ // TODO(XXX): Care if the append succeeded.
m_playlistDao.appendTrackToPlaylist(dbTrackId, playlistId);
}
}
--- mixxx-1.11.0/src/library/playlistfeature.cpp 2013-05-08 16:20:26.000000000 -0700
+++ mixxx-upstream/src/library/playlistfeature.cpp 2013-05-12 15:26:10.683778000 -0700
@@ -117,10 +117,8 @@
}
}
- // appendTracksToPlaylist doesn't return whether it succeeded, so assume it
- // did.
- m_playlistDao.appendTracksToPlaylist(trackIds, playlistId);
- return true;
+ // Return whether appendTracksToPlaylist succeeded.
+ return m_playlistDao.appendTracksToPlaylist(trackIds, playlistId);
}
bool PlaylistFeature::dragMoveAcceptChild(const QModelIndex& index, QUrl url) {
--- mixxx-1.11.0/src/library/playlisttablemodel.cpp 2013-05-08 16:20:26.000000000 -0700
+++ mixxx-upstream/src/library/playlisttablemodel.cpp 2013-05-12 15:26:10.683778000 -0700
@@ -109,10 +109,10 @@
return false;
}
- m_playlistDao.appendTrackToPlaylist(trackId, m_iPlaylistId);
+ bool bSuccess = m_playlistDao.appendTrackToPlaylist(trackId, m_iPlaylistId);
select(); //Repopulate the data model.
- return true;
+ return bSuccess;
}
int PlaylistTableModel::addTracks(const QModelIndex& index, QList<QString> locations) {
--- mixxx-1.11.0/src/library/setlogfeature.cpp 2013-05-08 16:20:26.000000000 -0700
+++ mixxx-upstream/src/library/setlogfeature.cpp 2013-05-12 15:26:10.683778000 -0700
@@ -202,10 +202,11 @@
m_playlistId = previousPlaylistId;
}
qDebug() << "slotJoinWithPrevious() current:" << currentPlaylistId << " previous:" << previousPlaylistId;
- m_playlistDao.copyPlaylistTracks(currentPlaylistId, previousPlaylistId);
- m_playlistDao.deletePlaylist(currentPlaylistId);
- slotPlaylistTableChanged(previousPlaylistId); // For moving selection
- emit(showTrackModel(m_pPlaylistTableModel));
+ if (m_playlistDao.copyPlaylistTracks(currentPlaylistId, previousPlaylistId)) {
+ m_playlistDao.deletePlaylist(currentPlaylistId);
+ slotPlaylistTableChanged(previousPlaylistId); // For moving selection
+ emit(showTrackModel(m_pPlaylistTableModel));
+ }
}
}
}
@@ -255,6 +256,7 @@
// View needs a refresh
m_pPlaylistTableModel->appendTrack(currentPlayingTrackId);
} else {
+ // TODO(XXX): Care whether the append succeeded.
m_playlistDao.appendTrackToPlaylist(currentPlayingTrackId,
m_playlistId);
}
--- mixxx-1.11.0/src/recording/enginerecord.cpp 2013-05-08 16:20:26.000000000 -0700
+++ mixxx-upstream/src/recording/enginerecord.cpp 2013-05-13 08:15:55.212095000 -0700
@@ -38,6 +38,8 @@
* *
***************************************************************************/
+const int kMetaDataLifeTimeout = 16;
+
EngineRecord::EngineRecord(ConfigObject<ConfigValue> * _config)
{
m_config = _config;
@@ -124,15 +126,13 @@
*/
bool EngineRecord::metaDataHasChanged()
{
- TrackPointer pTrack;
-
- if ( m_iMetaDataLife < 16 ) {
+ if (m_iMetaDataLife < kMetaDataLifeTimeout) {
m_iMetaDataLife++;
return false;
}
m_iMetaDataLife = 0;
- pTrack = PlayerInfo::Instance().getCurrentPlayingTrack();
+ TrackPointer pTrack = PlayerInfo::Instance().getCurrentPlayingTrack();
if ( !pTrack )
return false;
@@ -173,6 +173,10 @@
m_recReady->slotSet(RECORD_ON);
emit(isRecording(true)); //will notify the RecordingManager
+ // Since we just started recording, timeout and clear the metadata.
+ m_iMetaDataLife = kMetaDataLifeTimeout;
+ m_pCurrentTrack = TrackPointer();
+
if (m_bCueIsEnabled) {
openCueFile();
m_cuesamplepos = 0;
@@ -210,6 +214,10 @@
}
void EngineRecord::writeCueLine() {
+ if (!m_pCurrentTrack) {
+ return;
+ }
+
// account for multiple channels
unsigned long samplerate = m_samplerate->get() * 2;
// CDDA is specified as having 75 frames a second
@@ -228,9 +236,9 @@
.toLatin1()
);
- m_cuefile.write(QString(" TITLE %1\n")
+ m_cuefile.write(QString(" TITLE \"%1\"\n")
.arg(m_pCurrentTrack->getTitle()).toLatin1());
- m_cuefile.write(QString(" PERFORMER %1\n")
+ m_cuefile.write(QString(" PERFORMER \"%1\"\n")
.arg(m_pCurrentTrack->getArtist()).toLatin1());
// Woefully inaccurate (at the seconds level anyways).
--- mixxx-1.11.0/src/widget/wtracktableview.cpp 2013-05-08 16:20:26.000000000 -0700
+++ mixxx-upstream/src/widget/wtracktableview.cpp 2013-05-12 15:26:10.683778000 -0700
@@ -1025,6 +1025,7 @@
playlistDao.insertTracksIntoPlaylist(trackIds,
iAutoDJPlaylistId, 2);
} else {
+ // TODO(XXX): Care whether the append succeeded.
playlistDao.appendTracksToPlaylist(
trackIds, iAutoDJPlaylistId);
}
@@ -1089,6 +1090,7 @@
}
}
if (trackIds.size() > 0) {
+ // TODO(XXX): Care whether the append succeeded.
playlistDao.appendTracksToPlaylist(trackIds, iPlaylistId);
}
}
--- mixxx-1.11.0/vamp-plugins/SConscript 2013-05-08 16:20:26.000000000 -0700
+++ mixxx-upstream/vamp-plugins/SConscript 2013-05-17 07:46:13.646439000 -0700
@@ -51,7 +51,7 @@
if not conf.CheckLib('vamp-sdk'):
INTERNAL_VAMP_PATH = '#lib/vamp-2.3'
# For header includes
- build.env.Append(CPPPATH=[INTERNAL_VAMP_PATH])
+ env.Append(CPPPATH=[INTERNAL_VAMP_PATH])
sdk_src_path = '%s/src/vamp-sdk' % INTERNAL_VAMP_PATH
mixxxminimal_sources.extend(path % sdk_src_path for path in
['%s/PluginAdapter.cpp',
Index: .cvsignore
===================================================================
RCS file: /cvs/free/rpms/mixxx/F-18/.cvsignore,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -r1.10 -r1.11
--- .cvsignore 4 Feb 2013 20:38:12 -0000 1.10
+++ .cvsignore 23 May 2013 01:12:44 -0000 1.11
@@ -1 +1,2 @@
-mixxx-1.10.1-src.tar.gz
+mixxx-1.11.0-20130517bzr.tar.bz2
+mixxx-1.11.0-src.tar.gz
Index: mixxx.spec
===================================================================
RCS file: /cvs/free/rpms/mixxx/F-18/mixxx.spec,v
retrieving revision 1.14
retrieving revision 1.15
diff -u -r1.14 -r1.15
--- mixxx.spec 4 Feb 2013 20:38:12 -0000 1.14
+++ mixxx.spec 23 May 2013 01:12:44 -0000 1.15
@@ -1,17 +1,17 @@
-%global _with_bpm 1
-%global _with_libgpod 1
-
Name: mixxx
-Version: 1.10.1
+Version: 1.11.0
Release: 1%{?dist}
Summary: Mixxx is open source software for DJ'ing
Group: Applications/Multimedia
License: GPLv2+
URL: http://www.mixxx.org
-Source0: http://downloads.mixxx.org/mixxx-%{version}/mixxx-%{version}-src.tar.gz
-Patch0: mixxx-1.9.2-norpath.patch
-Patch1: mixxx-1.10.0-gcc47.patch
+Source0: http://downloads.mixxx.org/mixxx-%{version}/%{name}-%{version}-src.tar.gz
+Patch0: %{name}-%{version}-20130517bzr.patch
+# Updated manual...build it yourself with:
+# 1) bzr checkout lp:~mixxxdevelopers/mixxx/manual-1.11.x
+# 2) cd manual-1.11.x; make html; make latexpdf; make latexpdf
+Source1: %{name}-%{version}-20130517bzr.tar.bz2
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
#Build tools
@@ -29,14 +29,15 @@
BuildRequires: libmad-devel
BuildRequires: libmp4v2-devel
BuildRequires: libsndfile-devel
+BuildRequires: libusb1-devel
BuildRequires: libvorbis-devel
BuildRequires: portaudio-devel
BuildRequires: portmidi-devel
+BuildRequires: protobuf-devel
BuildRequires: taglib-devel
BuildRequires: flac-devel
#Optionals Requirements
-BuildRequires: ffmpeg-devel
BuildRequires: libshout-devel
#BuildRequires: python-devel
#BuildRequires: lua-devel, tolua++-devel
@@ -59,8 +60,19 @@
%prep
%setup -q
-%patch0 -p1 -b .norpath
-%patch1 -p1 -b .gcc47
+%patch0 -p1
+%setup -T -D -a 1
+
+# Fix file permissions. (Already fixed upstream.)
+chmod -x \
+ "res/controllers/Vestax VCI-300.midi.xml" \
+ "res/controllers/Vestax-VCI-300-scripts.js" \
+ "res/skins/Outline1024x600-Netbook/CHANGELOG.txt" \
+ "res/skins/Outline1024x600-Netbook/skin.xml" \
+ "res/skins/Outline1024x768-XGA/CHANGELOG.txt" \
+ "res/skins/Outline1024x768-XGA/skin.xml" \
+ "res/skins/Outline800x480-WVGA/skin.xml"
+
%build
@@ -73,6 +85,7 @@
shoutcast=1 hifieq=1 script=0 optimize=0 \
+
%install
rm -rf $RPM_BUILD_ROOT
@@ -80,6 +93,7 @@
export CXXFLAGS=$RPM_OPT_FLAGS
scons %{?_smp_mflags} \
install_root=$RPM_BUILD_ROOT%{_prefix} \
+ qtdir=%{_qt4_prefix} \
prefix=%{_prefix} install
desktop-file-install --vendor "" \
@@ -101,12 +115,13 @@
%doc Mixxx-Manual.pdf
%{_bindir}/%{name}
%{_datadir}/%{name}/
+%{_libdir}/%{name}/plugins/vamp/libmixxxminimal.so
%{_datadir}/applications/mixxx.desktop
%{_datadir}/pixmaps/mixxx-icon.png
%changelog
-* Wed Jul 11 2012 Nicolas Chauvet <kwizart(a)gmail.com> - 1.10.1-1
-- Update to 1.10.1
+* Fri May 17 2013 Steven Boswell <ulatekh(a)yahoo.com> - 1.11.0-1
+- Update to 1.11.0
* Thu May 03 2012 Nicolas Chauvet <kwizart(a)gmail.com> - 1.10.0-1
- Update to 1.10.0
Index: sources
===================================================================
RCS file: /cvs/free/rpms/mixxx/F-18/sources,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -r1.10 -r1.11
--- sources 4 Feb 2013 20:38:12 -0000 1.10
+++ sources 23 May 2013 01:12:44 -0000 1.11
@@ -1 +1,2 @@
-765bc5216ec8102c2186dd3ea80187a9 mixxx-1.10.1-src.tar.gz
+021072cebcac0cbe2e0f0ea57554c4e5 mixxx-1.11.0-20130517bzr.tar.bz2
+89ee8ba60824919d8dd1194287bda259 mixxx-1.11.0-src.tar.gz
--- mixxx-1.10.0-gcc47.patch DELETED ---
--- mixxx-1.9.2-norpath.patch DELETED ---
11 years, 6 months
rpms/subtitleripper/F-18 .cvsignore, 1.3, 1.4 Makefile.patch, NONE, 1.1 binutils-gold.patch, NONE, 1.1 pgm2txt.patch, NONE, 1.1 sources, 1.3, 1.4 subtitleripper.spec, 1.8, 1.9 dead.package, 1.1, NONE
by Rahul Sundaram
Author: sundaram
Update of /cvs/free/rpms/subtitleripper/F-18
In directory old02.ovh.rpmfusion.lan:/tmp/cvs-serv20484
Added Files:
.cvsignore Makefile.patch binutils-gold.patch pgm2txt.patch
sources subtitleripper.spec
Removed Files:
dead.package
Log Message:
initial
Index: .cvsignore
===================================================================
RCS file: .cvsignore
diff -N .cvsignore
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ .cvsignore 22 May 2013 23:08:59 -0000 1.4
@@ -0,0 +1 @@
+subtitleripper-0.3-4.tgz
Makefile.patch:
Makefile | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
--- NEW FILE Makefile.patch ---
--- subtitleripper-0.3.4/Makefile.orig 2013-03-03 03:00:35.598130743 -0500
+++ subtitleripper-0.3.4/Makefile 2013-03-03 03:03:16.889727156 -0500
@@ -9,7 +9,12 @@
### enable ppm support ###
DEFINES += -D_HAVE_LIB_PPM_
-LIBS += -lppm
+LIBS += -lnetpbm
+INCLUDES += -I/usr/include/netpbm
+
+
+### getline is defined for us
+DEFINES += -DHAVE_GETLINE
### enable PNG support ###
DEFINES += -D_HAVE_PNG_
binutils-gold.patch:
Makefile | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
--- NEW FILE binutils-gold.patch ---
diff -urNad subtitleripper-0.3.4~/Makefile subtitleripper-0.3.4/Makefile
--- subtitleripper-0.3.4~/Makefile 2011-02-17 20:51:42.183047389 +0700
+++ subtitleripper-0.3.4/Makefile 2011-02-17 20:52:02.291199592 +0700
@@ -73,19 +73,19 @@
# Target
subtitle2pgm: subtitle2pgm.o spudec.o
@echo "Linking $@"
- @$(CC) $(LIBS) $^ -o $@
+ @$(CC) $^ -o $@ $(LIBS)
subtitle2vobsub: subtitle2vobsub.o vobsub.o
@echo "Linking $@"
- @$(CC) $(LIBS) $^ -o $@
+ @$(CC) $^ -o $@ $(LIBS)
srttool: srttool.o
@echo "Linking $@"
- @$(CC) $(LIBS) -g $^ -o $@
+ @$(CC) -g $^ -o $@ $(LIBS)
vobsub2pgm: vobsub2pgm.o vobsub.o spudec.o
@echo "Linking $@"
- @$(CC) $(LIBS) -g $^ -o $@
+ @$(CC) -g $^ -o $@ $(LIBS)
.PHONY: clean dist rpm
clean:
pgm2txt.patch:
pgm2txt | 14 +++++++-------
1 file changed, 7 insertions(+), 7 deletions(-)
--- NEW FILE pgm2txt.patch ---
--- subtitleripper-0.3.4.orig/pgm2txt 2004-11-18 13:59:04.000000000 +0100
+++ subtitleripper-0.3.4/pgm2txt 2004-11-18 14:00:25.000000000 +0100
@@ -16,7 +16,7 @@
# Adjust this path to where the files
# gocrfilter_en.sed gocrfilter_fr.sed gocrfilter_none.sed
# are located
-PATH_TO_LANGUAGE_FILTER=~/sourceforge/subtitleripper/src/
+PATH_TO_LANGUAGE_FILTER=/usr/share/subtitleripper
# set your options for gocr. Please read the gocr
# docs to find out more about this
@@ -35,8 +35,8 @@
# Choose your favorite image viewer if you want to see
# the current pgm image while gocr is running.
# Enable the viewer with -v command line option.
-IMAGE_VIWER=xv
-IMAGE_VIEWER_OPTIONS=-q
+IMAGE_VIEWER=display
+IMAGE_VIEWER_OPTIONS=
###### End of configuration section #########
@@ -108,8 +108,8 @@
shift $(($OPTIND - 1))
PGM_BASE_NAME=$1
-if [ -f ${PATH_TO_LANGUAGE_FILTER}gocrfilter_${LANGUAGE}.sed ]; then
- FILTER_SCRIPT=${PATH_TO_LANGUAGE_FILTER}gocrfilter_${LANGUAGE}.sed
+if [ -f ${PATH_TO_LANGUAGE_FILTER}/gocrfilter_${LANGUAGE}.sed ]; then
+ FILTER_SCRIPT=${PATH_TO_LANGUAGE_FILTER}/gocrfilter_${LANGUAGE}.sed
echo "Using ${FILTER_SCRIPT} to filter gocr output"
else
echo " ------------------------------------------------"
@@ -153,7 +153,7 @@
echo "Converting $i into text"
if [ ! "$DISPLAY_PGM" = "false" ]; then
- ${IMAGE_VIWER} ${IMAGE_VIEWER_OPTIONS} $i &
+ ${IMAGE_VIEWER} ${IMAGE_VIEWER_OPTIONS} $i &
fi
if [ "none" = "${LANGUAGE}" ]; then
gocr ${GOCR_OPTIONS} -p ${DB_PATH} $i > $i.txt
@@ -163,7 +163,7 @@
# close the viewer
if [ ! "$DISPLAY_PGM" = "false" ]; then
- killall ${IMAGE_VIWER}
+ killall ${IMAGE_VIEWER}
fi
done
Index: sources
===================================================================
RCS file: sources
diff -N sources
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ sources 22 May 2013 23:09:00 -0000 1.4
@@ -0,0 +1 @@
+c0bd49a88f667c68c4430ad25bbed510 subtitleripper-0.3-4.tgz
Index: subtitleripper.spec
===================================================================
RCS file: subtitleripper.spec
diff -N subtitleripper.spec
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ subtitleripper.spec 22 May 2013 23:09:00 -0000 1.9
@@ -0,0 +1,83 @@
+Summary: Command line tool to rip DVD subtitles
+Name: subtitleripper
+Version: 0.3
+Release: 7%{?dist}
+License: GPLv2+
+Group: Applications/Multimedia
+URL: http://subtitleripper.sourceforge.net/
+Source0: http://switch.dl.sourceforge.net/sourceforge/subtitleripper/%{name}-%{ver...
+Patch0: pgm2txt.patch
+Patch1: Makefile.patch
+Patch2: binutils-gold.patch
+BuildRequires: netpbm-devel zlib-devel libpng-devel
+Requires: gocr transcode
+
+%description
+Converts DVD subtitles into text format (e.g. subrip format) or VobSub
+format. Based on transcode.
+
+%prep
+%setup -q -n %{name}
+%patch0 -p1 -b .patch0
+%patch1 -p1 -b .patch1
+%patch2 -p1 -b .patch2
+
+%build
+CFLAGS="$RPM_OPT_FLAGS" make
+
+%install
+mkdir -p $RPM_BUILD_ROOT/%{_bindir}
+for i in pgm2txt srttool subtitle2pgm subtitle2vobsub vobsub2pgm
+do
+ install -m 0755 $i $RPM_BUILD_ROOT/%{_bindir}
+done
+
+install -d -m 755 $RPM_BUILD_ROOT%{_datadir}/subtitleripper
+install -m 644 *.sed $RPM_BUILD_ROOT%{_datadir}/subtitleripper
+
+%files
+%doc ChangeLog README*
+%{_bindir}/pgm2txt
+%{_bindir}/srttool
+%{_bindir}/subtitle2pgm
+%{_bindir}/subtitle2vobsub
+%{_bindir}/vobsub2pgm
+%{_datadir}/%{name}
+
+%changelog
+* Sun Mar 03 2013 Rahul Sundaram <sundaram(a)fedoraproject.org> - 0.3-7
+- included and modified some patches from Debian/Ubuntu and Gentoo
+- re-enable png support
+- included .sed files for gocr
+- included vobsub2pgm binary
+- added requires on gocr and transcode
+- cleanup spec to follow current Fedora guidelines
+
+* Tue Aug 19 2008 Thorsten Leemhuis <fedora [AT] leemhuis [DOT] info - 0.3-6
+- added _default_patch_fuzz define
+
+* Sun Aug 03 2008 Thorsten Leemhuis <fedora [AT] leemhuis [DOT] info - 0.3-5
+- rebuild
+
+* Thu Mar 09 2006 Andreas Bierfert <andreas.bierfert[AT]lowlatency.de>
+- switch to new release field
+- drop Epoch
+
+* Wed Sep 21 2005 Thorsten Leemhuis <fedora[AT]leemhuis.info> 0:0.3-0.lvn.4
+- Drop BR libpng, too
+
+* Sat Sep 10 2005 Thorsten Leemhuis <fedora[AT]leemhuis.info> 0:0.3-0.lvn.3
+- Disable png-support for now cause it does not compile on FC4
+
+* Mon Jun 28 2004 Dams <anvil[AT]livna.org> 0:0.3-0.lvn.2.4
+- BuildReq libpng-devel
+- Fix for libnetpbm on FC2
+
+* Mon Jun 28 2004 Dams <anvil[AT]livna.org> 0:0.3.4-0.lvn.1
+- Updated to 0.3-4
+
+* Wed May 14 2003 Dams <anvil[AT]livna.org> 0:0.3-0.fdr.2
+- Added missing zlib-devel BuildRequires
+
+* Sat May 10 2003 Dams <anvil[AT]livna.org>
+- Initial build.
--- dead.package DELETED ---
11 years, 6 months
rpms/subtitleripper/F-19 .cvsignore, 1.3, 1.4 Makefile.patch, NONE, 1.1 binutils-gold.patch, NONE, 1.1 pgm2txt.patch, NONE, 1.1 sources, 1.3, 1.4 subtitleripper.spec, 1.8, 1.9 dead.package, 1.1, NONE
by Rahul Sundaram
Author: sundaram
Update of /cvs/free/rpms/subtitleripper/F-19
In directory old02.ovh.rpmfusion.lan:/tmp/cvs-serv20119
Added Files:
.cvsignore Makefile.patch binutils-gold.patch pgm2txt.patch
sources subtitleripper.spec
Removed Files:
dead.package
Log Message:
initial
Index: .cvsignore
===================================================================
RCS file: .cvsignore
diff -N .cvsignore
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ .cvsignore 22 May 2013 23:05:49 -0000 1.4
@@ -0,0 +1 @@
+subtitleripper-0.3-4.tgz
Makefile.patch:
Makefile | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
--- NEW FILE Makefile.patch ---
--- subtitleripper-0.3.4/Makefile.orig 2013-03-03 03:00:35.598130743 -0500
+++ subtitleripper-0.3.4/Makefile 2013-03-03 03:03:16.889727156 -0500
@@ -9,7 +9,12 @@
### enable ppm support ###
DEFINES += -D_HAVE_LIB_PPM_
-LIBS += -lppm
+LIBS += -lnetpbm
+INCLUDES += -I/usr/include/netpbm
+
+
+### getline is defined for us
+DEFINES += -DHAVE_GETLINE
### enable PNG support ###
DEFINES += -D_HAVE_PNG_
binutils-gold.patch:
Makefile | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
--- NEW FILE binutils-gold.patch ---
diff -urNad subtitleripper-0.3.4~/Makefile subtitleripper-0.3.4/Makefile
--- subtitleripper-0.3.4~/Makefile 2011-02-17 20:51:42.183047389 +0700
+++ subtitleripper-0.3.4/Makefile 2011-02-17 20:52:02.291199592 +0700
@@ -73,19 +73,19 @@
# Target
subtitle2pgm: subtitle2pgm.o spudec.o
@echo "Linking $@"
- @$(CC) $(LIBS) $^ -o $@
+ @$(CC) $^ -o $@ $(LIBS)
subtitle2vobsub: subtitle2vobsub.o vobsub.o
@echo "Linking $@"
- @$(CC) $(LIBS) $^ -o $@
+ @$(CC) $^ -o $@ $(LIBS)
srttool: srttool.o
@echo "Linking $@"
- @$(CC) $(LIBS) -g $^ -o $@
+ @$(CC) -g $^ -o $@ $(LIBS)
vobsub2pgm: vobsub2pgm.o vobsub.o spudec.o
@echo "Linking $@"
- @$(CC) $(LIBS) -g $^ -o $@
+ @$(CC) -g $^ -o $@ $(LIBS)
.PHONY: clean dist rpm
clean:
pgm2txt.patch:
pgm2txt | 14 +++++++-------
1 file changed, 7 insertions(+), 7 deletions(-)
--- NEW FILE pgm2txt.patch ---
--- subtitleripper-0.3.4.orig/pgm2txt 2004-11-18 13:59:04.000000000 +0100
+++ subtitleripper-0.3.4/pgm2txt 2004-11-18 14:00:25.000000000 +0100
@@ -16,7 +16,7 @@
# Adjust this path to where the files
# gocrfilter_en.sed gocrfilter_fr.sed gocrfilter_none.sed
# are located
-PATH_TO_LANGUAGE_FILTER=~/sourceforge/subtitleripper/src/
+PATH_TO_LANGUAGE_FILTER=/usr/share/subtitleripper
# set your options for gocr. Please read the gocr
# docs to find out more about this
@@ -35,8 +35,8 @@
# Choose your favorite image viewer if you want to see
# the current pgm image while gocr is running.
# Enable the viewer with -v command line option.
-IMAGE_VIWER=xv
-IMAGE_VIEWER_OPTIONS=-q
+IMAGE_VIEWER=display
+IMAGE_VIEWER_OPTIONS=
###### End of configuration section #########
@@ -108,8 +108,8 @@
shift $(($OPTIND - 1))
PGM_BASE_NAME=$1
-if [ -f ${PATH_TO_LANGUAGE_FILTER}gocrfilter_${LANGUAGE}.sed ]; then
- FILTER_SCRIPT=${PATH_TO_LANGUAGE_FILTER}gocrfilter_${LANGUAGE}.sed
+if [ -f ${PATH_TO_LANGUAGE_FILTER}/gocrfilter_${LANGUAGE}.sed ]; then
+ FILTER_SCRIPT=${PATH_TO_LANGUAGE_FILTER}/gocrfilter_${LANGUAGE}.sed
echo "Using ${FILTER_SCRIPT} to filter gocr output"
else
echo " ------------------------------------------------"
@@ -153,7 +153,7 @@
echo "Converting $i into text"
if [ ! "$DISPLAY_PGM" = "false" ]; then
- ${IMAGE_VIWER} ${IMAGE_VIEWER_OPTIONS} $i &
+ ${IMAGE_VIEWER} ${IMAGE_VIEWER_OPTIONS} $i &
fi
if [ "none" = "${LANGUAGE}" ]; then
gocr ${GOCR_OPTIONS} -p ${DB_PATH} $i > $i.txt
@@ -163,7 +163,7 @@
# close the viewer
if [ ! "$DISPLAY_PGM" = "false" ]; then
- killall ${IMAGE_VIWER}
+ killall ${IMAGE_VIEWER}
fi
done
Index: sources
===================================================================
RCS file: sources
diff -N sources
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ sources 22 May 2013 23:05:49 -0000 1.4
@@ -0,0 +1 @@
+c0bd49a88f667c68c4430ad25bbed510 subtitleripper-0.3-4.tgz
Index: subtitleripper.spec
===================================================================
RCS file: subtitleripper.spec
diff -N subtitleripper.spec
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ subtitleripper.spec 22 May 2013 23:05:49 -0000 1.9
@@ -0,0 +1,83 @@
+Summary: Command line tool to rip DVD subtitles
+Name: subtitleripper
+Version: 0.3
+Release: 7%{?dist}
+License: GPLv2+
+Group: Applications/Multimedia
+URL: http://subtitleripper.sourceforge.net/
+Source0: http://switch.dl.sourceforge.net/sourceforge/subtitleripper/%{name}-%{ver...
+Patch0: pgm2txt.patch
+Patch1: Makefile.patch
+Patch2: binutils-gold.patch
+BuildRequires: netpbm-devel zlib-devel libpng-devel
+Requires: gocr transcode
+
+%description
+Converts DVD subtitles into text format (e.g. subrip format) or VobSub
+format. Based on transcode.
+
+%prep
+%setup -q -n %{name}
+%patch0 -p1 -b .patch0
+%patch1 -p1 -b .patch1
+%patch2 -p1 -b .patch2
+
+%build
+CFLAGS="$RPM_OPT_FLAGS" make
+
+%install
+mkdir -p $RPM_BUILD_ROOT/%{_bindir}
+for i in pgm2txt srttool subtitle2pgm subtitle2vobsub vobsub2pgm
+do
+ install -m 0755 $i $RPM_BUILD_ROOT/%{_bindir}
+done
+
+install -d -m 755 $RPM_BUILD_ROOT%{_datadir}/subtitleripper
+install -m 644 *.sed $RPM_BUILD_ROOT%{_datadir}/subtitleripper
+
+%files
+%doc ChangeLog README*
+%{_bindir}/pgm2txt
+%{_bindir}/srttool
+%{_bindir}/subtitle2pgm
+%{_bindir}/subtitle2vobsub
+%{_bindir}/vobsub2pgm
+%{_datadir}/%{name}
+
+%changelog
+* Sun Mar 03 2013 Rahul Sundaram <sundaram(a)fedoraproject.org> - 0.3-7
+- included and modified some patches from Debian/Ubuntu and Gentoo
+- re-enable png support
+- included .sed files for gocr
+- included vobsub2pgm binary
+- added requires on gocr and transcode
+- cleanup spec to follow current Fedora guidelines
+
+* Tue Aug 19 2008 Thorsten Leemhuis <fedora [AT] leemhuis [DOT] info - 0.3-6
+- added _default_patch_fuzz define
+
+* Sun Aug 03 2008 Thorsten Leemhuis <fedora [AT] leemhuis [DOT] info - 0.3-5
+- rebuild
+
+* Thu Mar 09 2006 Andreas Bierfert <andreas.bierfert[AT]lowlatency.de>
+- switch to new release field
+- drop Epoch
+
+* Wed Sep 21 2005 Thorsten Leemhuis <fedora[AT]leemhuis.info> 0:0.3-0.lvn.4
+- Drop BR libpng, too
+
+* Sat Sep 10 2005 Thorsten Leemhuis <fedora[AT]leemhuis.info> 0:0.3-0.lvn.3
+- Disable png-support for now cause it does not compile on FC4
+
+* Mon Jun 28 2004 Dams <anvil[AT]livna.org> 0:0.3-0.lvn.2.4
+- BuildReq libpng-devel
+- Fix for libnetpbm on FC2
+
+* Mon Jun 28 2004 Dams <anvil[AT]livna.org> 0:0.3.4-0.lvn.1
+- Updated to 0.3-4
+
+* Wed May 14 2003 Dams <anvil[AT]livna.org> 0:0.3-0.fdr.2
+- Added missing zlib-devel BuildRequires
+
+* Sat May 10 2003 Dams <anvil[AT]livna.org>
+- Initial build.
--- dead.package DELETED ---
11 years, 6 months
rpms/subtitleripper/devel subtitleripper.spec,1.8,1.9
by Rahul Sundaram
Author: sundaram
Update of /cvs/free/rpms/subtitleripper/devel
In directory old02.ovh.rpmfusion.lan:/tmp/cvs-serv18001
Added Files:
subtitleripper.spec
Log Message:
revive
Index: subtitleripper.spec
===================================================================
RCS file: subtitleripper.spec
diff -N subtitleripper.spec
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ subtitleripper.spec 22 May 2013 22:10:15 -0000 1.9
@@ -0,0 +1,83 @@
+Summary: Command line tool to rip DVD subtitles
+Name: subtitleripper
+Version: 0.3
+Release: 7%{?dist}
+License: GPLv2+
+Group: Applications/Multimedia
+URL: http://subtitleripper.sourceforge.net/
+Source0: http://switch.dl.sourceforge.net/sourceforge/subtitleripper/%{name}-%{ver...
+Patch0: pgm2txt.patch
+Patch1: Makefile.patch
+Patch2: binutils-gold.patch
+BuildRequires: netpbm-devel zlib-devel libpng-devel
+Requires: gocr transcode
+
+%description
+Converts DVD subtitles into text format (e.g. subrip format) or VobSub
+format. Based on transcode.
+
+%prep
+%setup -q -n %{name}
+%patch0 -p1 -b .patch0
+%patch1 -p1 -b .patch1
+%patch2 -p1 -b .patch2
+
+%build
+CFLAGS="$RPM_OPT_FLAGS" make
+
+%install
+mkdir -p $RPM_BUILD_ROOT/%{_bindir}
+for i in pgm2txt srttool subtitle2pgm subtitle2vobsub vobsub2pgm
+do
+ install -m 0755 $i $RPM_BUILD_ROOT/%{_bindir}
+done
+
+install -d -m 755 $RPM_BUILD_ROOT%{_datadir}/subtitleripper
+install -m 644 *.sed $RPM_BUILD_ROOT%{_datadir}/subtitleripper
+
+%files
+%doc ChangeLog README*
+%{_bindir}/pgm2txt
+%{_bindir}/srttool
+%{_bindir}/subtitle2pgm
+%{_bindir}/subtitle2vobsub
+%{_bindir}/vobsub2pgm
+%{_datadir}/%{name}
+
+%changelog
+* Sun Mar 03 2013 Rahul Sundaram <sundaram(a)fedoraproject.org> - 0.3-7
+- included and modified some patches from Debian/Ubuntu and Gentoo
+- re-enable png support
+- included .sed files for gocr
+- included vobsub2pgm binary
+- added requires on gocr and transcode
+- cleanup spec to follow current Fedora guidelines
+
+* Tue Aug 19 2008 Thorsten Leemhuis <fedora [AT] leemhuis [DOT] info - 0.3-6
+- added _default_patch_fuzz define
+
+* Sun Aug 03 2008 Thorsten Leemhuis <fedora [AT] leemhuis [DOT] info - 0.3-5
+- rebuild
+
+* Thu Mar 09 2006 Andreas Bierfert <andreas.bierfert[AT]lowlatency.de>
+- switch to new release field
+- drop Epoch
+
+* Wed Sep 21 2005 Thorsten Leemhuis <fedora[AT]leemhuis.info> 0:0.3-0.lvn.4
+- Drop BR libpng, too
+
+* Sat Sep 10 2005 Thorsten Leemhuis <fedora[AT]leemhuis.info> 0:0.3-0.lvn.3
+- Disable png-support for now cause it does not compile on FC4
+
+* Mon Jun 28 2004 Dams <anvil[AT]livna.org> 0:0.3-0.lvn.2.4
+- BuildReq libpng-devel
+- Fix for libnetpbm on FC2
+
+* Mon Jun 28 2004 Dams <anvil[AT]livna.org> 0:0.3.4-0.lvn.1
+- Updated to 0.3-4
+
+* Wed May 14 2003 Dams <anvil[AT]livna.org> 0:0.3-0.fdr.2
+- Added missing zlib-devel BuildRequires
+
+* Sat May 10 2003 Dams <anvil[AT]livna.org>
+- Initial build.
11 years, 6 months
rpms/subtitleripper/devel .cvsignore, 1.3, 1.4 Makefile.patch, NONE, 1.1 binutils-gold.patch, NONE, 1.1 pgm2txt.patch, NONE, 1.1 sources, 1.3, 1.4 dead.package, 1.1, NONE
by Rahul Sundaram
Author: sundaram
Update of /cvs/free/rpms/subtitleripper/devel
In directory old02.ovh.rpmfusion.lan:/tmp/cvs-serv17667
Added Files:
.cvsignore Makefile.patch binutils-gold.patch pgm2txt.patch
sources
Removed Files:
dead.package
Log Message:
* Sun Mar 03 2013 Rahul Sundaram <sundaram(a)fedoraproject.org> - 0.3-7
- included and modified some patches from Debian/Ubuntu and Gentoo
- re-enable png support
- included .sed files for gocr
- included vobsub2pgm binary
- added requires on gocr and transcode
- cleanup spec to follow current Fedora guidelines
Index: .cvsignore
===================================================================
RCS file: .cvsignore
diff -N .cvsignore
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ .cvsignore 22 May 2013 22:07:24 -0000 1.4
@@ -0,0 +1 @@
+subtitleripper-0.3-4.tgz
Makefile.patch:
Makefile | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
--- NEW FILE Makefile.patch ---
--- subtitleripper-0.3.4/Makefile.orig 2013-03-03 03:00:35.598130743 -0500
+++ subtitleripper-0.3.4/Makefile 2013-03-03 03:03:16.889727156 -0500
@@ -9,7 +9,12 @@
### enable ppm support ###
DEFINES += -D_HAVE_LIB_PPM_
-LIBS += -lppm
+LIBS += -lnetpbm
+INCLUDES += -I/usr/include/netpbm
+
+
+### getline is defined for us
+DEFINES += -DHAVE_GETLINE
### enable PNG support ###
DEFINES += -D_HAVE_PNG_
binutils-gold.patch:
Makefile | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
--- NEW FILE binutils-gold.patch ---
diff -urNad subtitleripper-0.3.4~/Makefile subtitleripper-0.3.4/Makefile
--- subtitleripper-0.3.4~/Makefile 2011-02-17 20:51:42.183047389 +0700
+++ subtitleripper-0.3.4/Makefile 2011-02-17 20:52:02.291199592 +0700
@@ -73,19 +73,19 @@
# Target
subtitle2pgm: subtitle2pgm.o spudec.o
@echo "Linking $@"
- @$(CC) $(LIBS) $^ -o $@
+ @$(CC) $^ -o $@ $(LIBS)
subtitle2vobsub: subtitle2vobsub.o vobsub.o
@echo "Linking $@"
- @$(CC) $(LIBS) $^ -o $@
+ @$(CC) $^ -o $@ $(LIBS)
srttool: srttool.o
@echo "Linking $@"
- @$(CC) $(LIBS) -g $^ -o $@
+ @$(CC) -g $^ -o $@ $(LIBS)
vobsub2pgm: vobsub2pgm.o vobsub.o spudec.o
@echo "Linking $@"
- @$(CC) $(LIBS) -g $^ -o $@
+ @$(CC) -g $^ -o $@ $(LIBS)
.PHONY: clean dist rpm
clean:
pgm2txt.patch:
pgm2txt | 14 +++++++-------
1 file changed, 7 insertions(+), 7 deletions(-)
--- NEW FILE pgm2txt.patch ---
--- subtitleripper-0.3.4.orig/pgm2txt 2004-11-18 13:59:04.000000000 +0100
+++ subtitleripper-0.3.4/pgm2txt 2004-11-18 14:00:25.000000000 +0100
@@ -16,7 +16,7 @@
# Adjust this path to where the files
# gocrfilter_en.sed gocrfilter_fr.sed gocrfilter_none.sed
# are located
-PATH_TO_LANGUAGE_FILTER=~/sourceforge/subtitleripper/src/
+PATH_TO_LANGUAGE_FILTER=/usr/share/subtitleripper
# set your options for gocr. Please read the gocr
# docs to find out more about this
@@ -35,8 +35,8 @@
# Choose your favorite image viewer if you want to see
# the current pgm image while gocr is running.
# Enable the viewer with -v command line option.
-IMAGE_VIWER=xv
-IMAGE_VIEWER_OPTIONS=-q
+IMAGE_VIEWER=display
+IMAGE_VIEWER_OPTIONS=
###### End of configuration section #########
@@ -108,8 +108,8 @@
shift $(($OPTIND - 1))
PGM_BASE_NAME=$1
-if [ -f ${PATH_TO_LANGUAGE_FILTER}gocrfilter_${LANGUAGE}.sed ]; then
- FILTER_SCRIPT=${PATH_TO_LANGUAGE_FILTER}gocrfilter_${LANGUAGE}.sed
+if [ -f ${PATH_TO_LANGUAGE_FILTER}/gocrfilter_${LANGUAGE}.sed ]; then
+ FILTER_SCRIPT=${PATH_TO_LANGUAGE_FILTER}/gocrfilter_${LANGUAGE}.sed
echo "Using ${FILTER_SCRIPT} to filter gocr output"
else
echo " ------------------------------------------------"
@@ -153,7 +153,7 @@
echo "Converting $i into text"
if [ ! "$DISPLAY_PGM" = "false" ]; then
- ${IMAGE_VIWER} ${IMAGE_VIEWER_OPTIONS} $i &
+ ${IMAGE_VIEWER} ${IMAGE_VIEWER_OPTIONS} $i &
fi
if [ "none" = "${LANGUAGE}" ]; then
gocr ${GOCR_OPTIONS} -p ${DB_PATH} $i > $i.txt
@@ -163,7 +163,7 @@
# close the viewer
if [ ! "$DISPLAY_PGM" = "false" ]; then
- killall ${IMAGE_VIWER}
+ killall ${IMAGE_VIEWER}
fi
done
Index: sources
===================================================================
RCS file: sources
diff -N sources
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ sources 22 May 2013 22:07:30 -0000 1.4
@@ -0,0 +1 @@
+c0bd49a88f667c68c4430ad25bbed510 subtitleripper-0.3-4.tgz
--- dead.package DELETED ---
11 years, 6 months
rpms/catalyst-kmod/F-19 catalyst-kmod.spec,1.17,1.18
by Leigh Scott
Author: leigh123linux
Update of /cvs/nonfree/rpms/catalyst-kmod/F-19
In directory old02.ovh.rpmfusion.lan:/tmp/cvs-serv13941
Modified Files:
catalyst-kmod.spec
Log Message:
* Wed May 22 2013 Leigh Scott <leigh123linux(a)googlemail.com> - 13.4-2
- rebuilt
Index: catalyst-kmod.spec
===================================================================
RCS file: /cvs/nonfree/rpms/catalyst-kmod/F-19/catalyst-kmod.spec,v
retrieving revision 1.17
retrieving revision 1.18
diff -u -r1.17 -r1.18
--- catalyst-kmod.spec 22 May 2013 18:25:25 -0000 1.17
+++ catalyst-kmod.spec 22 May 2013 18:28:19 -0000 1.18
@@ -102,7 +102,8 @@
%changelog
* Wed May 22 2013 Leigh Scott <leigh123linux(a)googlemail.com> - 13.4-2
-- rebuilt
+- Add patch to fix tty issue
+- Add patch to fix intel_iommu
* Tue May 14 2013 Leigh Scott <leigh123linux(a)googlemail.com> - 13.4-1
- Update to Catalyst 13.4 (internal version 12.104)
11 years, 6 months
rpms/catalyst-kmod/F-19 fglrx_fixing_ttys.patch, NONE, 1.1 fglrx_intel_iommu.patch, NONE, 1.1 catalyst-kmod.spec, 1.16, 1.17 compat_alloc-Makefile.patch, 1.1, 1.2
by Leigh Scott
Author: leigh123linux
Update of /cvs/nonfree/rpms/catalyst-kmod/F-19
In directory old02.ovh.rpmfusion.lan:/tmp/cvs-serv13694
Modified Files:
catalyst-kmod.spec compat_alloc-Makefile.patch
Added Files:
fglrx_fixing_ttys.patch fglrx_intel_iommu.patch
Log Message:
* Wed May 22 2013 Leigh Scott <leigh123linux(a)googlemail.com> - 13.4-2
- rebuilt
fglrx_fixing_ttys.patch:
firegl_public.c | 4 ++++
1 file changed, 4 insertions(+)
--- NEW FILE fglrx_fixing_ttys.patch ---
--- lib/modules/fglrx/build_mod/firegl_public.c
+++ lib/modules/fglrx/build_mod/firegl_public.c
@@ -3088,7 +3156,11 @@
int ATI_API_CALL KCL_EFI_IS_ENABLED(void)
{
#ifdef CONFIG_EFI
+#ifdef EFI_BOOT
+ return efi_enabled(EFI_BOOT);
+#else
return efi_enabled;
+#endif
#else
return 0;
#endif
fglrx_intel_iommu.patch:
firegl_public.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
--- NEW FILE fglrx_intel_iommu.patch ---
--- lib/modules/fglrx/build_mod/firegl_public.c
+++ lib/modules/fglrx/build_mod/firegl_public.c
@@ -93,7 +93,7 @@
and they use different config options. These options can only be enabled
on x86_64 with newer 2.6 kernels (2.6.23 for intel, 2.6.26 for amd).
*/
-#if defined(CONFIG_AMD_IOMMU) || defined(CONFIG_DMAR)
+#if defined(CONFIG_AMD_IOMMU) || defined(CONFIG_INTEL_IOMMU)
#define FIREGL_DMA_REMAPPING
#endif
Index: catalyst-kmod.spec
===================================================================
RCS file: /cvs/nonfree/rpms/catalyst-kmod/F-19/catalyst-kmod.spec,v
retrieving revision 1.16
retrieving revision 1.17
diff -u -r1.16 -r1.17
--- catalyst-kmod.spec 14 May 2013 18:16:36 -0000 1.16
+++ catalyst-kmod.spec 22 May 2013 18:25:25 -0000 1.17
@@ -13,7 +13,7 @@
Name: catalyst-kmod
Version: 13.4
-Release: 1%{?dist}
+Release: 2%{?dist}
# Taken over by kmodtool
Summary: AMD display driver kernel module
Group: System Environment/Kernel
@@ -22,6 +22,8 @@
Source0: http://downloads.diffingo.com/rpmfusion/kmod-data/catalyst-kmod-data-%{ve...
Source11: catalyst-kmodtool-excludekernel-filterfile
Patch0: compat_alloc-Makefile.patch
+Patch1: fglrx_fixing_ttys.patch
+Patch2: fglrx_intel_iommu.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
# needed for plague to make sure it builds for i686
@@ -67,6 +69,8 @@
pushd fglrxpkg
%patch0 -p0 -b.compat_alloc
+%patch1 -p0
+%patch2 -p0
popd
for kernel_version in %{?kernel_versions} ; do
@@ -97,6 +101,9 @@
%changelog
+* Wed May 22 2013 Leigh Scott <leigh123linux(a)googlemail.com> - 13.4-2
+- rebuilt
+
* Tue May 14 2013 Leigh Scott <leigh123linux(a)googlemail.com> - 13.4-1
- Update to Catalyst 13.4 (internal version 12.104)
compat_alloc-Makefile.patch:
Makefile | 1 +
1 file changed, 1 insertion(+)
Index: compat_alloc-Makefile.patch
===================================================================
RCS file: /cvs/nonfree/rpms/catalyst-kmod/F-19/compat_alloc-Makefile.patch,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- compat_alloc-Makefile.patch 2 May 2011 07:51:24 -0000 1.1
+++ compat_alloc-Makefile.patch 22 May 2013 18:25:25 -0000 1.2
@@ -4,7 +4,7 @@
-DFGL_GART_RESERVED_SLOT \
-DFGL_LINUX253P1_VMA_API \
-DPAGE_ATTR_FIX=$(PAGE_ATTR_FIX) \
-+ -DCOMPAT_ALLOC_USER_SPACE=arch_compat_alloc_user_space \
++ -DCOMPAT_ALLOC_USER_SPACE=$(COMPAT_ALLOC_USER_SPACE) \
ifeq ($(KERNELRELEASE),)
# on first call from remote location we get into this path
11 years, 6 months