[M120 Migration][MM] Modifications for basic operation of ME & MSE using espp. 72/305472/2
authorSun-woo Nam <sunny.nam@samsung.com>
Fri, 2 Feb 2024 04:15:11 +0000 (20:15 -0800)
committerSunwoo Nam <sunny.nam@samsung.com>
Thu, 15 Feb 2024 21:54:20 +0000 (21:54 +0000)
commit3f97c6d4d2d2261af45f61344e6c1037aa6129e3
tree879ccd58167fdccee58a46859efbd6b78fcfc272
parentea307adbf49f65b578a6cc368554677a3d31cd3a
[M120 Migration][MM] Modifications for basic operation of ME & MSE using espp.

This patch migrates previous patches for media operations such as play, pause
and seek. And this patch categorizes them into several groups.

[Buffer logic]
- Reduce read requests
Avoid read request when player is not playing / seeking.
https://review.tizen.org/gerrit/#/c/292239/
https://review.tizen.org/gerrit/#/c/294027/

- Read data from demuxer during buffer underrun
https://review.tizen.org/gerrit/#/c/294082/

-Shrink unnecessary OnBufferingStateChange call.
The player doesn't need to transfer the same state (BUFFERING_HAVE_ENOUGH)
to the renderer side, so add the condition to shrink it.
https://review.tizen.org/gerrit/#/c/299653/

- Do not return the index -1 for the array.
The potential defect was reported by Coverity.
https://review.tizen.org/gerrit/#/c/293011/

- Remove unutilized code
Remove buffering based player state handling.
https://review.tizen.org/gerrit/#/c/294537/

[Seek]
- fixup! [M108 Migration][MM] Introduce renderer seek
for resume play scenario, app will seek to previous playtime
expected_seek_ is set true, if the player is not ready,
it will stop espp to read data from demuxer, so espp prepare never complete
https://review.tizen.org/gerrit/#/c/294960/
https://review.tizen.org/gerrit/#/c/295324/

- Ignore Flush before prepared
https://review.tizen.org/gerrit/#/c/298597/

- Prevent to esplsuplayer_seek twice.
https://review.tizen.org/gerrit/#/c/300869/

- Do not ignore seeking to 0 before prepared.
https://review.tizen.org/gerrit/#/c/301027/

- Skip the seek when the requested time is same as pending seek position.
https://review.tizen.org/gerrit/#/c/301630/

- Fix seeking after esplayer destroyed
https://review.tizen.org/gerrit/#/c/302426/

[Other]
- Fix video_000 video tct
Fix manual tests "video_000" that expects reference frame
to be displayed on the screen.
https://review.tizen.org/gerrit/#/c/292260/
https://review.tizen.org/gerrit/#/c/292315/

- Do not mute when the playback rate is 2.0.
https://review.tizen.org/gerrit/#/c/296453/

- Keep last frame when receive EOS event
https://review.tizen.org/gerrit/#/c/298157/

- Fix browser main thread stuck issue
player_get_play_position called before prepared.
This sync api will block browser thread.
Only prepare complete, then call this api
https://review.tizen.org/gerrit/#/c/300201/

- Check an espp status before setting the buffer type.
https://review.tizen.org/gerrit/#/c/299286/

- Fix svace warning
https://review.tizen.org/gerrit/#/c/297825/

- Fixup! [MM] Ensure player is destroyed before IEMEDrmBridge
https://review.tizen.org/gerrit/#/c/302624/

Change-Id: I6c77f75da170119892803d3d943cf3422ac5a9df
Signed-off-by: Sun-woo Nam <sunny.nam@samsung.com>
tizen_src/chromium_impl/media/filters/esplusplayer_util.cc
tizen_src/chromium_impl/media/filters/media_player_esplusplayer.cc
tizen_src/chromium_impl/media/filters/media_player_esplusplayer.h
tizen_src/chromium_impl/media/filters/media_player_esplusplayer_common.cc
tizen_src/chromium_impl/media/filters/media_player_esplusplayer_tv.cc
tizen_src/chromium_impl/media/filters/media_player_esplusplayer_tv.h