MPEG-4

Transcripción

MPEG-4
Servicios Multimedia para Dispositivos Móviles
Tema 3:
Audio y vídeo
Formatos de codificación de audio y vídeo
© 2013-2014 Depto. Ciencia de la Computación e IA
Formatos de codificación de audio y vídeo
Puntos a tratar
• Formas de transmisión
• Formatos soportados
• Podcasts
SMDM
© 2013-2014 Depto. Ciencia de la Computación e IA
Audio y vídeo
2
Formatos de codificación de audio y vídeo
Audio y vídeo en dispositivos móviles
• Hay distintas formas de hacer llegar estos medios al móvil
• Streaming
Emisión de vídeo en directo
• Descarga progresiva
Podemos reproducir el vídeo mientras se descarga
• Podcast
El dispositivo se sincroniza con nuestras suscripciones
• Integrado en aplicaciones
El contenido se distribuye dentro de una aplicación
SMDM
© 2013-2014 Depto. Ciencia de la Computación e IA
Audio y vídeo
3
Formatos de codificación de audio y vídeo
TV móvil
• Estándar DVB-H en Europa
•
•
•
•
Basado en DVB-T
Extensiones para móviles
Time-slicing (permite ahorrar batería)
Dispositivos en movimiento
• Comparte frecuencias con DVB-T
• VHF III
• UHF IV/V
• Pueden compartir un mismo multiplex
SMDM
© 2013-2014 Depto. Ciencia de la Computación e IA
Audio y vídeo
4
Formatos de codificación de audio y vídeo
TV en Internet
• Uso de streaming para retransmitir contenidos
• Los dispositivos cuentan con acceso a Internet de banda ancha
• Aplicaciones para diferentes plataformas
SMDM
© 2013-2014 Depto. Ciencia de la Computación e IA
Audio y vídeo
5
Formatos de codificación de audio y vídeo
Plataforma YouTube
SMDM
© 2013-2014 Depto. Ciencia de la Computación e IA
Audio y vídeo
6
Formatos de codificación de audio y vídeo
Formatos de audio con compresión (iOS)
• Contamos con hardware de descompresión
•
•
•
•
AAC (MPEG-4 Advanced Audio Coding)
ALAC (Apple Lossless)
HE-AAC (MPEG-4 High Efficiency AAC, no software)
MP3 (MPEG-1 audio layer 3)
• El hardware sólo puede reproducir un fichero simultáneo
• Un segundo fichero se reproduciría por software
• Esto resulta demasiado costoso
• Útil para reproductores de música
SMDM
© 2013-2014 Depto. Ciencia de la Computación e IA
Audio y vídeo
7
Formatos de codificación de audio y vídeo
Formatos de audio sin compresión (iOS)
• Sin compresión o con compresión simple
• No es necesario hardware específico
• Se pueden reproducir por software con escaso coste
• Formatos soportados:
•
•
•
•
Linear PCM (sin compresión)
IMA4 (IMA/ADPCM)
iLBC (internet Low Bitrate Codec)
µ-law y a-law
• Permiten reproducir varios sonidos simultáneos con escaso coste
• Útil para efectos de sonido
SMDM
© 2013-2014 Depto. Ciencia de la Computación e IA
Audio y vídeo
8
Formatos de codificación de audio y vídeo
Formatos de fichero (iOS)
• Podemos reproducir ficheros de audio de diferentes tipos
•
•
•
•
•
.wav
.mp3
.aac
.aiff
.caf
• El formato preferido es CAFF (Core Audio File Format)
• Puede contener cualquiera de las codificaciones anteriores
SMDM
© 2013-2014 Depto. Ciencia de la Computación e IA
Audio y vídeo
9
Formatos de codificación de audio y vídeo
Formatos preferidos (iOS)
• PCM Little-Endian Integer 16-bit (LEI16)
• Empaquetado en un fichero CAFF
• Si hay problema de espacio
• AAC para música de fondo
• IMA4 para efectos de sonido
• Herramientas afconvert, afinfo, afplay
afconvert -­‐d [out data format] -­‐f [out file format] [in file] [out file]
• Por ejemplo, para PCM LEI16 en CAFF:
afconvert -­‐f caff -­‐d LEI16 sonido.wav sonido.caf
SMDM
© 2013-2014 Depto. Ciencia de la Computación e IA
Audio y vídeo
10
Formatos de codificación de audio y vídeo
Formatos de audio soportados (Android)
• AAC, HE-AACv1, HE-AACv2
3gp, mp4, m4a, aac (3.1+), ts (3.0+)
• AMR-NB, AMR-WB
3gp
• Vorbis
ogg, mkv (4.0+)
• PCM
wav
• FLAC (3.1+)
• MP3
• MIDI
SMDM
© 2013-2014 Depto. Ciencia de la Computación e IA
Audio y vídeo
11
Formatos de codificación de audio y vídeo
Estándares de vídeo
• Conjunto de especificaciones MPEG-4
• Parte 2 (Visual, implementado en DivX, Xvid), compatible con H.263
• Parte 10 (MPEG-4 AVC, Advance Video Coding), igual que H.264
• Parte 14 (Formato de fichero .mp4)
• ITU-T serie H (Sistemas audiovisuales y multimedia)
• H.263 (bajo bitrate para videoconferencia)
• H.264 (alta calidad con menor bitrate)
• On2Technologies (Google)
•
•
•
•
VP8 (formato de codificación abierto)
Licencia Creative Commons
libvpx codifica en este formato (licencia BSD)
Formato .webm (Video VP8 + Audio Vorbis)
SMDM
© 2013-2014 Depto. Ciencia de la Computación e IA
Audio y vídeo
12
Formatos de codificación de audio y vídeo
Formatos de vídeo (iOS)
• Soporta ficheros mov, mp4, m4v y 3gp
• Formatos de codificación soportados
• H.264, hasta 1.5 Mbps, 640 x 480, 30 fps, versión de baja
complejidad del H.264 Baseline Profile (no es estándar). Audio AACLC de hasta 160 Kbps, 48 kHz, stereo
• H.264, hasta 768 Kbps, 320 x 240, 30 fps, Baseline Profile hasta
nivel 1.3. Audio AAC-LC de hasta 160 Kbps, 48 kHz, stereo
• MPEG-4, hasta 2.5 Mbps, 640 x 480, 30 frames per second, Simple
Profile. Audio AAC-LC de hasta 160 Kbps, 48 kHz, stereo
SMDM
© 2013-2014 Depto. Ciencia de la Computación e IA
Audio y vídeo
13
Formatos de codificación de audio y vídeo
Formatos de vídeo avanzados (iOS)
• Los dispositivos modernos soportan mayores resoluciones
•
•
•
•
•
•
iPhone hasta 3GS: 480x320
iPhone 4/4S: 960x640
iPhone 5/5S: 1136x640
iPad / iPad mini: 1024x768
iPad retina / iPad mini retina: 2048x1536
Apple TV: 1920x1080
• A partir de iPhone 4/iPad se admiten nuevos formatos
• H.264 hasta 720p, 30 fps, Main Profile nivel 3.1. Audio AAC-LC de
hasta 160 Kbps, 48kHz, stereo (.m4v, .mp4, y .mov)
• A partir de iPhone 5
• H.264 hasta 1080p, 30 fps, High Profile nivel 4.1. Audio AAC-LC de
hasta 160 Kbps, 48kHz, stereo (.m4v, .mp4, y .mov)
SMDM
© 2013-2014 Depto. Ciencia de la Computación e IA
Audio y vídeo
14
Formatos de codificación de audio y vídeo
Formatos de vídeo (Android)
• H.263
3pg, mp4
• H.264 / MPEG 4-AVC Baseline Profile
3gp, mp4, ts (3.0+)
• MPEG-4 SP (Simple Profile)
3gp
• VP8 (Android 2.3.3+)
webm, mkv (4.0+)
SMDM
© 2013-2014 Depto. Ciencia de la Computación e IA
Audio y vídeo
15
Formatos de codificación de audio y vídeo
Perfil de vídeo general
• La codificación H.264 es soportada por la mayoría de dispositivos
• Para asegurarnos de que funcione en la mayor parte de
smartphones podemos usar:
•
•
•
•
•
•
•
H.264 Baseline Profile
Resolución 480 x 320
Framerate máximo de 30 fps
Bitrate máximo de vídeo 1500 kbps
Audio AAC
Sample rate de audio 44100 kHz
Bitrate máximo de audio 128 kbps
• Funcionará en todos los dispositivos iOS y Android
SMDM
© 2013-2014 Depto. Ciencia de la Computación e IA
Audio y vídeo
16
Formatos de codificación de audio y vídeo
Perfil de vídeo de alta calidad
• El perfil anterior desaprovecha las características de dispositivos
como iPhone 4 y iPad
• Podemos crear otro perfil para aprovechar estos dispositivos:
•
•
•
•
Vídeo H.264 Baseline Profile
Resolución 1280 x 720
Framerate máximo de 30 fps
Bitrate máximo de vídeo 5000 kbps
• Audio AAC
• Sample rate de audio 48000 kHz
• Bitrate máximo de audio 160 kbps
SMDM
© 2013-2014 Depto. Ciencia de la Computación e IA
Audio y vídeo
17
Formatos de codificación de audio y vídeo
Perfil de vídeo para dispositivos limitados
• Si queremos extender el soporte a dispositivos antiguos,
deberemos ofrecer también un perfil de vídeo de menor
complejidad que los anteriores:
•
•
•
•
Fichero 3GP, codificación MPEG-4 (Parte 2)
Resolución 176x144 - 320x240
Framerate máximo de 5-15 fps
Bitrate máximo de vídeo 52 - 192 kpbs
• Audio AAC-LC (Low Complexity)
• Sample rate de audio 16000 kHz
• Bitrate máximo de audio 16 - 24 kpbs
SMDM
© 2013-2014 Depto. Ciencia de la Computación e IA
Audio y vídeo
18
Formatos de codificación de audio y vídeo
Conversión de video con VLC
• Podemos utilizar VLC para convertir vídeo
vlc -­‐I dummy /<ruta_origen>/video.mpg :sout='#transcode{vcodec=mp2v, vb=4096,acodec=mp2a,ab=192,scale=1,channels=2,deinterlace,audio-­‐
sync}:std{access=file,mux=ps,dst=/<ruta_destino>/video.mpg' vlc://
quit
• Codecs
vb Vídeo bitrate ab Audio bitrate
Codec
vídeo
acodec
mp1v
MPEG-1
mpga
mp2v
MPEG-2
MPEG
audio
mp3
MPEG
Layer 3
mp4a
MP4
Audio
vorb
Vorbis
vcodec
mp4v
MPEG-4
H263
H.263
h264
H.264
theo
Theora
VP8
VP8 Video
SMDM
Codec
audio
mux
mpeg1
ts
ps
mp4
avi
ogg
dummy
wav
© 2013-2014 Depto. Ciencia de la Computación e IA
Tipo fichero
MPEG-1
MPEG TS
MPEG PS
MPEG-4
AVI
OGG
MP3
WAVE
Audio y vídeo
19
Formatos de codificación de audio y vídeo
Conversión de video con ffmpeg
• Conversión básica
ffmpeg -­‐i entrada.ext salida.ext
• Permite ajustar
•
Formato de fichero
-­‐f avi
Resolución
-­‐s 640x480
Fotogramas por
segundo
Codec de video
-­‐r 24
Codec de audio
-­‐c:a / -­‐acodec aac
Bitrate de video
-­‐b:v 1500k
Bitrate de audio
-­‐b:a 128k
Frecuencia de audio
-­‐ar 44100
Canales de audio
-­‐ac 2
Perfil
-­‐profile:v baseline
SMDM
-­‐c:v / -­‐vcodec h264
© 2013-2014 Depto. Ciencia de la Computación e IA
Ver ffmpeg -­‐formats
Ver ffmpeg -­‐codecs
Audio y vídeo
20
Formatos de codificación de audio y vídeo
Ejemplo de conversión con ffmpeg
• Conversión a un perfil standard para dispositivos móviles
Necesario para utilizar
codec experimental aac
ffmpeg -­‐i entrada.m2ts -­‐strict -­‐2 -­‐vcodec h264 Video
-­‐s 480x320 -­‐b:v 1500k
-­‐profile:v baseline -­‐level 3.0 -­‐acodec aac Audio
-­‐ar 22050 -­‐b:a 128k -­‐ac 2
El formato de salida queda
salida.mp4
implícito en la extensión
SMDM
© 2013-2014 Depto. Ciencia de la Computación e IA
Audio y vídeo
21
Formatos de codificación de audio y vídeo
Perfiles y compatibilidad
Perfil
Dispositivos
Configuración
Baseline 3.0 Todos los dispositivos
-­‐profile:v baseline -­‐level 3.0
Baseline 3.1 iPhone 3G
-­‐profile:v baseline -­‐level 3.1
Main 3.1
iPad, iPhone 4
-­‐profile:v main -­‐level 3.1
Main 4.0
iPad 2, iPhone 4S
-­‐profile:v main -­‐level 4.0
High 4.0
iPad 2, iPhone 4S
-­‐profile:v high -­‐level 4.0
High 4.1
iPad 2, iPhone 4S
-­‐profile:v high -­‐level 4.1
SMDM
© 2013-2014 Depto. Ciencia de la Computación e IA
Audio y vídeo
22
Formatos de codificación de audio y vídeo
Reproducción de medios en Android
• Se utiliza la clase MediaPlayer
• Permite reproducir medios desde diferentes fuentes
• Dos formas de inicialización
• Método create
// Recurso de la aplicación
MediaPlayer resourcePlayer = MediaPlayer.create(appContext, R.raw.my_audio); // Fichero local (en la tarjeta de memoria)
MediaPlayer filePlayer = MediaPlayer.create(appContext, Uri.parse("file:///sdcard/localfile.mp3")); // URL
MediaPlayer urlPlayer = MediaPlayer.create(appContext, Uri.parse("http://site.com/audio/audio.mp3"));
// Proveedor de contenido MediaPlayer contentPlayer = MediaPlayer.create(appContext, Settings.System.DEFAULT_RINGTONE_URI);
• Método setDataSource
MediaPlayer mediaPlayer = new MediaPlayer();
mediaPlayer.setDataSource("/sdcard/test.mp3");
mediaPlayer.prepare();
SMDM
© 2013-2014 Depto. Ciencia de la Computación e IA
Audio y vídeo
23
FormatosUniversitario
de codificación
de audio
vídeo
Especialista
en Desarrollo
de yAplicaciones
para Dispositivos Móviles
Estados
del
reproductor
en
Android
Reproducir audio con MediaPlayer
SMDM
Gráficos y multimedia
©
2013-2014Depto.
Depto. Ciencia
Ciencia de
de la
la Computación
© 2011-2012
Computación ee IA
IA
Audio
y vídeo- 4 24
Reproducción
Android
Formatos de codificación de audio y vídeo
Control de reproducción de audio
• Otros métodos
• Control de repetición
if (!mediaPlayer.isLooping())
mediaPlayer.setLooping(true);
• Activación de pantalla
mediaPlayer.setScreenOnWhilePlaying(true);
• Volumen
mediaPlayer.setVolume(1f, 0.5f);
• Duración
mediaPlayer.start();
int pos = mediaPlayer.getCurrentPosition();
int duration = mediaPlayer.getDuration();
mediaPlayer.seekTo(pos + (duration-­‐pos)/10);
SMDM
© 2013-2014 Depto. Ciencia de la Computación e IA
Audio y vídeo
25
Formatos de codificación de audio y vídeo
Reproducción de video con VideoView
• Similar a la reproducción de audio, excepto
• Se necesita una superficie sobre la que reproducir
<VideoView android:id="@+id/superficie"
android:layout_height="fill_parent"
android:layout_width="fill_parent">
</VideoView>
• Vista VideoView encapsula
• Superficie sobre la que reproducir
• Objeto MediaPlayer
videoView1.setVideoURI(Uri.parse("http://www.mysite.com/videos/myvideo.3gp"));
videoView2.setVideoPath("/sdcard/test2.3gp");
videoView3.setVideoURI(Uri.parse("android.resource://es.ua.dccia/" + R.raw.video_qtp));
SMDM
© 2013-2014 Depto. Ciencia de la Computación e IA
Audio y vídeo
26
Formatos de codificación de audio y vídeo
Control de reproducción
•
•
•
•
•
setKeepScreenOn start stopPlayback pause
seekTo
VideoView videoView = (VideoView)findViewById(R.id.superficie);
videoView.setKeepScreenOn(true);
videoView.setVideoPath("/sdcard/ejemplo.3gp");
if (videoView.canSeekForward())
videoView.seekTo(videoView.getDuration()/2);
videoView.start();
// Hacer algo durante la reproducción
videoView.stopPlayback();
SMDM
© 2013-2014 Depto. Ciencia de la Computación e IA
Audio y vídeo
27
Formatos de codificación de audio y vídeo
¿Preguntas...?
SMDM
© 2013-2014 Depto. Ciencia de la Computación e IA
Audio y vídeo
28

Documentos relacionados