[Pkg-ocaml-maint-commits] [SCM] liquidsoap packaging branch, master, updated. debian/0.9.2-3-8-gff7b6c6
Romain Beauxis
toots at rastageeks.org
Tue Sep 7 15:57:58 UTC 2010
The following commit has been merged in the master branch:
commit ff7b6c6338217c8bc6b819bd200c70812a34a26a
Author: Romain Beauxis <toots at rastageeks.org>
Date: Tue Sep 7 10:59:30 2010 -0500
Prepared 0.9.3 release..
diff --git a/debian/changelog b/debian/changelog
index d87ae33..764f3e2 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,10 +1,14 @@
-liquidsoap (0.9.2-4) unstable; urgency=low
+liquidsoap (0.9.3-1) experimental; urgency=low
- * (TODO) Rebuild against ocaml-ao 0.3.0 for a
- correct support of libao4.
- * Fixed http get arguments parsing in harbor.ml
-
- -- Romain Beauxis <toots at rastageeks.org> Thu, 10 Jun 2010 13:10:13 -0500
+ * New upstream release.
+ * Droped quilt patches: no patches needed!
+ * Upload to experimental now that sid is frozen.
+ * Bumped standards version to 3.9.1
+ * Bumped build-dep version to match latest bindings'
+ releases.
+ * Changed source format to 3.0 (quilt).
+
+ -- Romain Beauxis <toots at rastageeks.org> Sat, 04 Sep 2010 14:59:12 -0500
liquidsoap (0.9.2-3) unstable; urgency=low
diff --git a/debian/control b/debian/control
index d94377e..d8fa777 100644
--- a/debian/control
+++ b/debian/control
@@ -3,20 +3,23 @@ Section: sound
Priority: optional
Maintainer: Debian OCaml Maintainers <debian-ocaml-maint at lists.debian.org>
Uploaders: Romain Beauxis <toots at rastageeks.org>, Samuel Mimram <smimram at debian.org>
-Build-Depends: cdbs (>= 0.4.53), debhelper (>= 7.0.1), ocaml-nox, dh-ocaml (>= 0.9), quilt, patchutils (>= 0.2.25),
- ocaml-findlib, libcry-ocaml-dev (>= 0.1.1),
- libogg-ocaml-dev (>= 0.3.1), libvorbis-ocaml-dev (>= 0.5.1),
- libmad-ocaml-dev (>= 0.3.6), libdtools-ocaml-dev (>= 0.1.6), libtaglib-ocaml-dev (>= 0.1.3),
+Build-Depends: cdbs (>= 0.4.53),
+ debhelper (>= 7.0.1),
+ ocaml-nox,
+ dh-ocaml (>= 0.9),
+ ocaml-findlib, libcry-ocaml-dev (>= 0.1.5),
+ libogg-ocaml-dev (>= 0.4.1), libvorbis-ocaml-dev (>= 0.5.1),
+ libmad-ocaml-dev (>= 0.4.0), libdtools-ocaml-dev (>= 0.2.0), libtaglib-ocaml-dev (>= 0.1.3),
libcamomile-ocaml-dev, festival, libxml-dom-perl, python-gtk2-dev,
- python, python-support (>= 0.3), libao-ocaml-dev (>= 0.1.10), libduppy-ocaml-dev (>= 0.3.1),
- libalsa-ocaml-dev (>= 0.1.4) [!kfreebsd-i386 !hurd-i386 !kfreebsd-amd64],
+ python, python-support (>= 0.3), libao-ocaml-dev (>= 0.2.0), libduppy-ocaml-dev (>= 0.3.2),
+ libalsa-ocaml-dev (>= 0.2.0) [!kfreebsd-i386 !hurd-i386 !kfreebsd-amd64],
libpcre-ocaml-dev, libladspa-ocaml-dev (>= 0.1.2), sox,
libsoundtouch-ocaml-dev (>= 0.1.5), liblastfm-ocaml-dev (>= 0.2.0),
- libspeex-ocaml-dev (>= 0.1.2), libgavl-ocaml-dev (>= 0.1.2), libtheora-ocaml-dev (>= 0.2.0~svn6618),
+ libspeex-ocaml-dev (>= 0.1.2), libgavl-ocaml-dev (>= 0.1.3), libtheora-ocaml-dev (>= 0.2.0),
libportaudio-ocaml-dev (>= 0.1.3), libpulse-ocaml-dev (>= 0.1.1),
libsamplerate-ocaml-dev (>= 0.1.1), libxmlplaylist-ocaml-dev (>= 0.1.2),
- libmagic-ocaml-dev (>= 0.3.6), libbjack-ocaml-dev (>= 0.1.3), libsdl-ocaml-dev
-Standards-Version: 3.8.4
+ libmagic-ocaml-dev (>= 0.3.6), libbjack-ocaml-dev (>= 0.1.3-3), libsdl-ocaml-dev
+Standards-Version: 3.9.1
Vcs-Git: git://git.debian.org/git/pkg-ocaml-maint/packages/liquidsoap.git
Vcs-Browser: http://git.debian.org/?p=pkg-ocaml-maint/packages/liquidsoap.git
Homepage: http://savonet.sourceforge.net/
diff --git a/debian/control.in b/debian/control.in
index a63a1d7..d07330d 100644
--- a/debian/control.in
+++ b/debian/control.in
@@ -4,19 +4,19 @@ Priority: optional
Maintainer: Debian OCaml Maintainers <debian-ocaml-maint at lists.debian.org>
Uploaders: Romain Beauxis <toots at rastageeks.org>, Samuel Mimram <smimram at debian.org>
Build-Depends: @cdbs@,
- ocaml-findlib, libcry-ocaml-dev (>= 0.1.1),
- libogg-ocaml-dev (>= 0.3.1), libvorbis-ocaml-dev (>= 0.5.1),
- libmad-ocaml-dev (>= 0.3.6), libdtools-ocaml-dev (>= 0.1.6), libtaglib-ocaml-dev (>= 0.1.3),
+ ocaml-findlib, libcry-ocaml-dev (>= 0.1.5),
+ libogg-ocaml-dev (>= 0.4.1), libvorbis-ocaml-dev (>= 0.5.1),
+ libmad-ocaml-dev (>= 0.4.0), libdtools-ocaml-dev (>= 0.2.0), libtaglib-ocaml-dev (>= 0.1.3),
libcamomile-ocaml-dev, festival, libxml-dom-perl, python-gtk2-dev,
- python, python-support (>= 0.3), libao-ocaml-dev (>= 0.1.10), libduppy-ocaml-dev (>= 0.3.1),
- libalsa-ocaml-dev (>= 0.1.4) [!kfreebsd-i386 !hurd-i386 !kfreebsd-amd64],
+ python, python-support (>= 0.3), libao-ocaml-dev (>= 0.2.0), libduppy-ocaml-dev (>= 0.3.2),
+ libalsa-ocaml-dev (>= 0.2.0) [!kfreebsd-i386 !hurd-i386 !kfreebsd-amd64],
libpcre-ocaml-dev, libladspa-ocaml-dev (>= 0.1.2), sox,
libsoundtouch-ocaml-dev (>= 0.1.5), liblastfm-ocaml-dev (>= 0.2.0),
- libspeex-ocaml-dev (>= 0.1.2), libgavl-ocaml-dev (>= 0.1.2), libtheora-ocaml-dev (>= 0.2.0~svn6618),
+ libspeex-ocaml-dev (>= 0.1.2), libgavl-ocaml-dev (>= 0.1.3), libtheora-ocaml-dev (>= 0.2.0),
libportaudio-ocaml-dev (>= 0.1.3), libpulse-ocaml-dev (>= 0.1.1),
libsamplerate-ocaml-dev (>= 0.1.1), libxmlplaylist-ocaml-dev (>= 0.1.2),
- libmagic-ocaml-dev (>= 0.3.6), libbjack-ocaml-dev (>= 0.1.3), libsdl-ocaml-dev
-Standards-Version: 3.8.4
+ libmagic-ocaml-dev (>= 0.3.6), libbjack-ocaml-dev (>= 0.1.3-3), libsdl-ocaml-dev
+Standards-Version: 3.9.1
Vcs-Git: git://git.debian.org/git/pkg-ocaml-maint/packages/liquidsoap.git
Vcs-Browser: http://git.debian.org/?p=pkg-ocaml-maint/packages/liquidsoap.git
Homepage: http://savonet.sourceforge.net/
diff --git a/debian/patches/add_mpeg_url_to_playlists.patch b/debian/patches/add_mpeg_url_to_playlists.patch
deleted file mode 100644
index 699f5be..0000000
--- a/debian/patches/add_mpeg_url_to_playlists.patch
+++ /dev/null
@@ -1,11 +0,0 @@
-Index: liquidsoap/src/playlists/playlist_basic.ml
-===================================================================
---- liquidsoap.orig/src/playlists/playlist_basic.ml 2010-08-03 10:33:20.000000000 -0500
-+++ liquidsoap/src/playlists/playlist_basic.ml 2010-08-03 11:09:31.000000000 -0500
-@@ -70,4 +70,5 @@
-
- let () =
- Playlist_parser.parsers#register "audio/x-scpls" { Playlist_parser.strict = true; Playlist_parser.parser = parse_scpls } ;
-- Playlist_parser.parsers#register "audio/x-mpegurl" { Playlist_parser.strict = false; Playlist_parser.parser = parse_mpegurl }
-+ Playlist_parser.parsers#register "audio/x-mpegurl" { Playlist_parser.strict = false; Playlist_parser.parser = parse_mpegurl } ;
-+ Playlist_parser.parsers#register "audio/mpegurl" { Playlist_parser.strict = false; Playlist_parser.parser = parse_mpegurl }
diff --git a/debian/patches/fix_harbor_get_args.patch b/debian/patches/fix_harbor_get_args.patch
deleted file mode 100644
index 5e526c4..0000000
--- a/debian/patches/fix_harbor_get_args.patch
+++ /dev/null
@@ -1,21 +0,0 @@
-Index: liquidsoap/src/tools/harbor.ml
-===================================================================
---- liquidsoap.orig/src/tools/harbor.ml 2010-08-03 10:33:02.000000000 -0500
-+++ liquidsoap/src/tools/harbor.ml 2010-08-03 10:33:07.000000000 -0500
-@@ -405,7 +405,15 @@
- | Not_found -> uri,""
- in
- log#f 3 "GET request on %s." base_uri ;
-- let args = Http.args_split (Http.url_decode args) in
-+ let args = Http.args_split args in
-+ (* decode args *)
-+ let args =
-+ let ret = Hashtbl.create (Hashtbl.length args) in
-+ let g = Http.url_decode in
-+ let f x y = Hashtbl.add ret (g x) (g y) in
-+ Hashtbl.iter f args ;
-+ ret
-+ in
- (* Filter out password *)
- let log_args =
- if conf_pass_verbose#get then
diff --git a/debian/patches/fix_lastfm_input.patch b/debian/patches/fix_lastfm_input.patch
deleted file mode 100644
index bbf299a..0000000
--- a/debian/patches/fix_lastfm_input.patch
+++ /dev/null
@@ -1,83 +0,0 @@
-Index: liquidsoap/src/sources/lastfm_input.ml
-===================================================================
---- liquidsoap.orig/src/sources/lastfm_input.ml 2010-04-12 04:27:59.000000000 +0200
-+++ liquidsoap/src/sources/lastfm_input.ml 2010-04-12 04:31:26.000000000 +0200
-@@ -26,6 +26,7 @@
- ~bufferize ~timeout ~bind_address
- ~debug ~max ~user_agent ~audioscrobbler_host uri =
- let playlist_mode = Http_source.First in
-+let bufferize_time = Fmt.ticks_of_seconds bufferize in
- object (self)
- inherit Http_source.http ~playlist_mode ~poll_delay ~timeout
- ~autostart ~bind_address ~bufferize
-@@ -37,7 +38,14 @@
-
- (* Called when there's no decoding process, in order to create one. *)
- method connect url =
-- try
-+ (* Do nothing is the buffer is
-+ * still greater than bufferize.
-+ * This is not an active wait because
-+ * the polling thread is timed. Hence,
-+ * we do not need to put the thread to sleep. *)
-+ if self#length > bufferize_time then ()
-+ else
-+ try
- let login,station,options = Lastfm.Radio.parse uri in
- let id =
- match session with
-@@ -109,6 +117,25 @@
- end
- end
-
-+(** Values for max buffer and bufferize are
-+ * tricky. Lastfm sends a burst of 10s of
-+ * data at the beginning of the streaming.
-+ * Hence, if we immediatly request the next
-+ * track when the current tracks end, the
-+ * burst sum-up and we end-up with 10 then
-+ * 20 then 30... seconds in the buffer.
-+ * Instead, we wait for the buffer to consume
-+ * its data up-to bufferize and then request the
-+ * next song.
-+ * Good values for max and bufferize are then 25
-+ * and 10. With these values, the initial buffer is
-+ * 10 so we start streaming immediatly. When the
-+ * first song ends, the buffer jumps from 10 to 20
-+ * with the next burst. When the second song ends,
-+ * the buffer is emptied up-to 10, then we request
-+ * the next song and it jumps again to 20.
-+ * After the second song, the buffer strategy becomes
-+ * static, with an average buffer of 20s. *)
- let () =
- Lang.add_operator "input.lastfm"
- ~category:Lang.Input
-@@ -116,7 +143,7 @@
- "paused/resumed using the start/stop telnet commands.")
- [ "autostart", Lang.bool_t, Some (Lang.bool true),
- Some "Initially start relaying or not." ;
-- "buffer", Lang.float_t, Some (Lang.float 2.),
-+ "buffer", Lang.float_t, Some (Lang.float 10.),
- Some "Duration of the pre-buffered data." ;
- "bind_address", Lang.string_t, Some (Lang.string ""),
- Some ("address to bind on the local machine. This option can be useful if " ^
-@@ -139,7 +166,7 @@
- Some "Treat new metadata as new track." ;
- "debug", Lang.bool_t, Some (Lang.bool false),
- Some "Run in debugging mode by not catching some exceptions." ;
-- "max", Lang.float_t, Some (Lang.float 10.),
-+ "max", Lang.float_t, Some (Lang.float 25.),
- Some "Maximum duration of the buffered data." ;
- "user_agent", Lang.string_t,
- Some (Lang.string
-@@ -164,8 +191,8 @@
- | s -> Some s
- in
- let user_agent = Lang.to_string (List.assoc "user_agent" p) in
-- let submit_host = Lang.to_string (List.assoc "host" p) in
-- let submit_port = Lang.to_int (List.assoc "port" p) in
-+ let submit_host = Lang.to_string (List.assoc "submit_host" p) in
-+ let submit_port = Lang.to_int (List.assoc "submit_port" p) in
- let audioscrobbler_host = (submit_host,submit_port) in
- let bufferize = Lang.to_float (List.assoc "buffer" p) in
- let timeout = Lang.to_float (List.assoc "timeout" p) in
diff --git a/debian/patches/fix_sdl_output.patch b/debian/patches/fix_sdl_output.patch
deleted file mode 100644
index 0b7728a..0000000
--- a/debian/patches/fix_sdl_output.patch
+++ /dev/null
@@ -1,53 +0,0 @@
-Index: liquidsoap/src/outputs/sdl_out.ml
-===================================================================
---- liquidsoap.orig/src/outputs/sdl_out.ml 2009-10-30 15:35:23.000000000 -0500
-+++ liquidsoap/src/outputs/sdl_out.ml 2010-03-25 11:49:50.000000000 -0500
-@@ -25,7 +25,7 @@
-
- let chunksize = 4096
-
--class output source start =
-+class output ~infallible ~autostart ~on_start ~on_stop source =
- (*
- let channels = Fmt.channels () in
- let samples_per_frame = Fmt.samples_per_frame () in
-@@ -36,7 +36,8 @@
- let video_width = Fmt.video_width () in
- let video_height = Fmt.video_height () in
- object (self)
-- inherit Output.output ~name:"sdl" ~kind:"output.sdl" source start
-+ inherit Output.output ~infallible ~on_start ~on_stop
-+ ~name:"sdl" ~kind:"output.sdl" source autostart
-
- initializer
- (* TODO: do not initialize twice *)
-@@ -106,15 +107,25 @@
-
- let () =
- Lang.add_operator "output.sdl"
-- [ "start",
-+ (Output.proto @ [ "start",
- Lang.bool_t, Some (Lang.bool true),
- Some "Start output on operator initialization." ;
-
- "", Lang.source_t, None, None
-- ]
-+ ])
- ~category:Lang.Output
- ~descr:"Display a video using SDL."
- (fun p _ ->
-- let start = Lang.to_bool (List.assoc "start" p) in
-+ let autostart = Lang.to_bool (List.assoc "start" p) in
-+ let infallible = not (Lang.to_bool (List.assoc "fallible" p)) in
-+ let on_start =
-+ let f = List.assoc "on_start" p in
-+ fun () -> ignore (Lang.apply f [])
-+ in
-+ let on_stop =
-+ let f = List.assoc "on_stop" p in
-+ fun () -> ignore (Lang.apply f [])
-+ in
- let source = List.assoc "" p in
-- ((new output source start):>Source.source))
-+ ((new output ~infallible ~autostart ~on_start ~on_stop
-+ source):>Source.source))
diff --git a/debian/patches/harbor_recode_tags.patch b/debian/patches/harbor_recode_tags.patch
deleted file mode 100644
index b52b413..0000000
--- a/debian/patches/harbor_recode_tags.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-Index: liquidsoap/src/tools/harbor.ml
-===================================================================
---- liquidsoap.orig/src/tools/harbor.ml 2010-07-26 16:46:09.000000000 -0500
-+++ liquidsoap/src/tools/harbor.ml 2010-07-30 21:44:42.000000000 -0500
-@@ -377,6 +377,20 @@
- in
- Hashtbl.remove args "mount";
- Hashtbl.remove args "mode";
-+ let encoding =
-+ try
-+ Some (Hashtbl.find args "charset")
-+ with
-+ | Not_found -> None
-+ in
-+ (* Recode tags.. *)
-+ let f x y m =
-+ let g = Configure.recode_tag ?encoding in
-+ Hashtbl.add m (g x) (g y) ; m
-+ in
-+ let args =
-+ Hashtbl.fold f args (Hashtbl.create (Hashtbl.length args))
-+ in
- s#insert_metadata args ;
- raise (Answer (fun () -> write_answer c ans))
- | _ -> raise (Answer ans_401)
diff --git a/debian/patches/harbor_source_recode_user_password.patch b/debian/patches/harbor_source_recode_user_password.patch
deleted file mode 100644
index d092564..0000000
--- a/debian/patches/harbor_source_recode_user_password.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-Index: liquidsoap/src/sources/harbor_input.ml
-===================================================================
---- liquidsoap.orig/src/sources/harbor_input.ml 2009-10-30 15:35:23.000000000 -0500
-+++ liquidsoap/src/sources/harbor_input.ml 2010-08-03 11:09:26.000000000 -0500
-@@ -287,6 +287,23 @@
- let debug = Lang.to_bool (List.assoc "debug" p) in
- let auth_function = List.assoc "auth" p in
- let login user pass =
-+ (** We try to decode user & password here.
-+ * Idealy, it would be better to decode them
-+ * in tools/harbor.ml in order to use any
-+ * possible charset information there.
-+ * However:
-+ * - ICY password are given raw, without
-+ * any charset information
-+ * - HTTP password are encoded in Base64 and
-+ * passed through the HTTP headers, where
-+ * there are no charset information concerning
-+ * the password. Note: Content-Type may contain
-+ * a charset information, but this refers to
-+ * the charset of the HTML content.. *)
-+ let user,pass =
-+ let f = Configure.recode_tag in
-+ f user, f pass
-+ in
- let user_login test_user test_pass =
- let user,pass =
- let f g x = match x with "" -> g | _ -> x in
diff --git a/debian/patches/magic_follow_symlink.patch b/debian/patches/magic_follow_symlink.patch
deleted file mode 100644
index 59f02a8..0000000
--- a/debian/patches/magic_follow_symlink.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-Index: liquidsoap/configure
-===================================================================
---- liquidsoap.orig/configure 2010-03-25 11:51:47.000000000 -0500
-+++ liquidsoap/configure 2010-03-25 11:52:03.000000000 -0500
-@@ -5306,7 +5306,7 @@
- else
- w_MAGIC=yes
- cat >> src/configure.ml <<EOCONF
--let magic_cookie = Magic.create ~flags:[Magic.Mime] []
-+let magic_cookie = Magic.create ~flags:[Magic.Mime; Magic.Symlink] []
- let file_mime s = Some (Magic.file magic_cookie s)
- let data_mime ?len s = Some (Magic.buffer magic_cookie ?len s)
- EOCONF
diff --git a/debian/patches/move_portaudio_low_in_in.patch b/debian/patches/move_portaudio_low_in_in.patch
deleted file mode 100644
index 95b367d..0000000
--- a/debian/patches/move_portaudio_low_in_in.patch
+++ /dev/null
@@ -1,23 +0,0 @@
-Index: liquidsoap/scripts/utils.liq
-===================================================================
---- liquidsoap.orig/scripts/utils.liq 2009-10-31 17:33:00.000000000 -0500
-+++ liquidsoap/scripts/utils.liq 2010-03-25 11:49:52.000000000 -0500
-@@ -157,14 +157,14 @@
- %ifdef input.oss
- in = fun () -> input.oss(id="oss_mic")
- %endif
--%ifdef input.alsa
-- in = fun () -> input.alsa(id="alsa_mic")
--%endif
- %ifdef input.portaudio
- in = fun () -> input.portaudio(id="pa_mic")
- %endif
-+%ifdef input.alsa
-+ in = fun () -> input.alsa(id="alsa_mic")
-+%endif
- # Create a source from the first available input driver in this list:
--# portaudio, alsa, oss, blank
-+# alsa, portaudio, oss, blank
- # @category Source / Input
- def in()
- in()
diff --git a/debian/patches/replay_gain_quiet_mode.patch b/debian/patches/replay_gain_quiet_mode.patch
deleted file mode 100644
index b8eadcc..0000000
--- a/debian/patches/replay_gain_quiet_mode.patch
+++ /dev/null
@@ -1,22 +0,0 @@
-Index: liquidsoap/scripts/extract-replaygain
-===================================================================
---- liquidsoap.orig/scripts/extract-replaygain 2009-10-31 17:32:59.000000000 -0500
-+++ liquidsoap/scripts/extract-replaygain 2010-03-25 11:49:53.000000000 -0500
-@@ -15,7 +15,7 @@
-
- if (`which mp3gain`) {
-
-- my $out = `nice -n 20 mp3gain "$file" 2> /dev/null` ;
-+ my $out = `nice -n 20 mp3gain -q "$file" 2> /dev/null` ;
- $out =~ /Recommended "Track" dB change: (.*)$/m || die ;
- print "$1 dB\n" ;
-
-@@ -29,7 +29,7 @@
-
- if ((`which vorbisgain`) && (`which ogginfo`)) {
-
-- system("nice -n 20 vorbisgain -f \"$file\" 2>/dev/null >/dev/null") ;
-+ system("nice -n 20 vorbisgain -q -f \"$file\" 2>/dev/null >/dev/null") ;
- my $info = `ogginfo "$file"` ;
- $info =~ /REPLAYGAIN_TRACK_GAIN=(.*) dB/ || die ;
- print "$1 dB\n" ;
diff --git a/debian/patches/series b/debian/patches/series
index 7f21d4e..e69de29 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -1,10 +0,0 @@
-harbor_source_recode_user_password.patch
-add_mpeg_url_to_playlists.patch
-harbor_recode_tags.patch
-magic_follow_symlink.patch
-fix_sdl_output.patch
-theora_0.2.0_fix.patch
-move_portaudio_low_in_in.patch
-replay_gain_quiet_mode.patch
-fix_lastfm_input.patch
-fix_harbor_get_args.patch
diff --git a/debian/patches/theora_0.2.0_fix.patch b/debian/patches/theora_0.2.0_fix.patch
deleted file mode 100644
index 4289b9d..0000000
--- a/debian/patches/theora_0.2.0_fix.patch
+++ /dev/null
@@ -1,169 +0,0 @@
-Index: liquidsoap/src/ogg_formats/theora_format.ml
-===================================================================
---- liquidsoap.orig/src/ogg_formats/theora_format.ml 2010-04-12 04:06:20.000000000 +0200
-+++ liquidsoap/src/ogg_formats/theora_format.ml 2010-04-12 04:06:51.000000000 +0200
-@@ -23,45 +23,27 @@
- let check = Theora.Decoder.check
-
- let decoder os =
-- let decoder = ref None in
- let meta = ref None in
-- let packet1 = ref None in
-- let packet2 = ref None in
-- let packet3 = ref None in
-+ let fps = ref None in
-+ let decoder = Theora.Decoder.create () in
- let fill feed =
-- (* Decoder is created upon first decoding..*)
-- let decoder,fps =
-- match !decoder with
-+ let fps =
-+ match !fps with
- | None ->
-- let packet1 =
-- match !packet1 with
-- | None ->
-- let p = Ogg.Stream.get_packet os in
-- packet1 := Some p; p
-- | Some p -> p
-- in
-- let packet2 =
-- match !packet2 with
-- | None ->
-- let p = Ogg.Stream.get_packet os in
-- packet2 := Some p; p
-- | Some p -> p
-- in
-- let packet3 =
-- match !packet3 with
-- | None ->
-- let p = Ogg.Stream.get_packet os in
-- packet3 := Some p; p
-- | Some p -> p
-- in
-- let (d,info,vendor,m) = Theora.Decoder.create packet1 packet2 packet3 in
-- let fps = (float (info.Theora.fps_numerator)) /.
-- (float (info.Theora.fps_denominator))
-- in
-- meta := Some (vendor,m);
-- decoder := Some (d,fps);
-- d,fps
-- | Some d -> d
-+ let p = Ogg.Stream.get_packet os in
-+ begin
-+ try
-+ let (info,vendor,m) = Theora.Decoder.headerin decoder p in
-+ let nfps = (float (info.Theora.fps_numerator)) /.
-+ (float (info.Theora.fps_denominator))
-+ in
-+ meta := Some (vendor,m);
-+ fps := Some nfps ;
-+ nfps
-+ with
-+ | Theora.Not_enough_data -> raise Ogg.Not_enough_data
-+ end
-+ | Some fps -> fps
- in
- let ret = Theora.Decoder.get_yuv decoder os in
- let ret =
-@@ -70,9 +52,11 @@
- y_width = ret.Theora.y_width;
- y_height = ret.Theora.y_height;
- y_stride = ret.Theora.y_stride;
-- uv_width = ret.Theora.uv_width;
-- uv_height = ret.Theora.uv_height;
-- uv_stride = ret.Theora.uv_stride;
-+ (** This is an approximation when format
-+ * is YUV420 *)
-+ uv_width = ret.Theora.u_width;
-+ uv_height = ret.Theora.u_height;
-+ uv_stride = ret.Theora.u_stride;
- fps = fps;
- y = ret.Theora.y;
- u = ret.Theora.u;
-@@ -90,48 +74,34 @@
- let create_encoder ~quality ~metadata () =
- let frame_x = Fmt.video_width () in
- let frame_y = Fmt.video_height () in
-- (* Theora has a divisible-by-sixteen restriction for the encoded video size. *)
-- (* Scale the frame size up to the nearest /16 and calculate offsets. *)
-- let video_x = ((frame_x + 15) lsr 4) lsl 4 in
-- let video_y = ((frame_y + 15) lsr 4) lsl 4 in
-- let frame_x_offset = ((video_x - frame_x) / 2) land (lnot 1) in
-- let frame_y_offset = ((video_y - frame_y) / 2) land (lnot 1) in
-- let video_r = 800 in
-+ let video_r = 0 in
- (* TODO: variable FPS *)
- let fps = Fmt.video_frames_of_seconds 1. in
-+ let version_major,version_minor,version_subminor = Theora.version_number in
- let info =
- {
- Theora.
-- width = video_x;
-- height = video_y;
- frame_width = frame_x;
- frame_height = frame_y;
-- offset_x = frame_x_offset;
-- offset_y = frame_y_offset;
-+ picture_width = frame_x;
-+ picture_height = frame_y;
-+ picture_x = 0;
-+ picture_y = 0;
- fps_numerator = fps;
- fps_denominator = 1;
- aspect_numerator = 1;
- aspect_denominator = 1;
-+ keyframe_granule_shift = Theora.default_granule_shift;
- colorspace = Theora.CS_unspecified;
- target_bitrate = video_r;
- quality = quality;
-- quick_p = true;
-- version_major = 0;
-- version_minor = 0;
-- version_subminor = 0;
-- dropframes_p = false;
-- keyframe_auto_p = true;
-- keyframe_frequency = 64;
-- keyframe_frequency_force = 64;
-- keyframe_data_target_bitrate = (video_r * 3 / 2);
-- keyframe_auto_threshold = 80;
-- keyframe_mindistance = 8;
-- noise_sensitivity = 1;
-- sharpness = 1; (* ??? *)
-- pixelformat = Theora.PF_420
-+ version_major = version_major;
-+ version_minor = version_minor;
-+ version_subminor = version_subminor;
-+ pixel_fmt = Theora.PF_420
- }
- in
-- let enc = Theora.Encoder.create info in
-+ let enc = Theora.Encoder.create info metadata in
- let started = ref false in
- let header_encoder os =
- Theora.Encoder.encode_header enc os;
-@@ -142,8 +112,6 @@
- Some (Theora.Skeleton.fisbone ~serialno ~info ())
- in
- let stream_start os =
-- Theora.Encoder.encode_comments os metadata;
-- Theora.Encoder.encode_tables enc os;
- Ogg_encoder.flush_pages os
- in
- let ((y,y_stride), (u, v, uv_stride) as yuv) =
-@@ -154,9 +122,12 @@
- Theora.y_width = Fmt.video_width ();
- Theora.y_height = Fmt.video_height ();
- Theora.y_stride = y_stride;
-- Theora.uv_width = Fmt.video_width () / 2;
-- Theora.uv_height = Fmt.video_height () / 2;
-- Theora.uv_stride = uv_stride;
-+ Theora.u_width = Fmt.video_width () / 2;
-+ Theora.u_height = Fmt.video_height () / 2;
-+ Theora.u_stride = uv_stride;
-+ Theora.v_width = Fmt.video_width () / 2;
-+ Theora.v_height = Fmt.video_height () / 2;
-+ Theora.v_stride = uv_stride;
- Theora.y = y;
- Theora.u = u;
- Theora.v = v;
diff --git a/debian/rules b/debian/rules
index b2c304c..ef73146 100755
--- a/debian/rules
+++ b/debian/rules
@@ -3,7 +3,7 @@
include /usr/share/cdbs/1/rules/debhelper.mk
include /usr/share/cdbs/1/class/autotools.mk
include /usr/share/cdbs/1/rules/ocaml.mk
-include /usr/share/cdbs/1/rules/patchsys-quilt.mk
+#include /usr/share/cdbs/1/rules/patchsys-quilt.mk
# In order to regenerate 'debian/control' :
# DEB_AUTO_UPDATE_DEBIAN_CONTROL=yes fakeroot debian/rules clean
diff --git a/debian/source/format b/debian/source/format
new file mode 100644
index 0000000..163aaf8
--- /dev/null
+++ b/debian/source/format
@@ -0,0 +1 @@
+3.0 (quilt)
--
liquidsoap packaging
More information about the Pkg-ocaml-maint-commits
mailing list