Star Trek Continues: ffmeg dvdsub: 자막이 겹칩니다.

Star Trek Continues: ffmeg dvdsub: 자막이 겹칩니다.

그래서 저는 팬이 만든 무료 다운로드를 다운로드했습니다.스타트렉은 계속된다블루레이 ISO에피소드 1~3휴대폰에서 시청할 수 있도록 FHD 1920x1080을 SD 960x540으로 변환하려고 합니다.

ffmpeg -canvas_size 960x540 \
-i /media/STC_VOL1_BR/BDMV/STREAM/00000.m2ts \
-map_metadata -1 \
-c:v libx264 -map 0:0 -strict -2 -r 24 -s 960x540 \
-c:a libmp3lame -map 0:1 -b:a 384K \
-metadata:s:s:0 language=EN -c:s dvdsub -map 0:2 \
/media/Videos/Star\ Trek\ Continues/S01E01\ Pilgrim\ Of\ Eternity.mkv

하지만 변환된 mkv를 몇 초 동안 본 후에 자막은 다음과 같습니다.

  • 겹쳐서 읽을 수 없음
  • 약간 크다(문제 없음)
  • 화면 오른쪽과 아래쪽으로 이동했습니다.

VLC 스크린샷

여기에 전체 ffmpeg 출력이 있습니다.

내가 도대체 ​​뭘 잘못하고있는 겁니까?

참고 1:저는 자막만 다룬 적이 srt있고 dvdsub가 이미지라는 것을 알고 있기 때문에 canvas_size매개변수가 도움이 될 것이라고 생각했지만 별 차이가 없습니다.
노트 2:예, 실제로는 순수한 우분투 OS 질문은 아니지만 계속해서 질문하겠습니다.video.se얻지 못함현상금이 있어도 관심을 가져라누군가가 비디오 변환을 수행하고 동일한 상황에 직면했다면 여기서 시도해 보십시오.

답변1

기술적으로는가장 깨끗한이 자막을 보면 다음과 같습니다.

  1. 자막 추출
  2. 즐겨 사용하는 OCR 응용 프로그램을 사용하여 텍스트로 변환하세요.
  3. 텍스트를 주의 깊게 검토하고 편집하세요.
  4. 선택한 크기, 색상, 방향 및 형식으로 미디어 스트림에 다시 굽습니다.

이는 규모가 크고 시간이 많이 소요되는 작업입니다.예전에 개인적으로 했던 일이 있는데하지만 아마도지나침이 경우.

그만큼더 나은옵션은 단순히 FFmpeg 옵션 -fix_sub_duration(배치됨) 을 추가하는 것입니다.~ 전에입력 파일) 그러면 아래에 설명된 것처럼 이중으로 표시된 자막이 수정되어 자막을 쉽게 읽을 수 있게 됩니다.

여기에 이미지 설명을 입력하세요

옵션 에 대한 자세한 내용은 -fix_sub_durationFFmpeg-all 매뉴얼 페이지에서 찾을 수 있지만 여기에는 이러한 세부 정보를 자유롭게 인용했습니다.

-fix_sub_duration

자막 길이를 수정하세요. 각 자막에 대해 동일한 스트림의 다음 패킷을 기다리고 첫 번째 패킷의 지속 시간을 조정하여 중복을 방지합니다. 이는 일부 자막 코덱, 특히 DVB 자막의 경우 필요합니다. 원본 패킷의 지속 시간은 대략적인 추정치일 뿐이고 끝은 실제로 빈 자막 프레임으로 표시되기 때문입니다. 필요한 경우 이 옵션을 사용하지 않으면 비단조적인 타임스탬프로 인해 기간이 과장되거나 다중화 오류가 발생할 수 있습니다.

이 옵션은 다음 자막 패킷이 디코딩될 때까지 모든 데이터의 출력을 지연시킵니다. 메모리 소비와 대기 시간이 많이 늘어날 수 있습니다.

당신은 이것이첫 번째고급 자막 옵션 중두번째-canvas_size당신이 이미 사용했던 것 입니다 ...

관련 정보