Convertendo qualquer vídeo para swf, que nem o youtube faz

http://pandastream.com/
Eu vi que esse site tem esse serviço mas me parece meio complicado de usar.

Alguém conhece alguma maneira de se realizar esse tipo de coisa que já exista?

É bom assim porque o usuário só precisará de um plugin para ver qualquer vídeo

Vlw!!

Cara… tem um programinha chamado ffmpeg, que você pode invocar ele em sua aplicação java para fazer conversões. Ele tem versão para windows e para linux.

Por exemplo, o código a seguir converte todos os arquivos da pasta midia (neste caso, arquivos wmv) para arquivos no formato flv. Para tanto, precisei ter o executável ffmpeg.exe na raiz do meu projeto.

import java.io.File;

public class Conversor {

	public static void main(String[] args) {
		File dir = new File("midia");
		File midia[] = dir.listFiles();

		for (int i = 0; i < midia.length; i++) {
			File file = midia[i];
			String command = "ffmpeg.exe -i " + file.getAbsolutePath() + " filme_" + i + ".flv";
			System.out.println("Conversor.main() " + command);

			Process p = null;
			try {
				System.out.println(command);
				p = Runtime.getRuntime().exec(command);
			} catch (Exception e) {
				System.out.println("Conversor.main() erro " + p);
				System.out.println(e);
			}
			System.out.println("Conversor.main() terminei "+i);
		}
	}
}

[quote=cassioso]Cara… tem um programinha chamado ffmpeg, que você pode invocar ele em sua aplicação java para fazer conversões. Ele tem versão para windows e para linux.

Por exemplo, o código a seguir converte todos os arquivos da pasta midia (neste caso, arquivos wmv) para arquivos no formato flv. Para tanto, precisei ter o executável ffmpeg.exe na raiz do meu projeto.

[code]
import java.io.File;

public class Conversor {

public static void main(String[] args) {
	File dir = new File("midia");
	File midia[] = dir.listFiles();

	for (int i = 0; i < midia.length; i++) {
		File file = midia[i];
		String command = "ffmpeg.exe -i " + file.getAbsolutePath() + " filme_" + i + ".flv";
		System.out.println("Conversor.main() " + command);

		Process p = null;
		try {
			System.out.println(command);
			p = Runtime.getRuntime().exec(command);
		} catch (Exception e) {
			System.out.println("Conversor.main() erro " + p);
			System.out.println(e);
		}
		System.out.println("Conversor.main() terminei "+i);
	}
}

}
[/code][/quote]
cassioso, eu faria igual. Mas em shell. :slight_smile:

Ficou muito boa essa solução e muito simples de se usar.

Vou testar essa solução quando chegar em casa.

Valeu, muito obrigado mesmo.

cassioso, eu faria igual. Mas em shell. :)[/quote]

Cara, eu não entendo muito bem de shell,
mas isso que ele fez não seria executar o shell que o programa disponibiliza através de código java???

cassioso, eu faria igual. Mas em shell. :)[/quote]

Cara, eu não entendo muito bem de shell,
mas isso que ele fez não seria executar o shell que o programa disponibiliza através de código java???[/quote]

Sim, mas é um passo a mais desnecessário. Além de requerer que o individuo tenha Java instalado na máquina.

Mas a intenção é de rodar no java.

Eu esqueci de mencionar que gostaria que o usuário ao fazer o upload, o vídeo fosse automaticamente convertido para .flv.

Assim eu consigo manter um padrão de visualização bem interessante e não preciso que o cliente instale todos os plugins de vídeos possíveis para assistir o vídeo através do navegador.

Exatamente como o youtube.

Acho que o Flex tem suporte nativo a isso.

Não gosto de abusar do flash.

Estou usando o ZK para fazer a interface RIA do meu projeto.

Para quem quiser ver como funciona os componentes do zk.
http://www.zkoss.org/zkdemo/userguide/

Bom pessoal, preciso saber o seguinte

hospedo meu site em um servidor (Linux) onde eu só tenho acesso ao CPANEL e WHM, fora ftp, não sei se tem ffmpeg instalado (como posso ver se tem instalado?)

Gostaria de saber, vi o código em java do amigo Cássio, achei interessante, dá pra utilizar da seguinte forma?:
O arquivo é enviado por formulario.php ao site, sendo armazenado os dados em sql, somente o arquivo em pasta (/videos/) (isso eu já tenho pronto, envio diretamente wmv ao site sem problemas, mas como o firefox e alguns navegadores não lêem wmv infelizmente, tenho que optar por flash…

qual seria a linha de comando para converter automaticamente esse arquivo enviado (.mov, .wmv ou .avi) para .flv ?

lembrando que uso php 5 e o OS é Linux

um abração

Se o video não for secreto, pode usar o próprio YouTube para converter E armazenar

Para usar esta solução do ffmpeg, do jeito que foi proposta neste fórum, você precisa tê-lo instalado no seu servidor. no caso vc teria que ter acesso a linha de comando. Pode entrar em contato com seu servidor perguntando como fazer e se seu pacote dá suporte a estas operações.

Ou… pode usar uma solulção a la Web Service, onde quando o usuário fizer upload do vídeo no seu site, vc envia o vídeo para algum outro site que possui o serviço de conversão e armazena novamente no seu site o vídeo convertido.

Cassio

Certo, qual site faria essa conversão caso o administrador do servidor não habilite o ffmpeg ?

outro detalhe, essa conversão com upload e depois upload novamente pro site de conversão tornaria o serviço em o dobro do tempo ?

abraços

[quote=Rubem Azenha]Se o video não for secreto, pode usar o próprio YouTube para converter E armazenar


[/quote]

Rubem, o problema seria o youtube apresentar o logotipo do youtube no vídeo… entende ? ficaria uma coisa amadora para apresentar apesar de ser um método eficiente e show de bola…

imagine a globo.com ou G1 armazenar seus videos no youtube e apresentar no site da globo.com ? no caso deles, uma gigantesca empresa, ficaria amadora, não daria tanto ênfase ao site deles

mas sua proposta é boa :slight_smile:

Sem falar q o próprio Youtube deve usar o mesmo ffmpeg pra converter os vídeos.