Дмитрий DarkByte Москин

Мой блог, да.
logo

Экшн камера SJCAM SJ5000x Elite

Опубликовано 02.03.2016 автором Дмитрий Москин
В некоторых обзорах камеру SJCAM SJ5000 называют убийцей GoPro 4, говоря о том, что за меньшие в несколько раз деньги можно получить сравнимую по характеристикам камеру. Но все ведь знают, что первые обзоры о новинках пишут не реальные пользователи, а специально обученные люди, которые получают на обзор бесплатные экземпляры от производителя или магазинов. А чтобы это был не последний подобный подарок, то в своих обзорах они обычно опускают недостатки устройства.



Начать, наверное, стоит с того, что в серии SJ5000 есть несколько различных модификаций камер: SJ5000 Basic, SJ5000 WiFi, SJ5000+, SJ5000x. Основные их отличия в процессоре и сенсоре. В первых двух используются NTK96655 и Panasonic 34110, в версии Plus: Ambrella A7S75 и Panasonic 34120, в X Elite: NTK96660 и Sony IMX078. В модификация X Elite была выпущена подветка Limited Edition ограниченной партией в тысячу штук и сенсором OmniVision 4689. Стоит отметить, что ценник на версию X Elite слегка ниже, чем на Plus, не смотря на то, что производитель заявил возможность снимать 4К видео пусть и на скромных 24 кадрах в секунду.

Мой выбор пал на вариант SJ5000x Elite, пусть мне и нечего снимать на видео, уж тем более в 4К. И первое, на что хотелось бы обратить внимание - камера не поддерживает съёмку в 4К. Да-да, именно так, производитель предоставляет её как камеру, которая снимает в 4К, в настройках есть режим 4К, но по факту съёмка ведётся в разрешении чуть большем, чем 2К (2880х2160), но никак не дотягивающим до минимального для 4К (3840х2160), не говоря уже о полнокадровом.



Другой киллер-фитчей называют софтварную гироскопическую стабилизацию изображения. Идея действительно интересная, ведь если камера может узнать, куда в данный момент она смещается, то она может двигать кадр в противоположном направлении, а недостающие части компенсировать запасными пикселями, находящимися за границей области съёмки. Но на деле оказывается, что реализация никудышная, и никакой стабилизации в реальных условиях заметно не будет, по крайней мере в последней доступной прошивке на данный момент: 1.2.5-S. Видео называется "Угадай, стабилизация включена или нет?".

Кроме того, у камеры есть множество других опций, которые лучше не трогать. WDR обещает сделать картинку более сочной и красивой, но вместо этого либо ничего не делает, либо добавляет различные артефакты на изображение. При высоких параметрах чёткости и резкости (Quality, Sharpness) камера перестаёт вывозить запись в 4К, просто зависает. Если во время фотографирования выставить выдержку больше 10 секунд (а доступна выдержка до 60 секунд), то камера может задуматься очень надолго, вплоть до зависания. При этом, не смотря на автоматический режим ISO, камера в любом случае выставит 50 и сделает шикарную копию квадрата Малевича с разрешением 12 мегапикселей.



Кстати, камера умеет сохранять фотографии не только в JPEG, но и в RAW, правда пока что остаётся загадкой, почему в RAW разрешение получается 4000х3000, а в JPEG 4032x3024. Но это мелочи по сравнению с тем, что китайцы решили особо не мудрить реализацией какого-либо из существующих форматов RAW, поэтому его мы получаем совсем в сыром виде, и на данный момент существует всего одна программа (IQRawXfer), которая позволяет из этих данных получить BMP файл, пригодный для дальнейшей обработки.

В буклете по сенсору IMX078 написано, что он способен снимать данные полностью со всей матрицы со скоростью 42 раза в секунду при чёткости 10 бит, и до 20 раз в секунду при 12 битах. Производитель заявляет в SJ5000x поддержку скоростной съёмки до 10 кадров в секунду, но бывает упомянуть, что даже при скорости 3 кадра в секунду разрешение съёмки автоматически понижается с 12 до 5МП. И конечно же при этом пишется только JPEG, никакого RAW.



Конечно же не обошлось и без плюсов. Цена без комментариев, меня устроила вполне. Видео умеет снимать 1080p 60fps - вполне нормальный режим для экшн камеры (2К и 4К режимы тут чисто для галочки). Широкоугольный объектив - 170 градусов хватит всем, но если китайцы уже исправили проблему с попаданием части защитного бокса в кадр, то пальцы при съёмке фото у меня по-прежнему продолжают попадать. В комплекте с камерой предлагают защитный бокс с дополнительной дырявой крышкой, чтобы звук было слышно и кучку креплений для него (на шлем, руль, штатив). Прошивка поддерживает режим работы в качестве видеорегистратора. Видео можно записывать в RAW (формат MOV). С последней версией прошивки начали поддерживаться флешки объёмом до 128Гб.



При подключении по USB камера умеет определяться не только как внешний носитель (для передачи файлов и фоток), но и как веб-камера, для общения по скайпу в 4К, наверное. WiFi на данный момент позволяет скачивать, загружать и удалять файлы, а также управлять некоторыми параметрами камеры через мобильное приложение. Но при включенном WiFi камера греется ещё сильнее и очень быстро съедает батарейку. Есть Micro-HDMI выход, зарядка производится через Micro-USB.



У камеры есть и другие положительные стороны, но о них уже рассказал сам производитель, не вижу смысла повторяться. В целом, камерой из коробки пользоваться можно, хотя прошивка пока ещё довольно сыровата и нет никакой уверенности в том, что китайцы её допилят. В первых прошивках со звуком было совсем всё плохо, затем немного исправили, но некоторые пользователи прибегли к помощи паяльника, и им удалось окончательно исправить проблему с микрофоном удалением одного из конденсаторов. Компромисс не однозначный, заплатить в три раза больше за GoPro4 или ковыряться паяльником в SJCAM SJ5000x.

Time-lapse на камеру получаются вполне качественные. И в качестве бонуса:
Loader NT96660 Start ...

660A_DDR3_LV1_4_2048Mb 10/21/2015 13:55:04

RRRRWDT init
RRR
RFlsh

R
FCompress

R
F/W NT96660 Start ...
NAND support table version[2014_03_10-01]
CPU/CPU2/DSP clk = 420/420/270 Mhz ...PASS
DMA clk = 507 Mhz ...PASS
Memory = 262144 KB, Code/Resv/Stack/Heap = 7867/8/350/253918 KB
Binary = 5305 KB, Part = 909/660/0/0/0/0/0/0/0/3736 KB
PwrLost = 0, PwrSrc = 2

=========================================================
NT96660 SDK
Copyright (c) 2014 Novatek Microelectronic Corp.
=========================================================
Hello, World!
service task - begin!
> HJT_ReceiveGPSData
nIrRemoteValue[0]=1
nIrRemoteValue[1]=1
nIrRemoteValue[2]=1
nIrRemoteValue[3]=b2
nIrRemoteValue[4]=aa
nIrRemoteValue[5]=55
nIrRemoteValue[6]=33
nIrRemoteValue[7]=fe
nIrRemoteValue[8]=4d
nIrRemoteValue[9]=ef
nIrRemoteValue[10]=d4
nIrRemoteValue[11]=79
Cmd_Date1=434
0,1,1
1,1,1
2,1,1
3,b2,b2
4,aa,aa
5,55,55
6,33,33
7,fe,fe
8,4d,4d
9,ef,ef
10,d4,d4
11,79,79
user task - begin!
event loop - begin!
FW Full loaded, force used Safe mode.
Power On Sequence = Safe
ERR:ramdsk_setParam() No Implement! uiEvt 2
ERR:ramdsk_setParam() No Implement! uiEvt 1

---------------------------------------------------------
LD VERISON: LD66
FW --- Daily Build: Jan 18 2016, 16:02:04
---------------------------------------------------------

ERR:dispdev_setDeviceRotate() DispDev NO valid rotate!

WRN:sdioHost_setBusClk() SDIO host0 : real clock (398340Hz) is not equal to desired (399000Hz)
USB 1.5A
CONNECT to CHARGER
ERR:PStore_OpenSection() Section not found, name: DEFAULT, op: 0x1
ERR:SectionRead_Header() HEADER open to read FAIL
WRN:MovieExe_OnMovieSize() should change mode
USB 1.5A
CONNECT to CHARGER
uiADCValue=733
uiADCValue=3.243310
baifenbi=77
uiADCValue=732
uiADCValue=3.238477
baifenbi=77
uiADCValue=732
uiADCValue=3.238477
baifenbi=77
Mode {MOVIE} Open begin
 -display attach
 -display count=1, mask=01, attach=01
 -sensor attach
CHK: 1347, SenPowerOn
CHK: 1348, SenPowerOn
CHK: 1349, SenPowerOn
CHK: 1350, SenPowerOn
CHK: 1351, SenPowerOn
CHK: 1352, SenPowerOn
CHK: 1353, SenPowerOn
CHK: 1354, SenPowerOn
CHK: 1355, SenPowerOn
CHK: 1356, SenPowerOn
CHK: 1357, SenPowerOn
CHK: 1358, SenPowerOn
CHK: 1359, SenPowerOn
CHK: 1360, SenPowerOn
CHK: 1361, SenPowerOn
CHK: 1362, SenPowerOn
CHK: 1363, SenPowerOn
CHK: 1364, SenPowerOn
CHK: 1365, SenPowerOn
CHK: 1366, SenPowerOn
CHK: 1367, SenPowerOn
CHK: 1368, SenPowerOn
CHK: 1369, SenPowerOn
CHK: 1370, SenPowerOn
-sensor count=1, mask=0001, attach=0001, disp=0001
 -lens attach
 -lens count=0
WRN:MovieExe_OnMovieSize() should change mode
hei[0]=1080.
WRN:MovieExe_OnMovieSize() should change mode
Mode {MOVIE} Open end
USB 1.5A
CONNECT to CHARGER
USBConnectType=2
LongPressKeyCount = 1
LongPressKeyCount = 2
Mode {MOVIE} Close begin
SMediaRec_Close
Mode {MOVIE} Close end
Mode {PHOTO} Open begin
 -display attach
 -display count=1, mask=01, attach=01
 -sensor attach
 -sensor count=1, mask=0001, attach=0001, disp=0001
 -lens attach
 -lens count=0
gPipviewInfo.isEnablePIP=0
Mode {PHOTO} Open end
яяяя яuiADCValue=732
uiADCValue=3.238477
baifenbi=77
uiADCValue=732
uiADCValue=3.238477
baifenbi=77
uiADCValue=732
uiADCValue=3.238477
baifenbi=77
uiADCValue=732
uiADCValue=3.238477
baifenbi=77
uiADCValue=732
uiADCValue=3.238477
baifenbi=77
Mode {MOVIE} Open begin
 -display attach
 -display count=1, mask=01, attach=01
 -sensor attach
CHK: 1347, SenPowerOn
CHK: 1348, SenPowerOn
CHK: 1349, SenPowerOn
CHK: 1350, SenPowerOn
CHK: 1351, SenPowerOn
CHK: 1352, SenPowerOn
CHK: 1353, SenPowerOn
CHK: 1354, SenPowerOn
CHK: 1355, SenPowerOn
CHK: 1356, SenPowerOn
CHK: 1357, SenPowerOn
CHK: 1358, SenPowerOn
CHK: 1359, SenPowerOn
CHK: 1360, SenPowerOn
CHK: 1361, SenPowerOn
CHK: 1362, SenPowerOn
CHK: 1363, SenPowerOn
CHK: 1364, SenPowerOn
CHK: 1365, SenPowerOn
CHK: 1366, SenPowerOn
CHK: 1367, SenPowerOn
CHK: 1368, SenPowerOn
CHK: 1369, SenPowerOn
CHK: 1370, SenPowerOn
-sensor count=1, mask=0001, attach=0001, disp=0001
 -lens attach
 -lens count=0
WRN:MovieExe_OnMovieSize() should change mode
hei[0]=1080.
WRN:MovieExe_OnMovieSize() should change mode
Mode {MOVIE} Open end
USB 1.5A
CONNECT to CHARGER
USBConnectType=2
LongPressKeyCount = 1
Mode {MOVIE} Close begin
SMediaRec_Close
Mode {MOVIE} Close end
Mode {PHOTO} Open begin
 -display attach
 -display count=1, mask=01, attach=01
 -sensor attach
 -sensor count=1, mask=0001, attach=0001, disp=0001
 -lens attach
 -lens count=0
gPipviewInfo.isEnablePIP=0
Mode {PHOTO} Open end
ERR:Lens_Aperture_Move() Lens_Aperture_Move, State incorrect, (0)
ERR:Lens_Shutter_Move() Lens_Shutter_Move, state incorrect, (0)
WRN:sie1_setMode() BccAdjInfo.OpMode changed to BCC_FRAME_MODE!
ImgProc_NormalEnter(): [flow]Enter
ERR:dce_changeFuncEn() dce_changeFuncEn() Crop cannot be enabled when DC is disabled!
ERR:IFEIMED2D_start() Calculate stripe done!
ERR:dce_changeFuncEn() dce_changeFuncEn() Crop cannot be enabled when DC is disabled!
ERR:IFEIMED2D_start() Calculate stripe done!
WifiCmd_Done(): flag 2 result 0
LongPressKeyCount = 1
LongPressKeyCount = 2
Mode {PHOTO} Close begin
Mode {PHOTO} Close end
Mode {PLAYBACK} Open begin
 -display attach
 -display count=1, mask=01, attach=01
 -sensor attach
 -sensor count=0, mask=0001, attach=0000, disp=0000
 -lens attach
 -lens count=0
Mode {PLAYBACK} Open end
LongPressKeyCount = 1
Mode {PLAYBACK} Close begin
Mode {PLAYBACK} Close end
Mode {MOVIE} Open begin
 -display attach
 -display count=1, mask=01, attach=01
 -sensor attach
CHK: 1347, SenPowerOn
CHK: 1348, SenPowerOn
CHK: 1349, SenPowerOn
CHK: 1350, SenPowerOn
CHK: 1351, SenPowerOn
CHK: 1352, SenPowerOn
CHK: 1353, SenPowerOn
CHK: 1354, SenPowerOn
CHK: 1355, SenPowerOn
CHK: 1356, SenPowerOn
CHK: 1357, SenPowerOn
CHK: 1358, SenPowerOn
CHK: 1359, SenPowerOn
CHK: 1360, SenPowerOn
CHK: 1361, SenPowerOn
CHK: 1362, SenPowerOn
CHK: 1363, SenPowerOn
CHK: 1364, SenPowerOn
CHK: 1365, SenPowerOn
CHK: 1366, SenPowerOn
CHK: 1367, SenPowerOn
CHK: 1368, SenPowerOn
CHK: 1369, SenPowerOn
CHK: 1370, SenPowerOn
-sensor count=1, mask=0001, attach=0001, disp=0001
 -lens attach
 -lens count=0
WRN:MovieExe_OnMovieSize() should change mode
hei[0]=1080.
WRN:MovieExe_OnMovieSize() should change mode
Mode {MOVIE} Open end
hei[0]=1080.
ERROR Round vfr -> 30!
in=0x17ed000, align=0x100000, out=0x1800000!
FlowMovie_getRecCurrTime=0
FlowMovie_getRecCurrTime=1
FlowMovie_getRecCurrTime=2
FlowMovie_getRecCurrTime=3
in=0xa749ee0c, align=0x4, out=0xa749ee0c!
[CUT][file0]upHDR ok 44 ms!
ERR:MP_H264Enc_setInfo() Multi-frame encode err!
[CUT]PreviewOK!!
Call Stop callback 1
LongPressKeyCount = 1
LongPressKeyCount = 2
Mode {MOVIE} Close begin
SMediaRec_Close
Mode {MOVIE} Close end
Mode {PHOTO} Open begin
 -display attach
 -display count=1, mask=01, attach=01
 -sensor attach
 -sensor count=1, mask=0001, attach=0001, disp=0001
 -lens attach
 -lens count=0
gPipviewInfo.isEnablePIP=0
Mode {PHOTO} Open end
ERR:Lens_Aperture_Move() Lens_Aperture_Move, State incorrect, (0)
ERR:Lens_Shutter_Move() Lens_Shutter_Move, state incorrect, (0)
WRN:sie1_setMode() BccAdjInfo.OpMode changed to BCC_FRAME_MODE!
ImgProc_NormalEnter(): [flow]Enter
ERR:dce_changeFuncEn() dce_changeFuncEn() Crop cannot be enabled when DC is disabled!
ERR:IFEIMED2D_start() Calculate stripe done!
ERR:dce_changeFuncEn() dce_changeFuncEn() Crop cannot be enabled when DC is disabled!
ERR:IFEIMED2D_start() Calculate stripe done!
WifiCmd_Done(): flag 2 result 0