Comments (10)
Just to clarify, I don't see any CPU spike in task maanger that suggests any transcoding it taking place, pretty sure it's sending them as-is.
from gmusicapi.
I am pretty sure the files are transcoded on the Goolge servers.
Test scenario:
Uploading a FLAC file with Music Manager while monitoring the CPU usage.
FLAC File: http://www.eclassical.com/custom/eclassical/files/BIS1536-001-flac_16.flac
Mediainfo of FLAC: http://pastebin.com/tKMTeyc6
Uploading the file started immediately after I click the Upload button in Music Manager. CPU usage of the Music Manager is never higher than 6% (CPU: Intel Core 2 Duo T9900 @ 3GHz). Upload rate ~60kb/s
CPU usage statistic (Format: [Time] [Usage in %]): http://pastebin.com/EXM8Uciv
Uploaded file on Google Music: http://img189.imageshack.us/img189/5364/95410234.png
Mediainfo of MP3 downloaded from Google Music: http://pastebin.com/TNMmv26f
from gmusicapi.
Thanks for checking this out, fruel; this seems pretty conclusive.
from gmusicapi.
I just confirmed this.
Thanks for bringing this up; this is a huge simplification!
from gmusicapi.
It looks local transcoding is done - this is causing problems with my new uploading code. I'm sure m4a -> mp3 is done, and wma -> mp3 might be done. Notably, flac can be sent as-is, which explains the above results.
@fruel, do you mind trying to upload an m4a to see if you can recreate this?
from gmusicapi.
Actually, I just noticed that there are issues with my newly-uploaded flacs, too: I get a 400 when I try to stream, and a 404 when I try to download. I wonder if this is what #57 was referring to?
from gmusicapi.
It looks like a new Music Manager was pushed out recently. I'll spend the weekend looking for evidence that non-mp3s can be uploaded without transcoding.
I'm planning to publish a new release next week that gets uploading working again.
from gmusicapi.
Bad news: local transcoding is unavoidable right now. This is a bummer - especially for @mgillespie - but there's nothing I can do about it from my side. The current server software simply doesn't deal with non-mp3 uploads (note that I can actually get flacs and oggs up to the server, but they won't play. The Music Manager transcodes these same files to mp3 first).
There is some good news, at least: vbr mp3s are supported, and uploaded as-is (at least for <=320k. I haven't tried higher bitrates).
I'll use avconv like I used ffmpeg before, and I'll figure out some way for quality to be configured (likely just an int for -qscale
). All of this will be explained thoroughly, and folks will always be able to transcode offline to mp3 if they don't want me to touch their music.
from gmusicapi.
Ok, all my tests pass for 076c04b. This should work for all formats, but non-mp3 formats are transcoded with avconv.
If you get a "permanent error" from the server, you might have to change the tags of the file you're uploading before it'll work (this is the server seeing that it had a problem before with a file of the same hash).
from gmusicapi.
Ok, transcode quality is now exposed when uploading: https://unofficial-google-music-api.readthedocs.org/en/develop/#gmusicapi.api.Api.upload.
from gmusicapi.
Related Issues (20)
- UnicodeEncodeError on Mobileclient.search() HOT 2
- Searching for youtube video hits and info requires a GPM subscription HOT 1
- Mobileclient remove_entries_from_playlist() always returns the input parameters HOT 5
- Gmusicapi install error HOT 10
- ValidationException for GetArtists HOT 1
- get filesize of audiofile HOT 1
- Mac address error HOT 2
- Info about a track in a playlist HOT 3
- Using dynamic oauth_filepath in Mobileclient HOT 8
- Mobileclient.get_all_songs() not returning all tracks HOT 2
- No Donation Button HOT 2
- Invalid Device id with id's returned from returned valid id's HOT 18
- gmusicapi.exceptions.CallFailure: GetStreamUrl: 403 Client Error: Forbidden for url: https://mclients.googleapis.com/music/mplay ... HOT 4
- Could not retrieve credentials from ... Simon Weber\\gmusicapi\\mobileclient.cred HOT 4
- Invalid artist and album ids on search HOT 3
- UnicodeEncodeError with logging when using Mobileclient Search HOT 1
- TypeError when running Musicmanager.get_uploaded_songs() HOT 4
- Value Error :( HOT 3
- Error while performing local test HOT 3
- Looks like Google Play Music is going away HOT 11
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.
from gmusicapi.