Мне нравится хранить видео, потому что
- Мне нравится буферизовать их, а затем воспроизводить их последовательно в моем медиаплеере,
- Я хочу иметь возможность остановить / перезапустить свой браузер без потери всего буферизованного видео, и
- Флэш часто вылетает и выдает мне серые коробки .
Для многих сайтов с Flash-видео (включая Youtube) я могу найти flv-файл /tmp
, обычно называемый FlashXX...
. Но некоторым сайтам удается предотвратить появление этого файла, например, http://blip.tv/file/3627639 . Возможно, это вообще не наматывается на диск, но это было бы удивительно, так как все часовое видео может быть помещено в буфер без заметного влияния на мою оперативную память.
В 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, но не увидел ни одного удаленного 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
все процессы chrome для всего, что выглядело так, как будто это запись файла:
strace -p (pgrep chrome|xargs -I_ echo -p _)
но просмотр вызовов write
/ writev
/ select
только указал мне на несколько FD, которые /proc/_/fd/
оказались трубами / сокетами (предположительно, для процессов, чтобы общаться друг с другом). Также попробовал то же самое в npviewer.bin
процессе.
Я также попытался просто проверить все файлы, указанные в /proc/*/fd/
( любых процессах), которые были недавно изменены, но не нашел ничего, что выглядело бы как содержащее flv. Я также попробовал ту же самую проверку на недавно измененных файлах под ~/.cache/google-chrome/
.
Если это имеет значение, я использую релиз канала Chrome для разработчиков, который, как я считаю (всегда?), Использует свою собственную безопасную реализацию Flash. На данный момент я использую Chrome 10.0.648.45 dev. Согласно http://www.adobe.com/software/flash/about/ я работаю 10.2.152.27. Я попробовал несколько коробок Ubuntu сейчас. Я также попробовал несколько коробок Ubuntu сейчас, с теми же результатами.
Любые другие хотят нанести удар в этом?
Ответы:
Я заметил, что последние плагины Flash хранят файлы в / tmp, но они используют способ их удаления и сохранения дескриптора файла, чтобы сохранить их живыми. Это означает, что они по-прежнему хранятся на диске (до тех пор, пока дескриптор файла открывается флэш-плагином), но они не отображаются в списке каталогов (поскольку файл был удален).
Я писал об этом когда-то: получать флеш-видео из почти удаленных файлов.
Но все зависит от версии плагина Flash. Он также используется для хранения фильмов в / tmp или в кеше браузера.
источник
Проверка / proc // fd / добилась цели для меня:
Файл 11 , помеченный как «(удаленный)», по-прежнему указывает на файл, изначально созданный в / tmp /, поэтому он не полностью удален:
делает:
воспроизведет файл FLV.
Вот довольно удобная командная строка, адаптированная из описанной выше процедуры. Это может потребовать незначительных корректировок для вашего дистрибутива / установки и того, какие процессы вы обычно используете.
Вы можете заменить
flash
наnpviewer
, заменитьvlc
наmplayer
:источник
mplayer 11 -dumpstream -dumpfile outputname
Флэш-потоки в большинстве случаев являются простыми файлами, полученными по запросу http.
Для вашего видео на
http://blip.tv/file/3627639
В Google Chrome вы можете проверять сетевые запросы (
ctrl + shift + i
) искать самые длинные для завершения в вашем случае:щелкните по нему и скопируйте / вставьте URL из поля «Запросить URL» в новую вкладку
http://blip.tv/file/get/Fosslc-2...to823.flv?showplayer=20110401114509&source=1
источник
Ян,
Да, он находится в ~ / .cache / google-chrome / Cache (ну, у меня установлен Chromium, поэтому я нашел его в ~ / .cache / chromium / Cache).
Если вы смотрите видео и сортируете по отметке времени:
Затем, если вы запустите команду file, вы увидите, какие из них являются Flash:
ОК, я установил Google Chrome, чтобы проверить это.
Похоже, каталог для Google Chrome немного отличается от Chromium.
Используя те же приемы (здесь указывается идентификатор процесса браузера, в выходных данных для ясности удалены некоторые столбцы):
источник
используя хром 11.0.666.0 и плагин flash 10.2.152
grepping для npviewer не произвел никакого процесса для меня, но grepping для flash:
в основном то же самое, что JYAP выше предложено с
и вы можете продолжить, как указано выше ...
источник
Попробуйте перечислить открытые файлы.
источник
Некоторые из новых игроков буферизируются в памяти, чтобы люди не могли использовать эти приемы. Вы не сможете ничего получить в этом случае.
источник
Я исправил эту проблему. Здесь шаги
посмотрите http://www.arulraj.net/2011/03/google-chrome-download-video.html
источник
Для последней версии Chrome для Linux:
Определите pid плагина Flash, используемого Chrome:
на данный момент плагин называется
libgcflashplayer
.Определите файл Flash, открытый этим процессом плагина Flash:
или же
Ищите удаленные файлы.
Скопируйте файл из
/proc/[pid]/fd/[fileno]
вrecovered_file.flv
источник
Я использую Chrome 11.06 на Ubuntu 10.04. Я нашел мои flv файлы в ~ / .cache / google-chrome / Default / Cache. Попробуйте
источник
Небольшой совет от меня. Это работает в Ubuntu 10.04.
Теперь вы можете запланировать этот скрипт с помощью crontab. Это можно оптимизировать, чтобы не было дублированных файлов FLV.
источник
Использование Firefox на Kubuntu:
источник
У меня есть другой способ сделать это на основе файлового дескриптора, основанного в / proc (я использую современный bash в несколько строк)
источник