gravações de televisão WTV e DVR-MS, devo desentrelaçar ou não?

2

Seguindo a esta pergunta (onde eu estou convertendo gravações de televisão WTV e DVR-MS em H.264 / MPEG -4 AVC para reduzir o espaço), dada a saída de ffmpeg -i <filename> , como posso descobrir se devo ou não desentrelaçar o arquivo convertido?

A saída para um desses arquivos é exibida abaixo:

Input #0, asf, from 'Episodes_BBC TWO_2012_06_29_21_59_00.dvr-ms':
  Metadata:
    DVR Index Granularity: 500
    WM/SubTitleDescription: 8/9. Matt's life continues to fall apart when he fal
ls foul of his fierce ex-wife. Beverly prepares to go on a second date with Morn
ing's brother Rob. Contains strong language.  Also in HD. [AD,S]
    genre           : Shows;Other Shows
    WM/OriginalReleaseTime: 0
    WM/MediaCredits : ;;;
    service_provider: BBC TWO
    service_name    : BBC TWO
    WM/MediaNetworkAffiliation: BBC TWO
    WM/MediaOriginalChannel: 2
    WM/MediaOriginalChannelSubNumber: 0
    WM/MediaOriginalBroadcastDateTime: 0001-01-01T00:00:00Z
    WM/MediaOriginalRunTime: 1991686
    WM/MediaIsStereo: 0
    WM/MediaIsRepeat: 0
    WM/MediaIsLive  : 0
    WM/MediaIsTape  : 0
    WM/MediaIsDelay : 0
    WM/MediaIsSubtitled: 0
    WM/MediaIsMovie : 0
    WM/MediaIsPremiere: 0
    WM/MediaIsFinale: 0
    WM/MediaIsSAP   : 0
    WM/MediaIsSport : 0
    WM/Provider     : Default
    WM/VideoClosedCaptioning: 0
    WM/WMRVEncodeTime: 6349638
    WM/WMRVSeriesUID: !GenericSeries!Episodes
    WM/WMRVServiceID: !Generated!73b6594426b64c11b54ca352d79bb758
    WM/WMRVProgramID: !Loaders!Glid!Programs!9018:4164:4287!60652
    WM/WMRVRequestID: 0
    WM/WMRVScheduleItemID: 0
    WM/WMRVQuality  : 0
    WM/WMRVOriginalSoftPrePadding: 360
    WM/WMRVOriginalSoftPostPadding: 60
    WM/WMRVHardPrePadding: 184
    WM/WMRVHardPostPadding: 0
    WM/WMRVATSCContent: 0
    WM/WMRVDTVContent: 1
    WM/WMRVHDContent: 0
    WM/WMRVEndTime  : 1844674
    WM/WMRVBitrate  : 1844674
    WM/WMRVKeepUntil: 0
    WM/WMRVActualSoftPrePadding: 382
    WM/WMRVActualSoftPostPadding: 63
    WM/WMRVContentProtected: 0
    WM/WMRVContentProtectedPercent: 0
    WM/WMRVExpirationDate: 1844674
    WM/WMRVExpirationSpan: 1844674
    WM/WMRVInBandRatingSystem: 255
    WM/WMRVInBandRatingLevel: 255
    WM/WMRVInBandRatingAttributes: 0
    WM/WMRVWatched  : 0
    WM/MediaThumbType: 3
    WMFSDKVersion   : 12.0.7601.17514
    WMFSDKNeeded    : 0.0.0.0000
    VBR Peak        : 159
    IsVBR           : 1
    title           : Episodes
  Duration: 00:31:56.21, start: 0.000000, bitrate: 2658 kb/s
    Stream #0:0(eng): Audio: mp2, 48000 Hz, stereo, s16, 256 kb/s
    Stream #0:1(eng): Unknown: none
    Stream #0:2(eng): Video: mpeg2video (DVR  / 0x20525644), yuv420p, 704x480 [S
AR 64:45 DAR 1408:675], 15000 kb/s, 25.03 fps, 125 tbr, 1k tbn, 50 tbc
    
por Richard 16.07.2012 / 22:27

1 resposta

1

Citando Carl-Eugen Hoyos, um dos desenvolvedores do FFmpeg (se Eu não estou enganado, pelo menos ele é a pessoa mais ativa na lista de discussão do FFmpeg):

Decoding is necessary to determine if the input is interlaced, if you you encode immediately or later is your decision...

Então, não - você não pode dizer isso na hora. O que você precisa fazer é tentar decodificar o vídeo para obter as informações com segurança.

Embora eu não veja nada de especial em sua saída, pode-se adivinhar a diferença entre tbc e a taxa de quadros real que o entrelaçamento é usado para este videoclipe em particular.

Dito isso, alguns contêineres podem ter as informações adequadas sobre o conjunto de entrelaçamento. Verifique a saída mediainfo do arquivo de vídeo e procure os campos de metadados Scan type e Scan order . O primeiro deve mostrar interlaced ou progressive .

    
por 16.07.2012 / 22:58