Re: Presets and profiles


The idea to develop highlevel gstreamer libraries is really nice!

Some thoughts about your proposal.

First I see one problem, or rather a limitation of your DeviceProfile.

Why a profile should necessarily be associated with a device ?

I'm thinking about a profile library that replaces the current horrible,
gnome-media profile "framework".
The profile system may be used by any gnome application (Sound-Juicer,
...), but may also define profiles that did not correspond to any
specific device.
Who uses flac for a portable player, or even a TV ?
The fact is that people may want to be able to create a any gstreamer
supported format profile.

Now, the DeviceProfile is not a bad idea at all. It is definitely a
great idea!
We can imagine to build it on top of the general profile library.
Strictly speaking an DeviceProfile is a profile with some limitations
(the one from the device).

We can also put device information into profile, merging GeneralProfile
with DeviceProfile.
Like: This profile can be used for: iThing, Nokia, ...

What do you think ?

Second, the presets.
Preset is cool, but seems limited to just one element. (Did I
misunderstood something ?)
The problem is that in many cases your pipeline contains many elements
and also caps.

A simple example is this mp3 encoding :

... ! rate=44100, channels=2 ! audioconvert ! lame mode=4 vbr-quality=7
! xingmux ! id3v2mux ! ...

Where xingmux is used to add xingheader to the vbr file, and the
id3v2mux used to pass tags to the output file.

Therefore, how to configure all of them at the same time ?

Then :)

Let me explain how I imagine things from now.

We need three things :

* A Profile Library (definitely with a device specific support!)
* A transcoding library
* A set of UI components and application

The profile library is used to create, store, edit, profile (low level).

The transcoding library is used to transcode files between differents
It uses directly profiles to configure the transcoding operation.
The main problem is to generate the pipeline from the profile desciption.

The set of graphical component is designed for integration, simlilarly
to the current gnome-media-profile.
There are predefined components, each gnome application can directly
include it.

A profile manager can also be part of the graphical components. As
standalone/integrated application.

What I can offer:
I'm currently a developper of gnac, an audio converter:

What we have :
* a profile manager: really simpler than the gnome-media one.

The main problem now is that the UI of the manager is not automatically
You cannot, for example, add a new format like the celt codec without
writing some code.
The goal is that you can pass a "format description" and then the UI is
automatically generated.
It also needs many code cleaning :)

* a C transcoding library
It currently supports, audio transcoding, video transcoding, external
subtitle integration (incrustation, or inclusion if the output format
supports it).

I think we can adapt this library to fit the new needs.
The main point is to define what will be the interface of the library.

I hope this contribution will help to build a new shiny set of highlevel
components to gstreamer!


Christian Fredrik Kalager Schaller a écrit :
> Hi everyone,
> Daniel G. Taylor and myself have been working on defining a
> specification for how we want to handle things like profiles and presets
> for transcoding to various devices. The initial usecase is for devices
> you do not have attached to your computer, but we love to get feedback
> on how we might want to adjust the current specifications to work better
> for that usecase too.
> There are two documents so far, the first one discussing element level
> presets using the GStreamer preset interface:
> The second is a device level description of the Device in XML:
> Both documents will probably see quite some changes still, so please
> feel free to give feedback and suggestions.
> We do hope that this stuff ends up being used beyond Arista and
> Transmageddon once it matures a bit, for instance Sound Juicer could use
> the Audio information in here for example.
> Christian
> _______________________________________________
> gnome-multimedia mailing list
> gnome-multimedia gnome org

[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]