B4A Library ExoPlayer - MediaPlayer / VideoView Alternative

Status
Not open for further replies.

JOTHA

Well-Known Member
Licensed User
Longtime User
Hello Forum,

i want to show 3 or 4 videos from youtube one after the other with the ExoPlayer.
Unfortunately, this does not work at the moment.

If I copy the string from the video into the PC browser, then the video is displayed on the PC.
But if I add the string with ExoPlayer to the list (in the code) and start the app, it does NOT work.

This example here works well:
B4X:
sources.Add (player1.CreateHLSSource ( "https://devimages.apple.com.edgekey.net/streaming/examples/bipbop_4x3/bipbop_4x3_variant.m3u8"))

... but this code does NOT work (it is a Tutorial for B4A Beginners on YouTube):
B4X:
Sources.Add (player1.CreateHLSSource ("https://www.youtube.com/watch?v=DmBXrwEYUMQ"))

The error message from the Logfile:
com.google.android.exoplayer2.ParserException: Failed to parse the playlist, could not identify any tags.

The question is: Which tags should be identified?
There are no tags defined in the working example code above.

The app should show 3-4 videos, which are stored on YouTube and it should be possible to choose a video by clicking on a Spinner.
... but in the moment I do not get even one single video to run!

Could someone please post an example code, wich can display for example the "Tutorial for B4A-Beginners" or another video on YouTube?

Thank you in advance ... i'm grateful for every tip.
 

Ehsan Tamjidi

Member
Licensed User
Longtime User
hi there
I know this is too late
Generating R File Error on release but I have no issues with debug mode, thanks for your answers

cheers
 

Kwame Twum

Active Member
Licensed User
Longtime User
Hello, everyone.
I used an api [saveitoffline - https://www.saveitoffline.com/api/] to get video url from a source which exoplayer couldn't play directly.
The resulting url from one of them is: https://www.saveitoffline.com/get/?i=dxRJIKd8u6krPBi4Rx2AcJ0ide6inyJp

The above url when directly accessed attempts to download the video, indicating it indeed has been saved.
However, I get errors when I try to create a source out of the url. Below are the errors.
B4X:
'vi is a SimpleExoPlayer instance
'act is the url derived from the api

vi.Prepare(vi.CreateHLSSource(act)) 'Error: com.google.android.exoplayer2.ParserException: Failed to parse the playlist, could not identify any tags.

vi.Prepare(vi.CreateUriSource(act)) 'Error: com.google.android.exoplayer2.source.ExtractorMediaSource$UnrecognizedInputFormatException: None of the available extractors (MatroskaExtractor, FragmentedMp4Extractor, Mp4Extractor, Mp3Extractor, AdtsExtractor, Ac3Extractor, TsExtractor, FlvExtractor, OggExtractor, PsExtractor, WavExtractor) could read the stream.

vi.Prepare(vi.CreateDashSource(act)) 'Error: com.google.android.exoplayer2.ParserException: inputStream does not contain a valid media presentation description

vi.Prepare(vi.CreateSmoothStreamingSource(act)) 'Error: com.google.android.exoplayer2.upstream.HttpDataSource$InvalidResponseCodeException: Response code: 404

Any idea what could be done about this?
 

analizer3816

Member
Licensed User
Longtime User
B4X:
<?xml version="1.0" encoding="UTF-8"?>
<Error><Code>AccessDenied</Code><Message>Access Denied</Message><RequestId>27BB93CADACCC7FA</RequestId><HostId>6Ghq8BqFyzfeZQEj6NQQqfZsz07jNrIvZHUpF6tqewslnri9nS1ezC/8/0gpTt4zw5jBLD3oDsE=</HostId></Error>

I open this file and got this, can you give me source url?
B4X:
<?xml version="1.0" encoding="UTF-8"?>
<Error><Code>AccessDenied</Code><Message>Access Denied</Message><RequestId>27BB93CADACCC7FA</RequestId><HostId>6Ghq8BqFyzfeZQEj6NQQqfZsz07jNrIvZHUpF6tqewslnri9nS1ezC/8/0gpTt4zw5jBLD3oDsE=</HostId></Error>
 

Kwame Twum

Active Member
Licensed User
Longtime User
Thanks for the assistance, will try it out.
 

cruzeiro991

Member
Licensed User
Longtime User
Hello.
I'm trying to make a app to play streamings by uri but the exoplayer only plays the first url, after release, initialize and create new resource it's play the same video. What's happening?
 

Lucas Eduardo

Active Member
Licensed User
How can i play https video in exoplayer? Because when i try to play in VLC, for example, It ask me to accept the certificate. Is there a way to do this in exoplayer?



I get the following error Error: com.google.android.exoplayer2.upstream.HttpDataSource$HttpDataSourceException: Unable to connect to https://.....rest of the link
 

Shivito1

Active Member
Licensed User
There are examples here : https://www.b4x.com/android/forum/threads/exoplayer-mediaplayer-videoview-alternative.72652/#content

You may need to get the direct link for the video you wish to stream. In the past I have used YouTube-dl Which is not a library but an executable I ran on my computer. Sometimes you can find a direct link in the source code of the webpage. Not simplistic nore automated approach though.
 
Status
Not open for further replies.
Cookies are required to use this site. You must accept them to continue using the site. Learn more…