MediaConvert가 회전하지 않습니다!
안녕하세요, 너무 많은 더위에 아침 5시에 개를 산책을 끝내는 streampack 기무라입니다.
벌써, 6시 지나면 더워요!
그건 그렇고, MediaConvert를 사용하고 있어 곤란한 일이 있었기 때문에 기사로 합니다.
추가
2019/2/21에 MediaConvert에 동영상 회전 기능이 추가되었으므로 현재는 제대로 회전합니다.
AWS Elemental MediaConvert는 새 동영상 회전 및 광고 마커 삽입 지원
어려움
음, 스마트 폰으로 세로로 촬영 한 동영상을 MediaConvert로 변환하면 가로가 되어 버립니다.
이상
현실
큰 벅 버니
©copyright 2008, Blender Foundation | ㅋㅋㅋ 미세 g 부분 ck 분 y. 오 rg
이것이군요, MediaConvert 측에서 설정을 아무리 반죽 돌려도, 이미 어쩔 수 없어요.
우선 원래 동영상의 정보를 살펴 보겠습니다.
$ ffprobe IMG_0012.MOV
ffprobe version n4.0.1-5-gb5106c5aa2 Copyright (c) 2007-2018 the FFmpeg developers
built with Apple LLVM version 9.1.0 (clang-902.0.39.2)
configuration: --enable-version3 --enable-gpl --enable-libvmaf --enable-libx264 --enable-libx265 --enable-libvpx --enable-libaom --prefix=/usr/local --enable-nonfree --enable-static --disable-shared --extra-cflags='-I/usr/local/include -I/usr/include -I/Users/kimura/git/aom/aom_build' --extra-ldflags=-L/usr/local/lib --enable-libfreetype --extra-libs=-lpthread
libavutil 56. 14.100 / 56. 14.100
libavcodec 58. 18.100 / 58. 18.100
libavformat 58. 12.100 / 58. 12.100
libavdevice 58. 3.100 / 58. 3.100
libavfilter 7. 16.100 / 7. 16.100
libswscale 5. 1.100 / 5. 1.100
libswresample 3. 1.100 / 3. 1.100
libpostproc 55. 1.100 / 55. 1.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'IMG_0012.MOV':
Metadata:
major_brand : qt
minor_version : 0
compatible_brands: qt
creation_time : 2018-08-03T03:23:32.000000Z
com.apple.quicktime.location.ISO6709: +35.6666+139.7495+080.740/
com.apple.quicktime.make: Apple
com.apple.quicktime.model: iPhone 7
com.apple.quicktime.software: 11.4.1
com.apple.quicktime.creationdate: 2018-08-03T12:23:32+0900
Duration: 00:00:15.91, start: 0.000000, bitrate: 11856 kb/s
Stream #0:0(und): Video: hevc (Main) (hvc1 / 0x31637668), yuv420p(tv, bt709), 1920x1080, 11737 kb/s, 59.96 fps, 59.94 tbr, 600 tbn, 600 tbc (default)
Metadata:
rotate : 90
creation_time : 2018-08-03T03:23:32.000000Z
handler_name : Core Media Data Handler
encoder : HEVC
Side data:
displaymatrix: rotation of -90.00 degrees
Stream #0:1(und): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, mono, fltp, 95 kb/s (default)
Metadata:
creation_time : 2018-08-03T03:23:32.000000Z
handler_name : Core Media Data Handler
Stream #0:2(und): Data: none (mebx / 0x7862656D), 0 kb/s (default)
Metadata:
creation_time : 2018-08-03T03:23:32.000000Z
handler_name : Core Media Data Handler
Stream #0:3(und): Data: none (mebx / 0x7862656D), 0 kb/s (default)
Metadata:
creation_time : 2018-08-03T03:23:32.000000Z
handler_name : Core Media Data Handler
Unsupported codec with id 0 for input stream 2
Unsupported codec with id 0 for input stream 3
네, 이상한 부분이 두 곳 있습니다.
발췌
Stream #0:0(und): Video: hevc (Main) (hvc1 / 0x31637668), yuv420p(tv, bt709), 1920x1080, 11737 kb/s, 59.96 fps, 59.94 tbr, 600 tbn, 600 tbc (default)
Metadata:
rotate : 90
동영상 해상도가 1920x1080, 그리고 메타데이터에 rotate : 90이 기재되어 있습니다.
아무래도 이런 것 같습니다.
출처 : htps : // 아 d 피페. 코 m / b ぉ g / mp 4 - 로타리 온 - 메타타 - 응 - 모비 - ゔ ぃ로 오 ぃ ぇ s /
즉, 스마트 폰으로 촬영하면 방향에 관계없이 FHD의 경우 해상도는 1920x1080
로 고정되고 회전 정보는 rotate로 부여됩니다.
그리고는 재생 측에서 잘 해줘.
라는 것.
글쎄, 여기까지는 좋다. 뭔가 알고 있었어!
그럼 MediaConvert로 변환시에 90도 회전시키면 좋지요?
설정을 반전하거나 불친절한 문서를 읽고 잡았지만 중요한 동영상을 회전시키는 기능을 찾을 수 없습니다.
어쩌면 조사했는데, 역시 없잖아.
없는 증거
맞아, 막혔다・・・
대응책
죄송합니다.
ffmpeg로 다시 엔코하고 세로장(1080x1920)으로 하고, rotate 정보를 지운다!
세로로 하다
ffmpeg 에서는 읽어들인 시점에서 rotate 정보를 해석하므로 아무것도 하지 않아도 괜찮습니다.
평소와 같이 -i
로 입력 지정해 출력하면 세로로 토출됩니다.
-vf transpose
이나 -vf hflip,vflip
등은 필요 없습니다.
rotate 정보 지우기
다음 옵션을 지정합니다.
-metadata:s:v:0 rotate=0
실행 예 (HEVC 10Mbps로 재 엔코)
$ ffmpeg -i IMG_0012.MOV -vcodec libx265 -vb 10000000 -tag:v hvc1 -acodec copy -metadata:s:v:0 rotate=0 IMG_0012_rev.MOV
완성된 파일을 MediaConvert에 먹이게 하면 시작의 이상이 됩니다.
다만, 재엔코이므로 수고와 시간이 걸린다・・・
덤 Elastic Transcoder
덧붙여서 Elastic Transcoder라면 빙글빙글 돌릴 수 있으므로 문제 없습니다.
돌지 않아도 Output Rotation
를 auto
로 해 두면 마음대로 해 줍니다.
카시코이! ! !
Reference
이 문제에 관하여(MediaConvert가 회전하지 않습니다!), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/tomopyonsama/items/f3abfbf436bdbce771b2
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
음, 스마트 폰으로 세로로 촬영 한 동영상을 MediaConvert로 변환하면 가로가 되어 버립니다.
이상
현실
큰 벅 버니
©copyright 2008, Blender Foundation | ㅋㅋㅋ 미세 g 부분 ck 분 y. 오 rg
이것이군요, MediaConvert 측에서 설정을 아무리 반죽 돌려도, 이미 어쩔 수 없어요.
우선 원래 동영상의 정보를 살펴 보겠습니다.
$ ffprobe IMG_0012.MOV
ffprobe version n4.0.1-5-gb5106c5aa2 Copyright (c) 2007-2018 the FFmpeg developers
built with Apple LLVM version 9.1.0 (clang-902.0.39.2)
configuration: --enable-version3 --enable-gpl --enable-libvmaf --enable-libx264 --enable-libx265 --enable-libvpx --enable-libaom --prefix=/usr/local --enable-nonfree --enable-static --disable-shared --extra-cflags='-I/usr/local/include -I/usr/include -I/Users/kimura/git/aom/aom_build' --extra-ldflags=-L/usr/local/lib --enable-libfreetype --extra-libs=-lpthread
libavutil 56. 14.100 / 56. 14.100
libavcodec 58. 18.100 / 58. 18.100
libavformat 58. 12.100 / 58. 12.100
libavdevice 58. 3.100 / 58. 3.100
libavfilter 7. 16.100 / 7. 16.100
libswscale 5. 1.100 / 5. 1.100
libswresample 3. 1.100 / 3. 1.100
libpostproc 55. 1.100 / 55. 1.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'IMG_0012.MOV':
Metadata:
major_brand : qt
minor_version : 0
compatible_brands: qt
creation_time : 2018-08-03T03:23:32.000000Z
com.apple.quicktime.location.ISO6709: +35.6666+139.7495+080.740/
com.apple.quicktime.make: Apple
com.apple.quicktime.model: iPhone 7
com.apple.quicktime.software: 11.4.1
com.apple.quicktime.creationdate: 2018-08-03T12:23:32+0900
Duration: 00:00:15.91, start: 0.000000, bitrate: 11856 kb/s
Stream #0:0(und): Video: hevc (Main) (hvc1 / 0x31637668), yuv420p(tv, bt709), 1920x1080, 11737 kb/s, 59.96 fps, 59.94 tbr, 600 tbn, 600 tbc (default)
Metadata:
rotate : 90
creation_time : 2018-08-03T03:23:32.000000Z
handler_name : Core Media Data Handler
encoder : HEVC
Side data:
displaymatrix: rotation of -90.00 degrees
Stream #0:1(und): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, mono, fltp, 95 kb/s (default)
Metadata:
creation_time : 2018-08-03T03:23:32.000000Z
handler_name : Core Media Data Handler
Stream #0:2(und): Data: none (mebx / 0x7862656D), 0 kb/s (default)
Metadata:
creation_time : 2018-08-03T03:23:32.000000Z
handler_name : Core Media Data Handler
Stream #0:3(und): Data: none (mebx / 0x7862656D), 0 kb/s (default)
Metadata:
creation_time : 2018-08-03T03:23:32.000000Z
handler_name : Core Media Data Handler
Unsupported codec with id 0 for input stream 2
Unsupported codec with id 0 for input stream 3
네, 이상한 부분이 두 곳 있습니다.
발췌
Stream #0:0(und): Video: hevc (Main) (hvc1 / 0x31637668), yuv420p(tv, bt709), 1920x1080, 11737 kb/s, 59.96 fps, 59.94 tbr, 600 tbn, 600 tbc (default)
Metadata:
rotate : 90
동영상 해상도가 1920x1080, 그리고 메타데이터에 rotate : 90이 기재되어 있습니다.
아무래도 이런 것 같습니다.
출처 : htps : // 아 d 피페. 코 m / b ぉ g / mp 4 - 로타리 온 - 메타타 - 응 - 모비 - ゔ ぃ로 오 ぃ ぇ s /
즉, 스마트 폰으로 촬영하면 방향에 관계없이 FHD의 경우 해상도는
1920x1080
로 고정되고 회전 정보는 rotate로 부여됩니다.그리고는 재생 측에서 잘 해줘.
라는 것.
글쎄, 여기까지는 좋다. 뭔가 알고 있었어!
그럼 MediaConvert로 변환시에 90도 회전시키면 좋지요?
설정을 반전하거나 불친절한 문서를 읽고 잡았지만 중요한 동영상을 회전시키는 기능을 찾을 수 없습니다.
어쩌면 조사했는데, 역시 없잖아.
없는 증거
맞아, 막혔다・・・
대응책
죄송합니다.
ffmpeg로 다시 엔코하고 세로장(1080x1920)으로 하고, rotate 정보를 지운다!
세로로 하다
ffmpeg 에서는 읽어들인 시점에서 rotate 정보를 해석하므로 아무것도 하지 않아도 괜찮습니다.
평소와 같이 -i
로 입력 지정해 출력하면 세로로 토출됩니다.
-vf transpose
이나 -vf hflip,vflip
등은 필요 없습니다.
rotate 정보 지우기
다음 옵션을 지정합니다.
-metadata:s:v:0 rotate=0
실행 예 (HEVC 10Mbps로 재 엔코)
$ ffmpeg -i IMG_0012.MOV -vcodec libx265 -vb 10000000 -tag:v hvc1 -acodec copy -metadata:s:v:0 rotate=0 IMG_0012_rev.MOV
완성된 파일을 MediaConvert에 먹이게 하면 시작의 이상이 됩니다.
다만, 재엔코이므로 수고와 시간이 걸린다・・・
덤 Elastic Transcoder
덧붙여서 Elastic Transcoder라면 빙글빙글 돌릴 수 있으므로 문제 없습니다.
돌지 않아도 Output Rotation
를 auto
로 해 두면 마음대로 해 줍니다.
카시코이! ! !
Reference
이 문제에 관하여(MediaConvert가 회전하지 않습니다!), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/tomopyonsama/items/f3abfbf436bdbce771b2
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
$ ffmpeg -i IMG_0012.MOV -vcodec libx265 -vb 10000000 -tag:v hvc1 -acodec copy -metadata:s:v:0 rotate=0 IMG_0012_rev.MOV
덧붙여서 Elastic Transcoder라면 빙글빙글 돌릴 수 있으므로 문제 없습니다.
돌지 않아도
Output Rotation
를 auto
로 해 두면 마음대로 해 줍니다.카시코이! ! !
Reference
이 문제에 관하여(MediaConvert가 회전하지 않습니다!), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/tomopyonsama/items/f3abfbf436bdbce771b2텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)