Code Monkey home page Code Monkey logo

Comments (6)

mitxp avatar mitxp commented on August 27, 2024

Interesting. I remember that there was/is a part of the spec saying that the terminal should go back to broadcast video presentation once the video/broadcast object is stopped (I actually remember "stopped" but you're saying "released"). Anyway, I quickly checked the specs, but I couldn't find anything. Could you please point me to that part of the specification?

Many thanks.

from hbbtv-testsuite.

fvalleeHbbTV avatar fvalleeHbbTV commented on August 27, 2024

When broadcast video presentation is under the control of the application, stop() is used to stop presenting the broadcast audio/video.
release() method is used to return the control of video to the terminal :

OIPF Release 2 Volume 5 DAE v2.3:
H.2 Interaction with the video/broadcast and A/V Control objects
"If the release() method is called on a video/broadcast object, or if the object is garbage collected, control of broadcast video presentation SHALL be returned to the OITF and video SHALL be re-scaled and re-positioned (if necessary)."

OIPF Release 2 Volume 5 DAE v2.3:
7.13.1 The video/broadcast embedded object
Table 8: State transitions for the video/broadcast embedded object

If the broadcast video presentation is controlled by the terminal, I guess the broadcast audio/video is expected to be presented, even if I didn't find any explicit reference to this case in the specifications.

from hbbtv-testsuite.

mitxp avatar mitxp commented on August 27, 2024

I think you are right, even though this rises some discussion :)
This makes implementations for application developers really difficult. I know the test could be implemented differently (in a way that is more simple), but I want to keep app developers in mind, so I chose this implementation where I move away the old video/broadcast object and then stop it (but not release it) and after that instantiate the video element:
http://itv.mit-xperts.com/hbbtvtest/html5vid/i.php

Could you please have a look and tell me if the new test is valid before I publish it under the existing URL?

from hbbtv-testsuite.

fvalleeHbbTV avatar fvalleeHbbTV commented on August 27, 2024

yeah I understand it's not really convenient for app developers, actually you're not the only one to complain about it.

We changed the resource manangement for HTML5 element to fail presenting media when in use for presenting broadcast.

According to feedback from one of ARD's app developer this was a bad idea.
His opinion and I agree is: a media object should always be able to take resources when there is no v/b object in use.
(from HbbTV redmine 6848).

I tested your page, and it's working. thanks.

I've an issue with my implementation as the application is not waiting for the video/broadcast state to be updated to Stopped after the stop() - i.e. when he html5 video play() is called we have not received yet the event confirming the broadcast playback is actually stopped. I think i've to handle this case somehow as I don't think applications are actually going to wait for the playStateChanged "stopped" event before playing the broadband video.

from hbbtv-testsuite.

mitxp avatar mitxp commented on August 27, 2024

Indeed. I'll have to change all of our applications, too.

Glad you see no issues in the test anymore. Did a minor modification (there was an issue when you tried to start the video/broadcast twice without playing an html5 vid in between) and published it. Closing issue.

(and, by the way, thanks for reporting the issue, even though it was no fun for both sides, but sometimes the specification is not very nice).

from hbbtv-testsuite.

fvalleeHbbTV avatar fvalleeHbbTV commented on August 27, 2024

good. mit-xperts is quite useful, thanks for your efforts!

from hbbtv-testsuite.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.