이번에는, 라즈베리 카메라로 유튜브 라이브 방송을 해보도록 하겠습니다.





송출하는 라이브러리는 ffmpeg으로 하도록 하겠습니다. avconv로도 가능한데, 이럴 경우 접속이 끊키는등 몇몇 문제가 있었습니다.

(저의 경우 그랬습니다.)


먼저 ffmpeg을 설치해야 합니다.

소스 리스트파일에 내용을 추가합니다. vi등 에디터로 source.list파일을 수정합니다. 

vi가 불편하신 분은  sudo nano /etc/apt/sources.list 하셔서 nano 에디터로 수정하셔도 됩니다.


sudo vi /etc/apt/sources.list  


그리고 아래 라인을 추가합니다.


deb http://www.deb-multimedia.org jessie main non-free




요런 모습이 될껍니다.





그리고, 아래 명령어로 패키지 정보를 업데이트하면, NO_PUBKEY 어쩌구 공개키관련 오류가 뜹니다.


sudo apt-get update




이런!!



키정보를 넣도록 합니다.


sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 5C808C2B65558117 


그리고, 다시 update합니다.


sudo apt-get update



이제 잘 되었군요.



ffmpeg을 설치합니다.


sudo apt-get install ffmpeg



다행(?)스럽게도 설치가 잘 끝났습니다.





이제 스트리밍하기만 하면 되는데, 유튜브 채널이 필요합니다.


유튜브 로그인 후, 아래 링크로 접속합니다.(가입이 안되어있다면 가입을 해야합니다.)


https://www.youtube.com/dashboard




오른쪽 상단에 아이콘을 눌러, 크리에이터 스튜디오로 들어가도 됩니다.






왼쪽에 실시간 스트리밍 메뉴를 누릅니다.


시작하기 버튼을 클릭!






계정인증을 시작합니다. (전화번호당 두개의 관리 계정만 생성이 가능하군요.)





문자 인증코드를 입력합니다.





잘 진행되었다면, 아래 메시지를 볼 수 있을 것입니다.






메인화면이 나타날텐데, 아래 인코더 설정부분이 중요합니다. 

아래 스크린 샷 이미지에 화살표가 가르키는 "스트림 이름 및 키" 부분의 키를 복사합니다. 

설명에도 알 수 있듯이 키는 외부에 공개되지 않도록 주의합니다.



다시 라즈베리화면에서 이 키를 다음 명령어와 함께 입력합니다.


raspivid -o - -t 0 -vf -hf -fps 30 -b 5000000 -w 1280 -h 720 | ffmpeg -re -ar 44100 -ac 2 -acodec pcm_s16le -f s16le -ac 2 -i /dev/zero -f h264 -i - -vcodec copy -acodec aac -ab 128k -g 50 -strict experimental -f flv rtmp://a.rtmp.youtube.com/live2/키를입력



이런식으로 입력이 될껍니다..



영상 프레임이 송출되고 있다는게 보입니다..






유튜브에서도 실시간 스트리밍 중이라고 녹색동그라미가 뜹니다.





테스트 중이라면, 비공개로 설정 해놓고 테스트하는 것도 좋은 방법일 것 같습니다. 설정을 바꾸면 바로 저장이 됩니다.




그 외 방송을 위한 유튜브 옵션이여러가지 있으니 천천히 살펴보시길 바랍니다.




영상 송출중입니다. 방열판 없이 대략 51~52도를 오가는군요.




중지하고싶으시면, Ctrl+C를 누르시면 됩니다.





방송 종료후에, 기본설정으로는 방송 영상이 남아있습니다. 찾아서 필요없으면 삭제하도록 합니다.






* 참고 : https://www.digikey.com/en/maker/blogs/streaming-live-to-youtube-and-facebook-using-raspberry-pi-camera/969a7932d47d42a79ba72c81da4d9b66

  1. 주상욱 2018.03.29 14:43 신고

    라즈베리파이내에있는 python2 idle 을 통해서 할순 없는건가요? 터미널로 하는거말고요 !

    • Favicon of https://bigcode.tistory.com 에리스 2018.04.18 23:40 신고

      파이썬 idle은 파이썬 코드가 실행되는걸로 알고 있어요. 터미널로 하셔야할 것 같습니다.

  2. 박원철 2018.05.01 22:28 신고

    질문 2가지
    1. 라즈베리파이의 리눅스에서도 아래와 같은 명령어를 실행하는 건가요?
    실행했을 때 제대로 인식을 하지 못하네요.

    sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 5C808C2B65558117

    2. 유투브 설정의 스트림 이름 및 키 값은 임의로 만드는 값인가요 ?

    • Favicon of https://bigcode.tistory.com 에리스 2018.05.02 06:35 신고

      1. 네 라즈베리파이에서 실행하는 명령입니다.(라즈비안) 키 값은 NO_PUBKEY XXXXXXXX에 나오는 메시지에따라 달라질것같네요.

      2. 상위화면, 즉 구글에서 만들어줍니다. 자동으로 설정되어 보여줍니다. 공개되면 안되는 키입니다.

  3. 박원철 2018.05.02 08:17 신고

    먼저 답변 감사드립니다.

    두번째 질문은 미리 드린 질문이어서 그 단계까지 가서도 해결이 안 되면 다시 질문드릴께요

    첫번째 질문에서
    sudo apt-get update 를 하고 나서 동일한 코드로
    NO_PUBKEY 5C808C2B65558117 메시지가 뜹니다. 그래서
    알려주신대로
    sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 5C808C2B65558117 를 실행했는데도
    마찬가지로 해당 키를 인식하지를 못 하는 거 같습니다.
    정확한 오류메시지가 필요하시면 퇴근 후 캡쳐를 떠서 올리겠습니다.

  4. 박원철 2018.05.02 22:23 신고

    아래는
    1. sudo apt-get update 와
    2. sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 5C808C2B65558117Executing: /tmp/apt-key-gpghome.B2brMe9zED/gpg.1.sh --keyserver keyserver.ubuntu.com --recv-keys 5C808C2B65558117
    를 실행한 결과입니다.

    내용 보시고 도움 좀 부탁드리겠습니다. (화면캡쳐를 붙여넣을수가 없어서 텍스트로 보냅니다)

    pi@raspberrypi:~ $ sudo apt-get update
    Hit:1 http://raspbian.raspberrypi.org/raspbian stretch InRelease
    Hit:2 http://archive.raspberrypi.org/debian stretch InRelease
    Get:3 http://www.deb-multimedia.org jessie InRelease [35.2 kB]
    Ign:3 http://www.deb-multimedia.org jessie InRelease
    Fetched 35.2 kB in 2s (11.8 kB/s)
    Reading package lists... Done
    W: GPG error: http://www.deb-multimedia.org jessie InRelease: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 5C808C2B65558117
    W: The repository 'http://www.deb-multimedia.org jessie InRelease' is not signed.
    N: Data from such a repository can't be authenticated and is therefore potentially dangerous to use.
    N: See apt-secure(8) manpage for repository creation and user configuration details.
    pi@raspberrypi:~ $ sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 5C808C2B65558117Executing: /tmp/apt-key-gpghome.B2brMe9zED/gpg.1.sh --keyserver keyserver.ubuntu.com --recv-keys 5C808C2B65558117
    gpg: failed to start the dirmngr '/usr/bin/dirmngr': No such file or directory
    gpg: connecting dirmngr at '/tmp/apt-key-gpghome.B2brMe9zED/S.dirmngr' failed: No such file or directory
    gpg: keyserver receive failed: No dirmngr
    pi@raspberrypi:~ $

    • 박원철 2018.05.02 22:26 신고

      해결되었네요^^
      아래 dirmngr 이 설치가 안 되어서 그런가봅니다.

      sudo apt-get install dirmngr

    • Favicon of https://bigcode.tistory.com 에리스 2018.05.04 07:14 신고

      셀프로 해결하셨네요. ㅎㅎ

+ Recent posts