常見問題(FAQ)

Yakitory 如何調整成台灣的時區?

張貼者:2019年6月7日 上午12:51John Liou   [ 已更新 2019年6月7日 上午12:51 ]

有時我們在查詢客戶的串流 Server 的 log 時,會發現 log 記錄的時間,慢了 8 個小時?
那是因為我們所在的時區(Asia/Taipei) UTC+8 的時區;而如果沒有特別設定,作業系統(包含Docker)就會用預設的時區時間(UTC+0)。
所以你在 log 中看到所記錄的時間都少了 8 hrs。
這個問題主要還是 timezone 時區的設定,以下分為幾個部份來說明:

串流在 Docker 中

要解決這個間題在 Docker run 時, 就要加上參數 -v /etc/localtime:/etc/localtime:ro 
e.g.
docker run -d --name Yakitory2.7 -v /etc/localtime:/etc/localtime:ro ClickAP/Yakitory:2.7
 要記得確定你的 Host 是不是在 /etc/localtime 這個檔案。

串流在 Ubuntu 系統中

確定你的 ubuntu 有安裝 tzdata
apt-get install tzdata
然後再執行下列指令:
echo "Asia/Taipei" | tee /etc/timezone
dpkg-reconfigure --frontend noninteractive tzdata
在開啟 log , 應該就有正確的時間了。



串流伺服器在 Docker 中, 如何查看 log 記錄?

張貼者:2019年6月6日 下午9:21John Liou   [ 已更新 2019年6月7日 上午12:52 ]

Yakitory 的 log 記錄在 /opt 目錄下, 的 access.log 或 error.log 這兩個檔案。
當您的 Yakitory 版本是在 Docker 中, 查詢串流伺服器的日誌錄記錄也在容器中,以下說明找到 logs 的方法。

查詢串流的日誌(logs)

當您的 Yakitory 版本是在 Docker 中, 串流伺服器的日誌錄記錄(error.log)也在容器中,以下列出方法及步驟:

找到 Yakitory container

首先進入主機, 要先找到 container 的 Name (container ID 也可以), 用 docker ps -a 這個指令。
$ sudo docker ps -a
CONTAINER ID        IMAGE                      COMMAND                  CREATED             STATUS              PORTS                NAMES
1bd0729c5a8a        canvastw/tori:2.4-xenial   "/tini -- /usr/src/e…"   6 seconds ago       Up 5 seconds        0.0.0.0:81->80/tcp   Yakitory2.7
2cfef271760e        clickyaki/tori:2.3         "/bin/sh -c '/etc/in…"   9 months ago        Up 2 days           0.0.0.0:80->80/tcp   yakitory
936ad116e67f        redis                      "docker-entrypoint.s…"   9 months ago        Up 4 days           6379/tcp             Toriredis2人一土

倒出 logs 記錄

找到容器名稱 - Yakitory2.7 (請參考你的版本), 將它帶入這個 logs 指令內, 例如: docker logs Yakitory2.7 
# sudo docker logs Yakitory2.7
/opt/nginx/conf/nginx.conf: generated.
/opt/nginx/main.d/env.conf: generated.
[ N 2018-06-07 12:00:48.1088 14/T1 age/Wat/WatchdogMain.cpp:1366 ]: Starting watchdog...
[ N 2018-06-07 12:00:48.1244 17/T1 age/Cor/CoreMain.cpp:1339 ]: Starting Yakitory core...
[ N 2018-06-07 12:00:48.1245 17/T1 age/Cor/CoreMain.cpp:256 ]: Yakitory core running in multi-application mode.
[ N 2018-06-07 12:00:48.1338 17/T1 age/Cor/CoreMain.cpp:1014 ]: Yakitory core online, PID 7
App 91 output: /opt/rubies/ruby-2.5.3-p547/lib/ruby/2.5.3/rubygems/custom_require.rb:36:in `require': iconv will be deprecated in the future, use String#encode instead.
App 91 output: 127.0.0.1 - - [07/Jun/2018 12:00:50] "HEAD / HTTP/1.1" 200 2702 0.0662
127.0.0.1 - - [07/Jun/2018:12:00:50 +0800] "HEAD / HTTP/1.1" 200 0 "-" "-"
[ N 2018-06-07 12:00:51.2578 17/T5 age/Cor/SecurityUpdateChecker.h:519 ]: Security update check: no update found (next check in 72 hours)木人
Done.


訊息: Mixed Content: The page at 'https://' was loaded over HTTPS, but requested an insecure XMLHttpRequest endpoin

張貼者:2019年3月10日 下午5:56Jack Liou

Q:
在影片活動中, 設定好串流影片後, 切換到播放時確出現錯誤訊息:
videos-bundle-min.js:1 Mixed Content: The page at 'https://faq.moodle.com.tw/mod/videos/view.php?id=561' was loaded over HTTPS, but requested an insecure XMLHttpRequest endpoint 'http://stream.moodle.com.tw//videos/hls/F0Gl2uTaM01kvGwVcX9XQQ/1538988172/79/%E4%B8%B2%E6%B5%81%E5%BD%B1%E9%9F%B3%E5%B9%B3%E5%8F%B0.m3u8'. This request has been blocked; the content must be served over HTTPS
A:
可能原因:
串流主機及串流網址設定錯誤,應設定為 https://stream.moodle.com.tw/ ,而非 http://stream.moodle.com.tw/ 。
請以管理員身份進入Moodle, 網站管理 > 外掛 > 倉儲 > 串流影片, 重新設定即可。
 

錯誤訊息:Format Not Recognized

張貼者:2018年8月21日 上午12:07Vin Yan   [ Moodle My 已於 2018年8月21日 上午12:26 更新 ]

影片上傳至串流伺服器有檔名名稱的限制。

1. 若在串流伺服器管理介面看到顯示為空白,如下圖:

2. 在 failed 頁面出現 Error:Format Not Recognized,如下圖:

發生此錯誤訊息的原因為影片檔名包含了特殊符號,如:空格、;、.、(、)、@、#、$、%、&、* 等。

解決方式為將檔案名稱修改後,再重新上傳影片。

播放異常 - 測試方法

張貼者:2018年8月9日 下午6:17Vin Yan   [ Moodle My 已於 2018年8月14日 上午3:07 更新 ]


串流影片若無法正常播放,請進行以下步驟還原問題給予測試資料。

1.  點選 F12,查看錯誤訊息並記錄。

2. 到串流伺服器管理介面確認轉檔切片排程是否出現異常。

3. 確認該串流網址 (.m3u8) 是否可下載,且下載下來的檔案是否有內容 (畫面、聲音)。

4. 請使用可播放的 .m3u8 網址測試,確認影音模組是否有問題。

5. 將異常的串流網址透過以下測試網頁確認是否可播放:

6. 確認影片的原始檔,影片的編碼是否為 H.264。

錯誤訊息:No such file or directory

張貼者:2018年8月9日 下午6:00Vin Yan   [ Moodle My 已於 2018年8月14日 上午2:57 更新 ]

串流伺服器管理介面可確認影片轉檔排程的狀況。

排程切片過程中,若在 failed 頁面出現 Error:No such file or directory - public/data/tmp_videos/ 影片號碼,如下圖:


發生此錯誤訊息的原因為缺少 tmp_videos 資料夾。

解決方式為在串流伺服器目錄下,新增該資料夾即可。
新增 tmp_videos 資料夾:
mkdir /串流伺服器目錄/public/data/tmp_videos

影片轉檔失敗

張貼者:2018年8月6日 下午11:46Vin Yan   [ Moodle My 已於 2018年8月14日 上午3:04 更新 ]

影片上傳至串流伺服器,可進行轉檔為 AVI、MPG、MPEG、MPEG2、M2TS、M2T、VOB、3GP、WMV。

若轉檔失敗,將無法產生串流網址,如下圖:


解決方式如下:
在串流主機的主目錄下,config 目錄中,修改 profile 檔案

將 profileMP4 修改為多種格式的 
profileMulti-Type
內容修改為以下文字:
**須完全符合以下文字,不可多出任何標點符號**
profileMulti:
  title: MP4-H264-MPEGTS
  container: ts
  encoded_filename_suffix: -%d.ts
  segment_path: /tmp/hls
  video_command: " -y -loglevel info -i $input_file$ -f segment -segment_time 10 -segment_format mpegts -segment_list $output_file$ -c:a aac -vcodec libx264 -strict -2 -q:a 100 -map 0 $segment_file$"
  video_bitrate: 400
  audio_command:
  audio_bitrate: 48
  width: 480
  height: 360
  fps: 23
  player: flash

管理介面無法預覽FLV影片

張貼者:2018年8月6日 下午11:46Vin Yan   [ Moodle My 已於 2018年8月14日 上午3:05 更新 ]

在串流伺服器中的管理介面上,可預覽 FLV 影片。

若是無法預覽影片,解決方式如下:
1. 新增 tmp_videos 資料夾:
mkdir /串流伺服器目錄/public/data/tmp_videos
chown nobody /串流伺服器目錄/public/data/tmp_videos

2. 新增 hls 資料夾:
mkdir /串流伺服器目錄/public/data/hls
chown nobody /串流伺服器目錄/public/data/hls

上傳影片出現 client error

張貼者:2018年8月6日 下午11:44Vin Yan   [ Moodle My 已於 2018年8月14日 上午3:08 更新 ]

進行上傳影片至串流伺服器過程,若 log 權限設定錯誤,出現錯誤訊息 "client error"。

解決方式為修改 log 權限:
chown -R nobody /串流伺服器目錄/log

1-9 of 9