Live data from Hacker News

Show HN: Instantly listen to any URL

per.quest

51–60 of 89 posts

Re: Show HN: Instantly listen to any URL

#51

Is this somehow using the waybackmachine to scrape pages? When I try some of the classic ssrf paths like file:/// or http://localhost:8080 , I get audio about the internet archive. When I put in https://localhost:443 , I get audio for the default nginx page, which matches what the internet archive has for that url: https://web.archive.org/web/20210620003533/http://localhost/ But putting http://localhost returns the a…

Not sure about OP but I just implemented this in my Hacker News android client (thanks for the idea OP).

This is how I implemented it. I had already achieved article to "reader mode" extraction by heavily customizing the Kotlin port of Mozilla‘s Readability:

https://github.com/dankito/Readability4J

From the extracted "reader mode" text, I had to do further extraction to get rid of things like image captions, author names, article publish timestamps etc. Also links had to be removed to not let the TTS engine speaking out links.

Then I pass the text via Android's TextToSpeech library and it works very well:

    fun trySpeaking(str:String){
    
        fun speak(){
            tts?.speak(str, TextToSpeech.QUEUE_FLUSH, null, null)
        }
    
        tts?.also {
            it.stop()
            speak()
        } ?: run {
            tts = TextToSpeech(appContext) { status ->
                println("Speak: $status")
                if (status == TextToSpeech.SUCCESS) {
                    speak()
                }
            }.apply {
                language = Locale.US
            }
        }
    }
If someone wants to do a tl;dr on the article text, they could pass it through SMMRY api (which the Reddit's TL;DR bot uses):

https://smmry.com

On Desktop, one can do text to speech conversion using mozilla TTS:

https://github.com/mozilla/TTS

Or Amazon Polly:

https://aws.amazon.com/polly/

For anyone wanting to give it a try, this "article to audio" will be available in tomorrow's update in my app. The reader mode is already available:

https://play.google.com/store/apps/details?id=com.pranapps.h...

Full disclaimer: I am the developer of the app and the Android version is brand new (released at 4am this morning).

Re: Show HN: Instantly listen to any URL

#52

Neat! Could you add speed controls, a download audio option, download audio as mp3/webm/etc, and options for different voices? Why is there no donation option for this project? Why not add a email signup for updates/news? What are your options for micro monetization?

TinyGem Listen is similar, has speed control and different voice quality. https://tinygem.org/listen Curious if you like it. It (TinyGem) has been a passion project of mine for a while now.

Just tried this on https://craftinginterpreters.com/a-map-of-the-territory.html and I'm getting weird pauses in the middle of sentences

Re: Show HN: Instantly listen to any URL

#53

Earlier quoted context omitted.

TinyGem Listen is similar, has speed control and different voice quality. https://tinygem.org/listen Curious if you like it. It (TinyGem) has been a passion project of mine for a while now.

Just tried this on https://craftinginterpreters.com/a-map-of-the-territory.html and I'm getting weird pauses in the middle of sentences

Know what it is (sometimes text parses with extra spaces causing pauses). Will fix soon.

Re: Show HN: Instantly listen to any URL

#54

Is this somehow using the waybackmachine to scrape pages? When I try some of the classic ssrf paths like file:/// or http://localhost:8080 , I get audio about the internet archive. When I put in https://localhost:443 , I get audio for the default nginx page, which matches what the internet archive has for that url: https://web.archive.org/web/20210620003533/http://localhost/ But putting http://localhost returns the a…

Not sure about OP but I just implemented this in my Hacker News android client (thanks for the idea OP). This is how I implemented it. I had already achieved article to "reader mode" extraction by heavily customizing the Kotlin port of Mozilla‘s Readability: https://github.com/dankito/Readability4J From the extracted "reader mode" text, I had to do further extraction to get rid of things like image captions, author n…

I really want one of these that can follow RSS/Atom feeds.

Re: Show HN: Instantly listen to any URL

#55

This is cool! I recently tried to use VoiceOver on my iPhone and it’s… astonishingly difficult to use for just text to speech! One minor request: I realize the form page itself is very minimal, but this would be much more usable on a phone if you set the font-size of the input to at least 16px, and a reasonable viewport meta tag eg ` `

I don't think that the ", initial-scale=1" would be necessary. Nowadays, works just fine.

Not certain, I hear some saying it still has an effect on at least iOS Safari https://news.ycombinator.com/item?id=25629377>, though I’m not sure whether that’s true of current iOS Safari any more, or just slightly older versions that are still in use. I’d love to have someone test carefully and spell out exactly what it achieves, and for what versions.

Re: Show HN: Instantly listen to any URL

#56

Is this somehow using the waybackmachine to scrape pages? When I try some of the classic ssrf paths like file:/// or http://localhost:8080 , I get audio about the internet archive. When I put in https://localhost:443 , I get audio for the default nginx page, which matches what the internet archive has for that url: https://web.archive.org/web/20210620003533/http://localhost/ But putting http://localhost returns the a…

Added a check against localhost thanks for pointing that out.

Re: Show HN: Instantly listen to any URL

#57
post #40

Nice. You can do the same in our iOS App: https://apps.apple.com/us/app/id1535903742 Browse to any page and click on "Listen Now" in the app (including logged in page)

Your app is great and has been doing the trick for me... It is reliable and straightforward... Thanks :-)

Re: Show HN: Instantly listen to any URL

#60
post #56

Is this somehow using the waybackmachine to scrape pages? When I try some of the classic ssrf paths like file:/// or http://localhost:8080 , I get audio about the internet archive. When I put in https://localhost:443 , I get audio for the default nginx page, which matches what the internet archive has for that url: https://web.archive.org/web/20210620003533/http://localhost/ But putting http://localhost returns the a…

Added a check against localhost thanks for pointing that out.

[deleted]
Post reply on HN