Никому не нужен MS Office на Android/iOS? Не как отдельные приложения, а именно пакет.
This media is not supported in your browser
VIEW IN TELEGRAM
Великолепное качество встроенного ПО Android 10 для Google Pixel 2
Это не про баг, а просто наблюдение.
Гугл такой: https://developers.google.com/cast/docs/media
Chromecast Ultra поддерживает AAC. Правда не упомянуто, что только стерео. 5.1 он не поддерживает и никогда не будет: https://issuetracker.google.com/issues/69112577 Поддержка 5.1 зарезана на уровне прошивки.
Какова же официальная рекомендация Гугла? «We recommend that users use regular stereo (2-channel) AAC or alternative multi-channel formats like AC3/EAC3 or 5.1 Opus» Используйте, говорят, ac3 или ogg, там вам доступен 5.1. Правда нигде не сказано ещё, что вы не можете пулять в Хромкаст видео, если в нём есть хоть одна дорожка с AAC более чем стерео. Пусть хоть все будут подходящими, но наличие лишь одной сразу сводит поддержку на нет.
Таким образом нужно убрать неподдерживаемую дорожку и засунуть в поддерживаемом формате. Для этого я сейчас пишу приложение. И отлаживаюсь на видео, в котором несколько дорожек AAC 5.1 и одна AC3 5.1. Дабы не тянуть внешние зависимости, в виде того же FFMPEG (потому что проект сразу вырастает на десятки мегабайт), я использую нативные возможности Android 4.3+ (на самом деле 7.0+, потоу что делаю в первую очередь для себя).
Так вот MediaExtractor, который умеет вытаскивать дорожки из медиа, без проблем справляется с AAC (5.1) и с AC3 (тоже 5.1), и с видеодорожкой. Он может их извлечь. Но на данном этапе я хочу извлечь видео дорожку и AC3 и объединить только их. Для этого мне нужен MediaMuxer. И вот MediaMuxer НЕ ПОДДЕРЖИВАЕТ ac3. Никакой. Нельзя создать mp4 файл, объединив две дорожки из оригинального mp4, будет брошего исключение.
Таким образом Гугл говорит, что используйте ac3, чё вы как эти, но не дает инструментов, даже в Android 10, чтобы это сделать средствами самого Android. Если нужная вам дорожка находится в AC3, а не в AAC-2, то вы обязаны будете тянуть внешние инструменты для склеивания видео и аудио. А иначе вы обязаны будете заниматься декодированием AC3 в PCM и из PCM уже в AAC2. Ведь ваш телефон прям создан для транскодирования. Ведь у него шикарный процессор с поддержкой всех нужных инструкций и с великолепным охлаждением, у него огромный объём быстрой оперативной памяти, дабы держать в ней буфферы и не дампить их на постоянную память и главное, у него бездонная батарейка.
Ладно. Цель я не убираю. Приложение будет написано, хотя бы как пробный проект для Маркета. Заодно встрою туда какой-никакой бенчмарк, дабы проверять, в какие форматы лучше всего перегонять, чтобы и быстро для телефона, и поддерживалось ХромКастом.
Гугл такой: https://developers.google.com/cast/docs/media
Chromecast Ultra поддерживает AAC. Правда не упомянуто, что только стерео. 5.1 он не поддерживает и никогда не будет: https://issuetracker.google.com/issues/69112577 Поддержка 5.1 зарезана на уровне прошивки.
Какова же официальная рекомендация Гугла? «We recommend that users use regular stereo (2-channel) AAC or alternative multi-channel formats like AC3/EAC3 or 5.1 Opus» Используйте, говорят, ac3 или ogg, там вам доступен 5.1. Правда нигде не сказано ещё, что вы не можете пулять в Хромкаст видео, если в нём есть хоть одна дорожка с AAC более чем стерео. Пусть хоть все будут подходящими, но наличие лишь одной сразу сводит поддержку на нет.
Таким образом нужно убрать неподдерживаемую дорожку и засунуть в поддерживаемом формате. Для этого я сейчас пишу приложение. И отлаживаюсь на видео, в котором несколько дорожек AAC 5.1 и одна AC3 5.1. Дабы не тянуть внешние зависимости, в виде того же FFMPEG (потому что проект сразу вырастает на десятки мегабайт), я использую нативные возможности Android 4.3+ (на самом деле 7.0+, потоу что делаю в первую очередь для себя).
Так вот MediaExtractor, который умеет вытаскивать дорожки из медиа, без проблем справляется с AAC (5.1) и с AC3 (тоже 5.1), и с видеодорожкой. Он может их извлечь. Но на данном этапе я хочу извлечь видео дорожку и AC3 и объединить только их. Для этого мне нужен MediaMuxer. И вот MediaMuxer НЕ ПОДДЕРЖИВАЕТ ac3. Никакой. Нельзя создать mp4 файл, объединив две дорожки из оригинального mp4, будет брошего исключение.
Таким образом Гугл говорит, что используйте ac3, чё вы как эти, но не дает инструментов, даже в Android 10, чтобы это сделать средствами самого Android. Если нужная вам дорожка находится в AC3, а не в AAC-2, то вы обязаны будете тянуть внешние инструменты для склеивания видео и аудио. А иначе вы обязаны будете заниматься декодированием AC3 в PCM и из PCM уже в AAC2. Ведь ваш телефон прям создан для транскодирования. Ведь у него шикарный процессор с поддержкой всех нужных инструкций и с великолепным охлаждением, у него огромный объём быстрой оперативной памяти, дабы держать в ней буфферы и не дампить их на постоянную память и главное, у него бездонная батарейка.
Ладно. Цель я не убираю. Приложение будет написано, хотя бы как пробный проект для Маркета. Заодно встрою туда какой-никакой бенчмарк, дабы проверять, в какие форматы лучше всего перегонять, чтобы и быстро для телефона, и поддерживалось ХромКастом.
Google for Developers
Supported Media for Google Cast | Google for Developers
All the media facilities and types that are supported by Google Cast.
Просто забавность. В Android 10 у иконоесть есть инерция. Честно говоря, я как-то не придавал этому значения.
Изменение набора отпечатков пальцев в системе не сбрасывает доверие отпечаткам в WhatsApp. Это всё, что слдует знать о WhatsApp.
Ошибка в Android, из-за которой приложение может устанавливаться не в текущий профиль: https://myachinqa.blogspot.com/2019/12/blog-post.html#more
Blogspot
Приложение не устанавливается, или устанавливается, но его не видно
Приложение в Android устанавливается, но его не видно. Ошибка установки приложения в Android
Не знаю, как давно, но в Google Now появились подборки. Вы ищете что-то в картинках и вам предлагается сохранять по темам. Как доски в Pinterest.
Если вы возвращаетесь к поиску этой тематики через какое-то время, то она распознаётся и вручную вызвать не нужно.
Мой баг дня (записки тестировщика)
Это не про баг, а просто наблюдение. Гугл такой: https://developers.google.com/cast/docs/media Chromecast Ultra поддерживает AAC. Правда не упомянуто, что только стерео. 5.1 он не поддерживает и никогда не будет: https://issuetracker.google.com/issues/69112577…
Дела оказались ещё печальнее:
1. Официальной документации по поддерживаемым декодерам и энкодерам нет
2. Официальные требования по декодерам и энкодерам достаточно поверхностные: https://developer.android.com/guide/topics/media/media-formats
3. Производители на своё усмотрение могут добавлять свои наборы кодеков
4. Наличие энкодера для какого-нибудь формата не означает, что он реализован сколько-нибудь полно. К примеру, на Pixel 2 есть энкодер для opus. Но он поддерживает только 2 канала
5. Даже проверяя наличие энкодера на устройтсве, вам не гарантируется, что этот энкодер действительно подхватит нужный медиаформат. Нужно отдельным кодом делать проверки
Таким образом, нет ни одного гарантированного способа сконвертировать аудиодорожки в видео таким образом, чтобы кастить на Хромкасты 2 и новее 5.1. Как бы я не хотел этого избежать, а придётся тянуть внешние зависимости. Потяну FFMPEG с собой.
Однако всё равно сделаю 2 вида этого приложения. В одном буду рабоать силами чисто Android, всегда схлопывая мультиканалы до стерео (лично мне пока это подходит, т.к. у меня нет аккустической системы у телевизора, только его колонки), а в другой буду поддерживтаь сразу несколько аудиоформатов для дорожек, сохраняя мультиканальность, но из-за наличия FFMPEG второе приложение будет весить намного больше.
Печально, господа. Гугл не просто обосрался в кодеках на Android. Он многие годы срал и мазал всё это на лицо, а потом этими же руками обмазал Chromecast, удалив из прошивки поддержку AAC 5.1. А ведь энкодер для aac есть в любом устройстве и его реализация сделана лучше любой другой. Рекомендуемые для Хромкаста vorbis и opus не катят, т.к. первый не имеет энкодера в Pixel 2 на Android 10, а второй поддерживает энкодинг только в стерео.
1. Официальной документации по поддерживаемым декодерам и энкодерам нет
2. Официальные требования по декодерам и энкодерам достаточно поверхностные: https://developer.android.com/guide/topics/media/media-formats
3. Производители на своё усмотрение могут добавлять свои наборы кодеков
4. Наличие энкодера для какого-нибудь формата не означает, что он реализован сколько-нибудь полно. К примеру, на Pixel 2 есть энкодер для opus. Но он поддерживает только 2 канала
5. Даже проверяя наличие энкодера на устройтсве, вам не гарантируется, что этот энкодер действительно подхватит нужный медиаформат. Нужно отдельным кодом делать проверки
Таким образом, нет ни одного гарантированного способа сконвертировать аудиодорожки в видео таким образом, чтобы кастить на Хромкасты 2 и новее 5.1. Как бы я не хотел этого избежать, а придётся тянуть внешние зависимости. Потяну FFMPEG с собой.
Однако всё равно сделаю 2 вида этого приложения. В одном буду рабоать силами чисто Android, всегда схлопывая мультиканалы до стерео (лично мне пока это подходит, т.к. у меня нет аккустической системы у телевизора, только его колонки), а в другой буду поддерживтаь сразу несколько аудиоформатов для дорожек, сохраняя мультиканальность, но из-за наличия FFMPEG второе приложение будет весить намного больше.
Печально, господа. Гугл не просто обосрался в кодеках на Android. Он многие годы срал и мазал всё это на лицо, а потом этими же руками обмазал Chromecast, удалив из прошивки поддержку AAC 5.1. А ведь энкодер для aac есть в любом устройстве и его реализация сделана лучше любой другой. Рекомендуемые для Хромкаста vorbis и opus не катят, т.к. первый не имеет энкодера в Pixel 2 на Android 10, а второй поддерживает энкодинг только в стерео.
Android Developers
Supported media formats | Android media | Android Developers
Forwarded from Антивирусное ДНО
Фото с сайта Кремля, сделанное в командном пункте группировки Вооруженных Сил России в Сирии во время визита президента РФ. Обратите внимание на плакат на мониторе справа.
Если что, вот этот "плакат": https://sun9-25.userapi.com/c635102/v635102158/1725a/OBh8TZvGO7w.jpg