Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
[mediatomb/ffmpeg] miniatures et formats ?
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index French
View previous topic :: View next topic  
Author Message
Chr0nos
Apprentice
Apprentice


Joined: 26 Feb 2010
Posts: 205

PostPosted: Tue Nov 23, 2010 9:16 pm    Post subject: [mediatomb/ffmpeg] miniatures et formats ? Reply with quote

Bonjour a tous,
je cherche a "modifier" ma config de mon serveur mediatomb (qui marche depuis un moment deja sans vrais "problemes") mis a part que losque je navigue dans mes films avec ma ps3:

1: je n'ai pas de miniatures sur les video alors que ffmpeg thumbnailer est installé et fonctionel
2: je n'arrive pas a definir une "methode" de traitement pour les video en .mkv a savor:
- si la langue "us" est trouvé ET que des sous titres "fr" sont dispo alors utiliser de la vostf
- sinon si utiliser la langue par default et si des sous titres marqué "forced" sonts dispo alors les utiliser en plus de la langue audio
(je "suppose" que je vais devoir passer par un fichier .bash ou .sh pour cela mais je n'ai pas le niveau requis pour faire un truc "propre" (ou meme fonctionel mais crade) avec mkvinfo / grep / cut / sed / etc)

coté /etc/mediatomb/config.xml j'ai:

Code:

<?xml version="1.0" encoding="UTF-8"?>
<config version="2" xmlns="http://mediatomb.cc/config/2" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://mediatomb.cc/config/2 http://mediatomb.cc/config/2.xsd">
  <server>
    <ui enabled="yes" show-tooltips="yes">
      <accounts enabled="no" session-timeout="30">
        <account user="mediatomb" password="mediatomb"/>
      </accounts>
    </ui>
    <name>StarK</name>
    <udn>uuid:419aea13-faa2-4af8-bbb4-596b5f9567fd</udn>
    <home>/var/lib/mediatomb</home>
    <webroot>/usr/share/mediatomb/web</webroot>
    <storage>
      <sqlite3 enabled="yes">
        <database-file>mediatomb.db</database-file>
      </sqlite3>
      <mysql enabled="no">
        <host>host</host>
        <database>database</database>
        <username>username</username>
        <password>password</password>
      </mysql>
    </storage>
    <protocolInfo extend="yes"/>
    <pc-directory upnp-hide="no"/>
    <extended-runtime-options>
      <ffmpegthumbnailer enabled="yes">
        <thumbnail-size>512</thumbnail-size>
        <seek-percentage>10</seek-percentage>
        <filmstrip-overlay>no</filmstrip-overlay>
        <workaround-bugs>no</workaround-bugs>
        <image-quality>8</image-quality>
      </ffmpegthumbnailer>
      <mark-played-items enabled="no" suppress-cds-updates="yes">
        <string mode="prepend">*</string>
        <mark>
          <content>video</content>
        </mark>
      </mark-played-items>
      <lastfm enabled="no">
        <username>username</username>
        <password>password</password>
      </lastfm>
    </extended-runtime-options>
  </server>
  <import hidden-files="no">
    <scripting script-charset="UTF-8">
      <common-script>/usr/share/mediatomb/js/common.js</common-script>
      <playlist-script>/usr/share/mediatomb/js/playlists.js</playlist-script>
      <virtual-layout type="builtin">
        <import-script>/usr/share/mediatomb/js/import.js</import-script>
      </virtual-layout>
    </scripting>
    <mappings>
      <extension-mimetype ignore-unknown="no">
        <map from="mp3" to="audio/mpeg"/>
        <map from="ogx" to="application/ogg"/>
        <map from="ogv" to="video/ogg"/>
        <map from="oga" to="audio/ogg"/>
        <map from="ogg" to="audio/ogg"/>
        <map from="ogm" to="video/ogg"/>
        <map from="asf" to="video/x-ms-asf"/>
        <map from="asx" to="video/x-ms-asf"/>
        <map from="wma" to="audio/x-ms-wma"/>
        <map from="wax" to="audio/x-ms-wax"/>
        <map from="wmv" to="video/x-ms-wmv"/>
        <map from="wvx" to="video/x-ms-wvx"/>
        <map from="wm" to="video/x-ms-wm"/>
        <map from="wmx" to="video/x-ms-wmx"/>
        <map from="m3u" to="audio/x-mpegurl"/>
        <map from="pls" to="audio/x-scpls"/>
        <map from="flv" to="video/x-flv"/>
        <map from="mkv" to="video/x-matroska"/>
        <map from="mka" to="audio/x-matroska"/>
        <map from="avi" to="video/avi"/>
        <map from="m2ts" to="video/avc"/>
        <map from="cr2" to="image/raw"/>
        <map from="nef" to="image/raw"/>
      </extension-mimetype>
      <mimetype-upnpclass>
        <map from="audio/*" to="object.item.audioItem.musicTrack"/>
        <map from="video/*" to="object.item.videoItem"/>
        <map from="image/*" to="object.item.imageItem"/>
      </mimetype-upnpclass>
      <mimetype-contenttype>
        <treat mimetype="audio/mpeg" as="mp3"/>
        <treat mimetype="application/ogg" as="ogg"/>
        <treat mimetype="video/ogg" as="ogg"/>
        <treat mimetype="audio/ogg" as="ogg"/>
        <treat mimetype="audio/x-flac" as="flac"/>
        <treat mimetype="image/jpeg" as="jpg"/>
        <treat mimetype="audio/x-mpegurl" as="playlist"/>
        <treat mimetype="audio/x-scpls" as="playlist"/>
        <treat mimetype="audio/x-wav" as="pcm"/>
        <treat mimetype="audio/L16" as="pcm"/>
        <treat mimetype="video/x-msvideo" as="avi"/>
        <treat mimetype="video/mp4" as="mp4"/>
        <treat mimetype="audio/mp4" as="mp4"/>
        <treat mimetype="video/divx" as="avi"/>
      </mimetype-contenttype>
    </mappings>
    <online-content>
      <YouTube enabled="no" refresh="28800" update-at-start="yes" purge-after="604800" racy-content="exclude" format="mp4" hd="no">
        <favorites user="NationalGeographic"/>
        <playlists user="PlayStation"/>
        <uploads user="Google"/>
        <standardfeed feed="most_viewed" time-range="today"/>
        <standardfeed feed="recently_featured" time-range="today"/>
      </YouTube>
    </online-content>
  </import>
  <transcoding enabled="yes">
    <mimetype-profile-mappings>
      <transcode mimetype="audio/ogg" using="audio2pcm"/>
      <transcode mimetype="audio/x-flac" using="audio2pcm"/>
      <transcode mimetype="video/ogg" using="video2mpeg"/>
      <transcode mimetype="video/x-flv" using="video2mpeg"/>
      <transcode mimetype="video/x-matroska" using="video2mpeg"/>
      <transcode mimetype="image/jpeg"  using="resizejpeg"/>
    </mimetype-profile-mappings>
    <profiles>
      <profile name="audio2pcm" enabled="yes" type="external">
        <mimetype>audio/L16</mimetype>
        <accept-url>no</accept-url>
        <first-resource>yes</first-resource>
        <hide-original-resource>yes</hide-original-resource>
        <accept-ogg-theora>no</accept-ogg-theora>
        <sample-frequency>44100</sample-frequency>
        <audio-channels>2</audio-channels>
        <agent command="ffmpeg" arguments="-i %in -acodec pcm_s16be -ab 192k -ar 44100 -ac 2 -f s16be -y %out"/>
        <buffer size="1048576" chunk-size="131072" fill-size="262144"/>
      </profile>
      <profile name="video2mpeg" enabled="yes" type="external">
        <mimetype>video/mpeg</mimetype>
        <accept-url>no</accept-url>
        <first-resource>yes</first-resource>
        <hide-original-resource>yes</hide-original-resource>
        <accept-ogg-theora>yes</accept-ogg-theora>
        <sample-frequency>48000</sample-frequency>
        <audio-channels>2</audio-channels>
        <agent command="ffmpeg" arguments="-i %in -vcodec mpeg2video -b 8192k -r 25 -acodec mp2 -ab 192k -ar 48000 -ac 2 -async 1 -f dvd -threads 4 -y %out"/>
        <buffer size="10485760" chunk-size="262144" fill-size="524288"/>
       </profile>
      <profile name="resizejpeg" enabled="yes" type="external">
        <mimetype>image/jpeg</mimetype>
         <agent command="convert" arguments=" -geometry 25% %in %out"/>
        <first-resource>yes</first-resource>
       <hide-original-resource>yes</hide-original-resource>
       <buffer size="1048576" chunk-size="2072" fill-size="262144"/>
      </profile>
    </profiles>
  </transcoding>
</config>


je rencontre aussi un probleme avec le profile video2mpeg:
lorsque je tombe sur un fichier audio en 5.1 (par exemple) j'obtiens:
"Resampling with input channels greater than 2 unsupported."
de la part de ffmpeg, je cherche juste a m'assurer d'avoirdu 48000hz en stéréo (en muxan toutes les autres pistes voir en les supprimant dans le pire des cas)

d'avance merci
Back to top
View user's profile Send private message
El_Goretto
Moderator
Moderator


Joined: 29 May 2004
Posts: 3169
Location: Paris

PostPosted: Wed Nov 24, 2010 10:10 am    Post subject: Reply with quote


  1. je ne sais pas.
  2. si j'ai bien compris le mode de fonctionnement d'uPnP et celui de mediatomb (tu m'excuseras si tu es déjà passé par ce point de réflexion), ce n'est pas du tout possible de base, car c'est au client de faire son choix dans les sous-titres & co. Par contre, tu peux introduire de l'intelligence en cas de client déficient (genre une freebox) en passant par du transcoding via un script bash simple. Par contre, ça sous-entend une charge de traitement non négligeable sur le serveur uPnP. C'est déjà ce que tu fais?


Ya pas mal de bons (et moins bons) exemples sur cette page officielle Le bon c'est "Script to perform various transcoding routines", le moins bon c'est celui sur la freebox (les infos techniques sont super intéressantes, mais la réalisation crade).

Bon, je débute en transcoding, donc je suis ton thread avec intérêt.
_________________
-TrueNAS & jails: µ-serv Gen8 E3-1260L, 16Go ECC + µ-serv N40L, 10Go ECC
-Réseau: APU2C4 (OpenWRT) + GS726Tv3 + 2x GS108Tv2 + Archer C5v1 (OpenWRT)
Back to top
View user's profile Send private message
Chr0nos
Apprentice
Apprentice


Joined: 26 Feb 2010
Posts: 205

PostPosted: Fri Nov 26, 2010 8:37 pm    Post subject: Reply with quote

bon tout dabord je vais passer par un fichier .bash pour s'occuper de savoir ce que contien le fichier .mkv (car pour le moment je vais surotout me pencher sur la lecture de ce format)
par contre mon probleme avec mkvinfo: comment je fais pour recup les info que je veux dans la mesure ou plusieures lignes ont le meme debut
(exemple:
|+ Doc type: matroska
|+ Doc type version: 1
|+ Doc type read version: 1
)

mon but étant de pouvoir faire une liste des pistes audio / soustitres
Back to top
View user's profile Send private message
Chr0nos
Apprentice
Apprentice


Joined: 26 Feb 2010
Posts: 205

PostPosted: Sun Nov 28, 2010 12:38 pm    Post subject: Reply with quote

deja une chose m'intrigue:
Quote:

<agent command="ffmpeg" arguments="-i %in -vcodec mpeg2video -b 8192k -r 25 -acodec mp2 -ab 192k -ar 48000 -ac 2 -async 1 -alang fre -f dvd -threads 4 -y %out"/>

cette ligne devrais forcer l'usage de la langue "fre" par defaut, hors losque je teste avec un fichier .mkv : la video reste en anglais sur la ps3

voici les info sur le fichier video qui sers a mes tests. (il va de soi que je possede l'original en blueray mais comme je suis bordelique tousa tousa... fragile etc...)
http://pastebin.com/Z1hqWD0Q
Back to top
View user's profile Send private message
Poussin
l33t
l33t


Joined: 08 Jun 2007
Posts: 659
Location: Liège

PostPosted: Sun Nov 28, 2010 1:03 pm    Post subject: Reply with quote

Je vais peut-être (probablement) dire une grosse bêtise, mais tu as essayé les différents code de l'ISO 639 pour le français? à savoir: fre fra fr ? (source: http://www.loc.gov/standards/iso639-2/php/code_list.php)
Back to top
View user's profile Send private message
Chr0nos
Apprentice
Apprentice


Joined: 26 Feb 2010
Posts: 205

PostPosted: Sun Nov 28, 2010 1:25 pm    Post subject: Reply with quote

j'ai fait mieux que ca: étant donné que ffmpeg est trop "limite" (en mon sens (trop problematique pour les sous titres, bazzard sans nom pour le choix de la police etc))

maintenant j'utilise:
Code:
      <profile name="video2ps3" enabled="yes" type="external">
        <mimetype>video/mpeg</mimetype>
        <accept-url>no</accept-url>
        <first-resource>yes</first-resource>
        <hide-original-resource>yes</hide-original-resource>
        <accept-ogg-theora>yes</accept-ogg-theora>
        <sample-frequency>48000</sample-frequency>
        <audio-channels>2</audio-channels>
        <agent command="mencoder" arguments="%in -oac lavc -ovc lavc -of mpeg -mc 0 -noskip -lavcopts vcodec=mpeg2video:vbitrate=6000:acodec=ac3:abitrate=448 -vf harddup -alang fre -slang fre -o %out"/>
        <buffer size="10485760" chunk-size="262144" fill-size="524288"/>
       </profile>


qui FONCTIONE plutot bien, pourtant petit souci, autant le resultat est au poil ma premiere video mais sur celle ci "les données sont endomagées"

Code:
StarK / # mkvinfo /mnt/Thor/series/How\ I\ Met\ Your\ Mother/S01/How.I.Met.Your.Mother.S01E01.DVDRiP.XviD-TOPAZ.mkv
+ EBML head
|+ Doc type: matroska
|+ Doc type version: 2
|+ Doc type read version: 2
+ Segment, size 181774354
|+ Seek head (subentries will be skipped)
|+ EbmlVoid (size: 4027)
|+ Segment information
| + Timecode scale: 1000000
| + Muxing application: libebml v0.7.8 + libmatroska v0.8.1
| + Writing application: mkvmerge v2.9.9 ('Tutu') built on Nov 28 2009 13:45:05
| + Duration: 1323.698s (00:22:03.698)
| + Date: Sun Dec  6 21:21:36 2009 UTC
| + Segment UID: 0xd1 0x80 0x71 0x02 0xb1 0xe0 0xcd 0x76 0xae 0x4e 0x93 0xec 0x99 0xa8 0x76 0x7c
|+ Segment tracks
| + A track
|  + Track number: 1
|  + Track UID: 1100569665
|  + Track type: video
|  + Enabled: 1
|  + Default flag: 1
|  + Forced flag: 0
|  + Lacing flag: 0
|  + MinCache: 1
|  + Timecode scale: 1
|  + Max BlockAddition ID: 0
|  + Codec ID: V_MS/VFW/FOURCC
|  + Codec decode all: 1
|  + CodecPrivate, length 40 (FourCC: XVID, 0x44495658)
|  + Default duration: 41.708ms (23.976 fps for a video track)
|  + Language: und
|  + Video track
|   + Pixel width: 576
|   + Pixel height: 432
|   + Interlaced: 0
|   + Display width: 576
|   + Display height: 432
| + A track
|  + Track number: 2
|  + Track UID: 3375727921
|  + Track type: audio
|  + Enabled: 1
|  + Default flag: 1
|  + Forced flag: 0
|  + Lacing flag: 1
|  + MinCache: 0
|  + Timecode scale: 1
|  + Max BlockAddition ID: 0
|  + Codec ID: A_MPEG/L3
|  + Codec decode all: 1
|  + Default duration: 24.000ms (41.667 fps for a video track)
|  + Language: und
|  + Audio track
|   + Sampling frequency: 48000
|   + Channels: 2
| + A track
|  + Track number: 3
|  + Track UID: 3844547497
|  + Track type: subtitles
|  + Enabled: 1
|  + Default flag: 1
|  + Forced flag: 0
|  + Lacing flag: 0
|  + MinCache: 0
|  + Timecode scale: 1
|  + Max BlockAddition ID: 0
|  + Codec ID: S_TEXT/UTF8
|  + Codec decode all: 1
|  + Language: fre
|+ EbmlVoid (size: 1024)
|+ Cluster
Back to top
View user's profile Send private message
Chr0nos
Apprentice
Apprentice


Joined: 26 Feb 2010
Posts: 205

PostPosted: Tue Nov 30, 2010 6:49 pm    Post subject: Reply with quote

hum allé je continu le topic (meme si c'est tout seul ca poura surement aider les autres)
coté "formats" la ps3 supporte les suivants selon wikipedia:

- MPEG-1
- MPEG-2
- H.264
- MPEG-4
- DivX
- Xvid

par contre aucune info coté "bitrates" maxi autorisées
je propose donc de faire une liste de formats ou de "profiles" qui passent

pour le moment je passe par du mpeg1 a 6000 kpbs + filtre hardup et scale 720p (pour calmer mon usage cpu rien de +) mais par moments sur certaines video en 1080p : la video se bloque et le son continue, l'usage cpu du pc n'atteind pas les 100% pourtant et j'ai mis 60mo de cache, je songe a passer par un autre format mais je ne sais pas trop le quel, je pencherais bien pour le x264 mais sera il reconu ? (je vois que la console prends du H264)

la suite apres quelques tests ou quelques info si une âme charitable se manifeste...
Back to top
View user's profile Send private message
Chr0nos
Apprentice
Apprentice


Joined: 26 Feb 2010
Posts: 205

PostPosted: Sat Dec 04, 2010 7:54 pm    Post subject: Reply with quote

alors, bonnes nouvelles: j'ai trouvé "LE" profil qui marche bien avec la ps3:

Code:

<profile name="video2ps3" enabled="yes" type="external">
        <mimetype>video/mpeg</mimetype>
        <accept-url>yes</accept-url>
        <first-resource>yes</first-resource>
        <hide-original-resource>yes</hide-original-resource>
        <accept-ogg-theora>yes</accept-ogg-theora>
        <sample-frequency>48000</sample-frequency>
        <audio-channels>2</audio-channels>
        <agent command="mencoder" arguments="%in -ovc lavc -oac lavc -lavcopts vcodec=mpeg2video:acodec=ac3:abitrate=192:vbitrate=5120:vrc_buf_size=1835:vrc_maxrate=5120:vstrict=0:keyint=15:autoaspect:threads=4 -af volnorm=2,lavcresample=48000:16:1 -srate 48000 -vf pp=al:c,softskip,scale=720:-10,harddup -alang fr -of mpeg -mpegopts format=dvd:tsaf -o %out"/>
        <buffer size="2097152" chunk-size="262144" fill-size="524288"/>
</profile>


et sinon deux profiles pour les encodages video vers la ps3:

Code:

[PS3]
profile-desc="MPEG4/MP3 encoding"
ovc=lavc=1
oac=lavc=1
lavcopts=vcodec=msmpeg4:acodec=ac3:abitrate=192:vbitrate=4000
af=volnorm=2,lavcresample=48000:16:1
srate=48000
vf=pp=al:c,softskip,scale=720:-10,harddup
alang=fr

[PS3H264]
oac=lavc=yes
ovc=lavc=yes
of=1=mpeg
mc=0
noskip=yes
lavcopts=vcodec=mpeg2video:vbitrate=6000:acodec=ac3:abitrate=448:threads=4
vf=scale=1280:720,harddup
alang=fre,und



maintenant jessaire de savoir s'il est possible d'avoir des miniatures sur mes video, avant je le faisai mais depuis que je me suis lancé dans le transcodage plus moyen, quelqun aurait il un /etc/mediatomb/config.xml fonctionel a me montrer pour que je puisse m'en inspirer ?
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index French All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum