shep 3 Posted October 29, 2016 Share Posted October 29, 2016 I don't think this is a feature yet, but I easily have tens of thousands of pictures (possibly as many as 100,000) that I'd like to add tags to, all of them taken on family cameras over the span of five years. Emby supports individual tagging, but not batch as of yet (might have missed it though). How are you guys tagging Emby entries on a mass scale? Is there some third-party software that can tag entries and upload just the tags to Emby? It took about two weeks just to upload all the files to my server running 24/7, so if there's a way to simply update the tags without re-uploading all the pictures, that would be ideal. And if nothing exists, I can probably write something for it. C# developer by trade, just need an API and I'm all set! Link to comment Share on other sites More sharing options...
the-dumb1 121 Posted October 31, 2016 Share Posted October 31, 2016 What you're asking for sounds like a batch metadata editor. I've seen feature requests for this (myself included), and the answer is always that it is a possibility for a future release... But that doesn't help for your immediate needs. I've resorted to a simple combination of grep and sed to do what I want, but like you would like to see something named in. Link to comment Share on other sites More sharing options...
Tranquil 93 Posted October 31, 2016 Share Posted October 31, 2016 (edited) I don't think this is a feature yet, but I easily have tens of thousands of pictures (possibly as many as 100,000) that I'd like to add tags to, all of them taken on family cameras over the span of five years. Emby supports individual tagging, but not batch as of yet (might have missed it though). How are you guys tagging Emby entries on a mass scale? Is there some third-party software that can tag entries and upload just the tags to Emby? It took about two weeks just to upload all the files to my server running 24/7, so if there's a way to simply update the tags without re-uploading all the pictures, that would be ideal. And if nothing exists, I can probably write something for it. C# developer by trade, just need an API and I'm all set! API? No Problem, here you go: http://127.0.0.1:8096/swagger-ui/ Just browse to your MBS like above. (you may need to adapt IP and Port maybe). Edited October 31, 2016 by Tranquil Link to comment Share on other sites More sharing options...
shep 3 Posted October 31, 2016 Author Share Posted October 31, 2016 API? No Problem, here you go: http://127.0.0.1:8096/swagger-ui/ Just browse to your MBS like above. (you may need to adapt IP and Port maybe). I have mine on a DigitalOcean Ubuntu web server pointed to a domain, so I tried http://example.com/swagger-ui/ And I get a NullReferenceException in Chrome. Was that a link to the API documentation or the API itself? I'm suspecting the former, but where's the documentation for it? Link to comment Share on other sites More sharing options...
Tranquil 93 Posted October 31, 2016 Share Posted October 31, 2016 Uuppss.. normally you should get an overview of all possible entrypoints. You maybe better start here https://github.com/MediaBrowser/Emby/wiki 1 Link to comment Share on other sites More sharing options...
shep 3 Posted October 31, 2016 Author Share Posted October 31, 2016 (edited) Missing the "index.html" at the end, that's why. Odd though,got an error message about "Unable to read api 'Years' from path http://localhost:8096/resource/Years (server returned undefined)" Might be my Nginx settings, but it's a definite start. Thank you! Edited October 31, 2016 by shep Link to comment Share on other sites More sharing options...
Tranquil 93 Posted November 1, 2016 Share Posted November 1, 2016 You are right. I'm getting the same error message. My CPU runs up to 100% and it takes approx 10 seconds to see the API Entrypoints. I think that is not the expected behavior. @@Luke ?? Link to comment Share on other sites More sharing options...
PenkethBoy 2063 Posted November 1, 2016 Share Posted November 1, 2016 @@shep while you get to grips with the api there is another way as i have over 500k of photos i use Picasa3 - yes its discontinued by Google but it still works and it can be downloaded tagging of large numbers of files is one of the good features it has- also it makes organising them prior to tagging easy as well the other thing to consider is that i dont think the api changes to tags are permanent - i.e. not written to the images - so any db recreate/nfo flush is possibly going to set you back i could be wrong on that but that put me off doing the same with the api good luck though if you do get one done - i will use it Link to comment Share on other sites More sharing options...
shep 3 Posted November 1, 2016 Author Share Posted November 1, 2016 @@shep while you get to grips with the api there is another way as i have over 500k of photos i use Picasa3 - yes its discontinued by Google but it still works and it can be downloaded tagging of large numbers of files is one of the good features it has- also it makes organising them prior to tagging easy as well the other thing to consider is that i dont think the api changes to tags are permanent - i.e. not written to the images - so any db recreate/nfo flush is possibly going to set you back i could be wrong on that but that put me off doing the same with the api good luck though if you do get one done - i will use it How does Picasa create tags? On the image itself, or as a separate file? I'd prefer a separate file personally. I'll GitHub whatever I make, but I find it surprising that the API doesn't save changes. @@Luke is this accurate? I'll definitely be testing this on a small scale first however. Link to comment Share on other sites More sharing options...
PenkethBoy 2063 Posted November 3, 2016 Share Posted November 3, 2016 Picasa can do it to the file or .picasa files in each directory Link to comment Share on other sites More sharing options...
shep 3 Posted November 4, 2016 Author Share Posted November 4, 2016 (edited) I think I found the problem with the API, but haven't the faintest idea how to fix it. swagger-ui is defaulted to http://example.com/swagger-ui/index.html/../../resources by default when visiting http://example.com/swagger-ui/index.html This translates to http://example.com/resources which is a json file whose content is this: {"swaggerVersion":"1.2","apis":[{"path":"/resource/Albums"},{"path":"/resource/Appstore"},{"path":"/resource/Artists"},{"path":"/resource/Audio"},{"path":"/resource/Auth"},{"path":"/resource/Branding"},{"path":"/resource/Channels"},{"path":"/resource/Collections"},{"path":"/resource/Connect"},{"path":"/resource/Devices"},{"path":"/resource/DisplayPreferences"},{"path":"/resource/Dlna"},{"path":"/resource/emby"},{"path":"/resource/Environment"},{"path":"/resource/GameGenres"},{"path":"/resource/Games"},{"path":"/resource/Genres"},{"path":"/resource/Images"},{"path":"/resource/Items"},{"path":"/resource/Library"},{"path":"/resource/LiveStreams"},{"path":"/resource/LiveTv"},{"path":"/resource/Localization"},{"path":"/resource/mediabrowser"},{"path":"/resource/Movies"},{"path":"/resource/MusicGenres"},{"path":"/resource/News"},{"path":"/resource/Notification"},{"path":"/resource/Notifications"},{"path":"/resource/Packages"},{"path":"/resource/Persons"},{"path":"/resource/Playback"},{"path":"/resource/Playlists"},{"path":"/resource/Plugins"},{"path":"/resource/Providers"},{"path":"/resource/Registrations"},{"path":"/resource/Reports"},{"path":"/resource/robots.txt"},{"path":"/resource/ScheduledTasks"},{"path":"/resource/Search"},{"path":"/resource/Sessions"},{"path":"/resource/Shows"},{"path":"/resource/Social"},{"path":"/resource/Songs"},{"path":"/resource/Startup"},{"path":"/resource/Studios"},{"path":"/resource/swagger-ui"},{"path":"/resource/Sync"},{"path":"/resource/System"},{"path":"/resource/Trailers"},{"path":"/resource/Users"},{"path":"/resource/Videos"},{"path":"/resource/web"},{"path":"/resource/Years"}],"apiVersion":"1.0","basePath":"http://localhost:8096","info":{"title":"Emby"}} Emphasis mine. It's seeing the localhost, and via javascript trying to contact localhost for all the API paths. For some installations, this is fine, however since my emby server is headless and off-site, this is wrong. I haven't the faintest idea where it's pulling the locahost from either. "In-Home access" URL is pointed to the external IP, and "Remote access" is pointed to the domain. Tried updating every bit of software on the server, rebooting it, same result. This appears to be a bug. Will shoot @@Luke a PM since he hasn't seen the above tags as of yet. EDIT: Can't seem to remove auto-parsing links here, put them in code blocks since they were being truncated visually and shouldn't have been actual links. Edited November 4, 2016 by shep Link to comment Share on other sites More sharing options...
Luke 37180 Posted November 4, 2016 Share Posted November 4, 2016 Are we talking about tags or is this just about swagger? Link to comment Share on other sites More sharing options...
shep 3 Posted November 5, 2016 Author Share Posted November 5, 2016 Are we talking about tags or is this just about swagger? I'm trying to get swagger working first, that way I can develop a small program to batch tag items offline and "sync" the tags via the API. Honestly, I'd love to make this from scratch, but without knowing how to interface it with Emby, I can't make it functional. Link to comment Share on other sites More sharing options...
Luke 37180 Posted November 5, 2016 Share Posted November 5, 2016 We'll look at swagger for the next release, thanks. In the meantime you may find it just as easy to review the library that the web apps use to talk to the server: https://github.com/MediaBrowser/Emby.ApiClient.Javascript/blob/master/apiclient.js Link to comment Share on other sites More sharing options...
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now