diff options
Diffstat (limited to 'meta-multimedia/recipes-multimedia')
41 files changed, 1747 insertions, 0 deletions
diff --git a/meta-multimedia/recipes-multimedia/coriander/coriander/cross-compile.patch b/meta-multimedia/recipes-multimedia/coriander/coriander/cross-compile.patch new file mode 100644 index 000000000..49350fe18 --- /dev/null +++ b/meta-multimedia/recipes-multimedia/coriander/coriander/cross-compile.patch | |||
@@ -0,0 +1,17 @@ | |||
1 | In a cross compile environment adding paths like /usr are not correct. | ||
2 | With this patch we make it so that its relative to sysroot if the compiler | ||
3 | defines one. | ||
4 | |||
5 | Upstream-Status: Pending | ||
6 | Signed-off-by: Khem Raj <raj.khem@gmail.com> | ||
7 | Index: a/src/Makefile.am | ||
8 | =================================================================== | ||
9 | --- a/src/Makefile.am 2013-02-08 22:35:08.000000000 -0800 | ||
10 | +++ b/src/Makefile.am 2013-10-13 01:31:38.812869080 -0700 | ||
11 | @@ -33,5 +33,5 @@ | ||
12 | video_encode.c video_encode.h \ | ||
13 | subtitles.c subtitles.h | ||
14 | |||
15 | -coriander_LDADD = -L/usr/X11R6/lib/ @PACKAGE_LIBS@ $(INTLLIBS) $(LIBTIFF_LIBS) $(FTPLIB_LIBS) $(SDLLIB_LIBS) $(LIBDC_LIBS) $(LIBRAW_LIBS) $(XV_LIBS) $(COR_LFS_LDFLAGS) -lgthread-2.0 $(FFMPEG_LIBS) $(X11_LIBS) | ||
16 | +coriander_LDADD = -L=/usr/X11R6/lib/ @PACKAGE_LIBS@ $(INTLLIBS) $(LIBTIFF_LIBS) $(FTPLIB_LIBS) $(SDLLIB_LIBS) $(LIBDC_LIBS) $(LIBRAW_LIBS) $(XV_LIBS) $(COR_LFS_LDFLAGS) -lgthread-2.0 $(FFMPEG_LIBS) $(X11_LIBS) | ||
17 | |||
diff --git a/meta-multimedia/recipes-multimedia/coriander/coriander_2.0.2.bb b/meta-multimedia/recipes-multimedia/coriander/coriander_2.0.2.bb new file mode 100755 index 000000000..a9f52cadb --- /dev/null +++ b/meta-multimedia/recipes-multimedia/coriander/coriander_2.0.2.bb | |||
@@ -0,0 +1,17 @@ | |||
1 | SUMMARY = "Control and capture GUI for IIDC compliant cameras" | ||
2 | HOMEPAGE = "http://damien.douxchamps.net/ieee1394/coriander/" | ||
3 | SECTION = "applications" | ||
4 | LICENSE = "GPL-3.0" | ||
5 | LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504" | ||
6 | DEPENDS = "gtk+ libgnomeui libraw1394 libdc1394 libxv tiff" | ||
7 | |||
8 | PNBLACKLIST[coriander] ?= "BROKEN: fails to use SDL probably because libsdl-config was removed, error: unknown type name 'SDL_Overlay'" | ||
9 | |||
10 | SRC_URI = "${SOURCEFORGE_MIRROR}/project/${BPN}/coriander-2/${PV}/${BP}.tar.gz \ | ||
11 | file://cross-compile.patch \ | ||
12 | " | ||
13 | |||
14 | SRC_URI[md5sum] = "431d98fb013217681f97ade168201fb8" | ||
15 | SRC_URI[sha256sum] = "5c7fd31cb58d398e2742352bf1ffbd2ca22e06686c6668ecfd437735c2b79123" | ||
16 | |||
17 | inherit autotools gettext | ||
diff --git a/meta-multimedia/recipes-multimedia/dleyna/media-service-demo_git.bb b/meta-multimedia/recipes-multimedia/dleyna/media-service-demo_git.bb new file mode 100644 index 000000000..f7457fd5f --- /dev/null +++ b/meta-multimedia/recipes-multimedia/dleyna/media-service-demo_git.bb | |||
@@ -0,0 +1,18 @@ | |||
1 | SUMMARY = "demonstration UI for dleyna" | ||
2 | HOMEPAGE = "https://01.org/dleyna/" | ||
3 | |||
4 | LICENSE = "LGPLv2.1" | ||
5 | LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c \ | ||
6 | file://src/media-service-demo.py;beginline=3;endline=21;md5=2faa3862e32422b3c38a1501539aa8b4" | ||
7 | |||
8 | SRCREV = "f4440e104f0d13e454234184c2c6eba982725baf" | ||
9 | PV = "0.0+git${SRCPV}" | ||
10 | |||
11 | SRC_URI = "git://github.com/01org/media-service-demo.git" | ||
12 | |||
13 | S = "${WORKDIR}/git" | ||
14 | |||
15 | inherit distutils | ||
16 | |||
17 | RDEPENDS_${PN} = "media-service-upnp python-dbus python-gst python-pygtk \ | ||
18 | python-crypt python-netclient python-dateutil" | ||
diff --git a/meta-multimedia/recipes-multimedia/dleyna/media-service-upnp_0.4.0.bb b/meta-multimedia/recipes-multimedia/dleyna/media-service-upnp_0.4.0.bb new file mode 100644 index 000000000..871eb6a9a --- /dev/null +++ b/meta-multimedia/recipes-multimedia/dleyna/media-service-upnp_0.4.0.bb | |||
@@ -0,0 +1,24 @@ | |||
1 | SUMMARY = "discover, browse and search UPNP/DLNA media servers" | ||
2 | HOMEPAGE = "https://01.org/dleyna/" | ||
3 | |||
4 | LICENSE = "LGPLv2.1" | ||
5 | LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c \ | ||
6 | file://src/media-service-upnp.c;beginline=1;endline=21;md5=584eb103b4f6f3432c43d169b6a123a1" | ||
7 | |||
8 | DEPENDS = "dbus glib-2.0 gssdp gupnp gupnp-av gupnp-dlna libsoup-2.4" | ||
9 | |||
10 | SRC_URI = "git://github.com/01org/${BPN}.git" | ||
11 | SRCREV = "1996ecbe4a06c95d22f7d958e32e3d28f7a4a2e9" | ||
12 | S = "${WORKDIR}/git" | ||
13 | |||
14 | inherit autotools pkgconfig | ||
15 | |||
16 | do_install_append() { | ||
17 | install -d ${D}${bindir} | ||
18 | install -m 0755 dms-info ${D}${bindir} | ||
19 | } | ||
20 | |||
21 | PACKAGES =+ "${PN}-tests" | ||
22 | |||
23 | FILES_${PN} += "${datadir}/dbus-1/services/*.service" | ||
24 | FILES_${PN}-tests = "${bindir}/dms-info" | ||
diff --git a/meta-multimedia/recipes-multimedia/dleyna/renderer-service-upnp_0.3.0.bb b/meta-multimedia/recipes-multimedia/dleyna/renderer-service-upnp_0.3.0.bb new file mode 100644 index 000000000..68d59faca --- /dev/null +++ b/meta-multimedia/recipes-multimedia/dleyna/renderer-service-upnp_0.3.0.bb | |||
@@ -0,0 +1,29 @@ | |||
1 | SUMMARY = "discover and manipulate UPNP/DLNA media renderers" | ||
2 | HOMEPAGE = "https://01.org/dleyna/" | ||
3 | |||
4 | LICENSE = "LGPLv2.1" | ||
5 | LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c \ | ||
6 | file://src/renderer-service-upnp.c;beginline=1;endline=21;md5=c25c3082684eb4ca87474b7528c6dc15" | ||
7 | |||
8 | PNBLACKLIST[renderer-service-upnp] ?= "BROKEN: doesn't build with B!=S (trying to install rendererconsole.py from ${B} instead of ${S})" | ||
9 | |||
10 | DEPENDS = "dbus glib-2.0 gssdp gupnp gupnp-av gupnp-dlna libsoup-2.4" | ||
11 | |||
12 | SRC_URI = "git://github.com/01org/${BPN}.git" | ||
13 | SRCREV = "4a0b1d7cd8e22d3cb0e09c77c344ceccbcbbd34f" | ||
14 | S = "${WORKDIR}/git" | ||
15 | |||
16 | inherit autotools pkgconfig | ||
17 | |||
18 | do_install_append() { | ||
19 | install -d ${D}${bindir} | ||
20 | install -m 0755 test/rendererconsole.py ${D}${bindir} | ||
21 | } | ||
22 | |||
23 | PACKAGES =+ "${PN}-tests" | ||
24 | |||
25 | RDEPENDS_${PN}-tests = "python-dbus python-json python-misc python-pkgutil python-xml" | ||
26 | |||
27 | FILES_${PN} += "${datadir}/dbus-1/services/*.service" | ||
28 | # When we have GI, package cap | ||
29 | FILES_${PN}-tests = "${bindir}/rendererconsole.py" | ||
diff --git a/meta-multimedia/recipes-multimedia/faac/faac_1.28.bb b/meta-multimedia/recipes-multimedia/faac/faac_1.28.bb new file mode 100644 index 000000000..d96c1a401 --- /dev/null +++ b/meta-multimedia/recipes-multimedia/faac/faac_1.28.bb | |||
@@ -0,0 +1,21 @@ | |||
1 | SUMMARY = "Freeware Advanced Audio Coder (MPEG2-AAC, MPEG4-AAC)" | ||
2 | SECTION = "libs" | ||
3 | LICENSE = "LGPLv2+" | ||
4 | LIC_FILES_CHKSUM = "file://COPYING;md5=3bf50002aefd002f49e7bb854063f7e7 \ | ||
5 | file://libfaac/coder.h;beginline=5;endline=17;md5=fa1fd6a5fa8cdc877d63a12530d273e0" | ||
6 | |||
7 | inherit autotools-brokensep | ||
8 | |||
9 | SRC_URI = "${SOURCEFORGE_MIRROR}/faac/${BP}.tar.gz \ | ||
10 | file://build-fix.patch" | ||
11 | |||
12 | SRC_URI[md5sum] = "80763728d392c7d789cde25614c878f6" | ||
13 | SRC_URI[sha256sum] = "c5141199f4cfb17d749c36ba8cfe4b25f838da67c22f0fec40228b6b9c3d19df" | ||
14 | |||
15 | PACKAGES =+ "lib${BPN} lib${BPN}-dev" | ||
16 | |||
17 | FILES_${PN} = " ${bindir}/faac " | ||
18 | FILES_lib${PN} = " ${libdir}/libfaac.so.*" | ||
19 | FILES_lib${PN}-dev = "${includedir}/faac.h ${includedir}/faaccfg.h ${libdir}/libfaac.so ${libdir}/libfaac.la" | ||
20 | FILES_lib${PN}-staticdev = "${libdir}/libfaac.a" | ||
21 | |||
diff --git a/meta-multimedia/recipes-multimedia/faac/files/build-fix.patch b/meta-multimedia/recipes-multimedia/faac/files/build-fix.patch new file mode 100644 index 000000000..83cff8f89 --- /dev/null +++ b/meta-multimedia/recipes-multimedia/faac/files/build-fix.patch | |||
@@ -0,0 +1,332 @@ | |||
1 | Patch fixing build error and warnings. Error consisted of redefining | ||
2 | strcasestr function from string.h. Warnings consisted of deprecated conversions | ||
3 | of string constants to char*, using '%llu' for type uint64_t (which on 64 bit | ||
4 | systems, is defined as unsigned long int by stdint.h), and using '==' for | ||
5 | equality of two strings. | ||
6 | |||
7 | Patch originally from Debian. | ||
8 | |||
9 | Upstream-Status: Pending | ||
10 | |||
11 | ========================================================================== | ||
12 | --- a/common/mp4v2/mpeg4ip.h | ||
13 | +++ b/common/mp4v2/mpeg4ip.h | ||
14 | @@ -120,14 +120,6 @@ | ||
15 | #endif | ||
16 | #include <sys/param.h> | ||
17 | |||
18 | -#ifdef __cplusplus | ||
19 | -extern "C" { | ||
20 | -#endif | ||
21 | -char *strcasestr(const char *haystack, const char *needle); | ||
22 | -#ifdef __cplusplus | ||
23 | -} | ||
24 | -#endif | ||
25 | - | ||
26 | #define OPEN_RDWR O_RDWR | ||
27 | #define OPEN_CREAT O_CREAT | ||
28 | #define OPEN_RDONLY O_RDONLY | ||
29 | @@ -135,7 +127,6 @@ | ||
30 | #define closesocket close | ||
31 | #define IOSBINARY ios::bin | ||
32 | |||
33 | -#if SIZEOF_LONG == 8 | ||
34 | #define MAX_UINT64 -1LU | ||
35 | #define D64F "ld" | ||
36 | #define U64F "lu" | ||
37 | @@ -143,15 +134,6 @@ | ||
38 | |||
39 | #define TO_D64(a) (a##L) | ||
40 | #define TO_U64(a) (a##LU) | ||
41 | -#else | ||
42 | -#define MAX_UINT64 -1LLU | ||
43 | -#define D64F "lld" | ||
44 | -#define U64F "llu" | ||
45 | -#define X64F "llx" | ||
46 | - | ||
47 | -#define TO_D64(a) (a##LL) | ||
48 | -#define TO_U64(a) (a##LLU) | ||
49 | -#endif | ||
50 | |||
51 | #ifdef HAVE_FPOS_T___POS | ||
52 | #define FPOS_TO_VAR(fpos, typed, var) (var) = (typed)((fpos).__pos) | ||
53 | --- a/configure.in | ||
54 | +++ b/configure.in | ||
55 | @@ -4,6 +4,9 @@ | ||
56 | AM_INIT_AUTOMAKE | ||
57 | |||
58 | AM_CONFIG_HEADER(config.h) | ||
59 | +AH_TOP([#ifndef CONFIG_H | ||
60 | +#define CONFIG_H]) | ||
61 | +AH_BOTTOM([#endif /* CONFIG_H */]) | ||
62 | |||
63 | AC_ARG_WITH( mp4v2, [ --with-mp4v2 compile libmp4v2],WITHMP4V2=$withval, WITHMP4V2=yes) | ||
64 | AC_ARG_ENABLE( drm, [ --enable-drm Digital Radio Mondiale support], enable_drm=$enableval, enable_drm=no) | ||
65 | --- a/common/mp4v2/atom_avcC.cpp | ||
66 | +++ b/common/mp4v2/atom_avcC.cpp | ||
67 | @@ -29,7 +29,7 @@ | ||
68 | class SizeTableProperty : public MP4TableProperty | ||
69 | { | ||
70 | public: | ||
71 | - SizeTableProperty(char *name, MP4IntegerProperty *pCountProperty) : | ||
72 | + SizeTableProperty(const char *name, MP4IntegerProperty *pCountProperty) : | ||
73 | MP4TableProperty(name, pCountProperty) {}; | ||
74 | protected: | ||
75 | void ReadEntry(MP4File *pFile, u_int32_t index) { | ||
76 | --- a/common/mp4v2/atom_ohdr.cpp | ||
77 | +++ b/common/mp4v2/atom_ohdr.cpp | ||
78 | @@ -21,7 +21,7 @@ | ||
79 | \param useCountedFormat counted format flag. | ||
80 | \param useUnicode unicode flag. | ||
81 | */ | ||
82 | - OhdrMP4StringProperty(char* name, bool useCountedFormat = false, | ||
83 | + OhdrMP4StringProperty(const char* name, bool useCountedFormat = false, | ||
84 | bool useUnicode = false): MP4StringProperty(name, useCountedFormat, | ||
85 | useUnicode) { | ||
86 | } | ||
87 | --- a/common/mp4v2/atom_stz2.cpp | ||
88 | +++ b/common/mp4v2/atom_stz2.cpp | ||
89 | @@ -30,7 +30,7 @@ | ||
90 | class MP4HalfSizeTableProperty : public MP4TableProperty | ||
91 | { | ||
92 | public: | ||
93 | - MP4HalfSizeTableProperty(char *name, MP4IntegerProperty *pCountProperty) : | ||
94 | + MP4HalfSizeTableProperty(const char *name, MP4IntegerProperty *pCountProperty) : | ||
95 | MP4TableProperty(name, pCountProperty) {}; | ||
96 | |||
97 | // The count is half the actual size | ||
98 | --- a/common/mp4v2/mp4atom.cpp | ||
99 | +++ b/common/mp4v2/mp4atom.cpp | ||
100 | @@ -806,7 +806,7 @@ | ||
101 | AddProperty(new MP4Integer24Property("flags")); | ||
102 | } | ||
103 | |||
104 | -void MP4Atom::AddReserved(char* name, u_int32_t size) | ||
105 | +void MP4Atom::AddReserved(const char* name, u_int32_t size) | ||
106 | { | ||
107 | MP4BytesProperty* pReserved = new MP4BytesProperty(name, size); | ||
108 | pReserved->SetReadOnly(); | ||
109 | --- a/common/mp4v2/mp4atom.h | ||
110 | +++ b/common/mp4v2/mp4atom.h | ||
111 | @@ -204,7 +204,7 @@ | ||
112 | |||
113 | void AddVersionAndFlags(); | ||
114 | |||
115 | - void AddReserved(char* name, u_int32_t size); | ||
116 | + void AddReserved(const char* name, u_int32_t size); | ||
117 | |||
118 | void ExpectChildAtom(const char* name, | ||
119 | bool mandatory, bool onlyOne = true); | ||
120 | --- a/common/mp4v2/mp4file.cpp | ||
121 | +++ b/common/mp4v2/mp4file.cpp | ||
122 | @@ -718,7 +718,7 @@ | ||
123 | } | ||
124 | } | ||
125 | |||
126 | -void MP4File::ProtectWriteOperation(char* where) | ||
127 | +void MP4File::ProtectWriteOperation(const char* where) | ||
128 | { | ||
129 | if (m_mode == 'r') { | ||
130 | throw new MP4Error("operation not permitted in read mode", where); | ||
131 | @@ -1274,7 +1274,7 @@ | ||
132 | } | ||
133 | |||
134 | // NULL terminated list of brands which require the IODS atom | ||
135 | -char *brandsWithIods[] = { "mp42", | ||
136 | +const char *brandsWithIods[] = { "mp42", | ||
137 | "isom", | ||
138 | NULL}; | ||
139 | |||
140 | @@ -2211,11 +2211,11 @@ | ||
141 | for (u_int32_t i = 0; i < m_pTracks.Size(); i++) { | ||
142 | if (!strcmp(normType, m_pTracks[i]->GetType())) { | ||
143 | if (subType) { | ||
144 | - if (normType == MP4_AUDIO_TRACK_TYPE) { | ||
145 | + if (!strcmp(normType,MP4_AUDIO_TRACK_TYPE)) { | ||
146 | if (subType != GetTrackEsdsObjectTypeId(m_pTracks[i]->GetId())) { | ||
147 | continue; | ||
148 | } | ||
149 | - } else if (normType == MP4_VIDEO_TRACK_TYPE) { | ||
150 | + } else if (!strcmp(normType,MP4_VIDEO_TRACK_TYPE)) { | ||
151 | if (subType != GetTrackEsdsObjectTypeId(m_pTracks[i]->GetId())) { | ||
152 | continue; | ||
153 | } | ||
154 | @@ -2278,11 +2278,11 @@ | ||
155 | for (u_int32_t i = 0; i < m_pTracks.Size(); i++) { | ||
156 | if (!strcmp(normType, m_pTracks[i]->GetType())) { | ||
157 | if (subType) { | ||
158 | - if (normType == MP4_AUDIO_TRACK_TYPE) { | ||
159 | + if (!strcmp(normType,MP4_AUDIO_TRACK_TYPE)) { | ||
160 | if (subType != GetTrackEsdsObjectTypeId(m_pTracks[i]->GetId())) { | ||
161 | continue; | ||
162 | } | ||
163 | - } else if (normType == MP4_VIDEO_TRACK_TYPE) { | ||
164 | + } else if (!strcmp(normType,MP4_VIDEO_TRACK_TYPE)) { | ||
165 | if (subType != GetTrackEsdsObjectTypeId(m_pTracks[i]->GetId())) { | ||
166 | continue; | ||
167 | } | ||
168 | --- a/common/mp4v2/mp4file.h | ||
169 | +++ b/common/mp4v2/mp4file.h | ||
170 | @@ -700,7 +700,7 @@ | ||
171 | const char* TempFileName(); | ||
172 | void Rename(const char* existingFileName, const char* newFileName); | ||
173 | |||
174 | - void ProtectWriteOperation(char* where); | ||
175 | + void ProtectWriteOperation(const char* where); | ||
176 | |||
177 | void FindIntegerProperty(const char* name, | ||
178 | MP4Property** ppProperty, u_int32_t* pIndex = NULL); | ||
179 | --- a/common/mp4v2/mp4property.cpp | ||
180 | +++ b/common/mp4v2/mp4property.cpp | ||
181 | @@ -313,7 +313,7 @@ | ||
182 | |||
183 | // MP4StringProperty | ||
184 | |||
185 | -MP4StringProperty::MP4StringProperty(char* name, | ||
186 | +MP4StringProperty::MP4StringProperty(const char* name, | ||
187 | bool useCountedFormat, bool useUnicode) | ||
188 | : MP4Property(name) | ||
189 | { | ||
190 | @@ -420,7 +420,7 @@ | ||
191 | |||
192 | // MP4BytesProperty | ||
193 | |||
194 | -MP4BytesProperty::MP4BytesProperty(char* name, u_int32_t valueSize, | ||
195 | +MP4BytesProperty::MP4BytesProperty(const char* name, u_int32_t valueSize, | ||
196 | u_int32_t defaultValueSize) | ||
197 | : MP4Property(name) | ||
198 | { | ||
199 | @@ -549,7 +549,7 @@ | ||
200 | |||
201 | // MP4TableProperty | ||
202 | |||
203 | -MP4TableProperty::MP4TableProperty(char* name, MP4IntegerProperty* pCountProperty) | ||
204 | +MP4TableProperty::MP4TableProperty(const char* name, MP4IntegerProperty* pCountProperty) | ||
205 | : MP4Property(name) | ||
206 | { | ||
207 | m_pCountProperty = pCountProperty; | ||
208 | @@ -725,7 +725,7 @@ | ||
209 | |||
210 | // MP4DescriptorProperty | ||
211 | |||
212 | -MP4DescriptorProperty::MP4DescriptorProperty(char* name, | ||
213 | +MP4DescriptorProperty::MP4DescriptorProperty(const char* name, | ||
214 | u_int8_t tagsStart, u_int8_t tagsEnd, bool mandatory, bool onlyOne) | ||
215 | : MP4Property(name) | ||
216 | { | ||
217 | --- a/common/mp4v2/mp4property.h | ||
218 | +++ b/common/mp4v2/mp4property.h | ||
219 | @@ -100,7 +100,7 @@ | ||
220 | |||
221 | class MP4IntegerProperty : public MP4Property { | ||
222 | protected: | ||
223 | - MP4IntegerProperty(char* name) | ||
224 | + MP4IntegerProperty(const char* name) | ||
225 | : MP4Property(name) { }; | ||
226 | |||
227 | public: | ||
228 | @@ -118,7 +118,7 @@ | ||
229 | #define MP4INTEGER_PROPERTY_DECL2(isize, xsize) \ | ||
230 | class MP4Integer##xsize##Property : public MP4IntegerProperty { \ | ||
231 | public: \ | ||
232 | - MP4Integer##xsize##Property(char* name) \ | ||
233 | + MP4Integer##xsize##Property(const char* name) \ | ||
234 | : MP4IntegerProperty(name) { \ | ||
235 | SetCount(1); \ | ||
236 | m_values[0] = 0; \ | ||
237 | @@ -188,7 +188,7 @@ | ||
238 | |||
239 | class MP4BitfieldProperty : public MP4Integer64Property { | ||
240 | public: | ||
241 | - MP4BitfieldProperty(char* name, u_int8_t numBits) | ||
242 | + MP4BitfieldProperty(const char* name, u_int8_t numBits) | ||
243 | : MP4Integer64Property(name) { | ||
244 | ASSERT(numBits != 0); | ||
245 | ASSERT(numBits <= 64); | ||
246 | @@ -213,7 +213,7 @@ | ||
247 | |||
248 | class MP4Float32Property : public MP4Property { | ||
249 | public: | ||
250 | - MP4Float32Property(char* name) | ||
251 | + MP4Float32Property(const char* name) | ||
252 | : MP4Property(name) { | ||
253 | m_useFixed16Format = false; | ||
254 | m_useFixed32Format = false; | ||
255 | @@ -280,7 +280,7 @@ | ||
256 | |||
257 | class MP4StringProperty : public MP4Property { | ||
258 | public: | ||
259 | - MP4StringProperty(char* name, | ||
260 | + MP4StringProperty(const char* name, | ||
261 | bool useCountedFormat = false, bool useUnicode = false); | ||
262 | |||
263 | ~MP4StringProperty(); | ||
264 | @@ -355,7 +355,7 @@ | ||
265 | |||
266 | class MP4BytesProperty : public MP4Property { | ||
267 | public: | ||
268 | - MP4BytesProperty(char* name, u_int32_t valueSize = 0, | ||
269 | + MP4BytesProperty(const char* name, u_int32_t valueSize = 0, | ||
270 | u_int32_t defaultValueSize = 0); | ||
271 | |||
272 | ~MP4BytesProperty(); | ||
273 | @@ -419,7 +419,7 @@ | ||
274 | |||
275 | class MP4TableProperty : public MP4Property { | ||
276 | public: | ||
277 | - MP4TableProperty(char* name, MP4IntegerProperty* pCountProperty); | ||
278 | + MP4TableProperty(const char* name, MP4IntegerProperty* pCountProperty); | ||
279 | |||
280 | ~MP4TableProperty(); | ||
281 | |||
282 | @@ -469,7 +469,7 @@ | ||
283 | |||
284 | class MP4DescriptorProperty : public MP4Property { | ||
285 | public: | ||
286 | - MP4DescriptorProperty(char* name = NULL, | ||
287 | + MP4DescriptorProperty(const char* name = NULL, | ||
288 | u_int8_t tagsStart = 0, u_int8_t tagsEnd = 0, | ||
289 | bool mandatory = false, bool onlyOne = false); | ||
290 | |||
291 | @@ -531,7 +531,7 @@ | ||
292 | |||
293 | class MP4QosQualifierProperty : public MP4DescriptorProperty { | ||
294 | public: | ||
295 | - MP4QosQualifierProperty(char* name = NULL, | ||
296 | + MP4QosQualifierProperty(const char* name = NULL, | ||
297 | u_int8_t tagsStart = 0, u_int8_t tagsEnd = 0, | ||
298 | bool mandatory = false, bool onlyOne = false) : | ||
299 | MP4DescriptorProperty(name, tagsStart, tagsEnd, mandatory, onlyOne) { } | ||
300 | --- a/common/mp4v2/mp4track.cpp | ||
301 | +++ b/common/mp4v2/mp4track.cpp | ||
302 | @@ -1360,7 +1360,7 @@ | ||
303 | } | ||
304 | } | ||
305 | |||
306 | -MP4Atom* MP4Track::AddAtom(char* parentName, char* childName) | ||
307 | +MP4Atom* MP4Track::AddAtom(const char* parentName, const char* childName) | ||
308 | { | ||
309 | MP4Atom* pChildAtom = MP4Atom::CreateAtom(childName); | ||
310 | |||
311 | --- a/common/mp4v2/mp4track.h | ||
312 | +++ b/common/mp4v2/mp4track.h | ||
313 | @@ -168,7 +168,7 @@ | ||
314 | void UpdateSyncSamples(MP4SampleId sampleId, | ||
315 | bool isSyncSample); | ||
316 | |||
317 | - MP4Atom* AddAtom(char* parentName, char* childName); | ||
318 | + MP4Atom* AddAtom(const char* parentName, const char* childName); | ||
319 | |||
320 | void UpdateDurations(MP4Duration duration); | ||
321 | MP4Duration ToMovieDuration(MP4Duration trackDuration); | ||
322 | --- a/common/mp4v2/ocidescriptors.cpp | ||
323 | +++ b/common/mp4v2/ocidescriptors.cpp | ||
324 | @@ -171,7 +171,7 @@ | ||
325 | |||
326 | class MP4CreatorTableProperty : public MP4TableProperty { | ||
327 | public: | ||
328 | - MP4CreatorTableProperty(char* name, MP4Integer8Property* pCountProperty) : | ||
329 | + MP4CreatorTableProperty(const char* name, MP4Integer8Property* pCountProperty) : | ||
330 | MP4TableProperty(name, pCountProperty) { | ||
331 | }; | ||
332 | protected: | ||
diff --git a/meta-multimedia/recipes-multimedia/fluidsynth/fluidsynth_1.1.6.bb b/meta-multimedia/recipes-multimedia/fluidsynth/fluidsynth_1.1.6.bb new file mode 100644 index 000000000..b0bc824c5 --- /dev/null +++ b/meta-multimedia/recipes-multimedia/fluidsynth/fluidsynth_1.1.6.bb | |||
@@ -0,0 +1,23 @@ | |||
1 | SUMMARY = "Fluidsynth is a software synthesizer" | ||
2 | HOMEPAGE = "http://www.fluidsynth.org/" | ||
3 | SECTION = "libs/multimedia" | ||
4 | LICENSE = "LGPL-2.0+" | ||
5 | LIC_FILES_CHKSUM = "file://COPYING;md5=e198e9aac94943d0ec29a7dae8c29416" | ||
6 | |||
7 | DEPENDS = "alsa-lib ncurses glib-2.0" | ||
8 | |||
9 | SRC_URI = "${SOURCEFORGE_MIRROR}/project/${BPN}/${BP}/${BP}.tar.gz" | ||
10 | SRC_URI[md5sum] = "ae5aca6de824b4173667cbd3a310b263" | ||
11 | SRC_URI[sha256sum] = "50853391d9ebeda9b4db787efb23f98b1e26b7296dd2bb5d0d96b5bccee2171c" | ||
12 | |||
13 | inherit autotools-brokensep pkgconfig lib_package | ||
14 | |||
15 | PACKAGECONFIG ??= "${@base_contains('DISTRO_FEATURES', 'pulseaudio', 'pulseaudio', '', d)}" | ||
16 | PACKAGECONFIG[sndfile] = "--enable-libsndfile-support,--disable-libsndfile-support,libsndfile1" | ||
17 | PACKAGECONFIG[jack] = "--enable-jack-support,--disable-jack-support,jack" | ||
18 | PACKAGECONFIG[pulseaudio] = "--enable-pulse-support,--disable-pulse-support,pulseaudio" | ||
19 | PACKAGECONFIG[portaudio] = "--enable-portaudio-support,--disable-portaudio-support,portaudio" | ||
20 | |||
21 | do_configure_prepend () { | ||
22 | rm -f ${S}/m4/* | ||
23 | } | ||
diff --git a/meta-multimedia/recipes-multimedia/gstreamer/gst-rtsp/0001-change-deprecated-INCLUDES-to-AM_CPPFLAGS-for-automa.patch b/meta-multimedia/recipes-multimedia/gstreamer/gst-rtsp/0001-change-deprecated-INCLUDES-to-AM_CPPFLAGS-for-automa.patch new file mode 100644 index 000000000..3afca4ec9 --- /dev/null +++ b/meta-multimedia/recipes-multimedia/gstreamer/gst-rtsp/0001-change-deprecated-INCLUDES-to-AM_CPPFLAGS-for-automa.patch | |||
@@ -0,0 +1,34 @@ | |||
1 | index gst-rtsp_0.10.8/bindings/python/Makefile.am | ||
2 | --- gst-rtsp_0.10.8.orig/bindings/python/Makefile.am | ||
3 | +++ gst-rtsp_0.10.8/bindings/python/Makefile.am | ||
4 | @@ -14,7 +14,7 @@ defs_DATA = $(DEFS) | ||
5 | defsdir = $(pkgdatadir)/$(GST_MAJORMINOR)/defs | ||
6 | OVERRIDES = rtspserver.override | ||
7 | |||
8 | -INCLUDES = -I$(top_srcdir) -I$(srcdir) $(PYTHON_INCLUDES) | ||
9 | +AM_CPPFLAGS = -I$(top_srcdir) -I$(srcdir) $(PYTHON_INCLUDES) | ||
10 | |||
11 | rtspserver_la_CFLAGS = -I$(top_srcdir)/src \ | ||
12 | $(PYGOBJECT_CFLAGS) $(GST_PLUGINS_BASE_CFLAGS) $(GST_CFLAGS) | ||
13 | index gst-rtsp_0.10.8/examples/Makefile.am | ||
14 | --- gst-rtsp_0.10.8.orig/examples/Makefile.am | ||
15 | +++ gst-rtsp_0.10.8/examples/Makefile.am | ||
16 | @@ -1,6 +1,6 @@ | ||
17 | noinst_PROGRAMS = test-video test-ogg test-mp4 test-readme test-launch test-sdp test-uri test-auth | ||
18 | |||
19 | -INCLUDES = -I$(top_srcdir) -I$(srcdir) | ||
20 | +AM_CPPFLAGS = -I$(top_srcdir) -I$(srcdir) | ||
21 | |||
22 | AM_CFLAGS = $(GST_PLUGINS_BASE_CFLAGS) $(GST_CFLAGS) | ||
23 | AM_LDFLAGS = \ | ||
24 | index gst-rtsp_0.10.8/tests/Makefile.am | ||
25 | --- gst-rtsp_0.10.8.orig/tests/Makefile.am | ||
26 | +++ gst-rtsp_0.10.8/tests/Makefile.am | ||
27 | @@ -1,6 +1,6 @@ | ||
28 | noinst_PROGRAMS = test-cleanup | ||
29 | |||
30 | -INCLUDES = -I$(top_srcdir) -I$(srcdir) | ||
31 | +AM_CPPFLAGS = -I$(top_srcdir) -I$(srcdir) | ||
32 | |||
33 | AM_CFLAGS = $(GST_PLUGINS_BASE_CFLAGS) $(GST_CFLAGS) | ||
34 | AM_LDFLAGS = \ | ||
diff --git a/meta-multimedia/recipes-multimedia/gstreamer/gst-rtsp_0.10.8.bb b/meta-multimedia/recipes-multimedia/gstreamer/gst-rtsp_0.10.8.bb new file mode 100644 index 000000000..931865651 --- /dev/null +++ b/meta-multimedia/recipes-multimedia/gstreamer/gst-rtsp_0.10.8.bb | |||
@@ -0,0 +1,16 @@ | |||
1 | SUMMARY = "GStreamer RTSP server" | ||
2 | LICENSE = "LGPLv2+" | ||
3 | LIC_FILES_CHKSUM = "file://COPYING;md5=55ca817ccb7d5b5b66355690e9abc605" | ||
4 | |||
5 | SRC_URI = "http://gstreamer.freedesktop.org/src/${BPN}/${BPN}-${PV}.tar.bz2 \ | ||
6 | file://0001-change-deprecated-INCLUDES-to-AM_CPPFLAGS-for-automa.patch" | ||
7 | SRC_URI[md5sum] = "b511af07000595f63c3a705946221643" | ||
8 | SRC_URI[sha256sum] = "9915887cf8515bda87462c69738646afb715b597613edc7340477ccab63a6617" | ||
9 | |||
10 | DEPENDS = "gst-plugins-base gstreamer" | ||
11 | |||
12 | # Configure always checks for Python so inherit pythonnative. Better solution | ||
13 | # would be to disable the checks entirely. | ||
14 | inherit autotools pythonnative gettext | ||
15 | |||
16 | FILES_${PN}-dev += "${datadir}/vala/vapi/" | ||
diff --git a/meta-multimedia/recipes-multimedia/libao/libao_1.1.0.bb b/meta-multimedia/recipes-multimedia/libao/libao_1.1.0.bb new file mode 100644 index 000000000..1a2260485 --- /dev/null +++ b/meta-multimedia/recipes-multimedia/libao/libao_1.1.0.bb | |||
@@ -0,0 +1,32 @@ | |||
1 | SUMMARY = "Cross-platform audio output library and plugins" | ||
2 | DESCRIPTION = "Libao is a cross-platform audio library that allows programs to \ | ||
3 | output audio using a simple API on a wide variety of platforms." | ||
4 | SECTION = "multimedia" | ||
5 | HOMEPAGE = "https://www.xiph.org/ao/" | ||
6 | |||
7 | LICENSE = "GPLv2" | ||
8 | LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f" | ||
9 | |||
10 | SRC_URI="http://downloads.xiph.org/releases/ao/${BP}.tar.gz" | ||
11 | SRC_URI[md5sum] = "2b2508c29bc97e4dc218fa162cf883c8" | ||
12 | SRC_URI[sha256sum] = "29de5bb9b1726ba890455ef7e562d877df87811febb0d99ee69164b88c171bd4" | ||
13 | |||
14 | inherit autotools | ||
15 | |||
16 | PACKAGES_DYNAMIC += "^${BPN}-plugin-.*" | ||
17 | |||
18 | do_install_append () { | ||
19 | find "${D}" -name '*.la' -exec rm -f {} + | ||
20 | } | ||
21 | |||
22 | python populate_packages_prepend () { | ||
23 | rootdir = bb.data.expand('${libdir}/ao/plugins-4', d) | ||
24 | rootdir_dbg = bb.data.expand('${libdir}/ao/plugins-4/.debug', d) | ||
25 | do_split_packages(d, rootdir, '^(.*)\.so$', output_pattern='${BPN}-plugin-%s', description='AO %s plugin') | ||
26 | do_split_packages(d, rootdir_dbg, '^(.*)\.so$', output_pattern='${BPN}-plugin-%s-dbg', description='AO %s plugin debug data') | ||
27 | } | ||
28 | |||
29 | PACKAGECONFIG ?= "${@base_contains('DISTRO_FEATURES', 'pulseaudio', 'pulseaudio', '', d) ${@base_contains('DISTRO_FEATURES', 'alsa', 'alsa', '', d)" | ||
30 | PACKAGECONFIG[esound] = "--enable-esd,--disable-esd,esound" | ||
31 | PACKAGECONFIG[alsa] = "--enable-alsa,--disable-alsa,alsa-lib" | ||
32 | PACKAGECONFIG[pulseaudio] = "--enable-pulse,--disable-pulse,pulseaudio" | ||
diff --git a/meta-multimedia/recipes-multimedia/libdc1394/files/install_examples.patch b/meta-multimedia/recipes-multimedia/libdc1394/files/install_examples.patch new file mode 100755 index 000000000..89133adec --- /dev/null +++ b/meta-multimedia/recipes-multimedia/libdc1394/files/install_examples.patch | |||
@@ -0,0 +1,14 @@ | |||
1 | Index: libdc1394/examples/Makefile.am | ||
2 | =================================================================== | ||
3 | --- libdc1394.orig/examples/Makefile.am 2012-06-30 17:50:46.000000000 -0700 | ||
4 | +++ libdc1394/examples/Makefile.am 2012-06-30 19:02:13.822646430 -0700 | ||
5 | @@ -36,8 +36,7 @@ | ||
6 | AM_LDFLAGS = -framework CoreFoundation -framework Carbon | ||
7 | endif | ||
8 | |||
9 | -noinst_PROGRAMS = $(A) | ||
10 | -bin_PROGRAMS = $(B) | ||
11 | +bin_PROGRAMS = $(A) $(B) | ||
12 | |||
13 | LDADD = ../dc1394/libdc1394.la | ||
14 | |||
diff --git a/meta-multimedia/recipes-multimedia/libdc1394/libdc1394_git.bb b/meta-multimedia/recipes-multimedia/libdc1394/libdc1394_git.bb new file mode 100755 index 000000000..0ea5cb90a --- /dev/null +++ b/meta-multimedia/recipes-multimedia/libdc1394/libdc1394_git.bb | |||
@@ -0,0 +1,22 @@ | |||
1 | SUMMARY = "Capture and control API for IIDC compliant cameras" | ||
2 | HOMEPAGE = "http://sourceforge.net/projects/libdc1394/" | ||
3 | SECTION = "libs" | ||
4 | LICENSE = "LGPL-2.0" | ||
5 | LIC_FILES_CHKSUM = "file://COPYING;md5=c848e78d9a4a5cc69906178e4d6fbd64" | ||
6 | |||
7 | # libsdl to provide sdl.m4 with AM_PATH_SDL | ||
8 | DEPENDS += "libusb1 libraw1394 libsdl" | ||
9 | |||
10 | PV = "2.2.1+gitr${SRCPV}" | ||
11 | |||
12 | SRCREV = "b90342933b4b48634b98b73805f47bd25ed5857e" | ||
13 | |||
14 | SRC_URI = "git://git.code.sf.net/p/libdc1394/code;branch=master;protocol=git \ | ||
15 | file://install_examples.patch \ | ||
16 | " | ||
17 | |||
18 | S = "${WORKDIR}/git/${PN}" | ||
19 | |||
20 | inherit autotools-brokensep pkgconfig | ||
21 | |||
22 | EXTRA_OECONF += "--disable-doxygen-doc --disable-examples" | ||
diff --git a/meta-multimedia/recipes-multimedia/mpg123/mpg123_1.21.0.bb b/meta-multimedia/recipes-multimedia/mpg123/mpg123_1.21.0.bb new file mode 100644 index 000000000..4efdeab6e --- /dev/null +++ b/meta-multimedia/recipes-multimedia/mpg123/mpg123_1.21.0.bb | |||
@@ -0,0 +1,51 @@ | |||
1 | SUMMARY = "Audio decoder for MPEG-1 Layer 1/2/3" | ||
2 | DESCRIPTION = "The core of mpg123 is an MPEG-1 Layer 1/2/3 decoding library, which can be used by other programs. \ | ||
3 | mpg123 also comes with a command-line tool which can playback using ALSA, PulseAudio, OSS, and several other APIs, \ | ||
4 | and also can write the decoded audio to WAV." | ||
5 | HOMEPAGE = "http://mpg123.de/" | ||
6 | BUGTRACKER = "http://sourceforge.net/p/mpg123/bugs/" | ||
7 | SECTION = "multimedia" | ||
8 | |||
9 | DEPENDS = "tslib audiofile" | ||
10 | |||
11 | # The options should be mutually exclusive for configuration script. | ||
12 | # If both alsa and pulseaudio are specified (as in the default distro features) | ||
13 | # pulseaudio takes precedence. | ||
14 | PACKAGECONFIG_ALSA = "${@base_contains('DISTRO_FEATURES', 'alsa', 'alsa', '', d)}" | ||
15 | PACKAGECONFIG ??= "${@base_contains('DISTRO_FEATURES', 'pulseaudio', 'pulseaudio', '${PACKAGECONFIG_ALSA}', d)}" | ||
16 | PACKAGECONFIG[pulseaudio] = "--with-default-audio=pulse,,pulseaudio" | ||
17 | PACKAGECONFIG[alsa] = "--with-default-audio=alsa,,alsa-lib" | ||
18 | PACKAGECONFIG[sdl] = ",,libsdl" | ||
19 | PACKAGECONFIG[openal] = ",,openal-soft" | ||
20 | PACKAGECONFIG[jack] = ",,jack" | ||
21 | PACKAGECONFIG[portaudio] = ",,portaudio-v19" | ||
22 | PACKAGECONFIG[esd] = ",,esound" | ||
23 | |||
24 | # Following are possible sound output modules | ||
25 | #alsa tinyalsa oss coreaudio sndio sun win32 win32_wasapi os2 esd jack portaudio pulse sdl nas arts openal dummy | ||
26 | AUDIOMODS += "${@base_contains('PACKAGECONFIG', 'alsa', 'alsa', '', d)}" | ||
27 | AUDIOMODS += "${@base_contains('PACKAGECONFIG', 'pulseaudio', 'pulse', '', d)}" | ||
28 | AUDIOMODS += "${@base_contains('PACKAGECONFIG', 'sdl', 'sdl', '', d)}" | ||
29 | AUDIOMODS += "${@base_contains('PACKAGECONFIG', 'openal', 'openal', '', d)}" | ||
30 | AUDIOMODS += "${@base_contains('PACKAGECONFIG', 'jack', 'jack', '', d)}" | ||
31 | AUDIOMODS += "${@base_contains('PACKAGECONFIG', 'portaudio', 'portaudio', '', d)}" | ||
32 | AUDIOMODS += "${@base_contains('PACKAGECONFIG', 'esd', 'esd', '', d)}" | ||
33 | |||
34 | LICENSE = "LGPLv2.1" | ||
35 | LICENSE_FLAGS = "commercial" | ||
36 | LIC_FILES_CHKSUM = "file://COPYING;md5=1e86753638d3cf2512528b99079bc4f3" | ||
37 | |||
38 | SRC_URI = "${SOURCEFORGE_MIRROR}/mpg123/mpg123/${PV}/${BP}.tar.bz2" | ||
39 | SRC_URI[md5sum] = "13a9df5d4e7aa110e4ae27cf30128ce9" | ||
40 | SRC_URI[sha256sum] = "3ad197f77c9ffdf3601e1c3183ae0709ccb3c3de68309527ce9375fcfb15dcba" | ||
41 | |||
42 | inherit autotools pkgconfig | ||
43 | |||
44 | EXTRA_OECONF = " \ | ||
45 | --enable-shared \ | ||
46 | --with-audio='${AUDIOMODS}' \ | ||
47 | --with-module-suffix=.so \ | ||
48 | ${@bb.utils.contains('TUNE_FEATURES', 'neon', '--with-cpu=neon', '', d)} \ | ||
49 | ${@bb.utils.contains('TUNE_FEATURES', 'altivec', '--with-cpu=altivec', '', d)} \ | ||
50 | " | ||
51 | |||
diff --git a/meta-multimedia/recipes-multimedia/musicbrainz/files/allow-libdir-override.patch b/meta-multimedia/recipes-multimedia/musicbrainz/files/allow-libdir-override.patch new file mode 100644 index 000000000..d59d12e69 --- /dev/null +++ b/meta-multimedia/recipes-multimedia/musicbrainz/files/allow-libdir-override.patch | |||
@@ -0,0 +1,21 @@ | |||
1 | Allow LIB_INSTALL_DIR to be set by the the cmake configure invocation. We dont | ||
2 | easily have a way of determining something that patches ${LIB_SUFFIX} so we'll | ||
3 | set LIB_INSTALL_DIR. | ||
4 | |||
5 | Upstream-Status: Inappropriate [configuration] | ||
6 | |||
7 | Signed-off-by: Kumar Gala <galak@kernel.crashing.org> | ||
8 | |||
9 | Index: libmusicbrainz-3.0.3/CMakeLists.txt | ||
10 | =================================================================== | ||
11 | --- libmusicbrainz-3.0.3.orig/CMakeLists.txt | ||
12 | +++ libmusicbrainz-3.0.3/CMakeLists.txt | ||
13 | @@ -26,7 +26,7 @@ FIND_PACKAGE(DiscId) | ||
14 | SET(LIB_SUFFIX "" CACHE STRING "Define suffix of directory name (32/64)") | ||
15 | SET(EXEC_INSTALL_PREFIX ${CMAKE_INSTALL_PREFIX} CACHE PATH "Installation prefix for executables and object code libraries" FORCE) | ||
16 | SET(BIN_INSTALL_DIR ${EXEC_INSTALL_PREFIX}/bin CACHE PATH "Installation prefix for user executables" FORCE) | ||
17 | -SET(LIB_INSTALL_DIR ${EXEC_INSTALL_PREFIX}/lib${LIB_SUFFIX} CACHE PATH "Installation prefix for object code libraries" FORCE) | ||
18 | +SET(LIB_INSTALL_DIR ${EXEC_INSTALL_PREFIX}/lib${LIB_SUFFIX} CACHE PATH "Installation prefix for object code libraries") | ||
19 | SET(INCLUDE_INSTALL_DIR ${CMAKE_INSTALL_PREFIX}/include CACHE PATH "Installation prefix for C header files" FORCE) | ||
20 | |||
21 | CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/libmusicbrainz3.pc.cmake ${CMAKE_CURRENT_BINARY_DIR}/libmusicbrainz3.pc) | ||
diff --git a/meta-multimedia/recipes-multimedia/musicbrainz/libmusicbrainz_git.bb b/meta-multimedia/recipes-multimedia/musicbrainz/libmusicbrainz_git.bb new file mode 100644 index 000000000..a6a4f6a8a --- /dev/null +++ b/meta-multimedia/recipes-multimedia/musicbrainz/libmusicbrainz_git.bb | |||
@@ -0,0 +1,41 @@ | |||
1 | SUMMARY = "MusicBrainz client library" | ||
2 | DESCRIPTION = "The MusicBrainz client is a library which can be built into other programs. The library allows you to access the data held on the MusicBrainz server." | ||
3 | HOMEPAGE = "http://musicbrainz.org" | ||
4 | LICENSE = "LGPLv2.1+" | ||
5 | LIC_FILES_CHKSUM = "file://COPYING.txt;md5=fbc093901857fcd118f065f900982c24" | ||
6 | DEPENDS = "expat neon neon-native" | ||
7 | |||
8 | PV = "5.0.1+git${SRCPV}" | ||
9 | PR = "r1" | ||
10 | |||
11 | SRCREV = "0749dd0a35b4a54316da064475863a4ac6e28e7e" | ||
12 | SRC_URI = "git://github.com/metabrainz/libmusicbrainz.git \ | ||
13 | file://allow-libdir-override.patch " | ||
14 | |||
15 | S = "${WORKDIR}/git" | ||
16 | |||
17 | LDFLAGS_prepend_libc-uclibc = " -lpthread " | ||
18 | |||
19 | inherit cmake pkgconfig | ||
20 | |||
21 | do_configure_prepend() { | ||
22 | # The native build really doesn't like being rebuilt, so delete | ||
23 | # it if it's already present. Also delete all other files not | ||
24 | # known to Git to fix subsequent invocations of do_configure. | ||
25 | git clean -dfx -e /.pc/ -e /patches/ . | ||
26 | mkdir build-native | ||
27 | cd build-native | ||
28 | cmake -DCMAKE_C_FLAGS=${BUILD_CFLAGS} \ | ||
29 | -DCMAKE_C_COMPILER=${BUILD_CC} \ | ||
30 | -DCMAKE_CXX_FLAGS=${BUILD_CXXFLAGS} \ | ||
31 | -DCMAKE_CXX_COMPILER=${BUILD_CXX} \ | ||
32 | .. | ||
33 | make make-c-interface | ||
34 | cd .. | ||
35 | } | ||
36 | |||
37 | EXTRA_OECMAKE = "-DLIB_INSTALL_DIR:PATH=${libdir} \ | ||
38 | -DIMPORT_EXECUTABLES=build-native/ImportExecutables.cmake" | ||
39 | |||
40 | # out-of-tree building doesn't appear to work for this package. | ||
41 | B = "${S}" | ||
diff --git a/meta-multimedia/recipes-multimedia/musicpd/libmpd-11.8.17/glibc-2.20.patch b/meta-multimedia/recipes-multimedia/musicpd/libmpd-11.8.17/glibc-2.20.patch new file mode 100644 index 000000000..4a2b25cdd --- /dev/null +++ b/meta-multimedia/recipes-multimedia/musicpd/libmpd-11.8.17/glibc-2.20.patch | |||
@@ -0,0 +1,10 @@ | |||
1 | --- libmpd-11.8.17/src/libmpd-internal.h.orig 2014-09-30 04:08:50.963292427 +0200 | ||
2 | +++ libmpd-11.8.17/src/libmpd-internal.h 2014-09-30 04:08:30.595292223 +0200 | ||
3 | @@ -21,6 +21,7 @@ | ||
4 | #define __MPD_INTERNAL_LIB_ | ||
5 | |||
6 | #include "libmpdclient.h" | ||
7 | +#include "config.h" | ||
8 | struct _MpdData_real; | ||
9 | |||
10 | typedef struct _MpdData_real { | ||
diff --git a/meta-multimedia/recipes-multimedia/musicpd/libmpd_11.8.17.bb b/meta-multimedia/recipes-multimedia/musicpd/libmpd_11.8.17.bb new file mode 100644 index 000000000..54d79109d --- /dev/null +++ b/meta-multimedia/recipes-multimedia/musicpd/libmpd_11.8.17.bb | |||
@@ -0,0 +1,13 @@ | |||
1 | SUMMARY = "Music Player Daemon library" | ||
2 | LICENSE = "GPLv2" | ||
3 | LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe" | ||
4 | HOMEPAGE ="http://sourceforge.net/projects/musicpd" | ||
5 | DEPENDS = "glib-2.0" | ||
6 | |||
7 | SRC_URI = "http://www.musicpd.org/download/${BPN}/${PV}/${BP}.tar.gz \ | ||
8 | file://glibc-2.20.patch \ | ||
9 | " | ||
10 | SRC_URI[md5sum] = "5ae3d87467d52aef3345407adb0a2488" | ||
11 | SRC_URI[sha256sum] = "fe20326b0d10641f71c4673fae637bf9222a96e1712f71f170fca2fc34bf7a83" | ||
12 | |||
13 | inherit autotools pkgconfig | ||
diff --git a/meta-multimedia/recipes-multimedia/musicpd/mpd/mpd.conf.in b/meta-multimedia/recipes-multimedia/musicpd/mpd/mpd.conf.in new file mode 100644 index 000000000..f9f92c98b --- /dev/null +++ b/meta-multimedia/recipes-multimedia/musicpd/mpd/mpd.conf.in | |||
@@ -0,0 +1,420 @@ | |||
1 | # An example configuration file for MPD | ||
2 | # See the mpd.conf man page for a more detailed description of each parameter. | ||
3 | |||
4 | |||
5 | # Files and directories ####################################################### | ||
6 | # | ||
7 | # This setting controls the top directory which MPD will search to discover the | ||
8 | # available audio files and add them to the daemon's online database. This | ||
9 | # setting defaults to the XDG directory, otherwise the music directory will be | ||
10 | # be disabled and audio files will only be accepted over ipc socket (using | ||
11 | # file:// protocol) or streaming files over an accepted protocol. | ||
12 | # | ||
13 | music_directory "%music_directory%" | ||
14 | # | ||
15 | # This setting sets the MPD internal playlist directory. The purpose of this | ||
16 | # directory is storage for playlists created by MPD. The server will use | ||
17 | # playlist files not created by the server but only if they are in the MPD | ||
18 | # format. This setting defaults to playlist saving being disabled. | ||
19 | # | ||
20 | playlist_directory "%playlist_directory%" | ||
21 | # | ||
22 | # This setting sets the location of the MPD database. This file is used to | ||
23 | # load the database at server start up and store the database while the | ||
24 | # server is not up. This setting defaults to disabled which will allow | ||
25 | # MPD to accept files over ipc socket (using file:// protocol) or streaming | ||
26 | # files over an accepted protocol. | ||
27 | # | ||
28 | db_file "%db_file%" | ||
29 | # | ||
30 | # These settings are the locations for the daemon log files for the daemon. | ||
31 | # These logs are great for troubleshooting, depending on your log_level | ||
32 | # settings. | ||
33 | # | ||
34 | # The special value "syslog" makes MPD use the local syslog daemon. This | ||
35 | # setting defaults to logging to syslog, otherwise logging is disabled. | ||
36 | # | ||
37 | log_file "%log_file%" | ||
38 | # | ||
39 | # This setting sets the location of the file which stores the process ID | ||
40 | # for use of mpd --kill and some init scripts. This setting is disabled by | ||
41 | # default and the pid file will not be stored. | ||
42 | # | ||
43 | #pid_file "/var/run/mpd/mpd.pid" | ||
44 | # | ||
45 | # This setting sets the location of the file which contains information about | ||
46 | # most variables to get MPD back into the same general shape it was in before | ||
47 | # it was brought down. This setting is disabled by default and the server | ||
48 | # state will be reset on server start up. | ||
49 | # | ||
50 | state_file "%state_file%" | ||
51 | # | ||
52 | # The location of the sticker database. This is a database which | ||
53 | # manages dynamic information attached to songs. | ||
54 | # | ||
55 | #sticker_file "~/.mpd/sticker.sql" | ||
56 | # | ||
57 | ############################################################################### | ||
58 | |||
59 | |||
60 | # General music daemon options ################################################ | ||
61 | # | ||
62 | # This setting specifies the user that MPD will run as. MPD should never run as | ||
63 | # root and you may use this setting to make MPD change its user ID after | ||
64 | # initialization. This setting is disabled by default and MPD is run as the | ||
65 | # current user. | ||
66 | # | ||
67 | user "mpd" | ||
68 | # | ||
69 | # This setting specifies the group that MPD will run as. If not specified | ||
70 | # primary group of user specified with "user" setting will be used (if set). | ||
71 | # This is useful if MPD needs to be a member of group such as "audio" to | ||
72 | # have permission to use sound card. | ||
73 | # | ||
74 | group "audio" | ||
75 | # | ||
76 | # This setting sets the address for the daemon to listen on. Careful attention | ||
77 | # should be paid if this is assigned to anything other then the default, any. | ||
78 | # This setting can deny access to control of the daemon. | ||
79 | # | ||
80 | # For network | ||
81 | bind_to_address "any" | ||
82 | # | ||
83 | # And for Unix Socket | ||
84 | #bind_to_address "~/.mpd/socket" | ||
85 | # | ||
86 | # This setting is the TCP port that is desired for the daemon to get assigned | ||
87 | # to. | ||
88 | # | ||
89 | #port "6600" | ||
90 | # | ||
91 | # This setting controls the type of information which is logged. Available | ||
92 | # setting arguments are "default", "secure" or "verbose". The "verbose" setting | ||
93 | # argument is recommended for troubleshooting, though can quickly stretch | ||
94 | # available resources on limited hardware storage. | ||
95 | # | ||
96 | #log_level "default" | ||
97 | # | ||
98 | # If you have a problem with your MP3s ending abruptly it is recommended that | ||
99 | # you set this argument to "no" to attempt to fix the problem. If this solves | ||
100 | # the problem, it is highly recommended to fix the MP3 files with vbrfix | ||
101 | # (available from <http://www.willwap.co.uk/Programs/vbrfix.php>), at which | ||
102 | # point gapless MP3 playback can be enabled. | ||
103 | # | ||
104 | #gapless_mp3_playback "yes" | ||
105 | # | ||
106 | # This setting enables MPD to create playlists in a format usable by other | ||
107 | # music players. | ||
108 | # | ||
109 | #save_absolute_paths_in_playlists "no" | ||
110 | # | ||
111 | # This setting defines a list of tag types that will be extracted during the | ||
112 | # audio file discovery process. Optionally, 'comment' can be added to this | ||
113 | # list. | ||
114 | # | ||
115 | #metadata_to_use "artist,album,title,track,name,genre,date,composer,performer,disc" | ||
116 | # | ||
117 | # This setting enables automatic update of MPD's database when files in | ||
118 | # music_directory are changed. | ||
119 | # | ||
120 | #auto_update "yes" | ||
121 | # | ||
122 | # Limit the depth of the directories being watched, 0 means only watch | ||
123 | # the music directory itself. There is no limit by default. | ||
124 | # | ||
125 | #auto_update_depth "3" | ||
126 | # | ||
127 | ############################################################################### | ||
128 | |||
129 | |||
130 | # Symbolic link behavior ###################################################### | ||
131 | # | ||
132 | # If this setting is set to "yes", MPD will discover audio files by following | ||
133 | # symbolic links outside of the configured music_directory. | ||
134 | # | ||
135 | #follow_outside_symlinks "yes" | ||
136 | # | ||
137 | # If this setting is set to "yes", MPD will discover audio files by following | ||
138 | # symbolic links inside of the configured music_directory. | ||
139 | # | ||
140 | #follow_inside_symlinks "yes" | ||
141 | # | ||
142 | ############################################################################### | ||
143 | |||
144 | |||
145 | # Zeroconf / Avahi Service Discovery ########################################## | ||
146 | # | ||
147 | # If this setting is set to "yes", service information will be published with | ||
148 | # Zeroconf / Avahi. | ||
149 | # | ||
150 | #zeroconf_enabled "yes" | ||
151 | # | ||
152 | # The argument to this setting will be the Zeroconf / Avahi unique name for | ||
153 | # this MPD server on the network. | ||
154 | # | ||
155 | #zeroconf_name "Music Player" | ||
156 | # | ||
157 | ############################################################################### | ||
158 | |||
159 | |||
160 | # Permissions ################################################################# | ||
161 | # | ||
162 | # If this setting is set, MPD will require password authorization. The password | ||
163 | # can setting can be specified multiple times for different password profiles. | ||
164 | # | ||
165 | #password "password@read,add,control,admin" | ||
166 | # | ||
167 | # This setting specifies the permissions a user has who has not yet logged in. | ||
168 | # | ||
169 | #default_permissions "read,add,control,admin" | ||
170 | # | ||
171 | ############################################################################### | ||
172 | |||
173 | |||
174 | # Input ####################################################################### | ||
175 | # | ||
176 | |||
177 | input { | ||
178 | plugin "curl" | ||
179 | # proxy "proxy.isp.com:8080" | ||
180 | # proxy_user "user" | ||
181 | # proxy_password "password" | ||
182 | } | ||
183 | |||
184 | # | ||
185 | ############################################################################### | ||
186 | |||
187 | # Audio Output ################################################################ | ||
188 | # | ||
189 | # MPD supports various audio output types, as well as playing through multiple | ||
190 | # audio outputs at the same time, through multiple audio_output settings | ||
191 | # blocks. Setting this block is optional, though the server will only attempt | ||
192 | # autodetection for one sound card. | ||
193 | # | ||
194 | # See <http://mpd.wikia.com/wiki/Configuration#Audio_Outputs> for examples of | ||
195 | # other audio outputs. | ||
196 | # | ||
197 | # board specific examples ##################################################### | ||
198 | # (feel free to add futher) | ||
199 | # | ||
200 | # gumstix overo (tested with TOBI expansion board) | ||
201 | #audio_output { | ||
202 | # type "alsa" | ||
203 | # name "overo" | ||
204 | # mixer_control "Headset" | ||
205 | # mixer_index "0" | ||
206 | #} | ||
207 | # | ||
208 | # general examples ############################################################ | ||
209 | # | ||
210 | # An example of an ALSA output: | ||
211 | # | ||
212 | #audio_output { | ||
213 | # type "alsa" | ||
214 | # name "My ALSA Device" | ||
215 | ## device "hw:0,0" # optional | ||
216 | ## format "44100:16:2" # optional | ||
217 | ## mixer_type "hardware" # optional | ||
218 | ## mixer_device "default" # optional | ||
219 | ## mixer_control "PCM" # optional | ||
220 | ## mixer_index "0" # optional | ||
221 | #} | ||
222 | # | ||
223 | # An example of an OSS output: | ||
224 | # | ||
225 | #audio_output { | ||
226 | # type "oss" | ||
227 | # name "My OSS Device" | ||
228 | ## device "/dev/dsp" # optional | ||
229 | ## format "44100:16:2" # optional | ||
230 | ## mixer_type "hardware" # optional | ||
231 | ## mixer_device "/dev/mixer" # optional | ||
232 | ## mixer_control "PCM" # optional | ||
233 | #} | ||
234 | # | ||
235 | # An example of a shout output (for streaming to Icecast): | ||
236 | # | ||
237 | #audio_output { | ||
238 | # type "shout" | ||
239 | # encoding "ogg" # optional | ||
240 | # name "My Shout Stream" | ||
241 | # host "localhost" | ||
242 | # port "8000" | ||
243 | # mount "/mpd.ogg" | ||
244 | # password "hackme" | ||
245 | # quality "5.0" | ||
246 | # bitrate "128" | ||
247 | # format "44100:16:1" | ||
248 | ## protocol "icecast2" # optional | ||
249 | ## user "source" # optional | ||
250 | ## description "My Stream Description" # optional | ||
251 | ## genre "jazz" # optional | ||
252 | ## public "no" # optional | ||
253 | ## timeout "2" # optional | ||
254 | ## mixer_type "software" # optional | ||
255 | #} | ||
256 | # | ||
257 | # An example of a recorder output: | ||
258 | # | ||
259 | #audio_output { | ||
260 | # type "recorder" | ||
261 | # name "My recorder" | ||
262 | # encoder "vorbis" # optional, vorbis or lame | ||
263 | # path "/var/lib/mpd/recorder/mpd.ogg" | ||
264 | ## quality "5.0" # do not define if bitrate is defined | ||
265 | # bitrate "128" # do not define if quality is defined | ||
266 | # format "44100:16:1" | ||
267 | #} | ||
268 | # | ||
269 | # An example of a httpd output (built-in HTTP streaming server): | ||
270 | # | ||
271 | #audio_output { | ||
272 | # type "httpd" | ||
273 | # name "My HTTP Stream" | ||
274 | # encoder "vorbis" # optional, vorbis or lame | ||
275 | # port "8000" | ||
276 | # bind_to_address "0.0.0.0" # optional, IPv4 or IPv6 | ||
277 | ## quality "5.0" # do not define if bitrate is defined | ||
278 | # bitrate "128" # do not define if quality is defined | ||
279 | # format "44100:16:1" | ||
280 | # max_clients "0" # optional 0=no limit | ||
281 | #} | ||
282 | # | ||
283 | # An example of a pulseaudio output (streaming to a remote pulseaudio server) | ||
284 | # | ||
285 | #audio_output { | ||
286 | # type "pulse" | ||
287 | # name "My Pulse Output" | ||
288 | ## server "remote_server" # optional | ||
289 | ## sink "remote_server_sink" # optional | ||
290 | #} | ||
291 | # | ||
292 | ## Example "pipe" output: | ||
293 | # | ||
294 | #audio_output { | ||
295 | # type "pipe" | ||
296 | # name "my pipe" | ||
297 | # command "aplay -f cd 2>/dev/null" | ||
298 | ## Or if you're want to use AudioCompress | ||
299 | # command "AudioCompress -m | aplay -f cd 2>/dev/null" | ||
300 | ## Or to send raw PCM stream through PCM: | ||
301 | # command "nc example.org 8765" | ||
302 | # format "44100:16:2" | ||
303 | #} | ||
304 | # | ||
305 | ## An example of a null output (for no audio output): | ||
306 | # | ||
307 | #audio_output { | ||
308 | # type "null" | ||
309 | # name "My Null Output" | ||
310 | # mixer_type "none" # optional | ||
311 | #} | ||
312 | # | ||
313 | # This setting will change all decoded audio to be converted to the specified | ||
314 | # format before being passed to the audio outputs. By default, this setting is | ||
315 | # disabled. | ||
316 | # | ||
317 | #audio_output_format "44100:16:2" | ||
318 | # | ||
319 | # If MPD has been compiled with libsamplerate support, this setting specifies | ||
320 | # the sample rate converter to use. Possible values can be found in the | ||
321 | # mpd.conf man page or the libsamplerate documentation. By default, this is | ||
322 | # setting is disabled. | ||
323 | # | ||
324 | #samplerate_converter "Fastest Sinc Interpolator" | ||
325 | # | ||
326 | ############################################################################### | ||
327 | |||
328 | |||
329 | # Normalization automatic volume adjustments ################################## | ||
330 | # | ||
331 | # This setting specifies the type of ReplayGain to use. This setting can have | ||
332 | # the argument "off", "album" or "track". See <http://www.replaygain.org> | ||
333 | # for more details. This setting is off by default. | ||
334 | # | ||
335 | #replaygain "album" | ||
336 | # | ||
337 | # This setting sets the pre-amp used for files that have ReplayGain tags. By | ||
338 | # default this setting is disabled. | ||
339 | # | ||
340 | #replaygain_preamp "0" | ||
341 | # | ||
342 | # This setting enables on-the-fly normalization volume adjustment. This will | ||
343 | # result in the volume of all playing audio to be adjusted so the output has | ||
344 | # equal "loudness". This setting is disabled by default. | ||
345 | # | ||
346 | #volume_normalization "no" | ||
347 | # | ||
348 | ############################################################################### | ||
349 | |||
350 | |||
351 | # MPD Internal Buffering ###################################################### | ||
352 | # | ||
353 | # This setting adjusts the size of internal decoded audio buffering. Changing | ||
354 | # this may have undesired effects. Don't change this if you don't know what you | ||
355 | # are doing. | ||
356 | # | ||
357 | #audio_buffer_size "2048" | ||
358 | # | ||
359 | # This setting controls the percentage of the buffer which is filled before | ||
360 | # beginning to play. Increasing this reduces the chance of audio file skipping, | ||
361 | # at the cost of increased time prior to audio playback. | ||
362 | # | ||
363 | #buffer_before_play "10%" | ||
364 | # | ||
365 | ############################################################################### | ||
366 | |||
367 | |||
368 | # Resource Limitations ######################################################## | ||
369 | # | ||
370 | # These settings are various limitations to prevent MPD from using too many | ||
371 | # resources. Generally, these settings should be minimized to prevent security | ||
372 | # risks, depending on the operating resources. | ||
373 | # | ||
374 | #connection_timeout "60" | ||
375 | #max_connections "10" | ||
376 | #max_playlist_length "16384" | ||
377 | #max_command_list_size "2048" | ||
378 | #max_output_buffer_size "8192" | ||
379 | # | ||
380 | ############################################################################### | ||
381 | |||
382 | |||
383 | # Character Encoding ########################################################## | ||
384 | # | ||
385 | # If file or directory names do not display correctly for your locale then you | ||
386 | # may need to modify this setting. | ||
387 | # | ||
388 | #filesystem_charset "UTF-8" | ||
389 | # | ||
390 | # This setting controls the encoding that ID3v1 tags should be converted from. | ||
391 | # | ||
392 | #id3v1_encoding "ISO-8859-1" | ||
393 | # | ||
394 | ############################################################################### | ||
395 | |||
396 | |||
397 | # SIDPlay decoder ############################################################# | ||
398 | # | ||
399 | # songlength_database: | ||
400 | # Location of your songlengths file, as distributed with the HVSC. | ||
401 | # The sidplay plugin checks this for matching MD5 fingerprints. | ||
402 | # See http://www.c64.org/HVSC/DOCUMENTS/Songlengths.faq | ||
403 | # | ||
404 | # default_songlength: | ||
405 | # This is the default playing time in seconds for songs not in the | ||
406 | # songlength database, or in case you're not using a database. | ||
407 | # A value of 0 means play indefinitely. | ||
408 | # | ||
409 | # filter: | ||
410 | # Turns the SID filter emulation on or off. | ||
411 | # | ||
412 | #decoder { | ||
413 | # plugin "sidplay" | ||
414 | # songlength_database "/media/C64Music/DOCUMENTS/Songlengths.txt" | ||
415 | # default_songlength "120" | ||
416 | # filter "true" | ||
417 | #} | ||
418 | # | ||
419 | ############################################################################### | ||
420 | |||
diff --git a/meta-multimedia/recipes-multimedia/musicpd/mpd_0.19.1.bb b/meta-multimedia/recipes-multimedia/musicpd/mpd_0.19.1.bb new file mode 100644 index 000000000..04eed0aeb --- /dev/null +++ b/meta-multimedia/recipes-multimedia/musicpd/mpd_0.19.1.bb | |||
@@ -0,0 +1,58 @@ | |||
1 | SUMMARY = "Music Player Daemon" | ||
2 | LICENSE = "GPLv2" | ||
3 | LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe" | ||
4 | HOMEPAGE ="http://www.musicpd.org" | ||
5 | |||
6 | DEPENDS = "alsa-lib libsamplerate0 libsndfile1 libvorbis libogg faad2 ffmpeg curl sqlite bzip2 pulseaudio tcp-wrappers openal-soft yajl jack faad2 flac libao fluidsynth libcdio wavpack libopus mpg123 libmms libmodplug boost icu dbus expat zlib" | ||
7 | |||
8 | SRC_URI = " \ | ||
9 | http://www.musicpd.org/download/${BPN}/0.19/${BP}.tar.xz \ | ||
10 | file://mpd.conf.in \ | ||
11 | " | ||
12 | SRC_URI[md5sum] = "d235f6e53e5442b6926c49946a303f8d" | ||
13 | SRC_URI[sha256sum] = "8b3afcd440181c9bd18b229b5974e529d59648344dd371370d6f7d62ec2847c5" | ||
14 | |||
15 | inherit autotools useradd systemd | ||
16 | |||
17 | EXTRA_OECONF = "enable_bzip2=yes" | ||
18 | EXTRA_OECONF += "${@base_contains('DISTRO_FEATURES', 'systemd', '--with-systemdsystemunitdir=${systemd_unitdir}/system/', '--without-systemdsystemunitdir', d)}" | ||
19 | |||
20 | PACKAGECONFIG[mad] = "--enable-mad,--disable-mad,libmad" | ||
21 | PACKAGECONFIG[id3tag] = "--enable-id3,--disable-id3,libid3tag" | ||
22 | PACKAGECONFIG[lame] = "--enable-lame-encoder,--disable-lame-encoder,lame" | ||
23 | |||
24 | do_install_append() { | ||
25 | install -d ${D}/${localstatedir}/lib/mpd/music | ||
26 | chmod 775 ${D}/${localstatedir}/lib/mpd/music | ||
27 | install -d ${D}/${localstatedir}/lib/mpd/playlists | ||
28 | chown -R mpd ${D}/${localstatedir}/lib/mpd | ||
29 | chown mpd:mpd ${D}/${localstatedir}/lib/mpd/music | ||
30 | |||
31 | install -d ${D}/${sysconfdir} | ||
32 | install -m 644 ${WORKDIR}/mpd.conf.in ${D}/${sysconfdir}/mpd.conf | ||
33 | sed -i \ | ||
34 | -e 's|%music_directory%|${localstatedir}/lib/mpd/music|' \ | ||
35 | -e 's|%playlist_directory%|${localstatedir}/lib/mpd/playlists|' \ | ||
36 | -e 's|%db_file%|${localstatedir}/lib/mpd/mpd.db|' \ | ||
37 | -e 's|%log_file%|${localstatedir}/log/mpd.log|' \ | ||
38 | -e 's|%state_file%|${localstatedir}/lib/mpd/state|' \ | ||
39 | ${D}/${sysconfdir}/mpd.conf | ||
40 | |||
41 | if [ -e ${D}/${systemd_unitdir}/system/mpd.service ] ; then | ||
42 | sed -i \ | ||
43 | 's|^ExecStart=.*|ExecStart=${bindir}/mpd --no-daemon|' \ | ||
44 | ${D}/${systemd_unitdir}/system/mpd.service | ||
45 | fi | ||
46 | } | ||
47 | |||
48 | RPROVIDES_${PN} += "${PN}-systemd" | ||
49 | RREPLACES_${PN} += "${PN}-systemd" | ||
50 | RCONFLICTS_${PN} += "${PN}-systemd" | ||
51 | SYSTEMD_SERVICE_${PN} = "mpd.service" | ||
52 | |||
53 | USERADD_PACKAGES = "${PN}" | ||
54 | USERADD_PARAM_${PN} = " \ | ||
55 | --system --no-create-home \ | ||
56 | --home ${localstatedir}/lib/mpd \ | ||
57 | --groups audio \ | ||
58 | --user-group mpd" | ||
diff --git a/meta-multimedia/recipes-multimedia/nonworking/gstreamer/files/display.patch b/meta-multimedia/recipes-multimedia/nonworking/gstreamer/files/display.patch new file mode 100644 index 000000000..61b0e6c87 --- /dev/null +++ b/meta-multimedia/recipes-multimedia/nonworking/gstreamer/files/display.patch | |||
@@ -0,0 +1,60 @@ | |||
1 | Upstream-Status: Backport | ||
2 | Signed-off-by: Ross Burton <ross.burton@intel.com> | ||
3 | |||
4 | From 3e46d2e501da68d929bb5f26900a292a5fc04a1f Mon Sep 17 00:00:00 2001 | ||
5 | From: Stefan Westerfeld <stefan@space.twc.de> | ||
6 | Date: Mon, 23 Apr 2012 03:10:22 +0200 | ||
7 | Subject: [PATCH] Fix time display updates (broken by introduction of quiet | ||
8 | mode). | ||
9 | |||
10 | --- | ||
11 | src/gst123.cc | 1 + | ||
12 | src/msg.cc | 7 +++++++ | ||
13 | src/msg.h | 1 + | ||
14 | 3 files changed, 9 insertions(+) | ||
15 | |||
16 | diff --git a/src/gst123.cc b/src/gst123.cc | ||
17 | index 20e91e5..ce5876d 100644 | ||
18 | --- a/src/gst123.cc | ||
19 | +++ b/src/gst123.cc | ||
20 | @@ -640,6 +640,7 @@ cb_print_position (gpointer *data) | ||
21 | else | ||
22 | blanks += " "; | ||
23 | Msg::print ("%s%s\r", status.c_str(), blanks.c_str()); | ||
24 | + Msg::flush(); | ||
25 | } | ||
26 | |||
27 | /* call me again */ | ||
28 | diff --git a/src/msg.cc b/src/msg.cc | ||
29 | index 547cd90..33cada2 100644 | ||
30 | --- a/src/msg.cc | ||
31 | +++ b/src/msg.cc | ||
32 | @@ -41,6 +41,13 @@ print (const char *format, ...) | ||
33 | } | ||
34 | } | ||
35 | |||
36 | +void | ||
37 | +flush() | ||
38 | +{ | ||
39 | + if (!Options::the().quiet) | ||
40 | + fflush (stdout); | ||
41 | +} | ||
42 | + | ||
43 | } | ||
44 | |||
45 | } | ||
46 | diff --git a/src/msg.h b/src/msg.h | ||
47 | index e0ced24..5bebac0 100644 | ||
48 | --- a/src/msg.h | ||
49 | +++ b/src/msg.h | ||
50 | @@ -27,6 +27,7 @@ namespace Msg | ||
51 | { | ||
52 | |||
53 | void print (const char *format, ...); | ||
54 | +void flush(); | ||
55 | |||
56 | } | ||
57 | |||
58 | -- | ||
59 | 1.7.9.5 | ||
60 | |||
diff --git a/meta-multimedia/recipes-multimedia/nonworking/gstreamer/gst123_0.3.1.bb b/meta-multimedia/recipes-multimedia/nonworking/gstreamer/gst123_0.3.1.bb new file mode 100644 index 000000000..6c495b20c --- /dev/null +++ b/meta-multimedia/recipes-multimedia/nonworking/gstreamer/gst123_0.3.1.bb | |||
@@ -0,0 +1,15 @@ | |||
1 | SUMMARY = "Flexible CLI player in the spirit of mpg123, based on GStreamer" | ||
2 | HOMEPAGE = "http://space.twc.de/~stefan/gst123.php" | ||
3 | LICENSE = "LGPLv2.1+" | ||
4 | LIC_FILES_CHKSUM = "file://COPYING;md5=5f30f0716dfdd0d91eb439ebec522ec2 \ | ||
5 | file://src/gst123.cc;beginline=1;endline=19;md5=05d2f5d54b985b986c26af931d2084f8" | ||
6 | |||
7 | DEPENDS = "libx11 gstreamer gst-plugins-base gtk+ ncurses" | ||
8 | |||
9 | SRC_URI = "http://space.twc.de/~stefan/gst123/${BPN}-${PV}.tar.bz2 \ | ||
10 | file://display.patch" | ||
11 | |||
12 | SRC_URI[md5sum] = "1e77767c9d6fecee5641f95804f160fe" | ||
13 | SRC_URI[sha256sum] = "89d1de025eca0466c125dcd6a11b64341bdf98ee4c03c3e5a12321d77cb8b0ce" | ||
14 | |||
15 | inherit autotools | ||
diff --git a/meta-multimedia/recipes-multimedia/openal/openal-soft_1.15.1.bb b/meta-multimedia/recipes-multimedia/openal/openal-soft_1.15.1.bb new file mode 100644 index 000000000..ab038a71b --- /dev/null +++ b/meta-multimedia/recipes-multimedia/openal/openal-soft_1.15.1.bb | |||
@@ -0,0 +1,23 @@ | |||
1 | SUMMARY = "OpenAL is a cross-platform 3D audio API" | ||
2 | HOMEPAGE = "http://kcat.strangesoft.net/openal.html" | ||
3 | LICENSE = "GPLv2" | ||
4 | LIC_FILES_CHKSUM = "file://COPYING;md5=facc3a8f452930083bbb95d82b989c35" | ||
5 | |||
6 | inherit cmake | ||
7 | |||
8 | SRC_URI = "http://kcat.strangesoft.net/openal-releases/${BP}.tar.bz2" | ||
9 | SRC_URI[md5sum] = "ea83dec3b9655a27d28e7bc7cae9cd71" | ||
10 | SRC_URI[sha256sum] = "0e29a162f0841ccb4135ce76e92e8a704589b680a85eddf76f898de5236eb056" | ||
11 | |||
12 | PACKAGECONFIG ?= "\ | ||
13 | ${@base_contains('DISTRO_FEATURES', 'alsa', 'alsa', '', d)} \ | ||
14 | ${@base_contains('DISTRO_FEATURES', 'pulseaudio', 'pulseaudio', '', d)} \ | ||
15 | " | ||
16 | PACKAGECONFIG[alsa] = "-DALSA=TRUE, -DALSA=FALSE, alsa-lib" | ||
17 | PACKAGECONFIG[pulseaudio] = "-DPULSEAUDIO=TRUE, -DPULSEAUDIO=FALSE, pulseaudio" | ||
18 | # currently doesn't work with libav-9 | ||
19 | # PKG_CHECK_MODULES(FFMPEG libavcodec>=53.61.100 libavformat>=53.32.100 libavutil>=51.35.100) | ||
20 | # but alffmpeg.c:418:44: error: 'AV_CH_LAYOUT_MONO' undeclared (first use in this function) | ||
21 | PACKAGECONFIG[examples] = "-DEXAMPLES=TRUE, -DEXAMPLES=FALSE, libav" | ||
22 | |||
23 | FILES_${PN} += "${datadir}/openal" | ||
diff --git a/meta-multimedia/recipes-multimedia/rtmpdump/rtmpdump/fix-racing-build-issue.patch b/meta-multimedia/recipes-multimedia/rtmpdump/rtmpdump/fix-racing-build-issue.patch new file mode 100644 index 000000000..bb3d8b0ef --- /dev/null +++ b/meta-multimedia/recipes-multimedia/rtmpdump/rtmpdump/fix-racing-build-issue.patch | |||
@@ -0,0 +1,18 @@ | |||
1 | Make sure libdir (SODIR) is created when running parallel make. | ||
2 | |||
3 | Upstream-Status: Inappropriate [configuration] | ||
4 | |||
5 | Signed-off-by: Andrei Gherzan <andrei@gherzan.ro> | ||
6 | |||
7 | Index: git/librtmp/Makefile | ||
8 | =================================================================== | ||
9 | --- git.orig/librtmp/Makefile | ||
10 | +++ git/librtmp/Makefile | ||
11 | @@ -107,6 +107,7 @@ install_base: librtmp.a librtmp.pc | ||
12 | cp librtmp.3 $(MANDIR)/man3 | ||
13 | |||
14 | install_so: librtmp.$(SO_EXT) | ||
15 | + -mkdir -p $(SODIR) | ||
16 | cp librtmp.$(SO_EXT) $(SODIR) | ||
17 | cd $(SODIR); ln -sf librtmp.$(SO_EXT) librtmp.$(SOX) | ||
18 | |||
diff --git a/meta-multimedia/recipes-multimedia/rtmpdump/rtmpdump_2.4.bb b/meta-multimedia/recipes-multimedia/rtmpdump/rtmpdump_2.4.bb new file mode 100644 index 000000000..a1e650243 --- /dev/null +++ b/meta-multimedia/recipes-multimedia/rtmpdump/rtmpdump_2.4.bb | |||
@@ -0,0 +1,22 @@ | |||
1 | SUMMARY = "RTMP Dump" | ||
2 | DESCRIPTION = "rtmpdump is a toolkit for RTMP streams. All forms of RTMP are \ | ||
3 | supported, including rtmp://, rtmpt://, rtmpe://, rtmpte://, and rtmps://." | ||
4 | HOMEPAGE = "http://rtmpdump.mplayerhq.hu/" | ||
5 | LICENSE = "GPLv2" | ||
6 | LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe" | ||
7 | |||
8 | DEPENDS = "openssl zlib" | ||
9 | |||
10 | SRCREV = "3121324046e4ca1934e7e28293fc8326475d5053" | ||
11 | SRC_URI = " \ | ||
12 | git://git.ffmpeg.org/rtmpdump \ | ||
13 | file://fix-racing-build-issue.patch" | ||
14 | |||
15 | S = "${WORKDIR}/git" | ||
16 | |||
17 | inherit autotools-brokensep | ||
18 | |||
19 | EXTRA_OEMAKE = " \ | ||
20 | CC='${CC}' LD='${LD} ${STAGING_LIBDIR}' \ | ||
21 | SYS=posix INC=-I=/usr/include DESTDIR=${D} \ | ||
22 | prefix=${prefix} libdir=${libdir} incdir=${includedir}/librtmp bindir=${bindir} mandir=${mandir}" | ||
diff --git a/meta-multimedia/recipes-multimedia/sample-content/bigbuckbunny-1080p.bb b/meta-multimedia/recipes-multimedia/sample-content/bigbuckbunny-1080p.bb new file mode 100644 index 000000000..e91ba45c6 --- /dev/null +++ b/meta-multimedia/recipes-multimedia/sample-content/bigbuckbunny-1080p.bb | |||
@@ -0,0 +1,17 @@ | |||
1 | SUMMARY = "Big Buck Bunny movie - 1080P" | ||
2 | LICENSE = "CC-BY-3.0" | ||
3 | # http://www.bigbuckbunny.org/index.php/about/ | ||
4 | LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/CC-BY-3.0;md5=dfa02b5755629022e267f10b9c0a2ab7" | ||
5 | |||
6 | SRC_URI = "http://download.blender.org/peach/bigbuckbunny_movies/big_buck_bunny_1080p_surround.avi" | ||
7 | SRC_URI[md5sum] = "223991c8b33564eb77988a4c13c1c76a" | ||
8 | SRC_URI[sha256sum] = "69fe2cfe7154a6e752688e3a0d7d6b07b1605bbaf75b56f6470dc7b4c20c06ea" | ||
9 | |||
10 | inherit allarch | ||
11 | |||
12 | do_install() { | ||
13 | install -d ${D}${datadir}/movies | ||
14 | install -m 0644 ${WORKDIR}/big_buck_bunny_1080p_surround.avi ${D}${datadir}/movies/ | ||
15 | } | ||
16 | |||
17 | FILES_${PN} += "${datadir}/movies" | ||
diff --git a/meta-multimedia/recipes-multimedia/sample-content/bigbuckbunny-480p.bb b/meta-multimedia/recipes-multimedia/sample-content/bigbuckbunny-480p.bb new file mode 100644 index 000000000..e7029d9b0 --- /dev/null +++ b/meta-multimedia/recipes-multimedia/sample-content/bigbuckbunny-480p.bb | |||
@@ -0,0 +1,17 @@ | |||
1 | SUMMARY = "Big Buck Bunny movie - 480P" | ||
2 | LICENSE = "CC-BY-3.0" | ||
3 | # http://www.bigbuckbunny.org/index.php/about/ | ||
4 | LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/CC-BY-3.0;md5=dfa02b5755629022e267f10b9c0a2ab7" | ||
5 | |||
6 | SRC_URI = "http://download.blender.org/peach/bigbuckbunny_movies/big_buck_bunny_480p_surround-fix.avi" | ||
7 | SRC_URI[md5sum] = "ed7ed01e9aefba8ddd77c13332cec120" | ||
8 | SRC_URI[sha256sum] = "40d1cf5bc8e1b0e55dac7bb2e3fbc2aea05b6679444864781299b24db044634f" | ||
9 | |||
10 | inherit allarch | ||
11 | |||
12 | do_install() { | ||
13 | install -d ${D}${datadir}/movies | ||
14 | install -m 0644 ${WORKDIR}/big_buck_bunny_480p_surround-fix.avi ${D}${datadir}/movies/ | ||
15 | } | ||
16 | |||
17 | FILES_${PN} += "${datadir}/movies" | ||
diff --git a/meta-multimedia/recipes-multimedia/sample-content/bigbuckbunny-720p.bb b/meta-multimedia/recipes-multimedia/sample-content/bigbuckbunny-720p.bb new file mode 100644 index 000000000..55fceabc8 --- /dev/null +++ b/meta-multimedia/recipes-multimedia/sample-content/bigbuckbunny-720p.bb | |||
@@ -0,0 +1,17 @@ | |||
1 | SUMMARY = "Big Buck Bunny movie - 720P" | ||
2 | LICENSE = "CC-BY-3.0" | ||
3 | # http://www.bigbuckbunny.org/index.php/about/ | ||
4 | LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/CC-BY-3.0;md5=dfa02b5755629022e267f10b9c0a2ab7" | ||
5 | |||
6 | SRC_URI = "http://download.blender.org/peach/bigbuckbunny_movies/big_buck_bunny_720p_surround.avi" | ||
7 | SRC_URI[md5sum] = "0da8fe124595f5b206d64cb1400bbefc" | ||
8 | SRC_URI[sha256sum] = "b957d6e6212638441b52d3b620af157cc8d40c2a0342669294854a06edcd528c" | ||
9 | |||
10 | inherit allarch | ||
11 | |||
12 | do_install() { | ||
13 | install -d ${D}${datadir}/movies | ||
14 | install -m 0644 ${WORKDIR}/big_buck_bunny_720p_surround.avi ${D}${datadir}/movies/ | ||
15 | } | ||
16 | |||
17 | FILES_${PN} += "${datadir}/movies" | ||
diff --git a/meta-multimedia/recipes-multimedia/sample-content/tearsofsteel-1080p.bb b/meta-multimedia/recipes-multimedia/sample-content/tearsofsteel-1080p.bb new file mode 100644 index 000000000..bb7ee7cf7 --- /dev/null +++ b/meta-multimedia/recipes-multimedia/sample-content/tearsofsteel-1080p.bb | |||
@@ -0,0 +1,16 @@ | |||
1 | SUMMARY = "Tears of Steel movie - 1080P" | ||
2 | LICENSE = "CC-BY-3.0" | ||
3 | LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/CC-BY-3.0;md5=dfa02b5755629022e267f10b9c0a2ab7" | ||
4 | |||
5 | SRC_URI = "http://ftp.nluug.nl/pub/graphics/blender/demo/movies/ToS/ToS-4k-1920.mov" | ||
6 | SRC_URI[md5sum] = "e3fee55b1779c553e37b1d3988e6fad6" | ||
7 | SRC_URI[sha256sum] = "bd2b5bc6c16d4085034f47ef7e4b3938afe86b4eec4ac3cf2685367d3b0b23b0" | ||
8 | |||
9 | inherit allarch | ||
10 | |||
11 | do_install() { | ||
12 | install -d ${D}${datadir}/movies | ||
13 | install -m 0644 ${WORKDIR}/ToS-4k-1920.mov ${D}${datadir}/movies/ | ||
14 | } | ||
15 | |||
16 | FILES_${PN} += "${datadir}/movies" | ||
diff --git a/meta-multimedia/recipes-multimedia/schroedinger/schroedinger/configure.ac.patch b/meta-multimedia/recipes-multimedia/schroedinger/schroedinger/configure.ac.patch new file mode 100644 index 000000000..2ed8d22c6 --- /dev/null +++ b/meta-multimedia/recipes-multimedia/schroedinger/schroedinger/configure.ac.patch | |||
@@ -0,0 +1,20 @@ | |||
1 | Use the version of orcc in the sysroot not the one from the host | ||
2 | |||
3 | Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com> | ||
4 | Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> | ||
5 | |||
6 | Upstream-Status: Inappropriate [configuration] | ||
7 | |||
8 | Index: schroedinger-1.0.9/configure.ac | ||
9 | =================================================================== | ||
10 | --- schroedinger-1.0.9.orig/configure.ac | ||
11 | +++ schroedinger-1.0.9/configure.ac | ||
12 | @@ -54,7 +54,7 @@ if test "x${HAVE_ORC}" != xyes ; then | ||
13 | AC_ERROR([orc-0.4 >= $ORC_VER is required]) | ||
14 | fi | ||
15 | SCHRO_PKG_DEPS="$SCHRO_PKG_DEPS orc-0.4 >= $ORC_VER" | ||
16 | -ORCC=`$PKG_CONFIG --variable=orcc orc-0.4` | ||
17 | +ORCC=$STAGING_DIR`$PKG_CONFIG --variable=orcc orc-0.4` | ||
18 | AC_SUBST(ORCC) | ||
19 | |||
20 | AC_ARG_WITH([thread], | ||
diff --git a/meta-multimedia/recipes-multimedia/schroedinger/schroedinger_1.0.11.bb b/meta-multimedia/recipes-multimedia/schroedinger/schroedinger_1.0.11.bb new file mode 100644 index 000000000..d38eb9477 --- /dev/null +++ b/meta-multimedia/recipes-multimedia/schroedinger/schroedinger_1.0.11.bb | |||
@@ -0,0 +1,22 @@ | |||
1 | SUMMARY = "Dirac compressed video encoder/decoder" | ||
2 | HOMEPAGE = "http://schrodinger.sourceforge.net/" | ||
3 | LICENSE = "MPL-1.1 | GPLv2 | LGPLv2 | MIT" | ||
4 | |||
5 | LIC_FILES_CHKSUM = "file://COPYING;md5=d91a46405fc074b88c963cc4f2a0aae9 \ | ||
6 | file://COPYING.GPL;md5=e181e3b7c66f5f96921d813c1074f833 \ | ||
7 | file://COPYING.LGPL;md5=38c893e21baec4cd75ad800ba9e2410a \ | ||
8 | file://COPYING.MIT;md5=8b345371b3536b4ce37ead1eafc88221 \ | ||
9 | file://COPYING.MPL;md5=0117647fecb9a932c25a7bbfc0333c37" | ||
10 | |||
11 | DEPENDS = "liboil orc-native orc" | ||
12 | |||
13 | SRC_URI = "http://www.diracvideo.org/download/schroedinger/${BP}.tar.gz \ | ||
14 | file://configure.ac.patch" | ||
15 | |||
16 | SRC_URI[md5sum] = "da6af08e564ca1157348fb8d92efc891" | ||
17 | SRC_URI[sha256sum] = "1e572a0735b92aca5746c4528f9bebd35aa0ccf8619b22fa2756137a8cc9f912" | ||
18 | |||
19 | EXTRA_OECONF += "STAGING_DIR=${STAGING_DIR_NATIVE}" | ||
20 | |||
21 | inherit autotools-brokensep pkgconfig | ||
22 | |||
diff --git a/meta-multimedia/recipes-multimedia/sox/sox_14.4.0.bb b/meta-multimedia/recipes-multimedia/sox/sox_14.4.0.bb new file mode 100644 index 000000000..758fec99b --- /dev/null +++ b/meta-multimedia/recipes-multimedia/sox/sox_14.4.0.bb | |||
@@ -0,0 +1,35 @@ | |||
1 | DESCRIPTION="SoX is the Swiss Army knife of sound processing tools. \ | ||
2 | It converts audio files among various standard audio file formats \ | ||
3 | and can apply different effects and filters to the audio data." | ||
4 | HOMEPAGE = "http://sox.sourceforge.net" | ||
5 | SECTION = "audio" | ||
6 | |||
7 | DEPENDS = "libpng libav libsndfile1 libvorbis" | ||
8 | |||
9 | PR = "r2" | ||
10 | |||
11 | PACKAGECONFIG ??= "${@base_contains('DISTRO_FEATURES', 'pulseaudio', 'pulseaudio', '', d)} \ | ||
12 | ${@base_contains('DISTRO_FEATURES', 'alsa', 'alsa', '', d)} \ | ||
13 | magic \ | ||
14 | " | ||
15 | PACKAGECONFIG[pulseaudio] = "--with-pulseaudio=dyn,--with-pulseaudio=no,pulseaudio," | ||
16 | PACKAGECONFIG[alsa] = "--with-alsa=dyn,--with-alsa=no,alsa-lib," | ||
17 | PACKAGECONFIG[wavpack] = "--with-wavpack=dyn,--with-wavpack=no,wavpack," | ||
18 | PACKAGECONFIG[magic] = "--with-magic,--without-magic,file," | ||
19 | PACKAGECONFIG[mad] = "--with-mad,--without-mad,libmad," | ||
20 | PACKAGECONFIG[id3tag] = "--with-id3tag,--without-id3tag,libid3tag," | ||
21 | PACKAGECONFIG[lame] = "--with-lame,--without-lame,lame," | ||
22 | PACKAGECONFIG[ao] = "--with-ao,--without-ao,libao," | ||
23 | |||
24 | LICENSE = "GPLv2 & LGPLv2.1" | ||
25 | LIC_FILES_CHKSUM = "file://LICENSE.GPL;md5=751419260aa954499f7abaabaa882bbe \ | ||
26 | file://LICENSE.LGPL;md5=fbc093901857fcd118f065f900982c24" | ||
27 | |||
28 | SRC_URI = "${SOURCEFORGE_MIRROR}/sox/sox-${PV}.tar.gz" | ||
29 | SRC_URI[md5sum] = "b0c15cff7a4ba0ec17fdc74e6a1f9cf1" | ||
30 | SRC_URI[sha256sum] = "3ee34b14dd267de378e8a117aae81ec4cae330772342e6a55bbf6520a0a88aa3" | ||
31 | |||
32 | inherit autotools | ||
33 | |||
34 | BBCLASSEXTEND = "native" | ||
35 | |||
diff --git a/meta-multimedia/recipes-multimedia/vlc/libdvdcss_1.3.0.bb b/meta-multimedia/recipes-multimedia/vlc/libdvdcss_1.3.0.bb new file mode 100644 index 000000000..79e64aebd --- /dev/null +++ b/meta-multimedia/recipes-multimedia/vlc/libdvdcss_1.3.0.bb | |||
@@ -0,0 +1,12 @@ | |||
1 | DESCRIPTION = "libdvdcss is a simple library designed for accessing DVDs like a block device without having to bother about the decryption." | ||
2 | LICENSE = "GPLv2" | ||
3 | LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f" | ||
4 | |||
5 | SRC_URI = "http://download.videolan.org/pub/libdvdcss/${PV}/libdvdcss-${PV}.tar.bz2" | ||
6 | |||
7 | inherit autotools | ||
8 | |||
9 | EXTRA_OECONF = " --disable-doc " | ||
10 | |||
11 | SRC_URI[md5sum] = "7f0fdb3ff91d638f5e45ed7536f7eb67" | ||
12 | SRC_URI[sha256sum] = "7c414acd520c4e4dd7267952f72d738ff50321a7869af4d75c65aefad44f1395" | ||
diff --git a/meta-multimedia/recipes-multimedia/vlc/vlc.inc b/meta-multimedia/recipes-multimedia/vlc/vlc.inc new file mode 100644 index 000000000..1b6f02a6e --- /dev/null +++ b/meta-multimedia/recipes-multimedia/vlc/vlc.inc | |||
@@ -0,0 +1,86 @@ | |||
1 | DESCRIPTION = "Video player and streamer - davinci edition" | ||
2 | HOMEPAGE = "http://www.videolan.org" | ||
3 | SECTION = "multimedia" | ||
4 | |||
5 | LICENSE = "GPL-2.0" | ||
6 | LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263" | ||
7 | |||
8 | DEPENDS = "libfribidi libtool libgcrypt libgcrypt-native gst-plugins-bad \ | ||
9 | virtual/libsdl libsdl-image qt4-x11-free dbus dbus-glib libxml2 gnutls \ | ||
10 | tremor faad2 ffmpeg flac libxpm libxinerama fluidsynth alsa-lib \ | ||
11 | libdvdcss libdvdread lua-native lua libidn libnotify gtk+ gnome-vfs \ | ||
12 | libdc1394 libraw1394 avahi libjpeg-turbo xz libmodplug mpeg2dec \ | ||
13 | libmtp libopus orc libusb1 schroedinger taglib \ | ||
14 | tiff xcb-util-keysyms samba" | ||
15 | |||
16 | SRC_URI = "http://download.videolan.org/pub/videolan/${BPN}/${PV}/${BP}.tar.xz" | ||
17 | |||
18 | inherit autotools gettext pkgconfig | ||
19 | |||
20 | ARM_INSTRUCTION_SET = "arm" | ||
21 | |||
22 | EXTRA_OECONF = "\ | ||
23 | --enable-dvdread \ | ||
24 | --with-contrib \ | ||
25 | --enable-run-as-root \ | ||
26 | --enable-xvideo \ | ||
27 | --disable-screen --disable-caca \ | ||
28 | --enable-httpd --enable-vlm \ | ||
29 | --enable-freetype \ | ||
30 | --enable-sdl \ | ||
31 | --enable-png \ | ||
32 | --enable-tremor \ | ||
33 | --enable-v4l2 --disable-aa --disable-faad \ | ||
34 | --enable-dbus \ | ||
35 | --without-contrib \ | ||
36 | --without-kde-solid \ | ||
37 | --disable-glx \ | ||
38 | --enable-realrtsp \ | ||
39 | --disable-libtar \ | ||
40 | ac_cv_path_MOC=${STAGING_BINDIR_NATIVE}/moc4 \ | ||
41 | ac_cv_path_RCC=${STAGING_BINDIR_NATIVE}/rcc4 \ | ||
42 | ac_cv_path_UIC=${STAGING_BINDIR_NATIVE}/uic4 \ | ||
43 | " | ||
44 | |||
45 | PACKAGECONFIG ?= " live555" | ||
46 | PACKAGECONFIG[mad] = "--enable-mad,--disable-mad,libmad" | ||
47 | PACKAGECONFIG[a52] = "--enable-a52,--disable-a52,liba52" | ||
48 | PACKAGECONFIG[jack] = "--enable-jack,--disable-jack,jack" | ||
49 | PACKAGECONFIG[live555] = "--enable-live555,--disable-live555,live555" | ||
50 | PACKAGECONFIG[libass] = "--enable-libass,--disable-libass,libass" | ||
51 | PACKAGECONFIG[mkv] = "--enable-mkv,--disable-mkv,libmatroska libebml" | ||
52 | PACKAGECONFIG[postproc] = "--enable-postproc,--disable-postproc,libpostproc" | ||
53 | PACKAGECONFIG[opencv] = "--enable-opencv,--disable-opencv,opencv" | ||
54 | PACKAGECONFIG[libva] = "--enable-libva --enable-avcodec,--disable-libva --disable-avcodec,libva libav" | ||
55 | |||
56 | do_configure_prepend() { | ||
57 | cp ${STAGING_DATADIR}/libtool/config.* ${S}/autotools/ || true | ||
58 | } | ||
59 | |||
60 | do_configure_append() { | ||
61 | sed -i -e s:'$(MOC) $(DEFS) $(CPPFLAGS)':'$(MOC) $(DEFS)'\ -I${B}/include\ -DSYS_LINUX:g ${B}/modules/gui/qt4/Makefile | ||
62 | sed -i -e s:'${top_builddir_slash}libtool':${TARGET_SYS}-libtool:g ${B}/doltlibtool | ||
63 | } | ||
64 | |||
65 | # This recipe packages vlc as a library as well, so qt4 dependencies | ||
66 | # can be avoided when only the library is installed. | ||
67 | PACKAGES =+ "libvlc" | ||
68 | |||
69 | LEAD_SONAME_libvlc = "libvlc.so.5" | ||
70 | FILES_libvlc = "${libdir}/lib*.so.*" | ||
71 | |||
72 | FILES_${PN} += "\ | ||
73 | ${bindir}/vlc \ | ||
74 | ${datadir}/applications \ | ||
75 | ${datadir}/vlc/ \ | ||
76 | ${datadir}/icons \ | ||
77 | " | ||
78 | |||
79 | FILES_${PN}-dbg += "\ | ||
80 | ${libdir}/vlc/*/.debug \ | ||
81 | ${libdir}/vlc/plugins/*/.debug \ | ||
82 | " | ||
83 | |||
84 | FILES_${PN}-staticdev += "\ | ||
85 | ${libdir}/vlc/plugins/*/*.a \ | ||
86 | " | ||
diff --git a/meta-multimedia/recipes-multimedia/vlc/vlc/0001-enable-subdir-objects.patch b/meta-multimedia/recipes-multimedia/vlc/vlc/0001-enable-subdir-objects.patch new file mode 100644 index 000000000..9f0e708ed --- /dev/null +++ b/meta-multimedia/recipes-multimedia/vlc/vlc/0001-enable-subdir-objects.patch | |||
@@ -0,0 +1,13 @@ | |||
1 | Index: vlc-2.1.2/configure.ac | ||
2 | =================================================================== | ||
3 | --- vlc-2.1.2.orig/configure.ac | ||
4 | +++ vlc-2.1.2/configure.ac | ||
5 | @@ -24,7 +24,7 @@ AC_CANONICAL_BUILD | ||
6 | AC_CANONICAL_HOST | ||
7 | AC_PRESERVE_HELP_ORDER | ||
8 | |||
9 | -AM_INIT_AUTOMAKE(tar-ustar color-tests foreign) | ||
10 | +AM_INIT_AUTOMAKE(tar-ustar color-tests foreign subdir-objects) | ||
11 | AC_CONFIG_HEADERS([config.h]) | ||
12 | |||
13 | # Disable with "./configure --disable-silent-rules" or "make V=1" | ||
diff --git a/meta-multimedia/recipes-multimedia/vlc/vlc/0002-glibc-does-not-provide-strlcpy.patch b/meta-multimedia/recipes-multimedia/vlc/vlc/0002-glibc-does-not-provide-strlcpy.patch new file mode 100644 index 000000000..6d2a46fb3 --- /dev/null +++ b/meta-multimedia/recipes-multimedia/vlc/vlc/0002-glibc-does-not-provide-strlcpy.patch | |||
@@ -0,0 +1,17 @@ | |||
1 | Index: vlc-2.1.2/src/input/subtitles.c | ||
2 | =================================================================== | ||
3 | --- vlc-2.1.2.orig/src/input/subtitles.c | ||
4 | +++ vlc-2.1.2/src/input/subtitles.c | ||
5 | @@ -44,6 +44,12 @@ | ||
6 | #include "input_internal.h" | ||
7 | |||
8 | /** | ||
9 | + * Drepper's alternative | ||
10 | + * http://en.wikibooks.org/wiki/C_Programming/C_Reference/nonstandard/strlcpy | ||
11 | + */ | ||
12 | +#define strlcpy(dst, src, n) *((char* ) mempcpy(dst, src, n)) = '\0' | ||
13 | + | ||
14 | +/** | ||
15 | * We are not going to autodetect more subtitle files than this. | ||
16 | */ | ||
17 | #define MAX_SUBTITLE_FILES 128 | ||
diff --git a/meta-multimedia/recipes-multimedia/vlc/vlc/0003-use-am-path-libgcrypt.patch b/meta-multimedia/recipes-multimedia/vlc/vlc/0003-use-am-path-libgcrypt.patch new file mode 100644 index 000000000..ae80745d2 --- /dev/null +++ b/meta-multimedia/recipes-multimedia/vlc/vlc/0003-use-am-path-libgcrypt.patch | |||
@@ -0,0 +1,46 @@ | |||
1 | * The upstream tests for libgcrypt are awkward and not working. | ||
2 | - Requires libgcrypt-config, which seems broken? | ||
3 | * AM_PATH_LIBGCRYPT exists for a reason, why not use it? KISS. | ||
4 | * Upstream abandoned AM_PATH_LIBGCRYPT in the past...newer automake ok? | ||
5 | |||
6 | Upstream status: Pending | ||
7 | |||
8 | Index: vlc-2.1.4/configure.ac | ||
9 | =================================================================== | ||
10 | --- vlc-2.1.4.orig/configure.ac | ||
11 | +++ vlc-2.1.4/configure.ac | ||
12 | @@ -3940,25 +3940,19 @@ PKG_ENABLE_MODULES_VLC([LIBXML2], [xml], | ||
13 | dnl | ||
14 | dnl libgcrypt | ||
15 | dnl | ||
16 | +GCRYPT_LIBVER=1 | ||
17 | +GCRYPT_REQ=1.1.94 | ||
18 | AC_ARG_ENABLE(libgcrypt, | ||
19 | [ --disable-libgcrypt gcrypt support (default enabled)]) | ||
20 | AS_IF([test "${enable_libgcrypt}" != "no"], [ | ||
21 | - AC_CHECK_DECL([GCRYCTL_SET_THREAD_CBS], [ | ||
22 | - libgcrypt-config --version >/dev/null || \ | ||
23 | - AC_MSG_ERROR([gcrypt.h present but libgcrypt-config could not be found]) | ||
24 | - AC_CHECK_LIB(gcrypt, gcry_control, [ | ||
25 | - have_libgcrypt="yes" | ||
26 | - GCRYPT_CFLAGS="`libgcrypt-config --cflags`" | ||
27 | - GCRYPT_LIBS="`libgcrypt-config --libs`" | ||
28 | - ], [ | ||
29 | - AC_MSG_ERROR([libgcrypt not found. Install libgcrypt or use --disable-libgcrypt. Have a nice day.]) | ||
30 | - ], [`libgcrypt-config --libs`]) | ||
31 | - ], [ | ||
32 | - AC_MSG_ERROR([libgcrypt version 1.1.94 or higher not found. Install libgcrypt or use --disable-libgcrypt. Have a nice day.]) | ||
33 | - ], [#include <gcrypt.h>] | ||
34 | - ) | ||
35 | + AM_PATH_LIBGCRYPT($GCRYPT_LIBVER:$GCRYPT_REQ, | ||
36 | + [ | ||
37 | + GCRYPT_CFLAGS="$LIBGCRYPT_CFLAGS" | ||
38 | + GCRYPT_LIBS="$LIBGCRYPT_LIBS" | ||
39 | + ],[ | ||
40 | + AC_MSG_ERROR([libgcrypt version 1.1.94 or higher not found. Install libgcrypt or use --disable-libgcrypt. Have a nice day.]) | ||
41 | + ]) | ||
42 | ]) | ||
43 | - | ||
44 | AC_SUBST(GCRYPT_CFLAGS) | ||
45 | AC_SUBST(GCRYPT_LIBS) | ||
46 | AM_CONDITIONAL([HAVE_GCRYPT], [test "${have_libgcrypt}" = "yes"]) | ||
diff --git a/meta-multimedia/recipes-multimedia/vlc/vlc/0004-modules-gui-qt4-out-of-tree-build.patch b/meta-multimedia/recipes-multimedia/vlc/vlc/0004-modules-gui-qt4-out-of-tree-build.patch new file mode 100644 index 000000000..3dadb237e --- /dev/null +++ b/meta-multimedia/recipes-multimedia/vlc/vlc/0004-modules-gui-qt4-out-of-tree-build.patch | |||
@@ -0,0 +1,17 @@ | |||
1 | * modules/gui/qt4/Modules.am not B!=S friendly | ||
2 | * Simple solution to missing directories in ${B} | ||
3 | |||
4 | Upstream status: Pending | ||
5 | |||
6 | Index: vlc-2.1.4/modules/gui/qt4/Modules.am | ||
7 | =================================================================== | ||
8 | --- vlc-2.1.4.orig/modules/gui/qt4/Modules.am | ||
9 | +++ vlc-2.1.4/modules/gui/qt4/Modules.am | ||
10 | @@ -261,6 +261,7 @@ else | ||
11 | if HAVE_WIN32 | ||
12 | $(moc_verbose)$(MOC) -D_WIN32 $(DEFS) -I$(top_srcdir)/include -I$(top_builddir)/include -I$(top_builddir) $(CPPFLAGS_qt4) -o $@ $< | ||
13 | else | ||
14 | + [ -d $(dir $@) ] || mkdir -p $(dir $@) | ||
15 | $(moc_verbose)$(MOC) $(DEFS) -I$(top_srcdir)/include -I$(top_builddir)/include -I$(top_builddir) $(CPPFLAGS_qt4) -o $@ $< | ||
16 | endif | ||
17 | endif | ||
diff --git a/meta-multimedia/recipes-multimedia/vlc/vlc/0005-libpostproc-header-check.patch b/meta-multimedia/recipes-multimedia/vlc/vlc/0005-libpostproc-header-check.patch new file mode 100644 index 000000000..2d84ffd2f --- /dev/null +++ b/meta-multimedia/recipes-multimedia/vlc/vlc/0005-libpostproc-header-check.patch | |||
@@ -0,0 +1,17 @@ | |||
1 | * Also look for postprocess.h under libpostproc/ | ||
2 | |||
3 | Upstream-status: Pending | ||
4 | |||
5 | Index: vlc-2.1.4/configure.ac | ||
6 | =================================================================== | ||
7 | --- vlc-2.1.4.orig/configure.ac | ||
8 | +++ vlc-2.1.4/configure.ac | ||
9 | @@ -2444,7 +2444,7 @@ then | ||
10 | VLC_SAVE_FLAGS | ||
11 | CPPFLAGS="${CPPFLAGS} ${POSTPROC_CFLAGS}" | ||
12 | CFLAGS="${CFLAGS} ${POSTPROC_CFLAGS}" | ||
13 | - AC_CHECK_HEADERS(postproc/postprocess.h) | ||
14 | + AC_CHECK_HEADERS(postproc/postprocess.h,[],[AC_CHECK_HEADERS(libpostproc/postprocess.h)]) | ||
15 | VLC_ADD_PLUGIN([postproc]) | ||
16 | VLC_ADD_LIBS([postproc],[$POSTPROC_LIBS $AVUTIL_LIBS]) | ||
17 | VLC_ADD_CFLAGS([postproc],[$POSTPROC_CFLAGS $AVUTIL_CFLAGS]) | ||
diff --git a/meta-multimedia/recipes-multimedia/vlc/vlc/0006-make-opencv-configurable.patch b/meta-multimedia/recipes-multimedia/vlc/vlc/0006-make-opencv-configurable.patch new file mode 100644 index 000000000..950c09b8a --- /dev/null +++ b/meta-multimedia/recipes-multimedia/vlc/vlc/0006-make-opencv-configurable.patch | |||
@@ -0,0 +1,29 @@ | |||
1 | Recent opencv API changes break upstream filter and example. | ||
2 | Make opencv explicitly configurable. | ||
3 | |||
4 | Upstream-Status: Inappropriate [configuration] | ||
5 | |||
6 | Signed-off-by: Tim Orling <TicoTimo@gmail.com> | ||
7 | |||
8 | Index: vlc-2.1.4/configure.ac | ||
9 | =================================================================== | ||
10 | --- vlc-2.1.4.orig/configure.ac | ||
11 | +++ vlc-2.1.4/configure.ac | ||
12 | @@ -1693,7 +1693,16 @@ PKG_ENABLE_MODULES_VLC([BLURAY], [libblu | ||
13 | dnl | ||
14 | dnl OpenCV wrapper and example filters | ||
15 | dnl | ||
16 | -PKG_ENABLE_MODULES_VLC([OPENCV], [opencv_example opencv_wrapper], [opencv > 2.0], (OpenCV (computer vision) filter), [auto]) | ||
17 | +AC_ARG_ENABLE(opencv, | ||
18 | + [AS_HELP_STRING([--disable-opencv], | ||
19 | + [disable OpenCV computer vision filter and example (default auto)])]) | ||
20 | +if test "${enable_opencv}" != "no" | ||
21 | +then | ||
22 | + PKG_ENABLE_MODULES_VLC([OPENCV], | ||
23 | + [opencv_example opencv_wrapper], | ||
24 | + [opencv > 2.0], | ||
25 | + (OpenCV (computer vision) filter), [auto]) | ||
26 | +fi | ||
27 | |||
28 | |||
29 | dnl | ||
diff --git a/meta-multimedia/recipes-multimedia/vlc/vlc_2.1.4.bb b/meta-multimedia/recipes-multimedia/vlc/vlc_2.1.4.bb new file mode 100644 index 000000000..418f77cfc --- /dev/null +++ b/meta-multimedia/recipes-multimedia/vlc/vlc_2.1.4.bb | |||
@@ -0,0 +1,15 @@ | |||
1 | require ${BPN}.inc | ||
2 | |||
3 | # work around build failure | ||
4 | EXTRA_OECONF += " --enable-libxml2=no" | ||
5 | |||
6 | SRC_URI += "file://0001-enable-subdir-objects.patch \ | ||
7 | file://0002-glibc-does-not-provide-strlcpy.patch \ | ||
8 | file://0003-use-am-path-libgcrypt.patch \ | ||
9 | file://0004-modules-gui-qt4-out-of-tree-build.patch \ | ||
10 | file://0005-libpostproc-header-check.patch \ | ||
11 | file://0006-make-opencv-configurable.patch \ | ||
12 | " | ||
13 | |||
14 | SRC_URI[md5sum] = "7ed67d22f7425011078772bfc62ac222" | ||
15 | SRC_URI[sha256sum] = "3e566c7525478167e18cc53dc75d621e4af91eb40aabb6231e47db25d682d5d3" | ||