.avi to .mp4


안녕하세요.

브리아나입니다.

HTML 상에서 video를 띄우는 작업을 하고 있는데,

제가 가지고 있는 동영상은 .avi였고 HTML에서 지원하는 코덱과 달랐어요!

잘 작동하지 않아서 이 문제만 1시간을 찾아버렸네요 :)

그럼 해결책 바로 갑니다~!

 

 

1. FFmpeg 다운받기

https://www.ffmpeg.org/

 

FFmpeg

Converting video and audio has never been so easy. $ ffmpeg -i input.mp4 output.avi     News May 31st, 2023, Vulkan decoding A few days ago, Vulkan-powered decoding hardware acceleration code was merged into the codebase. This is the first vendor-generic

www.ffmpeg.org

빨간색으로 표시된 파일 링크를 클릭하시면 아래 페이지로 접속하게 됩니다.

 

2. 설치파일 다운

https://www.gyan.dev/ffmpeg/builds/

 

Builds - CODEX FFMPEG @ gyan.dev

FFmpeg is a widely-used cross-platform multimedia framework which can process almost all common and many uncommon media formats. It has over 1000 internal components to capture, decode, encode, modify, combine, stream media, and it can make use of dozens o

www.gyan.dev

빨간색 표시된 곳을 클릭하면

다운로드에 들어오게 되는데

해당 파일은 압축파일이에요!

만약에 다운로드 폴더 안에 하얀 파일 형태로 되어 있으시면

아래 반디집을 다운받으셔야합니다.

하얀 파일로 되어있으시면

 

3. 반디집 다운로드

https://kr.bandisoft.com/bandizip/

 

반디집 공식 홈페이지 · ALZ, EGG, 7Z, RAR 지원 무료 압축 프로그램

반디집 (Windows) 반디집은 다양한 기능을 제공하고 빠르게 작동하는 압축 프로그램입니다. 무료로도 사용할 수 있으며, 유료 에디션은 다양한 고급 기능을 제공합니다. 주요 기능 지원 OS: Windows 7/

kr.bandisoft.com

 

4. 압축해제

바탕화면에 압축 해제하고 bin 폴더로 들어가서

경로 복사를 해놓고 

환경변수 편집 -> Path -> 해당 경로 추가

과정을 거치고

CMD 창에

$ ffmpeg --version

해서 버전이 나오면 설치 완료!

 

 

5. Python 코드 작성하기

 

import ffmpeg

(
    ffmpeg.input("video_load_path_here.avi")
    .output("video_save_path_here.mp4")
    .run()
)

평소 보지 못한 코드포맷이긴 하지만,

이렇게 작성해야 돌아가더라구요!

 

저는 변환 성공!

안녕하세요

브리아나입니다.

파일 이름을 리스트업해서 리스트로 관리하고 싶을 때,

os 모듈을 이용해서

os.listdir을 사용하곤 했는데요!

폴더 안에 특정 확장자 이외에 다른 확장자도 같이 포함되어 있다면

리스트 안에 두개 이상의 확장자가 같이 들어가겠죠!

 

이때, 특정 확장자만을 추출해서 리스트를 생성하고 싶다면

아래의 명령어를 이용하시면 됩니다.

import glob
a = glob.glob("path_here"+"*.txt")
print(a)

하면 해당 경로에 .txt로만 이루어진 파일의 리스트가 생성됩니다.

*는 전체를 의미합니다.

즉, .txt 파일을 가진 파일들 모두 하나의 리스트로 만들어줘!

 

참 쉽죠잉~!

 

+ os.listdir과 glob.glob 의 차이점을 말해보라면

1) os.listdir: 은 파일명만 리스트로 보관

2) glob.glob: 파일명을 포함한 전체 경로까지 함께 보관

그래서 접근하는 변수가 다를테니, 기존에 쓰던거에서 변경하면 오류발생할 수 있어 불러오는 경로 잘 되어있는지 확인 필요 *** (중요)

안녕하세요

브리아나입니다.

 

오늘은 Python 에서 프로젝트에 맞는 가상환경을 새로 생성해주려고 하는데요!

새로운 프로젝트가 생길 때 마다 가상환경을 가장 먼저 만드는데 

가장 설레면서도 가장 두려운 작업 중 하나입니다.

(버전 문제로 충돌이 일어나거나 그러면 또륵..)

 

Anyway, 그럼 아나콘다 환경에서 가상 환경을 생성하는 명령어, 삭제하는 명령어 등에 대해서 알아보겠습니다.

 

 

1. 가상환경 생성

conda create -n env_name_here python=3.8

콘다야~ 나 만들건데, 이름은 env_name_here 이렇게 만들어주고 그 안에는 python3.8로 설치해줘~

라고 하는 명령어 인데요!

이름은 본인이 하고싶은거 알아서 정하시면 됩니다.

메인으로 설치하고자 하는 라이브러리들이 파이썬의 어떤 버전과 호환이 잘 되는지도 사전에 확인해주시면 좋구요

torch cuda 이런거 골치 아프자나요~~ ㅎㅎ

 

2. 가상환경 조회

conda info --envs

위 명령어는 내 컴퓨터 안에 어떤 환경들이 구축되어있는지 조회하는 방법인데요!

실력이 늘어가면서 가상환경수가 많아지면 이름이 간혹 헷갈릴때가 있는데요!

특히나 

yolo_cpu

yolo_gpu

저는 프로그램 별로도 명확한 라이브러리 충돌 문제를 빠르게 해결하기 위해서

환경을 각각 관리하고 있어서 더욱 여러개의 가상환경을 관리하고 있습니다.

 

3. 가상환경 삭제

conda remove -n env_name_here --all

만들어두었던 가상환경을 깔끔하게 제거하는 방법입니다.

잘 제거 되었는지는 2번의 명령어를 통해 확인할 수 있겠죠 ?

 

그럼 모두 아나콘다와 친해지세요 ㅎㅎ 

안녕하세요!

브리아나입니다.

 

$ nvidia-smi

를 입력하셨는데 

 

[Ubuntu]Failed to initialize NVML: Driver/library version mismatch

 

에러를 발견하셨다구요~?

 

재부팅으로 해결해봅시다.

$ sudo reboot

[Ubuntu]Failed to initialize NVML: Driver/library version mismatch

+ Recent posts