Coder Social home page Coder Social logo

samsungdforum / juvoplayer Goto Github PK

View Code? Open in Web Editor NEW
52.0 20.0 23.0 130.52 MB

The reference for developers of streaming live TV and VOD Tizen .Net applications.

License: Other

C# 95.64% Python 1.14% JavaScript 3.22%
mpeg-dash-protocol rtsp-protocol tizen rtp ffmpeg video-playback demuxer opengl hls gui

juvoplayer's Introduction

JuvoPlayer

Introduction

JuvoPlayer is a reference player application designed to be platform and component agnostic, leveraging dependence on device firmware updates (OTNs) and offering greater implementation flexibility. Source code is open and can be included in the software products under the MIT license conditions.

Please read the articles listed below before starting development:

Concept

JuvoPlayer Concept Diagram

High level conceptual diagram. Dashed lined blocks represent external components/systems. Dotted blocks represent generalised elements. Dotted line surrounded blocks represent JuvoPlayer structures. Dark blue blocks are 3rd party libraries.

User Interfaces

Four grey blocks in the left upper corner represent UIs. UIs differ by underlying framework.

  • JuvoPlayerXamarin - XamarinForms implementation. Portable to platforms supported by XamarinForms, i.e. Android, iOS, Windows, Tizen .Net
  • JuvoReactNative - React Native Tizen .Net implementation. A fork of MS React Native .Net open source project. React Native Tizen .Net offers basic UI controls and bindings.
  • JuvoOpenGLNative - NUI based application with OpenGL UI implemented using custom made C++ UI library. Offers excellent animation performance and UI design flexibility.
  • SimplePlayer - Simplistic UI based on XamarinForms app template.

Core: Common Set of Libraries

User Interfaces are implemented as separate Smart TV applications containing common libraries (Core). Responsibilities of the blocks are self-explanatory. As an example, the 'DashDataProvider' class prepares all the data from requested MPEG DASH .mpd (manifest file) for playback.

'Player module' represents the JuvoPlayer/Player folder content. It feeds the Tizen TV platform player with extracted elementary stream packets.

'FFmpeg' - FFmpeg C libraries.

MPEG-DASH, HLS, RTP/RTSP and Progressive HTTP streaming protocols are supported. New streaming protocols can be added and distributed as a part of the JuvoPlayer core.

Secured Content

Premium VOD services use DRM secured content. Secured content playback is executed using Common Encryption Interface (CENC). JuvoPlayer's DRM module provides decryption and key management services. Decrypted content is stored inside TrustZone with no application access to decrypted data. Following DRMs are supported:

  • PlayReady
  • Widevine

juvoplayer's People

Contributors

gtea3 avatar m-zdun avatar markciliavincenti avatar msavvik avatar pbsamsung avatar pflissamsung avatar pgalisz avatar polboo avatar ppaneksamsung avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

juvoplayer's Issues

Application refers a forbidden assembly directly

When launching the UI Applications on a 2019 Samsung SmartTV, I'm getting the following errors:

[FAIL] SimplePlayer.Tizen.TV.dll refers a forbidden assembly directly - Xamarin.Forms.Core :(

[FAIL] JuvoPlayer.Xamarin.Tizen.TV.dll refers a forbidden assembly directly - Xamarin.Forms.Platform.Tizen :(

[FAIL] JuvoPlayerOpenGLNative.Tizen.TV.dll refers a forbidden assembly directly - JuvoPlayer :(

Launching the ReactNative one just shows a black screen.

Additional information:
Model Number: QE49Q67RATXXC
Sofware Version: T-MSMDEUC-1315.4, B6912200/050204, BT-S

Unsupported container?

Player return -> Unsupported container but what mean container if i put h264 frame data to elementary stream?

Use hijacked FFImageLoading library

Hello,
Can we have an updated version of FFimageloading?
Because we have to update to use all the features like "DownsampleToViewSize",
with your version, we cannot use it.

I tried before to write, and with the latest version, and "DownsampleToViewSize" work fine, I haven't tried the rest of the features, but this one is important.

About security mechanism,
did you say that development can be disabled and once released (published) will it work on samsung televisions?
I can create a certificate with the partner level, but I don't know how to deactivate this mechanism

thank you.

XamarinPlayer playing error

Hi,

Was able to install and run application on emulator, but when clicked one of contents(clean HLS), it got errors below. Not sure if there is anything wrong while following guide.

Build was okay with the latest VS Community Version.
Unloaded JavoPlayer.OpenGL/JuvoReactNative/SimplePlayer.Tizen.TV

Exception thrown: 'System.ObjectDisposedException' in
Exception thrown: 'System.ObjectDisposedException' in
Exception thrown: 'System.ObjectDisposedException' in
Exception thrown: 'System.ObjectDisposedException' in
Exception thrown: 'System.ObjectDisposedException' in
Exception thrown: 'System.ObjectDisposedException' in
Exception thrown: 'System.ObjectDisposedException' in
Exception thrown: 'System.ObjectDisposedException' in
Loaded '/proc/8106/fd/39/bin/System.Reactive.dll'. Cannot find or open the symbol file.
Loaded '/common/usr/share/dotnet/shared/Microsoft.NETCore.App/3.0.0/System.Threading.Thread.dll'. Cannot find or open the symbol file.
Loaded '/common/usr/share/dotnet/shared/Microsoft.NETCore.App/3.0.0/System.Runtime.InteropServices.RuntimeInformation.dll'. Cannot find or open the symbol file.
Loaded '/common/usr/share/dotnet/shared/Microsoft.NETCore.App/3.0.0/System.Linq.Parallel.dll'. Cannot find or open the symbol file.
Exception thrown: 'System.InvalidOperationException' in Tizen.TV.Multimedia.ESPlayer.dll
Exception thrown: 'System.InvalidOperationException' in Tizen.TV.Multimedia.ESPlayer.dll
Exception thrown: 'System.InvalidOperationException' in Tizen.TV.Multimedia.ESPlayer.dll
Exception thrown: 'System.InvalidOperationException' in Tizen.TV.Multimedia.ESPlayer.dll
Exception thrown: 'System.InvalidOperationException' in Tizen.TV.Multimedia.ESPlayer.dll
Exception thrown: 'System.InvalidOperationException' in Tizen.TV.Multimedia.ESPlayer.dll
Exception thrown: 'System.InvalidOperationException' in Tizen.TV.Multimedia.ESPlayer.dll
Exception thrown: 'System.InvalidOperationException' in Tizen.TV.Multimedia.ESPlayer.dll
Exception thrown: 'System.InvalidOperationException' in Tizen.TV.Multimedia.ESPlayer.dll
Exception thrown: 'System.InvalidOperationException' in Tizen.TV.Multimedia.ESPlayer.dll
Exception thrown: 'System.InvalidOperationException' in Tizen.TV.Multimedia.ESPlayer.dll
Exception thrown: 'System.InvalidOperationException' in Tizen.TV.Multimedia.ESPlayer.dll
Exception thrown: 'System.InvalidOperationException' in Tizen.TV.Multimedia.ESPlayer.dll
The program 'sdb.exe' has exited with code 0 (0x0).

Thank you for your supporing!!

build.log
debug_full.log

Terminated after attempt to play video

Hello,
we have an issue with playing video content, the application unexpectedly terminated after attempt to play any video. We have experienced the same behavior for all three players: XamarinPlayer, OpenLG, SimplePlayer. Information bellow is for SimplePlayer project.

PREREQUISITES:

Windows 10
Visual Studio Community 2017
Visual Studio Tools for Tizen, version 2.5.0.0
Packages (for SimplePlayer): http://cap.svsys.cz/public/samsung/juvoplayer/issues/201906191139-cantplay/packages.csv
Samsung TV UE43RU7472UXXH, T-MSLDEUC-1062.1

BUILD:

Log: http://cap.svsys.cz/public/samsung/juvoplayer/issues/201906191139-cantplay/build.csv

ISSUE DESCRIPTION

After attempt to play any video a black screen is shown for 1-2 seconds and after the app terminated.

Steps:

  • start app via Visual Studio debug (F5)
  • press ENTER key on RC (or select any video and press ENTER key on RC for XamarinPlayer)

Thank you for your help!

Performance of JuvoPlayer OpenGL player

Hi,

I checked with JuvoPlayer OpenGL performance is quite good with live streaming.
But because .NET is not supported on older Samsung TV, I want to achieve same using NaclPlayer.

while investigating OpenGL player if i stop OpenGL rendering just after play starts. performance decreases significantly. That means player frames are also being rendered using openGL ? or just the controls ?
I want to know how does openGL rendering is connected with eglSurface of player window.
I think it internal sharing of EGLSurface between openGL and TVGLApplication class (from ElmSharp window).

Need this information to check feasibility of similar improvement on NaclPlayer.

Not able to install Xamarin JuvoPlayer with esplayer partner privilege

Hi,

I have compiled JuvoPlayer with Visual Studio for Tizen with setting up all dependencies.
But when try to install on Real device or emulator it gives me below error.
install failed[118, -14], reason: Signature error :

when I remove all partner privilege from manifest file. It allows to install.

I searched on internet and found that "http://developer.samsung.com/privilege/esplay"it is partner privilege. So created partner certificates (tried both Samsung and Tizen) but still it fails.

Anybody knows the reason here ? I am stuck at this.

Can JuvoPlayer play UDP/RTP on Samsung Tizen TV 2020?

Dear @pbsamsung ,
I'm developing a WebApp on TV Tizen. But it can't play UDP/RTP. When I see JuvoPlayer written by C#. I've seen your update readme. I see it can play RTSP.
But I have two link:
udp://@225.1.2.249:30120
rtp://225.1.1.240:30120

So do you give me your recommend?
Can JuvoPlayer can play UDP/RTP on TV Tizen 2020?

Thanks & Best regards

Signature Error while installing app on Emulator

Hello~

We got "Signature error" below while installing app on the emulator.
I was downloading any other sample applications on the same emulator so guessing there would be no certificate issue on my current setup.
To make test easy, unloaded Junoplayer.OpenGL/XamarinPlayer/ReactNative for now.

2020-04-21 오후 10:14:19 : <<< Start debugging "org.tizen.example.SimplePlayer.Tizen.TV" (secure protocol) >>>
2020-04-21 오후 10:14:19 : Try to terminate running application: org.tizen.example.SimplePlayer.Tizen.TV
2020-04-21 오후 10:14:19 : No application to be terminated: 255
install: skip option is requested. 3
WARNING: Your data are to be sent over an unencrypted connection and could be read by others.
pushed org.tizen.example.SimplePlayer.Tizen.TV-1.5.3.tpk 0% 0KB 0KB/s
pushed org.tizen.example.SimplePlayer.Tizen.TV-1.5.3.tpk 28% 2944KB 0KB/s
pushed org.tizen.example.SimplePlayer.Tizen.TV-1.5.3.tpk 100% 10203KB 0KB/s
1 file(s) pushed. 0 file(s) skipped.
C:\Project\JuvoPlayer\SimplePlayer.Tizen.TV\bin\Debug\tizen50\org.tizen.example.SimplePlayer.Tizen.TV-1.5.3.tpk 7675KB/s (10448578 bytes in 1.329s)
install org.tizen.example.SimplePlayer.Tizen.TV
package_path /home/owner/share/tmp/sdk_tools/org.tizen.example.SimplePlayer.Tizen.TV-1.5.3.tpk
app_id[org.tizen.example.SimplePlayer.Tizen.TV] install start
app_id[org.tizen.example.SimplePlayer.Tizen.TV] installing[12]
app_id[org.tizen.example.SimplePlayer.Tizen.TV] installing[15]
app_id[org.tizen.example.SimplePlayer.Tizen.TV] installing[18]
app_id[org.tizen.example.SimplePlayer.Tizen.TV] installing[21]
app_id[org.tizen.example.SimplePlayer.Tizen.TV] installing[25]
app_id[org.tizen.example.SimplePlayer.Tizen.TV] installing[28]
app_id[org.tizen.example.SimplePlayer.Tizen.TV] install failed[118, -14], reason: Signature error :
spend time for wascmd is [2431]ms

2020-04-21 오후 10:14:26 : Removing port forward...
2020-04-21 오후 10:14:26 : Forwarding port...
2020-04-21 오후 10:14:26 : Launching org.tizen.example.SimplePlayer.Tizen.TV
2020-04-21 오후 10:14:27 : ... launch failed
2020-04-21 오후 10:19:53 : <<< Start debugging "org.tizen.example.SimplePlayer.Tizen.TV" (secure protocol) >>>
2020-04-21 오후 10:19:53 : Try to terminate running application: org.tizen.example.SimplePlayer.Tizen.TV
2020-04-21 오후 10:19:53 : No application to be terminated: 255
install: skip option is requested. 3
WARNING: Your data are to be sent over an unencrypted connection and could be read by others.
pushed org.tizen.example.SimplePlayer.Tizen.TV-1.5.3.tpk 0% 0KB 0KB/s
pushed org.tizen.example.SimplePlayer.Tizen.TV-1.5.3.tpk 58% 6016KB 0KB/s
pushed org.tizen.example.SimplePlayer.Tizen.TV-1.5.3.tpk 98% 10048KB 3278KB/s
pushed org.tizen.example.SimplePlayer.Tizen.TV-1.5.3.tpk 100% 10203KB 3278KB/s
1 file(s) pushed. 0 file(s) skipped.
C:\Project\JuvoPlayer\SimplePlayer.Tizen.TV\bin\Debug\tizen50\org.tizen.example.SimplePlayer.Tizen.TV-1.5.3.tpk 5180KB/s (10448578 bytes in 1.969s)
install org.tizen.example.SimplePlayer.Tizen.TV
package_path /home/owner/share/tmp/sdk_tools/org.tizen.example.SimplePlayer.Tizen.TV-1.5.3.tpk
app_id[org.tizen.example.SimplePlayer.Tizen.TV] install start
app_id[org.tizen.example.SimplePlayer.Tizen.TV] installing[12]
app_id[org.tizen.example.SimplePlayer.Tizen.TV] installing[15]
app_id[org.tizen.example.SimplePlayer.Tizen.TV] installing[18]
app_id[org.tizen.example.SimplePlayer.Tizen.TV] installing[21]
app_id[org.tizen.example.SimplePlayer.Tizen.TV] installing[25]
app_id[org.tizen.example.SimplePlayer.Tizen.TV] installing[28]
app_id[org.tizen.example.SimplePlayer.Tizen.TV] install failed[118, -14], reason: Signature error :
spend time for wascmd is [2247]ms
2020-04-21 오후 10:20:01 : Removing port forward...
2020-04-21 오후 10:20:02 : Forwarding port...
2020-04-21 오후 10:20:02 : Launching org.tizen.example.SimplePlayer.Tizen.TV
2020-04-21 오후 10:20:03 : ... launch failed
2020-04-21 오후 10:20:03 : 'org.tizen.example.SimplePlayer.Tizen.TV' is dependent on 'org.tizen.example.SimplePlayer.Tizen.TV-1.5.3.tpk'.

Thank you,

ReactNativeTizen.dll refers a forbidden assembly

When I'm trying to launch the sample app .tpk on a retail 2019 TV set (using Visual Studio ctrl+F5 command) it fails and I'm getting a popup message:
Fail to launch Your App
[FAIL] ReactNativeTizen.dll refers a forbidden assembly directly - libecore.so.1

Additional information:
Model Number: UA43T6000AKXXV
Sofware Version: T-KTS2UABC-1113.8

JuvoPlayer does supports udp multicast?

I want to play udp multicasting streams on juvoplayer.
I have tried to test it on SimplePlayer.Tizen.TV project but it is not working for me.
JuvoPlayer does supports udp multicast?

Question about JuvoPlayer

I would like to build an IPTV player app using JuvoPlayer. I want to ask you please is this player able to detect subtitles and closed caption (CC) in live streaming links (m3u8/ts)?
Also is it possible to play links such as (rtsp:// or rtmp://)?

I'm looking forward to get an answer as soon as possible

Best regards

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.