Exemple #1
0
class RandomSelectionStrategy(object):
    implements(TrackSelectionStrategy)

    def __init__(self):
        self._sess = DBSession()

    def get_tracks(self, num=1):
        return self._sess.query(m.TrackOriginal).\
                order_by(func.random()).\
                limit(num).all()
Exemple #2
0
import sys
import audiotools
from ireul.environment import DBSession, create_all
from ireul.storage import models as m
from ireul.storage.filesystem import cont_addr
from ireul import utils as u

create_all()


fn = sys.argv[1]
track = u.insert_track(fn)

session = DBSession()


if session.query(m.Blob).filter(m.Blob.cont_addr == track.blob.cont_addr).count() == 0:
    metadata = track.metadata
    while len(metadata.images()) > 0:
        metadata.delete_image(metadata.images()[0])
    track.metadata = metadata
    session.add(track)

session.commit()
import sys
import struct
import audiotools
from ireul.environment import DBSession, create_all
from ireul.settings import ENCODE_PARAMS
from ireul.storage import models as m
from ireul.storage.filesystem import cont_addr
from ireul import utils as u
create_all()

session = DBSession()

for track in session.query(m.TrackOriginal).filter(
    m.TrackOriginal._id.in_(list(xrange(6519, 6532)))).all():
    encoding_params = audiotools.EncodingParams(**ENCODE_PARAMS)
    encoding_params['serial'], = struct.unpack('!I',
            track.blob.cont_addr[-8:].decode('hex'))
    track_deriv = track.derivatives.\
        filter_by(
            codec='VorbisAudio',
            encoding_params=encoding_params
        ).count()
    if track_deriv > 0:
        continue
    new_track = u.transcode(track, audiotools.VorbisAudio, encoding_params)
    session.add(new_track)
    session.commit()
Exemple #4
0
 def __init__(self):
     self._sess = DBSession()