Jump to content

EmBook - Proper support for AudioBooks


Inrego

Recommended Posts

Inrego

What is EmBook?

 

EmBook is a combination of server plugin and app to improve the AudioBook experience. Note that the app will not work properly unless you install the server plugin as well.

The app is a dedicated AudioBook player with the interface and features you'd expect from such an app.

Emby does have AudioBook support on the paper, but if any of you tried to use it, you'd probably know that it's not really usable in most cases.

Here's the app icon:

Mx4tUyC.png

 

App

 

NOTE: The app is currently unavailable, while I am completing a full rewrite. You might still be able to get it on some platforms, but the current version does not work so DO NOT BUY IT as of yet.

The app is being developed simultaneously on Android, iOS and Windows. The app is not free, since I spent many hours developing it, and even took several days off work to finish it. I may at some point release a free ad-supported version. But currently I want to focus more on adding new, awesome features, than spending time implementing ads.

 

Please be aware, that due to problems with how Emby core handles resume settings for AudioBooks, the apps will not save resume state in a way that lets you resume in any official Emby apps (including web interface). If you're interested in a more technical explanation, you can read this post.

 

App Store Links

 

Android: Play Store.

iOS: App Store

Windows: Temporary Windows Store Link

 

Features

  • Browsing only AudioBook libraries on the server
  • Auto pre-cache files for playback
  • Settings to pre-cache next X minutes or audio-files
  • Setting to auto-cleanup files that are earlier than current progress
  • Saving progress on Emby server
  • Resuming from Emby server progress (so resume on different device)
  • Media notification with play/pause
  • Showing cover and description of book from Emby metadata
  • Multi-server support
  • Control Playback from Android Wear

TO-DO List

  • Adjust media notification buttons to forward/rewind X seconds instead of their current unreliable skip skip/back file functionality.
  • Option to automatically rewind X seconds when resuming (to catch up on last sentence from your last listening session) (already started research how to do).
  • Sleep timer (stop playing after X minutes)
  • Tap notification to go to "Currently Playing" in app.
  • Show a "mini" version of "Currently Playing" on all pages of the app. Play/pause, seek, name and possibly cover. Tap to open full "Currently Playing".
  • Cast to Google Cast (Chromecast etc).
  • Mark files as "watched" in Emby when you've listened to a file.
  • See and open ebooks (likely in external app designed for it)
  • Open for more suggestions

 

 

Server Plugin

 

The server plugin provides some webservices for the app, to allow saving of progress on the book (so you can continue where you left off on any device).

It also automates grabbing of metadata for your audiobooks from Google Books, so you get covers, descriptions and more. This is done by a scheduled task.

Metadata grab is temporarily disabled. Stay tuned for updates.

 

How to use Server Plugin?

  1. Download and unzip EmBook.ServerPlugin 1.0.20.0.zip
  2. Install the plugin on your server, by copying EmBook.ServerPlugin.dll to 
    %AppData%\Emby-Server\plugins
  3. Restart Emby Server

After installing the plugin, you will see a new task called "Grab audiobook metadata" in Scheduled Task in you Emby Server settings. Running this will start the process of downloading metadata for your audiobooks.

Some things to consider:

  • A folder that contains audio files, is considered an AudioBook.
  • Keep all audiofiles for a book in a single folder
  • It will only look for metadata if the containing folder doesn't have the tag "EmBook Metadata". After searching for metadata, that tag will be added to prevent searching the same book on every execution. If you want the plugin to relook for data, just remove the tag in Metadata Manager.
  • It will use folder name for search title. You can also include year (e.g. "The Invisible Man (1897)".
  • If the plugin finds a wrong match, you can override it by placing a file called isbn.txt that contains the ISBN number of the book. Make sure to provide ISBN for the textbook version of the book, since Google Books does not have any entries for audio books.
  • You can provide your own cover, by placing cover.jpg in the audio book folder.
  • You can exclude a book from metadata search, either by putting a value in Sort Title, or by putting the number 0 in isbn.txt
  • After adding new books, make sure to do metadata refresh in Emby first, so the folder is added to the library. Then run the "Grab audiobook metadata" task afterwards.

 

 

Known Issues

There are some known issues. These do not hinder usage of the app, and are generally just minor things I noted that I want/need to fix at some point.

 

  • (General) Buttons to rewind/forward 10 seconds wasn't working too well. They've been removed until I make a better implementation.
  • (General) Items may in some cases be queued in the wrong order (fixed in 1.0.4.0)
  • (General) Possibly an Android problem: Only current cache will be played. Either new items aren't being cached during playback, or they aren't queued properly after caching. (fixed in 1.0.4.0)
  • (Android) when app launches it is briefly white. Should see if it's possible to change so you won't get blinded by a bright color when launching app.
  • (Android) Tapping a list item, gives an orange highlight. Would be nice with Emby green instead.
  • (Android) When you lock the screen, it will only play back the current file, not the whole queue.
  • (iOS) When app launches it is briefly bright blue. Should see if it's possible to change so you won't get blinded by a bright color when launching app.
  • (iOS) Status bar text and icons (clock + battery etc) are black on a dark background. Should be white for better visibility.
  • (iOS) Play/pause on lockscreen doesn't work
  • (iOS) Artwork is not shown in media notification
  • (iOS) Lockscreen shows currently playing file. Files are saved with obscure names, so it doesn't look pretty.
  • (iOS) Lockscreen current playback position and total duration is for current file. Consider changing to show for whole book.
  • (iOS) Tapping a list item, gives a white highlight. Would be nice with Emby green instead.
  • (Windows) Artwork is not shown in media notification unless it is embedded into the mp3 files.
  • (Windows) When app launches it is briefly bright blue. Should see if it's possible to change so you won't get blinded by a bright color when launching app.
  • (Windows) Browsing server and folders, list items are very short, making it hard to tap the right one.
  • (Windows) After tapping an item in the menu, the menu disappears and there is no way to bring it back. This might not be the case for mobile, but it is so for desktop. This may cause delays for Windows release.
Edited by Inrego
  • Like 5
Link to comment
Share on other sites

Inrego

Note I just did a release from the very limited access alpha, to the more available beta. So it may take a few hours until you can download the app.

Link to comment
Share on other sites

mediacowboy

Should the poster display here as well? This is the landing page for my Audiobooks.

 

599a11b32ea48_Capture.png

 

Update: After adding the books to the library by scanning the library. Then running your program. Then rescanning my library. The posters started to show up.

Edited by mediacowboy
Link to comment
Share on other sites

Inrego

What folder structure does this expect?

 

D:\Media\Audiobooks\{Title}?

Yes for example. As long as you have a folder with the title of the book, and inside that folder is the audio files.

You should see posters there yes. Sometimes you have to do a metadata refresh after running the scheduled task, before the covers show on the web gui.

 

EDIT: Here's an example of path to one of my audio books. As you can see, it doesn't really matter - as long as the folder containing the audio files is named after the book itself.

EDIT2: Forgot the link, lol. http://i.imgur.com/BLyAmsr.png

Edited by Inrego
Link to comment
Share on other sites

mediacowboy

I have more books I want to add but waiting on the google app to play with the 16 I have already added.

Link to comment
Share on other sites

mediacowboy

Also your plugging doesn't have a image on the server plugin dashboard. Wasn't sure if you were aware or not. Sorry for all the post I am super excited about audiobook support as I drive an hour a day for work.

Link to comment
Share on other sites

Inrego

I have more books I want to add but waiting on the google app to play with the 16 I have already added.

 

So where are you at with it atm? If it doesn't find any metadata, make sure the audio files are directly in the title folder, and check if the Sort Title is empty in metadata manager.

Link to comment
Share on other sites

mediacowboy

So where are you at with it atm? If it doesn't find any metadata, make sure the audio files are directly in the title folder, and check if the Sort Title is empty in metadata manager.

The 16 books I have added now are showing Metadata in the manager. When I click the book to open it I then see each track as a individual file. So the plugin make them as one and work from the server?

 

Trying to sign up for the beta still unavailable.

Edited by mediacowboy
Link to comment
Share on other sites

Inrego

The 16 books I have added now are showing Metadata in the manager. When I click the book to open it I then see each track as a individual file. So the plugin make them as one and work from the server?

 

Trying to sign up for the beta still unavailable.

No, this is as far as we're getting in the web interface. You'll need the app to play them properly.

The app should be available by now. I'll check on one of my other google accounts.

Edited by Inrego
Link to comment
Share on other sites

Inrego

Turns out, I had the beta on closed (so I'd have to add you to list of allowed testers). I've changed it now, so you should be able to get it.

Link to comment
Share on other sites

Inrego

Okay downloaded the app. How do you add a server?

Just press the menu button on upper left corner, and then Login.

Link to comment
Share on other sites

mediacowboy

Just press the menu button on upper left corner, and then Login.

This is what I get. 9f1a61c8129c219e365d48dedabacbcc.jpg
Link to comment
Share on other sites

mediacowboy

Okay once I got my account added I was able to listen. I can see some people not liking having to link there account.

 

I played a file and jumped around and it works.

 

If you force truly close the app and open again you have to sign back in. Is there a way to remember user?

Link to comment
Share on other sites

Inrego

It will remember. Just give it a few seconds to sign in. I will add an indicator that it's actually working.

 

Sent from my ONEPLUS A3003 using Tapatalk

Link to comment
Share on other sites

mediacowboy

It's not remembering the user. As I was playing an audiobook. I had to take two phone calls. I went to start it back up and it asked for my username and password again.

Link to comment
Share on other sites

Inrego

Just stay on the browse page. After a few seconds you'll see your server without logging in again.

 

Sent from my ONEPLUS A3003 using Tapatalk

Edited by Inrego
Link to comment
Share on other sites

Inrego

Trying things out. App keeps crashing when I select my server

Hmm, so you can log in, and see the server - but when you tap it, it crashes? Do you have a book library in your Emby server?

Link to comment
Share on other sites

Jack Burton

Hmm, so you can log in, and see the server - but when you tap it, it crashes? Do you have a book library in your Emby server?

Exactly. Yes I have a book library and grab audiobook metadata has run on my server

 

Have you ever had more then one server associated with your emby account?

I have yes. There was one I had when I first tried out emby. Both show up as options

Link to comment
Share on other sites

Inrego

Exactly. Yes I have a book library and grab audiobook metadata has run on my server

 

I have yes. There was one I had when I first tried out emby. Both show up as options

Could I possibly have access to your server to test on my end? I know it's a lot to ask, and if you don't then np - then I'll find some other way.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...