В Google Chrome на Linux, где flv то, если не в/tmp?

Мне нравится сохранять видео потому что

  1. Мне нравится буферизовать их и затем играть их спина к спине в моем медиаплеере,
  2. Я хочу смочь остановиться/перезапустить свой браузер, не теряя все буферизированное видео, и
  3. Flash часто разрушает и дает мне серые поля.

Для многих сайтов с Флеш-видео (включая YouTube), я могу найти flv файл в /tmp, обычно называемый FlashXX.... Но некоторым сайтам удается препятствовать тому, чтобы этот файл обнаружился, например, http://blip.tv/file/3627639. Возможно, что это не буферизовано к диску вообще, но это было бы удивительно, так как все часовое видео может быть буферизовано без моей заметно повлиявшей RAM.

В Firefox я могу найти flv в его каталоге кэша. Но мне любопытно, как сделать это в Chrome. Я пытался смотреть под ~/.cache/google-chrome/, но не нашел ничего, что выглядело правильным. Например:

$ ls -lt .cache/google-chrome/Cache/ | head
total 261492
-rw------- 1 yang yang 16621568 2010-12-05 03:41 data_1
-rw------- 1 yang yang   966656 2010-12-05 03:40 data_0
-rw------- 1 yang yang 23076864 2010-12-05 03:40 data_2
-rw------- 1 yang yang   262512 2010-12-05 03:40 index
-rw------- 1 yang yang   108412 2010-12-05 03:35 f_005603
-rw------- 1 yang yang    62607 2010-12-05 03:32 f_005602
-rw------- 1 yang yang    54998 2010-12-05 03:32 f_005601
-rw------- 1 yang yang    31127 2010-12-05 03:32 f_005600
-rw------- 1 yang yang   799389 2010-12-05 03:32 f_0055ff

$ ls -1t ~/.cache/google-chrome/Cache/* | head | xargs file
/home/yang/.cache/google-chrome/Cache/data_1:   data
/home/yang/.cache/google-chrome/Cache/data_0:   data
/home/yang/.cache/google-chrome/Cache/data_2:   data
/home/yang/.cache/google-chrome/Cache/index:    data
/home/yang/.cache/google-chrome/Cache/f_005603: GIF image data, version 89a, 600 x 471
/home/yang/.cache/google-chrome/Cache/f_005602: PNG image, 600 x 746, 8-bit colormap, non-interlaced
/home/yang/.cache/google-chrome/Cache/f_005601: PNG image, 140 x 342, 8-bit/color RGB, non-interlaced
/home/yang/.cache/google-chrome/Cache/f_005600: JPEG image data, JFIF standard 1.02
/home/yang/.cache/google-chrome/Cache/f_0055ff: JPEG image data, JFIF standard 1.02
/home/yang/.cache/google-chrome/Cache/f_0055fe: gzip compressed data, from FAT filesystem (MS-DOS, OS/2, NT)

Я пытался смотреть на открытые файлы для процесса Flash, но не видел удаленных Флеш-файлов, который набор ответов, которые, как ниже говорят, должны существовать:

$ ps x | grep npviewer
27148 ?        Rl     0:24 /usr/lib/nspluginwrapper/i386/linux/npviewer.bin --plugin /usr/lib/flashplugin-installer/libflashplayer.so --connection /org/wrapper/NSPlugins/libflashplayer.so/27135-2
27504 pts/2    S+     0:00 grep --color=auto npviewer

$ ls -l /proc/27148/fd/
total 0
lr-x------ 1 yang yang 64 2011-02-16 13:48 0 -> /dev/null
lrwx------ 1 yang yang 64 2011-02-16 13:48 1 -> /home/yang/.xsession-errors
l-wx------ 1 yang yang 64 2011-02-16 13:48 10 -> /home/yang/.mozilla/firefox/8wy5j0z2.default/key3.db
lrwx------ 1 yang yang 64 2011-02-16 13:48 11 -> pipe:[5500575]
lrwx------ 1 yang yang 64 2011-02-16 13:48 12 -> /home/yang/.adobe/Flash_Player/cert8.db (deleted)
lrwx------ 1 yang yang 64 2011-02-16 13:48 13 -> /home/yang/.adobe/Flash_Player/key3.db (deleted)
lr-x------ 1 yang yang 64 2011-02-16 13:48 14 -> /home/yang/.adobe/Flash_Player/cert8.db (deleted)
l-wx------ 1 yang yang 64 2011-02-16 13:48 15 -> /home/yang/.adobe/Flash_Player/key3.db (deleted)
lrwx------ 1 yang yang 64 2011-02-16 13:48 16 -> /home/yang/.adobe/Flash_Player/cert8.db (deleted)
lrwx------ 1 yang yang 64 2011-02-16 13:48 17 -> /home/yang/.adobe/Flash_Player/key3.db (deleted)
lr-x------ 1 yang yang 64 2011-02-16 13:48 18 -> /home/yang/.adobe/Flash_Player/cert8.db (deleted)
l-wx------ 1 yang yang 64 2011-02-16 13:48 19 -> /home/yang/.adobe/Flash_Player/key3.db (deleted)
lrwx------ 1 yang yang 64 2011-02-16 13:48 2 -> /home/yang/.xsession-errors
lrwx------ 1 yang yang 64 2011-02-16 13:48 20 -> /home/yang/.adobe/Flash_Player/cert8.db (deleted)
lr-x------ 1 yang yang 64 2011-02-16 13:48 21 -> /home/yang/.adobe/Flash_Player/key3.db (deleted)
lrwx------ 1 yang yang 64 2011-02-16 13:51 22 -> /home/yang/.adobe/Flash_Player/cert8.db (deleted)
lrwx------ 1 yang yang 64 2011-02-16 13:51 23 -> /home/yang/.adobe/Flash_Player/key3.db (deleted)
lrwx------ 1 yang yang 64 2011-02-16 13:51 24 -> /home/yang/.adobe/Flash_Player/cert8.db (deleted)
lrwx------ 1 yang yang 64 2011-02-16 13:51 25 -> /home/yang/.adobe/Flash_Player/key3.db (deleted)
lrwx------ 1 yang yang 64 2011-02-16 13:51 26 -> /home/yang/.adobe/Flash_Player/cert8.db (deleted)
lrwx------ 1 yang yang 64 2011-02-16 13:51 27 -> /home/yang/.adobe/Flash_Player/key3.db (deleted)
lrwx------ 1 yang yang 64 2011-02-16 13:51 28 -> /home/yang/.adobe/Flash_Player/cert8.db (deleted)
lrwx------ 1 yang yang 64 2011-02-16 13:51 29 -> /home/yang/.adobe/Flash_Player/key3.db (deleted)
lrwx------ 1 yang yang 64 2011-02-16 13:48 3 -> socket:[5496032]
lrwx------ 1 yang yang 64 2011-02-16 13:51 30 -> /home/yang/.adobe/Flash_Player/cert8.db (deleted)
lrwx------ 1 yang yang 64 2011-02-16 13:51 31 -> /home/yang/.adobe/Flash_Player/key3.db (deleted)
lrwx------ 1 yang yang 64 2011-02-16 13:51 32 -> /home/yang/.adobe/Flash_Player/cert8.db (deleted)
lrwx------ 1 yang yang 64 2011-02-16 13:51 33 -> /home/yang/.adobe/Flash_Player/key3.db (deleted)
lrwx------ 1 yang yang 64 2011-02-16 13:51 34 -> /home/yang/.adobe/Flash_Player/cert8.db (deleted)
lrwx------ 1 yang yang 64 2011-02-16 13:51 35 -> /home/yang/.adobe/Flash_Player/key3.db (deleted)
l-wx------ 1 yang yang 64 2011-02-16 13:53 36 -> pipe:[5500575]
lr-x------ 1 yang yang 64 2011-02-16 13:53 37 -> pipe:[5500576]
l-wx------ 1 yang yang 64 2011-02-16 13:53 38 -> pipe:[5500576]
lrwx------ 1 yang yang 64 2011-02-16 13:53 39 -> socket:[5500580]
lrwx------ 1 yang yang 64 2011-02-16 13:48 4 -> socket:[5496131]
lr-x------ 1 yang yang 64 2011-02-16 13:48 5 -> pipe:[5496139]
l-wx------ 1 yang yang 64 2011-02-16 13:48 6 -> pipe:[5496139]
lr-x------ 1 yang yang 64 2011-02-16 13:48 7 -> socket:[5496140]
l-wx------ 1 yang yang 64 2011-02-16 13:48 8 -> socket:[5496141]
lr-x------ 1 yang yang 64 2011-02-16 13:48 9 -> /home/yang/.mozilla/firefox/8wy5j0z2.default/cert8.db

Я попробовал straceлуг, который весь хром обрабатывает для чего-либо, что было похоже на него, мог бы писать файл:

strace -p (pgrep chrome|xargs -I_ echo -p _)

но взгляд на write/writev/select вызовы только указали на меня на несколько FDs это /proc/_/fd/ показал, чтобы быть каналами/сокетами (по-видимому, чтобы процессы говорили друг с другом). Также испытанный то же самое npviewer.bin процесс.

Я также пытался просто осмотреть все файлы, указал в /proc/*/fd/ (любые процессы), которые были недавно изменены, но не нашли ничего, что было похоже на него, содержал flv. Я также попробовал то же, проверяют недавно измененные файлы под ~/.cache/google-chrome/.

Если это имеет значение, я использую dev разъединение канала Chrome, которому я верю (всегда?) использует его собственную безопасную реализацию Flash. Во время этого обновления я использую Chrome 10.0.648.45 dev. Согласно http://www.adobe.com/software/flash/about/ я работаю 10.2.152.27. Я примерил несколько полей Ubuntu теперь. Я также примерил несколько полей Ubuntu теперь с теми же результатами.

Какие-либо другие хотят попробовать это?

37
задан 13.02.2012, 20:41

8 ответов

Я заметил, что недавние Флеш-плагины действительно хранят файлы в/tmp, но они используют прием удаления их и хранения дескриптора файла, открытого для поддержания их. Это означает, что они все еще сохранены на диске (как долго, поскольку дескриптор файла открыт флеш-плагином), но они не видимы в списке каталогов (потому что файл был удален).

Я записал о возрасте этого некоторого времени: получение видео флэш-памяти почти из удаленных файлов

Но все это зависит от версии Флеш-плагина. Это раньше хранило фильмы в/tmp или в кэше браузера также.

31
ответ дан 07.12.2019, 08:50

Попытайтесь перечислить открытые файлы.

lsof | grep Flash
3
ответ дан 07.12.2019, 08:50

использование хрома 11.0.666.0 и плагина флэш-памяти 10.2.152

захват для npviewer не произвел процесса флэш-памяти для меня, но захват для флэш-памяти делает:

$ ps x | grep flash
11005 ?        Rl     2:30 /usr/lib/chromium-browser/chromium-browser ... 

в основном то же самое как jyap выше предложенного с

lsof | grep Flash

и можно затем продолжить двигаться как выше...

5
ответ дан 07.12.2019, 08:50

Ян,

Да, это находится в ~/.cache/google-chrome/Cache (хорошо, мне установили Хром, таким образом, я нашел его в ~/.cache/chromium/Cache).

Если Вы смотрите видео и вид меткой времени:

$ ls -rt | tail
f_00003a
f_00003b
f_00003c
f_00003d
data_2
data_3
index
data_1
f_000040
data_0

Затем при выполнении команды файла, Вы будете видеть, которые Flash:

$ file $(ls -rt | tail)
f_00003a: Macromedia Flash data (compressed), version 9
f_00003b: Macromedia Flash data (compressed), version 9
f_00003c: Macromedia Flash data (compressed), version 10
f_00003d: PNG image data, 1024 x 768, 8-bit/color RGBA, non-interlaced
data_2:   data
data_3:   data
index:    data
data_1:   data
f_000040: Macromedia Flash Video
data_0:   data

Хорошо, я установил Google Chrome для проверки его.

Похож на каталог для Google Chrome, немного отличается от Хрома.

Используя те же методы (здесь указывающий идентификатор процесса браузера, вывод удалил некоторые столбцы для ясности):

$ lsof -p 27922 | grep Cache
chrome  27922 mem     ~/.cache/google-chrome/Default/Cache/index
chrome  27922 mem     ~/.cache/google-chrome/Default/Cache/data_3
chrome  27922 mem     ~/.cache/google-chrome/Default/Cache/data_2
chrome  27922 mem     ~/.cache/google-chrome/Default/Cache/data_1
chrome  27922 mem     ~/.cache/google-chrome/Default/Cache/data_0
chrome  27922  71u    ~/.cache/google-chrome/Default/Cache/index
chrome  27922  72u    ~/.cache/google-chrome/Default/Cache/data_0
chrome  27922  73u    ~/.cache/google-chrome/Default/Cache/data_1
chrome  27922  74u    ~/.cache/google-chrome/Default/Cache/data_2
chrome  27922  75u    ~/.cache/google-chrome/Default/Cache/data_3
chrome  27922 111u    ~/.cache/google-chrome/Default/Cache/f_00001a
9
ответ дан 07.12.2019, 08:50

При проверке/proc//fd/добился цели для меня:

$ ps x | grep npviewer
24657 ?        Sl    12:33 /usr/lib/nspluginwrapper/i386/linux/npviewer.bin ...
$ cd /proc/24657/fd
$ ls -l
total 0
lr-x------ 1 omab omab 64 2011-02-11 02:13 0 -> /dev/null
lrwx------ 1 omab omab 64 2011-02-11 02:13 1 -> /home/omab/.xsession-errors
lr-x------ 1 omab omab 64 2011-02-11 02:13 10 -> /home/omab/.mozilla/firefox/og3emjry.default/key3.db
lrwx------ 1 omab omab 64 2011-02-11 02:13 11 -> /tmp/FlashXX0WG0J5 (deleted)
lr-x------ 1 omab omab 64 2011-02-11 02:13 12 -> pipe:[9004372]
...

Файл 11, тот, отмеченный, как" (удалено)", неподвижные точки в файл первоначально создали на/tmp/, таким образом, он не полностью удален:

$ file -L 11 
11: Macromedia Flash Video

выполнение:

$ mplayer 11

воспроизведет файл FLV.


Вот довольно удобная командная строка, адаптированная из вышеупомянутой процедуры. Это может потребовать незначительных корректировок к Вашему распределению / установка и что обрабатывает, Вы обычно работаете.

Можно заменить flash с npviewer, замена vlc с mplayer:

FLASHPID=\`pgrep -f flash\`; vlc /proc/$FLASHPID/fd/\`ls -l /proc/$FLASHPID/fd | grep tmp | cut -d" " -f9\`
24
ответ дан 07.12.2019, 08:50

Некоторые более новые плееры буферизуют в памяти, чтобы попытаться лишить возможности людей использовать эти приемы. Вы не сможете получить что-либо в этом случае.

3
ответ дан 07.12.2019, 08:50

Потоки Flash большую часть времени являются простым файлом, добираются запросом HTTP.

Для Вашего видео в http://blip.tv/file/3627639

В Google Chrome можно осмотреть сетевые запросы (ctrl + shift + i) ищите самое длинное для окончания в случае:

Fosslc-..
/file/get

нажмите на него и скопировать/вставить URL от поля 'Request URL' к новой вкладке

http://blip.tv/file/get/Fosslc-2...to823.flv?showplayer=20110401114509&source=1

10
ответ дан 07.12.2019, 08:50

Я устранил эту проблему. Здесь шаги

  1. Goto установил плагины about:plugins в хроме / Mozilla
  2. Нажмите Details для просмотра с большей информацией. Отключите Флеш-плагин. Местоположение плагина было бы “/usr/lib/adobe-flashplugin/libflashplayer.so”
  3. Загрузите tar.gz версию Flash player отсюда http://get.adobe.com/flashplayer/
  4. Извлеките тот файл и скопируйте libflashplayer.so в/usr/lib/chromium-browser/plugins. Затем Включите это на сменной странице.
  5. Если Вы будете смотреть какое-либо видео, то оно загрузит в домашнем//.cache/chromium/Default/Cache / эту папку

взгляните http://www.arulraj.net/2011/03/google-chrome-download-video.html

3
ответ дан 07.12.2019, 08:50

Для последнего Chrome на Linux:

  1. Определите pid Флеш-плагина, используемого Chrome:

    ps ax | grep -i chrome | grep -i flash 
    

    на данный момент плагин называют libgcflashplayer.

  2. Определите Флеш-файл, открытый этим процессом Флеш-плагина:

    file /proc/Flash_Plugin_PID/fd/* | grep -i deleted
    

    или

    lsof -p Flash_plugin_pid | grep -i deleted
    

    Ищите удаленные файлы.

  3. Скопируйте файл с /proc/[pid]/fd/[fileno] кому: recovered_file.flv

2
ответ дан 07.12.2019, 08:50

Я использую хром 11.06 на Убунту 10.04. Я нашел свои flv-файлы в ~/.cache/google-chrome/Default/Cache. Попробуйте

file * | grep Flash\ Video
2
ответ дан 07.12.2019, 08:50

Теги

Похожие вопросы