Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

integration of default_audio_pid on live transcoding #12

Open
wants to merge 5 commits into
base: master
Choose a base branch
from

Conversation

anudanan
Copy link
Contributor

@anudanan anudanan commented Mar 6, 2019

need changed Streaming.py (identical to Streaming2.py in develop branch) of Components/Converter
and lib/dvb/pmtparse.cpp of enigma2

	need changed Streamin.py of Components/Converter
	and lib/dvb/pmtparse.cpp of enigma2
@eriksl
Copy link
Owner

eriksl commented Mar 6, 2019

I don't think this will work actually. The base is good but streamproxy now uses web/streaming as the link to owif and from there to enigma to get a handle on a demux that is connected to a tuned tuner and can be read from.

web/streaming is not changed and will not give you the default_pid.

For this to work, the web/streaming2 url needs to be added to OWIF (see my example code) and streamproxy needs to be adjusted to use that url.

I am not sure if the OWIF guys will allow for an entry that is almost exactly the same, just for use of streamproxy.

I don't think they will allow for the entry web/streaming be REPLACED by this version as it used by all sorts of external programs that may not be able to handle the extra information. Also, those programs rely on this entry to be protected by a basic http authentication, to perform their own authentication, while streamproxy requires the url to be free of basic authentication. This will be ok when the streaming2 url is added, because only literally "web/streaming" will require authentication from OWIF and not "web/streaming2".

@anudanan
Copy link
Contributor Author

anudanan commented Mar 6, 2019

With Enigmote and Dreamplayer it works fine. They don’t use the OWIF m3u file. i will make a additional test with the m3u file from OWIF

@eriksl
Copy link
Owner

eriksl commented Mar 6, 2019

It has nothing to with the client. It has to do with the interface between streamproxy and enigma. Streamproxy uses OWIF to request enigma to tune a tuner and setup a demuxer. In the same interface (the web/streaming url interface) enigma reports back to streamproxy what the pids are. As long as streamproxy uses web/streaming, it will never see the default audio pid, because that url doesn't send it.

I think you modified it locally on your own receiver, not?

@anudanan
Copy link
Contributor Author

anudanan commented Mar 6, 2019

The tests on my uno4kse works with a channel with german and french Audio. If I configure the autolanguage one to French, then I get the French audio pid in default_audio_pid and ist works perfect. I have without any change of OWIF. I have debugged and tested it

@eriksl
Copy link
Owner

eriksl commented Mar 6, 2019

Can't work. Try to set up a connection to OWIF just like streamproxy does. You'll see there is no default audio entry returned.

Either you are streaming and not transcoding (and streamproxy is not involved) or it's pure luck.

@anudanan
Copy link
Contributor Author

anudanan commented Mar 6, 2019

I have done this:
Installing enigma2 from developer branch. Modified Streaming.py in Components/Converter for providing default_audio_pid. My modifier streamproxy process. Then I get an default_audio_pid Info in livetranscoding-Broadcom.cpp. I must say, it works and the audio in transcoding stream was French if I selected French in the audio settings of enigma. Have you done it in the same way? In use the normal OWIF

@eriksl
Copy link
Owner

eriksl commented Mar 6, 2019

See the topic. We can't change the web/stream url, we will need to create a second one and adapt streamproxy to it. Otherwise I would have done it already weeks ago ;-)

@anudanan
Copy link
Contributor Author

anudanan commented Mar 6, 2019

My understanding from my code review and test is the following and that is really working
streamproxy call die web/stream url from OWIF and stream.py than calls Streaming.py from enigma2 under Compontents/Converter. The only is to change Streaming.py to provide over web/stream the new default_audio_pid answer. Why do you think streamproxy must call /web/stream2 and then Streaming2,py from enigma2. That are more changes and then there are changes in OWIF are neccessary. But there is no need from that.
If you tested on 7.0 enigma2, you can´t get default_audio_pid because a change in enigma is additional needed to a changes Streaming.py

I have tested the easy way and it works. I´ve seen with debugging in streamproxy that it gets default_audio_pid without changing OWIF.

…est."

This reverts commit 25a925c.

	webauth now used for /web/stream url as it was in the past
@eriksl
Copy link
Owner

eriksl commented Mar 10, 2020

Please more explanation with the last code change. Also make it into a separate pull request from the other, older requests.

Problem:
if no audiolang is specified  in streamproxy.conf then the fallback to an non AC3 track
didn´t work and no audio track was found. Only a AC3 track was found as fallback.
@anudanan
Copy link
Contributor Author

anudanan commented Mar 10, 2020

It is very difficult for me to make a second pull request. The git WEB if collect all changes to one pull request. I will read now some help pages to make separate pull request for different commit. I hope I will find a solution

workaround for pmt header find (eriksl#14)
@anudanan
Copy link
Contributor Author

I´ve made a new branch to create a separate pull request for the audiolang fix

#15

Sorry, for making trouble here in this pull request

@camelcamro
Copy link

did anyone compliled a version for vu+solo2 ?

@eriksl
Copy link
Owner

eriksl commented Jul 1, 2020

IIRC this already has been merged, via another PR.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants