Ir para conteúdo

kamin

Members
  • Total de itens

    67
  • Registro em

  • Última visita

Reputação

-1 Fraco

1 Seguidor

Sobre kamin

Informações Pessoais

  • Sexo
    Masculino

Últimos Visitantes

282 visualizações
  1. Olá Gabriel, obrigado por responder. "ué o carregamento vai ocorrer mesmo (Saltar da pagina x, para y, etc)" vai acontecer, mas vai acontecendo travando, de forma lenta, etc... porque como você disse: "é igual você abrir uma pagina HTML via FileSystem do seu S.O." mustache vai me ajudar MUITOOOOOOO em meu projeto, eu não conhecia, muito obrigado. porém o problema ainda persiste, não tenho uma lógica de paginação com jquery mobile, não quero usar angular e sei bastante sobre Ajax (eu acho), porém com um ajax comum, não é possível fazer uma transição semelhante aos app nativos, apenas fadein, fadeout, slow, etc.. as opções que tenho até o momento é 1. usar um index.html com todas as páginas do app (oq deixaria muito pesado) 2. linkar para paginas de outro diretorio "view/home.html" (obter transações ruins, travadas) 3. usar ajax puro, mas eu não teria o efeito de transição do nativo, necessito dos efeitos de transições para parar um app nativo android
  2. Olá a todos, estou desenvolvendo um APP MOBILE usando cordova/phonegap com Jquery Mobile, porém estou a 2 dias quebrando a cabeça com a lógica e estruturação de páginas e transições. em todo lugar eu vejo a mesma coisa: <body> <div data-role="page" id="home"> <div role="main" class="ui-content"> <a href="#login" data-transition="slide">FAZER LOGIN</a> </div> </div> <div data-role="page" id="login"> <div role="main" class="ui-content"> <a href="#home" data-transition="slide">Voltar para Home</a> </div> </div> </body> Só que desta maneira, se o App tiver muitas páginas, ex. 100 páginas, todas as 100 páginas ficariam apenas no index.html?! oque iria dificultar muito o entendimento do código e seria uma home page extremamente pesada... Se eu organizar as páginas em outro diretório, ex: /view/ -> home.html login.html cadastro.html etc.html e na index.html, <a href="view/login.html" data-transition="slide">FAZER LOGIN</a> ficaria aceitável e legível, porém as transições entre uma página e outra fica horrível quando compilado para ADNROID OU IOS), fica horrível porque está chamando outro HTML e não carregando conteúdo da mesma página, ou seja, tem um atraso no carregamento do HTML... Eu gostaria de uma lógica de paginação onde eu pudesse organizar os arquivos HTML em uma pasta separada (ou algo do tipo) e quando necessário chama-los com uma transições fluidas e não quebradas... Alguém me da uma luz?
  3. kamin

    Abrir video/mp4 externo com PHP

    Desculpa perguntar, mas será que você tem uma rede social onde possamos conversar melhor? Kosonome
  4. kamin

    Abrir video/mp4 externo com PHP

    estou muito confuso, veja $opts = array( 'http'=>array( 'method'=>"GET", 'header'=>"Accept-language: en\r\n" . "Cookie: foo=bar\r\n" ) ); $context = stream_context_create($opts); $request = 'https://s3-sa-east-1.amazonaws.com/onlytestes/video.mp4'; $file = $request; $fp = fopen($request, 'r', false, $context); $size = filesize("s3://onlytestes/video.mp4"); $length = $size; // Content length $start = 0; // Start byte $end = $size - 1; // End byte header('Content-type: video/mp4'); header("Accept-Ranges: 0-$length"); if (isset($_SERVER['HTTP_RANGE'])) { $c_start = $start; $c_end = $end; list(, $range) = explode('=', $_SERVER['HTTP_RANGE'], 2); if (strpos($range, ',') !== false) { header('HTTP/1.1 416 Requested Range Not Satisfiable'); header("Content-Range: bytes $start-$end/$size"); exit; } if ($range == '-') { $c_start = $size - substr($range, 1); }else{ $range = explode('-', $range); $c_start = $range[0]; $c_end = (isset($range[1]) && is_numeric($range[1])) ? $range[1] : $size; } $c_end = ($c_end > $end) ? $end : $c_end; if ($c_start > $c_end || $c_start > $size - 1 || $c_end >= $size) { header('HTTP/1.1 416 Requested Range Not Satisfiable'); header("Content-Range: bytes $start-$end/$size"); exit; } $start = $c_start; $end = $c_end; $length = $end - $start + 1; fseek($fp, $start); header('HTTP/1.1 206 Partial Content'); } header("Content-Range: bytes $start-$end/$size"); header("Content-Length: ".$length); $buffer = 1024 * 8; while(!feof($fp) && ($p = ftell($fp)) <= $end) { if ($p + $buffer > $end) { $buffer = $end - $p + 1; } set_time_limit(0); echo fread($fp, $buffer); flush(); } fclose($fp); exit(); o RANGE é definido de acordo o tamanho dele e o tamanho eu já define de acordo com a consulta amazon, mas sem sucesso.. tenta rodar esse código em seu localhost, o filesize() deste arquivo https://s3-sa-east-1.amazonaws.com/onlytestes/video.mp4 é 1386059 caso queira fazer testes pra vê o código funcionando, só trocar pra um vídeo local
  5. kamin

    Abrir video/mp4 externo com PHP

    esses são os headers que eu consigo recuperar do arquivo, pelo amazon 0 => HTTP/1.1 200 OK x-amz-id-2 => 504rJ8Ty9M57/+QIK2gxRBuzviERY9abxHfAMY3rBSofbig9qEgN3/iMg0Dcidb04EmQPeIlcx0= x-amz-request-id => 919E6D315AA91F80 Date => Wed, 12 Jul 2017 22:30:13 GMT Last-Modified => Wed, 12 Jul 2017 19:18:03 GMT ETag => "434e45953c735392473b772fe5cb35dc-6" Accept-Ranges => bytes Content-Type => video/mp4 Content-Length => 89127988 Server => AmazonS3 Connection => close é disso que precisamos?
  6. kamin

    Abrir video/mp4 externo com PHP

    postei em outro fórum e o rapaz me falou "Get the header of the Amazon request (curl) and forward it. Scrubbing will never work though." mas não tenho a minima de como fazer e de qual headers precisa
  7. kamin

    Abrir video/mp4 externo com PHP

    eu tenho esse código que resolve o problema, mas causa o probleam do fopen $request = 'video.mp4'; $file = $request; $fp = fopen($file, 'rb'); $size = filesize($file); $length = $size; $start = 0; $end = $size - 1; header('Content-type: video/mp4'); header("Accept-Ranges: 0-$length"); if (isset($_SERVER['HTTP_RANGE'])) { $c_start = $start; $c_end = $end; list(, $range) = explode('=', $_SERVER['HTTP_RANGE'], 2); if (strpos($range, ',') !== false) { header('HTTP/1.1 416 Requested Range Not Satisfiable'); header("Content-Range: bytes $start-$end/$size"); exit; } if ($range == '-') { $c_start = $size - substr($range, 1); }else{ $range = explode('-', $range); $c_start = $range[0]; $c_end = (isset($range[1]) && is_numeric($range[1])) ? $range[1] : $size; } $c_end = ($c_end > $end) ? $end : $c_end; if ($c_start > $c_end || $c_start > $size - 1 || $c_end >= $size) { header('HTTP/1.1 416 Requested Range Not Satisfiable'); header("Content-Range: bytes $start-$end/$size"); exit; } $start = $c_start; $end = $c_end; $length = $end - $start + 1; fseek($fp, $start); header('HTTP/1.1 206 Partial Content'); } header("Content-Range: bytes $start-$end/$size"); header("Content-Length: ".$length); $buffer = 1024 * 8; while(!feof($fp) && ($p = ftell($fp)) <= $end) { if ($p + $buffer > $end) { $buffer = $end - $p + 1; } set_time_limit(0); echo fread($fp, $buffer); flush(); } fclose($fp); exit(); eu consigo passar qualquer passar informação do video usando uma simples consulta da amazon, como filesize(), mas pra fazer o fseek() ele precisa do fopen() aí quebra tudo... alguma ideia?
  8. kamin

    Abrir video/mp4 externo com PHP

    Estou pra desistir
  9. kamin

    Abrir video/mp4 externo com PHP

    CURL básico eu sei, não sei fazer oque você falou, além disso não sei os headers que tenho que usar "cURL seja possível toda essa manipulação de headers, mas teria que atrelar isto a um stream parecido ao stream_context_create()." você não poderia escrever o código?
  10. kamin

    Abrir video/mp4 externo com PHP

    Inteligente. Eu pensei que, ao invés de usar fopen() ou fseek() para obter os headers do arquivo, eu poderia consultar diretamente no S3, evitando abrir/baixar o vídeo várias vezes.. 0 => HTTP/1.1 200 OK x-amz-id-2 => 504rJ8Ty9M57/+QIK2gxRBuzviERY9abxHfAMY3rBSofbig9qEgN3/iMg0Dcidb04EmQPeIlcx0= x-amz-request-id => 919E6D315AA91F80 Date => Wed, 12 Jul 2017 22:30:13 GMT Last-Modified => Wed, 12 Jul 2017 19:18:03 GMT ETag => "434e45953c735392473b772fe5cb35dc-6" Accept-Ranges => bytes Content-Type => video/mp4 Content-Length => 89127988 Server => AmazonS3 Connection => close mas não tive sucesso aplicando apenas esses headers, sua lógica é boa, mas não estou sabendo aplica-la, não sei CURL, tô perdido, poderia me ajudar?
  11. kamin

    barra de duração/progresso vídeo php

    Estou tentando ler arquivos mp4 com o PHP, meu código inicial era $file = 'https://s3-sa-east-1.amazonaws.com/onlytestes/video.mp4'; header('Content-type: video/mp4'); readfile($file); Mas dessa forma não dava pra navegar na barra de duração do vídeo, pular e nem mesmo voltar, até que o vídeo esteja 100% carregado. Claro que quando leio diretamente o arquivo (video.mp4) tudo ocorre bem. Alguém tem alguma ideia?
  12. kamin

    Abrir video/mp4 externo com PHP

    poderíamos voltar problema inicial, que é o problema com a barra de duração/progresso do vídeo, não consigo navegar por ela.
  13. kamin

    Abrir video/mp4 externo com PHP

    Está sim, mas depende da definição de perfeito. (adiante o vídeo e verás que demora pra carregar, enquanto no original é instantâneo ) está longe de ser aceitável, está muito lento comparando ao vídeo original https://s3-sa-east-1.amazonaws.com/onlytestes/maior.mp4 ou comparando com a necessidade do usuário.
  14. kamin

    Abrir video/mp4 externo com PHP

    faça testes, por requisições GET e verá a grande diferença require 'vendor/autoload.php'; use Aws\S3\Exception\S3Exception; use Aws\S3\S3Client; $bucket = 'onlytestes'; $file = $_GET['file']; $client = new S3Client([ 'version' => 'latest', 'region' => 'sa-east-1', 'credentials' => [ 'key' => '***', 'secret' => ''***',', ] ]); // Register the stream wrapper from a client object $client->registerStreamWrapper(); $stream = new VideoStream('s3://onlytestes/'.$file); $stream->start(); Vídeos verdadeiros https://s3-sa-east-1.amazonaws.com/onlytestes/video.mp4 https://s3-sa-east-1.amazonaws.com/onlytestes/maior.mp4 http://192.241.159.176/tutorial.php?file=video.mp4 http://192.241.159.176/tutorial.php?file=maior.mp4 Quanto maior, mais lento, não posso fornecer isto para os usuários.
  15. kamin

    Abrir video/mp4 externo com PHP

    Sim, alguém comentou o tutorial que estava com esse mesmo problema que esse meu, e resolveu com $buffer = 512; mas ainda demora muito pra abrir, pular/adiantar, e se eu por um vídeo um pouco maior, não funciona, nem abre
×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.