Мне нравится сохранять видео потому что
Для многих сайтов с Флеш-видео (включая 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 теперь с теми же результатами.
Какие-либо другие хотят попробовать это?
Я заметил, что недавние Флеш-плагины действительно хранят файлы в/tmp, но они используют прием удаления их и хранения дескриптора файла, открытого для поддержания их. Это означает, что они все еще сохранены на диске (как долго, поскольку дескриптор файла открыт флеш-плагином), но они не видимы в списке каталогов (потому что файл был удален).
Я записал о возрасте этого некоторого времени: получение видео флэш-памяти почти из удаленных файлов
Но все это зависит от версии Флеш-плагина. Это раньше хранило фильмы в/tmp или в кэше браузера также.
использование хрома 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
и можно затем продолжить двигаться как выше...
Ян,
Да, это находится в ~/.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
При проверке/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\`
Потоки 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
Я устранил эту проблему. Здесь шаги
взгляните http://www.arulraj.net/2011/03/google-chrome-download-video.html
Для последнего Chrome на Linux:
Определите pid Флеш-плагина, используемого Chrome:
ps ax | grep -i chrome | grep -i flash
на данный момент плагин называют libgcflashplayer
.
Определите Флеш-файл, открытый этим процессом Флеш-плагина:
file /proc/Flash_Plugin_PID/fd/* | grep -i deleted
или
lsof -p Flash_plugin_pid | grep -i deleted
Ищите удаленные файлы.
Скопируйте файл с /proc/[pid]/fd/[fileno]
кому: recovered_file.flv
Я использую хром 11.06 на Убунту 10.04. Я нашел свои flv-файлы в ~/.cache/google-chrome/Default/Cache. Попробуйте
file * | grep Flash\ Video