Skip to main content

PIP questions

4 replies [Last post]
hooligancat
Offline
Joined: 2009-10-20
Points: 0

Hi I have a few questions:

I have read conflicting reports on the availability of AsynchronousPIP. Can a playlist reference a clip on the disc as an AsynchronousPIP. Scenarist allows this to be created, and it muxes and play fine in TMT, however, there are some reports indicating that AsynchronousPIP is only for reading permanent storage.

Is there a way to pause the main video (which I can achieve already with player.setRate(0)), but allow the PIP to continue playing? Or is it possible in some way to create the PIP as a separate player, independant of the main player, and resize and position it over the main player giving the appearance of PIP?

Once we have the main video paused (using setRate), there are occasions where we want to jump to another location by using setMediaTime; but remain in a paused state. I have been unable to set the media time (and thus update the video frame), without first restarting the player, jump to the new location and pause the player again; but this gives a few frames of playback which is undesirable.

On an unrelated matter which is somewhat bizarre, we had the situation where we tried to load an image into memory. The image was not optimized so it was 9600*260 pixels which is approx 10MB when decoded (9600*260*4). The PS3 refused to load it. When we rearranged the image to be 1920*1300 it loaded fine. The number of pixels remains the same, so the memory buffer should be the same. So...are there any constraints on image dimensions?

Any advice would be greatly appreciated.

Reply viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.
Joe Rice

On 20 Oct 2009, at 6:21 AM, bd-j-dev@mobileandembedded.org wrote:

> Hi I have a few questions:
>
> I have read conflicting reports on the availability of AsynchronousPIP. Can a playlist reference a clip on the disc as an AsynchronousPIP. Scenarist allows this to be created, and it muxes and play fine in TMT, however, there are some reports indicating that AsynchronousPIP is only for reading permanent storage.

Any out-of-mux subpath must be played from the BUDA. You can store the clips on the disc, but they must be copied to the BUDA and played as part of a VFS update to be legal.

> Is there a way to pause the main video (which I can achieve already with player.setRate(0)), but allow the PIP to continue playing? Or is it possible in some way to create the PIP as a separate player, independant of the main player, and resize and position it over the main player giving the appearance of PIP?

They share the same player, with PiP being relative to the primary video clock. You can set the PiP to be fullscreen, covering the primary video (luma-keying is disabled in this case), but you can't pause the primary while the secondary continues.

> Once we have the main video paused (using setRate), there are occasions where we want to jump to another location by using setMediaTime; but remain in a paused state. I have been unable to set the media time (and thus update the video frame), without first restarting the player, jump to the new location and pause the player again; but this gives a few frames of playback which is undesirable.

Not sure on this one.

> On an unrelated matter which is somewhat bizarre, we had the situation where we tried to load an image into memory. The image was not optimized so it was 9600*260 pixels which is approx 10MB when decoded (9600*260*4). The PS3 refused to load it. When we rearranged the image to be 1920*1300 it loaded fine. The number of pixels remains the same, so the memory buffer should be the same. So...are there any constraints on image dimensions?

Per BD-ROM 3-2, Annex G, the maximum height and/or width for an image is 4096 pixels.

Cheers,
Joe

---------------------------------------------------------------------
To unsubscribe, e-mail: bd-j-dev-unsubscribe@hdcookbook.dev.java.net
For additional commands, e-mail: bd-j-dev-help@hdcookbook.dev.java.net

hooligancat
Offline
Joined: 2009-10-20
Points: 0

Hi Joe, thank you for the response.

AsynchPIP is not going to be an option I don't think based upon your reply.

So in a nutshell there is no way to play a piece of video in a dialog (ie PIP) whilst retaining the primary video in a paused state as the background object?

Alternatively can we capture the full screen image of the paused frame to use as a background object, and then resize the player to mimick PIP, play a new playitem (still primary video), and keep the graphics plane available at full screen for our presentation graphics?

I didn't know about the image restriction, thanks for the heads up.

Joe Rice

> So in a nutshell there is no way to play a piece of video in a dialog (ie PIP) whilst retaining the primary video in a paused state as the background object?

That's correct - they always pause together.

> Alternatively can we capture the full screen image of the paused frame to use as a background object, and then resize the player to mimick PIP, play a new playitem (still primary video), and keep the graphics plane available at full screen for our presentation graphics?

I don't believe there's any way for BD-J to capture video in BD (I recall that HD DVD offered this, though). You'd probably need to provide stills on the disc in some still image format.

Afraid the spec also prevents resizing of the primary video in any PlayList where secondary video is also present (I think 3-2 chapter 13 somewhere, if you have the spec).

You can resize the primary video and present an image in the background plane, though.

Cheers,
Joe

---------------------------------------------------------------------
To unsubscribe, e-mail: bd-j-dev-unsubscribe@hdcookbook.dev.java.net
For additional commands, e-mail: bd-j-dev-help@hdcookbook.dev.java.net

hooligancat
Offline
Joined: 2009-10-20
Points: 0

Hi Joe,

Thank you again for you reply.

Looks like an entire rethink of our project might be needed.

But, that being said, theoretically we could resize the primary video (no secondary video this time) to a PIP dialog size, set the player to a new playitem / playlist, and set the background layer to an image already on the disc; and still retain the graphics layer for the presentation graphics/buttons etc. On this note, do you know what the slowest loading time is, that you have come across for loading an image from the disc, and presenting it, so we can judge if this is a viable route?

We were also hoping to grab thumbnails for bookmarks, but I have just read elsewhere on this forum, that that is also unavailable in BD-J.

I feel this is going to be a difficult journey!