X-Git-Url: https://git.cweiske.de/enigma2.git/blobdiff_plain/d3538d6f7a92223cbd938c7b9be3cd9f618af60d..44b88742b46aea5328fc1f5d9435379485c73cbf:/lib/service/servicemp3.cpp diff --git a/lib/service/servicemp3.cpp b/lib/service/servicemp3.cpp index 2fa53ee7..14fef54c 100644 --- a/lib/service/servicemp3.cpp +++ b/lib/service/servicemp3.cpp @@ -20,7 +20,16 @@ eServiceFactoryMP3::eServiceFactoryMP3() eServiceCenter::getPrivInstance(sc); if (sc) - sc->addServiceFactory(eServiceFactoryMP3::id, this); + { + std::list extensions; + extensions.push_back("mp3"); + extensions.push_back("ogg"); + extensions.push_back("mpg"); + extensions.push_back("vob"); + extensions.push_back("wav"); + extensions.push_back("wave"); + sc->addServiceFactory(eServiceFactoryMP3::id, this, extensions); + } m_service_info = new eStaticServiceMP3Info(); } @@ -218,9 +227,11 @@ eServiceMP3::eServiceMP3(const char *filename): m_filename(filename), m_pump(eAp eDebug("audio: %p, queue_audio %p, video %p, queue_video %p, mpegdemux %p", audio, queue_audio, video, queue_video, mpegdemux); if (audio && queue_audio && video && queue_video && mpegdemux) { + g_object_set (G_OBJECT (queue_audio), "max-size-bytes", 256*1024, NULL); g_object_set (G_OBJECT (queue_audio), "max-size-buffers", 0, NULL); g_object_set (G_OBJECT (queue_audio), "max-size-time", (guint64)0, NULL); g_object_set (G_OBJECT (queue_video), "max-size-buffers", 0, NULL); + g_object_set (G_OBJECT (queue_video), "max-size-bytes", 2*1024*1024, NULL); g_object_set (G_OBJECT (queue_video), "max-size-time", (guint64)0, NULL); all_ok = 1; } @@ -495,7 +506,10 @@ RESULT eServiceMP3::info(ePtr&i) RESULT eServiceMP3::getName(std::string &name) { - name = "MP3 File: " + m_filename; + name = m_filename; + size_t n = name.rfind('/'); + if (n != std::string::npos) + name = name.substr(n + 1); return 0; }