Merge pull request #146 from review-bot/reform/tizen-vault-esplusplayer-python-pep8...
[platform/core/multimedia/esplusplayer.git] / README.md
1 # esplusplayer
2
3 [![Potential Defect (Analysis Hub)](https://code.sec.samsung.net/crb/image/api/badge/18007/analysis-hub-service)](https://code.sec.samsung.net/crb/projects/1/18007)
4 [![Potential Defect (Analysis Hub)](https://code.sec.samsung.net/crb/image/api/badge/18007/analysis-hub-service?show=sam)](https://code.sec.samsung.net/crb/projects/1/18007)
5
6 [![gbs-build](https://github.sec.samsung.net/tizen-vault/esplusplayer/actions/workflows/gbs-build-p4.yml/badge.svg)](https://github.sec.samsung.net/tizen-vault/esplusplayer/actions/workflows/gbs-build-p4.yml)
7
8 [![Reviewability Service](https://code.sec.samsung.net/crb/image/api/badge/18007/reviewability-service)](https://code.sec.samsung.net/crb/projects/1/18007)
9 [![CheckSpell Service](https://code.sec.samsung.net/crb/image/api/badge/18007/checkspell-service)](https://code.sec.samsung.net/crb/projects/1/18007)
10 [![Reform Service](https://code.sec.samsung.net/crb/image/api/badge/18007/reform-service)](https://code.sec.samsung.net/crb/projects/1/18007)
11 [![Idiom Service](https://code.sec.samsung.net/crb/image/api/badge/18007/idiom-service)](https://code.sec.samsung.net/crb/projects/1/18007)
12
13 - [Introduction](#intro)
14 - [Contributing](#contrib)
15 - [Release Process](#release)
16 - [Programming Guide](#guide)
17 - [Suggestion & Trouble Shooting](#suggest)
18
19 ## <a name='intro'></a> Introduction
20
21 ### What is ESPlusPlayer?
22 * It is a player framework which focuses on handling ES (Elementary Stream) packet data to render audio and video.
23 * It was named after PlusPlayer, which was designed for rapidly increasing video streaming services.
24   * PlusPlayer has two parts - one is variant part and the other one is invariant part, which is called TrackRenderer.
25   * ESPlusPlayer also uses TrackRenderer for actual ES data handling (decryption, decoding and rendering).
26 > You can refer [PlusPlayer GitHub](https://github.sec.samsung.net/VD8-PlusPlayer/plusplayer), but note that PlusPlayer is not managed on Github now.
27
28 ### Why ESPlusPlayer is required?
29 * Traditional media application relied on a plaform-provided player framework. The application just gives source URL to player and player does everything instead.
30   * This type of player performs source fetching, parsing (to get ES packet), decoding and rendering.
31   * The application just needs to monitor what player is doing now, and control its status - start, pause, resume, seek, etc.
32 * Recently some major OTT services (YouTube, Netflix, ...) have different concept of player:
33   * These apps don't rely on a platform player, instead they fetch media source and parse to extract ES packet by themselves.
34   * The only part that they rely on a platform player is ES packet handling, since it highly depends on the target devices.
35 * Not only the major OTT services, but web engines like Chromium also have the same playback concept.
36 > In Tizen platform, traditional player (MMPlayer) can support ES handling playback too.\
37 > but for better code maintenence, VD decided to make another player framework which only focuses on ES playback - That is ESPlusPlayer.
38
39 ## <a name='contrib'><a/> Contributing
40 * Check the [contributing guidelines](CONTRIBUTING.md) about the submission process, coding rules, and more.
41
42 ## <a name='release'><a/> Release Process
43 * This repository is auto-synced to VD P4, so please be aware of VD's [release process](https://github.sec.samsung.net/tizen-vault/esplusplayer/discussions/23).
44
45 ## <a name='guide'><a/> Programming Guide
46 * (TBD) Some important changes in ESPlusPlayer and basic guidelines will be provided [here](https://github.sec.samsung.net/tizen-vault/esplusplayer/wiki)
47
48 ## <a name='suggest'><a/> Suggestion & Trouble Shooting
49 * Open new [discussion](https://github.sec.samsung.net/tizen-vault/esplusplayer/discussions) for any idea, or suggestion about ESPP feature or management of this repository.
50 * Open new [issues](https://github.sec.samsung.net/tizen-vault/esplusplayer/issues) when you have any problem on ESPP feature or using this repository.