За последние 24 часа нас посетили 17647 программистов и 1649 роботов. Сейчас ищут 922 программиста ...

Отдача видео на PHP

Тема в разделе "PHP для новичков", создана пользователем realmadrid, 4 май 2010.

  1. realmadrid

    realmadrid Активный пользователь

    С нами с:
    22 июн 2007
    Сообщения:
    14
    Симпатии:
    0
    Здравствуйте!
    Как работает отдача роликов на youtube? Как из такой

    ссылки на выходе получается ролик?
    Задача у меня стоит точно такая же: задать вместо конкретного flv файла адрес скрипта, и чтобы тот выдавал ролик. Я как только не экспериментировал с заголовками, ничего путного получить не смог.
     
  2. Luge

    Luge Старожил

    С нами с:
    2 фев 2007
    Сообщения:
    4.680
    Симпатии:
    1
    Адрес:
    Минск
    ccылка открывает страницу на которой плэйер открывает ролик
     
  3. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    при закачке ролика переименовываете его в случайную последовательность символов и в базу вносите уже в таком виде.
    Это позволит избежать слива контента с сайта простым перебором. Толку от этого не много, но это, что называется, маст хев.

    А с какими заголовками вы экспериментировали? =)
     
  4. realmadrid

    realmadrid Активный пользователь

    С нами с:
    22 июн 2007
    Сообщения:
    14
    Симпатии:
    0
    Код (Text):
    1.  
    2. <object width="480" height="385"><param name="movie" value="http://www.youtube.com/v/t_pSJDzCueY&hl=ru_RU&fs=1&color1=0x2b405b&color2=0x6b8ab6"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/t_pSJDzCueY&hl=ru_RU&fs=1&color1=0x2b405b&color2=0x6b8ab6" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="480" height="385"></embed></object>
    Мой код почти такой же за исключением адреса, к которому нужно обращаться за роликом. Так что так или иначе, придётся отправлять заголовки. Я делал и
    Код (Text):
    1. Content-Type: application/x-shockwave-flash
    и
    Код (Text):
    1. Content-Disposition: attachment; filename
    и
    Код (Text):
    1. Content-Type: video/flv
    , пытался отдавать ролик через
    Код (Text):
    1. Location
    - ничего не помогает. Наверняка же youtube-овцы ролик формируют исходя из переданных настроек и выдают его динамически. Только как?
     
  5. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    да врятли. ролик не изменяется, если вы про видеоряд. нет смысла его формировать динамически. но проблему это конечно не снимает.

    а вы не пробовали подгляднуть хидеры с ютуба?
     
  6. realmadrid

    realmadrid Активный пользователь

    С нами с:
    22 июн 2007
    Сообщения:
    14
    Симпатии:
    0
    Пробовал. Вот что получилось:
    Код (Text):
    1. http://www.youtube.com/v/t_pSJDzCueY&hl=ru_RU&fs=1&color1=0x2b405b&color2=0x6b8ab6
    2.  
    3. GET http://www.youtube.com/v/t_pSJDzCueY&hl=ru_RU&fs=1&color1=0x2b405b&color2=0x6b8ab6 HTTP/1.1
    4.  
    5. Host: www.youtube.com
    6.  
    7. User-Agent: Mozilla/5.0 (X11; U; Linux i686; ru; rv:1.9.2.3) Gecko/20100401 Firefox/3.6.3
    8.  
    9. Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
    10.  
    11. Accept-Language: ru,en-us;q=0.7,en;q=0.3
    12.  
    13. Accept-Encoding: gzip,deflate
    14.  
    15. Accept-Charset: windows-1251,utf-8;q=0.7,*;q=0.7
    16.  
    17. Keep-Alive: 115
    18.  
    19. Proxy-Connection: keep-alive
    20.  
    21. Cookie: VISITOR_INFO1_LIVE=4lCLlnKAMMU; PREF=f1=50000000&ems=medium&emt=iceberg; use_hitbox=72c46ff6cbcdb7c5585c36411b6b334edAEAAAAw; GEO=ea23a2cdafbd54eb7d1548fe98cfa4accwsAAAAzUlVfgIsmS9/Fhw==; watched_video_id_list=bae484b020e1b0eb6721ca8d35a5a845WwEAAABzCwAAAHRfcFNKRHpDdWVZ
    22.  
    23. Proxy-Authorization: Basic ZmVkb3JvdmFfZXYyOm1pbGxlb25kZQ==
    24.  
    25. Cache-Control: max-age=0
    26.  
    27.  
    28.  
    29. HTTP/1.0 200 OK
    30.  
    31. Date: Tue, 04 May 2010 08:53:09 GMT
    32.  
    33. Server: Apache
    34.  
    35. X-Content-Type-Options: nosniff
    36.  
    37. Expires: Tue, 27 Apr 1971 19:44:06 EST
    38.  
    39. X-YouTube-MID: nLThsU052OXJEdFZlcWM0SFpxZEFkVTJPa3k5WnUxLW5Tdnp0WTVMQXlBVkZxZk91SUpRNDR3
    40.  
    41. Cache-Control: no-cache
    42.  
    43. Content-Length: 1087
    44.  
    45. Content-Type: application/x-shockwave-flash
    46.  
    47. X-Cache: MISS from cs1854, MISS from server.bt
    48.  
    49. X-Cache-Lookup: MISS from server.bt:3228
    50.  
    51. Via: 1.0 cs1854:3128 (squid/2.7.STABLE5), 1.0 server.bt:3228 (squid/2.7.STABLE3)