sbITranscodingConfigurator.idl
Go to the documentation of this file.
1 /*
2  *=BEGIN SONGBIRD GPL
3  *
4  * This file is part of the Songbird web player.
5  *
6  * Copyright(c) 2005-2009 POTI, Inc.
7  * http://www.songbirdnest.com
8  *
9  * This file may be licensed under the terms of of the
10  * GNU General Public License Version 2 (the ``GPL'').
11  *
12  * Software distributed under the License is distributed
13  * on an ``AS IS'' basis, WITHOUT WARRANTY OF ANY KIND, either
14  * express or implied. See the GPL for the specific language
15  * governing rights and limitations.
16  *
17  * You should have received a copy of the GPL along with this
18  * program. If not, go to http://www.gnu.org/licenses/gpl.html
19  * or write to the Free Software Foundation, Inc.,
20  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
21  *
22  *=END SONGBIRD GPL
23  */
24 
25 
32 #include "nsISupports.idl"
33 
34 interface nsIArray;
35 interface nsIPropertyBag;
36 interface nsIURI;
37 interface sbIDevice;
38 interface sbIMediaFormat;
39 interface sbIMediaFormatVideo;
40 interface sbIMediaFormatAudio;
41 interface sbITranscodeError;
42 
49 [scriptable, uuid(a09e88f5-e9f8-4341-951d-7f5efda3a6d7)]
51 {
55  readonly attribute nsIArray availableProfiles;
56 
60  attribute nsIURI inputUri;
61 
67 
72  readonly attribute sbITranscodeError lastError;
73 
86  void determineOutputType();
87 
96  readonly attribute AString muxer;
97 
105  readonly attribute boolean useMuxer;
106 
115  readonly attribute ACString fileExtension;
116 
125  readonly attribute AString videoEncoder;
126 
134  readonly attribute boolean useVideoEncoder;
135 
144  readonly attribute AString audioEncoder;
145 
153  readonly attribute boolean useAudioEncoder;
154 
165  void configurate();
166 
176  readonly attribute sbIMediaFormatVideo videoFormat;
177 
187  readonly attribute sbIMediaFormatAudio audioFormat;
188 
199  readonly attribute nsIPropertyBag videoEncoderProperties;
200 
211  readonly attribute nsIPropertyBag audioEncoderProperties;
212 };
213 
217 [scriptable, uuid(c3a5828e-3b2d-48fc-bf0c-1f07a92de617)]
219 {
228  attribute sbIDevice device;
229 };
readonly attribute nsIArray availableProfiles
readonly attribute AString audioEncoder
The audio encoder to use. The name is specific to the transcoder (for example, this may be a gstreame...
readonly attribute ACString fileExtension
The file extension to use for transcoded files. This may depend on the muxer or the used codecs...
readonly attribute AString videoEncoder
The video encoder to use. The name is specific to the transcoder (for example, this may be a gstreame...
readonly attribute sbIMediaFormatAudio audioFormat
The basic audio format for data that is not specific to a particular codec.
readonly attribute boolean useVideoEncoder
Whether a video encoder is in use. If this is true, the videoEncoder attribute must be non-empty...
attribute sbIDevice device
Set the device that we get the capabilities from, using the capabilities of the device this function ...
var uuid
void determineOutputType()
Determine the trancode destination format to use, based on the target device and desired output quali...
void configurate()
Determine the transcode settings to use based on the input given. Both the device and the input forma...
function d(s)
readonly attribute sbIMediaFormatVideo videoFormat
The basic video format for data that is not specific to a particular codec.
Base interface for all Transcoding Configurators. This interface should be implemented by any Configu...
readonly attribute sbITranscodeError lastError
readonly attribute nsIPropertyBag audioEncoderProperties
With the input given, return the properties to set on the encoder to encode this format. This is used to e.g. select a bitrate for the audio encoder.
readonly attribute AString muxer
The muxer to use. The name is specific to the transcoder (for example, this may be a gstreamer elemen...
attribute sbIMediaFormat inputFormat
The input format to use when configuring the transcode profile.
readonly attribute boolean useMuxer
Whether a muxer is in use. e.g. for a bare FLAC audio file it won't be.
readonly attribute nsIPropertyBag videoEncoderProperties
With the input given, return the properties to set on the encoder to encode this format. This is used to e.g. select a bitrate for the video encoder.
readonly attribute boolean useAudioEncoder
Whether a audio encoder is in use. If this is true, the audioEncoder attribute may be empty; indicati...