我在 Twitch 平臺直播編程的經驗 | Linux 中國

2021-01-14 Linux中國

去年 7 月我進行了第一次直播。不像大多數人那樣在 Twitch 上進行遊戲直播,我想直播的內容是我利用個人時間進行的開源工作。我對 NodeJS 硬體庫有一定的研究(其中大部分是靠我自學的)。考慮到我已經在 Twitch 上有了一個直播間,為什麼不再建一個更小更專業的直播間,比如 由 JavaScript 驅動的硬體JavaScript powered hardware ;) 我註冊了 我自己的頻道[1] ,從那以後我就開始定期直播。

我當然不是第一個這麼做的人。Handmade Hero[2] 是我最早看到的幾個在線直播編程的程式設計師之一。很快這種直播方式被 Vlambeer 發揚光大,他在 Twitch 的 Nuclear Throne live[3]直播間進行直播。我對 Vlambeer 尤其著迷。

我的朋友 Nolan Lawson[4] 讓我 真正開始做 這件事,而不只是單純地 想要做 。我看了他 在周末直播開源工作[5] ,做得棒極了。他解釋了他當時做的每一件事。是的,每一件事,包括回復 GitHub 上的 問題issues ,鑑別 bug ,在 分支branches 中調試程序,你知道的。這令我著迷,因為 Nolan 使他的開源庫得到了廣泛的使用。他的開源生活和我的完全不一樣。

你甚至可以看到我在他視頻下的評論:

我大約在一周或更久之後建好了自己的 Twitch 頻道,並摸清了 OBS 的使用方法,隨後開始了自己的直播。我當時用的是 Avrgirl-Arduino[6] ,現在我依然經常用它直播。第一次直播十分粗糙。我前一天晚上排練得很晚,但直播時我依然很緊張。

那個星期六我極少的幾個聽眾給了我很大的鼓舞,因此我堅持了下去。現在我有了超過一千個聽眾,他們中的一些人形成了一個可愛的小團體,他們會定期觀看我的直播,我稱呼他們為 「noopkat 家庭」 。

我們很開心。我想稱呼這個即時編程部分為「多玩家在線組隊編程」。我真的被他們每個人的熱情和才能觸動了。一次,一個團體成員指出我的 Arduino 開發板不能隨同我的軟體工作,因為板子上的晶片丟了。這真是最有趣的時刻之一。

我經常暫停直播,檢查我的收件箱,看看有沒有人對我提及過但沒有時間完成的工作發起 拉取請求pull request 。感謝我 Twitch 社區對我的幫助和鼓勵。

我很想聊聊 Twitch 直播給我帶來的好處,但它的內容太多了,我應該會在我下一篇博客裡介紹。我在這裡想要分享的,是我學習的關於如何自己實現直播編程的課程。最近幾個開發者問我怎麼開始自己的直播,因此我在這裡想大家展示我給他們的建議!

首先,我在這裡貼出一個給過我很大幫助的教程 「Streaming and Finding Success on Twitch」[7] 。它專注於 Twitch 與遊戲直播,但也有很多和我們要做的東西相關的部分。我建議首先閱讀這個教程,然後再考慮一些建立直播頻道的細節(比如如何選擇設備和軟體)。

下面我列出我自己的配置。這些配置是從我多次的錯誤經驗中總結出來的,其中要感謝我的直播同行的智慧與建議。(對,你們知道就是你們!)

軟體

有很多免費的直播軟體。我用的是 Open Broadcaster Software (OBS)[8] 。它適用於大多數的平臺。我覺得它十分直觀且易於入門,但掌握其他的進階功能則需要一段時間的學習。學好它你會獲得很多好處!這是今天我直播時 OBS 的桌面截圖(題圖)。

你直播時需要在不用的「場景scenes」中進行切換。一個「場景」是多個「素材sources」通過堆疊和組合產生的集合。一個「素材」可以是照相機、麥克風、你的桌面、網頁、動態文本、圖片等等。 OBS 是一個很強大的軟體。

最上方的桌面場景是我編程的環境,我直播的時候主要停留在這裡。我使用 iTerm 和 vim ,同時打開一個可以切換的瀏覽器窗口來查閱文獻或在 GitHub 上分類檢索資料。

底部的黑色長方形是我的網絡攝像頭,人們可以通過這種更個人化的連接方式來觀看我工作。

我的場景中有一些「標籤」,很多都與狀態或者頂欄信息有關。頂欄只是添加了個性化信息,它在直播時是一個很好的連續性素材。這是我在 GIMP[9] 裡製作的圖片,在你的場景裡它會作為一個素材來加載。一些標籤是從文本文件裡添加的動態內容(例如最新粉絲)。另一個標籤是一個 custom one I made[10] ,它可以展示我直播的房間的動態溫度與溼度。

我還在我的場景裡設置了「鬧鐘」,當有人粉了我或者給了打賞,它會顯示在最前方。我使用 Stream Labs[11] 網絡服務來實現它,將它作為一個瀏覽器網頁素材引進我的場景。 Stream Labs 也會在頂欄裡給出我最新粉絲的動態信息。

我直播的時候,也會使用一個備用場景:

當我輸入密碼和 API keys 的時候,我另外需要一個場景。它會在網絡攝像頭裡展示我,但是將我的桌面用一個娛樂頁面隱藏起來,這樣我可以做一些私密的工作:

正如你看到的,我直播的時候沒有把窗口填的太滿,但我讓我的觀眾儘可能多地看到我的內容。

但現在有一個現實的秘密:我使用 OBS 來安排我屏幕的底部和右側,同時視頻保持了 Twitch 要求的長寬比。這讓我有了空間在底部查看我的事件(訂閱數等),同時在右側觀看和回復我的頻道聊天室。 Twitch 允許新窗口「彈出」聊天室,這很有用。

這是我完整的桌面看起來的樣子:

我幾個月前開始做這個,還沒有回顧過。我甚至不確定我的觀眾們有沒有意識到我進行的這些精心的設置。我想他們可能會把「我可以看到每個東西」視作理所應當,而事實上我常常忙於敲代碼,而看不到正在直播的東西!

你可能想知道為什麼我只用一個顯示器。這是因為兩個顯示器在我直播的時候太難以管理了。我很快意識到這一點,並且恢復了單屏。

硬體

我從使用便宜的器材開始,當我意識到我會長期堅持直播之後,才將它們逐漸換成更好的。開始的時候儘量使用你現有的器材,即使是只用電腦內置的攝像頭與麥克風。

現在我使用 Logitech Pro C920 網絡攝像頭,和一個固定有支架的 Blue Yeti 麥克風。花費是值得的。我直播的質量完全不同了。

我使用大屏顯示器(27"),因為我之前說的,使用兩個屏幕對我來說不方便。我常常錯過聊天,因為我經常不檢查我的第二屏幕。你可能覺得使用兩個屏幕很方便,但對我來說,把所有東西放在一個屏幕上有利於我對所有事情保持注意力。

這基本上就是硬體部分的大部分內容了。我沒有使用複雜的設置。

如果你感興趣,我的桌面看起來不錯,除了刺眼的麥克風:

建議

最後這裡有一些我通過實踐得出的一般性建議,這使我的直播從整體來看變得更好,更有趣。

布告板

花點時間建立一個好的布告版。布告板是位於每個人頻道底部的小內容框。我把它們看作新的個人空間窗口(真的)。理想的布告板可以有類似於聊天規則,有關直播內容的信息,你使用的電腦和設備,你最喜歡的貓的種類,等等這樣的東西。任何關於個人形象的內容都可以。我們可以看看其他人(尤其是熱播播主)的理想的布告板是什麼樣的!

一個我的布告板的例子:

聊天

聊天真的很重要。你可能會被中途觀看你直播的人一遍又一遍地問同樣的問題,如果可以像現實生活中那樣聊天那樣會很方便。「你正在做什麼?」是我敲代碼的時候別人最常問我的問題。我用 Nightbot[12] 設置了一個聊天快捷命令。當你輸入一些像 whatamidoing(我正在做什麼) 這樣的單詞時,會自動給出我事先設好的解釋。

當人們問問題或者給出一些有趣的評論時,要回復他們!和他們說謝謝,說他們的 Twitch 用的很好,他們會感謝你的關心和認可。一開始的時候很難對這些都保持注意力,但你做得多了之後,你會發現同時做這幾件事變得更容易了。嘗試著每兩分鐘就花幾秒去關注聊天室。

當你編程的時候,解釋你正在做的事 。多說點。開開玩笑。即使我碰到了麻煩,我也會說:「哦,糟糕,我忘了這個方法怎麼用了,我 Google 一下看看」。人們一般都很友好,有時他們還會和你一起尋找解決的辦法。這很有趣,讓人們一直看著你。

如果播主一直安靜地坐在那敲代碼,不去聊天,也不管他新粉絲的信息,我會很快對他失去興趣。

很可能你 99% 的觀眾都很友好,並且都有好奇心。我偶爾還是會碰到挑釁的人,但 Twitch 提供的檢查工具可以有效避免這種情況。

準備時間

儘量將你的配置「自動化」。我的終端是 iTerm ,它可以讓你保存窗口排列和字體大小的配置,這樣你以後就可以再現這些配置。我有一個直播時的配置和一個不直播時的配置,這非常省事。我輸入一個命令,所有東西就都在合適的位置並保持最完美的尺寸,並可以使用了。

還有其他的應用可以用來自動化你的窗口位置,看看有沒有對你有用的。

讓你的字體在終端和編輯器中儘可能的大,這樣所有人都能看清。

定期直播

讓你的日程表更有規律。我一周只直播一次,但總是在同一時間。如果你臨時有事不能在你平常直播的時間直播,要讓人們知道。這讓我保持了一些固定觀眾。一些人喜歡固定的時間,這就像和朋友在一起一樣。你和你的社區在一個社交圈子裡,所以要像對待朋友一樣對待他們。

我想要提高我更新直播的頻率,但我知道因為旅遊的緣故我不能適應超過一周一次的直播頻率。我正在嘗試找到一種可以讓我在路上也能高質量地直播的方法。或許可以臨時將我聊天和寫代碼的過程保存起來,周末直播的時候再放出來。我仍然在探索這些辦法!

緊張心理

當你即將開始的時候,你會感覺很奇怪,不適應。你會在人們看著你寫代碼的時候感到緊張。這很正常!儘管我之前有過公共演說的經歷,我一開始的時候還是感到陌生而不適應。我感覺我無處可藏,這令我害怕。我想:「大家可能都覺得我的代碼很糟糕,我是一個糟糕的開發者。」這是一個困擾了我 整個職業生涯 的想法,對我來說不新鮮了。我知道帶著這些想法,我不能在發布到 GitHub 之前仔細地再檢查一遍代碼,而這樣做更有利於我保持我作為開發者的聲譽。

我從 Twitch 直播中發現了很多關於我代碼風格的東西。我知道我的風格絕對是「先讓它跑起來,然後再考慮可讀性,然後再考慮運行速度」。我不再在前一天晚上提前排練好直播的內容(一開始的三、四次直播我都是這麼做的),所以我在 Twitch 上寫的代碼是相當粗糙的,我還得保證它們運行起來沒問題。當我不看別人的聊天和討論的時候,我可以寫出我最好的代碼,這樣是沒問題的。但我總會忘記我使用過無數遍的方法的名字,而且每次直播的時候都會犯「愚蠢的」錯誤。一般來說,這不是一個讓你能達到你最好狀態的生產環境。

我的 Twitch 社區從來不會因為這個苛求我,反而是他們幫了我很多。他們理解我正同時做著幾件事,而且真的給了很多務實的意見和建議。有時是他們幫我找到了解決方法,有時是我要向他們解釋為什麼他們的建議不適合解決這個問題。這真的很像一般意義的組隊編程!

我想這種「不管重要不重要,什麼都說」的情況對於直播這種媒介來說是一種優勢,而不是劣勢。它讓我想的更多。理解一個觀念很重要,那就是沒有完美的程式設計師,也沒有完美的代碼。對於一個新手程式設計師來說這是令人耳目一新的經歷,對我這個老手來說卻是微不足道的。

總結

如果你想過在 Twitch 上直播,我希望你試一下!如果你想知道怎麼邁出第一步,我希望這篇博客可以幫的到你。

如果你周日想要加入我的直播,你可以 訂閱我的 Twitch 頻道[1] :)

最後我想說一下,我自己十分感謝 Mattias Johansson[13] 在我早期開始直播的時候給我的建議和鼓勵。他的 FunFunFunction YouTube channel[14] 也是一個令人激動的定期直播頻道。

另:許多人問過我的鍵盤和其他工作設備是什麼樣的, 這是我使用的器材的完整列表[15] 。感謝關注!

via: https://medium.freecodecamp.org/lessons-from-my-first-year-of-live-coding-on-twitch-41a32e2f41c1

作者:Suz Hinton[17] 譯者:lonaparte 校對:wxy

本文由 LCTT 原創編譯,Linux中國 榮譽推出

相關焦點

  • Twitch的直播流
    本篇是來自Video @Scale 2019的演講,演講者是來自Twitch的首席軟體工程師 Yueshi Shen,演講主題是:「Twitch的直播流twitch.tv是一家UGC流媒體直播平臺,內容以遊戲為主,YShen展示了一段關於chatting room互動的視頻,這裡用到了twitch最新的低延遲技術,從視頻中可以直觀的感受到低延遲技術使得主播與觀眾的交流更加流暢。YShen介紹到,在視頻內容方面,PGC的投入仍然遠高於UGC,2018年,Netflix投入120億美元,是Youtube的4倍。
  • 牆外節奏:國外直播平臺Twitch的盈利模式?!
    作者 | 知乎.SundayMouse 主播通過Twitch播出自己的節目,可以免費在Twitch開設頻道,通過Stream API,用第三方podcast軟體向twitch傳送即時視頻,然後twitch負責播放。
  • 網友科普國外直播平臺Twitch是怎樣盈利模式
    主播通過Twitch播出自己的節目,可以免費在Twitch開設頻道,通過Stream API,用第三方podcast軟體向twitch傳送即時視頻
  • ElkY直播SCOOP打破直播平臺Twitch記錄
    在ElkY成為撲克超級巨星之前,在他還沒有征服撲克界,在他的這個暱稱在撲克界還沒幾個人知道的時候,ElkY其實已經是另一個世界的超級巨星。
  • Theshy直播說出了在twitch直播的真實原因
    然而就在這春節的假期間,有一個選手竟然開始了日常直播的狀態,這個人就是在中國基本不直播的Theshy,大家都非常好奇他為什麼回到韓國直播卻在中國不播,Theshy也在直播當中說出了原因,具體怎麼回事大家一起往下看。
  • Twitch被屏蔽了打不開,Twitch登不上怎麼辦?
    Twitch是一個面向視頻遊戲的實時流媒體視頻平臺,2011年6月由Justin Kan和Emmett Shear在舊金山聯合創立,是Justin.tv旗下專注於遊戲相關內容的獨立運營站點。根據其內部分析師透露,Twitch每月的訪問量超過3800萬,有超過2000萬個遊戲玩家匯聚到這個平臺,每個訪問用戶在網站的日平均停留時間為1.5小時。網站支持28個國家和地區的語言,包括中文簡體和繁體。最近twitch老鼠臺上不去了怎麼辦?
  • Twitch TV成為E3官方直播平臺 直播日程公布
    Twitch日前在其官方網站上公布了E3發布會的直播安排信息。「今天我們很激動能夠公布2014 E3展會的直播安排。所有的大型發布會都將在www.twitch.tv/Twitch直播。我們有大量內容豐富的消息要帶給大家,包括許多尚未公布的遊戲。
  • 死亡宣告YY直播間被封 先轉戰twitch 再到小平臺 | 直播榜 Daily
    「 直播 」
  • 讓medit 成為你的下一個 Linux 代碼編輯器 | Linux 中國
    本文字數:1861,閱讀時長大約: 2分鐘  https://linux.cn/article-12938-1.html 作者:Seth Kenlon 譯者:geekpi  有了 、jEdit、NEdit、,最後還有 。  在我開始搜索我還沒有嘗試過的編輯器之前,我還沒有聽說過 medit,但我很高興發現了它。
  • 看twitch直播很卡怎麼辦 完美解決老鼠臺直播卡的辦法
    看twitch直播很卡怎麼辦 完美解決老鼠臺直播卡的辦法 最近LOL亞運會今天就要開打了,很多小夥伴都知道在twitch上能看到轉播的地址,但是畢竟用起來很卡,多數人不知道到底要怎麼看才會不卡,
  • 絕地求生:只有這個直播平臺,才敢收納被封殺的死亡宣告
    ,影響了整個平臺,所以才將其封禁。但是網上也流傳著很多其他原因,有網友覺得他是被人故意搞下去的,也有網友覺得他是直播平臺鬥爭的犧牲品。至於真實的原因很少有人清楚。這件事對於死亡宣告本人影響非常大,不光斷送了他的職業生涯,也讓很多直播平臺不敢再錄用他,說死亡宣告無處容身也不為過。
  • 電子遊戲直播平臺Twitch被禁,中國用戶無法使用
    北京時間9月22日,據BBC報導,電子遊戲直播平臺Twitch在中國被封禁,目前已經無法使用。從9月20日開始,中國用戶就無法登陸Twitch的官網了。另外,在中國的蘋果手機應用商城上,Twitch這款應用程式也已經被移除。
  • Twitch主播Quqco由於COS太大被阻止
    Twitch是國外的一個直播平臺網站,也被很多人稱為滑鼠平臺。許多知名國外主播都在平臺上直播,很多網友經常收看twitch直播。這個直播平臺其實和我們國內的虎牙和Betta是一樣的。由於種種原因,需要加速器收看twitch直播,這使得國內很多網民直接放棄直播平臺。上圖為twitch直播平臺首頁圖片。
  • V視角(惡俗而無意義的twitch聊天梗第一期:Twitch表情)
    在正片開始之前,還是姑且和大家說明一下:世界上只有兩個國家,中國和外國。而twitch上的聊天節奏呢,自然起源於外國人。外國觀眾們相對於國內彈幕大神而言,普遍比較純真善良,指著東邊不會往西走,聊天中連反諷都很少,漫說是反串等角色扮演。據我所知,某DotA專精的論壇裡反串黑已然會被群眾們用憐憫的目光注視,說「又瘋了一個」;而某體育專精的論壇中則已有著雙重、三重反串和多年臥底出現了。
  • 外國女主播直播《COD》火辣抖臀 遭Twitch永久封禁
    做主播難,做當紅主播更難,光靠直播遊戲火不了怎麼辦?那就賣肉嘍~這一招在國內外可以說是通殺,一位外國女主播Zoie Burgher就憑藉她的性感身姿和直播遊戲時的各種扭動收穫了不少忠實粉絲,不過做的太over還是會被禁的,twitch就在近日因為這位女主播直播時的不當行徑將她BAN了。
  • 中國LOL奪冠後,我們逛了Twitch:這個直播平臺居然不捧美女主播!| 深度
    014933.htm[4].https://www.jiemian.com/article/1344845.html[5].http://www.iresearch.tv/archives/21212[6].https://www.forbes.com/sites/ryanmac/2014/08/25/amazon-pounces-on-twitch-after-google-balks-due-to-antitrust-concerns
  • 直播《使命召喚》抖臀遭Twitch永久封禁...
    做主播難,做當紅主播更難,光靠直播遊戲火不了怎麼辦?那就賣肉嘍~這一招在國內外可以說是通殺,一位外國女主播Zoie Burgher就憑藉她的性感身姿和直播遊戲時的各種扭動收穫了不少忠實粉絲,不過做的太over還是會被禁的,twitch就在近日因為這位女主播直播時的不當行徑將她BAN了。
  • 《逃離塔科夫》Twitch直播掉落活動如何參與教程
    《逃離塔科夫》Twitch直播掉落活動如何參與教程 來源:www.18183.com作者:阿姆斯特朗雷時間:2020-06-15 分享到: 2020年6月10日,《逃離塔科夫》0.12.6.7版本更新,6月11日到6月22日,Twitch直播掉落活動也同時開啟。
  • 「全新」程式語言 Julia開箱體驗
    高性能:Julia 通過 LLVM 為多個平臺編譯高效本地代碼,性能很高動態性:編程範式靈活,代碼信噪比極高通用性:易於表達OOP和函數式編程範式,並且其標準庫提供異步I / O,進程控制,日誌記錄,概要分析,包管理器等。
  • 網易雲音樂正式登陸Linux平臺
    為了帶來更好的音樂體驗,實現對音樂高品質的追求,經過網易雲音樂與深度科技團隊長達半年多的聯合開發,大家期待已久的網易雲音樂正式登陸Linux平臺!為了帶來更好的音樂體驗,實現對音樂高品質的追求,經過網易雲音樂與深度科技團隊長達半年多的聯合開發,大家期待已久的網易雲音樂正式登陸Linux平臺!