Introducing Anytime podcast app and seeking VoiceOver feedback

By Ben Hills, 10 April, 2024

Forum
iOS and iPadOS

Hi everyone,

I have developed a free and open source podcast app, called Anytime Podcast Player, which is available for iOS and Android. I've been working on improving accessibility within the app and particularly the screen reader support, but I know there is more improvements to be made and I was recommended this forum - thank you Robert.

I would be very grateful for any feedback, tips or suggestions that can help me improve the accessibility in Anytime and make it a better app if anyone would like to try it.

It's available on the App Store: https://apps.apple.com/us/app/anytime-podcast-player/id1582300839#?platform=iphone

Many thanks,

Ben.

Options

Comments

By Mlth on Wednesday, April 10, 2024 - 10:24

I'm looking forward to giving it a spin!
It's always wonderful to experience a developer who considers accessibility and solicits feedback from the community - kudos from here!

Best
M

By Dave Nason on Wednesday, April 10, 2024 - 10:24

Member of the AppleVis Editorial Team

Hi Ben,
Thanks for reaching out on this. I had read about the app on Mastodon so had been meaning to check it out.
I’ve just downloaded it, so will send on some more feedback in the coming days, but a couple of things I’ve noticed straight away:
In Settings, VoiceOver doesn’t call out headings, so I don’t know what is a section heading and what is a selectable item.
When I opened the Search Provider option, I can’t back out of it unless I change my current selection.
The layout options do not tell me which one is currently selected.
Where there are switches, such as Dark Theme, it’s nicer if the item and the switch are contained in a single VoiceOver element.
On a related note, it’d be nice if light / dark mode could also simply follow my system choice. i.e. choose Light, Dark or System.
Outside of accessibility, will there be global settings for things like how many episodes of a podcast to keep, playback speed, and ability to stream rather than download?
One thing I like straight away is that the Discovery section appears to be localised, that’s the one thing that annoys me in Overcast, which just seems to promote what’s popular in America.
Cheers,
Dave

By Ben Hills on Wednesday, April 10, 2024 - 10:24

Thanks everyone for the initial feedback.

Dennis - after I received your email the other day, I have been looking into the rotor features within VoiceOver. Unfortunately, it looks like the tools I use to build this app do not currently support Rotor. I'm still researching this, and I'm hoping there is a solution.

Dave - thanks for the feedback around the UI, I will implement all of those fixes. There is also an open issue for updating the theme handling to default to the system theme, so that will be fixed too.

Outside of the accessibility issues, yes, I do have plans for things like auto downloads and keeping only so many episodes. Anytime does support different playback speeds, and it is a global setting, but it is accessed from the main player screen - if you adjust the speed for one podcast, it will stick with that speed for all.

Anytime will stream an episode by default, unless you have previously downloaded it. One piece of feedback I received is that, with the download and play buttons next to each episode in the list, it takes a lot of swipes to move through the episodes. I'm looking at ways I can improve this.

By Brad on Wednesday, April 10, 2024 - 10:24

I think sounds might be nice, kind of like how downcast does it.

they have a similar issue where you have episode one, then a more info button about episode 1 so you do have to do a lot of flicking.

Of course you'd be able to turn the sounds on and off too, I might like sounds but others won't, and they should be very short too.

I'll check this out once a couple more things have been added.

It would be really nice if you could use the rotor actions to speed things up quite a bit, I understand from your point of view it would probably be very annoying to remake the app and change the language/framework its built in, and if that's not something you're willing to do I understand but it would make things quite a bit faster for us.

Unfortunately as far as I know; that rotor kind of thing doesn't exist with android so if you want to keep it the same across the board that's also understandable.

By Dave Nason on Wednesday, April 10, 2024 - 10:24

Member of the AppleVis Editorial Team

Thanks Ben, sounds good.
Glad there is a speed setting, though personally I prefer when there is a global setting and a per podcast setting. This is because there are certain podcasts I always listen to at a higher speed. I appreciate though that this is not a VoiceOver accessibility thing.
Yes, the multiple swipes to get through a list is a frustration. The Actions menu would definitely be the most elegant and user friendly approach for VoiceOver users if it can be done. Brad is incorrect, TalkBack on Android does also support Actions, though I’ve no idea how similar or different the implementation is.
Another option could be to put such controls into a context menu, but that may not work so well for non-VoiceOver users, unless there’s a way around that.
Dave

By Brad on Wednesday, April 10, 2024 - 10:24

I'm glad I'm incorrect.

I did end up downloading the app and have noticed when importing an OPML file there's no import from overcast or downcast options, could that be a thing that's added?

I hope this podcast app becomes what I need, I don't mind paying for apps but free is always great :)

Another thing is volume boost, that's a big paid for feature on overcast and I believe downcast too.

Oh and also it would be nice if we could leave and read reviews on podcasts as you can't seam to do that with overcast and downcast.

You might want to also think about adding a donate button to help keep the app up on the app stores.

By kool_turk on Wednesday, April 10, 2024 - 10:24

I can't seem to find the chapters for some of the podcasts I'm subscribed to.

I'm wondering if it supports chapters, because I don't see it with Voiceover.

But I do like the fact that I can import and export OPML files, something you can't do with Apple's native Podcasts app.

By Ben Hills on Wednesday, April 10, 2024 - 10:24

Brad - the sounds idea is an interesting one. I might pick up a copy of Downcast and see how it does it. The Rotor support is a bit frustrating, though I will do some more research. In my limited testing with it, the words & characters options do seem to work on blocks of text.

OPML import at the moment launches the file selector for you to pick a file. What I plan to do is support sharing so, for example, you can do an export in Downcast as a share and pick Anytime as the app to share with.

Dave - At the moment, each episode item line displays the episode image, title details with the download and play buttons to the right. Double tapping an episode line expands to show further controls. One idea I have had, is to move the download and play controls into the expanded section. This means that each swipe right would move down another episode. When you want to play an episode, double tap to expand the options and swipe to play. I would also make this UI change an option within settings. What do you think of that idea?

Brad - volume boost is on the to-do list. I have this working on the Android version, but have yet to get it working on iOS - but I'll get there :)

kool-turk (great handle). Anytime supports Podcasting 2.0 chapters, but not chapters embedded in the MP3 which is how I think Apple Podcasts handles them. For episodes that have PC2.0 chapters, there will be an additional tab entry in the main player.

By kool_turk on Wednesday, April 10, 2024 - 10:24

Your idea sounds like a better way to quickly scroll through episodes.

It would certainly cut down on the swipes just to get to the next episode.

I was wondering if there is a way to refresh podcasts manually.

I prefer to update my feeds manually and most podcast clients that I have used have a refresh button.

On Windows, I'm currently using Grover Podcast, and it meets my needs.

It just doesn't have a volume booster or a caption option.

Although, I think captioning podcasts is more of an Apple thing, unless podcasters do it themselves.

I only know of one podcast that does it, and he was captioning his podcast before Apple decided to add captions to podcasts in their directory, but only for podcasts in their directory.

That's the clincher - they have to be in the Apple Podcast directory before they can be captioned by their AI.

Wow, talk about going off on a tangent.

I haven't tried exporting podcasts yet with this app, I mean, it seems easy enough.

I'm wondering how I would get the OPML file from my phone to, say, a Windows PC.

I guess I'll just have to play with it some more.

By Ben Hills on Wednesday, April 10, 2024 - 10:24

A manual refresh is possible by performing a pull-down gesture on the podcast details page; however, this doesn't work well with VoiceOver or TalkBack and it's not very obvious. I will add a manual refresh option to the menu button to the right of the follow/unfollow button.

The new Apple transcript generation does only work in Apple Podcasts, but if there is an external Podcasting 2.0 transcript in the feed, Apple will honor that. I am hoping this will start to bring the price of transcript services down so more podcasters can use them and they can appear in more apps - not just Apple Podcasts.

To export an OPML file from Anytime and get it in to Grove, the way I would do it is to setup a folder share on the Windows PC. Then, in the Apple Files app, use the 'Connect to server' option to connect to that share. Once that is in place, the files app should remember that share from then on.

In Anytime (or any podcast app that can export) you can select the OPML Export option and share it with the files app. In the files app, navigate to the share on the Windows PC and save the file there. In Grove you can then import the OPML file from that share. It's a bit of a fiddle to setup, but once done it's a useful way to get the files across. I use this method myself quite a lot, when I need to transfer OPML files between Android & iOS when I am testing.

By Dave Nason on Wednesday, April 10, 2024 - 10:24

Member of the AppleVis Editorial Team

Hi again.
1. Yes, I think that idea of moving all controls into the expanded section would work pretty well. The way VoiceOver is currently speaking on these list items is a problem however. On each item, VoiceOver first speaks "Episode list item, showing image, summary and main controls", before speaking the episode title etc. This kind of verbosity is incredibly irritating and would immediately put me off using the app. VoiceOver should just speak the episode details. At the end of the details, you could have it simply say something shorter like "Controls collapsed" or "Controls expanded". But it'd be important this is after the episode title etc, not before them.
1a. It's probably still worth exploring the Actions menu in the rotor as it's a very familiar control, but the above could work well I reckon. Yes, you should get the likes of Characters, Words etc in the rotor for free so to speak, but I don't know what is required to get Actions. Hopefully other developers can help you.
1b. When I do expand the full controls, and then select the More button, a couple of things confuse me. A control says "Collapsed, double tap to expand" - I can't tell what this does as nothing further seems to expand beyond what is already. Also, if I swipe to the last item, it is something VoiceOver calls "Scrim" - what is this?
2. When on the main screen for a podcast with the list of episodes, there is a button next to Unfollow and Options Menu called Sleep Timer. Is this an incorrect label? The items in the menu seem to be an episode filter feature. Plus this menu also includes something called Scrim.
3. There's a default VoiceOver gesture called the "scrub" which acts as Escape / Back. Often it would be our equivalent to swiping from left to right to go back, that sighted users would do. While that sighted method is working in the app, I've noticed the VoiceOver scrub gesture though is not, meaning we have to find the Back button to go back.
4. I'm having problems scrolling long lists.
4a. Firstly, when I scroll a list of episodes using the three finger up / down gestures (our equivalent to swiping up / down with one finger for sighted users), I'm not getting the normal sound, spoken or haptic feedback I'd expect.
4b. There is no vertical scrollbar on the right of the screen. I don't know about anyone else, but I find this incredibly useful for quickly scrolling long lists.
5. I had some issues importing an OPML file. I found the option and selected the file no problem. However the import got stuck at 10% progress, with the name of a podcast on screen. My best guess is that the podcast it got stuck on no longer exists in the iTunes library or whatever, but I had no option to simply skip it. I had to cancel the whole operation, and was left with only 10 of the 80 or so podcasts I was trying to import.
Cheers,
Dave

By Ernesto melendez on Wednesday, April 17, 2024 - 10:24

I think the developer didn't get the concept of what the router option actions does for us. So the facebook app is an example of how actions work. Not a good one, but still. Visually, the app shows the like, comment and more buttons to the right of posts like the episode list does for the player, but to Voiceover, you have to set the router to the actions option and swipe up and down to see the set of options, like, comment etc, Too voiceOver the visual like comment and more button's aren't shown. once the post is opened, the facebook post has all the buttons shown. but on the list of posts it uses the actions router option. so For the podcast player, you could have the actions to play, download, etc in the voiceover actions menu, and not in the way of scrolling through episodes or podcasts. Maybe someone can explain this much much better than i can, but hopefully this kind of helps a bit.

By Ben Hills on Wednesday, April 17, 2024 - 10:24

Hi Dave,

Thank you for the detailed feedback, I really appreciate it.

1. Thanks. I will experiment with moving the controls around, or maybe taking a leaf out of Overcast's book and moving the controls to a popup menu when the screen reader is on. I will re-work and reduce the amount of speech on the items and move the more prominent information to the start of what is read out. I can see that the level of verbosity I have on some items would quickly become irritating.

1b. Not sure why that item is saying collapsed - it shouldn't. The more option control appears as a popup panel at the bottom of the screen; the area outside of the panel is called the scrim. Double tapping that closes the panel. I'm not sure why it's called a scrim, and if VoiceOver reading it out is the correct behaviour. I'll look into that.

2. Yes, apologies, that is a mis-label and should read Episode filter.

3. I will look to add the scrub gesture for back control.

4. Comparing the scroll behaviour with Apple Podcasts, Anytime is not working the same way. The scroll gesture works, but it does not page in the same way. I will do some more research on how it should behave.

5. Would you mind sharing your OPML file and sending it to me at ben@anytimeplayer.app? I've had a few users reporting the OPML import getting stuck, but I've yet managed to reproduce it.

By Ben Hills on Wednesday, April 17, 2024 - 10:24

Thanks Ernesto, that's really helpful. I will take a look at the Facebook app.

You're right, the various actions available in VoiceOver are new to me. From the feedback I am receiving, I realise that my screen reader testing has focused around the common features offered by VoiceOver and TalkBack, but that both technologies offer additional features that I need to look at.

By Dave Nason on Wednesday, April 17, 2024 - 10:24

Member of the AppleVis Editorial Team

Hi. No worries, I've sent you that OPML file now.
I also have a question. I selected the Add To Queue button on a few podcast episodes, but I can't find the queue anywhere? I can find downloaded episodes no problem, but that seems to be different. Where do episodes you add to queue go?
Dave

By Ben Hills on Wednesday, April 17, 2024 - 10:24

Hi Dave,

At the bottom of the main player window, there is a slide up/tap to expand panel that contains two buttons: one for the queue labelled 'Up Next' and the other for transcripts, if the podcast supports it.

I've had a few people ask to make the queue available outside of the player window, so that's on my list too.

Thanks,

Ben.

By Chris on Wednesday, April 17, 2024 - 10:24

Custom action support would be super useful. You swipe up and down when focused on a control to quickly access common actions. For example in the iOS Mail app, swipe up and down to quickly do things like delete messages, or edit icons on the home screen. TalkBack supports these as well, but I'm not sure if it's available to third-party apps. The only places I've found support for it are the Pixel Launcher and Gmail. I'm using a Pixel 7 with the latest version of TalkBack and Android 14, so I'm not sure if it's different on other devices. I prefer Pixel phones because just like the iPhone, you know exactly what you're getting.

By Ben Hills on Thursday, October 3, 2024 - 10:24

Hi everyone,

Some months back, members of this forum very kindly tried out my podcast app and gave me some great feedback on how I could further improve the accessibility support. The top 3 takeaways were:

1. Reduce the amount of swiping required to navigate the app.
2. Reduce the verbosity of the text being read out by VoiceOver.
3. Add support for the Rotor to further improve navigation.

Rotor support is, unfortunately, still on hold as the tools I've built my app with do not currently support it; however, I have made a number of improvements to address 1 and 2.

There is a new release up on the app store if anyone would like to try out this latest update: https://apps.apple.com/us/app/anytime-podcast-player/id1582300839#?platform=iphone

Thanks again for all your feedback.

Ben.

By Ollie on Thursday, October 3, 2024 - 10:24

May I ask, what is the USP of this app over something like the apple podcasts app? I'm really glad you are considering accessibility and will be happy to give feedback, but unless it does something better than any pre-existing app, I might have to give it a miss.

By Dennis Long on Thursday, October 3, 2024 - 10:24

This is really important and allows a voiceover user to get things done quickly. I would strongly suggest you use tools that allow for proper accesibility support. If it is missing Rotor support what else is it missing? Until Rotor support is added I can't even consider using it as my fulltime podcast player.

By kool_turk on Thursday, October 3, 2024 - 10:24

It's not a bad podcastplayer, I just can't find the chapters that I know are in certain podcasts I listen to.

But I do like how you can import and export OPML files, something you can't do with the native podcast app on iOS.

By Ben Hills on Thursday, October 3, 2024 - 10:24

Hi @Ollie. The USP is that it's a simple podcast app, supports several podcasting 2.0 features such as chapters, transcripts and person details. Everyone's idea of the perfect podcast app is very different, so some people love Anytime due to it's simplicity and clean ui - others dislike it for the same reasons. If Apple Podcasts suits your needs and you're happy with it, there might no be enough in Anytime for you to consider the switch.

@Dennis unfortunately, to switch tools now to take full advantage of the Rotor would mean me throwing the app away and starting again from scratch. I am building it with Flutter which is developed by Google, so I am hopeful that Rotor support with improve, especially given that Android has/is working towards something similar.

@kool_turk Anytime supports Podcasting 2.0 chapters which is becoming increasingly popular due to it's additional features such as adding external links. The other way chapters are supported is by embedding them within the mp3 file. I think Overcast & Apple Podcasts support this, but I haven't added this support to Anytime yet. Would you mind sharing a couple of the podcasts that you are expecting to contain chapters? Thank you.

By Kroni on Thursday, October 3, 2024 - 10:24

Hello Ben, I have set the player to start in full screen mode in the settings. But this doesn't happen when I start a podcast. I really like the app itself, but I'm still missing something. I have subscribed to around 40 podcasts and it would be nice if there was a view of the unplayed episodes. Otherwise I have to check every podcast to see if there is a new episode. Thank you for your efforts and best wishes from Germany

By Ben Hills on Thursday, October 3, 2024 - 10:24

Hi @Kroni,

Ah, that looks to be a bit of a bug there. It doesn't seem to pick up switching on full-screen mode on playback until you quit Anytime and restart it. I'll get that fixed!

Thanks for trying out Anytime. Yes, currently you view episodes by going into a podcast. I do have plans to add an episode view in the future, and badges/un-read counts on the library view.

Many thanks, Ben.

By Ollie on Thursday, October 3, 2024 - 10:24

Thank you for explaining. Yes, absolutely, sometimes it's the flavour of the app that appeals, even if it does something similar it might just be there are preferred ways of working. For example, I hate the audible app, but love prologue, even if it is a lot more work. Clariety of the UI, for us especially, is very important.

By kool_turk on Thursday, October 3, 2024 - 10:24

I listen to three, now only twothat supports chapters.

I'll paste the urls that I got from iTunes.

https://feeds.transistor.fm/appleinsider

http://maccessibility.net/feed-podcast.rss

https://pinecast.com/feed/livingblindfully

That last one is the one I tested to see if there were chapters, and sadly that podcast shut down.

The other two definitely use chapters cause I see them in grover on windows.

I also can't find chapters in apple podcasts, go figure.

But hopefully this can help.

By Rob on Thursday, October 24, 2024 - 10:24

Hi. As I was exploring the settings in the app, which I am doing now, I notice VoiceOver saying, "button," which is a Back button, because screen recognition is somehow on for the app, and then I flick right where I find another Back button. These do the same thing. I don't think there should be 2 back buttons. It was kind of weird seeing 2 back buttons. I haven't tried any podcasts yet, but that's my feedback. Thanks and have a good day.

By Ben Hills on Thursday, October 24, 2024 - 10:24

Hi @Rob,

Thanks for letting me know about this. It's odd. VoiceOver is picking up the back button twice. I will get that fixed!

Ben.

By Ben Hills on Thursday, October 24, 2024 - 10:24

Hi @kool_turk,

Thanks for the podcast examples. Not sure about the last, but Apple Insider uses the Podcasting 2.0 chapters system. Actually, it uses quite a few Podcasting 2.0 features such as person avatars and funding. The chapters appear in Anytime.

Maccessibility looks to uses chapters embedded within the MP3 file. Apple Podcasts supports this (and the chapters appear), but Anytime does not. I hope eventually to support both formats to cover all bases.

Thanks again.

Ben.

By kool_turk on Thursday, November 7, 2024 - 10:24

Bumping this back up to the top because I've been playing with this app more.

I'm not sure if this is only with voiceover, but when you go to search for a podcast, the search field shows up twice.

It doesn't matter which field you type in, you just have two search fields, at least voiceover sees two of them.

By Ben Hills on Wednesday, November 13, 2024 - 10:24

It's a bit of a frustrating issue this one. Today, I have been unable to reproduce the double back button bug - VoiceOver for me is only reading it once. When I tried the search box last week, VoiceOver correctly read it only once, whereas today it is indeed duplicating it and seeing two.

I'll go back through my app to see if this issue happens anywhere else. I'm not sure what has/is causing this, unless it was the last update in the development tools I use.

Will let you know what I find. Thank you.

By Maldalain on Wednesday, November 13, 2024 - 10:24

I am unable to seek forward and backward in the app. So could anyone please let me know how to do do it?

By kool_turk on Wednesday, November 13, 2024 - 10:24

There's two ways that I do it, three if you count the control centre.

The easiest and possibly quickest way is to just use the controls on the lock screen.

You can also use the controls in the control centre, or, you can double tap on the mini player to bring up the main player window.

But I think if you do that, the battery will drain quite fast.

In my experience, that's what appears to be happening on my iPhone 12.

The battery capacity is at 89%, so that's probably why.

By Troy B on Sunday, November 17, 2024 - 10:24

I've just now started using this app, in fact I just listened to an episode of a podcast I follow for the first time with it, but is there a way to hide and/or delete episodes once I listen? Btw I did not download it, I just found the lists of episodes and played it from the list.

Early on it looks like this app will be great for me as I just need something simple.

By Ben Hills on Sunday, November 17, 2024 - 10:24

Hi Troy,

Yes, you can hide played episodes. Above the list of episodes within a podcast is a series of buttons. If you select the one labelled "Filter episodes" and choose the Unplayed option from the list that appears, this will hide episodes that have been fully played.

By Troy B on Sunday, November 17, 2024 - 10:24

Thanks Ben. I noticed the filter button earlier and I even pressed it but I don't remember that option. I'll go back and look.

By kool_turk on Sunday, November 17, 2024 - 10:24

It would be really helpful if we had the option to sort podcasts by the most recent updates.

Currently, you have to manually check each feed for updates, which can be time-consuming, especially if you're subscribed to a lot of podcasts, as I am.

Additionally, for those who listen to audio dramas in podcast form, this app may not be the best fit. While it's fine for keeping up with the latest episodes, audio dramas with multiple seasons can be tricky. Having to scroll through to find your place can become tedious.

By Ben Hills on Sunday, November 17, 2024 - 10:24

Hi kool_turk,

Thanks for the feedback - I complete agree on both points.

Background updating of episodes is what I am currently working on. I'm still planning it out at the moment, but it is top of the list - manually updating a large podcast library is a pain.

I do have plans to better support audiobooks. It is possible for publishers to tag their feeds as containing audiobooks so apps, such as Anytime, can adjust accordingly - such as changing the default ordering of episodes from lastest to earliest to, earliest to latest. I would also like to implement a season filter (which can also apply to non audiobook feeds too).

I have lots of plans for improvements and enhancements, so please do keep an eye out for updates.

Thanks.

By The Tetris monster on Sunday, November 17, 2024 - 18:24

Hello. Thank you so much for making this accessible, it’s a wonderful little app and probably my favourite podcast player. Are you planning to implement Support so that we can receive notifications of new episodes from our followed podcasts? Would it be possible to please implement chapter support if it hasn’t been implemented already? Unfortunately I can’t seem to find the button with VoiceOver. I would also love the feature to select chapters from the list of chapters in the episode to be played and have the player leave out anything that I don’t want to listen to. Also, would it be possible to allow for us to have certain podcast feeds download the latest episode and delete the previous ones in the background without us having to open the app?

By kool_turk on Monday, November 18, 2024 - 05:24

Chapters are supported, but I don't think the ones embedded in MP3 files are—at least, that's what was mentioned in a few posts earlier.

For example, the *Double Tap* podcast is hit-or-miss when it comes to chapters.

I can skip to different sections of that podcast on Windows using the Grover app, but the chapters show up as links, and not every episode includes them.

The Anytime Player doesn't recognize them at all.

In Anytime Player, podcast chapters appear in their own tab, but you can only see them when you're in full-screen mode.

By Ben Hills on Monday, November 18, 2024 - 16:24

Hi Tetris,

Anytime supports podcasting 2.0 chapters and are visible in the main player window. Anytime doesn't currently support chapters embedded within the audio file. At the top of the main player window there are tabs which allow you to view the chapters (when available), the episode details or the show notes. Please let me know if you are still unable to find with with VoiceOver.

The option to skip chapters you may not be interested in is a really interesting idea - I hadn't thought of that. I will add it to the list of ideas & suggestions to look into.

Support for notifications is in the works, and is part of a bigger piece of work I am currently planning out to support fetching new episodes in the background and making it easier to find podcasts that have new episodes.

Thanks for trying out Anytime and it's great to hear it may be your favourite player - that's fantastic.

By The Tetris monster on Monday, November 18, 2024 - 18:24

Hi Ben. I hope you’re doing well. Thanks so much for the reply and your dedication to this app. It appears as though the podcasts that I listen to have the chapters embedded within the MP3 file. Having support for the ability to select chapters that you’re not interested in hearing and the ability to find chapters within the file itself would be amazing. Thanks again.