Author Topic: #1438: Make qOrbiter Play Media - Scope request  (Read 13536 times)

coley

  • Guru
  • ****
  • Posts: 492
    • View Profile
Re: #1438: Make qOrbiter Play Media - Scope request
« Reply #15 on: April 24, 2012, 04:56:28 pm »
Came across this - custom qml component for playing video
http://youtu.be/BLXomTRfpG0
maybe a good starting point.

-Coley.

golgoj4

  • NEEDS to work for LinuxMCE
  • ***
  • Posts: 1193
  • hrumpf!
    • View Profile
    • Mah Website
Re: #1438: Make qOrbiter Play Media - Scope request
« Reply #16 on: April 25, 2012, 04:26:42 am »
well the truly annoying part is that im trying to implement the video player using Qt Mobility which would allow me to abstract the player within qOrbiter on different platforms. But Qt Mobility is not being co-operative (including the examples). Otherwise its stupid easy...

more to come soon!

-golgoj4
Linuxmce - Where everyone is never wrong, but we are always behind xbmc in the media / ui department.

sambuca

  • Guru
  • ****
  • Posts: 462
    • View Profile
Re: #1438: Make qOrbiter Play Media - Scope request
« Reply #17 on: April 25, 2012, 10:46:10 am »
I think we all want to see media playback on hand-held devices, and I have some ideas regarding this that I thought I'd share.

First, we may have problems with the media formats supported on various devices. Android for instance, does not play flac files (afaik). And when you think about video files, I suspect it will be even more limitations (given the large number of format available).

So we have two options: use the native android media playback system, or implement a layer on top of that to support more formats. I don't know if qt-media uses the native android media system or adds support for more formats on its own, so using that may or may not be an advantage in this regard.

Using the native playback system will probably be more power-efficient than implementing decoding support, as hardware acceleration exists for the first option.

Adding decoding support for the same formats as the "standard" LMCE devices like Xine and Squeezeboxes to android or other devices will probably not be feasible.

Realizing that playing media seamlessly to hand-held devices probably needs transcoding, we are very much approaching what UPnP are attempting to do. Several of the media servera available do some kind of transcoding.

UPnP clients are available for android already, so they could be used for our purpose. What is missing in this picture is a LMCE-UPnP bridge.
During my work with the LMCE-Coherence media backend (which is still not released), I played around with the idea that we could create a bridge that exposed UPnP devices to LMCE and allow them to be added as a media player device in LMCE. I did not do any experiments regarding this, but I didn't find any show stoppers either.
Using this approach will enable us to use existing frameworks (UPnP clients/renderer on the device, UPnP media server - coherence), and also give us other benefits as well (possible to add other playback devices supporting UPnP).

I'm not saying what we should do, but simply stating that there are alternative ways to creating a new media player for Android. Maybe we end up doing both, just to see which approach works best. I will probably do the UPnP stuff anyway at some point, to support playing on UPnP clients.

This post is long enough already, but I can elaborate on the idea if anyone wants to listen.

br,
sambuca

golgoj4

  • NEEDS to work for LinuxMCE
  • ***
  • Posts: 1193
  • hrumpf!
    • View Profile
    • Mah Website
Re: #1438: Make qOrbiter Play Media - Scope request
« Reply #18 on: April 25, 2012, 05:43:47 pm »
I think we all want to see media playback on hand-held devices, and I have some ideas regarding this that I thought I'd share.

First, we may have problems with the media formats supported on various devices. Android for instance, does not play flac files (afaik). And when you think about video files, I suspect it will be even more limitations (given the large number of format available).

So we have two options: use the native android media playback system, or implement a layer on top of that to support more formats. I don't know if qt-media uses the native android media system or adds support for more formats on its own, so using that may or may not be an advantage in this regard.

Using the native playback system will probably be more power-efficient than implementing decoding support, as hardware acceleration exists for the first option.

Adding decoding support for the same formats as the "standard" LMCE devices like Xine and Squeezeboxes to android or other devices will probably not be feasible.

Realizing that playing media seamlessly to hand-held devices probably needs transcoding, we are very much approaching what UPnP are attempting to do. Several of the media servera available do some kind of transcoding.

UPnP clients are available for android already, so they could be used for our purpose. What is missing in this picture is a LMCE-UPnP bridge.
During my work with the LMCE-Coherence media backend (which is still not released), I played around with the idea that we could create a bridge that exposed UPnP devices to LMCE and allow them to be added as a media player device in LMCE. I did not do any experiments regarding this, but I didn't find any show stoppers either.
Using this approach will enable us to use existing frameworks (UPnP clients/renderer on the device, UPnP media server - coherence), and also give us other benefits as well (possible to add other playback devices supporting UPnP).

I'm not saying what we should do, but simply stating that there are alternative ways to creating a new media player for Android. Maybe we end up doing both, just to see which approach works best. I will probably do the UPnP stuff anyway at some point, to support playing on UPnP clients.

This post is long enough already, but I can elaborate on the idea if anyone wants to listen.

br,
sambuca

sambuca,

im always happy to listen. And I dont think we've really flushed out the 'best' way to do this as the methods / ideas everyone has brought up so far require serious consideration and thought.

Some things ive noticed so far on the Qt side
*Phonon, the multimedia playback system that is part of qt uses the native playback capabilities of the device / machine.
*This will change radically with Qt5 from my understanding

As an aside, im currently writing a qml plugin for video using the phonon system. got basic audio playback working, but once i finish i want to look hard at abstracting it so that we can more easily drop in replacement players.

also, im late now so ill continue with my thoughts later!
-golgoj4

Linuxmce - Where everyone is never wrong, but we are always behind xbmc in the media / ui department.