From m.bunkus at linet-services.de Sun Aug 1 13:51:17 2004
From: m.bunkus at linet-services.de (Moritz Bunkus)
Date: Sun, 1 Aug 2004 13:51:17 +0200
Subject: [Matroska-devel] timecode scale handling & sample precision
Message-ID: <20040801115117.GD8684@bunkus.org>
Hi,
until now I really didn't care all that much, but now that I'm
implementing sample precision I have to care. So I took the time to
study the current explanation for the timecode scale handling available
at http://www.matroska.org/technical/specs/notes.html#TimecodeScale
It is wrong.
Let's take the sample rate of 44100. A timecode scale parameter of
1000000000/44100 is 22675.736961. The example uses 22676 which results
in a precision that is LESS than the sample rate. There's no way to to
regenerate 44100 different sample numbers from < 44100 different values.
It must be 22675 - always _truncate_ the timecode scale factor.
The next thing is:
To determine which sample that is,
(313450348 / 1000000000) * 44100 = ~13823.16
Check to see if the value is greater than the truncated version of
itself and if so, round up.
A value is always at least as big as its truncated value! So this will
simply result in wrong values. You're throwing away up to nearly 1
sample of time. There's NO way a program can regenerate that from the
raw timecode and the timecode scale factor.
Here's how to use it right including a small demonstration application:
(I'll use $var for a variable name because the text might be confusing
otherwise.)
Use the following timecode scale value:
$tc_scale = (int64_t)(1000000000ll / $sample_rate)
Let's assume we have a sample number $sample, the sample rate
$sample_rate and the timecode scale factor as given above. We further
need a function that can round a value to the nearest integer (in this
case the nearest 64bit integer). We can use a simple #define for this:
#define irnd(v) ((int64_t)((v) + 0.5) > (int64_t)(v) ? \
(int64_t)((v) + 0.5) : (int64_t)(v))
The 'original' timecode $unscaled_timecode is the one the application
deals with. It is obviously just
$unscaled_timecode = 1000000000ll * $sample / $sample_rate
Easy enough. Even better wound be using double precision and rounding,
but 1ns is WAY below any sensible $sample_rate so we can live with the
imprecision of just truncating this value to the lower ns.
Next: the $scaled_timecode is the one that is actually written to the
Matroska file. Other folks call this the 'raw' timecode. I'll use
'scaled' for timecodes whose unit is '1 $tc_scale' and 'unscaled' for
timecodes whose unit is '1ns'.
--> Here we HAVE to round! <--
This timecode is
$scaled_timecode = irnd((double)$unscaled_timecode / (double)$tc_scale)
Now we have a nice scaled timecode in our file. Another application
wants to read such a file, gets $tc_scale from the header and reads a
block. Inside that file it finds $scaled_timecode for that block. From
that it can calculated the 'unscaled' timecode on the reader's part:
$rescaled_timecode = $scaled_timecode * $tc_scale
Easy. No rounding needed obviously because we multiply integers in the
first place. How does the application get the sample number from this?
Again this involves...
--> ROUNGIN! <--
$recalculated_sample = irnd((double)$rescaled_timecode * $sample_rate /
1000000000.0l)
Et voila. That's it.
I've attached a small test application that demonstrates this for a
sample rate of 44100. It will output each of the four values along with
a string 'ok' or 'NOT OK!' if the $sample is equal to or different from
the $recalculated_sample. If you don't believe me just test it, redirect
the output to a file and search for 'NOT OK'. You won't find it.
I REALLY hope I'm not making a mistake here, but I'm pretty sure I
don't. So I'll overhaul the web page mentioned at the beginning with
this information and modify mkvmerge accordingly if no one objects.
Mosu
--
LINET Services
Bunkus, Geisler und Reetz GbR
Gotenweg 15 Tel.: 0531-280 191 71
38106 Braunschweig Fax.: 0531-280 191 72
http://www.linet-services.de
mailto:info at linet-services.de
-------------- next part --------------
A non-text attachment was scrubbed...
Name: tcscale-working.c
Type: text/x-csrc
Size: 1180 bytes
Desc: not available
URL:
From nleguen at pepper-prod.com Sun Aug 1 14:40:58 2004
From: nleguen at pepper-prod.com (Nicolas Le Guen)
Date: Sun, 01 Aug 2004 14:40:58 +0200
Subject: [Matroska-devel] Multiple CDs in MKA
In-Reply-To: <410B6990.20709@free.fr>
References: <410B6990.20709@free.fr>
Message-ID: <410CE4DA.5010400@pepper-prod.com>
Please find attached a first pre-version of a CD to mka guide.
As you can see in it, Steve was right: It's better not to use
EditionEntry to seperate different discs of a multi CD set ;-)
Please report any error, typo, grammatical monstrosity or simply comment.
Thanks.
Goldenear
-------------- next part --------------
A non-text attachment was scrubbed...
Name: cd2mka_howto_eng.pdf
Type: application/pdf
Size: 81205 bytes
Desc: not available
URL:
From moritz at bunkus.org Sun Aug 1 16:18:00 2004
From: moritz at bunkus.org (Moritz Bunkus)
Date: Sun, 1 Aug 2004 16:18:00 +0200
Subject: [Matroska-devel] timecode scale handling & sample precision
In-Reply-To: <20040801115117.GD8684@bunkus.org>
References: <20040801115117.GD8684@bunkus.org>
Message-ID: <20040801141800.GE8684@bunkus.org>
Hi,
my way doesn't work either. Just increase the 'sample < sample_rate' in
the for loop with 'sample < 2 * sample_rate' and you'll see errors.
Mosu
--
If Darl McBride was in charge, he'd probably make marriage
unconstitutional too, since clearly it de-emphasizes the commercial
nature of normal human interaction, and probably is a major impediment
to the commercial growth of prostitution. - Linus Torvalds
From moritz at bunkus.org Sun Aug 1 16:54:50 2004
From: moritz at bunkus.org (Moritz Bunkus)
Date: Sun, 1 Aug 2004 16:54:50 +0200
Subject: [Matroska-devel] timecode scale handling & sample precision
In-Reply-To: <20040801115117.GD8684@bunkus.org>
References: <20040801115117.GD8684@bunkus.org>
Message-ID: <20040801145450.GF8684@bunkus.org>
Hi,
Problem solved, thanks to Atamido.
> $unscaled_timecode = 1000000000ll * $sample / $sample_rate
>
> Easy enough. Even better wound be using double precision and rounding,
> but 1ns is WAY below any sensible $sample_rate so we can live with the
> imprecision of just truncating this value to the lower ns.
This is bullshit :) You have to round here as well. See the attached
test program.
Mosu
--
If Darl McBride was in charge, he'd probably make marriage
unconstitutional too, since clearly it de-emphasizes the commercial
nature of normal human interaction, and probably is a major impediment
to the commercial growth of prostitution. - Linus Torvalds
-------------- next part --------------
A non-text attachment was scrubbed...
Name: tcscale-working.c
Type: text/x-csrc
Size: 1458 bytes
Desc: not available
URL:
From Sebastian at Hartte.de Sun Aug 1 20:40:20 2004
From: Sebastian at Hartte.de (Sebastian Hartte)
Date: Sun, 01 Aug 2004 20:40:20 +0200
Subject: [Matroska-devel] Re: [gst-devel] Call for ideas : Video and Audio
sinks for Gstreamer on Windows
In-Reply-To: <410B9314.1010406@matroska.org>
References: <410B9314.1010406@matroska.org>
Message-ID: <410D3914.8090801@Hartte.de>
ChristianHJW wrote:
>
> Hi folks,
>
> this is a call for ideas. It seems Steve has gstreamer and more than
> 60 plugins compiled and working on Windows, using MSVC 7. Now, i hope
> to get some interest from player developers to have their player based
> on it, covering the two most used platforms ( Linux and Windows ) with
> one single player this way.
>
> To be able to use gstreamer on Windows for a player, we need output
> sinks. How do we best do that ? DirectX ?
>
> Thanks for your input
>
> Christian
> matroska project admin
>
>
> BTW : I was first striked, then banned for a period of 30 days from
> doom9.org for having posted this here :
> http://forum.doom9.org/showthread.php?s=&threadid=80245 . Crazy place,
> isnt it ?
I think that multiple sinks should be provided. My two favorite players
(media player classic from guliverkli and winamp) use VMR7/VMR9 and
Offscreen Overlays for Video and waveout or DirectSound for Audio. Since
mplayerc is opensource one could have a look at their implementation as
well. I personally prefer VMR9 over any other video sink because of its
speed and features though.
bye,
Sebastian Hartte
From Sebastian at Hartte.de Sun Aug 1 20:44:44 2004
From: Sebastian at Hartte.de (Sebastian Hartte)
Date: Sun, 01 Aug 2004 20:44:44 +0200
Subject: [Matroska-devel] Re: [gst-devel] Call for ideas : Video and Audio
sinks for Gstreamer on Windows
In-Reply-To: <410B9314.1010406@matroska.org>
References: <410B9314.1010406@matroska.org>
Message-ID: <410D3A1C.4090607@Hartte.de>
Oh i almost forgot,
is there some way of creating a wrapper element for DirectShow filters?
Given the GUID of a filter it should be possible for
an element to dynamically create all the pads (pins) and hold an
instance of the filter internally. I suppose that could increase
the use of gstreamer on windows dramatically since it could be used to
play propietary file formats without some nasty
hacked wrapper code. (Windows Media 8, 9, etc.)
bye,
Storm
From chris at matroska.org Sun Aug 1 21:13:43 2004
From: chris at matroska.org (Christian HJ Wiesner)
Date: Sun, 01 Aug 2004 21:13:43 +0200
Subject: [Matroska-devel] Re: Call for ideas : Video and Audio sinks for
Gstreamer on Windows
In-Reply-To: <410D3914.8090801@Hartte.de>
References: <410B9314.1010406@matroska.org> <410D3914.8090801@Hartte.de>
Message-ID: <410D40E7.2010802@matroska.org>
Sebastian Hartte wrote:
> I think that multiple sinks should be provided. My two favorite players
> (media player classic from guliverkli and winamp) use VMR7/VMR9 and
> Offscreen Overlays for Video and waveout or DirectSound for Audio. Since
> mplayerc is opensource one could have a look at their implementation as
> well. I personally prefer VMR9 over any other video sink because of its
> speed and features though.
> bye, Sebastian Hartte
BTW .. could we have a look at how the Real network guys are doing it
with Helix ? Its also a x-platform multimedia framework, so they
certainly had to solve the same problems as we are facing now.
We maybe cant use the code directly, even if they have changed the
license to GPL now ( we need L-GPL ), but it could be some nice
'inspiration' to look at it ?
ChristianHJW
matroska project admin
From chris at matroska.org Sun Aug 1 21:15:54 2004
From: chris at matroska.org (Christian HJ Wiesner)
Date: Sun, 01 Aug 2004 21:15:54 +0200
Subject: [Matroska-devel] Re: [gst-devel] Call for ideas : Video and Audio
sinks for Gstreamer on Windows
In-Reply-To: <410D3A1C.4090607@Hartte.de>
References: <410B9314.1010406@matroska.org> <410D3A1C.4090607@Hartte.de>
Message-ID: <410D416A.3020700@matroska.org>
Sebastian Hartte wrote:
> Oh i almost forgot,
> is there some way of creating a wrapper element for DirectShow filters?
> Given the GUID of a filter it should be possible for
> an element to dynamically create all the pads (pins) and hold an
> instance of the filter internally. I suppose that could increase
> the use of gstreamer on windows dramatically since it could be used to
> play propietary file formats without some nasty
> hacked wrapper code. (Windows Media 8, 9, etc.)
> bye, Storm
This is certainly possible, but i expect it wouldnt be very easy to do,
and the goal must be that all plugins for gstreamer are usable on all
supported platforms, not just Windows, IMO.
ChristianHJW
matroska project admin
http://www.matroska.org
From R.S.Bultje at students.uu.nl Sun Aug 1 16:00:12 2004
From: R.S.Bultje at students.uu.nl (Ronald S. Bultje)
Date: Sun, 01 Aug 2004 16:00:12 +0200
Subject: [Matroska-devel] Re: [gst-devel] Call for ideas : Video and Audio
sinks for Gstreamer on Windows
In-Reply-To: <410D3A1C.4090607@Hartte.de>
References: <410B9314.1010406@matroska.org> <410D3A1C.4090607@Hartte.de>
Message-ID: <1091368811.8573.0.camel@shrek.bitfreak.net>
On Sun, 2004-08-01 at 20:44, Sebastian Hartte wrote:
> is there some way of creating a wrapper element for DirectShow filters?
> Given the GUID of a filter it should be possible for
> an element to dynamically create all the pads (pins) and hold an
> instance of the filter internally. I suppose that could increase
> the use of gstreamer on windows dramatically since it could be used to
> play propietary file formats without some nasty
> hacked wrapper code. (Windows Media 8, 9, etc.)
Yes, the ffmpeg and ladspa wrapper plugins use that method.
Ronald
From R.S.Bultje at students.uu.nl Sun Aug 1 16:00:37 2004
From: R.S.Bultje at students.uu.nl (Ronald S. Bultje)
Date: Sun, 01 Aug 2004 16:00:37 +0200
Subject: [Matroska-devel] Re: [gst-devel] Call for ideas : Video and Audio
sinks for Gstreamer on Windows
In-Reply-To: <410D3914.8090801@Hartte.de>
References: <410B9314.1010406@matroska.org> <410D3914.8090801@Hartte.de>
Message-ID: <1091368837.8585.2.camel@shrek.bitfreak.net>
On Sun, 2004-08-01 at 20:40, Sebastian Hartte wrote:
> I think that multiple sinks should be provided. My two favorite players
> (media player classic from guliverkli and winamp) use VMR7/VMR9 and
> Offscreen Overlays for Video and waveout or DirectSound for Audio. Since
> mplayerc is opensource one could have a look at their implementation as
> well. I personally prefer VMR9 over any other video sink because of its
> speed and features though.
Can't do; mplayer is GPL, GStreamer is LGPL.
Ronald
From R.S.Bultje at students.uu.nl Sun Aug 1 16:08:19 2004
From: R.S.Bultje at students.uu.nl (Ronald S. Bultje)
Date: Sun, 01 Aug 2004 16:08:19 +0200
Subject: [Matroska-devel] Re: [gst-devel] Call for ideas : Video and
Audio sinks for Gstreamer on Windows
In-Reply-To: <410D416A.3020700@matroska.org>
References: <410B9314.1010406@matroska.org> <410D3A1C.4090607@Hartte.de>
<410D416A.3020700@matroska.org>
Message-ID: <1091369299.8585.4.camel@shrek.bitfreak.net>
On Sun, 2004-08-01 at 21:15, Christian HJ Wiesner wrote:
> This is certainly possible, but i expect it wouldnt be very easy to do,
> and the goal must be that all plugins for gstreamer are usable on all
> supported platforms, not just Windows, IMO.
I doubt that that is possible. This will require some application magic.
It's not as easy as we'd sometimes wish.
Ronald
From Sebastian at Hartte.de Mon Aug 2 00:17:29 2004
From: Sebastian at Hartte.de (Sebastian Hartte)
Date: Mon, 02 Aug 2004 00:17:29 +0200
Subject: [Matroska-devel] Re: [gst-devel] Call for ideas : Video and Audio
sinks for Gstreamer on Windows
In-Reply-To: <410D416A.3020700@matroska.org>
References: <410B9314.1010406@matroska.org> <410D3A1C.4090607@Hartte.de>
<410D416A.3020700@matroska.org>
Message-ID: <410D6BF9.9060803@Hartte.de>
Christian HJ Wiesner wrote:
> Sebastian Hartte wrote:
>
>> Oh i almost forgot,
>> is there some way of creating a wrapper element for DirectShow filters?
>> Given the GUID of a filter it should be possible for
>> an element to dynamically create all the pads (pins) and hold an
>> instance of the filter internally. I suppose that could increase
>> the use of gstreamer on windows dramatically since it could be used to
>> play propietary file formats without some nasty
>> hacked wrapper code. (Windows Media 8, 9, etc.)
>> bye, Storm
>
>
> This is certainly possible, but i expect it wouldnt be very easy to
> do, and the goal must be that all plugins for gstreamer are usable on
> all supported platforms, not just Windows, IMO.
However, the video and audio sinks wont be usable on Linux as well and i
don't see any native WMV plugin coming to Linux (or any other platform)
any time soon.
From Sebastian at Hartte.de Mon Aug 2 00:18:13 2004
From: Sebastian at Hartte.de (Sebastian Hartte)
Date: Mon, 02 Aug 2004 00:18:13 +0200
Subject: [Matroska-devel] Re: [gst-devel] Call for ideas : Video and Audio
sinks for Gstreamer on Windows
In-Reply-To: <1091368837.8585.2.camel@shrek.bitfreak.net>
References: <410B9314.1010406@matroska.org> <410D3914.8090801@Hartte.de>
<1091368837.8585.2.camel@shrek.bitfreak.net>
Message-ID: <410D6C25.8080404@Hartte.de>
Ronald S. Bultje wrote:
>On Sun, 2004-08-01 at 20:40, Sebastian Hartte wrote:
>
>
>>I think that multiple sinks should be provided. My two favorite players
>>(media player classic from guliverkli and winamp) use VMR7/VMR9 and
>>Offscreen Overlays for Video and waveout or DirectSound for Audio. Since
>>mplayerc is opensource one could have a look at their implementation as
>>well. I personally prefer VMR9 over any other video sink because of its
>>speed and features though.
>>
>>
>
>Can't do; mplayer is GPL, GStreamer is LGPL.
>
>Ronald
>
I didn't mean "look at" as in "copy & paste" but rather "look at" as in
"get ideas" ;)
Sebastian
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
From steve.lhomme at free.fr Mon Aug 2 13:23:51 2004
From: steve.lhomme at free.fr (Steve Lhomme)
Date: Mon, 02 Aug 2004 13:23:51 +0200
Subject: [Matroska-devel] Re: Multiple CDs in MKA
Message-ID: <410E2447.6090601@free.fr>
* Typo :
- tags concerning to -> the tags corresponding to
- Here is a non exhaustive of the tags we will use:
- is a backup of a singe audio CD
- are sometimes use to ?separate?
* concept :
"If the mka file has no chapters, all the tags are affected to the
track." Are you talking about Matroska tracks or CD tracks ?
* Maybe add simple hierarchy examples for 1 CD/multi CDs like :
EditionEntry
Tags about the whole album
Chapter 1 : track 1
Tags about track 1
Chapter 1.1 : index 01
Tags about track 1, index 01
Chapter 2 : track 2
Tags about track 2
etc...
Otherwise the document is very clear. At least for me...
Why did you choose PDF instead of an HTML file ? You could put the
technical side on the website and the user part (to come) in the
"guides" part of the website.
--
robUx4 on blog
From steve.lhomme at free.fr Mon Aug 2 13:42:42 2004
From: steve.lhomme at free.fr (Steve Lhomme)
Date: Mon, 02 Aug 2004 13:42:42 +0200
Subject: [Matroska-devel] Re: Call for ideas : Video and Audio sinks for
Gstreamer on Windows
In-Reply-To: <410D3914.8090801@Hartte.de>
References: <410B9314.1010406@matroska.org> <410D3914.8090801@Hartte.de>
Message-ID: <410E28B2.7060104@free.fr>
Sebastian Hartte a ?crit :
> I think that multiple sinks should be provided. My two favorite players
> (media player classic from guliverkli and winamp) use VMR7/VMR9 and
> Offscreen Overlays for Video and waveout or DirectSound for Audio. Since
> mplayerc is opensource one could have a look at their implementation as
> well. I personally prefer VMR9 over any other video sink because of its
> speed and features though.
At least SDL could be used under Windows. Apparently it only deals with
video :(
But of course it would be better in the end to have some plugins that
use the native Windows API.
From steve.lhomme at free.fr Mon Aug 2 13:45:29 2004
From: steve.lhomme at free.fr (Steve Lhomme)
Date: Mon, 02 Aug 2004 13:45:29 +0200
Subject: [Matroska-devel] Re: Call for ideas : Video and Audio sinks for
Gstreamer on Windows
In-Reply-To: <410D3A1C.4090607@Hartte.de>
References: <410B9314.1010406@matroska.org> <410D3A1C.4090607@Hartte.de>
Message-ID: <410E2959.80300@free.fr>
Sebastian Hartte a ?crit :
> Oh i almost forgot,
> is there some way of creating a wrapper element for DirectShow filters?
> Given the GUID of a filter it should be possible for
> an element to dynamically create all the pads (pins) and hold an
> instance of the filter internally. I suppose that could increase
> the use of gstreamer on windows dramatically since it could be used to
> play propietary file formats without some nasty
> hacked wrapper code. (Windows Media 8, 9, etc.)
Yes, I think it should be possible. But that will probably not help for
DRMed content. But it's still better than nothing.
I don't know exactly how it should work :
- make plugin that allows many input/output kind of pins
- make the plugin scan the plugins on the system and use that to
register in the GStreamer registry
- something else
I hope some COM/DirectShow experts can help in the coming weeks.
From Sebastian at Hartte.de Mon Aug 2 14:25:11 2004
From: Sebastian at Hartte.de (Sebastian Hartte)
Date: Mon, 02 Aug 2004 14:25:11 +0200
Subject: [Matroska-devel] Re: [gst-devel] Re: Call for ideas : Video and
Audio sinks for Gstreamer on Windows
In-Reply-To: <410E2959.80300@free.fr>
References: <410B9314.1010406@matroska.org> <410D3A1C.4090607@Hartte.de>
<410E2959.80300@free.fr>
Message-ID: <410E32A7.2090708@Hartte.de>
Steve Lhomme wrote:
> Sebastian Hartte a ?crit :
>
>> Oh i almost forgot,
>> is there some way of creating a wrapper element for DirectShow filters?
>> Given the GUID of a filter it should be possible for
>> an element to dynamically create all the pads (pins) and hold an
>> instance of the filter internally. I suppose that could increase
>> the use of gstreamer on windows dramatically since it could be used to
>> play propietary file formats without some nasty
>> hacked wrapper code. (Windows Media 8, 9, etc.)
>
>
> Yes, I think it should be possible. But that will probably not help
> for DRMed content. But it's still better than nothing.
>
> I don't know exactly how it should work :
>
> - make plugin that allows many input/output kind of pins
> - make the plugin scan the plugins on the system and use that to
> register in the GStreamer registry
> - something else
>
> I hope some COM/DirectShow experts can help in the coming weeks.
I actually did some DirectShow. Hm well there is a way of enumerating
all pins on a plugin, so mapping should be no problem.
What i am more concerned about is format conversion because formats
sometimes are identified via GUIDs on Windows.
However. About the DRMed content. Actually it should help. The
DirectShow filter should have access to the WM DRM database
although it would need to be confirmed first.
About the plugins. Hmm. I think that it could be possible to have a
plugin that can handle every other type of DirectShow filter.
In the end it comes down to converting GStreamer format constants,
enumerating and wrapping the pins/pads and passing trough data
that comes in and passing along data that comes out.
I am quite busy at the moment, otherwise i'd give it a shot.
cu,
Sebastian
From rbultje at ronald.bitfreak.net Mon Aug 2 15:11:59 2004
From: rbultje at ronald.bitfreak.net (Ronald Bultje)
Date: Mon, 2 Aug 2004 15:11:59 +0200 (CEST)
Subject: [Matroska-devel] Re: [gst-devel] Re: Call for ideas : Video and
Audio sinks for Gstreamer on Windows
In-Reply-To: <410E32A7.2090708@Hartte.de>
Message-ID:
Hi,
On Mon, 2 Aug 2004, Sebastian Hartte wrote:
> > I don't know exactly how it should work :
[..]
> > - make the plugin scan the plugins on the system and use that to
> > register in the GStreamer registry
That. Again, see the gst-ffmpeg plugin package, it does most of what you
need here.
> I actually did some DirectShow. Hm well there is a way of enumerating
> all pins on a plugin, so mapping should be no problem.
> What i am more concerned about is format conversion because formats
> sometimes are identified via GUIDs on Windows.
You need a win32GUID-to-gstmimetype and a gstmimetype-to-win32GUID mapper
collection, similar to gstffmpegcodecmap.[ch] in gst-ffmpeg.
Ronald
From chris at matroska.org Mon Aug 2 17:55:47 2004
From: chris at matroska.org (Christian HJ Wiesner)
Date: Mon, 02 Aug 2004 17:55:47 +0200
Subject: [Matroska-devel] New matroska packs - scope ?
Message-ID: <410E6403.9030204@matroska.org>
Hi Team and All,
it seems that its time to launch new matroska packs in the next couple
of weeks. There have been some improvements to matroska lately, namely
- TTA parser/decoder ( Toff )
- new matroskademuxer ( Toff )
which certainly qualify for a new release of the packs. Things to
discuss are still
- the new ffdshow build ( for recent XviD )
- a Wavpack parser/decoder filter
Not in the new pack will be
- the Real DLLs
as Karl Lillevold from Real Networks informed us that this is still no
option and a clear violation of the Real license. To find a solution to
the big number of user complaints about MKVs with RV9 content not
playing even after matroska full pack installation, i have plans to add
a popup window that users have to click away, informing them about this
problem with RV9 MKVs, and pointing them to a Guide that Karl published
once, on how to 'safely' install Realplayer on the users PC.
For the ffdshow build, there is a new stable release with many
improvements, but unfortunately including FFvfw, a working MPEG4 VCM and
dshow codec. For you as a reminder, we decided some weeks ago that we
will not distribute such a codec with the pack, because we fear problems
with license/copyright infringement from the holders of the MPEG4 patents.
For the Wavpack parser/decoder, somebody needs to make one first before
we could inlcude it :D ! Anybody volunteering ? Toff :-) ??
Comments please
Christian
matroska project admin
http://www.matroska.org
From steve.lhomme at free.fr Mon Aug 2 18:05:55 2004
From: steve.lhomme at free.fr (Steve Lhomme)
Date: Mon, 02 Aug 2004 18:05:55 +0200
Subject: [Matroska-devel] New matroska packs - scope ?
In-Reply-To: <410E6403.9030204@matroska.org>
References: <410E6403.9030204@matroska.org>
Message-ID: <410E6663.8090706@free.fr>
Christian HJ Wiesner a ?crit :
>
> Hi Team and All,
>
> it seems that its time to launch new matroska packs in the next couple
> of weeks. There have been some improvements to matroska lately, namely
>
> - TTA parser/decoder ( Toff )
> - new matroskademuxer ( Toff )
>
> which certainly qualify for a new release of the packs. Things to
> discuss are still
>
> - the new ffdshow build ( for recent XviD )
> - a Wavpack parser/decoder filter
>
> Not in the new pack will be
>
> - the Real DLLs
>
> as Karl Lillevold from Real Networks informed us that this is still no
> option and a clear violation of the Real license. To find a solution to
> the big number of user complaints about MKVs with RV9 content not
> playing even after matroska full pack installation, i have plans to add
> a popup window that users have to click away, informing them about this
> problem with RV9 MKVs, and pointing them to a Guide that Karl published
> once, on how to 'safely' install Realplayer on the users PC.
>
> For the ffdshow build, there is a new stable release with many
> improvements, but unfortunately including FFvfw, a working MPEG4 VCM and
> dshow codec. For you as a reminder, we decided some weeks ago that we
> will not distribute such a codec with the pack, because we fear problems
> with license/copyright infringement from the holders of the MPEG4 patents.
>
> For the Wavpack parser/decoder, somebody needs to make one first before
> we could inlcude it :D ! Anybody volunteering ? Toff :-) ??
Wavpack is not supported by any application yet and not even started.
So it will be for the next pack. TTA is not finished in mkvtoolnix.
I hope someone would just install the big ffdshow and just keep the
files we need (unless it's just one big file/filter) that we can add to
the pack...
From moritz at bunkus.org Mon Aug 2 18:31:22 2004
From: moritz at bunkus.org (Moritz Bunkus)
Date: Mon, 2 Aug 2004 18:31:22 +0200
Subject: [Matroska-devel] New matroska packs - scope ?
In-Reply-To: <410E6663.8090706@free.fr>
References: <410E6403.9030204@matroska.org> <410E6663.8090706@free.fr>
Message-ID: <20040802163122.GO8684@bunkus.org>
Hi,
> TTA is not finished in mkvtoolnix.
Not true. The latest build has perfect timestamp precision & can deal
with ID3 tags (both v1 and v2) in TTA files.
> I hope someone would just install the big ffdshow and just keep the
> files we need (unless it's just one big file/filter) that we can add to
> the pack...
I'm actually thinking we should just include ffdshow no matter
what. There have been XviD binaries for ages now, and I sincerely doubt
that Koepi is paying licenses...
Mosu
--
If Darl McBride was in charge, he'd probably make marriage
unconstitutional too, since clearly it de-emphasizes the commercial
nature of normal human interaction, and probably is a major impediment
to the commercial growth of prostitution. - Linus Torvalds
From christophe.paris at free.fr Mon Aug 2 18:46:41 2004
From: christophe.paris at free.fr (Christophe PARIS)
Date: Mon, 02 Aug 2004 18:46:41 +0200
Subject: [Matroska-devel] New matroska packs - scope ?
In-Reply-To: <410E6403.9030204@matroska.org>
References: <410E6403.9030204@matroska.org>
Message-ID: <410E6FF1.2030509@free.fr>
Christian HJ Wiesner wrote:
> it seems that its time to launch new matroska packs in the next couple
> of weeks. There have been some improvements to matroska lately, namely
> - TTA parser/decoder ( Toff )
> - new matroskademuxer ( Toff )
Something that would be great to fix is (from the todo page) :
"MatroskaSplitter doesn't support partial file rendering (that mean MS
IGraphBuilder::RenderFile function fail, it should return
VFW_S_PARTIAL_RENDER instead :
http://msdn.microsoft.com/archive/en-us/directx9_c/directx/htm/igraphbuilderrenderfile.asp
), for example when you have a file with subtitles, you need to have
VSFilter installed even if you don't want to show the subtitles."
This way the file will still play if you have 1 audio decoder, or 1
video decoder, and it will be easier for the user to see what's missing.
> For the ffdshow build, there is a new stable release with many
> improvements, but unfortunately including FFvfw, a working MPEG4 VCM and
> dshow codec. For you as a reminder, we decided some weeks ago that we
> will not distribute such a codec with the pack, because we fear problems
> with license/copyright infringement from the holders of the MPEG4 patents.
You can disable the encoders available in libavcodec.dll when you
compile it, but the problem is the GUI stuff, ffdshow just check for the
presence of libavcodec.dll to show encoders as available.
So what would be great is that ffdshow do some more thorough checking to
show only the available encoder/decoder inside libavcodec.dll , that
would make the thing a lot more cleaner for the user.
Also there is no file version number in ffdshow dlls, that would be
better to have some to avoid update problem, and also to have a lite
flag or something.
> For the Wavpack parser/decoder, somebody needs to make one first before
> we could inlcude it :D ! Anybody volunteering ? Toff :-) ??
We should probably finish the CDA-in-MKA stuff before. That's higher
priority in my opinion to one more lossless codec even if it's a great
one :)
Regards,
Toff
From steve.lhomme at free.fr Mon Aug 2 18:58:02 2004
From: steve.lhomme at free.fr (Steve Lhomme)
Date: Mon, 02 Aug 2004 18:58:02 +0200
Subject: [Matroska-devel] New matroska packs - scope ?
In-Reply-To: <410E6FF1.2030509@free.fr>
References: <410E6403.9030204@matroska.org> <410E6FF1.2030509@free.fr>
Message-ID: <410E729A.2070408@free.fr>
Christophe PARIS a ?crit :
> Something that would be great to fix is (from the todo page) :
> "MatroskaSplitter doesn't support partial file rendering (that mean MS
> IGraphBuilder::RenderFile function fail, it should return
> VFW_S_PARTIAL_RENDER instead :
> http://msdn.microsoft.com/archive/en-us/directx9_c/directx/htm/igraphbuilderrenderfile.asp
> ), for example when you have a file with subtitles, you need to have
> VSFilter installed even if you don't want to show the subtitles."
> This way the file will still play if you have 1 audio decoder, or 1
> video decoder, and it will be easier for the user to see what's missing.
Yes indeed ! Do you know how to fix that ?
>> For the ffdshow build, there is a new stable release with many
>> improvements, but unfortunately including FFvfw, a working MPEG4 VCM
>> and dshow codec. For you as a reminder, we decided some weeks ago that
>> we will not distribute such a codec with the pack, because we fear
>> problems with license/copyright infringement from the holders of the
>> MPEG4 patents.
>
>
> You can disable the encoders available in libavcodec.dll when you
> compile it, but the problem is the GUI stuff, ffdshow just check for the
> presence of libavcodec.dll to show encoders as available.
> So what would be great is that ffdshow do some more thorough checking to
> show only the available encoder/decoder inside libavcodec.dll , that
> would make the thing a lot more cleaner for the user.
> Also there is no file version number in ffdshow dlls, that would be
> better to have some to avoid update problem, and also to have a lite
> flag or something.
The FFDShow we distribute now doesn't include encoders ? Otherwise we
should not care about this problem. And if adding the encoders are not
too big, we should just put it in... I agree they should allow the
option, and especially split them in different files.
>> For the Wavpack parser/decoder, somebody needs to make one first
>> before we could inlcude it :D ! Anybody volunteering ? Toff :-) ??
>
>
> We should probably finish the CDA-in-MKA stuff before. That's higher
> priority in my opinion to one more lossless codec even if it's a great
> one :)
I agree too.
About TTA, what is missing to have it working as the default codec in
CD-in-MKA ?
From chris at matroska.org Tue Aug 3 11:43:05 2004
From: chris at matroska.org (Christian HJ Wiesner)
Date: Tue, 03 Aug 2004 11:43:05 +0200
Subject: [Matroska-devel] New matroska packs - scope ?
In-Reply-To: <20040802163122.GO8684@bunkus.org>
References: <410E6403.9030204@matroska.org> <410E6663.8090706@free.fr>
<20040802163122.GO8684@bunkus.org>
Message-ID: <410F5E29.7010407@matroska.org>
Moritz Bunkus wrote:
>>I hope someone would just install the big ffdshow and just keep the
>>files we need (unless it's just one big file/filter) that we can add to
>>the pack...
>>
>>
>I'm actually thinking we should just include ffdshow no matter
>what. There have been XviD binaries for ages now, and I sincerely doubt
>that Koepi is paying licenses... Mosu
>
>
The point is, maybe Koepi is already on the watch list of the MPAA and
they just wait until he is earning more money, so they can take it from
him for the loss of revenues he was causing them :D .... and, do we want
to take the same risk ? Sorry, but i am a responsible family man, i at
least had to ask my wife how she feels about that. After all, this is
not a torrent / tracker, with a lot of room for legal interpretation of
who is doing what and it this is again current laws or not, but a very
straight forward thing : We will distribute a binary MPEG4 encoder from
our webspace, and without paying license fees to the patent holder !
Christian
From nleguen at pepper-prod.com Tue Aug 3 12:43:41 2004
From: nleguen at pepper-prod.com (Nicolas Le Guen)
Date: Tue, 03 Aug 2004 12:43:41 +0200
Subject: [Matroska-devel] New matroska packs - scope ?
In-Reply-To: <410F5E29.7010407@matroska.org>
References: <410E6403.9030204@matroska.org>
<410E6663.8090706@free.fr> <20040802163122.GO8684@bunkus.org>
<410F5E29.7010407@matroska.org>
Message-ID: <410F6C5D.9030309@pepper-prod.com>
MatroskaProp also need to be updated before to be included the next
Matroska pack.
Here are the actuals bugs which need to be fixed:
- the "delete" button for the tags doesn't work
- you can't add a new tag if a current tag exists with the same name: it
won't add a new tag, but will update the existing one.
- a tag can't have an EditonUID target... and that is now possible
A usefull improvement would be, by default, not to let the user to
create tags with any name, but to let him pick the tag name from a list.
This would avoid "exotic" tags.
About the directshow filters, TTA filters need to be included to the
pack. I also believe, IMHO, that we should not provide any patented
encoder with the matroska pack but we should warn the user about this
(and may be give him the websites where he could find the non provided
patented encoders).
From chris at matroska.org Tue Aug 3 16:08:29 2004
From: chris at matroska.org (Christian HJ Wiesner)
Date: Tue, 03 Aug 2004 16:08:29 +0200
Subject: [Matroska-devel] Using Portaudio for a Gstreamer audio sink ?
Message-ID: <410F9C5D.1020202@matroska.org>
To.: Portaudio List
Cc.: Gstreamer-devel, matroska-devel
Hi All,
we finally succeeded to port Gstreamer to Windows, and natively ( not
using mingw ), all the necessary mods are in the Gstreamer CVS already.
Steve 'robux4' Lhomme, one of matroska's core developers, has gstreamer
itself as well as about 60 plugins compiling with MSVC7. Not all plugins
were tested so far, but generally its looking pretty good. Compiled
Binaries available from here : http://mukoli.free.fr/gstreamer/
Our next goal is now to have working output sinks for video and audio,
so that some devs could probably look into getting gst-player to work on
Windows. Portaudio seems to be a very nice basement to stand on, also
because we plan to port Gstreamer to other platforms in the future, like
Mac OSX.
Do you guys feel Portaudio could be used for an audio output sink for
Gstreamer ? If we start this, could we expect to get some support from
your side maybe ?
Thanks for a short reply
ChristianHJW
matroska project admin
http://www.matroska.org
From Liisachan at faireal.net Thu Aug 5 04:50:29 2004
From: Liisachan at faireal.net (Liisachan)
Date: Thu, 05 Aug 2004 11:50:29 +0900
Subject: [Matroska-devel] MatroskaSplitter Vorbis Bug/Demo
Message-ID: <20040805115029Wt=4w+@faireal.net>
If MKV has an Ogg Vorbis track,
Video rendering rate is not constant on Windows,
but irregular, altho the global FPS is correct.
The difference (irregularity) can be easily
observed in this demo:
http://park14.wakwak.com/~flower/20040805.zip
Same video and same audio (in Vorbis or in MP3)
OK -> 20040805 xvid+mp3.mkv
OK -> 20040805 xvid+mp3.ogm
No Good -> 20040805 xvid+vorbis.mkv
OK -> 20040805 xvid+vorbis.ogm
Probably this is a problem of splitter,
because the same thing happen when muxed with MMG,
and when muxed with VDM too.
I tried older Splitters, but the problem is not fixed.
This happens when the audio is Vorbis.
If the audio is in MP3, the same video in MKV plays fine.
(Rough Concept)
This is what you want to see:
+...+...+...+...+...+...+...
(+) means the next (new) frame.
7 frames in this unit.
However, what you actually see is something like this:
+...+......+.+..++......+...
7 frames in the unit anyway, so global fps is correct,
but the rendering timing is not constant...
Regards
Liisachan
From alexander.noe at s2001.tu-chemnitz.de Thu Aug 5 08:03:54 2004
From: alexander.noe at s2001.tu-chemnitz.de (=?UTF-8?B?QWxleGFuZGVyIE5vw6k=?=)
Date: Thu, 05 Aug 2004 08:03:54 +0200
Subject: [Matroska-devel] MatroskaSplitter Vorbis Bug/Demo
In-Reply-To: <20040805115029Wt=4w+@faireal.net>
References: <20040805115029Wt=4w+@faireal.net>
Message-ID: <4111CDCA.4080605@hrz.tu-chemnitz.de>
Liisachan wrote:
> Probably this is a problem of splitter,
> because the same thing happen when muxed with MMG,
> and when muxed with VDM too.
They are both using libmatroska.
What happens when using avi-mux gui?
Alex
From chris at matroska.org Thu Aug 5 08:21:32 2004
From: chris at matroska.org (Christian HJ Wiesner)
Date: Thu, 05 Aug 2004 08:21:32 +0200
Subject: [Matroska-devel] MatroskaSplitter Vorbis Bug/Demo
In-Reply-To: <20040805115029Wt=4w+@faireal.net>
References: <20040805115029Wt=4w+@faireal.net>
Message-ID: <4111D1EC.3070406@matroska.org>
Liisachan,
are you sure that CoreVorbis is used for the Vorbis decoding ? Sounds
like an old problem when OggDS is used for Vorbis decoding, instead of
CoreVorbis.
Christian
Liisachan wrote:
>If MKV has an Ogg Vorbis track,
>Video rendering rate is not constant on Windows,
>but irregular, altho the global FPS is correct.
>
From Liisachan at faireal.net Thu Aug 5 08:34:47 2004
From: Liisachan at faireal.net (Liisachan)
Date: Thu, 05 Aug 2004 15:34:47 +0900
Subject: [Matroska-devel] MatroskaSplitter Vorbis Bug/Demo
In-Reply-To: <4111D1EC.3070406@matroska.org>
References: <20040805115029Wt=4w+@faireal.net> <4111D1EC.3070406@matroska.org>
Message-ID: <200408051534473cgiVe@faireal.net>
Christian HJ Wiesner wrote:
> Liisachan,
>
> are you sure that CoreVorbis is used for the Vorbis decoding ? Sounds
> like an old problem when OggDS is used for Vorbis decoding, instead of
> CoreVorbis.
AAAAAAhhhh, no, but I now know the reason,
thax for the hint.
RadLight got the control of Vorbis before I knew.
I uninstalled RadLight, and the problem has gone.
Apparently what was wrong was RadLight's Vorbis Decoder.
(No wonder, it is bata, after all)
and nothing to do with Matroska.
Everythig is OK now
Sorry for the mess
Liisachan
>
> Christian
>
> Liisachan wrote:
>
> >If MKV has an Ogg Vorbis track,
> >Video rendering rate is not constant on Windows,
> >but irregular, altho the global FPS is correct.
> >
>
From steve.lhomme at free.fr Thu Aug 5 09:41:22 2004
From: steve.lhomme at free.fr (Steve Lhomme)
Date: Thu, 05 Aug 2004 09:41:22 +0200
Subject: [Matroska-devel] MatroskaSplitter Vorbis Bug/Demo
In-Reply-To: <200408051534473cgiVe@faireal.net>
References: <20040805115029Wt=4w+@faireal.net> <4111D1EC.3070406@matroska.org>
<200408051534473cgiVe@faireal.net>
Message-ID: <4111E4A2.70100@free.fr>
Liisachan a ?crit :
> I uninstalled RadLight, and the problem has gone.
:)
(out of context it's even better)
From steve.lhomme at free.fr Fri Aug 6 09:38:58 2004
From: steve.lhomme at free.fr (Steve Lhomme)
Date: Fri, 06 Aug 2004 09:38:58 +0200
Subject: [Matroska-devel] Re: tags names
In-Reply-To: <20040806073053.GH9421@bunkus.org>
References: <4112C7FB.5070508@matroska.org> <20040806073053.GH9421@bunkus.org>
Message-ID: <41133592.4050508@free.fr>
Moritz Bunkus a ?crit :
> Hi,
>
>
>>Please find joined a patch about tags names. So we'll use 100% Matroska
>>specs compatible tags. (e.g. ARTIST is now LEAD_PERFORMER) :-)
>
>
> Where's the patch? Anyway. LEAD_PERFORMER is a single person. So where's
> the band? I wouldn't chose 'Metallica' as the LEAD_PERFORMER... It would
> be BAND. But how should mkvmerge decide which of those to use?
>
> In this case I think that Matroska tags are broken... Or at least
> unusable for automatic handling.
Mosu,
The tags are indeed bad in the current state. But since there are
applications already writing them, we can't change them anymore. So
we'll have to deal with these bad news for the rest of our lives...
ProDoc has a good comparison of tag name "translations", and ARTIST
commonly found is LEAD_PERFORMER in Matroska. An application should
display "artist" in whatever language is used, not LEAD_PERFORMER...
We could consider the current tags as "beta" and clean them before
"freezing" them. Before freezing we could ask for comments in various
places (not very succesful in the past, but you never know). After all
tags are only used in MKA (and one tag for video that won't change)
which so far was experimental. Not much people could blame us (and they
could still use foobar to change tag names)...
What do you (all) think ?
As was done with the format spec, we could introduce a "fix" HTML class
for tags we know won't change, to show a difference when displaying them.
From agebosma at home.nl Fri Aug 6 10:54:19 2004
From: agebosma at home.nl (Age Bosma)
Date: Fri, 06 Aug 2004 10:54:19 +0200
Subject: [Matroska-devel] Re: tags names
In-Reply-To: <41133592.4050508@free.fr>
References: <4112C7FB.5070508@matroska.org> <20040806073053.GH9421@bunkus.org>
<41133592.4050508@free.fr>
Message-ID: <4113473B.6080106@home.nl>
Steve Lhomme wrote:
> We could consider the current tags as "beta" and clean them before
> "freezing" them. Before freezing we could ask for comments in various
> places (not very succesful in the past, but you never know). After all
> tags are only used in MKA (and one tag for video that won't change)
> which so far was experimental. Not much people could blame us (and they
> could still use foobar to change tag names)...
>
I completely agree, since there are more problems like this I pointed
out before I think now would still be a good time to make some changes.
Especially because the current specs aren't final anyway. Eventhough
some application already support the current tag set I think this is
still relatively small amount, too small to cause major problems.
If we change the current specs we could always notify the authors of
some known application which implement the Matroska tag specs already
about this.
I was already working on a list of problems we have at the moment if it
comes to tag names. I'll start adding some problematic tag names like
this as well. I'll put it online asap.
Prodoc
From steve.lhomme at free.fr Fri Aug 6 12:01:42 2004
From: steve.lhomme at free.fr (Steve Lhomme)
Date: Fri, 06 Aug 2004 12:01:42 +0200
Subject: [Matroska-devel] Tags to change
Message-ID: <41135706.5070106@free.fr>
Hi,
As you know, Matroska has defined various tags. These tags let you put
meta information about the content of a Matroska file (audio or video)
or some parts of it (using chapters).
The basic idea is to be able to transmux from all known/common
containers to Matroska without losing any information and being
officially supported.
Supporting official tags mean that such an application would be able to
read/write at least the defined tags. But more important is that for a
specific content (artist or title), it should use the defined element
and not a custom one. That means such tags could be read by other
"compliant" application.
In the other hand Matroska allows and will still allow anyone to put
custom tags (exotic tags) if they wish to (probably not in basic
applications).
Right now the tag definition is in a messy state and we plan to clean
it, maybe changing some names and improving definitions. We are going to
it from now. And anyone you know who would like to help to improve the
list, the compatibility with other tag systems or the definitions is
welcome.
There is no definite date to freeze the tags spec (additions will always
be possible but not changing existing tags). We'll freeze it, when it's
ready...
--
robUx4 on blog
From zaheerabbas at merali.org Sat Aug 7 20:13:26 2004
From: zaheerabbas at merali.org (Zaheer Abbas Merali)
Date: Sat, 07 Aug 2004 19:13:26 +0100
Subject: [Matroska-devel] Re: [gst-devel] Using Portaudio for a Gstreamer
audio sink ?
In-Reply-To: <410F9C5D.1020202@matroska.org>
References: <410F9C5D.1020202@matroska.org>
Message-ID: <1091902406.12834.4.camel@monterey>
Hi Chris
i) GStreamer is already compiling and running and being used on OS X
with native audio source and sink based on Mac OS X's CoreAudio
framework as well as a native video sink using cocoa's opengl wrapper.
ii) Using Portaudio in my opinion is not a good idea, you would be
better off using native windows APIs to create a windows audio sink and
source. DirectX apis for sound do not look difficult at all.
Take Care
Zaheer Abbas Merali
On Tue, 2004-08-03 at 16:08 +0200, Christian HJ Wiesner wrote:
> To.: Portaudio List
> Cc.: Gstreamer-devel, matroska-devel
>
>
> Hi All,
>
> we finally succeeded to port Gstreamer to Windows, and natively ( not
> using mingw ), all the necessary mods are in the Gstreamer CVS already.
> Steve 'robux4' Lhomme, one of matroska's core developers, has gstreamer
> itself as well as about 60 plugins compiling with MSVC7. Not all plugins
> were tested so far, but generally its looking pretty good. Compiled
> Binaries available from here : http://mukoli.free.fr/gstreamer/
>
> Our next goal is now to have working output sinks for video and audio,
> so that some devs could probably look into getting gst-player to work on
> Windows. Portaudio seems to be a very nice basement to stand on, also
> because we plan to port Gstreamer to other platforms in the future, like
> Mac OSX.
>
> Do you guys feel Portaudio could be used for an audio output sink for
> Gstreamer ? If we start this, could we expect to get some support from
> your side maybe ?
>
> Thanks for a short reply
>
> ChristianHJW
> matroska project admin
> http://www.matroska.org
>
>
> -------------------------------------------------------
> This SF.Net email is sponsored by OSTG. Have you noticed the changes on
> Linux.com, ITManagersJournal and NewsForge in the past few weeks? Now,
> one more big change to announce. We are now OSTG- Open Source Technology
> Group. Come see the changes on the new OSTG site. www.ostg.com
> _______________________________________________
> gstreamer-devel mailing list
> gstreamer-devel at lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/gstreamer-devel
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 189 bytes
Desc: This is a digitally signed message part
URL:
From dbarrett at quinthar.com Thu Aug 12 20:45:40 2004
From: dbarrett at quinthar.com (David Barrett)
Date: Thu, 12 Aug 2004 12:45:40 -0600
Subject: [Matroska-devel] RE: [Theora-dev] Offer for cooperation on a menue
system
In-Reply-To: <40E5CCB5.8080606@matroska.org>
Message-ID: <20040812185647.A512C440040@p15097576.pureserver.info>
Hi, I'm certainly not qualified to speak on behalf of anyone, but I'm
curious what sort of cooperation you had in mind.
Are you suggesting that we standardize upon a menu system and create a set
of tools for both Ogg and Matroska to share?
Incidentally, you might get a better response from one of the Ogg lists, as
this discussion is just on using the Theora video compression codec.
-david
> -----Original Message-----
> From: theora-dev-bounces at xiph.org [mailto:theora-dev-bounces at xiph.org] On
> Behalf Of ChristianHJW
> Sent: Friday, July 02, 2004 3:00 PM
> To: Discussion about the current and future development of Matroska;
> theora-dev at xiph.org
> Subject: [Theora-dev] Offer for cooperation on a menue system
>
> Hi Xiph guys,
>
> i dont know if this is a wise move, some of our members are against it,
> but here i am :
>
> We offered our users a usable menue system in matroska long ago, but due
> to higher priorities we never had the time to look at it. Amongst other
> things we are looking at to improve our container and its value to our
> users, menue have been brought back to our attention in this public poll
> here : http://forum.doom9.org/showthread.php?s=&threadid=78011
>
> Now, its not so problematic to define a nice menue system for a
> container, but there really IS a problem to write a menue editor for
> that, so that people can start to
>
> - convert DVD menues into the new format
> - create their own menues
> etc.
>
> and to make sure all players will support this new menue system, so i
> thought it might be a good idea to contact you on this, and ask you if
> you were prepared to cooperate with us on this issue.
>
> I know the communication between Xiph and our team has not always been
> the best in the past, but maybe this cooperation could be a possibility
> to forget what happened in the past, and make a new start ? After all,
> Ogg and matroska do have completely different goals now, so there should
> be room for both really.
>
> Thanks for a short answer
>
> Christian
> matroska project admin
> _______________________________________________
> Theora-dev mailing list
> Theora-dev at xiph.org
> http://lists.xiph.org/mailman/listinfo/theora-dev
From kost at imn.htwk-leipzig.de Fri Aug 13 18:15:42 2004
From: kost at imn.htwk-leipzig.de (Stefan Kost)
Date: Fri, 13 Aug 2004 18:15:42 +0200
Subject: [Matroska-devel] Re: [gst-devel] Call for ideas : Video and Audio
sinks for Gstreamer on Windows
In-Reply-To: <410D416A.3020700@matroska.org>
References: <410B9314.1010406@matroska.org> <410D3A1C.4090607@Hartte.de>
<410D416A.3020700@matroska.org>
Message-ID: <411CE92E.8000308@imn.htwk-leipzig.de>
IMHO it is absolutely fine to have platform dependent sins and sources. Thats
what the gstreamer API is for (among other things ;-)) - decoupling the
application from the platform. So on Linux we have Alsa-Sources/Sinks, on
Windows e.g. DirectX onea and on the Mac CoreAudio, etc.
The app just uses the sinks the user preferes
Stefan
Christian HJ Wiesner wrote:
> Sebastian Hartte wrote:
>
>> Oh i almost forgot,
>> is there some way of creating a wrapper element for DirectShow filters?
>> Given the GUID of a filter it should be possible for
>> an element to dynamically create all the pads (pins) and hold an
>> instance of the filter internally. I suppose that could increase
>> the use of gstreamer on windows dramatically since it could be used to
>> play propietary file formats without some nasty
>> hacked wrapper code. (Windows Media 8, 9, etc.)
>> bye, Storm
>
>
> This is certainly possible, but i expect it wouldnt be very easy to do,
> and the goal must be that all plugins for gstreamer are usable on all
> supported platforms, not just Windows, IMO.
>
> ChristianHJW
> matroska project admin
> http://www.matroska.org
>
>
> -------------------------------------------------------
> This SF.Net email is sponsored by OSTG. Have you noticed the changes on
> Linux.com, ITManagersJournal and NewsForge in the past few weeks? Now,
> one more big change to announce. We are now OSTG- Open Source Technology
> Group. Come see the changes on the new OSTG site. www.ostg.com
> _______________________________________________
> gstreamer-devel mailing list
> gstreamer-devel at lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/gstreamer-devel
>
--
\|/ Stefan Kost
<@ @> private business
+-oOO-(_)-OOo------------------------------------------------------ - - - - -
| __ Address Simildenstr. 5 HTWK Leipzig, Fb IMN, Postfach 301166
| /// 04277 Leipzig 04251 Leipzig
| __ /// Germany Germany
| \\\/// Phone +49341 2253538 +49341 30766101
| \__/ EMail st_kost_at_gmx.net kost_at_imn.htwk-leipzig.de
| WWW www.sonicpulse.de www.imn.htwk-leipzig.de/~kost/about.html
===-=-=--=---=---------------------------------- - - - - -
-------------- next part --------------
A non-text attachment was scrubbed...
Name: kost.vcf
Type: text/x-vcard
Size: 345 bytes
Desc: not available
URL:
From giles at xiph.org Fri Aug 13 20:06:55 2004
From: giles at xiph.org (Ralph Giles)
Date: Fri, 13 Aug 2004 11:06:55 -0700
Subject: [Matroska-devel] Re: [Theora-dev] Offer for cooperation on a menue
system
In-Reply-To: <40E5CCB5.8080606@matroska.org>
References: <40E5CCB5.8080606@matroska.org>
Message-ID: <20040813180655.GB3742@ghostscript.com>
On Fri, Jul 02, 2004 at 10:59:33PM +0200, ChristianHJW wrote:
> We offered our users a usable menue system in matroska long ago, but due
> to higher priorities we never had the time to look at it. Amongst other
> things we are looking at to improve our container and its value to our
> users, menue have been brought back to our attention in this public poll
> here : http://forum.doom9.org/showthread.php?s=&threadid=78011
Sure, I'm happy to talk about it. What did you have in mind?
I've thought about SMIL, or something custom with SVG (and possibly
javascript) converging with CMML from annodex.net for stream references.
> I know the communication between Xiph and our team has not always been
> the best in the past, but maybe this cooperation could be a possibility
> to forget what happened in the past, and make a new start ? After all,
> Ogg and matroska do have completely different goals now, so there should
> be room for both really.
True enough. And I assure you, your message being stuck in the moderation
queue for 5 weeks wasn't deliberate!
-r
From giles at xiph.org Fri Aug 13 20:00:02 2004
From: giles at xiph.org (Ralph Giles)
Date: Fri, 13 Aug 2004 11:00:02 -0700
Subject: [Matroska-devel] Re: [Theora-dev] Offer for cooperation on a menue
system
In-Reply-To: <20040812184542.E9B9110418C@smtp3.oregonstate.edu>
References: <40E5CCB5.8080606@matroska.org>
<20040812184542.E9B9110418C@smtp3.oregonstate.edu>
Message-ID: <20040813180002.GA3742@ghostscript.com>
On Thu, Aug 12, 2004 at 12:45:40PM -0600, David Barrett wrote:
> Incidentally, you might get a better response from one of the Ogg lists, as
> this discussion is just on using the Theora video compression codec.
Well, except there aren't any 'ogg' lists, only codec lists. The vorbis lists
are by tradition the most general place, but theora-dev is the most appropriate
place for this this, since it's only relevent to video.
-r
From mike at po.cs.msu.su Fri Aug 13 23:20:50 2004
From: mike at po.cs.msu.su (Mike Matsnev)
Date: Sat, 14 Aug 2004 01:20:50 +0400
Subject: [Matroska-devel] Control tracks
Message-ID: <20040813212050.GA67710@azog.po.cs.msu.su>
Hi!
As I almost finished the DShow splitter implementation, I'm ready to
move to more interesting stuff like control tracks.
So I'm asking for ideas about what control tracks should do and how.
E.g. consider the case of several anime episodes in the same file
with shared credits, how would the control track look in such
file?
/Mike
From maihem at maihem.org Sat Aug 14 00:47:30 2004
From: maihem at maihem.org (Tristan Wibberley)
Date: Fri, 13 Aug 2004 23:47:30 +0100
Subject: [Matroska-devel] Re: [Theora-dev] Offer for cooperation on a menue
system
In-Reply-To: <20040813180655.GB3742@ghostscript.com>
References: <40E5CCB5.8080606@matroska.org>
<20040813180655.GB3742@ghostscript.com>
Message-ID: <1092437250.8618.14.camel@localhost>
On Fri, 2004-08-13 at 19:06, Ralph Giles wrote:
> On Fri, Jul 02, 2004 at 10:59:33PM +0200, ChristianHJW wrote:
>
> > We offered our users a usable menue system in matroska long ago, but due
> > to higher priorities we never had the time to look at it. Amongst other
> > things we are looking at to improve our container and its value to our
> > users, menue have been brought back to our attention in this public poll
> > here : http://forum.doom9.org/showthread.php?s=&threadid=78011
>
> Sure, I'm happy to talk about it. What did you have in mind?
>
> I've thought about SMIL, or something custom with SVG (and possibly
> javascript) converging with CMML from annodex.net for stream references.
Accessibility is important, in some countries there are laws requiring
that media be accessible wherever it makes sense (such as digital
media). So I think the W3C approach is ideal, that way stylesheets can
be provided for different media such as screenreaders.
That would also allow menus to make sense for audio only files. Could it
be possible for an interlaced ogg stream (terminology?) to provide all
tracks on an album, with a menu for choosing a track, and a prepared
playlist menu option - with braille, text-to-speech, screen and some
sort of small display stylesheets?
There's no reason for this to be for graphical displays only. You could
even use it on a telephone system: "You are on hold, please choose your
music from the following four options..." :)
I don't know if that makes sense or even fits into Ogg/Matroska
properly.
Regards,
Tristan Wibberley
-- I have a little sig...
From steve.lhomme at free.fr Sat Aug 14 11:27:47 2004
From: steve.lhomme at free.fr (Steve Lhomme)
Date: Sat, 14 Aug 2004 11:27:47 +0200
Subject: [Matroska-devel] Control tracks
In-Reply-To: <20040813212050.GA67710@azog.po.cs.msu.su>
References: <20040813212050.GA67710@azog.po.cs.msu.su>
Message-ID: <411DDB13.9070808@free.fr>
Mike Matsnev wrote:
> Hi!
>
> As I almost finished the DShow splitter implementation, I'm ready to
> move to more interesting stuff like control tracks.
Cool. Well, there is some stuff to resolve like the VSFilter issue (no
autoloading). Hopefully Gabest will officially integrate Toff's changes.
It would be nice to have a place to put all kinds of "complex" files
with different codec and/or chapters combinations to test it and other
playback softwares.
I think we should check with all playback software devs to know what
kind of files are/were a problem. Then we can make a few test files out
of that. That would save anyone's time trying to figure out if a
software works or not as expected in all known cases...
> So I'm asking for ideas about what control tracks should do and how.
> E.g. consider the case of several anime episodes in the same file
> with shared credits, how would the control track look in such
> file?
Ah, this is a very good+simple example ! So far a control track was
designed with a few things in mind like change the chapter edition, jump
to a location and not much out of that. Of course this may not be enough
in your case.
It is probably enough because at the end of each episode you can "jump
to the credits and use Control Track X" (ie disable the current control
track and use another one from the jump point). So each credits played
would use another Control Track that would know where to jump afterwards
(next episode). The same can be used for an intro too.
But IMO it's not a clean way. It should not be needed to create more
than one Control Track for such a simple case. So what we need here is
to be able to jump to a point (start of the credit) and at the end jump
to another location in the file, that depends on where we jumped from.
What kind of possibilities is there to do that ? I can think of one :
use variables in the Control Track that could be used whenever needed by
the Control Track. I think that's what is used in DVD menus. In this
case there could be different scenarii :
- before jumping the control track sets a variable to the timecode to
use for the next episode
- before jumping the control track sets a variable to the chapter UID to
use for the next episode
- before jumping the control track sets a variable to the chapter UID
where the jump comes from
- before jumping the control track sets a variable to the timecode where
the jump comes from
IMO we shouldn't define strict rules for that, letting the Control Track
devs do what they prefer. That means variable should not have a fixed
meaning. But IMO they should have both a name and a value.
Such variables could also be used for conditional statements :
if(counter != 0) then loop this chapter otherwise jump to location X.
And the Control Track should also have access to variables from the
"player" like : chapter playing, edition selected, language selected,
tracks playing, tracks enabled, etc. The name of such variables may be
defined in a specification for everyone to use the same and have control
track use these names safely.
As you see, it implies almost a programing language and a common
interface with the "rest of the world". So it requires a bit more
brainstorming.
BTW, as Mosu is working to build 1.0 with a fixed number of features,
building files with control tracks may be added to mkvtoolnix only after
1.0 is done, or on another source branch, or kept hidden to the user.
Or maybe the format of our Control Track will not be defined by that time ;)
Any comment and/or suggestion is highly welcome !
From steve.lhomme at free.fr Sat Aug 14 11:32:41 2004
From: steve.lhomme at free.fr (Steve Lhomme)
Date: Sat, 14 Aug 2004 11:32:41 +0200
Subject: [Matroska-devel] Control tracks
In-Reply-To: <20040813212050.GA67710@azog.po.cs.msu.su>
References: <20040813212050.GA67710@azog.po.cs.msu.su>
Message-ID: <411DDC39.5080006@free.fr>
Another idea for making the system even more powerful :
have the ability to hook the player. In other words, place a callback
for the Control Track to be called whenever an action on the player
occurs (pause pressed, next chapter pressed, new language selected, new
track selected, etc).
To achieve that only one callback is needed with :
- a message ID
- a cookie (interpretation depends on the ID)
From paul at msn.com Sat Aug 14 17:49:15 2004
From: paul at msn.com (Paul Bryson)
Date: Sat, 14 Aug 2004 10:49:15 -0500
Subject: [Matroska-devel] Re: Control tracks
References: <20040813212050.GA67710@azog.po.cs.msu.su>
<411DDC39.5080006@free.fr>
Message-ID:
"Steve Lhomme" wrote...
> Another idea for making the system even more powerful :
> have the ability to hook the player.
I'm pretty sure that you want the player to handle everything from it. At
least in DirectShow, wouldn't it be a little b0rked to have a filter controlling
everything?
Atamido
From steve.lhomme at free.fr Sat Aug 14 19:11:56 2004
From: steve.lhomme at free.fr (Steve Lhomme)
Date: Sat, 14 Aug 2004 19:11:56 +0200
Subject: [Matroska-devel] Re: Control tracks
In-Reply-To:
References: <20040813212050.GA67710@azog.po.cs.msu.su> <411DDC39.5080006@free.fr>
Message-ID: <411E47DC.5060706@free.fr>
Paul Bryson wrote:
> "Steve Lhomme" wrote...
>
>>Another idea for making the system even more powerful :
>>have the ability to hook the player.
>
>
> I'm pretty sure that you want the player to handle everything from it. At
> least in DirectShow, wouldn't it be a little b0rked to have a filter controlling
> everything?
Right now the question is now how it will be implemented but what we
should support and how it could be stored in Matroska.
I was thinking about Flash this afternoon and it does all the things we
want and (too) much more. For those who tried it, for each frame of a
flash movie you can put some ActionScript that is a language that lets
you do many things and handle all the aspects of a "movie" including
having access to all elements and their properties.
In our case we need something smaller, even though being able to program
a Picture In Picture with diname (the name that was chosen for the home
made Control Track) would be sexy ;)
I think having a few commands, named variables and a way to handle the
hooks, hotspots (like in DVDs) and conditional code would be far enough
to handle most of what's needed to have the same basic functionalities
of a DVD. I'll try to make a list of what's needed for each next week
(if nobody starts one before I do)... Goldenear also told me if would
soon publish a document of his ideas on a menu system.
One problem I was thinking of is the hooks... What happens when you skip
to another part of the movie and some new hooks were programmed in
between ? You just can't know easily. So I think hooks have some limits
that we should take care of... I think there is no other solution than
hooking the skip function when you have other hooks programmed, to
enable/disable/handle when a skip/seek is done.
From steve.lhomme at free.fr Sun Aug 15 12:05:59 2004
From: steve.lhomme at free.fr (Steve Lhomme)
Date: Sun, 15 Aug 2004 12:05:59 +0200
Subject: [Matroska-devel] Control Track proposal draft
Message-ID: <411F3587.5020702@free.fr>
Well, it's almost a menu system proposal as it even includes hotspot
handling...
As said previously, we need some control commands, named variables, a
way to handle the hooks and hotspots. The system is finally quite
similar to the one of DVD but hopefully doesn't look so basic, to allow
developer/authors creativity... I hope there is no patent covered in
this field !
Here is a proposal of how it could be done. This is only a draft, it
doesn't handle all the possible cases. Things should be changed/enhanced.
1) Design Model
The Control Track is seen as a codec. It should have access to some
"player" properties on demand: request the value of a "well known" named
variable. And it should also be able to set the value of such a well
known variable too. All "code" will have a timecode and a duration.
Overlapping of code is allowed... Since the timecode in Matroska is not
meant to have overlapping time, when a new Control code is introduced at
a given time, the other codes that should remain should be "restated".
This way it should be easier to cut a file and keep all commands that
are meant to be in the remaining part.
2) Named Variables
The named variable cover most of what is possible to do with the Control
Track. Some can be read-only. Most would have a default value (if not all).
As in Matroska, the type of value inside a named variable depends on the
name. For example, a value could either have an integer type, string
type or binary type (for now it would mostly be useful for Segment UIDs,
or encryption keys). Each type being exclusive. This system is very
similar to the MIBs in SNMP.
In some case it would be useful to get/set a list of values. Like the
like of tracks available for playback or the chapters that are before or
after a given timecode.
Some examples of named variables :
- playback mode (integer - read/write) : stop, pause, play
- timecode scale (integer - read/write) : to change the playback speed,
but is not enough for audio because of the samplerate
- current timecode (integer - read/write) : allow the jump function
- current chapter (integer - write) : allow jump to a chapter
- random number (integer - read) : allow a random number generation
- random number min (integer - read/write)
- random number max (integer - read/write)
- segment UID playing (binary - read/write) : allow loading a new segment
- chapter edition selected (integer - read/write) : change the edition
(how to enable /disable some tracks ? a list should be read/write for that)
The Control Track should be allowed to set custom named variables.
Because of memory limits there could have in some players, it should be
possible to know the max number of available named variables for each type :
- custom max integer variables available (integer - read)
3) Player Hooks
At any given time, the Control Track should be able to asked (not) to be
notified when certain events occur. Like when the pause/play button is
pressed, a new chapter is selected, the skip button is pressed, a named
value has changed.
The code to register a hook could be like this :
The code to unregister the event :
4) Hotspots
We should be able to set the shape and request a hook on it, and unset a
hotspot... Will be covered later...
5) Control Commands
The Control should be able to change the playback properties. That means
setting some named values of the players. So these commands will be
described in the name values.
I can think of 3 basic commands that should cover all we need :
- GetValue : get the value of a named variable
- SetValue : set the value of a named variable
- ValueIsSet : indicate wether a variable is set or not, can be useful
when starting playback to detect if all variables needed by a movie are
available from the player (otherwise you could skip to a location in a
movie indicating the player can't play this movie).
- RegisterEvent : indicate the Control Track request (not) to be
notified when the given event occur.
random num -> a read-only value integer
random min, random max
6) Conditional Statements
A few basic conditional code should be possible. At least we need
if/else. We also need basic mathematical operations on integer
(++,--,==) and an equal operator for strings and binary data.
7) Storing
I think we should be using XML to write the Control Track data. We'll
decide later if EBML will be prefered...
From paul at msn.com Sun Aug 15 18:16:32 2004
From: paul at msn.com (Paul Bryson)
Date: Sun, 15 Aug 2004 11:16:32 -0500
Subject: [Matroska-devel] Re: Re: Control tracks
References: <20040813212050.GA67710@azog.po.cs.msu.su> <411DDC39.5080006@free.fr>
<411E47DC.5060706@free.fr>
Message-ID:
"Steve Lhomme" wrote...
> I was thinking about Flash this afternoon and it does all the things we want
> and (too) much more. For those who tried it, for each frame of a flash movie
> you can put some ActionScript that is a language that lets you do many things
> and handle all the aspects of a "movie" including having access to all
> elements and their properties.
>
> In our case we need something smaller, even though being able to program a
> Picture In Picture with diname (the name that was chosen for the home made
> Control Track) would be sexy ;)
I am sure that SMIL also does everything that we need for this. The only
problem is that no one in the group really knows anything about it.
Atamido
From steve.lhomme at free.fr Sun Aug 15 18:55:04 2004
From: steve.lhomme at free.fr (Steve Lhomme)
Date: Sun, 15 Aug 2004 18:55:04 +0200
Subject: [Matroska-devel] Control Track proposal draft
In-Reply-To: <411F3587.5020702@free.fr>
References: <411F3587.5020702@free.fr>
Message-ID: <411F9568.2060406@free.fr>
Steve Lhomme wrote:
> In some case it would be useful to get/set a list of values. Like the
> like of tracks available for playback or the chapters that are before or
> after a given timecode.
Like the _number_ of tracks...
> Some examples of named variables :
> - playback mode (integer - read/write) : stop, pause, play
> - timecode scale (integer - read/write) : to change the playback speed,
> but is not enough for audio because of the samplerate
> - current timecode (integer - read/write) : allow the jump function
> - current chapter (integer - write) : allow jump to a chapter
The integer is a chapter UID. The chapter can be a hidden one, but not
an disabled one. For this, the Control Track should have a way to
enable/disable a chapter UID (or hide it, or a track UID).
That leads to the list problem. I can think of a few systems :
- something similar to the MIB (IIRC). You know the result is a list,
you need the number of items and you can iterate through that list :
GetNumberOfTracks(), GetNextTrack(), SelectTrack() and for each, you can
read track parameters, using the UID given by GetNextTrack()
- something like properties in SciTE. Where you would have something like :
* track.number = 2
* track.0.enable = false
* track.1.enable = true
* track.0.UID = 1234
* track.1.UID = 4567
etc
- when reading a named value could be return as an XML (or whatever
format) content. For basic variables it would just be something like
(the same could be used to the value).
But for more complex systems if could be :
This XML (could be written in EBML in the file) is my preferred choice.
The drawback is that if you need just one element you will get the whole
thing at once. But the messages are extensible, eg the return elements
could contain more info depending on the player (the language could be
given) and that wouldn't break anything.
I think the MIB way is too complicated (too many calls for nothing). But
the SciTE way could be another good alternative. As XML it's all based
on strings but doesn't have the parsing complexity needed, and you can
only retrieve the info you need. The same system could be used to set
values. But as it's not hierarchical, it wouldn't fit to create
conditional code and mathematical operations.
> The Control Track should be allowed to set custom named variables.
> Because of memory limits there could have in some players, it should be
> possible to know the max number of available named variables for each
> type :
> - custom max integer variables available (integer - read)
This could be used, in the example of Mike, to store the UID of the next
chapter to jump to after the credits.
The custom variable should have fixed named too IMO. Then it's up to the
author/developper to deal with the meaning of the variables, like a
processor register (that's how the DVD system works AFAIK).
> The code to unregister the event :
>
>
OK, this is ugly. Because from the "player" point of view, you just
register the hook to something else. That means you have to call it
whenever this event occurs. So it should be like this instead :
> 4) Hotspots
>
> We should be able to set the shape and request a hook on it, and unset a
> hotspot... Will be covered later...
This one is tricky. First we should have a look at what a DVD permits
and see how we can adapt it. IMO it should be scalable enough to allow
Picture In Picture, ie define the content of each hotspot and be able to
put a static picture or a moving picture. As I don't expect it to be
supported anytime soon, it should just be scalable to that... But we
should be able to create basic rectangles (X/Y position, width/height
all in pixel coordinates in reference to the DisplayPixel values)with an
alpha blending level and with a programmable hook. As for custom
variables, on some systems there could be a max number of hotspots
supported, so the hooks could have names associated to the hotspot
"number" like EVENT_HOTSPOT_1_RELEASE, EVENT_HOTSPOT_2_PRESS,
EVENT_HOTSPOT_3_SELECTED, etc...
A Hotspot should also have localised names that could be rendered if
there is no image (audio-only file) or for blind people.
From jobbb at wanadoo.fr Sun Aug 15 19:49:44 2004
From: jobbb at wanadoo.fr (jobbb)
Date: Sun, 15 Aug 2004 14:49:44 -0300
Subject: [Matroska-devel] how to create a matroska file?
Message-ID: <000801c482f0$41e27aa0$761f0950@computer>
jai le logiciel matroska install? sur mon pc mais je ne sais pas comment l'utiliser, comment cr?er un fichier matroska?
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
From alexander.noe at s2001.tu-chemnitz.de Sun Aug 15 20:37:10 2004
From: alexander.noe at s2001.tu-chemnitz.de (=?UTF-8?B?QWxleGFuZGVyIE5vw6k=?=)
Date: Sun, 15 Aug 2004 20:37:10 +0200
Subject: [Matroska-devel] Control tracks
In-Reply-To: <411DDB13.9070808@free.fr>
References: <20040813212050.GA67710@azog.po.cs.msu.su>
<411DDB13.9070808@free.fr>
Message-ID: <411FAD56.6040700@hrz.tu-chemnitz.de>
Steve Lhomme wrote:
> - before jumping the control track sets a variable to the timecode to
> use for the next episode...
You can't 'jump back' twice that way. There should be a stack.
Alex
From steve.lhomme at free.fr Wed Aug 18 13:19:26 2004
From: steve.lhomme at free.fr (Steve Lhomme)
Date: Wed, 18 Aug 2004 13:19:26 +0200
Subject: [Matroska-devel] IRC problems
Message-ID: <41233B3E.2010005@free.fr>
As we are experiencing repeated problems with the IRC server, I am
connected on Freenode in #mkv...
--
robUx4 on blog
From rom1v at yahoo.fr Thu Aug 19 23:07:23 2004
From: rom1v at yahoo.fr (rom1v)
Date: Thu, 19 Aug 2004 23:07:23 +0200
Subject: [Matroska-devel] matroska bug report
Message-ID: <4125168B.9000004@yahoo.fr>
look this picture... :)
http://membres.lycos.fr/ftp242835074/matroska-bug-report.png
From christophe.paris at free.fr Thu Aug 19 23:26:17 2004
From: christophe.paris at free.fr (Christophe PARIS)
Date: Thu, 19 Aug 2004 23:26:17 +0200
Subject: [Matroska-devel] matroska bug report
In-Reply-To: <4125168B.9000004@yahoo.fr>
References: <4125168B.9000004@yahoo.fr>
Message-ID: <41251AF9.9020000@free.fr>
rom1v wrote:
> look this picture... :)
>
> http://membres.lycos.fr/ftp242835074/matroska-bug-report.png
That's pretty, but I need more information.
Do a :
mkvinfo -v filename.mka > filename.log
Compress and upload filename.log
From christophe.paris at free.fr Fri Aug 20 13:00:04 2004
From: christophe.paris at free.fr (Christophe PARIS)
Date: Fri, 20 Aug 2004 13:00:04 +0200
Subject: [Matroska-devel] matroska bug report
In-Reply-To: <41251AF9.9020000@free.fr>
References: <4125168B.9000004@yahoo.fr> <41251AF9.9020000@free.fr>
Message-ID: <4125D9B4.3020503@free.fr>
Christophe PARIS wrote:
> That's pretty, but I need more information.
> Do a :
>
> mkvinfo -v filename.mka > filename.log
>
> Compress and upload filename.log
rom sent me the log file, it's available here :
http://www.matroska.org/~toff/rom_log.rar
There is some strange timestamps for some frames.
Example at the beginning (look the timecode for Block group 2,3,4) :
|+ Cluster
| + Cluster timecode: 0.000s
| + Block group
| + Block (track number 1, 1 frame(s), timecode 0.000s = 00:00:00.000000000)
| + Frame with size 14
|+ Cluster
| + Cluster timecode: 1.253s
| + Block group
| + Block (track number 1, 8 frame(s), timecode 1.253s = 00:00:01.252987914)
| + Frame with size 14
| + Frame with size 14
| + Frame with size 14
| + Frame with size 14
| + Frame with size 14
| + Frame with size 14
| + Frame with size 14
| + Frame with size 14
| + Block group
| + Block (track number 1, 3 frame(s), timecode 1.253s = 00:00:01.252987914)
| + Frame with size 14
| + Frame with size 14
| + Frame with size 1995
| + Block group
| + Block (track number 1, 1 frame(s), timecode 1.253s = 00:00:01.252987914)
| + Frame with size 9152
| + Block group
| + Block (track number 1, 1 frame(s), timecode 1.358s = 00:00:01.357991208)
| + Frame with size 9061
There is the same problem at the end.
He used foo_flac.dll (codec version 1.1.0) from foobar2k to encode his file.
But say there is no differences with another FLAC 1.1.0 encoder (same md5 checksums)...
Looks like some works for Mosu :>
I've made another ripp this morning, and there is no problem.
I'm gonna try that foo_flac.dll encoder to see if it has something to do with this.
Regards,
Toff
From moritz at bunkus.org Fri Aug 20 14:30:05 2004
From: moritz at bunkus.org (Moritz Bunkus)
Date: Fri, 20 Aug 2004 14:30:05 +0200
Subject: [Matroska-devel] matroska bug report
In-Reply-To: <4125D9B4.3020503@free.fr>
References: <4125168B.9000004@yahoo.fr> <41251AF9.9020000@free.fr>
<4125D9B4.3020503@free.fr>
Message-ID: <20040820123005.GA11558@bunkus.org>
Hi,
> | + Block (track number 1, 8 frame(s), timecode 1.253s =
> | + Block (track number 1, 3 frame(s), timecode 1.253s =
> | + Block (track number 1, 1 frame(s), timecode 1.253s =
Looks like mkvmerge cannot extract the number of samples from those
packets properly. I need the FLAC file, rom. Could you please upload at
least 1MB of the file to my FTP server? The address is mosu.no-ip.com,
username is 'upload', password 'only'.
Thanks.
Mosu
--
If Darl McBride was in charge, he'd probably make marriage
unconstitutional too, since clearly it de-emphasizes the commercial
nature of normal human interaction, and probably is a major impediment
to the commercial growth of prostitution. - Linus Torvalds
From truong335566 at yahoo.com Fri Aug 20 12:18:32 2004
From: truong335566 at yahoo.com (truong nguyen)
Date: Fri, 20 Aug 2004 03:18:32 -0700 (PDT)
Subject: [Matroska-devel] hey
Message-ID: <20040820101832.87525.qmail@web51701.mail.yahoo.com>
i got a chinese movie(mkv file) and wonder if i could burn it to a disc.....when i try to convert mkv to avi it work fine but the subtitle just vanish and i dun understand jack..............so i was wondering if u could help me thanx alot
---------------------------------
Do you Yahoo!?
Win 1 of 4,000 free domain names from Yahoo! Enter now.
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
From chris at matroska.org Mon Aug 23 08:06:41 2004
From: chris at matroska.org (Christian HJ Wiesner)
Date: Mon, 23 Aug 2004 08:06:41 +0200
Subject: [Matroska-devel] Re: Matroska website irregularity
In-Reply-To: <4129452A.9020607@fineonline.com>
References: <4129452A.9020607@fineonline.com>
Message-ID: <41298971.7040500@matroska.org>
Hi Omion,
forwarding to matroska-devel .....
Reed Wilson wrote:
> Chris -
> In the Technical/tags page of the Matroska web site, TagBinary
> says the following:
>
> The values of the Tag if it is binary. Note that this cannot be used
> in the same Tag as TagString or TagInteger.
>
> I see the definition of TagString, but not TagInteger. Nor do I
> see any actual tags that use the TagInteger type, even the ones like
> PART_NUMBER.
> Just thought I'd straighten that out.
>
> - Reed Wilson (Omion from hydrogenaudio and doom9)
>
From steve.lhomme at free.fr Mon Aug 23 09:35:59 2004
From: steve.lhomme at free.fr (Steve Lhomme)
Date: Mon, 23 Aug 2004 09:35:59 +0200
Subject: [Matroska-devel] Re: Matroska website irregularity
In-Reply-To: <41298971.7040500@matroska.org>
References: <4129452A.9020607@fineonline.com> <41298971.7040500@matroska.org>
Message-ID: <41299E5F.2030001@free.fr>
Yes, there used to be such a tag but it has been removed because it's
easier for applications not to care if they have to use TagString or
TagInteger.
TagBinary is used in very special cases where the user wouldn't enter
such a value manually.
Christian HJ Wiesner a ?crit :
> Hi Omion,
>
> forwarding to matroska-devel .....
>
> Reed Wilson wrote:
>
>> Chris -
>> In the Technical/tags page of the Matroska web site, TagBinary
>> says the following:
>>
>> The values of the Tag if it is binary. Note that this cannot be used
>> in the same Tag as TagString or TagInteger.
>>
>> I see the definition of TagString, but not TagInteger. Nor do I
>> see any actual tags that use the TagInteger type, even the ones like
>> PART_NUMBER.
>> Just thought I'd straighten that out.
>>
>> - Reed Wilson (Omion from hydrogenaudio and doom9)
From steve.lhomme at free.fr Thu Aug 26 11:12:16 2004
From: steve.lhomme at free.fr (Steve Lhomme)
Date: Thu, 26 Aug 2004 11:12:16 +0200
Subject: [Matroska-devel] Tags
Message-ID: <412DA970.10606@free.fr>
Hi Age,
As the tag system is finally becoming stable, it would be nice to have
comments from you on the latest version. We have moved the level thing
from the tag names to the EBML level. That makes it more coherent for
inner and outer content tagging.
Now we just need some validation from experts like you :)
There is an audio and a video example on the site covering some possible
cases. We'll probably add another audio example that covers the VOLUME
use (I already have an example in mind).
Some tags that are not sure to be keep or kept in the current forms are
displayed differently in the specs.
Thanx
From steve.lhomme at free.fr Fri Aug 27 12:00:18 2004
From: steve.lhomme at free.fr (Steve Lhomme)
Date: Fri, 27 Aug 2004 12:00:18 +0200
Subject: [Matroska-devel] foo_matroska
Message-ID: <412F0632.1010300@free.fr>
I was looking at the code of foo_matroska and what would need to be
changed for the new tag system.
- ALBUM has to be mapped to a specific TargetType (value 40 which is the
default)
- the ReplayGain info are track and album specific. So they have to be
mapped to the specific TargetType
- TRACKNUMBER is the PART_NUMBER of the TRACK TargetType (value 30)
etc...
- DISCID is not defined in the specs, what is it ?
--
robUx4 on blog
From moritz at bunkus.org Fri Aug 27 12:23:54 2004
From: moritz at bunkus.org (Moritz Bunkus)
Date: Fri, 27 Aug 2004 12:23:54 +0200
Subject: [Matroska-devel] Tags
In-Reply-To: <412DA970.10606@free.fr>
References: <412DA970.10606@free.fr>
Message-ID: <20040827102354.GE21208@bunkus.org>
Hi,
I'm looking at the tag specs & examples at the moment, and there are
some issues.
In the "One file with all DVDs" example
Tags
Tag (about the season)
Targets (no target means the whole content of the file, otherwise
you can put all matching ChapterUIDs)
TargetTypeValue = "40"
TargetType = "SEASON"
This should be 'TargetTypeValue = "50"', right?
Same example, same tag:
SimpleTag (note there is no TOTAL_NUMBER of seasons as the series
is not stopped)
TagName = "PART_NUMBER"
TagString = "1"
SimpleTag (the number of episodes)
TagName = "TOTAL_NUMBER"
TagString = "8"
First, in the specs there is no "TOTAL_NUMBER" element, only a
"TOTAL_PARTS" element. Second, the usage of PART_NUMBER and TOTAL_NUMBER
is either wrong in the example or VERY bogus in the specs. The specs
say:
TOTAL_PARTS UTF-8 Total number of parts of the current
level. (e.g. if TargetType is ALBUM, the total number of tracks of an
audio CD)
PART_NUMBER UTF-8 Number of the current part of the current
level. (e.g. the track number of an audio CD)
Ok, so the use of these two elements is correct if I understand it
correctly. It's just a bit misleading. Maybe you should add the
TargetType = "TRACK" to the PART_NUMBER specs?
---------------------
The "basic" example is ok (easy enough ;)).
---------------------
The rest looks fine, too. I haven't checked the chapter UIDs ;)
>From what I can see the usage of TargetTypeValue is ok. Maybe we should
drop TargetType again as it only confuses matters... Even if it IS
informal, it might be present, and no application reading the tags will
use it because TTV is the one to look for.
(No, mtx 0.9.5 does not contain support for TargetType)
Mosu
--
If Darl McBride was in charge, he'd probably make marriage
unconstitutional too, since clearly it de-emphasizes the commercial
nature of normal human interaction, and probably is a major impediment
to the commercial growth of prostitution. - Linus Torvalds
From steve.lhomme at free.fr Fri Aug 27 12:51:16 2004
From: steve.lhomme at free.fr (Steve Lhomme)
Date: Fri, 27 Aug 2004 12:51:16 +0200
Subject: [Matroska-devel] Tags
In-Reply-To: <20040827102354.GE21208@bunkus.org>
References: <412DA970.10606@free.fr> <20040827102354.GE21208@bunkus.org>
Message-ID: <412F1224.1040608@free.fr>
Moritz Bunkus a ?crit :
> Hi,
>
> I'm looking at the tag specs & examples at the moment, and there are
> some issues.
>
> In the "One file with all DVDs" example
>
> Tags
> Tag (about the season)
> Targets (no target means the whole content of the file, otherwise
> you can put all matching ChapterUIDs)
> TargetTypeValue = "40"
> TargetType = "SEASON"
>
> This should be 'TargetTypeValue = "50"', right?
fixing
> Same example, same tag:
>
> SimpleTag (note there is no TOTAL_NUMBER of seasons as the series
> is not stopped)
> TagName = "PART_NUMBER"
> TagString = "1"
> SimpleTag (the number of episodes)
> TagName = "TOTAL_NUMBER"
> TagString = "8"
>
> First, in the specs there is no "TOTAL_NUMBER" element, only a
> "TOTAL_PARTS" element. Second, the usage of PART_NUMBER and TOTAL_NUMBER
fixing
> is either wrong in the example or VERY bogus in the specs. The specs
> say:
>
> TOTAL_PARTS UTF-8 Total number of parts of the current
> level. (e.g. if TargetType is ALBUM, the total number of tracks of an
> audio CD)
>
> PART_NUMBER UTF-8 Number of the current part of the current
> level. (e.g. the track number of an audio CD)
>
> Ok, so the use of these two elements is correct if I understand it
> correctly. It's just a bit misleading. Maybe you should add the
> TargetType = "TRACK" to the PART_NUMBER specs?
Yup. I'll see if I can be more specific about the relation between
TOTAL_PARTS, PART_NUMBER and TargetTypeValue.
> The rest looks fine, too. I haven't checked the chapter UIDs ;)
>
>>From what I can see the usage of TargetTypeValue is ok. Maybe we should
> drop TargetType again as it only confuses matters... Even if it IS
> informal, it might be present, and no application reading the tags will
> use it because TTV is the one to look for.
It should be used to display the kind of element it is in a UI. For
example in a video tagger value 40 can be a MOVIE or an EPISODE, or
level 30 can be a TRACK or a CHAPTER. And it would be nice to know. The
other alternative would be to have a SubValue with the Value to get this
precision.
--
robUx4 on blog
From steve.lhomme at free.fr Sat Aug 28 23:36:29 2004
From: steve.lhomme at free.fr (Steve Lhomme)
Date: Sat, 28 Aug 2004 23:36:29 +0200
Subject: [Matroska-devel] Nested Tags ?
Message-ID: <4130FADD.1070302@free.fr>
night ;)
* Goldenear has quit (Quit: Leaving)
BTW, what you want can be achieved with chapters
too late...
Yes, having a movie in a movie is possible with Chapters. For example
that Roger Rabbit thing (even though I don't think it can be considered
as a movie in a movie).
The chapter would be like :
Chapter 123 (the movie)
--Chapter 1 (part #1 that contains the little movie)
--Chapter 10 (scene 1 of that little movie)
--Chapter 11 (scene 1 of that little movie)
--Chapter 12 (scene 1 of that little movie)
--Chapter 2 (part #2 of the movie)
--Chapter 3 (part #3 of the movie)
In the tags you can target Chapter 1 and say it's a CHAPTER of the MOVIE.
Then you can use the same target Chapter 1 and say it's a MOVIE. Then
you can tag the scenes as CHAPTER if you want. And you actually have a
CHAPTER inside a CHAPTER.
It's the king of little nice things chapters can be used for.
Now for a UI to display that... That's another pb. But at least a DB
could handle these info without any pb.
--
robUx4 on blog
From steve.lhomme at free.fr Sun Aug 29 18:03:33 2004
From: steve.lhomme at free.fr (Steve Lhomme)
Date: Sun, 29 Aug 2004 18:03:33 +0200
Subject: [Matroska-devel] Nested Tags ?
In-Reply-To: <4130FADD.1070302@free.fr>
References: <4130FADD.1070302@free.fr>
Message-ID: <4131FE55.6010701@free.fr>
Well, Animatrix would be a much better example (watched that one in MKV
;). We could add it to the video examples, so that everyone is aware of
the possibility.
Steve Lhomme a ?crit :
> night ;)
> * Goldenear has quit (Quit: Leaving)
> BTW, what you want can be achieved with chapters
> too late...
>
> Yes, having a movie in a movie is possible with Chapters. For example
> that Roger Rabbit thing (even though I don't think it can be considered
> as a movie in a movie).
>
> The chapter would be like :
>
> Chapter 123 (the movie)
> --Chapter 1 (part #1 that contains the little movie)
> --Chapter 10 (scene 1 of that little movie)
> --Chapter 11 (scene 1 of that little movie)
> --Chapter 12 (scene 1 of that little movie)
> --Chapter 2 (part #2 of the movie)
> --Chapter 3 (part #3 of the movie)
>
> In the tags you can target Chapter 1 and say it's a CHAPTER of the MOVIE.
> Then you can use the same target Chapter 1 and say it's a MOVIE. Then
> you can tag the scenes as CHAPTER if you want. And you actually have a
> CHAPTER inside a CHAPTER.
>
> It's the king of little nice things chapters can be used for.
>
> Now for a UI to display that... That's another pb. But at least a DB
> could handle these info without any pb.
>
--
robUx4 on blog
From steve.lhomme at free.fr Mon Aug 30 11:02:54 2004
From: steve.lhomme at free.fr (Steve Lhomme)
Date: Mon, 30 Aug 2004 11:02:54 +0200
Subject: [Matroska-devel] EBML improvements
Message-ID: <4132ED3E.7070508@free.fr>
I've been thinking for a while about how to add native support for
elements that require a few bits. Especially on how to save space for
the 1 bit flags we use in Matroska.
I've been thinking about an EbmlBitfield, but then that would mean that
each bit in the field need to have a separate definition and I didn't
really like it.
Another solution that I find better is the use of an EbmlFlag. The type
would be interpreted like this :
- if the element is set with a size of 0, the value is the opposite of
the default value
- if the element is set with a value, the value is either 0 (false) or
whatever (true)
- if the element is not set, the value is assumed to be the default if
the element is mandatory (and all flags should be mandatory)
So, it means that files previously written will always be compatible.
But that you can avoid setting the value to save space. It won't be a
big difference for Matroska, but it does for EBML in general.
I think the changes in the existing parsers are very minimal.
Any comment ?
--
robUx4 on blog
From moritz at bunkus.org Mon Aug 30 11:12:05 2004
From: moritz at bunkus.org (Moritz Bunkus)
Date: Mon, 30 Aug 2004 11:12:05 +0200
Subject: [Matroska-devel] EBML improvements
In-Reply-To: <4132ED3E.7070508@free.fr>
References: <4132ED3E.7070508@free.fr>
Message-ID: <20040830091205.GA25955@bunkus.org>
Hi,
> Another solution that I find better is the use of an EbmlFlag. The type
> would be interpreted like this :
> - if the element is set with a size of 0, the value is the opposite of
> the default value
Let's hope existing parsers can cope with 0 sized elements.
Mosu
--
If Darl McBride was in charge, he'd probably make marriage
unconstitutional too, since clearly it de-emphasizes the commercial
nature of normal human interaction, and probably is a major impediment
to the commercial growth of prostitution. - Linus Torvalds
From steve.lhomme at free.fr Mon Aug 30 11:18:52 2004
From: steve.lhomme at free.fr (Steve Lhomme)
Date: Mon, 30 Aug 2004 11:18:52 +0200
Subject: [Matroska-devel] EBML improvements
In-Reply-To: <20040830091205.GA25955@bunkus.org>
References: <4132ED3E.7070508@free.fr> <20040830091205.GA25955@bunkus.org>
Message-ID: <4132F0FC.5030509@free.fr>
Moritz Bunkus a ?crit :
> Hi,
>
>
>>Another solution that I find better is the use of an EbmlFlag. The type
>>would be interpreted like this :
>>- if the element is set with a size of 0, the value is the opposite of
>>the default value
>
>
> Let's hope existing parsers can cope with 0 sized elements.
The specs clearly say that the size is always between 0 and something.
Haali had the problem in his parser and fixed that.
libebml can write 0 sized EbmlVoid. So it better be supported !
--
robUx4 on blog
From moritz at bunkus.org Mon Aug 30 11:23:41 2004
From: moritz at bunkus.org (Moritz Bunkus)
Date: Mon, 30 Aug 2004 11:23:41 +0200
Subject: [Matroska-devel] EBML improvements
In-Reply-To: <4132F0FC.5030509@free.fr>
References: <4132ED3E.7070508@free.fr> <20040830091205.GA25955@bunkus.org>
<4132F0FC.5030509@free.fr>
Message-ID: <20040830092341.GB25955@bunkus.org>
Hi,
> The specs clearly say that the size is always between 0 and something.
:)
Ok that would work. Of course it "only" saves one byte compared to an
UInteger, but that's of course better than nothing ;) Especially for
cases in which flags are used often.
Mosu
--
If Darl McBride was in charge, he'd probably make marriage
unconstitutional too, since clearly it de-emphasizes the commercial
nature of normal human interaction, and probably is a major impediment
to the commercial growth of prostitution. - Linus Torvalds
From steve.lhomme at free.fr Mon Aug 30 11:52:56 2004
From: steve.lhomme at free.fr (Steve Lhomme)
Date: Mon, 30 Aug 2004 11:52:56 +0200
Subject: [Matroska-devel] EBML improvements
In-Reply-To: <20040830092341.GB25955@bunkus.org>
References: <4132ED3E.7070508@free.fr>
<20040830091205.GA25955@bunkus.org> <4132F0FC.5030509@free.fr>
<20040830092341.GB25955@bunkus.org>
Message-ID: <4132F8F8.402@free.fr>
Moritz Bunkus a ?crit :
> Hi,
>
>
>>The specs clearly say that the size is always between 0 and something.
>
>
> :)
>
> Ok that would work. Of course it "only" saves one byte compared to an
> UInteger, but that's of course better than nothing ;) Especially for
> cases in which flags are used often.
Well, after talking on IRC, it seems that the size=0 should be
generalized. It would mean that the element has the default value.
Otherwise some elements that are not mandatory should never have a
default value.
And that change (addition, actually) would make a new EbmlFlag type useless.
--
robUx4 on blog
From steve.lhomme at free.fr Mon Aug 30 13:44:38 2004
From: steve.lhomme at free.fr (Steve Lhomme)
Date: Mon, 30 Aug 2004 13:44:38 +0200
Subject: [Matroska-devel] EBML improvements
In-Reply-To: <4132F8F8.402@free.fr>
References: <4132ED3E.7070508@free.fr> <20040830091205.GA25955@bunkus.org> <4132F0FC.5030509@free.fr> <20040830092341.GB25955@bunkus.org>
<4132F8F8.402@free.fr>
Message-ID: <41331326.4090600@free.fr>
Steve Lhomme a ?crit :
> Moritz Bunkus a ?crit :
>
>> Hi,
>>
>>
>>> The specs clearly say that the size is always between 0 and something.
>>
>>
>>
>> :)
>>
>> Ok that would work. Of course it "only" saves one byte compared to an
>> UInteger, but that's of course better than nothing ;) Especially for
>> cases in which flags are used often.
>
>
> Well, after talking on IRC, it seems that the size=0 should be
> generalized. It would mean that the element has the default value.
> Otherwise some elements that are not mandatory should never have a
> default value.
>
> And that change (addition, actually) would make a new EbmlFlag type
> useless.
Mh, this guy (me) is telling bullshit.
Actually what I proposed for flags was the opposite. If you don't put
data it's the _opposite_ of the default value. So the change should be
one _or_ the other. It think that it's better to go the general way (ie
not adding an EbmlFlag).