aboutsummaryrefslogtreecommitdiff
path: root/lib/service/servicemp3.cpp
diff options
context:
space:
mode:
authorFraxinas <andreas.frisch@multimedia-labs.de>2009-01-16 23:59:30 +0100
committerFraxinas <andreas.frisch@multimedia-labs.de>2009-01-16 23:59:30 +0100
commit05dd46e9edc321773bb57413c98184c5f40107fc (patch)
tree8e34f55e4e1125bdbf6736c7e7c6531781bb5ad4 /lib/service/servicemp3.cpp
parent5d9ab813e9468a24cc90400e9fb5b0567ec6b12a (diff)
downloadenigma2-05dd46e9edc321773bb57413c98184c5f40107fc.tar.gz
enigma2-05dd46e9edc321773bb57413c98184c5f40107fc.zip
fix playback of "original" video-cds
Diffstat (limited to 'lib/service/servicemp3.cpp')
-rw-r--r--lib/service/servicemp3.cpp7
1 files changed, 6 insertions, 1 deletions
diff --git a/lib/service/servicemp3.cpp b/lib/service/servicemp3.cpp
index d3957012..45ec5959 100644
--- a/lib/service/servicemp3.cpp
+++ b/lib/service/servicemp3.cpp
@@ -284,9 +284,14 @@ eServiceMP3::eServiceMP3(const char *filename): m_filename(filename), m_pump(eAp
int ret = read(fd, tmp, 128*1024);
close(fd);
if ( ret == -1 ) // this is a "REAL" VCD
+ {
source = gst_element_factory_make ("vcdsrc", "vcd-source");
if (source)
+ {
g_object_set (G_OBJECT (source), "device", "/dev/cdroms/cdrom0", NULL);
+ eDebug("servicemp3: this is a 'REAL' video cd... we use vcdsrc !");
+ }
+ }
}
if ( !source && !sourceinfo.is_streaming )
{
@@ -491,7 +496,7 @@ eServiceMP3::eServiceMP3(const char *filename): m_filename(filename), m_pump(eAp
if ( sourceinfo.containertype == ctVCD && gst_bin_get_by_name(GST_BIN(m_gst_pipeline),"file-source") )
{
- eDebug("this is a fake video cd... we use filesrc ! cdxaparse !");
+ eDebug("servicemp3: this is a fake video cd... we use filesrc ! cdxaparse !");
GstElement *cdxaparse = gst_element_factory_make("cdxaparse", "cdxaparse");
gst_bin_add(GST_BIN(m_gst_pipeline), cdxaparse);
gst_element_link(source, cdxaparse);