{"id":98188,"date":"2020-10-24T20:42:20","date_gmt":"2020-10-24T18:42:20","guid":{"rendered":"https:\/\/prohoster.info\/blog\/administrirovanie\/moj-vosmiletnij-kvest-po-oczifrovke-45-videokasset-chast-2"},"modified":"2020-11-18T00:58:46","modified_gmt":"2020-11-17T22:58:46","slug":"moj-vosmiletnij-kvest-po-oczifrovke-45-videokasset-chast-2","status":"publish","type":"post","link":"https:\/\/prohoster.info\/it\/blog\/administrirovanie\/moj-vosmiletnij-kvest-po-oczifrovke-45-videokasset-chast-2","title":{"rendered":"La mia avventura di otto anni nella digitalizzazione di 45 videocassette. Parte 2","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><b><noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/dcmiran\/blog\/524724\/\">Nella prima parte si descrive l'arduo compito di digitalizzare vecchie registrazioni video familiari suddividendole in singole scene<\/a><\/noindex><\/b>. Dopo aver elaborato tutti i clip, volevo organizzare la loro visione online in modo altrettanto comodo come su YouTube. Poich\u00e9 si tratta di ricordi personali della famiglia, non \u00e8 possibile caricarli su YouTube. Serve un hosting pi\u00f9 privato, che sia al tempo stesso comodo e sicuro.<\/p>\n<h1>Step 3. Pubblicazione<\/h1>\n<p><\/p>\n<h3>ClipBucket, un clone open source di YouTube che pu\u00f2 essere installato su un proprio server<\/h3>\n<p>\nPer prima cosa ho provato <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/arslancb\/clipbucket\">ClipBucket<\/a><\/noindex>, che si presenta come un clone open source di YouTube, installabile sul proprio server.<\/p>\n<p><img decoding=\"async\" alt=\"La mia avventura di otto anni nella digitalizzazione di 45 videocassette. Parte 2\" src=\"\/wp-content\/uploads\/2020\/10\/d849aa58201a06c79459ee660be1b4a0.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nSorprendentemente, ClipBucket non ha alcuna guida all'installazione. Grazie a <noindex><a rel=\"nofollow\" href=\"https:\/\/linoxide.com\/linux-how-to\/setup-clipbucket-video-sharing-website-linux\/\">una guida di terze parti<\/a><\/noindex> io <noindex><a rel=\"nofollow\" href=\"https:\/\/mtlynch.io\/ansible-role-clipbucket\/\">ho automatizzato il processo di installazione<\/a><\/noindex> utilizzando <noindex><a rel=\"nofollow\" href=\"https:\/\/docs.ansible.com\/ansible\/latest\/index.html\">Ansible<\/a><\/noindex>, uno strumento di gestione della configurazione dei server.<br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><br \/>\nParte della difficolt\u00e0 era dovuta al fatto che gli script di installazione di ClipBucket erano completamente rotti. All'epoca io <noindex><a rel=\"nofollow\" href=\"https:\/\/mtlynch.io\/why-i-quit-google\/\">lavoravo in Google<\/a><\/noindex> e secondo i termini del contratto non potevo contribuire a un clone open source di YouTube, ma io <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/arslancb\/clipbucket\/issues\/223\">ho inviato un rapporto bug<\/a><\/noindex>, da cui era facile apportare le modifiche necessarie. Passarono mesi e non capirono qual era il problema. Invece, continuavano ad aggiungere tutto <i>maggiore<\/i> i bug in ogni versione.<\/p>\n<p>L'azienda ClipBucket operava secondo un modello di consulenza: rilasciava il proprio codice gratuitamente e addebitava il costo dell'assistenza nel deploy. Col tempo, mi sono reso conto che un'azienda che guadagna con l'assistenza a pagamento probabilmente non \u00e8 molto interessata a far installare il prodotto dai clienti da soli.<\/p>\n<h3>MediaGoblin, un'alternativa pi\u00f9 moderna<\/h3>\n<p>\nDopo diversi mesi di delusione con ClipBucket, ho riesaminato le opzioni disponibili e trovato <noindex><a rel=\"nofollow\" href=\"https:\/\/mediagoblin.org\/\">MediaGoblin<\/a><\/noindex>.<\/p>\n<p><img decoding=\"async\" alt=\"La mia avventura di otto anni nella digitalizzazione di 45 videocassette. Parte 2\" src=\"\/wp-content\/uploads\/2020\/10\/9e813633abc217b8b579df4b3674bf41.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i><noindex><a rel=\"nofollow\" href=\"https:\/\/mediagoblin.org\/\">MediaGoblin<\/a><\/noindex>\u00a0\u2014 \u00e8 una piattaforma autonoma per la condivisione di file multimediali.<\/i> <\/p>\n<p>MediaGoblin ha molte funzionalit\u00e0 interessanti. A differenza di ClipBucket, che usa un PHP poco gradevole, MediaGoblin \u00e8 scritto in Python \u2014 ho una vasta esperienza nella programmazione in questo linguaggio. Ha <noindex><a rel=\"nofollow\" href=\"https:\/\/mediagoblin.readthedocs.io\/en\/v0.9.0\/siteadmin\/commandline-upload.html\">interfaccia della riga di comando<\/a><\/noindex>, che consente di automatizzare facilmente il caricamento dei video. La cosa pi\u00f9 importante \u00e8 che MediaGoblin viene fornito in <noindex><a rel=\"nofollow\" href=\"https:\/\/wiki.mediagoblin.org\/index.php?title=EasyDeployment&amp;oldid=1874\">forma di Docker<\/a><\/noindex>, che elimina eventuali problemi di installazione.<\/p>\n<blockquote><p><noindex><a rel=\"nofollow\" href=\"https:\/\/www.docker.com\/\">Docker<\/a><\/noindex> \u2014 \u00e8 una tecnologia che crea un ambiente autonomo per l'applicazione, funzionante ovunque. Utilizzo Docker in <noindex><a rel=\"nofollow\" href=\"https:\/\/mtlynch.io\/tags\/docker\/\">molti dei miei progetti.<\/a><\/noindex>.<\/p><\/blockquote>\n<p><\/p>\n<h3>La sorprendente difficolt\u00e0 di riconfigurare Docker per MediaGoblin<\/h3>\n<p>\nHo presumito che il deploy dell'immagine Docker di MediaGoblin fosse un compito banale. Beh, non \u00e8 andata proprio cos\u00ec.<\/p>\n<p>Nell'immagine finale mancavano due funzionalit\u00e0 necessarie:<\/p>\n<ul>\n<li>Autenticazione\n<ul>\n<li>MediaGoblin crea di default un portale multimediale pubblico, mentre io avevo bisogno di un modo per limitare l'accesso ai non autorizzati.<\/li>\n<\/ul>\n<\/li>\n<li>Transcodifica\n<ul>\n<li>Ogni volta che carichi un video, MediaGoblin cerca di ricodificarlo per uno streaming ottimale. Se il video \u00e8 gi\u00e0 pronto per lo streaming, la transcodifica ne riduce la qualit\u00e0.<\/li>\n<li>MediaGoblin prevede <noindex><a rel=\"nofollow\" href=\"https:\/\/wiki.mediagoblin.org\/Configure_MediaGoblin#Disable_transcoding\">la disattivazione della transcodifica tramite le impostazioni di configurazione<\/a><\/noindex>, ma nell'immagine Docker esistente non \u00e8 possibile farlo.<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<p>\nBeh, nessun problema. L'immagine Docker \u00e8 fornita con <noindex><a rel=\"nofollow\" href=\"https:\/\/notabug.org\/dachary\/mediagoblin-docker\">codice aperto<\/a><\/noindex>, quindi si pu\u00f2 <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/mtlynch\/mediagoblin-docker\">ricompilare autonomamente<\/a><\/noindex>.<\/p>\n<p>Sfortunatamente, l'immagine Docker non \u00e8 pi\u00f9 compilata dal corrente <noindex><a rel=\"nofollow\" href=\"https:\/\/savannah.gnu.org\/git\/?group=mediagoblin\">repository di MediaGoblin<\/a><\/noindex>. Ho cercato di sincronizzarlo con la versione dell'ultima build riuscita, ma neanche questo ha funzionato. Anche se ho utilizzato esattamente lo stesso codice, le dipendenze esterne di MediaGoblin sono cambiate, causando un errore nella build. Dopo decine di ore, ho eseguito ripetutamente il processo di build di MediaGoblin, che durava 10-15 minuti, fino a quando non ha finalmente funzionato.<\/p>\n<p>Qualche mese dopo \u00e8 accaduta la stessa cosa. In totale, negli ultimi anni, la catena delle dipendenze di MediaGoblin ha interrotto la mia build diverse volte, e l'ultima volta \u00e8 successo proprio mentre scrivevo questo articolo. Alla fine ho pubblicato <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/mtlynch\/mediagoblin\">un mio fork di MediaGoblin<\/a><\/noindex> c <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/mtlynch\/mediagoblin\/pull\/8\/files\">con dipendenze codificate in modo rigido<\/a><\/noindex> e versioni delle librerie esplicitamente specificate. In altre parole, invece di un'affermazione discutibile secondo cui MediaGoblin funziona con qualsiasi versione <noindex><a rel=\"nofollow\" href=\"http:\/\/www.celeryproject.org\/\">celery<\/a><\/noindex> &gt;= 3.0, ho installato una dipendenza specifica per la versione <noindex><a rel=\"nofollow\" href=\"https:\/\/pypi.org\/project\/celery\/4.2.1\/\">celery 4.2.1<\/a><\/noindex>, perch\u00e9 ho testato MediaGoblin con questa versione. Sembra che il prodotto necessiti di <noindex><a rel=\"nofollow\" href=\"https:\/\/stackoverflow.com\/a\/52665767\/90388\">un meccanismo di build riproducibili<\/a><\/noindex>, ma non mi sono ancora occupato di questo.<\/p>\n<p>In ogni caso, dopo molte ore di lotta, sono finalmente riuscito a compilare e configurare MediaGoblin in un'immagine Docker. Non \u00e8 stato difficile <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/mtlynch\/mediagoblin-docker\/blob\/81a8a33840dd76bd82e200de3f4b26cbc180208b\/mediagoblin.ini#L38-L43\">saltare la transcodifica non necessaria<\/a><\/noindex> e <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/mtlynch\/mediagoblin-docker\/blob\/81a8a33840dd76bd82e200de3f4b26cbc180208b\/default.conf.tmpl#L63-L64\">Impostare Nginx per l'autenticazione<\/a><\/noindex>.<\/p>\n<h1>Passo 4. Hosting<\/h1>\n<p>\nPoich\u00e9 MediaGoblin funzionava su Docker sul mio computer locale, il passaggio successivo \u00e8 stato il deployment su un server cloud, in modo che la mia famiglia potesse vedere i video.<\/p>\n<h3>MediaGoblin e il problema dell'archiviazione video<\/h3>\n<p>\nCi sono molte piattaforme che accettano un'immagine Docker e la ospitano su un URL pubblico. Il problema \u00e8 che, oltre all'applicazione stessa, dovevo pubblicare 33 GB di file video. Avrei potuto codificarli nel contenitore Docker, ma sarebbe stato ingombrante e poco pratico. Modificare una riga di configurazione richiederebbe un nuovo deployment di 33 GB di dati.<\/p>\n<p>Quando ho utilizzato ClipBucket, ho risolto il problema con <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/GoogleCloudPlatform\/gcsfuse\">gcsfuse<\/a><\/noindex>\u00a0\u2014 un'utilit\u00e0 che consente al sistema operativo di montare directory nello storage cloud di Google Cloud come normali percorsi del file system. Ho posizionato i file video su Google Cloud e ho usato gcsfuse per farli apparire in ClipBucket come file locali.<\/p>\n<p>La differenza stava nel fatto che ClipBucket funzionava su una vera macchina virtuale, mentre MediaGoblin utilizzava un container Docker. Qui, il montaggio dei file dallo storage cloud si \u00e8 rivelato molto pi\u00f9 complicato. Ho speso decine di ore per risolvere tutti i problemi e ho scritto a riguardo <noindex><a rel=\"nofollow\" href=\"https:\/\/mtlynch.io\/retrofit-docker-gcs\/\">un intero post sul blog<\/a><\/noindex>.<\/p>\n<p><img decoding=\"async\" alt=\"La mia avventura di otto anni nella digitalizzazione di 45 videocassette. Parte 2\" src=\"\/wp-content\/uploads\/2020\/10\/4793c0f79a7b77442bcc860e42aeb867.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i>L'integrazione iniziale di MediaGoblin con Google Cloud Storage, di cui ho <noindex><a rel=\"nofollow\" href=\"https:\/\/mtlynch.io\/retrofit-docker-gcs\/\">parlato nel 2018<\/a><\/noindex><\/i> <\/p>\n<p>Dopo alcune settimane di messa a punto di tutti i componenti, tutto ha funzionato. Senza apportare alcuna modifica al codice di MediaGoblin, sono riuscito a fargli leggere e scrivere file multimediali nello storage cloud di Google.<\/p>\n<p>L'unico problema era che MediaGoblin era diventato incredibilmente lento. Il caricamento delle miniature video sulla home page impiegava ben 20 secondi. Se durante la visione di un video saltavi in avanti, MediaGoblin si bloccava per interminabili 10 secondi prima di riprendere la riproduzione.<\/p>\n<p>Il problema principale era che i video e le immagini raggiungevano l'utente attraverso un percorso lungo e contorto. Dovevano passare dallo storage cloud di Google attraverso gcsfuse in MediaGoblin, Nginx, e solo allora arrivavano al browser dell'utente. Il collo di bottiglia principale era gcsfuse, che non \u00e8 ottimizzato per un'operativit\u00e0 veloce. Gli sviluppatori avvertono di significativi ritardi nell'uso dello strumento direttamente nella homepage del progetto:<\/p>\n<p><img decoding=\"async\" alt=\"La mia avventura di otto anni nella digitalizzazione di 45 videocassette. Parte 2\" src=\"\/wp-content\/uploads\/2020\/10\/1e466cda848cb64325ec964661cbc3e6.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i>Avvisi <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/GoogleCloudPlatform\/gcsfuse#latency-and-rsync\">sulla bassa prestazione<\/a><\/noindex> nella documentazione di gcsfuse<\/i> <\/p>\n<p>Idealmente, il browser dovrebbe estrarre i file direttamente da Google Cloud, saltando tutti i livelli intermedi. Come fare ci\u00f2, senza immergersi nel codice di MediaGoblin e senza aggiungere una logica d'integrazione complessa con Google Cloud?<\/p>\n<h3>Il trucco sub_filter in nginx<\/h3>\n<p>\nFortunatamente, ho trovato una soluzione semplice, anche se <i>un po'<\/i> non molto esteticamente gradevole. Ho aggiunto alla configurazione default.conf di Nginx <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/mtlynch\/mediagoblin-docker\/blob\/6bf661b51011ff562a6be58dd22dfa190e8a7696\/default.conf.tmpl#L61-L62\">un filtro del genere<\/a><\/noindex>:<\/p>\n<pre><code class=\"plaintext\">sub_filter \"\/mgoblin_media\/media_entries\/\" \"https:\/\/storage.googleapis.com\/MY-GCS-BUCKET\/media_entries\/\";\nsub_filter_once off;<\/code><\/pre>\n<p>\nNella mia installazione, Nginx fungeva da proxy tra MediaGoblin e l'utente finale. La direttiva sopra riportata impone a Nginx di cercare e sostituire tutte le risposte HTML di MediaGoblin prima di passarle all'utente finale. Nginx sostituisce tutti i percorsi relativi ai file multimediali di MediaGoblin con URL provenienti dallo storage cloud di Google.<\/p>\n<p>Ad esempio, MediaGoblin genera questo HTML:<\/p>\n<pre><code class=\"xml\"><video width=\"720\" height=\"480\" controls autoplay>\n  \n<\/video><\/code><\/pre>\n<p>\nNginx modifica la risposta:<\/p>\n<pre><code class=\"xml\"><video width=\"720\" height=\"480\" controls autoplay>\n  \n<\/video><\/code><\/pre>\n<p>\nOra tutto funziona come dovrebbe:<\/p>\n<p><img decoding=\"async\" alt=\"La mia avventura di otto anni nella digitalizzazione di 45 videocassette. Parte 2\" src=\"\/wp-content\/uploads\/2020\/10\/285a76cdb7d77ef53f6ac3f608fa9193.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i>Nginx riscrive le risposte da MediaGoblin in modo che i clienti possano richiedere i media direttamente dal Google Cloud Storage.<\/i> <\/p>\n<p>La cosa migliore della mia soluzione \u00e8 che non richiede alcuna modifica al codice di MediaGoblin. La direttiva di Nginx lunga due righe integra facilmente MediaGoblin e Google Cloud, anche se questi servizi non sanno nulla l'uno dell'altro.<\/p>\n<blockquote><p><b>Nota<\/b>: questa soluzione richiede che i file nel cloud di Google siano accessibili in lettura per tutti. Per ridurre il rischio di accessi non autorizzati, utilizzo un nome del bucket lungo e casuale (ad esempio, <code>mediagoblin-39dpduhfz1wstbprmyk5ak29<\/code>) e controllo che la politica di accesso del bucket non consenta agli utenti non autorizzati di visualizzare il contenuto della directory.<\/p><\/blockquote>\n<p><\/p>\n<h3>Prodotto finale<\/h3>\n<p>\nFino a questo momento avevo una soluzione completa e funzionante. MediaGoblin funzionava felicemente nel proprio container sulla piattaforma cloud di Google, quindi non era necessario correggerlo o aggiornarlo frequentemente. Tutto nel mio processo era automatizzato e riproducibile, consentendo semplici modifiche o rollback a versioni precedenti.<\/p>\n<p>La mia famiglia ha apprezzato molto quanto fosse facile sfogliare i video. Con l'hack di Nginx sopra descritto, lavorare con i video \u00e8 diventato veloce come su YouTube.<\/p>\n<p>La schermata di visualizzazione appare come segue:<\/p>\n<p><img decoding=\"async\" alt=\"La mia avventura di otto anni nella digitalizzazione di 45 videocassette. Parte 2\" src=\"\/wp-content\/uploads\/2020\/10\/6dcbe7e40c3bacf4d3d5e4c7d4e6987f.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i>Contenuto della directory video familiare per il tag 'Migliore'<\/i> <\/p>\n<p>Cliccando sulla miniatura si ottiene questa schermata:<\/p>\n<p><img decoding=\"async\" alt=\"La mia avventura di otto anni nella digitalizzazione di 45 videocassette. Parte 2\" src=\"\/wp-content\/uploads\/2020\/10\/498615eb08697b6b84d6b0703a3ea693.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i>Visualizzazione di un singolo clip sul server multimediale<\/i> <\/p>\n<p>Dopo molti anni di lavoro, \u00e8 stato incredibilmente gratificante offrire ai miei familiari la possibilit\u00e0 di vedere i nostri video con un'interfaccia tanto comoda quanto quella di YouTube, proprio come avevo inizialmente desiderato.<\/p>\n<h3>Bonus: riduzione dei costi a meno di 1 dollaro al mese<\/h3>\n<p>\nNon guardi video a casa molto spesso, solo ogni pochi mesi. La mia famiglia ha generato collettivamente circa 20 ore di traffico in un anno, ma il server era attivo 24 ore su 24. Pagavo mensilmente 15 dollari per un server che era inattivo il 99,7% del tempo.<\/p>\n<p>Alla fine del 2018, Google ha lanciato un prodotto <noindex><a rel=\"nofollow\" href=\"https:\/\/cloud.google.com\/run\">Cloud Run<\/a><\/noindex>. La caratteristica principale era la capacit\u00e0 di avviare contenitori Docker cos\u00ec rapidamente che l'applicazione poteva rispondere a richieste HTTP. In altre parole, il server poteva rimanere in standby e avviarsi solo quando qualcuno voleva collegarsi. Per applicazioni avviate raramente come la mia, i costi sono scesi da 15 dollari al mese a pochi centesimi all'anno.<\/p>\n<p>Per motivi che non ricordo pi\u00f9, Cloud Run non funzionava con la mia immagine MediaGoblin. Ma con l'arrivo di Cloud Run, ho ricordato che <noindex><a rel=\"nofollow\" href=\"https:\/\/heroku.com\/\">Heroku<\/a><\/noindex> offre un servizio simile gratuitamente, e i loro strumenti sono molto pi\u00f9 comodi di quelli di Google.<\/p>\n<p>Con un server applicativo gratuito, l'unico costo \u00e8 rappresentato dallo storage dei dati. Il costo standard per lo storage regionale di Google \u00e8 di 2,3 centesimi\/GB. L'archivio video occupa 33 GB, quindi pago solo 0,77 dollari al mese.<\/p>\n<p><img decoding=\"async\" alt=\"La mia avventura di otto anni nella digitalizzazione di 45 videocassette. Parte 2\" src=\"\/wp-content\/uploads\/2020\/10\/fb5b62edff68b6d0b60cb0d042e25a7a.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i>Il costo di questa soluzione \u00e8 solo di 0,77 dollari al mese.<\/i> <\/p>\n<h3>Consigli per chi sta per provare.<\/h3>\n<p>\n\u00c8 evidente che il mio processo ha richiesto molto tempo. Ma spero che questo articolo vi aiuti a risparmiare l'80-90% degli sforzi nella digitalizzazione e pubblicazione di video domestici. In una sezione separata potete trovare <noindex><a rel=\"nofollow\" href=\"https:\/\/mtlynch.io\/digitizing-home-videos-walkthrough\/\">una guida dettagliata passo dopo passo<\/a><\/noindex> per l'intero processo, ma ecco alcuni consigli generali:<\/p>\n<ul>\n<li>Durante la digitalizzazione e l'editing, cercate di conservare il maggior numero possibile di metadata.\n<ul>\n<li>Informazioni preziose sono spesso registrate sulle etichette delle videocassette.<\/li>\n<li>Annotate quale clip \u00e8 stata registrata da quale cassetta e in quale ordine.<\/li>\n<li>Annotate la data delle riprese, che potrebbe essere indicata nel video.<\/li>\n<\/ul>\n<\/li>\n<li>Considerate di pagare per i servizi di digitalizzazione professionale.\n<ul>\n<li>Vi sar\u00e0 <i>estremamente<\/i> difficile e costoso eguagliare la qualit\u00e0 della digitalizzazione.<\/li>\n<li>Ma state alla larga da un'azienda chiamata EverPresent (contattatemi se avete bisogno di dettagli).<\/li>\n<\/ul>\n<\/li>\n<li>Se digitalizzi da solo, acquista un HDD.\n<ul>\n<li>Un video non compresso in risoluzione standard occupa 100-200 MB al minuto.<\/li>\n<li>Ho sempre archiviato tutto sul mio <noindex><a rel=\"nofollow\" href=\"https:\/\/www.amazon.com\/Synology-DiskStation-Diskless-Attached-DS412\/dp\/B007JLE84C\/\">Synology DS412+<\/a><\/noindex> (10 TB).<\/li>\n<\/ul>\n<\/li>\n<li>Registra i metadati in un formato comune, che non sia legato a un'applicazione specifica.\n<ul>\n<li>Descrizioni dei videoclip, codici temporali, date, ecc.<\/li>\n<li>Se salvi i metadati in un formato di applicazione specifico (o, peggio ancora, non li salvi affatto), non potrai ripetere il lavoro se decidi di utilizzare un'altra soluzione.<\/li>\n<li>Durante la modifica, vedrai molti utili metadati nel video. Li perderai se non li salvi.\n<ul>\n<li>Cosa sta succedendo nel video?<\/li>\n<li>Chi \u00e8 registrato?<\/li>\n<li>Quando \u00e8 stato registrato?<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<li>Segna i video preferiti.\n<ul>\n<li>A dire il vero, la maggior parte dei video domestici \u00e8 piuttosto noiosa.<\/li>\n<li>Applico l'etichetta 'best of' ai miei videoclip preferiti e li riapro quando voglio vedere video divertenti.<\/li>\n<\/ul>\n<\/li>\n<li>Organizza una soluzione completa il prima possibile, in modo che il processo scorra dall'inizio alla fine.\n<ul>\n<li>Ho cercato prima di digitalizzare tutte le cassette, poi di modificarle e cos\u00ec via.<\/li>\n<li>\u00c8 un peccato che non abbia iniziato con una sola cassetta e non abbia fatto tutto il lavoro su di essa. Allora avrei capito quali soluzioni e in quali fasi influenzano il risultato finale.<\/li>\n<\/ul>\n<\/li>\n<li>Riduci al minimo la ricodifica.\n<ul>\n<li>Ogni volta che modifichi o ricodifichi un clip, ne deteriori la qualit\u00e0.<\/li>\n<li>Digitalizza i filmati grezzi con la massima qualit\u00e0 e poi ricodifica ogni clip esattamente una volta nel formato che i browser riproducono nativamente.<\/li>\n<\/ul>\n<\/li>\n<li>Usa la soluzione pi\u00f9 semplice possibile per pubblicare i video.\n<ul>\n<li>Guardando indietro, MediaGoblin sembra uno strumento troppo complesso per un semplice scenario di generazione di pagine web con un insieme statico di file video.<\/li>\n<li>Se dovessi ricominciare, utilizzerei un generatore di siti statici come <noindex><a rel=\"nofollow\" href=\"https:\/\/gohugo.io\/\">Hugo<\/a><\/noindex>, <noindex><a rel=\"nofollow\" href=\"https:\/\/jekyllrb.com\/\">Jekyll<\/a><\/noindex> o <noindex><a rel=\"nofollow\" href=\"https:\/\/gridsome.org\/\">Gridsome<\/a><\/noindex>.<\/li>\n<\/ul>\n<\/li>\n<li>Fai il montaggio.\n<ul>\n<li>Il montaggio video \u00e8 un modo interessante per unire i momenti migliori di diversi video.<\/li>\n<li>La cosa principale nel montaggio \u00e8 la musica. Ad esempio, la tema <noindex><a rel=\"nofollow\" href=\"https:\/\/open.spotify.com\/track\/6vmvNj64lOYWs3Vs4vZbgv\">Slow Snow<\/a><\/noindex> di The National, \u00e8 la mia scoperta personale.<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<p>Fonte: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/dcmiran\/blog\/524738\/\">habr.com<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0412 \u043f\u0435\u0440\u0432\u043e\u0439 \u0447\u0430\u0441\u0442\u0438 \u043e\u043f\u0438\u0441\u0430\u043d \u0442\u044f\u0436\u043a\u0438\u0439 \u043a\u0432\u0435\u0441\u0442 \u043f\u043e \u043e\u0446\u0438\u0444\u0440\u043e\u0432\u043a\u0435 \u0441\u0442\u0430\u0440\u044b\u0445 \u0441\u0435\u043c\u0435\u0439\u043d\u044b\u0445 \u0432\u0438\u0434\u0435\u043e\u0437\u0430\u043f\u0438\u0441\u0435\u0439 \u0441 \u0440\u0430\u0437\u0431\u0438\u0435\u043d\u0438\u0435\u043c \u0438\u0445 \u043d\u0430 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u0435 \u0441\u0446\u0435\u043d\u044b. \u041f\u043e\u0441\u043b\u0435 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0432\u0441\u0435\u0445 \u043a\u043b\u0438\u043f\u043e\u0432 \u044f \u0445\u043e\u0442\u0435\u043b \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u0438\u0445 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440 \u0432 \u043e\u043d\u043b\u0430\u0439\u043d\u0435 \u0442\u0430\u043a\u043e\u0439 \u0436\u0435 \u0443\u0434\u043e\u0431\u043d\u044b\u0439, \u043a\u0430\u043a \u043d\u0430 YouTube. \u041f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u044d\u0442\u043e \u043b\u0438\u0447\u043d\u044b\u0435 \u0432\u043e\u0441\u043f\u043e\u043c\u0438\u043d\u0430\u043d\u0438\u044f \u0441\u0435\u043c\u044c\u0438, \u043d\u0430 \u0441\u0430\u043c\u043e\u043c YouTube \u0438\u0445 \u0432\u044b\u043a\u043b\u0430\u0434\u044b\u0432\u0430\u0442\u044c \u043d\u0435\u043b\u044c\u0437\u044f. \u041d\u0443\u0436\u0435\u043d \u0431\u043e\u043b\u0435\u0435 \u043f\u0440\u0438\u0432\u0430\u0442\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433, \u043e\u0434\u043d\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e \u0443\u0434\u043e\u0431\u043d\u044b\u0439 \u0438 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u044b\u0439. \u0428\u0430\u0433 3. [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":98189,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-98188","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 4.9.10 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0412 \u043f\u0435\u0440\u0432\u043e\u0439 \u0447\u0430\u0441\u0442\u0438 \u043e\u043f\u0438\u0441\u0430\u043d \u0442\u044f\u0436\u043a\u0438\u0439 \u043a\u0432\u0435\u0441\u0442 \u043f\u043e \u043e\u0446\u0438\u0444\u0440\u043e\u0432\u043a\u0435 \u0441\u0442\u0430\u0440\u044b\u0445 \u0441\u0435\u043c\u0435\u0439\u043d\u044b\u0445 \u0432\u0438\u0434\u0435\u043e\u0437\u0430\u043f\u0438\u0441\u0435\u0439 \u0441 \u0440\u0430\u0437\u0431\u0438\u0435\u043d\u0438\u0435\u043c \u0438\u0445 \u043d\u0430 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u0435 \u0441\u0446\u0435\u043d\u044b. \u041f\u043e\u0441\u043b\u0435 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0432\u0441\u0435\u0445 \u043a\u043b\u0438\u043f\u043e\u0432 \u044f \u0445\u043e\u0442\u0435\u043b \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u0438\u0445 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440 \u0432 \u043e\u043d\u043b\u0430\u0439\u043d\u0435 \u0442\u0430\u043a\u043e\u0439 \u0436\u0435 \u0443\u0434\u043e\u0431\u043d\u044b\u0439, \u043a\u0430\u043a \u043d\u0430 YouTube. \u041f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u044d\u0442\u043e \u043b\u0438\u0447\u043d\u044b\u0435 \u0432\u043e\u0441\u043f\u043e\u043c\u0438\u043d\u0430\u043d\u0438\u044f \u0441\u0435\u043c\u044c\u0438, \u043d\u0430 \u0441\u0430\u043c\u043e\u043c YouTube \u0438\u0445 \u0432\u044b\u043a\u043b\u0430\u0434\u044b\u0432\u0430\u0442\u044c \u043d\u0435\u043b\u044c\u0437\u044f. \u041d\u0443\u0436\u0435\u043d \u0431\u043e\u043b\u0435\u0435 \u043f\u0440\u0438\u0432\u0430\u0442\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433, \u043e\u0434\u043d\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e \u0443\u0434\u043e\u0431\u043d\u044b\u0439 \u0438 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u044b\u0439. \u0428\u0430\u0433 3.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/it\/blog\/administrirovanie\/moj-vosmiletnij-kvest-po-oczifrovke-45-videokasset-chast-2\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 4.9.10\" \/>\n\t\t<meta property=\"og:locale\" content=\"it_IT\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u041c\u043e\u0439 \u0432\u043e\u0441\u044c\u043c\u0438\u043b\u0435\u0442\u043d\u0438\u0439 \u043a\u0432\u0435\u0441\u0442 \u043f\u043e \u043e\u0446\u0438\u0444\u0440\u043e\u0432\u043a\u0435 45 \u0432\u0438\u0434\u0435\u043e\u043a\u0430\u0441\u0441\u0435\u0442. \u0427\u0430\u0441\u0442\u044c 2 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0412 \u043f\u0435\u0440\u0432\u043e\u0439 \u0447\u0430\u0441\u0442\u0438 \u043e\u043f\u0438\u0441\u0430\u043d \u0442\u044f\u0436\u043a\u0438\u0439 \u043a\u0432\u0435\u0441\u0442 \u043f\u043e \u043e\u0446\u0438\u0444\u0440\u043e\u0432\u043a\u0435 \u0441\u0442\u0430\u0440\u044b\u0445 \u0441\u0435\u043c\u0435\u0439\u043d\u044b\u0445 \u0432\u0438\u0434\u0435\u043e\u0437\u0430\u043f\u0438\u0441\u0435\u0439 \u0441 \u0440\u0430\u0437\u0431\u0438\u0435\u043d\u0438\u0435\u043c \u0438\u0445 \u043d\u0430 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u0435 \u0441\u0446\u0435\u043d\u044b. \u041f\u043e\u0441\u043b\u0435 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0432\u0441\u0435\u0445 \u043a\u043b\u0438\u043f\u043e\u0432 \u044f \u0445\u043e\u0442\u0435\u043b \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u0438\u0445 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440 \u0432 \u043e\u043d\u043b\u0430\u0439\u043d\u0435 \u0442\u0430\u043a\u043e\u0439 \u0436\u0435 \u0443\u0434\u043e\u0431\u043d\u044b\u0439, \u043a\u0430\u043a \u043d\u0430 YouTube. \u041f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u044d\u0442\u043e \u043b\u0438\u0447\u043d\u044b\u0435 \u0432\u043e\u0441\u043f\u043e\u043c\u0438\u043d\u0430\u043d\u0438\u044f \u0441\u0435\u043c\u044c\u0438, \u043d\u0430 \u0441\u0430\u043c\u043e\u043c YouTube \u0438\u0445 \u0432\u044b\u043a\u043b\u0430\u0434\u044b\u0432\u0430\u0442\u044c \u043d\u0435\u043b\u044c\u0437\u044f. \u041d\u0443\u0436\u0435\u043d \u0431\u043e\u043b\u0435\u0435 \u043f\u0440\u0438\u0432\u0430\u0442\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433, \u043e\u0434\u043d\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e \u0443\u0434\u043e\u0431\u043d\u044b\u0439 \u0438 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u044b\u0439. \u0428\u0430\u0433 3.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/it\/blog\/administrirovanie\/moj-vosmiletnij-kvest-po-oczifrovke-45-videokasset-chast-2\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2020-10-24T18:42:20+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-11-17T22:58:46+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47La mia avventura di otto anni per digitalizzare 45 videocassette. Parte 2 | ProHoster","description":"Nella prima parte si descrive la difficile missione di digitalizzare vecchie registrazioni video di famiglia, suddividendole in singole scene. Dopo aver elaborato tutti i clip, volevo organizzare la loro visione online in modo altrettanto comodo come su YouTube. Poich\u00e9 si tratta di ricordi personali della famiglia, non possono essere pubblicati su YouTube. Serve un hosting pi\u00f9 privato, che sia allo stesso tempo comodo e sicuro. Passo 3.","canonical_url":"https:\/\/prohoster.info\/it\/blog\/administrirovanie\/moj-vosmiletnij-kvest-po-oczifrovke-45-videokasset-chast-2","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"it_IT","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u041c\u043e\u0439 \u0432\u043e\u0441\u044c\u043c\u0438\u043b\u0435\u0442\u043d\u0438\u0439 \u043a\u0432\u0435\u0441\u0442 \u043f\u043e \u043e\u0446\u0438\u0444\u0440\u043e\u0432\u043a\u0435 45 \u0432\u0438\u0434\u0435\u043e\u043a\u0430\u0441\u0441\u0435\u0442. \u0427\u0430\u0441\u0442\u044c 2 | ProHoster","og:description":"\u0412 \u043f\u0435\u0440\u0432\u043e\u0439 \u0447\u0430\u0441\u0442\u0438 \u043e\u043f\u0438\u0441\u0430\u043d \u0442\u044f\u0436\u043a\u0438\u0439 \u043a\u0432\u0435\u0441\u0442 \u043f\u043e \u043e\u0446\u0438\u0444\u0440\u043e\u0432\u043a\u0435 \u0441\u0442\u0430\u0440\u044b\u0445 \u0441\u0435\u043c\u0435\u0439\u043d\u044b\u0445 \u0432\u0438\u0434\u0435\u043e\u0437\u0430\u043f\u0438\u0441\u0435\u0439 \u0441 \u0440\u0430\u0437\u0431\u0438\u0435\u043d\u0438\u0435\u043c \u0438\u0445 \u043d\u0430 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u0435 \u0441\u0446\u0435\u043d\u044b. \u041f\u043e\u0441\u043b\u0435 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0432\u0441\u0435\u0445 \u043a\u043b\u0438\u043f\u043e\u0432 \u044f \u0445\u043e\u0442\u0435\u043b \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u0438\u0445 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440 \u0432 \u043e\u043d\u043b\u0430\u0439\u043d\u0435 \u0442\u0430\u043a\u043e\u0439 \u0436\u0435 \u0443\u0434\u043e\u0431\u043d\u044b\u0439, \u043a\u0430\u043a \u043d\u0430 YouTube. \u041f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u044d\u0442\u043e \u043b\u0438\u0447\u043d\u044b\u0435 \u0432\u043e\u0441\u043f\u043e\u043c\u0438\u043d\u0430\u043d\u0438\u044f \u0441\u0435\u043c\u044c\u0438, \u043d\u0430 \u0441\u0430\u043c\u043e\u043c YouTube \u0438\u0445 \u0432\u044b\u043a\u043b\u0430\u0434\u044b\u0432\u0430\u0442\u044c \u043d\u0435\u043b\u044c\u0437\u044f. \u041d\u0443\u0436\u0435\u043d \u0431\u043e\u043b\u0435\u0435 \u043f\u0440\u0438\u0432\u0430\u0442\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433, \u043e\u0434\u043d\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e \u0443\u0434\u043e\u0431\u043d\u044b\u0439 \u0438 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u044b\u0439. \u0428\u0430\u0433 3.","og:url":"https:\/\/prohoster.info\/it\/blog\/administrirovanie\/moj-vosmiletnij-kvest-po-oczifrovke-45-videokasset-chast-2","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2020-10-24T18:42:20+00:00","article:modified_time":"2020-11-17T22:58:46+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"98188","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":null,"breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-02-28 10:03:30","updated":"2022-09-30 07:22:33"},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/posts\/98188","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/comments?post=98188"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/posts\/98188\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/media\/98189"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/media?parent=98188"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/categories?post=98188"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/tags?post=98188"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}