как OTA с телефона делать? что для этого надо?
JL SoC. 杰理芯片
Сообщений 761 страница 780 из 1317
Поделиться7622023-07-29 12:49:43
при включении нету "щелка", потому что мут до полной загрузки стоит.
Здравствуйте.
При включении, в динамиках слышны 2 щелчка. После проигрывается звук включения (power_on.mp3)
- Подпись автора
soundbar BS-28B
Поделиться7632023-07-29 13:26:43
1 - что нужно делать в ауксе когда громкость уменьшил в 0, варианта два - или полностью исчезает звук, или остается на минимальной громкости..
2 - можно сделать совмещенную громкость для озвучки и самой музыки, тоесть как выставили громкость музыки, такая будет и громкость озвучки при переключении режимов. Но тогда вылазит следующая закономерность -
Когда громкость уменьшили до 0, то соответственно и громкость озвучки будет 0, но у нас есть один звук VOL_MIN, когда громкость озвучки фиксированная, и отделена от основной - то с воспроизведением VOL_MIN нет проблем. А если одна громкость на все, и при этом команда на воспроизведение VOL_MIN -мы тупо не услышим звук VOL_MIN, потому что громкость = 0.
3 - Я сделал звуки вкл откл и в режиме STANDBY, при входе в него и выходе с него. Так вот, нужны ли они вам, и если нужны - можно использовать те же что для кнопки на самой колонке.. А можно сделать и свои другие, например in_standby.mp3/exit_standby.mp3...
4 - При выходе с standby что нужно делать, тоже что и с кнопки павер на колонке (блютуз или аукс если вставлен) , или включить последний режим до того как выключили колонку с пульта? (запоминает последний режим только если нажали с пульта, если нажали питание на колонке - там сбрасывается питание, и эта штука не доступна (пока, думаю писать в память чипа последний режим, что бы запоминало и при физическом обесточивании, тоесть с кнопки на самой плате) )
5 - Думаю сделать одну громкость на саундбаре и телефоне, что бы не было две разные громкости, одна на колонке , вторая на телефоне... Можно сделать так что бы громкость смартфона синхронизировалась с колонкой, получится что если делать громкость на телефоне, она будет делаться и на колонке, и наоборот, нажимаем на колонке или пульте и на смартфоне она тоже поднимается .
1) Оставляем первый предложенный вами вариант.
При уменьшении громкости - проигрываемый звук в колонке полностью отсутствует.
И при самом низкой громкости звука проигрывает сообщение (min_vol.mp3)
2) Нет.
Громкость проигрываемого звука и громкость озвучки совмещать не нужно.
Громкость озвучки оставим на 10 единиц.
Такая громкость озвучки на этой колонке практически устраивает.
Громкость проигрываемого звука давайте сделаем как в вашей прошивке от 28.06
Файл вашей прошивки от 28.06 здесь:
ССЫЛКИ НА ПРОШИВКИ В ЛС!!!!
В нынешней прошивке от 26.07 громкость проигрываемого звука практически никакая.
3) Давайте оставим включение и отключение режима STANDBY как есть( мы говорим о прошивке от 26.07)
При переключении в режим STANDBY проигрывается запись (power_off.mp3)
И колонка выключается.
При выходе из режима STANDBY проигрывается звук выбора режима.
И колонка включается.
4) При выходе из режима standby включается последний режим до того как выключили колонку с пульта.
5) Если получится сделать одну громкость на саундбаре и телефоне это будет здорово.
Но это не критично.
Если не будет получатся, не стоит и упираться.
Спасибо.
- Подпись автора
soundbar BS-28B
Поделиться7642023-07-29 21:36:30
вроде бы всё нормально, генерируется файл update。ufw, но ни jl-home (pi-home), ни JLOTA с гитхаба его не видят - пишут, неправильный файл.
Поделиться7652023-07-30 01:07:12
хочу ещё пропатчить файл в каталоге include_lib\liba\br23\, чтобы aac не валил в ошибку, но у меня ничего не получается - линковщик меняет код при переносе из библиотеки в sdk.elf.o, а библиотеку дизассемблировать не получается.
Поделиться7662023-07-30 01:18:58
а библиотеку дизассемблировать не получается.
Должно же через llvm-dis нормально дизасмиться (если про те что начинаются с 42 43 C0 DE)
Отредактировано kagaimiq (2023-07-30 01:23:38)
- Подпись автора
水Mizu-DEC JLtech since 22.06.2019
Поделиться7672023-07-30 01:31:05
а где ты взял llvm-dis? я sdk.elf и sdk.elf.o дизассемблировал через llmv-objdump -D, но библиотеки на 42 43 co de оно не понимает.
Поделиться7682023-07-30 02:07:09
установил llvm в mingw64. натравил llvm-dis на aac_decoder.c.o. не дизассемблирует. выдаёт какие-то метаданные, на этом всё.
Поделиться7692023-07-30 02:25:02
Ну он должен был дизассемблировать его во что-то похожее на это:
Код:@aac_decoder = local_unnamed_addr constant %struct.audio_decoder_ops { i32 512, i8* (i8*)* @aac_decoder_open, i32 (i8*)* @aac_decoder_start, i32 (i8*, %struct.audio_fmt*)* @aac_decoder_get_fmt ..... @aac_dec = internal global %struct.aac_decoder zeroinitializer, section ".aac_ctrl_mem", align 4, !dbg !159 @config_aac_dec_use_malloc = external local_unnamed_addr constant i32, align 4 @m4a_aac_mem = external global [6492 x i32], align 4 @aac_decoder_io_ops = internal constant %struct.if_decoder_io { i8* bitcast (%struct.aac_decoder* @aac_dec to i8*), i32 (i8*, i32, i8*, i32, i8)* @aac_decoder_input, i32 (i8*, i32, i8*)* ...... @frame_header_check.sample_rates = private unnamed_addr constant [12 x i32] [i32 96000, i32 88200, i32 64000, i32 48000, i32 44100, i32 32000, i32 24000, i32 22050, i32 16000, i32 12000, i32 11025, i32 8000], align 4 ; Function Attrs: minsize nounwind optsize define internal i8* @aac_decoder_open(i8* %0) #0 section ".aac_code" !dbg !242 { %2 = alloca i8*, align 4 %3 = alloca [4 x i8], align 1 call void @llvm.dbg.value(metadata i8* %0, metadata !244, metadata !DIExpression()), !dbg !253 %4 = tail call i32 @sdfile_get_disk_capacity() #8, !dbg !254 %5 = icmp ult i32 %4, 1048576, !dbg !256 br i1 %5, label %52, label %6, !dbg !257 6: ; preds = %1 call void @llvm.memset.p0i8.i32(i8* align 4 getelementptr inbounds (%struct.aac_decoder, %struct.aac_decoder* @aac_dec, i32 0, i32 1), i8 0, i32 44, i1 false), !dbg !258 store i8* %0, i8** getelementptr inbounds (%struct.aac_decoder, %struct.aac_decoder* @aac_dec, i32 0, i32 0), align 4, !dbg !259, !tbaa !260 store i16* null, i16** getelementptr inbounds (%struct.aac_decoder, %struct.aac_decoder* @aac_dec, i32 0, i32 8), align 4, !dbg !267, !tbaa !268 store i8* null, i8** getelementptr inbounds (%struct.aac_decoder, %struct.aac_decoder* @aac_dec, i32 0, i32 9), align 4, !dbg !269, !tbaa !270 store i64 0, i64* bitcast (i32* getelementptr inbounds (%struct.aac_decoder, %struct.aac_decoder* @aac_dec, i32 0, i32 11) to i64*), align 4, !dbg !271 %7 = tail call %struct.__audio_decoder_ops* @get_aac_ops() #8, !dbg !272 store %struct.__audio_decoder_ops* %7, %struct.__audio_decoder_ops** getelementptr inbounds (%struct.aac_decoder, %struct.aac_decoder* @aac_dec, i32 0, i32 14), align 4, !dbg !273, !tbaa !274 %8 = icmp eq %struct.__audio_decoder_ops* %7, null, !dbg !275 br i1 %8, label %52, label %9, !dbg !277 9:
- Подпись автора
水Mizu-DEC JLtech since 22.06.2019
Поделиться7702023-07-30 02:25:51
а, не, понял. придётся теперь инструкцию читать...
Поделиться7712023-07-30 02:28:53
видишь этот вызов @sdfile_get_disk_capacity()? он проверяет размер флешки. если меньше 1048576 - goto exit.
Поделиться7722023-07-30 18:20:35
в общем, пропатчить это нельзя
НО можно раскодировать bc файл в ll файл через llvm-dis, поправить ll файл как надо, собрать обратно ll файл в bc файл через llvm-as, запаковать обратно в .a файл через llvm-ar.
НО требуются все эти утилиты версии 4.0.1, как в jl toolchain.
НО в распространяемом дистрибутиве llvm версии 4.0.1 под windows нет этих утилит
НО можно собрать из сырцов! я собрал под linux, там не сразу, но собралось. хотелось бы, конечно, эти утилитки под винду, и чтоб не требовали win8 и всё такое.
НО под mingw оно не собирается, там очень сильное колдунство (свежий cmake приносит зависимость от win10 - поганый VS, старый cmake - не конфигурирует, как-то так), а VS я не практикую.
ну а так оно теперь работает, да:
aac_decoder_open.4621: 1e0020c: 76 04 [--sp] = {rets, r6-r4} 1e0020e: e2 9e sp += -8 1e00210: 05 16 r5 = r0 1e00212: 81 ea 51 62 call 181410 <sdfile_get_disk_capacity : 1e2c6b8 > 1e00216: 44 20 r4 = 0 1e00218: 03 ff 00 04 42 00 if (r0 < 1024) goto 132 <aac_decoder_open.4621+0x96 : 1e002a2 > 1e0021e: c4 ff c4 15 01 00 r4 = 71108 <aac_dec : 115c4 > 1e00224: 48 84 r0 = r4 + 4 1e00226: 41 20 r1 = 0
Поделиться7732023-07-31 11:46:22
никто не пробовал обновление через телефон делать, что ли?
Поделиться7742023-07-31 16:00:02
ну или как можно (через bluetooth, например) переключить чип в режим загрузки usb uboot?
Поделиться7752023-08-02 19:21:07
Здравствуйте.
При включении, в динамиках слышны 2 щелчка
Действительно. Пофиксил.
Скинул, там обе громкости на 10.
При выходе из ST_BY в последний режим до выключения.
5) Если получится сделать одну громкость на саундбаре и телефоне это будет здорово.
Но это не критично.
Если не будет получатся, не стоит и упираться.
Получится. Это очень легко. Но это после того как я все это что наделал в сдк для вашей колонки - экспортирую в мой "главный и основной сдк"
Я скинул Вам , попользуйтесь ею хотя бы недельку. а я как раз закончу уже с последними нюансами. И выкачу апдейт для вас.
Так же думаю сделать один сдк для всех девайсов, что бы просто был отдельный конфиг файл с портами и настройками, что бы не плодить сотню сдк с разным содержимым. Просто нужно все конфиги и настройки портов вынести отдельный файл, или даже два... И потом просто использовать их уже при компиляции конечного кода.
- Подпись автора
By Admin
Поделиться7762023-08-02 20:23:19
никто не пробовал обновление через телефон делать, что ли?
Я нет. Что то читал в мануале попадалось. Но надобности не было. Вроде с флешки проще обновить.
- Подпись автора
By Admin
Поделиться7772023-08-02 21:36:51
на всякий случай скомпилировал llvm 4.0.1 под win x64. Ссылка
Поделиться7782023-08-02 22:50:30
Правильно я понял это дизассемблер?
- Подпись автора
By Admin
Поделиться7792023-08-03 03:04:47
не совсем. в библиотеках не скомпилированный код. точнее скомпилированный, но в бит-код llvm
Поделиться7802023-08-03 18:04:53
Это те что "полу скомпилированные" библиотеки в includes_lib/ name.a ? А что оно может собирать разбирать? Библиотеки от 690/692 тоже llvm?
- Подпись автора
By Admin