bbc / brave

Basic Real-time AV Editor - allowing you to preview, mix, and route live audio and video streams on the cloud
Apache License 2.0
653 stars 148 forks source link

HTMLInput object has no attribute intervideosink #52

Closed mhzbg closed 4 years ago

mhzbg commented 4 years ago

When attempting to add any html as input via the Web GUI, the following message is logged

Traceback (most recent call last):
  File "/root/.local/share/virtualenvs/brave-cXY7_SU8/lib/python3.6/site-packages/sanic/app.py", line 917, in handle_request
    response = await response
  File "/brave/brave/api/route_handler.py", line 13, in all
    'inputs': request['session'].inputs.summarise(),
  File "/brave/brave/abstract_collection.py", line 40, in summarise
    s.append(obj.summarise())
  File "/brave/brave/inputs/input.py", line 58, in summarise
    cap_props = self.get_input_cap_props()
  File "/brave/brave/inputs/html.py", line 48, in get_input_cap_props
    element = self.intervideosink
AttributeError: 'HTMLInput' object has no attribute 'intervideosink'

This is a docker instance build from master on Augh 29 2019

moschopsuk commented 4 years ago

Sorry for the deplaying in getting back to you

If you do gst-inspect-1.0 intervideosink is anything printed out ?

mhzbg commented 4 years ago

Apologies, the gst-WebRenderSrc is not compiling. I am running in a Docker container, ubuntu 18, and gst-WebRenderSrc fails to compile. Everything else works well. I guess the question is how do we get gst-WebRenderSrc to compile and install correctly. Thanks

moschopsuk commented 4 years ago

Hello @mhzbg,

The GstWebRender was more of demonstration of what was possible. It was also made in a bit of a rush and as such there were some bugs with it. Since the GStreamer conference in 2018, there have been two other HTML renders created by other teams which have been very kindly open sourced.

Please have a look at:

https://github.com/centricular/gstcefsrc and https://base-art.net/Articles/web-overlay-in-gstreamer-with-wpewebkit/

As much more stable alternatives.

mhzbg commented 4 years ago

Hello @moschopsuk , thank you for the response. I have already looked at the links you provided perviously. The real question is how to get the html overlays to work with the GUI that brave provides. What module does it relay on, and how to resolve the error reported earlier. Thanks

moschopsuk commented 4 years ago

Apologies @mhzbg I miss understood the question.

The file https://github.com/bbc/brave/blob/master/brave/inputs/html.py is what will try to load the element.

Currently it loads thecef element but this could be changed to use the two other web renders o list above.

Thanks.

moschopsuk commented 4 years ago

Closing as a Stale issue