ffmpeg .mpg para DVD (via DVDAUTHOR) proporção de 4: 3 errada

0

Eu tentei obter uma taxa de proporção de 4: 3 correta para a apresentação de DVD-TV, mas nada parece acertar. Então, eu fiz um TEST 448x336 px T.MKV filme que tem um fundo branco e dois quadrados de cores diferentes dentro. O filme MKV mostra quadrados perfeitos e 72x72ppi-GIMP, mas o quadrado Test.mpg (72x81ppi) criado por DVDAUTHOR no DVD está desativado. O quadrado de 336px está fora de 14,5 "x13,5" em um monitor de TV LCD widescreen de 42 "/ leitor de Blu-Ray da Sony. O filtro de escala 10/11 é o mais próximo, mas ainda está desligado. Segmento de código segue:

ffmpeg BLAH -f dvd -target ntsc-dvd -filter:v "fps=30000/1001,scale='w=min(448,trunc((336*10/11*dar)/2+0.5)*2):h=min(336,trunc((448*11/10/dar)/2+0.5)*2)',pad='w=720:h=480:x=(ow-iw)/2:y=(oh-ih)/2',setsar='r=10/11'" -pix_fmt yuv420p -q:v 0 BLAH T1.MPG

O caminho padrão 4: 3 está muito distante. A TV exibe cerca de 15,25 "x12,625". O snippet de código segue:

ffmpeg BLAH -f dvd -target ntsc-dvd -aspect 4:3 -filter:v "fps=30000/1001,scale=448:336,pad=720:480:136:72:black" -pix_fmt yuv420p -q:v 0 BLAH T2.MPG. 

Meu objetivo é obter um filme de aspecto 4: 3 de 448x336 px com o tamanho correto e centralizado na tela da TV. Qualquer ajuda seria muito apreciada.

    
por Kendo2 08.10.2015 / 22:17

2 respostas

0

Eu respondi minha própria pergunta para este vídeo específico. Meu grande quadrado de 336px é quadrado na minha TV. 10/11 era muito largo na largura e 9/11 era muito estreito na largura. A altura está bloqueada ou a mesma. Então eu medi uma resposta na TV, mas eu não sei sobre outros combos de TV / DVD player. Eu também não sei a fórmula para ser bem sucedido para todos os vídeos acolchoados ou não acolchoados, outras proporções e problemas de dimensionamento. Quando o tempo permitir, alguém por favor responderia com matemática? O snippet de código segue:

ffmpeg FOO -f dvd -target ntsc-dvd -filter:v "fps=30000/1001,scale='w=min(448,trunc((336*8453/10000*dar)/2+0.5)*2):h=min(336,trunc((448*10000/8453/dar)/2+0.5)*2)',pad='w=720:h=480:x=(ow-iw)/2:y=(oh-ih)/2',setsar='r=8453/10000',setdar='dar=4/3'" -pix_fmt yuv420p -q:v 0 FOO T(8453-10000).mkv
    
por 09.10.2015 / 19:10
0

Compensar o overscan de TV = 5% (normalmente) em um vídeo de proporção de 16: 9 para - > NTSC DVD:
SAR × PAR = DAR
(SAR) relação de aspecto de armazenamento é a relação entre largura e altura (em pixels) da imagem ou vídeo armazenado.
Proporção de pixel (PAR) é a proporção de um único pixel em uma imagem armazenada. No vídeo, os pixels nem sempre são quadrados. Quando não é quadrado, a largura normalmente usa mais pixels (PPI) do que a altura, que geralmente é de 72 ppi.
(DAR) é o seu formato de exibição normalmente 4: 3 ou 16: 9 - neste caso. Um DDR de 720x480 (SAR 3: 2 , e um 16: 9 é dado. O PAR é então calculado: DAR / SAR = PAR ou 16/9 / (3 /2)=16/9x2/3=1.185185 ... O recíproco de 1 / 1.185185 ... = 0,84375. Como se viu, o ffmpeg usa diferentes notações . O SAR como visto em ffprobe é realmente o PAR .Em qualquer caso, a notação típica para PAR (chamada SAR por ffmpeg) é normalmente mostrada como "sample_aspect_ratio": "32:27". 32/27 = 1,185185 ...

Um anamórfico (85,3333: 72 pixels (não-retangulares) de vídeo DVD PAR = 32/27 com uma proporção de exibição 16: 9 (DAR), o filme não cabe na tela da TV corretamente se tirada de um formato 16: 9 perfeito. Você perderá 5% devido ao overscan. A maioria dos DVDs comerciais não compensa esse fato. Não diga a Hitchcock isso. Então, se você tiver um 1280 : 720 ou 1920: 1080 (i) source, você pode tanto escalar + pad ele primeiro em 0.95 * 1280: 720 = 1216: 684 e pad ele para 1280: 720, então recodificar usando o padrão -s 720: 480 ffmpeg -target ntsc-dvd parâmetros OR escala uma vez. Trecho de código a seguir:

-filter_complex "[0:v]setpts=PTS-STARTPTS,scale='w=min(684,trunc((456*27/32*dar)/2+0.5)*2):h=min(456,trunc((684*32/27/dar)/2+0.5)*2)':flags=lanczos+accurate_rnd+full_chroma_inp,pad='w=720:h=480:x=(ow-iw)/2:y=(oh-ih)/2',setsar='r=32/27',fps=30000/1001"

Este conceito de dimensionamento fará com que o seu vídeo seja ajustado exatamente na sua tela de TV 16: 9 - sem precisar recodificar! O exemplo '40 / 33 ', muitas vezes visto é bom, mas não se destina a ser usado neste caso.

    
por 31.08.2016 / 17:27