Jump to content


Photo

DVB subtitles support in eServiceMP3/GStreamer

DVB Subtitles GStreamer

  • Please log in to reply
63 replies to this topic

Re: DVB subtitles support in eServiceMP3/GStreamer #21 DimitarCC

  • PLi® Contributor
  • 1,578 posts

+71
Good

Posted 28 October 2024 - 09:09

What about subtitles? It can be none selected and that will cause every 2-3 seconds refresh of the list till you select one...

That event is not for that or at least is not for that place in eServiceMP3...Constant requests for refreshing the audio and subtitle list is not good anyway.

So either audio/subtitle list update should be on different specific event or that one. All other solutions are hack imho.

Changing the audio/subs list update event however will cause a lot of incompatibilities with third party plugins. So i decided to break less by changing the events for tags ....

But FPS (what is the problematic now) can be get from the eAVSwitcher and should not rely on evUpdatedInfo....


Vu+DUO4KSE, DM920UHD, Vu+Uno4KSE, SF8008Mini, 2xPulse4K, Vu+Solo2, Dreambox DM500HD, Triax 78 (7E,9E,13E,19.2E,23.5E) & 2xTriax 78 (39E)


Re: DVB subtitles support in eServiceMP3/GStreamer #22 Beeker

  • PLi® Contributor
  • 1,607 posts

+203
Excellent

Posted 28 October 2024 - 15:16

Last commits servicemp3 from October 24, break title information Shoutcast (and probably more).

 

Result is always an empty string.

sTitle = self.currPlay.info().getInfoString(iServiceInformation.sTagTitle)

.


Edited by Beeker, 28 October 2024 - 15:17.

Dreambox dm920, Uclan Ustym4Kpro, Gigablue UHD TRIO 4K and Dreambox dm8000. Wavefrontier T55 13.0|19.2|23.5|28.2 + Ziggo.


Re: DVB subtitles support in eServiceMP3/GStreamer #23 Beeker

  • PLi® Contributor
  • 1,607 posts

+203
Excellent

Posted 28 October 2024 - 15:54

The __event function

 

https://github.com/O.../plugin.py#L946

 

Is called by navigation.py  dispatchEvent().

 

https://github.com/O...vigation.py#L86

 

Added to list of m_event

https://github.com/O...vigation.py#L34

 

When is working correctly, __event() Shoutcast will be called 5 times with EV value 5. Then the titile is grabbed.

 

Now with latest servicemp3 changes, __event() will be called once, with emtpy string as result.


Dreambox dm920, Uclan Ustym4Kpro, Gigablue UHD TRIO 4K and Dreambox dm8000. Wavefrontier T55 13.0|19.2|23.5|28.2 + Ziggo.


Re: DVB subtitles support in eServiceMP3/GStreamer #24 Dimitrij

  • PLi® Core member
  • 10,338 posts

+352
Excellent

Posted 28 October 2024 - 17:21

"Framerate": (self.FRAMERATE, (iPlayableService.evVideoFramerateChanged, iPlayableService.evUpdatedInfo)),

Use evVideoFramerateChanged
always N/A


GigaBlue UHD Quad 4K /Lunix3-4K/Duo 4K


Re: DVB subtitles support in eServiceMP3/GStreamer #25 DimitarCC

  • PLi® Contributor
  • 1,578 posts

+71
Good

Posted 28 October 2024 - 18:27

Last commits servicemp3 from October 24, break title information Shoutcast (and probably more).

 

Result is always an empty string.

sTitle = self.currPlay.info().getInfoString(iServiceInformation.sTagTitle)

.

 

Probably that is using evUpdatedInfo to get its data. Now that is changed to evUser+15. Try to use that and see is it working.

evUpdatedInfo is out of question to be used since it breaks any subtitle/ audio selection in eServiceMP3...


Vu+DUO4KSE, DM920UHD, Vu+Uno4KSE, SF8008Mini, 2xPulse4K, Vu+Solo2, Dreambox DM500HD, Triax 78 (7E,9E,13E,19.2E,23.5E) & 2xTriax 78 (39E)


Re: DVB subtitles support in eServiceMP3/GStreamer #26 DimitarCC

  • PLi® Contributor
  • 1,578 posts

+71
Good

Posted 28 October 2024 - 18:29

"Framerate": (self.FRAMERATE, (iPlayableService.evVideoFramerateChanged, iPlayableService.evUpdatedInfo)),

Use evVideoFramerateChanged
always N/A

 

 

Yes in PLi is N/A die to that there is no procedure to get the framerate from eAVSwitch.getInstance().getFrameRate(0)...As i mentioned there is no problem in OE-A distros...

 

just add

"Framerate": (self.FRAMERATE, (iPlayableService.evVideoFramerateChanged, iPlayableService.evUpdatedInfo, iPlayableService.evUser+15)),

That should return it as before.


Edited by DimitarCC, 28 October 2024 - 18:40.

Vu+DUO4KSE, DM920UHD, Vu+Uno4KSE, SF8008Mini, 2xPulse4K, Vu+Solo2, Dreambox DM500HD, Triax 78 (7E,9E,13E,19.2E,23.5E) & 2xTriax 78 (39E)


Re: DVB subtitles support in eServiceMP3/GStreamer #27 Beeker

  • PLi® Contributor
  • 1,607 posts

+203
Excellent

Posted 29 October 2024 - 08:09

 

Last commits servicemp3 from October 24, break title information Shoutcast (and probably more).

 

Result is always an empty string.

sTitle = self.currPlay.info().getInfoString(iServiceInformation.sTagTitle)

.

 

Probably that is using evUpdatedInfo to get its data. Now that is changed to evUser+15. Try to use that and see is it working.

evUpdatedInfo is out of question to be used since it breaks any subtitle/ audio selection in eServiceMP3...

 

 

The only way to fix title of song, I found so far, is to use evUpdatedInfo as argument again.

m_event((iPlayableService*)this, evUpdatedInfo);

https://github.com/O...cemp3.cpp#L2041


Edited by Beeker, 29 October 2024 - 08:11.

Dreambox dm920, Uclan Ustym4Kpro, Gigablue UHD TRIO 4K and Dreambox dm8000. Wavefrontier T55 13.0|19.2|23.5|28.2 + Ziggo.


Re: DVB subtitles support in eServiceMP3/GStreamer #28 DimitarCC

  • PLi® Contributor
  • 1,578 posts

+71
Good

Posted 29 October 2024 - 09:08

 

 

Last commits servicemp3 from October 24, break title information Shoutcast (and probably more).

 

Result is always an empty string.

sTitle = self.currPlay.info().getInfoString(iServiceInformation.sTagTitle)

.

 

Probably that is using evUpdatedInfo to get its data. Now that is changed to evUser+15. Try to use that and see is it working.

evUpdatedInfo is out of question to be used since it breaks any subtitle/ audio selection in eServiceMP3...

 

 

The only way to fix title of song, I found so far, is to use evUpdatedInfo as argument again.

m_event((iPlayableService*)this, evUpdatedInfo);

https://github.com/O...cemp3.cpp#L2041

 

 

What i dont get is why that shoutcast plugin uses the event from navigation and not utilize the events like in every other screen....

 

m_event((iPlayableService*)this, evUpdatedInfo); only rise evUpdatedInfo event. in other case it rise evUser+15 (which seems is not handled in the plugin)....

 

I am not familiar nor ever used that shoutcast plugin so i dont know but it looks to me as design issue....

 

P.S. What you can try is:

 

in here 

 

https://github.com/O.../plugin.py#L955

elif ev == 5:
   if not self.currPlay:
........

replace with


elif ev == 5 or ev == 271:
   if not self.currPlay:

That will handle the new event evUser+15.....


Edited by DimitarCC, 29 October 2024 - 09:14.

Vu+DUO4KSE, DM920UHD, Vu+Uno4KSE, SF8008Mini, 2xPulse4K, Vu+Solo2, Dreambox DM500HD, Triax 78 (7E,9E,13E,19.2E,23.5E) & 2xTriax 78 (39E)


Re: DVB subtitles support in eServiceMP3/GStreamer #29 Beeker

  • PLi® Contributor
  • 1,607 posts

+203
Excellent

Posted 29 October 2024 - 09:31

Yes that works.

Thanks.

 

I'll create PR for Shoutcast.


Dreambox dm920, Uclan Ustym4Kpro, Gigablue UHD TRIO 4K and Dreambox dm8000. Wavefrontier T55 13.0|19.2|23.5|28.2 + Ziggo.


Re: DVB subtitles support in eServiceMP3/GStreamer #30 WanWizard

  • PLi® Core member
  • 70,590 posts

+1,819
Excellent

Posted 29 October 2024 - 10:52

Merged.


Currently in use: VU+ Duo 4K (2xFBC S2), VU+ Solo 4K (1xFBC S2), uClan Usytm 4K Ultimate (S2+T2), Octagon SF8008 (S2+T2), Zgemma H9.2H (S2+T2)

Due to my bad health, I will not be very active at times and may be slow to respond. I will not read the forum or PM on a regular basis.

Many answers to your question can be found in our new and improved wiki.


Re: DVB subtitles support in eServiceMP3/GStreamer #31 Beeker

  • PLi® Contributor
  • 1,607 posts

+203
Excellent

Posted 29 October 2024 - 12:09

Thanks.


Dreambox dm920, Uclan Ustym4Kpro, Gigablue UHD TRIO 4K and Dreambox dm8000. Wavefrontier T55 13.0|19.2|23.5|28.2 + Ziggo.


Re: DVB subtitles support in eServiceMP3/GStreamer #32 Dimitrij

  • PLi® Core member
  • 10,338 posts

+352
Excellent

Posted 29 October 2024 - 18:09

"Framerate": (self.FRAMERATE, (iPlayableService.evVideoFramerateChanged, iPlayableService.evUpdatedInfo, iPlayableService.evUser+15)),

Done, show N/A

fps visible only iptv service press key pause.


GigaBlue UHD Quad 4K /Lunix3-4K/Duo 4K


Re: DVB subtitles support in eServiceMP3/GStreamer #33 DimitarCC

  • PLi® Contributor
  • 1,578 posts

+71
Good

Posted 29 October 2024 - 19:44

"Framerate": (self.FRAMERATE, (iPlayableService.evVideoFramerateChanged, iPlayableService.evUpdatedInfo, iPlayableService.evUser+15)),

Done, show N/A

fps visible only iptv service press key pause.

 

So i am not sure where you get N/A.....

 

On my side i get the FPS in service information and in second infobar.... Dont know where is the problem....

 

 

Attached File  fps.png   242.77KB   1 downloads

 

Or are you mean for media files play?


Edited by DimitarCC, 29 October 2024 - 19:44.

Vu+DUO4KSE, DM920UHD, Vu+Uno4KSE, SF8008Mini, 2xPulse4K, Vu+Solo2, Dreambox DM500HD, Triax 78 (7E,9E,13E,19.2E,23.5E) & 2xTriax 78 (39E)


Re: DVB subtitles support in eServiceMP3/GStreamer #34 Dimitrij

  • PLi® Core member
  • 10,338 posts

+352
Excellent

Posted 30 October 2024 - 06:14

Stream service,infobar.

    <widget backgroundColor="#00152f44" font="Regular;24" foregroundColor="#00dedede" halign="right" position="1070,34" render="Label" size="70,33" source="session.CurrentService" transparent="1" zPosition="1">
      <convert type="ServiceInfo">Framerate</convert>
    </widget>

 


GigaBlue UHD Quad 4K /Lunix3-4K/Duo 4K


Re: DVB subtitles support in eServiceMP3/GStreamer #35 Dimitrij

  • PLi® Core member
  • 10,338 posts

+352
Excellent

Posted 30 October 2024 - 17:16

DimitarCC

 

Maybe problem this?

 

 

https://github.com/O...74ac2d7a8cR2152

 

Simple add

			if (hasChanges)
			{
				eTrace("[eServiceMP3] audio or subtitle stream difference -- re enumerating");
				m_audioStreams.clear();
				m_subtitleStreams.clear();
				std::copy(audioStreams_temp.begin(), audioStreams_temp.end(), back_inserter(m_audioStreams));
				std::copy(subtitleStreams_temp.begin(), subtitleStreams_temp.end(), back_inserter(m_subtitleStreams));
				eTrace("[eServiceMP3] evUpdatedInfo called for audiosubs");
				m_event((iPlayableService*)this, evUpdatedInfo);
			}
+			else
+				m_event((iPlayableService*)this, evUser+15);

 


GigaBlue UHD Quad 4K /Lunix3-4K/Duo 4K


Re: DVB subtitles support in eServiceMP3/GStreamer #36 DimitarCC

  • PLi® Contributor
  • 1,578 posts

+71
Good

Posted 30 October 2024 - 17:37

Hmm that should have nothing to do with refreshrate in my opinion.... I cant understand how that can stop showing suddently...

Vu+DUO4KSE, DM920UHD, Vu+Uno4KSE, SF8008Mini, 2xPulse4K, Vu+Solo2, Dreambox DM500HD, Triax 78 (7E,9E,13E,19.2E,23.5E) & 2xTriax 78 (39E)


Re: DVB subtitles support in eServiceMP3/GStreamer #37 Dimitrij

  • PLi® Core member
  • 10,338 posts

+352
Excellent

Posted 30 October 2024 - 18:04

skin PLi-FullNightHD

lower right corner N/A

press play/pause key --->fps show

Attached Files


GigaBlue UHD Quad 4K /Lunix3-4K/Duo 4K


Re: DVB subtitles support in eServiceMP3/GStreamer #38 Dimitrij

  • PLi® Core member
  • 10,338 posts

+352
Excellent

Posted 31 October 2024 - 08:42

Hmm that should have nothing to do with refreshrate in my opinion.... I cant understand how that can stop showing suddently...

And?


GigaBlue UHD Quad 4K /Lunix3-4K/Duo 4K


Re: DVB subtitles support in eServiceMP3/GStreamer #39 DimitarCC

  • PLi® Contributor
  • 1,578 posts

+71
Good

Posted 31 October 2024 - 10:32

Well i would use the attached ServiceInfo.py.....

And that parameters should not be got from service information but from drivers.

Often service information doesn't report them right.

Attached Files


Vu+DUO4KSE, DM920UHD, Vu+Uno4KSE, SF8008Mini, 2xPulse4K, Vu+Solo2, Dreambox DM500HD, Triax 78 (7E,9E,13E,19.2E,23.5E) & 2xTriax 78 (39E)


Re: DVB subtitles support in eServiceMP3/GStreamer #40 Dimitrij

  • PLi® Core member
  • 10,338 posts

+352
Excellent

Posted 31 October 2024 - 12:02

 

Well i would use the attached ServiceInfo.py.....

And that parameters should not be got from service information but from drivers.

Often service information doesn't report them right.

 

I agree that this option may work, but it will not be accepted in OpenPLi, since it is a workaround.

 

Just add this code

			if (hasChanges)
			{
				eTrace("[eServiceMP3] audio or subtitle stream difference -- re enumerating");
				m_audioStreams.clear();
				m_subtitleStreams.clear();
				std::copy(audioStreams_temp.begin(), audioStreams_temp.end(), back_inserter(m_audioStreams));
				std::copy(subtitleStreams_temp.begin(), subtitleStreams_temp.end(), back_inserter(m_subtitleStreams));
				eTrace("[eServiceMP3] evUpdatedInfo called for audiosubs");
				m_event((iPlayableService*)this, evUpdatedInfo);
			}
+			else
+				m_event((iPlayableService*)this, evUser+15);

 

 

 

 

GigaBlue UHD Quad 4K /Lunix3-4K/Duo 4K




9 user(s) are reading this topic

0 members, 9 guests, 0 anonymous users