Zeeshan Ali (Khattak) [Fri, 17 Apr 2009 15:02:30 +0000 (18:02 +0300)]
Beginning of a preferences UI.
Zeeshan Ali (Khattak) [Fri, 17 Apr 2009 13:40:24 +0000 (16:40 +0300)]
Put Configuration into a separate static library.
So that apps in other directories can easily access/link to it.
Zeeshan Ali (Khattak) [Fri, 17 Apr 2009 10:52:16 +0000 (13:52 +0300)]
Depend on Gtk+ if UI build is not disabled.
Zeeshan Ali (Khattak) [Thu, 16 Apr 2009 15:27:52 +0000 (18:27 +0300)]
GConf path prefix shouldn't be a public prop.
Zeeshan Ali (Khattak) [Thu, 16 Apr 2009 15:25:58 +0000 (18:25 +0300)]
Configuration should be part of public API.
Zeeshan Ali (Khattak) [Thu, 16 Apr 2009 14:30:48 +0000 (17:30 +0300)]
Put user configuration access into a separate object.
Zeeshan Ali (Khattak) [Sun, 19 Apr 2009 13:59:28 +0000 (16:59 +0300)]
Provide a DOAP file.
Zeeshan Ali (Khattak) [Tue, 14 Apr 2009 12:43:35 +0000 (12:43 +0000)]
No need to require gstreamer trunk.
Everything except for transcoding will work fine with latest release
so no need to require trunk.
svn path=/trunk/; revision=786
Zeeshan Ali (Khattak) [Wed, 8 Apr 2009 16:00:35 +0000 (16:00 +0000)]
Require vala trunk (0.7.1).
svn path=/trunk/; revision=785
Zeeshan Ali (Khattak) [Wed, 8 Apr 2009 16:00:31 +0000 (16:00 +0000)]
Update build system for latest vala.
The basic change is that vala doesn't generate header files now unless
told to do so explicitly.
svn path=/trunk/; revision=784
Zeeshan Ali (Khattak) [Wed, 1 Apr 2009 21:56:46 +0000 (21:56 +0000)]
Add audiorate element to audio transcoding pipeline.
Thanks Edward Hervey for the advice.
svn path=/trunk/; revision=783
Zeeshan Ali (Khattak) [Wed, 1 Apr 2009 21:56:38 +0000 (21:56 +0000)]
Put the videorate element after videoscale.
Thanks Edward Hervey for pointing it out.
svn path=/trunk/; revision=782
Zeeshan Ali (Khattak) [Wed, 1 Apr 2009 21:56:29 +0000 (21:56 +0000)]
Remove the FIXME comment from MediaItem.
svn path=/trunk/; revision=781
Zeeshan Ali (Khattak) [Wed, 1 Apr 2009 21:56:19 +0000 (21:56 +0000)]
Just set all the desired caps at the end of the pipeline.
svn path=/trunk/; revision=780
Zeeshan Ali (Khattak) [Wed, 1 Apr 2009 21:56:13 +0000 (21:56 +0000)]
The aspect-ratio needs to be 1:1 once video has been scaled.
svn path=/trunk/; revision=779
Zeeshan Ali (Khattak) [Wed, 1 Apr 2009 21:56:08 +0000 (21:56 +0000)]
Use ffenc_mpeg2video instead of mpeg2video.
svn path=/trunk/; revision=778
Zeeshan Ali (Khattak) [Wed, 1 Apr 2009 21:56:03 +0000 (21:56 +0000)]
Make sure mpeg ts transcoder outputs 30 fps.
svn path=/trunk/; revision=777
Zeeshan Ali (Khattak) [Wed, 1 Apr 2009 21:55:58 +0000 (21:55 +0000)]
mpeg ts transcoder provides NTSC (30 fps).
svn path=/trunk/; revision=776
Zeeshan Ali (Khattak) [Tue, 31 Mar 2009 12:38:41 +0000 (12:38 +0000)]
mp3 and l16 transcoder support audio upnp class rather than music.
Patch by Jens Georg.
svn path=/trunk/; revision=775
Zeeshan Ali (Khattak) [Sat, 28 Mar 2009 00:46:45 +0000 (00:46 +0000)]
Some basic documentation for recently added classes.
svn path=/trunk/; revision=774
Zeeshan Ali (Khattak) [Sat, 28 Mar 2009 00:46:40 +0000 (00:46 +0000)]
MP3Trancoder specifies the bitrate in Resource.
svn path=/trunk/; revision=773
Zeeshan Ali (Khattak) [Sat, 28 Mar 2009 00:46:36 +0000 (00:46 +0000)]
mpeg2enc wants us to tell it the aspect ratio.
svn path=/trunk/; revision=772
Zeeshan Ali (Khattak) [Sat, 28 Mar 2009 00:46:32 +0000 (00:46 +0000)]
TranscodeManager keeps a single list of transcoders.
svn path=/trunk/; revision=771
Zeeshan Ali (Khattak) [Sat, 28 Mar 2009 00:46:27 +0000 (00:46 +0000)]
TranscodeManager keeps list of transcoders.
svn path=/trunk/; revision=770
Zeeshan Ali (Khattak) [Sat, 28 Mar 2009 00:46:23 +0000 (00:46 +0000)]
Transcoder tells the primary UPnP class it is meant for.
svn path=/trunk/; revision=769
Zeeshan Ali (Khattak) [Sat, 28 Mar 2009 00:46:19 +0000 (00:46 +0000)]
Provide video transcoding for audio/music items as well.
svn path=/trunk/; revision=768
Zeeshan Ali (Khattak) [Sat, 28 Mar 2009 00:46:15 +0000 (00:46 +0000)]
Provide audio transcoding for videos as well.
svn path=/trunk/; revision=767
Zeeshan Ali (Khattak) [Sat, 28 Mar 2009 00:46:10 +0000 (00:46 +0000)]
Refactor TranscodeManager.add_resources().
svn path=/trunk/; revision=766
Zeeshan Ali (Khattak) [Sat, 28 Mar 2009 00:46:06 +0000 (00:46 +0000)]
MP3Transcoder (re-)uses L16Transcoder's encoder.
svn path=/trunk/; revision=765
Zeeshan Ali (Khattak) [Sat, 28 Mar 2009 00:46:02 +0000 (00:46 +0000)]
More specific naming for L16Transcoder's encoder bin.
svn path=/trunk/; revision=764
Zeeshan Ali (Khattak) [Sat, 28 Mar 2009 00:45:58 +0000 (00:45 +0000)]
Correct a copy&paste mistake.
svn path=/trunk/; revision=763
Zeeshan Ali (Khattak) [Sat, 28 Mar 2009 00:45:53 +0000 (00:45 +0000)]
L16Transcoder supports both endianness'es.
svn path=/trunk/; revision=762
Zeeshan Ali (Khattak) [Sat, 28 Mar 2009 00:45:48 +0000 (00:45 +0000)]
Turn TranscoderBin into GstUtils.
TranscoderBin was only having two static utility functions that could
be used by non-transcoder-bin classes as well and we can move other
gst-related functions here in future.
svn path=/trunk/; revision=761
Zeeshan Ali (Khattak) [Sat, 28 Mar 2009 00:45:43 +0000 (00:45 +0000)]
TranscoderBin.post_error is now static.
svn path=/trunk/; revision=760
Zeeshan Ali (Khattak) [Sat, 28 Mar 2009 00:45:37 +0000 (00:45 +0000)]
create_transcoder is now part of relevant Transcoder.
Move static create_transcoder method from TranscoderBin implementation
to relevant Transcoder classes as non-static method.
svn path=/trunk/; revision=759
Zeeshan Ali (Khattak) [Sat, 28 Mar 2009 00:45:32 +0000 (00:45 +0000)]
Put gst transcoder bins into separate files.
svn path=/trunk/; revision=758
Zeeshan Ali (Khattak) [Sat, 28 Mar 2009 00:45:26 +0000 (00:45 +0000)]
MP3TrancoderBin doesn't need to keep layer info.
svn path=/trunk/; revision=757
Zeeshan Ali (Khattak) [Sat, 28 Mar 2009 00:45:20 +0000 (00:45 +0000)]
MP3Transcoder doesn't need to proxy it's Bin's methods.
MP2TStrancoder can directly uses MP3TranscoderBin's methods.
svn path=/trunk/; revision=756
Zeeshan Ali (Khattak) [Sat, 28 Mar 2009 00:45:16 +0000 (00:45 +0000)]
Re-use const defined already to construct mime_type.
svn path=/trunk/; revision=755
Zeeshan Ali (Khattak) [Sat, 28 Mar 2009 00:45:11 +0000 (00:45 +0000)]
Move add_resources to base Transcoder class.
svn path=/trunk/; revision=754
Zeeshan Ali (Khattak) [Sat, 28 Mar 2009 00:45:06 +0000 (00:45 +0000)]
Remove unneeded args of Transcoder.create_resource().
Transcoder.create_resource() doesn't need to be passed 'mime_type' and
'dlna_profile' arguments anymore.
svn path=/trunk/; revision=753
Zeeshan Ali (Khattak) [Sat, 28 Mar 2009 00:45:01 +0000 (00:45 +0000)]
Implementations override Transcoder.create_resource.
svn path=/trunk/; revision=752
Zeeshan Ali (Khattak) [Sat, 28 Mar 2009 00:44:56 +0000 (00:44 +0000)]
Move create_resource() from TranscodeManager to Transcoder.
svn path=/trunk/; revision=751
Zeeshan Ali (Khattak) [Sat, 28 Mar 2009 00:44:50 +0000 (00:44 +0000)]
No need to mark TranscodeManager's methods 'internal'.
The public methods of an internal class are automatically internal.
svn path=/trunk/; revision=750
Zeeshan Ali (Khattak) [Sat, 28 Mar 2009 00:44:46 +0000 (00:44 +0000)]
MP2TSTranscoder supports both HD and SD.
svn path=/trunk/; revision=749
Zeeshan Ali (Khattak) [Sat, 28 Mar 2009 00:44:40 +0000 (00:44 +0000)]
Rename MP3Profile to MP3Layer.
svn path=/trunk/; revision=748
Zeeshan Ali (Khattak) [Sat, 28 Mar 2009 00:44:34 +0000 (00:44 +0000)]
Use dlna profile as transcoding target.
svn path=/trunk/; revision=747
Zeeshan Ali (Khattak) [Sat, 28 Mar 2009 00:44:29 +0000 (00:44 +0000)]
Require mainline gupnp-av.
svn path=/trunk/; revision=746
Zeeshan Ali (Khattak) [Sat, 28 Mar 2009 00:44:24 +0000 (00:44 +0000)]
No need to lie about DLNA profile anymore.
svn path=/trunk/; revision=745
Zeeshan Ali (Khattak) [Sat, 28 Mar 2009 00:44:19 +0000 (00:44 +0000)]
HTTServer and TranscodeManager are now 'internal'.
svn path=/trunk/; revision=744
Zeeshan Ali (Khattak) [Sat, 28 Mar 2009 00:44:13 +0000 (00:44 +0000)]
TranscodeManager provides Transcoder rather than transcoding source.
svn path=/trunk/; revision=743
Zeeshan Ali (Khattak) [Sat, 28 Mar 2009 00:44:07 +0000 (00:44 +0000)]
can_handle() can now also move to base Transcoder class.
svn path=/trunk/; revision=742
Zeeshan Ali (Khattak) [Sat, 28 Mar 2009 00:44:02 +0000 (00:44 +0000)]
'mime_type' and 'dlna_profile' are now props of base Transcoder.
svn path=/trunk/; revision=741
Zeeshan Ali (Khattak) [Sat, 28 Mar 2009 00:43:56 +0000 (00:43 +0000)]
Separate Transcoder and TranscoderBin classes.
* Divide Transcoder into two classes:
- public (internal) Transcoder
- The actual transcoder gstreamer bin.
svn path=/trunk/; revision=740
Zeeshan Ali (Khattak) [Sat, 28 Mar 2009 00:43:50 +0000 (00:43 +0000)]
Bump gstreamer requirement to latest git mainline (0.10.22.1).
svn path=/trunk/; revision=739
Zeeshan Ali (Khattak) [Sun, 22 Mar 2009 20:49:01 +0000 (20:49 +0000)]
Export duration for music and video items from Tracker.
Patch from Henrique Ferreiro García <henrique.ferreiro@gmail.com>.
svn path=/trunk/; revision=738
Zeeshan Ali (Khattak) [Sun, 22 Mar 2009 20:48:56 +0000 (20:48 +0000)]
Fix a typo that messed-up the Music titles.
Thanks to Henrique Ferreiro García <henrique.ferreiro@gmail.com> for
pointing it out.
svn path=/trunk/; revision=737
Zeeshan Ali (Khattak) [Sat, 21 Mar 2009 21:24:58 +0000 (21:24 +0000)]
Fix the typo and actually require libsoup >= 2.26.0.
svn path=/trunk/; revision=736
Zeeshan Ali (Khattak) [Sat, 21 Mar 2009 13:58:10 +0000 (13:58 +0000)]
Report the (hopefully) correct DLNA profile for mpeg 2 ts.
svn path=/trunk/; revision=735
Zeeshan Ali (Khattak) [Sat, 21 Mar 2009 13:58:05 +0000 (13:58 +0000)]
Scale the video to High Definition.
svn path=/trunk/; revision=734
Zeeshan Ali (Khattak) [Sat, 21 Mar 2009 13:58:00 +0000 (13:58 +0000)]
More information hiding by Transcoder classes.
No need to expose mimetype and dlna_profile etc but provide a can_handle()
method that reports wether the mime_type in question could be handled by
this transcoder.
svn path=/trunk/; revision=733
Zeeshan Ali (Khattak) [Sat, 21 Mar 2009 13:57:55 +0000 (13:57 +0000)]
Rename add_resource to add_resources.
svn path=/trunk/; revision=732
Zeeshan Ali (Khattak) [Sat, 21 Mar 2009 13:57:50 +0000 (13:57 +0000)]
Transcoder classes themselves add their resource.
svn path=/trunk/; revision=731
Zeeshan Ali (Khattak) [Sat, 21 Mar 2009 13:57:45 +0000 (13:57 +0000)]
List the L16 resource before the MP3 one.
svn path=/trunk/; revision=730
Zeeshan Ali (Khattak) [Sat, 21 Mar 2009 13:57:40 +0000 (13:57 +0000)]
No need for encoders to sync state with parent anymore.
svn path=/trunk/; revision=729
Zeeshan Ali (Khattak) [Sat, 21 Mar 2009 13:57:35 +0000 (13:57 +0000)]
Put the encoders in the bin at startup.
svn path=/trunk/; revision=728
Zeeshan Ali (Khattak) [Sat, 21 Mar 2009 13:57:30 +0000 (13:57 +0000)]
Just use Pad.can_link to check pad compatibility.
svn path=/trunk/; revision=727
Zeeshan Ali (Khattak) [Sat, 21 Mar 2009 13:57:25 +0000 (13:57 +0000)]
Add more metadata to "audio/L16" transcoding resource.
svn path=/trunk/; revision=726
Zeeshan Ali (Khattak) [Sat, 21 Mar 2009 13:57:20 +0000 (13:57 +0000)]
Replace add_resource with create_resource.
This change doesn't make sense on it's own but is only needed for the
next set of changes.
svn path=/trunk/; revision=725
Zeeshan Ali (Khattak) [Sat, 21 Mar 2009 13:57:15 +0000 (13:57 +0000)]
Refactor TranscodeManager.add_resources a bit more.
svn path=/trunk/; revision=724
Zeeshan Ali (Khattak) [Sat, 21 Mar 2009 13:57:09 +0000 (13:57 +0000)]
Add transcoder for "audio/L16" (LPCM in DLNA terms).
svn path=/trunk/; revision=723
Zeeshan Ali (Khattak) [Sat, 21 Mar 2009 13:57:04 +0000 (13:57 +0000)]
Refactor TranscodeManager.add_resources().
svn path=/trunk/; revision=722
Zeeshan Ali (Khattak) [Sat, 21 Mar 2009 13:56:59 +0000 (13:56 +0000)]
Use g_content_type_is_a to compare mimetypes.
svn path=/trunk/; revision=721
Zeeshan Ali (Khattak) [Sat, 21 Mar 2009 13:56:55 +0000 (13:56 +0000)]
Generalize gst element creation in base transcoder.
svn path=/trunk/; revision=720
Zeeshan Ali (Khattak) [Sat, 21 Mar 2009 13:56:49 +0000 (13:56 +0000)]
Correct indention of Transcoder classes.
svn path=/trunk/; revision=719
Zeeshan Ali (Khattak) [Sat, 21 Mar 2009 13:56:44 +0000 (13:56 +0000)]
Put the audioresample before audio encoder, just in case.
svn path=/trunk/; revision=718
Zeeshan Ali (Khattak) [Sat, 21 Mar 2009 13:56:39 +0000 (13:56 +0000)]
Explicitly require and link to libsoup-2.4 >= 2.26.0.
svn path=/trunk/; revision=717
Zeeshan Ali (Khattak) [Sat, 21 Mar 2009 13:56:34 +0000 (13:56 +0000)]
LiveResponse should use EOF encoding rather than CHUNKED.
Many media players and renderers seem to be unable to handle CHUNKED
encoding so this patch should take away from them one excuse to fail.
svn path=/trunk/; revision=716
Zeeshan Ali (Khattak) [Sat, 21 Mar 2009 13:56:29 +0000 (13:56 +0000)]
Transcoder classes dictate the mimetype and DLNA profile.
svn path=/trunk/; revision=715
Zeeshan Ali (Khattak) [Sat, 21 Mar 2009 13:56:23 +0000 (13:56 +0000)]
A base class for Transcoder elements.
svn path=/trunk/; revision=714
Zeeshan Ali (Khattak) [Sat, 21 Mar 2009 13:56:18 +0000 (13:56 +0000)]
No need to keep check_pad_compatible static.
Just inline it in both classes for now, we'll move it to common
baseclass when we have that.
svn path=/trunk/; revision=713
Zeeshan Ali (Khattak) [Sat, 21 Mar 2009 13:56:14 +0000 (13:56 +0000)]
No need for mpegvideoparse.
svn path=/trunk/; revision=712
Zeeshan Ali (Khattak) [Sat, 21 Mar 2009 13:56:09 +0000 (13:56 +0000)]
Prepend a videorate to the video encoder bin.
svn path=/trunk/; revision=711
Zeeshan Ali (Khattak) [Sat, 21 Mar 2009 13:56:04 +0000 (13:56 +0000)]
Add colorspace and parser elements to video encoding part of pipeline.
svn path=/trunk/; revision=710
Zeeshan Ali (Khattak) [Sat, 21 Mar 2009 13:56:00 +0000 (13:56 +0000)]
Intersect the caps of the pads to check their compatibility.
svn path=/trunk/; revision=709
Zeeshan Ali (Khattak) [Sat, 21 Mar 2009 13:55:54 +0000 (13:55 +0000)]
Don't trust get_compatible_pad() in MP3Transcoder either.
svn path=/trunk/; revision=708
Zeeshan Ali (Khattak) [Sat, 21 Mar 2009 13:55:50 +0000 (13:55 +0000)]
Don't trust Gst.Element.get_compatible_pad().
svn path=/trunk/; revision=707
Zeeshan Ali (Khattak) [Sat, 21 Mar 2009 13:55:44 +0000 (13:55 +0000)]
Remove now unneeded contsants.
svn path=/trunk/; revision=706
Zeeshan Ali (Khattak) [Sat, 21 Mar 2009 13:55:39 +0000 (13:55 +0000)]
MP3Transcoder.create_encoder can be dictated names for pads.
svn path=/trunk/; revision=705
Zeeshan Ali (Khattak) [Sat, 21 Mar 2009 13:55:33 +0000 (13:55 +0000)]
Correct a typo.
svn path=/trunk/; revision=704
Zeeshan Ali (Khattak) [Sat, 21 Mar 2009 13:55:29 +0000 (13:55 +0000)]
MP2TSTranscoder uses MP3Transcoder.create_encoder.
To avoid some code-duplication.
svn path=/trunk/; revision=703
Zeeshan Ali (Khattak) [Sat, 21 Mar 2009 13:55:24 +0000 (13:55 +0000)]
Rename MP3Transcoder.create_audio_encoder to create_encoder.
svn path=/trunk/; revision=702
Zeeshan Ali (Khattak) [Sat, 21 Mar 2009 13:55:19 +0000 (13:55 +0000)]
Turn MP3Transcoder.create_audio_encoder 'internal static'.
This is to allow the other transcoder classes to be able to use the same
audio encoder pipeline.
svn path=/trunk/; revision=701
Zeeshan Ali (Khattak) [Sat, 21 Mar 2009 13:55:14 +0000 (13:55 +0000)]
Use enum to identify mpeg audio layers, rather than integer.
svn path=/trunk/; revision=700
Zeeshan Ali (Khattak) [Sat, 21 Mar 2009 13:55:10 +0000 (13:55 +0000)]
Clever use of arrays to create appropriate encoder.
svn path=/trunk/; revision=699
Zeeshan Ali (Khattak) [Sat, 21 Mar 2009 13:55:05 +0000 (13:55 +0000)]
Convert MP2Transcoder into a more generic mpeg audio transcoder.
Convert MP2Transcoder into mpeg audio (layer 2 and 3) transcoder.
svn path=/trunk/; revision=698
Zeeshan Ali (Khattak) [Sat, 21 Mar 2009 13:55:01 +0000 (13:55 +0000)]
Use an mp3 parser.
svn path=/trunk/; revision=697
Zeeshan Ali (Khattak) [Sat, 21 Mar 2009 13:54:56 +0000 (13:54 +0000)]
Escape the transcode target string before putting it in the URI.
svn path=/trunk/; revision=696
Zeeshan Ali (Khattak) [Sat, 21 Mar 2009 13:54:51 +0000 (13:54 +0000)]
Audio encoder can be added to the bin earlier.
No need to wait for decodebin pad availability before audio encoder could
be added to the bin.
svn path=/trunk/; revision=695
Zeeshan Ali (Khattak) [Sat, 21 Mar 2009 13:54:46 +0000 (13:54 +0000)]
Give src pad of audio encoder bin a name.
Give src pad of audio encoder bin a name and use that to retreive it.
svn path=/trunk/; revision=694