TS6290 e formato dei file MPEG - Problemi di sincronizzazione.

nellinux

Digital-Forum New User
Registrato
20 Giugno 2010
Messaggi
1
Ciao a tutti,

posto per la prima volta in DF.

Ho un problema con la struttura dati prodotta in fase di registrazione dal ricevitore terrestre Tele system TS6290.

Ogni registrazione è posta in una directory a se', contenente una serie di file con estensione MPG ed un file con nome INFO.DVR.

Dalle ricerche fatte in rete ho appreso che tali file non sono MPEG standard PS o TS.

In questo sito:

http://www.eurosat-online.it/articoli/0,1254,39_ART_5615,00.html

si fa riferimento ad un formato DVR di cui non ho trovato le specifiche.

Il mio problema è che, come spesso accade,i file MPEG generati da questo genere di apparati hanno problemi di sincronizzazione che ne rendono problematica la manipolazione con Avidemux.

Fino ad ora ho sempre risolto questi problemi procedendo al demultiplexing con ProjectX, in modo da generare i flusso audio e video separati e correti, per poi effettuare il multiplexing con Mplex in modo da ottenere un file MPEG corretto e sincronizzato da potere manipolare con Avidemux.

Tale procedura non funziona più con i file MPG generati dal TS6290.

Qualcuno può aiutarmi ?

Grazie.

N.


P.S.

Per chi è interessato riporto di seguito il programma con cui effettuo normalmente le suddette operazioni di correzione.

-------------------------------------------------------------------------------------------------------
#!/bin/sh
#
# $Id: remux,v 1.9 2010/06/19 07:31:25 tnx Exp $
#

#
# Configurazione ambiente
#
APP_NAME=($basename $0)
PROJECTX='/usr/local/src/ProjectX_Source_0.90.4/ProjectX.jar'


function version {
v=$(sed -n /^#.*Id:/p $APP_NAME)
echo $v | sed 's/.*Id://'
}


function usage {
cat <<EOF
USO:
$(basename $0) [OPZIONI] MUXED_CONTAINER

OPZIONI:
-c to do not clear temporary objects
-d to specify a temporary file directory
-h this help page
-o to specify an output file
-V print program version
EOF
exit 1
}

function print_params {
cat <<EOF
name: $name
input file: $input_file
output file: $output_file
clear: $clear_temp
temp dir: $temp_dir

PROJECTX: $PROJECTX
EOF
}

function execterm {
echo $1
print_params
echo "Execution terminated."
exit -1
}

#### MAIN ###

EXIT_SUCCESS=0
NOOP=0
PWD=`pwd`


#
# Gestione dei parametri e delle opzioni
#
while getopts ":hVcd:eek::" option; do
case $option in
c) clear_temp='f'
;;
d) temp_dir=$OPTARG
;;
o) output_file=$OPTARG
;;
h) usage
exit $EXIT_SUCCESS
;;
V) version
exit $EXIT_SUCCESS
;;
esac
done

shift $(($OPTIND - 1))


#
# Inizializzazione parametri e controllo validita'
#
input_file=$1
output_file=${output_file:=$1.rmx}
temp_dir=${temp_dir:=$PWD}
clear_temp=${clear_temp:='t'}
name=${input_file%.*}

[ -r $1 ] || execterm "The file $1 is not redeable or does not exist."

[ "$1" == "" ] && usage #execterm "You must specify a file (MUXED_CONTAINER) to remux."

mkdir -p $temp_dir || execterm "The directory $temp_dir is not writable or does not exist."

[ "$input_file" == "$output_file" ] && execterm "Input and output files are the same ($input_file)."

[ -r $PROJECTX ] || execterm "The file $PROJECTX is not readable or does not exist."

print_params

#
# Elaborazione
#



java -jar $PROJECTX -out $temp_dir $input_file \
&& mplex -f8 -o $output_file $temp_dir/$name.mp2 $temp_dir/$name.m2v

#
# Cancello gli oggetti temporanei
# (opzione -c)
#
if [ "$clear_temp" == "t" ]; then
rm $temp_dir/$name.mp2
rm $temp_dir/$name.m2v
rm "$temp_dir/$name"_log.txt
fi

--------------------------------------------------------------------------------------------------------
 
:5eek: :5eek: :5eek: Azz ... usi un tool del genere ... e quindi non ti sarà difficile comprendere ciò che è riportato in merito a questi file .dvr nel 3ad dedicato al Virtualdub.... lo trovi in "testa" al presente... :D
Leggi attentamente poichè li puoi trasformare anche in dvd ... e senza perdere il sincronismo.

Saluti
by Ram ;)
 
se usi PVA strumento, "make PS", nella cartella video, ricordati di togliere il flag alla casella "split se ci sono interruzioni di aspect ratio", altrimenti potrebbe capitarti che durante le pubblicità, cambi formato, spezzettandoti comunque il risultato finale.

Se ti va puoi usare il comando COPY di DOS per unire i vari MPG, ed una volta uniti i file darli in pasto ad Avidemux, il problema del delay ce l' avresti comunque, e dovresti cercarti empiricamente il ritardo giusto da dargli, ma cmq ci vuol poco a tentoni ci si arriva.

Altro sistema che mi ha insegnato il buon ramsete, è quello di aprire il file totale con DGIndex, poi fare un "save and demux" in maniera tale da avere un file VIDEO ed un file AUDIO, con annesso ritardo da utilizzare (inserito nel nome del file audio), e poi dare in pasto a VirtualDub i due file.

Ciao

P.S. ops, mi sono accorto solo ora che sei un Linux user.
 
Indietro
Alto Basso