це єдине завдання Android чи багатозадачність та багатопоточність?


18

Я намагаюся зрозуміти, чому я не можу продовжувати слухати аудіо з відео YouTube на моєму Galaxy S 2, переходячи до іншого додатку, наприклад, читаючи статтю wikipedia у браузері.

чи є якесь архітектурне обмеження, яке перешкоджає цьому в Пряників (сподіваємось, буде видалено в ICS) або це лише спосіб, яким Google зробив додаток YouTube?

Редагувати : випробував додаток YouTube у ICS 4.0.3 сьогодні та поводиться так само, як у Пряників: (((


8
Я припускаю, що це просто додаток YouTube. Google Music (і майже будь-яке інше музичне додаток, яке я пробував) продовжуватиме програвати, якщо програми переключені або навіть якщо екран вимкнено (YouTube припиняється, якщо екран також вимкнено).
Ділан Яга

Відповіді:


17

Візуалізація відео, яка мала б статися, навіть якщо програма не "активна", але все ще відтворюється, буде використовувати набагато більше акумулятора, ніж "звичайне використання". Тож якщо ви не "переглядаєте" відео, воно зупиняється, щоб не витрачати дорогоцінну батарею.


так, але використовувати YouTube як радіо, це може вимкнути візуалізацію відео та відтворювати лише аудіо! :)
Давіде Пірас

6
Ви могли - але це просто не так, як розроблено додаток Youtube;)
lxgr

19

Це не обмеження Android, а «особливість» програми Youtube для збереження ресурсів.

Якщо ви хочете використовувати Youtube як музичний плеєр, я думаю, ви повинні мати можливість знайти додаток, який дозволяє вам робити саме це на ринку.

TubeMate дозволяє слухати лише аудіо з файлу Youtube (ви повинні завантажити його заздалегідь), але це має працювати у фоновому режимі.


3

Якщо ви хочете отримати додаток для android, яке б дозволило гнучко керувати протоколами потокового потоку Youtube таким чином, щоб підтримувати вибір лише аудіо-частини медіа-потоку під час відкидання відеодоріжки, слідкуйте за VLC для android . Він все ще "знаходиться в стадії розробки", але, ймовірно, стосується функції "лише аудіо".

З більш технічної точки зору, це допомагає розбити проблему на доступні мережеві протоколи Youtube для трансляції медіа RTSP. Специфікації RTSP дозволяють клієнту робити запит за допомогою команди DESCRIBE, на яку сервер відповідає у сегменті даних SDP (див. Деталі нижче). Сервери Youtube можуть реагувати на різноманітні протоколи, надсилаючи базові потоки, які, в свою чергу, використовують різні кодування - один для аудіо, один для відео - для передачі медіа-бітів по мережі клієнту. У мобільних мережах функція, яка переходить на youtube з метою отримання як аудіо, так і відеодоріжок перед тим, як відкидати відео під час відтворення лише аудіо, не є хорошою практикою через великі вимоги мережі до невикористаного потоку відео. Ви можете подолати неефективність мережі за допомогою подальшого технічного розробки.

Стандарти RTSP та SDP, дотримувані Youtube, дозволять поточному клієнту (пристрою Android) запитувати ТІЛЬКИ аудіо під час кроку рукостискання клієнт / сервер та кроки переговорів щодо налаштування мережевого з'єднання, що здійснюватиме потокове передавання медіа. У цьому випадку жодне відео не надсилатиметься, а андроїд-плеєр буде налаштований на аудіопотік. Дотримуйтесь деяких деталей команд CLI та деяких деталей протоколу цього сценарію "лише для аудіо YouTube".

Запис у форматі 1 аудіо для певного відео доступний на наступному URI RTSP:

rtsp://v8.cache8.c.youtube.com/CigLENy73wIaHwlcw_gs85OUchMYDSANFEgGUgx1c2VyX3VwbG9hZHMM/0/0/0/video.3gp

З URI RTSP для всього відео (аудіозапис плюс відеодоріжка) наступний вираз CLI використовує 2 медіа-клієнта openRTSP та mPlayer, переходячи на Youtube, де він отримує / відтворює лише аудіодоріжку Youtube, запитуючи лише канал = 1 .

./openRTSP -a rtsp://v8.cache8.c.youtube.com/CigLENy73wIaHwlcw_gs85OUchMYDSANFEgGUgx1c2VyX3VwbG9hZHMM/0/0/0/video.3gp | ./mplayer -cache 8092 - -rawaudio channels=1:rate=8000:samplesize=2:format=0x73616D72

Цей вираз CLI далі описаний у посиланні внизу.

"Канали" Youtube описують доступні формати потоку для будь-якого відео на Youtube, включаючи згаданий вище RTRI URI. Для технічного пояснення потокових форматів Youtube див запис у форматі 1,5,6 у довгій таблиці.

Наступний запит отримує канал від Youtube, який включає різноманітно відформатовані URI RTSP, доступні для цього конкретного відео:

http://gdata.youtube.com/feeds/api/users/rowntreerob/uploads?vq=cpST8yz4w1w&prettyprint='true'

Закривавлена Детальна інформація про підключається RTSP сеансі , в якому повний опис SDP испрашиваются для конкретного відео YouTube і так , що тільки звукова доріжка може бути потоковими / Відтворюється тут .

Ключ до нумерованих рядків у верхньому посиланні

82 – the RTSP DESCRIBE request
101 – the SDP response
103 – video track’s format
116 – the attributes describing the audio track
line 165 – the audio track setup by the player
184 – the audio-only playback
201 – using a separate CLI expression this is playback of a previous download on just the audio track
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.