Parto dal fondo:
1) Certamente il problema non è dovuto ai drivers nuovi che ho installato dopo l'installazione della nuova scheda video. Quindi il titolo che ho dato alla discussione dovrebbe essere modificato.
2) Dalle prove che ho fatto non sembra un problema di user agent. Ciò non esclude che il mio ISP ci metta del suo, ma se lo fà, allora applica metodi più furbi.
3) Il problema viene risolto con "zcat" come suggerito da miklos. Per capirci, il seguente comando funziona e si riesce a riprodurre lo streaming.
Codice: Seleziona tutto
wget -q 'http://ukdl.synology.com/ftp/marketing/video/DSM3.0_chs.mp4' -O-|zcat| mplayer -
Anche così:
Codice: Seleziona tutto
curl -s 'http://ukdl.synology.com/ftp/marketing/video/DSM3.0_chs.mp4' |zcat | mplayer -
Quindi non è un problema di user agent.
Gli imputati principali sembrano le applicazioni (curl, wget, mplayer) che non dimostrano di scompattare il file scaricato al volo, richiedendo l'intervento di un attore esterno come zcat.
Questo non spiega però perchè il transload su dropbox determini automagicamente la decompressione del file che risulta poi un mp4 direttamente fruibile. Forse l'applicazione urldroplet riconosce che viene compresso il tutto e la decomprime al volo verso dropbox, o forse visto che il transload sfrutta velocità di banda ben superiori rispetto alla mia è il server di origine che no comprime i dati.
Aggiungo a tal proposito alcune info che rilevo con "wget --spider -d" sui due files (quello passato su dropbox e quello sul server di partenza).
Codice: Seleziona tutto
joe@darkstar:~/tmp/down-corrupt$ wget -d --spider 'http://ukdl.synology.com/ftp/marketing/video/DSM3.0_chs.mp4'
Setting --spider (spider) to 1
DEBUG output created by Wget 1.14 on linux-gnu.
URI encoding = "UTF-8"
Modalità spider abilitata. Controllare se il file remoto esiste.
--2015-04-01 23:43:17-- http://ukdl.synology.com/ftp/marketing/video/DSM3.0_chs.mp4
Risoluzione di ukdl.synology.com (ukdl.synology.com)... 188.92.232.154
Caching ukdl.synology.com => 188.92.232.154
Connessione a ukdl.synology.com (ukdl.synology.com)|188.92.232.154|:80... connesso.
Created socket 3.
Releasing 0x0933be58 (new refcount 1).
---request begin---
HEAD /ftp/marketing/video/DSM3.0_chs.mp4 HTTP/1.1
User-Agent: Wget/1.14 (linux-gnu)
Accept: */*
Host: ukdl.synology.com
Connection: Keep-Alive
---request end---
Richiesta HTTP inviata, in attesa di risposta...
---response begin---
HTTP/1.1 200 OK
Content-Type: video/mp4
Content-Encoding: gzip
Content-Length: 7047957
Connection: Keep-Alive
Keep-Alive: timeout=5, max=100
Accept-Ranges: bytes
Cache-Control: no-cache
Date: Wed, 01 Apr 2015 22:00:43 GMT
ETag: "6b8b15-4aa21c33c6340"
Expires: Thu, 01 Dec 1994 16:00:00 GMT
Pragma: no-cache
Server: Apache
---response end---
200 OK
Registered socket 3 for persistent reuse.
Lunghezza: 7047957 (6,7M) [video/mp4]
Il file remoto esiste.
Codice: Seleziona tutto
joe@darkstar:~/tmp/down-corrupt$ wget -d --spider 'https://dl.dropboxusercontent.com/u/41058472/DSM3.0_chs.mp4'
Setting --spider (spider) to 1
DEBUG output created by Wget 1.14 on linux-gnu.
URI encoding = "UTF-8"
Modalità spider abilitata. Controllare se il file remoto esiste.
--2015-04-01 23:44:52-- https://dl.dropboxusercontent.com/u/41058472/DSM3.0_chs.mp4
Risoluzione di dl.dropboxusercontent.com (dl.dropboxusercontent.com)... 23.23.244.164, 23.23.161.172, 107.21.125.101, ...
Caching dl.dropboxusercontent.com => 23.23.244.164 23.23.161.172 107.21.125.101 23.21.154.121 23.21.160.18 23.23.107.198 184.72.249.105 23.21.45.60
Connessione a dl.dropboxusercontent.com (dl.dropboxusercontent.com)|23.23.244.164|:443... connesso.
Created socket 3.
Releasing 0x09507768 (new refcount 1).
Initiating SSL handshake.
Handshake successful; connected socket 3 to SSL handle 0x09507ad0
certificate:
subject: /C=US/ST=California/L=San Francisco/O=Dropbox, Inc/CN=*.dropboxusercontent.com
issuer: /C=US/O=DigiCert Inc/OU=www.digicert.com/CN=DigiCert SHA2 High Assurance Server CA
X509 certificate successfully verified and matches host dl.dropboxusercontent.com
---request begin---
HEAD /u/41058472/DSM3.0_chs.mp4 HTTP/1.1
User-Agent: Wget/1.14 (linux-gnu)
Accept: */*
Host: dl.dropboxusercontent.com
Connection: Keep-Alive
---request end---
Richiesta HTTP inviata, in attesa di risposta...
---response begin---
HTTP/1.1 200 OK
accept-ranges: bytes
cache-control: max-age=0
content-disposition: inline; filename="DSM3.0_chs.mp4"; filename*=UTF-8''DSM3.0_chs.mp4
Content-Length: 7047957
Content-Type: video/mp4
Date: Wed, 01 Apr 2015 22:02:20 GMT
etag: 277n
pragma: public
Server: nginx
set-cookie: uc_session=GnHuIVlmuuu4KF7rY0syQbRaetVEg5lYT4aLxVGqwC4mYSZDZgDdHgULHsrVFLRl; Domain=dropboxusercontent.com; httponly; Path=/; secure
x-dropbox-request-id: b637bfd6d57ad1ea43926cebfc3a4291
x-robots-tag: noindex, nofollow
X-Robots-Tag: noindex, nofollow, noimageindex
x-server-response-time: 364
Connection: keep-alive
---response end---
200 OK
cdm: 1 2 3 4 5 6 7 8
Stored cookie dropboxusercontent.com -1 (ANY) / <session> <secure> [expiry none] uc_session GnHuIVlmuuu4KF7rY0syQbRaetVEg5lYT4aLxVGqwC4mYSZDZgDdHgULHsrVFLRl
Registered socket 3 for persistent reuse.
Lunghezza: 7047957 (6,7M) [video/mp4]
Il file remoto esiste.
Fate caso al fatto che sul server di origine risulta "Content Encoding: gzip". Mentre su dropbox questo non risulta più.
Questo dimostra che il file su dropbox viene scompattato in qualche modo da urldroplet durante il transolad o qualcosa del genere.
Cosa assai strana secondo me. Perchè un conto è accedere al file remoto con un'applicazione che lo riproduce e allora la scompattazione è necessaria e prevedibile che venga fatta in automatico (vedi ad esempio il browser che riesce a riprodurre il file mentre wget da solo no).
Ma altra cosa è accedervi con un tool di trasferimento come urldroplet che di fatto fà l a stessa cosa di wget. Ovvero su Dropbox mi aspetterei di trovare lo stesso file compresso che ho in origine.
Può anche essere come dicevate che il server di origine decida a priori a chi dare il file compresso e a chi servirlo già decompresso, sulla base della velocità.
Questo potrebbe spiegare perchè wget riesca a vedere il file in dimensioni decompresse ovvero 6.7MB, quando contatta il server i modalità spider. Ma gli venga propinato poi qualcosa più ristretto (4.x MB) se tenta di fare il download dal mio PC collegato ad internet a velocità più ridotta.
A me resta il dubbio però che possa esserci di mezzo qualche proxy messo in piedi ultimamente da TIM inseme al pietoso NAT dietro cui hanno infilato parecchi utenti, se non tutti.
Vi chiedo una conferma ancora.
Se voi scaricate con wget il file in questione, con la vostra connessione, cosa succede?
Potreste postare in codice l'output che registrate come ho fatto io sopra? Magari anche con l'opzione debug che mostra qualche info in più su come wget veda il file remoto.
Aggiungete poi l'output del comando "file". Per capire che roba sia il malloppo scaricato.
In questo modo dovremmo avere una casistica che chiarisce meglio se la compressione/decompressione viene fatta a livello di applicazione o a livello server.
Vi ringrazio per il momento del supporto: senza il vostro aiuto non sarei riuscito a capire questi aspetti.
PS.
Dico che vi potrebbe essere qualcosa frapposto ultimamente da TIM tra me e internet (oltr al NAT), perchè mentre prima dal browser visionavo senza problemi files mp4, adesso spesso il player interno a chromium (ma che player sfrutta poi chromium?) si freeza lì senza fare nulla.
PS-2.
A questo proposito sarei quasi tentato di provare una servizio VPN, magari per un mese... in modo da capire se uscendo da un tunnel cifrato possa aggirare i limiti dell'ISP.
Ho letto proprio ultimamente per esempio di questo servizio:
http://123systems.net/kvm.html
Dovrebbe essere sufficiente per mettere in piedi una vpn. Non ho ben capito quale sia la velocità con cui si è connessi, ma 12 euro all'anno sarebbero accessibili.
Però oltre il prezzo mi sarebbe piaciuta la possibilità di provare il servizio tipo per un mese, del tipo un paio di dollari per un mese di prova. Se vedo che tutti i problemi si risolvono allora compro il servizio annuale... comunque per 12 dollari penso che sia accettabile anche solo per fare una prova. Mal che vada non si è speso tanto dopotutto.
PS-3.
MPlayer però in passato non mi ha mai dato problemi neanche a riprodurre file compressi direttamente. Ad esempio una volta ricordo di aver scaricato un file video splittato in diversi archivi RAR e ciascun archivio era tranquillamente riproducibile con mplayer, senza neanche scompattarlo. Anzi a scompattarli non si riusciva con unrar perchp servivano tutti i RAR dello split.
Ora ho provato a zippare sia con gzip che con zip il file mp4 valido (quello targato dropbox per capirci). E mplayer non riesce a riprodurre direttamente l'archivio compresso...
Forse l'mplayer che avevo ai tempi era compilato con qualche opzione in più. O forse ricordo male io e mi scordo di qualche dettaglio.
In ogni caso ho provato a dare:
E il video lo riesce a riprodurre anche se zippato.
Mi informerò sulle opzioni "build-time" di mplayer.
PS-Last
Scusate se l'ho fatta lunga.
Ringrazio chi è arrivato a leggere fin qui per la pazienza..
