{"id":645,"date":"2013-01-26T14:17:59","date_gmt":"2013-01-26T14:17:59","guid":{"rendered":"http:\/\/www.budus.it\/Blog\/?p=645"},"modified":"2017-06-18T07:34:39","modified_gmt":"2017-06-18T07:34:39","slug":"convertire-registrazione-video-fatta-con-decoder-digitale-dicra-ricevitore-dvb-t-stb-pvr-su-imac","status":"publish","type":"post","link":"https:\/\/www.budus.it\/Blog\/convertire-registrazione-video-fatta-con-decoder-digitale-dicra-ricevitore-dvb-t-stb-pvr-su-imac\/","title":{"rendered":"Convertire registrazione video fatta con Decoder Digitale Dicra (RICEVITORE DVB-T STB PVR) su iMac"},"content":{"rendered":"<p>Ho questa necessit\u00e0: <strong>Registrare su penna USB un programma televisivo, tramite un Decoder Digitale Dicra (RICEVITORE DVB-T STB PVR), e convertirlo in modo che il risultato sia leggibile collegando la medesima penna USB ad un televisore che supporta la riproduzione di files multimediali (in genere AVI e MPG sono formati supportati); il tutto su MAC OS X (iMac).<\/strong><\/p>\n<p><!--more--><\/p>\n<p>Il DVB in questione, quando registra da DT (Digitale Terrestre), salva in formato MPG, tuttavia (non so bene per quale ragione, anche se un po&#8217; la immagino, ma ci sar\u00e0 &#8230;), suddivide il filmato in files da 700Mb circa che, maledettamente, non sono leggibili da nessun dispositivo (se non il primo file, quello di testa).<\/p>\n<p>Per\u00a0<em>sistemare la cosa<\/em> il trucco consiste nel concatenare, nell&#8217;ordine giusto (e qui non ci si pu\u00f2 sbagliare perch\u00e9, diligentemente, il DVB salva con un nome numerico progressivo, da 000.MPG, 001.MPG e cos\u00ec via), i file presenti nella cartella (per ogni\u00a0<em>videoregistrazione<\/em> crea una cartella, sotto il ramo &#8220;ALIDVR&#8221;, con un\u00a0<em>nome parlante<\/em>) in un unico file MPG.<\/p>\n<p>Nel mio caso, oltre a questa operazione, ho anche la necessit\u00e0 di tagliare il video risultante; infatti, il DVB in questione, quando avvia la registrazione, procede a registrare per 2 ore, quindi, interrompe autonomamente. Ecco che, da queste due ore di registrazione, io voglio estrapolare solo la parte che mi interessa.<\/p>\n<p>Per realizzare in modo semplice tutto questo mi sono realizzato uno Script Bash (in grado di funzionare su iMac ma che ritengo sia perfettamente compatibile anche su Linux, nonostante non lo abbia testato anche l\u00ec) che esegue in automatico l&#8217;operazione di concatenazione e, se necessario, successivamente consente di eseguire il taglio.<\/p>\n<p>Lo riporto, in modo che chiunque possa utilizzarlo o prendere spunto per altre cose:<\/p>\n<pre>#!\/bin\/bash\r\n\r\n# UDA'Software 2013\r\n# $Date: 2013\/01\/29 19:42:39 $\r\n# $Revision: 1.2 $\r\n\r\n# Questo script serve per convertire i dati di videoregistrazione\r\n# ALIDVR in un unico file mpg.\r\n\r\n###############################################################################\r\n#______________________________________________________________________________\r\nlist_MPG=\"$(ls *.MPG)\"\r\n\r\n###############################################################################\r\n#______________________________________________________________________________\r\nfunction hms() {\r\n    s=${1}\r\n    \r\n    h=$((${s} \/ 3600));\r\n    s=$((${s} - $((${h} * 3600))));\r\n    m=$((${s} \/ 60));\r\n    s=$((${s} - $((${m} * 60))));\r\n    \r\n    printf '%d:%02d:%02d\\n' ${h} ${m} ${s}\r\n}\r\n\r\n###############################################################################\r\n#______________________________________________________________________________\r\nif [ \"${list_MPG}\" == \"\" ]; then\r\n    printf 'ERRORE: Nella cartella corrente non sono presenti file MPG.\\n' \r\nelse\r\n    output_mpg_filename=\"$(pwd | sed 's@.*\/@@' | sed 's@[^a-zA-Z0-9]@_@g').mpg\"\r\n    if [ -f \"full_${output_mpg_filename}\" ]; then\r\n\tstart_time=\"${1}\"\r\n\tend_time=\"${2}\"\r\n\tif [ ${start_time:-0} != 0 ] &amp;&amp; [ {$end_time:-0} != 0 ]; then\r\n\t    start_time_seconds=$((${start_time:0:1} * 3600 + ${start_time:2:2} * 60 + ${start_time:5:2}))\r\n\t    end_time_seconds=$((${end_time:0:1} * 3600 + ${end_time:2:2} * 60 + ${end_time:5:2}))\r\n\t    duration_time_seconds=$((${end_time_seconds} - ${start_time_seconds}))\r\n\t    duration_time=$(hms ${duration_time_seconds})\r\n\t    \r\n\t    if [ \"$(which ffmpeg)\" != \"\" ]; then\r\n\t\tffmpeg -sameq -ss ${start_time} -t ${duration_time} -i \"full_${output_mpg_filename}\" \"cut_${output_mpg_filename\/full_}\"\r\n\t\t\r\n\t\trm \"full_${output_mpg_filename}\"\r\n\t\tprintf '* CONVERSIONE TERMINATA *\\n'\r\n\t\tprintf 'Taglio iniziato a %s per una durata di %s .\\n' ${start_time} ${duration_time}\r\n\t    else\r\n\t\tprintf 'ERRORE: Il software di conversione video  ffmpeg  non risulta installato nel sistema o comunque non risulta possibile eseguirlo; verificare che sia correttamente installato e disponibile nella PATH (%s)\\n' \"${PATH}\"\r\n\t    fi\r\n\telse\r\n\t    printf 'ERRORE: Devi specificare la posizione di inizio (h:mm:ss) e di durata (h:mm:ss).\\n'\r\n\t    printf 'SINTASSI: %s h:mm:ss h:mm:ss\\n' \"${0}\"\r\n\tfi\r\n    else\r\n\tcat ${list_MPG} &gt; \"cat_${output_mpg_filename}\"\r\n\tffmpeg -sameq -i \"cat_${output_mpg_filename}\" \"full_${output_mpg_filename\/full_}\"\r\n\trm \"cat_${output_mpg_filename}\"\r\n\t\r\n\tcat&lt;&lt;EOF\r\n\r\nIl file mpg visualizzabile con un visualizzatore standard e' stato\r\ncreato.\r\n\r\nPuoi visualizzarlo aprendo il file \"full_${output_mpg_filename}\"; se desideri anche tagliarlo, puoi utilizzare questa sintassi:\r\n\r\n${0} &lt;start_time&gt; &lt;end_time&gt;\r\n\r\ndove \"start_time\" e \"end_time\" sono rispettivamente il tempo dove deve finire il taglio (partendo dall'inizio del filmato) e \"end_time\" il tempo dove deve iniziare il successivo (ovvero: viene tagliato il resto del filmato), i quali, vanno forniti nella forma h:mm:ss . Esempio:\r\n\r\n${0} 0:30:00 1:30:00\r\n\r\nViene tagliata la prima mezzora di filmato e ne viene conservata la successiva ora.\r\n\r\nEOF\r\n    fi\r\nfi\r\n\r\n###############################################################################\r\n#______________________________________________________________________________\r\n<\/pre>\n<h2>\u00a0Ok, ma come lo si installa su iMac e, soprattutto, lo uso ?<\/h2>\n<p>Mi rendo conto che, chi \u00e8 poco avvezzo a creare script e utilizzarli, potrebbe avere difficolt\u00e0 con quanto scritto sopra: non sa come utilizzare lo script !<\/p>\n<p>Bisogna operare in due modi:<\/p>\n<ul>\n<li>Installare lo Script dandogli come nome del file &#8220;UDA_ConvertiALIDVR_in_mpg&#8221;; <a title=\"Mac OS X: Creare una propria cartella per gli Script Bash\" href=\"https:\/\/www.budus.it\/Blog\/?p=651\" target=\"_blank\" rel=\"noopener\">questo articolo<\/a> spiega come, sul proprio iMac, \u00e8 possibile crearsi una cartella dove custodire i propri script e renderli disponibili facilmente da terminale.<\/li>\n<li>Utilizzare lo script da terminale in questo modo:\n<ul>\n<li>Si apre una cartella nel Finder e, nella barra dei\u00a0<strong>PREFERITI<\/strong>, si va su\u00a0<em><strong>Filmati<\/strong><\/em> e qui si crea una cartella\u00a0<em><strong>Videoregistratore<\/strong><\/em> .<\/li>\n<li>Si collega la chiavetta USB all&#8217;iMac, si apre il contenuto nel Finder e si sposta le cartelle delle videoregistrazioni che si desidera convertire (si trovano sotto la cartella\u00a0<em><strong>ALIDVR<\/strong><\/em>) nella cartella precedentemente creata.<\/li>\n<li>Si apre un Terminale; per farlo, nel Finder, basta andare in\u00a0<em><strong>Applicazioni-&gt;Utility-&gt;Terminale<\/strong><\/em> .<\/li>\n<li>Nel terminale si scrive (senza premere INVIO) il seguente comando:\n<pre>cd<\/pre>\n<p>facendo attenzione a mantenere lo spazio finale, quindi, dal Finder si prende la cartella contenente il filmato che si desidera convertire, la si trascina nella finestra del terminale, si clicca su quest&#8217;ultima per renderla attiva e si preme INVIO (questo passaggio \u00e8 un trucco per rendere &#8220;corrente&#8221; la cartella su cui si desidera operare, in modo facile e sicuro).<\/li>\n<li>Ora, sempre da terminale, si da il seguente comando:\n<pre>UDA_ConvertiALIDVR_in_mpg<\/pre>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<p><span style=\"font-size: medium;\"><span style=\"line-height: 24px;\">Tutto qui, il resto avviene da se; lo script, dopo aver concatenato i files presenti, fornisce delle istruzioni per eseguire il taglio. Le scrivo anche qui per completezza:<\/span><\/span><\/p>\n<ul>\n<li style=\"list-style-type: none;\">\n<ul>\n<li>Con un buon visualizzatore video (<a title=\"VLC (Visualizzatore Video)\" href=\"http:\/\/www.videolan.org\/vlc\/\" target=\"_blank\" rel=\"noopener\">VLC<\/a>, ad esempio) si apre il filmato e si cerca la posizione dove inizia la parte di filmato interessata e quella dove finisce; ad esempio, se inizia dopo mezzora e finisce dopo dopo un&#8217;ora, avremo che i tempi relativi saranno rispettivamente 0:30:00 e 1:30:00 .<\/li>\n<li>A terminale si esegue il seguente comando:\n<pre>UDA_ConvertiALIDVR_in_mpg 0:30:00 1:30:00<\/pre>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<p><span style=\"font-size: medium;\"><span style=\"line-height: 24px;\">I file prodotti in output dallo script possono poi essere spostati sulla chiavetta, in modo da poterli vedere con un visualizzatore di file MPG (alcuni televisori supportano questa possibilit\u00e0). <\/span><\/span><\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Ho questa necessit\u00e0: Registrare su penna USB un programma televisivo, tramite un Decoder Digitale Dicra (RICEVITORE DVB-T STB PVR), e convertirlo in modo che il risultato sia leggibile collegando la medesima penna USB ad un televisore che supporta la riproduzione di files multimediali (in genere AVI e MPG sono formati supportati); il tutto su MAC &hellip; <a href=\"https:\/\/www.budus.it\/Blog\/convertire-registrazione-video-fatta-con-decoder-digitale-dicra-ricevitore-dvb-t-stb-pvr-su-imac\/\" class=\"more-link\">Leggi tutto<span class=\"screen-reader-text\"> &#8220;Convertire registrazione video fatta con Decoder Digitale Dicra (RICEVITORE DVB-T STB PVR) su iMac&#8221;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[10,6,132],"tags":[11,187,12,9,154,16,99],"class_list":["post-645","post","type-post","status-publish","format-standard","hentry","category-multimedia","category-software","category-video","tag-decoder-digitale-terrestre","tag-dvb","tag-ffmpeg","tag-linux","tag-mac-os-x","tag-mpg","tag-script"],"_links":{"self":[{"href":"https:\/\/www.budus.it\/Blog\/wp-json\/wp\/v2\/posts\/645","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.budus.it\/Blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.budus.it\/Blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.budus.it\/Blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.budus.it\/Blog\/wp-json\/wp\/v2\/comments?post=645"}],"version-history":[{"count":11,"href":"https:\/\/www.budus.it\/Blog\/wp-json\/wp\/v2\/posts\/645\/revisions"}],"predecessor-version":[{"id":873,"href":"https:\/\/www.budus.it\/Blog\/wp-json\/wp\/v2\/posts\/645\/revisions\/873"}],"wp:attachment":[{"href":"https:\/\/www.budus.it\/Blog\/wp-json\/wp\/v2\/media?parent=645"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.budus.it\/Blog\/wp-json\/wp\/v2\/categories?post=645"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.budus.it\/Blog\/wp-json\/wp\/v2\/tags?post=645"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}