Wordpress audio playlist skipping tracks - wordpress

I have an audio playlist in a Wordpress site. When I'm playing the tracks, if the playback of the track catches up with the download of the track, instead of pausing or buffering, it just skips to the next track.
Is there a way I can stop it doing that and instead just let it pause the playback while the download continues?
When I'm on a fast internet connection, it works fine, but when I'm on (for example) my phone, it can't download as fast. I get a diagonal stripe on the replay control, and then it just skips to the next track.
If there's not a convenient setting that works here, maybe there's a way I can put a small delay in the playback of each track to enable the download to get a head start?
Many thanks in advance.

Related

YouTube iframe looping video unavailable on first load

I embed a video on a Blazor-powered static page. I want the video to loop. According to docs (https://developers.google.com/youtube/player_parameters#loop), I need to have both loop and playlist params. Easy enough.
So I generate URL like this: https://www.youtube-nocookie.com/embed/tFbVZCbLhOk?autoplay=1&loop=1&modestbranding=1&disablekb=1&playsinline=1&rel=0&fs=0&playlist=tFbVZCbLhOk&controls=1&origin=http://localhost:5134 - as you can see, loop is set to 1, and playlist is set to the same video itself tFbVZCbLhOk.
The problem I am having is that when the video is embedded (or the link is accessed directly - the issue occurs there as well), it errors with This video is unavailable. Refreshing the page fixes that, however it of course is less than perfect. I am not sure what causes this, as some videos appear to randomly work on first attempt - but it's inconsistent, cause the same video might fail other time.
Removing the playlist param fixes the issue, but then the video doesn't loop properly, which is even worse for my use case.
I am not sure if it's a regression on YouTube's side, as a month or two ago, I did not have that issue - I think so at least.
It also seems like it's not bound to the tab or anything like that - when I open video once, next time I open it on a separate tab, it works - almost like if YT took its sweet time to create playlist for the video, but that's just my guess
I tried your video sample (i.e. tFbVZCbLhOk) and with the following code (which I modified from this answer), and the looping of the video works fine:
https://www.youtube.com/embed/tFbVZCbLhOk?enablejsapi=1&loop=1&playlist=tFbVZCbLhOk&autoplay=1&rel=0&showinfo=0&color=white
Probably what you're describing is another YouTube undocumented change.
<iframe onload="this.src+='';this.onload='';"
This reload once the iframe and after that it stops. I hope it will help you.

omxplayer not loading a playlist file

So i'm trying to make my raspberry pi play a bunch of video files on it's own.
I got omxplayer setup and working to actually play video to the screen the pi is connected to and not the remote terminal and also working with the usb sound card.
(the pi is connected to composite video not hdmi and I couldn't get audio ova gpio working and this is a pi zero w so no headphone jack, so yes it's an odd setup)
I also setup an sh script to play video files.
and so on..
However, when it's finished with one video file and changes to another, the pi will show the terminal for a second while it loads the next video and then will play that video. I would like it if it didn't have to keep loading new individual omxplayer commands like this.
a workaround hack would be to some how blank the display of the terminal so I just get a second of black screen and then the next video. But what I would really like to do is to just make a playlist file and play that.
I tried m3u, m3u8, xspf and even html but I got nothing.
I saw a script that mentioned a .pls playlist so I tried to make one of those, that indeed did seem to load something but didn't play it?
I tried editing in an absolute file path and just the normal file name and got the same result.
Temp hacks would be some how blanking the terminal display on the pi its self
or using something like ffmpeg to just combined all my videos into one huge video file, but I think a playlist file is going to be better in the long run, just have to figure out what playlist format omxplayer is happy with.

Youtube full iframe player with no cookies - Can it be done?

I am trying to create a page with a standard youtube iframe player. It will play a video and when the first video finishes, it will use loadVideoById to load and play a second, and then after it finishes a third video.
The problem I have is that since I have partially watched the second (and third) video while signed into my youtube account, when the second (and third) video plays, it picks up from where I left off watching it on youtube, instead of starting from the beginning, and I don't want this to happen to anyone else who visits the site.
If I open the page in an incognito window it works as expected, so I know my code is good. If I just use an iframe and embed the video using youtube-nocookie.com as the domain (instead of just youtube.com) the videos start from the beginning. I could get away with using this method except I can seem to detect when the first video ends so I can change the iframe's source to start the next video.
I'm looking for any advice on either being able to detect when a youtube video ends in an iframe, or a way of using the full player with no cookies, or something (anything) else that will accomplish this task.

Play video from an intermediate point

I am in the middle of an application that has a module to play videos from a directory on the same web-server. Everything is fine, except for the point that, while video is streaming, if I try to drag the player tip to an intermediate point, it either drags back to where it was(in flex player) or keeps loading un-till the video actually approaches that point(in case of jw-player or html5 player) or does nothing(in some other online players available). My client wants to be able to play or start buffering from any desirable point. I read something about RTMP to be used for such thing, but wasnt able to find a direct guide over how to do it.
Help appreciated!
If you're talking about being able to load a video file from x seconds in to the video, you should look into http pseudo-streaming. Here's a link to the jwplayer page about it: jwplayer pseudo-streaming

How does YouTube prevent video content from being saved/redistributed?

Sure, you can embed a YouTube video on any site, but the content ultimately must come from their server. What technology(ies) do they have that prevents us from saving/redistributing content?
From a protocol standpoint, you would think that anything that comes over the wire could be saved. I hope I am not the only guy on Earth who does not know how to "save" a YouTube video...
There are a couple of plugins for Firefox out there that let you save the content. Basically it parses the sourcecode and looks for the videofile (either .flv or .mp4) and downloads that directly. The flash player on the page just plays the supplied file. They could of course obfuscate the path to the video file, but that can be reverse engineered as well. They can't really do anything about it, because the video file has to be on the user's computer at some point, or if not, the stream could be intercepted as well.
eg. https://addons.mozilla.org/de/firefox/addon/6584/?src=api
Mostly it's a legal deterrent rather than technical. There are a plethora of programs out there that will allow you to download their video. But there are two things they do that help reduce unauthorized downloads:
Use is flash to control the download and playback.
Hosting video yourself is not cheap, and thus it's much easier to simply leave the video on youtube.
They don't do anything about it. Very likely your Flash viewer downloads a copy and puts in somewhere on your harddrive (under my Linux system with Firefox and Adobe Flash in /tmp). After you are done viewing the file is removed to save disk space, but since it is on your harddrive nothing prevents you from making a copy elsewhere.
You might want to look at the 'analogue hole', in the end, data still has to be displayed on your screen, or get through your speakers and what not. It's always theoretically possible to intercept it at that point, or even just record your audio-out into another machine.
So as far as the analogue hole goes, the only solution is to skip that, in this form:
(source: thisdomainisirrelevant.net)
Which is not that marketable.

Resources