Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Show and edit book details #260

Closed
Guy27 opened this issue Oct 13, 2018 · 19 comments
Closed

Show and edit book details #260

Guy27 opened this issue Oct 13, 2018 · 19 comments

Comments

@Guy27
Copy link

Guy27 commented Oct 13, 2018

It would be great to add the ability to edit the file info like:

  • Author name
  • book title
  • cover photo (from library and from a web link)

Edit by @pichfl
As we already have this issue, I'm not creating another from the card in our backlog. Not only should we allow for editing, but also for display. Especially as some people will fill out many IDE3 fields with useful metadata such as descriptions, back-cover stories and so on.

@GianniCarlo
Copy link
Collaborator

🤔 This could be implemented in two steps,

  • The first being to have a modal viewcontroller with the book info, something like: (sorry about the rough drawing)
    img_7508
    This view could be accessed via either swiping the book cell and revealing an option, or inside the player view as an option inside the 'more' button (not sure about this last one though)

  • The second step would be letting the user edit that info and when saving (from what I've read), exporting the existing book file into a new one with the new metadata. This would mean that the identifier/hash of the file would change, so a new book instance would be needed to take the place of the old one.

We're currently with our hands full for the next release, but, we'd be more than glad to help out anyone who wants to tackle this feature 👌

I'm closing this feature and moving it into our 'later' column in our roadmap to keep our focus on the next release. Please feel free to continue the conversation though 👍

@pichfl
Copy link
Collaborator

pichfl commented Oct 13, 2018

This matches with the "media details" note I put into the Roadmap some time ago and I think it would make a very neat addition to BookPlayer. We should definitely put it in both the "more" menu of the Player as well as the swipe menu. (In fact one could argue this should be true for everything in the "more" menu).

Writing these details back to the original files won't be an easy task especially if we want to support all formats, which can make this small feature rather large.

I suggest we only support updating the meta data inside BookPlayer. Text edit and selecting a picture from your library. No file download inside BookPlayer, if you want to use a picture from the web you can use Safari to download it.

If someone is willing to help us complete this please message me here so I can provide a full UI mockup.

@pichfl pichfl reopened this Nov 24, 2018
@pichfl pichfl changed the title File info editing Show and edit book details Nov 24, 2018
@bensaufley
Copy link

This might be the place for this: I would love this info, or at least the length of the book, available from the index (rather than having to start the book to engage the "More" UI element). Basically when choosing my next book I'd love to be able to at least compare lengths, and if possible read descriptions etc, without having to pseudo-start each book to view that information.

@GianniCarlo
Copy link
Collaborator

We could put the duration in the cell but I'm not sure how it'll affect our overall design line 🤔, I'd have to defer to @pichfl on this one. To alleviate what you're mentioning, we could also have a sort option based on a book's duration

@bensaufley
Copy link

Maybe not reliably true but it feels like there's room on the line with the author to squeeze in the running time. Again, though, there are other options, like making the Info accessible from the index—maybe through swipe-right, which currently does nothing?

@GianniCarlo
Copy link
Collaborator

GianniCarlo commented Feb 25, 2019

🤔 maybe not a swipe-right, but a drag-right which would reveal that info and when released it'll snap back in place (like revealing the time of the bubble in iMessage)

EDIT
due to the duration string not being small, yes maybe a swipe-right would be more appropriate

@pichfl
Copy link
Collaborator

pichfl commented Feb 25, 2019

@bensaufley you came to the right place 😄

There is place for this in the library if you think of iPhone XS and a book with a short author name.
Looking at the same screen with an author team and on iPhone SE gives a vastly different picture:
image

So to make room for additional meta requires a bit more than just squeezing it in. But I'm intrigued. I think having the length of a book or playlist in your Library is not only a valid case, but is something we should consider as something that makes the Library more than just a list of items.

@GianniCarlo dragging and swiping are off limits, at least to me. To the left will provide a menu of actions in the future, to the right should start batch edit.

I think this is something that we should just put in, but go to the drawing board and find out how we can use the available estate while keeping the screen elegant and not overcrowded. Well, we as in I should get drawing. 🏃

Edit
After reading my own comment, I realized this will most likely provoke a new issue about the Library.

@GianniCarlo
Copy link
Collaborator

yeah I was thinking how swiping to the right will affect the batch edit 🤔. Agreed then, new design incoming 😁

@bensaufley
Copy link

@pichfl cool! FWIW I'm coming from Audible (basically fully migrated to BookPlayer at this point 🎉) and their solution is to elide with at a certain point to guarantee the vertical room—they've got one line for title, one line for author, one line for narrator, and one line for length. All of these are (IMO) useful things to see at a glance. But eliding more prominently useful info like title/author is maybe not the most elegant solution.

@NCrusher74
Copy link
Contributor

I had opened a feature request issue for series management a while back, and at the time I had indicated interest in possibly helping on this project, but didn't feel my Swift skills were up to the task of working on someone else's code yet.

I'm still a little uncertain on that front, but as part of my own audiobook library management suite project that is in the works, I've created tagging libraries for MP3 and MP4. Why not use TagLib or AVFoundation or something similar? Because there are no comprehensive wrappers for TagLib in Swift, and AVFoundation won't won't edit ID3 metadata without re-encoding the entire file.

My goals were pretty straightforward: It should be able to edit metadata and chapter data (for MP3 as well as MP4) without touching the audio. It's taken me the better part of six months, but I've finally got working libraries, and since I think this would help in your goal of adding metadata editing features to BookPlayer, I thought you might want to check them out.

There are three libraries at the moment:

SwiftTaggerMP4, SwiftTaggerID3, and SwiftTagger, which simply combines those two into a single package and enables you to use the same tags, regardless of whether your file is an MP3 or MP4, by choosing which library to use for you, and occasionally creating freeform/user-defined tags if one tag exists for one format but not for the other.

I'm also working on an AudiobookTagger library which will refine SwiftTagger down to just the metadata that is relevant to audiobooks, but it's not quite ready yet. I anticipate making it public soon, however.

If any of this sounds like something that would help you implement this feature, feel free to use it, or let me know how I may help you implement it. Thank you.

@GianniCarlo
Copy link
Collaborator

Hi @NCrusher74 ! SwiftTagger redirects me to the same link of SwiftTaggerID3 is that right? other than that, I'm looking forward to the AudiobookTagger library 😁 and I'm sure it'll be a great help when the time comes to use it in this project 💪

@NCrusher74
Copy link
Contributor

Hi! Sorry, I'd forgotten SwiftTagger was still private, because I was intending to test it out fully as a dependency in AudiobookTagger before making it public. I've made it public now, but I'm still working on a few things for AudiobookTagger before I can fully test it. I hope you find it helpful!

@NCrusher74
Copy link
Contributor

AudiobookTagger is released. I hope you find it helpful!

@Aishanur
Copy link

Hello, as an avid reader and audiobook listener I really appreciate this project! I'd be interested in helping with this feature if it is still of interest.

@GianniCarlo
Copy link
Collaborator

hey @Aishanur ! this will be included in the upcoming v5.0.0, it's been waiting for review since last Monday, so hopefully we hear back from Apple this week

@Aishanur
Copy link

Congratulations, I hope Apple accepts it soon! Since a new release is coming up, is there any aspect of the project that I could help out on afterwards? I noticed the roadmap hasn't been updated in a while. Sorry for all these questions. I'm a bit of a novice in contributing to open source.

@GianniCarlo
Copy link
Collaborator

yeah sorry about the roadmap, v5.0.0 really took a lot of time to get ready (I have a lot of support mail to catch up to :/). Regarding helping out, if you mean with code, you can pick an open issue, and bring it up over on Discord so we can discuss it, if you mean with testing, once v5.0.0 is out, we'll start doing open betas again for the following releases, so you can DM me your preferred mail for TestFlight 👍

My mini roadmap after v5.0.0 is out, is to check if there are any crashes/bugs that I have to get to, and after v5.0.0 is stable, I'll focus on stand-alone playback on the Watch

@GianniCarlo
Copy link
Collaborator

V5.0.0 is out 🙌

@erikw
Copy link

erikw commented Aug 23, 2024

View/edit the Album field would be very helpful. The audio files that I listen to have cryptic directory names (downloaded lectures), so I would need to see the ID3 album field to know the title of the current collection of files.

Edit.
Created a new issue #1169

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

7 participants