owncloud-submedia-app's Issues
getCollectionInfo gives incorrect counts for directories
Instead of counting the total files shared just counts 1 for each directory.
Search method doesn't return anything
The search method doesn't seem to return anything at all, either with or without quotes around the parameters.
Submedia:
http://cloud.runners-id.org/remote.php/submedia/rest/search.view?u=&p=&v=1.8.0&c=tomahawk&artist="New-G"&album="Harmonie"&count=200&f=json
{"subsonic-response":{"status":"ok","version":"1.8.0","xmlns":"http://subsonic.org/restapi"}}
Subsonic:
http://localhost:4040/rest/search.view?u=&p=&v=1.8.0&c=tomahawk&artist="New-G"&album="Harmonie"&count=200&f=json
{"subsonic-response": {
"searchResult": {
"totalHits": 4,
"match": [
{
"genre": "Ambient",
"albumId": 8,
"album": "Harmonie",
"track": 5,
"parent": 132,
"contentType": "audio/ogg",
"isDir": false,
"type": "music",
"suffix": "ogg",
"isVideo": false,
"size": 4775180,
"id": 143,
"title": "Harmonie",
"duration": 177,
"artistId": 6,
"created": "2007-12-13T18:35:20",
"path": "New-G/Harmonie/05 - Harmonie.ogg",
"artist": "New-G",
"bitRate": 224
},
{
"genre": "Ambient",
"albumId": 8,
"album": "Harmonie",
"track": 3,
"parent": 132,
"contentType": "audio/ogg",
"isDir": false,
"type": "music",
"suffix": "ogg",
"isVideo": false,
"size": 3370975,
"id": 133,
"title": "Envol Vers L'infini",
"duration": 127,
"artistId": 6,
"created": "2007-12-13T18:36:19",
"path": "New-G/Harmonie/03 - Envol Vers L'infini.ogg",
"artist": "New-G",
"bitRate": 224
},
{
"genre": "Ambient",
"albumId": 8,
"album": "Harmonie",
"track": 7,
"parent": 132,
"contentType": "audio/ogg",
"isDir": false,
"type": "music",
"suffix": "ogg",
"isVideo": false,
"size": 5893883,
"id": 138,
"title": "Soleil Levant",
"duration": 217,
"artistId": 6,
"created": "2007-12-13T18:39:08",
"path": "New-G/Harmonie/07 - Soleil Levant.ogg",
"artist": "New-G",
"bitRate": 224
},
{
"genre": "Ambient",
"albumId": 8,
"album": "Harmonie",
"track": 11,
"parent": 132,
"contentType": "audio/ogg",
"isDir": false,
"type": "music",
"suffix": "ogg",
"isVideo": false,
"size": 5628453,
"id": 140,
"title": "Rêves Éternels",
"duration": 226,
"artistId": 6,
"created": "2007-12-13T18:37:00",
"path": "New-G/Harmonie/11 - Rêves Éternels.ogg",
"artist": "New-G",
"bitRate": 224
}
],
"offset": 0
},
"status": "ok",
"xmlns": "http://subsonic.org/restapi",
"version": "1.8.0"
}}
CoverArt Caching
Every time a cover art is requested it gets downloaded again.
It seems like a good idea to add a not-very-sophisticated tmp cache folder on submedia/lib/data/tmp
Add own user as a source in getCollectionInfo
Support API level 1.8.0
Specifically the methods getArtists, getArtist and getAlbum would likely make certain queries simpler and faster.
Add recently added action
Compatible with owncloud 4.5.5
I notice error about compatibility but we can continue to use submedia.
Is this just about app version info?
Error log from Admin panel:
Error | core | App "SubMedia" (submedia) can't be used because it is not compatible with this version of ownCloud
Wrong track number and path on non-mp3 files
When a track is searched or otherwise requested that happens to be stored on ownCloud as an Ogg file (or possibly other formats), Submedia always reports the "track" metadata field as "0".
It and also reports the contentType as audio/mpeg and gives a filename like "0 - song name.mp3" rather than the real name. This is no big problem because we stream tracks by id rather than by path, but it's still incorrect.
According to (1) (see "child" elements, it's the same for other API calls), contentType should always reflect the original format, with other parameters indicating transcoding, if any. I don't think we need transcoding at this point, but we do need correct metadata for non-mp3 files.
Add random songs action
Settings menu
Add a settings entry to configure the app.
Right now, it could be used to set up the LastFM API key.
"created" field in database.sql
This is just a report.
"created" field definition in database.sql:
created VARCHAR(255) NOT NULL
Real "created" field on MySQL:
created DATETIME
I see that's autodetect and representing from database.xml by owncloud/MDB2.
getArtists responds with error code 30
getArtists replies with correct responses as far as content is concerned, but instead of writing out "status":"ok" it says "status":"failed","error":{"code":"30","message":"Not Implemented"}.
This is just a minor nitpick, the rest of the response (the "artists" object) seems fine.
Check for double html entities passing
OwnCloud templates may be applying htmlentities each time a template is called. Hence, subtemplates are rendering strings in a really weird way.
Get rid of owncloud templates, or find a fix.
Reword getCollectionInfo response
something on the line of
collection: {
count: <number>,
sources: [
{owner: foo, count: bar},
{owner: baz, count: 42}
]
}
Subsonic is getting null bitrates on indexes view
That's it. Check if we are passing bitrates on all views.
counts ignored in search2
The search2 call does not seem to obey the parameters
artistCount/albumCount/songCount. In fact, they seem to be ignored
completely. This is not a huge problem because luckily it seems to
deliver more than 20 results at a time (20 is the default), so the
client doesn't risk getting less data than it requests. However, I'm
using this call to query for all albums of an artist and/or all tracks
in an album, so it would save a bit of bandwidth and client-side
parsing if I could just set artistCount, albumCount or songCount to 0
as needed.
Search method answers with switched album/artist parameters
Example:
"id":108,
"parent":"album_26",
"title":"Star Guide",
"album":"try^d", //should be artist
"artist":"Public Domain", //should be album
"isDir":false,
"coverArt":"album_26",
"duration":186,
"bitRate":207,
"track":0,
"size":4812220,
"suffix":"mp3",
"contentType":"audio/mpeg",
"isVideo":false,
"path":"Public Domain/try^d/0 - Star Guide.mp3",
"albumId":"album_26",
"artistId":"artist_24",
"type":"music"
Error when adding a repeated song to a playlist
createPlaylist.view?songId=7&songId=8&songId=12&songId=9&songId=11&songId=10&songId=13&songId=14&songId=14&c=subsonicext&v=1.4.0&f=json&u=a_user&p=a_pwd&playlistId=146
{"subsonic-response":{"status":"failed","version":"1.7.0","xmlns":"http://subsonic.org/restapi","error":{"code":70,"message":"Playlist not found: <playlist_id>"}}}
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.